/* wp-solutions.hu – fő stíluslap. ABMG arculat: Poppins, #15B4E5, #6D4EEC, 10px sarkok. Alap: világos; sötét: html[data-theme="dark"]. */
/* Betűk: Poppins, SIL OFL 1.1 */
@font-face{font-family:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/poppins-latin-ext-300-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/poppins-latin-300-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/poppins-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/poppins-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/poppins-latin-ext-500-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/poppins-latin-500-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/poppins-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/poppins-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- Tokenek: világos (alap) ---------- */
/* Elrendezés: váltakozó fehér / tónusos sávok, minden oldalon megerősítő idézetsávokkal; ABMG-színek és Poppins. */
:root{
  --blue:#15B4E5; --blue-deep:#0F86AA; --purple:#6D4EEC; --purple-deep:#391CAF;
  --bg:#FFFFFF; --bg-tint:#F7F8FB; --surface:#FFFFFF; --surface-2:#F1F3F8;
  --fg:#172124; --fg-soft:#46535A; --fg-mute:#66737A; --line:#E3E7EE;
  --accent:#6D4EEC; --accent-2:#0F86AA; --link:#0F86AA;
  --good:#0E8A5F; --good-bg:#E5F6EF; --bad:#C2410C; --bad-bg:#FDEEE6; --star:#F5B300;
  --shadow:0 0 12px rgba(0,0,0,.08);
  --shadow-hover:0 18px 40px -18px rgba(23,33,36,.35);
  --shadow-lg:0 24px 60px -30px rgba(23,33,36,.35);
  --header-bg:rgba(255,255,255,.9);
  --ph:linear-gradient(135deg,rgba(109,78,236,.14),rgba(21,180,229,.14));
  --grad:linear-gradient(180deg,#15B4E5 58.33%,#6D4EEC 164.58%);
  --grad-rev:linear-gradient(180deg,#6D4EEC 58.33%,#15B4E5 164.58%);
  --grad-band:linear-gradient(120deg,#6D4EEC 0%,#4F5FEA 45%,#15B4E5 100%);
  --font:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --fs-xs:.8125rem; --fs-sm:.9375rem; --fs-base:1.0625rem; --fs-md:1.2rem;
  --fs-lg:clamp(1.6rem,1.25rem + 1.3vw,2.25rem);
  --fs-xl:clamp(2.1rem,1.4rem + 2.8vw,3.4rem);
  --radius:10px; --wrap:1200px;
  --ease:cubic-bezier(.2,.7,.2,1); --t:.3s;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --bg:#0E1517; --bg-tint:#131C1F; --surface:#172124; --surface-2:#1E2A2E;
  --fg:#E9EEF0; --fg-soft:#B5C1C6; --fg-mute:#8D9AA0; --line:#26343A;
  --accent:#9480F5; --accent-2:#4CC8EE; --link:#4CC8EE;
  --good:#4ADE9B; --good-bg:rgba(74,222,155,.12); --bad:#FB9A6C; --bad-bg:rgba(251,154,108,.12);
  --shadow:0 0 0 1px #26343A; --shadow-hover:0 18px 40px -18px rgba(0,0,0,.9),0 0 0 1px #2F4148;
  --shadow-lg:0 24px 60px -30px rgba(0,0,0,.8);
  --header-bg:rgba(14,21,23,.88);
  --ph:linear-gradient(135deg,rgba(148,128,245,.18),rgba(76,200,238,.14));
  color-scheme:dark;
}

/* ---------- Alap ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:var(--fs-base);line-height:1.65;-webkit-font-smoothing:antialiased;transition:background-color .4s var(--ease),color .4s var(--ease)}
img,svg{max-width:100%}
h1,h2,h3{margin:0;line-height:1.2;text-wrap:balance}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
a{color:var(--link);transition:color var(--t) var(--ease)}
a:hover{color:var(--accent)}
::selection{background:var(--purple);color:#fff}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}
svg.lucide{width:1.15em;height:1.15em;flex:none;vertical-align:-.2em}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--surface);color:var(--fg);padding:8px 14px;border-radius:var(--radius)}
.skip:focus{left:max(16px,env(safe-area-inset-left,0px))}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media (min-width:720px){.wrap{padding-left:max(28px,env(safe-area-inset-left,0px));padding-right:max(28px,env(safe-area-inset-right,0px))}}

/* ---------- Gombok ---------- */
.btn{position:relative;z-index:0;display:inline-flex;align-items:center;justify-content:center;gap:.55em;border-radius:var(--radius);font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;font-size:var(--fs-sm);padding:.8em 1.3em;border:3px solid transparent;cursor:pointer;line-height:1.2;white-space:nowrap;
  transition:background-color var(--t) var(--ease),color var(--t) var(--ease),border-color var(--t) var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-sm{padding:.5em .95em;font-size:var(--fs-xs)}
.btn-lg{font-size:1rem;padding:.95em 1.5em}
.btn-grad{background:var(--grad);color:#fff;box-shadow:0 0 12px rgba(0,0,0,.18);border:0;padding:calc(.8em + 3px) calc(1.3em + 3px)}
.btn-grad.btn-lg{padding:calc(.95em + 3px) calc(1.5em + 3px)}
.btn-grad.btn-sm{padding:calc(.5em + 3px) calc(.95em + 3px)}
.btn-grad::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--grad-rev);opacity:0;transition:opacity var(--t) var(--ease);z-index:-1}
.btn-grad:hover,.btn-grad:focus-visible{color:#fff;box-shadow:0 12px 26px -10px rgba(109,78,236,.55)}
.btn-grad:hover::after{opacity:1}
.btn-grad svg{transition:transform .4s var(--ease)}
.btn-grad:hover svg.lucide-phone{animation:ring .6s var(--ease)}
@keyframes ring{0%,100%{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(5deg)}}
.btn-outline{border-color:var(--accent);color:var(--accent);background:transparent}
.btn-outline:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-light{background:#fff;color:var(--purple-deep);border-color:#fff}
.btn-light:hover{background:transparent;color:#fff}
.btn-ghost{border-color:rgba(255,255,255,.85);color:#fff;background:transparent}
.btn-ghost:hover{background:#fff;color:var(--purple-deep)}
.text-link{display:inline-flex;align-items:center;gap:.4em;font-weight:700;text-decoration:none}
.text-link svg,.more svg,.case-link svg{transition:transform .3s var(--ease)}
.text-link:hover svg{transform:translateX(4px)}

/* ---------- Görgetési állapotok ---------- */
.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:80;pointer-events:none}
.scroll-progress span{display:block;height:100%;width:100%;background:var(--grad-band);transform-origin:left;transform:scaleX(var(--sp,0))}
.reveal{transition:opacity .7s var(--ease),transform .7s var(--ease)}
html.js .reveal.is-pending{opacity:0;transform:translateY(22px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation:none!important}html.js .reveal.is-pending{opacity:1;transform:none}}

/* ---------- Felső sáv + fejléc ---------- */
.topbar{background:var(--bg-tint);border-bottom:1px solid var(--line);font-size:var(--fs-xs);color:var(--fg-soft)}
.topbar-inner{display:flex;align-items:center;justify-content:flex-end;gap:24px;min-height:36px}
.topbar-item{display:inline-flex;align-items:center;gap:.4em;color:var(--fg-soft);text-decoration:none}
.topbar-item:first-child{margin-right:auto}
.topbar-rating:hover,.topbar-phone:hover{color:var(--accent)}
.stars-mini{color:var(--star);letter-spacing:1px}
.topbar-phone{font-weight:700;color:var(--fg)}
.topbar-item{white-space:nowrap}
@media (max-width:640px){.topbar-item:first-child{display:none}.topbar-inner{justify-content:space-between}.tr-text{display:none}}

body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--header-bg)}
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--header-bg);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:border-color var(--t),box-shadow var(--t),background-color .4s}
.site-header.is-scrolled{border-bottom-color:var(--line);box-shadow:0 8px 28px -20px rgba(0,0,0,.45)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;transition:min-height var(--t) var(--ease)}
.site-header.is-scrolled .header-inner{min-height:62px}
.brand{display:inline-flex;align-items:center;gap:0;text-decoration:none;color:var(--fg);font-weight:700;font-size:1.2rem;letter-spacing:-.01em;flex:none}
.brand:hover{color:var(--fg)}
.brand-mark{display:inline-grid;place-items:center;width:2.15rem;height:2.15rem;border-radius:8px;background:var(--grad);color:#fff;font-size:1rem;box-shadow:0 0 12px rgba(0,0,0,.15);transition:transform .4s var(--ease)}
.brand:hover .brand-mark{transform:rotate(-8deg) scale(1.06)}
.brand-tld{color:var(--blue)}
.brand-dash{color:var(--blue);font-weight:700;margin:0 .02em 0 .16em;transform:translateY(-.02em)}

.main-nav{display:flex;align-items:center;gap:18px}
.nav-links{display:flex;gap:2px}
.nav-links a{position:relative;display:block;padding:.45rem .6rem;color:var(--fg);text-decoration:none;font-size:var(--fs-sm);white-space:nowrap}
.nav-links a::after{content:"";position:absolute;left:.6rem;right:.6rem;bottom:.1rem;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:right;transition:transform var(--t) var(--ease)}
.nav-links a:hover::after,.nav-links a.is-current::after{transform:scaleX(1);transform-origin:left}
.nav-links a.is-current{font-weight:500}
.nav-tools{display:flex;align-items:center;gap:8px}

.lang{position:relative}
.lang-btn,.theme-toggle{display:inline-flex;align-items:center;gap:.4rem;background:var(--surface-2);color:var(--fg);border:1px solid var(--line);border-radius:999px;padding:.45rem .7rem;font:inherit;font-size:var(--fs-xs);font-weight:500;cursor:pointer;transition:border-color var(--t),background-color var(--t)}
.lang-btn:hover,.theme-toggle:hover{border-color:var(--blue)}
.lang-btn svg:last-child{width:.9em;height:.9em;transition:transform var(--t) var(--ease)}
.lang-btn[aria-expanded="true"] svg:last-child{transform:rotate(180deg)}
.lang-list{position:absolute;right:0;top:calc(100% + 8px);min-width:170px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:6px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s var(--ease),transform .25s var(--ease),visibility .25s;z-index:70}
.lang.is-open .lang-list{opacity:1;visibility:visible;transform:none}
.lang-list a{display:flex;gap:.6em;align-items:center;padding:.5rem .7rem;border-radius:8px;color:var(--fg);text-decoration:none;font-size:var(--fs-sm);transition:background-color .2s}
.lang-list a:hover{background:var(--surface-2);color:var(--fg)}
.lang-list a[aria-current="true"]{color:var(--accent)}
.lang-list b{font-size:var(--fs-xs);width:1.8em}
.theme-toggle .ic-sun{display:none}
:root[data-theme="dark"] .theme-toggle .ic-sun{display:inline-flex}
:root[data-theme="dark"] .theme-toggle .ic-moon{display:none}
.theme-toggle svg{transition:transform .5s var(--ease)}
.theme-toggle:hover svg{transform:rotate(25deg)}
.theme-label{display:none}

.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:var(--radius);color:var(--fg);width:44px;height:44px;place-items:center;cursor:pointer}
.menu-toggle svg{width:22px;height:22px}
.menu-toggle .ic-x{display:none}
.menu-toggle[aria-expanded="true"] .ic-x{display:inline-flex}
.menu-toggle[aria-expanded="true"] .ic-menu{display:none}
@media (max-width:1140px){
  .menu-toggle{display:inline-grid}
  .main-nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:14px;background:var(--bg);border-bottom:1px solid var(--line);padding:10px max(16px,env(safe-area-inset-right,0px)) 22px max(16px,env(safe-area-inset-left,0px));box-shadow:0 24px 30px -24px rgba(0,0,0,.4);max-height:calc(100dvh - 70px);overflow:auto;
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility .3s}
  .main-nav.is-open{opacity:1;visibility:visible;transform:none}
  .nav-links{flex-direction:column}
  .nav-links a{padding:.85rem .2rem;border-bottom:1px solid var(--line);font-size:var(--fs-base)}
  .nav-links a::after{display:none}
  .nav-links a.is-current{color:var(--accent)}
  .nav-tools{flex-wrap:wrap}
  .nav-call{margin-left:auto}
  .theme-label{display:inline}
  .lang-list{left:0;right:auto}
}

/* ---------- Szekciók ---------- */
.section{padding-block:clamp(64px,8vw,112px)}
.section-tint{background:var(--bg-tint)}
.section-head{display:grid;gap:18px;margin-bottom:clamp(34px,5vw,54px);max-width:740px}
.section-head.is-center{margin-inline:auto;text-align:center;justify-items:center}
.h2{font-size:var(--fs-lg);font-weight:400;letter-spacing:-.01em}
.bar{position:relative;padding-bottom:18px}
.bar::after{content:"";position:absolute;left:0;bottom:0;width:72px;height:5px;background:var(--accent);border-radius:3px;transition:width .6s var(--ease)}
.reveal.is-shown .bar::after,.section-head.is-shown .bar::after{width:96px}
.section-sub{color:var(--fg-soft);font-weight:300;font-size:var(--fs-md);line-height:1.6;max-width:62ch}
.eyebrow{font-size:var(--fs-xs);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-2)}
.prose{color:var(--fg-soft);font-weight:300;max-width:64ch}
.fineprint{margin-top:22px;font-size:var(--fs-xs);color:var(--fg-mute);max-width:90ch}
.section-more{margin-top:36px}

/* ---------- Hero ---------- */
.hero{background:var(--bg-tint);padding-block:clamp(36px,5vw,80px) clamp(56px,7vw,100px);overflow:hidden;position:relative}
.hero-compact{padding-bottom:clamp(40px,5vw,64px)}
.hero::before{content:"";position:absolute;right:-12%;top:-30%;width:62%;aspect-ratio:1;max-width:100%;background:radial-gradient(closest-side,rgba(21,180,229,.14),transparent 70%);pointer-events:none;animation:drift 18s ease-in-out infinite alternate}
@keyframes drift{to{transform:translate(-6%,8%) scale(1.08)}}
.hero-grid{position:relative;display:grid;gap:clamp(36px,5vw,64px);align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:1000px){.hero-grid:not(.hero-solo){grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}
.hero-solo .hero-copy{max-width:820px}
.hero-copy{display:grid;gap:20px;min-width:0;animation:rise .8s var(--ease) both}
@keyframes rise{from{opacity:0;transform:translateY(16px)}}
.hero-title{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.025em;line-height:1.12}
.grad-text{display:block;font-weight:400;background:linear-gradient(90deg,var(--purple),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}
:root[data-theme="dark"] .grad-text{background:linear-gradient(90deg,#9480F5,#4CC8EE);-webkit-background-clip:text;background-clip:text}
.lead{font-size:var(--fs-md);font-weight:300;color:var(--fg-soft);max-width:60ch;line-height:1.6}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}
.cta-note{display:flex;align-items:center;gap:.5em;font-size:var(--fs-sm);color:var(--fg-mute)}
.crumb{display:flex;align-items:center;gap:.4em;font-size:var(--fs-xs);color:var(--fg-mute)}
.crumb a{color:var(--fg-mute);text-decoration:none}
.crumb a:hover{color:var(--accent)}
.crumb svg{width:.9em;height:.9em}
.proof-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px;border-top:1px solid var(--line)}
.proof-strip li{display:grid;gap:2px;padding:16px 16px 0 0}
.proof-strip li+li{padding-left:16px;border-left:1px solid var(--line)}
.proof-strip strong{font-size:clamp(1.35rem,1rem + 1.2vw,1.85rem);font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.proof-strip span{font-size:var(--fs-xs);color:var(--fg-mute);line-height:1.4}
@media (max-width:520px){.proof-strip{grid-template-columns:1fr}.proof-strip li+li{padding-left:0;border-left:0}.proof-strip li{grid-template-columns:5.5rem 1fr;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}}
.hero-media{position:relative;min-width:0;animation:rise .9s .1s var(--ease) both}
.hero-badge{position:absolute;left:-14px;bottom:24px;display:inline-flex;align-items:center;gap:.5em;background:var(--surface);color:var(--fg);padding:.7rem 1rem;border-radius:var(--radius);box-shadow:var(--shadow-lg),var(--shadow);font-weight:700;font-size:var(--fs-sm)}
.hero-badge svg{color:var(--good)}
@media (max-width:640px){.hero-badge{left:12px;bottom:12px}}

/* Kép-tárolók: márkaszínű helyőrző, ha a kép még nincs letöltve */
.media{margin:0;position:relative;overflow:hidden;border-radius:14px;background:var(--ph);aspect-ratio:16/10;max-width:100%}
.media::before{content:"wp";position:absolute;inset:0;display:grid;place-items:center;font-weight:700;font-size:3rem;letter-spacing:-.04em;color:rgba(109,78,236,.18)}
.media img{position:relative;display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .5s}
.media img.is-broken{opacity:0}
.media-hero{aspect-ratio:4/3;box-shadow:var(--shadow-lg);border:6px solid var(--surface)}
.media-split{aspect-ratio:4/3}

/* Átvilágítási lap */
.audit{margin:0;background:var(--surface);border-radius:14px;box-shadow:var(--shadow-lg),var(--shadow);border:1px solid var(--line);overflow:hidden;min-width:0;animation:rise .9s .15s var(--ease) both}
.audit-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:20px 22px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--surface-2))}
.audit-kicker{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--fg-mute);font-weight:500}
.audit-title{font-weight:700;font-size:1.05rem}
.audit-switch{display:inline-flex;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:3px}
.audit-switch button{font:inherit;font-size:var(--fs-xs);font-weight:500;border:0;background:transparent;color:var(--fg-soft);padding:.4rem .9rem;border-radius:999px;cursor:pointer;transition:background-color .25s,color .25s}
.audit-switch button.is-active{background:var(--grad);color:#fff}
.audit-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 22px;border-bottom:1px solid var(--line);font-size:var(--fs-sm);transition:background-color .2s}
.audit-list li:hover{background:var(--surface-2)}
.audit-list li:last-child{border-bottom:0}
.a-k{color:var(--fg-soft);min-width:0}
.a-v{display:grid;justify-items:end;text-align:right}
.a-v b{grid-area:1/1;font-weight:500;font-size:var(--fs-xs);padding:.25rem .65rem;border-radius:999px;transition:opacity .35s var(--ease),transform .35s var(--ease);white-space:nowrap}
.a-v .bad{background:var(--bad-bg);color:var(--bad)}
.a-v .good{background:var(--good-bg);color:var(--good)}
.audit-list[data-state="before"] .good,.audit-list[data-state="after"] .bad{opacity:0;transform:translateY(6px);pointer-events:none}
.audit-list li:nth-child(2) b{transition-delay:.04s}.audit-list li:nth-child(3) b{transition-delay:.08s}.audit-list li:nth-child(4) b{transition-delay:.12s}.audit-list li:nth-child(5) b{transition-delay:.16s}.audit-list li:nth-child(6) b{transition-delay:.2s}.audit-list li:nth-child(7) b{transition-delay:.24s}
.audit-foot{padding:12px 22px 16px;font-size:var(--fs-xs);color:var(--fg-mute);border-top:1px solid var(--line);background:var(--surface-2)}
@media (max-width:440px){.audit-list li{grid-template-columns:1fr;gap:6px}.a-v{justify-items:start;text-align:left}}

/* SOS kártya */
.hero-sos{background:linear-gradient(180deg,var(--bg-tint),var(--bg))}
.sos-card{display:grid;gap:16px;padding:30px;border-radius:14px;background:var(--surface);border:1px solid var(--line);border-top:6px solid var(--bad);box-shadow:var(--shadow-lg);animation:rise .9s .1s var(--ease) both}
.sos-kicker{display:flex;align-items:center;gap:.5em;font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:var(--fs-xs);color:var(--bad)}
.sos-kicker svg{animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.18);opacity:.7}}
.sos-phone{font-size:clamp(1.8rem,1.3rem + 2vw,2.6rem);font-weight:700;letter-spacing:-.02em;color:var(--fg);text-decoration:none;font-variant-numeric:tabular-nums}
.sos-phone:hover{color:var(--accent)}
.sos-list{display:grid;gap:10px}
.sos-list li{display:flex;gap:.6em;align-items:flex-start;color:var(--fg-soft)}
.sos-list svg{color:var(--good);margin-top:.25em}
.sos-foot{font-size:var(--fs-sm);color:var(--fg-mute);border-top:1px solid var(--line);padding-top:14px}

/* ---------- Megerősítő sáv ---------- */
.trust{border-block:1px solid var(--line);background:var(--bg)}
.trust-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:0}
.trust-item{display:flex;align-items:center;gap:14px;padding:22px 18px}
.trust-item+.trust-item{border-left:1px solid var(--line)}
.trust-item>svg{width:28px;height:28px;color:var(--accent);flex:none;transition:transform .4s var(--ease)}
.trust-item:hover>svg{transform:scale(1.15) rotate(-6deg)}
.trust-item p{font-size:var(--fs-sm);color:var(--fg-soft);line-height:1.35}
.trust-item strong{display:block;font-size:1.3rem;color:var(--fg);font-variant-numeric:tabular-nums}
@media (max-width:960px){.trust-item+.trust-item{border-left:0}.trust-item{border-bottom:1px solid var(--line)}}

/* ---------- Idézetsáv ---------- */
.quote-band{padding-block:clamp(48px,6vw,80px)}
.quote{margin:0 auto;max-width:880px;display:grid;gap:18px;justify-items:center;text-align:center;position:relative}
.quote::before{content:"„";position:absolute;top:-6.2rem;left:50%;transform:translateX(-50%);font-size:8rem;line-height:1;font-weight:700;color:var(--accent);opacity:.12;pointer-events:none}
.quote-stars{display:inline-flex;gap:3px;color:var(--star)}
.quote-stars svg{fill:currentColor;width:18px;height:18px}
.quote blockquote{margin:0;font-size:clamp(1.15rem,1rem + .7vw,1.5rem);font-weight:300;line-height:1.55;color:var(--fg)}
.quote figcaption{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 14px;font-size:var(--fs-sm);color:var(--fg-mute)}
.quote figcaption b{color:var(--fg);font-weight:700}
.quote figcaption a{color:var(--fg-mute);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.quote figcaption a:hover{color:var(--accent)}

/* ---------- Kártyák ---------- */
.cards{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.card{position:relative;background:var(--bg-tint);border-radius:var(--radius);transition:transform .35s var(--ease),box-shadow .35s var(--ease),background-color .35s;min-width:0;display:flex}
.section-tint .card{background:var(--surface)}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.card-link{display:flex;flex-direction:column;color:inherit;text-decoration:none;width:100%}
.card-link:hover{color:inherit}
.card-body{display:grid;gap:8px;align-content:start;padding:26px 26px 28px;flex:1}
.card-icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:12px;background:rgba(109,78,236,.1);color:var(--accent);margin-bottom:8px;transition:background-color .35s,color .35s,transform .35s var(--ease)}
.card-icon svg{width:26px;height:26px;stroke-width:1.75}
.card:hover .card-icon{background:var(--accent);color:#fff;transform:rotate(-6deg)}
.card h3{font-size:1.15rem;font-weight:700;color:var(--fg)}
.cards-symptom .card h3{color:var(--accent-2)}
.card p{color:var(--fg-soft);font-weight:300}
.more{display:inline-flex;align-items:center;gap:.4em;margin-top:8px;font-weight:700;color:var(--link);font-size:var(--fs-sm)}
.card:hover .more svg{transform:translateX(5px)}
.card-media{border-radius:var(--radius) var(--radius) 0 0;aspect-ratio:16/9}
.card:hover .media img{transform:scale(1.05)}
.cards-service{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.cards-service .card{background:var(--surface);box-shadow:var(--shadow)}
.cards-service h3{font-size:1.3rem}

/* ---------- Lépések ---------- */
.steps{display:grid;border-top:1px solid var(--line)}
.step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,3vw,40px);padding-block:28px;border-bottom:1px solid var(--line);align-items:start}
.step-no{font-size:clamp(2.2rem,1.6rem + 2vw,3.4rem);font-weight:300;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--blue);font-variant-numeric:tabular-nums;min-width:2.2ch;transition:color .4s var(--ease)}
.step:hover .step-no{color:var(--blue)}
.step-body{display:grid;gap:8px;max-width:68ch}
.step h3{display:flex;align-items:center;gap:.5em;font-size:1.2rem;font-weight:700}
.step h3 svg{color:var(--accent)}
.step p{color:var(--fg-soft);font-weight:300}
@media (min-width:1000px){
  .steps-4{grid-template-columns:repeat(4,minmax(0,1fr));border-top:0;gap:28px}
  .steps-4 .step{grid-template-columns:1fr;border-bottom:0;border-top:3px solid var(--line);padding-top:24px;position:relative}
  .steps-4 .step::before{content:"";position:absolute;top:-3px;left:0;width:48px;height:3px;background:var(--grad-band);transition:width .6s var(--ease)}
  .steps-4 .step:hover::before{width:100%}
}
.why-note{margin-top:40px;display:grid;gap:8px;padding:24px 28px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--accent);max-width:880px}
.why-q{font-weight:700}
.why-note p:not(.why-q){color:var(--fg-soft);font-weight:300}

/* ---------- Kép + szöveg ---------- */
.split{display:grid;gap:clamp(32px,5vw,72px);align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.split.is-reverse .split-copy{order:2}}
.split-copy{display:grid;gap:18px;min-width:0}
.split-copy .section-head{margin-bottom:8px}
.split-media{min-width:0;display:grid;gap:18px}
.split-media .media:hover img{transform:scale(1.04)}
.about-sign{font-weight:500}
.mini-quote{margin:0;padding:4px 0 4px 16px;border-left:3px solid var(--blue)}
.mini-quote blockquote{margin:0;font-style:italic;font-weight:300;color:var(--fg)}
.mini-quote figcaption{font-weight:500;font-size:var(--fs-xs);color:var(--fg-mute);margin-top:4px}

/* ---------- Ellenőrzőlista ---------- */
.checklist{display:grid;gap:12px 24px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.checklist.one-col{grid-template-columns:1fr}
.checklist li{display:flex;gap:.65em;align-items:flex-start;font-weight:300}
.checklist svg{color:var(--good);margin-top:.28em;stroke-width:2.5;flex:none}

/* ---------- Összehasonlítás ---------- */
.compare{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
.compare-col{display:grid;gap:16px;align-content:start;padding:30px;border-radius:14px;background:var(--surface);border:1px solid var(--line);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.compare-col:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.compare-col.tone-good{border-top:6px solid var(--good)}
.compare-col.tone-muted{border-top:6px solid var(--fg-mute);background:var(--bg-tint)}
.section-tint .compare-col.tone-muted{background:var(--surface-2)}
.compare-tag{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--fg-mute)}
.tone-good .compare-tag{color:var(--good)}
.compare-col h3{font-size:1.3rem}
.compare-col ul{display:grid;gap:10px}
.compare-col li{display:flex;gap:.6em;align-items:flex-start;color:var(--fg-soft);font-weight:300}
.compare-col li svg{margin-top:.28em;flex:none}
.tone-good li svg{color:var(--good)}
.tone-muted li svg{color:var(--fg-mute)}
.compare-foot{font-size:var(--fs-sm);color:var(--fg-mute);border-top:1px solid var(--line);padding-top:14px}

/* ---------- Esetek ---------- */
.bestof{display:grid;gap:28px;align-items:center;grid-template-columns:minmax(0,1fr);margin-bottom:28px;padding:22px;border-radius:14px;background:var(--bg-tint)}
.section-tint .bestof{background:var(--surface)}
@media (min-width:900px){.bestof{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}
.bestof-copy{display:grid;gap:10px}
.bestof-text{font-size:var(--fs-md);font-weight:300;color:var(--fg-soft)}
.cases-featured{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.cases-small{display:grid;gap:20px;margin-top:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}
.case{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
.case:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:transparent}
.case-media{border-radius:0;aspect-ratio:16/9}
.case:hover .media img{transform:scale(1.05)}
.case-inner{display:flex;flex-direction:column;gap:14px;padding:26px;flex:1}
.case-row{background:var(--bg-tint);border-color:transparent}
.section-tint .case-row{background:var(--surface)}
.case-tag{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--fg-mute);font-weight:500}
.case-name{font-size:1.35rem;font-weight:700}
.case-metric{display:grid;gap:4px;padding:16px 0;border-block:1px solid var(--line)}
.case-metric strong{font-size:clamp(2rem,1.5rem + 1.6vw,2.75rem);line-height:1.05;font-weight:700;letter-spacing:-.03em;background:var(--grad-band);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums}
.case-metric span{font-size:var(--fs-sm);color:var(--fg-soft)}
.case-ba{display:grid;gap:12px;margin:0}
.case-ba div{display:grid;gap:2px}
.case-ba dt{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-mute)}
.case-ba div+div dt{color:var(--good)}
.case-ba dd{margin:0;font-weight:300;color:var(--fg-soft)}
.case-detail{font-size:var(--fs-sm);color:var(--fg-mute)}
.case-link{margin-top:auto;display:inline-flex;align-items:center;gap:.4em;font-weight:700;text-decoration:none;padding-top:6px}
.case:hover .case-link svg{transform:translate(3px,-3px)}

/* ---------- Videók ---------- */
.video{display:grid;gap:8px;min-width:0}
.video-btn{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:var(--ph);color:#fff;font:inherit}
.video-btn img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease),filter .5s}
.video-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(10,16,18,.75));transition:opacity .4s}
.video-btn:hover img{transform:scale(1.05);filter:brightness(.9)}
.play{position:absolute;left:50%;top:50%;z-index:2;display:grid;place-items:center;width:72px;height:72px;margin:-36px 0 0 -36px;border-radius:50%;background:var(--grad);box-shadow:0 10px 30px -8px rgba(0,0,0,.6);transition:transform .35s var(--ease)}
.play::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(255,255,255,.6);animation:halo 2.2s ease-out infinite}
@keyframes halo{from{transform:scale(.85);opacity:1}to{transform:scale(1.35);opacity:0}}
.play svg{width:28px;height:28px;fill:#fff;margin-left:4px}
.video-btn:hover .play{transform:scale(1.1)}
.video-title{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;text-align:left;font-weight:500;font-size:var(--fs-sm);text-shadow:0 1px 8px rgba(0,0,0,.6)}
.video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;display:block;background:#000}
.video-note{display:flex;align-items:center;gap:.4em;font-size:var(--fs-xs);color:var(--fg-mute)}
.video-note svg{width:1em;height:1em}
.video-card .video-title{display:none}
@media (max-width:520px){.play{width:56px;height:56px;margin:-28px 0 0 -28px}.play svg{width:22px;height:22px}.video-title{font-size:var(--fs-xs)}}
.video-hero .video-btn{box-shadow:var(--shadow-lg);border:6px solid var(--surface);border-radius:16px}
.video-grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.video-card{display:grid;gap:14px;align-content:start;background:var(--surface);border-radius:14px;padding:14px 14px 22px;box-shadow:var(--shadow);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.video-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.video-card-body{display:grid;gap:6px;padding-inline:8px}
.video-who{font-weight:700}
.video-card-body p:not(.video-who){color:var(--fg-soft);font-weight:300;font-size:var(--fs-sm)}

/* ---------- SLA ---------- */
.sla{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.sla-item{display:grid;gap:6px;padding:24px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.sla-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.sla-item svg{width:26px;height:26px;color:var(--accent-2)}
.sla-item strong{font-size:2rem;font-weight:700;color:var(--accent);line-height:1.1;font-variant-numeric:tabular-nums}
.sla-item span{font-size:var(--fs-sm);color:var(--fg-soft)}

/* ---------- Árak ---------- */
.tiers{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:stretch}
.tier{position:relative;display:flex;flex-direction:column;gap:14px;padding:30px;border-radius:14px;background:var(--surface);border:1px solid var(--line);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.tier:hover{transform:translateY(-6px);box-shadow:var(--shadow-hover)}
.tier.is-featured{border:2px solid var(--accent);box-shadow:var(--shadow-lg)}
.tier-badge{position:absolute;top:-13px;left:30px;background:var(--grad);color:#fff;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.3rem .8rem;border-radius:999px}
.tier-name{font-size:1.45rem}
.tier-for{color:var(--fg-soft);font-size:var(--fs-sm);font-weight:300;min-height:3em}
.tier-price{display:grid;gap:2px;padding-block:14px;border-block:1px solid var(--line)}
.tier-price strong{font-size:2.2rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums}
.tier-price .tier-custom{font-size:1.7rem}
.tier-price span{font-size:var(--fs-sm);color:var(--fg-mute)}
.tier-multi{font-size:var(--fs-xs);color:var(--fg-mute)}
.tier-multi b{color:var(--fg)}
.tier ul{display:grid;gap:9px;margin-bottom:8px}
.tier li{display:flex;gap:.6em;align-items:flex-start;font-weight:300;font-size:var(--fs-sm)}
.tier li svg{color:var(--good);margin-top:.25em;flex:none}
.tier .btn{margin-top:auto}

.rate-table{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}
.rate-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line);transition:background-color .2s}
.rate-row:last-child{border-bottom:0}
.rate-row:not(.rate-headrow):hover{background:var(--surface-2)}
.rate-headrow{background:var(--surface-2);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-mute)}
.rate-headrow .rate-in{color:var(--good)}
.rate-name{font-weight:500}
.rate-in{font-size:var(--fs-sm);color:var(--fg-soft)}
.rate-in b{font-size:1.15rem;color:var(--good);font-variant-numeric:tabular-nums}
.rate-out{font-size:var(--fs-sm);color:var(--fg-mute);font-variant-numeric:tabular-nums}
.rate-out s{text-decoration-color:var(--bad);text-decoration-thickness:1.5px}
.rate-save{display:flex;align-items:center;gap:10px}
.rate-save b{font-variant-numeric:tabular-nums;color:var(--accent);min-width:3.5ch}
.save-bar{flex:1;height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden}
.save-bar i{display:block;height:100%;width:var(--p);background:var(--grad-band);border-radius:inherit;transform-origin:left;transition:transform 1.1s var(--ease)}
html.js .rate-table.is-pending .save-bar i{transform:scaleX(0)}
@media (max-width:760px){
  .rate-headrow{display:none}
  .rate-row{grid-template-columns:1fr 1fr;gap:6px 16px}
  .rate-name{grid-column:1/-1}
  .rate-save{grid-column:1/-1}
}

.dedicated{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}
.ded{position:relative;display:grid;gap:6px;padding:24px 22px 30px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.ded:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.ded-name{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--fg-mute)}
.ded-hours strong{font-size:2.3rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.ded-hours{color:var(--fg-soft);font-size:var(--fs-sm)}
.ded-price{font-size:var(--fs-sm);color:var(--fg-soft)}
.ded-price b{font-size:1.1rem;color:var(--fg);font-variant-numeric:tabular-nums}
.ded-rate{font-size:var(--fs-xs);color:var(--good);font-weight:500}
.ded-meter{position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--surface-2)}
.ded-meter i{display:block;height:100%;width:var(--h);background:var(--grad-band);transition:width 1s var(--ease)}

.tbl-wrap{overflow-x:auto}
.tbl{width:100%;border-collapse:collapse;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}
.tbl th,.tbl td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
.tbl th{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-mute)}
.tbl tbody tr{transition:background-color .2s}
.tbl tbody tr:hover{background:var(--surface-2)}
.acc-note{color:var(--fg-soft);font-size:var(--fs-sm);margin-bottom:8px}

.terms{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.terms-col{display:grid;gap:12px;align-content:start;padding:24px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.terms-col h3{display:flex;gap:.5em;align-items:center;font-size:1.05rem}
.terms-col h3 svg{color:var(--accent)}
.terms-col li{position:relative;padding-left:16px;color:var(--fg-soft);font-weight:300;font-size:var(--fs-sm)}
.terms-col li+li{margin-top:8px}
.terms-col li::before{content:"";position:absolute;left:0;top:.7em;width:6px;height:6px;border-radius:50%;background:var(--blue)}

/* ---------- Accordion (egyszerre egy nyitva) ---------- */
.faq-wrap{max-width:920px}
.faq{display:grid;gap:12px}
.faq details{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden;transition:border-color var(--t),box-shadow var(--t)}
.faq details:hover{border-color:var(--blue)}
.faq details[open]{box-shadow:var(--shadow-hover);border-color:transparent}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-weight:500;font-size:1.05rem;transition:color var(--t)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:12px;height:12px;border-right:2.5px solid var(--accent);border-bottom:2.5px solid var(--accent);transform:rotate(45deg) translate(-3px,-3px);transition:transform .35s var(--ease)}
.faq details[open] summary::after{transform:rotate(225deg) translate(-3px,-3px)}
.faq details[open] summary{color:var(--accent-2)}
.acc-body{overflow:hidden}
.acc-body>p,.acc-body>.tbl-wrap,.acc-body>.acc-note{padding:0 22px}
.acc-body>p{padding-bottom:20px;color:var(--fg-soft);font-weight:300;max-width:72ch}
.acc-body>.tbl-wrap{padding-bottom:16px}
.section-tint .faq details{background:var(--surface)}

/* ---------- Vélemények ---------- */
.review-head{display:grid;gap:20px;align-items:end;grid-template-columns:minmax(0,1fr);margin-bottom:clamp(30px,4vw,48px)}
.review-head .section-head{margin-bottom:0}
@media (min-width:860px){.review-head{grid-template-columns:minmax(0,1fr) auto}}
.rating{display:grid;grid-template-columns:auto auto;grid-template-areas:"s s" "n t";align-items:center;gap:6px 14px;padding:16px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:var(--fg);justify-self:start;transition:border-color var(--t),transform .3s var(--ease)}
.rating:hover{border-color:var(--blue);color:var(--fg);transform:translateY(-2px)}
.stars{grid-area:s;display:flex;gap:2px;color:var(--star)}
.stars svg{fill:currentColor;width:20px;height:20px}
.rating-num{grid-area:n;font-size:2.2rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.rating-txt{grid-area:t;font-size:var(--fs-xs);color:var(--fg-soft);line-height:1.5;max-width:22ch}
.rating-txt svg{width:.95em;height:.95em}
.rating-sm{grid-template-areas:"s" "t";grid-template-columns:auto;margin-top:16px;padding:12px 14px}
.rating-sm .stars svg{width:16px;height:16px}
.reviews{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
.review{margin:0;display:flex;flex-direction:column;gap:14px;padding:26px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);min-width:0;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.review:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.review blockquote{position:relative;margin:0;padding-top:1.8rem;font-weight:300}
.review blockquote::before{content:"„";position:absolute;left:0;top:-.9rem;font-size:3rem;line-height:1;color:var(--blue);font-weight:700}
.review figcaption{margin-top:auto;font-size:var(--fs-sm);color:var(--fg-mute)}
.review figcaption b{color:var(--fg-soft);font-weight:500}
.review figcaption::before{content:"";display:inline-block;width:18px;height:2px;background:var(--accent);vertical-align:middle;margin-right:10px}
@media (min-width:1000px){
  .reviews{grid-template-columns:repeat(6,minmax(0,1fr))}
  .review{grid-column:span 2}
  .review-lead{grid-column:span 4;background:var(--grad-band);border:0;color:#fff}
  .review-lead blockquote{color:#fff;font-size:1.2rem;line-height:1.55}
  .review-lead blockquote::before{color:rgba(255,255,255,.7)}
  .review-lead figcaption,.review-lead figcaption b{color:rgba(255,255,255,.92)}
  .review-lead figcaption::before{background:#fff}
}

/* ---------- Kapcsolat ---------- */
.contact-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.contact-card{display:grid;gap:6px;align-content:start;padding:28px;border-radius:14px;background:var(--surface);border:1px solid var(--line);color:var(--fg);text-decoration:none;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
a.contact-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:transparent;color:var(--fg)}
.contact-main{background:var(--grad-band);color:#fff;border:0}
a.contact-main:hover{color:#fff}
.contact-ic{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:12px;background:rgba(109,78,236,.1);color:var(--accent);margin-bottom:8px}
.contact-main .contact-ic{background:rgba(255,255,255,.18);color:#fff}
.contact-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;font-weight:700;opacity:.8}
.contact-value{font-size:1.3rem;font-weight:700;word-break:break-word}
.contact-main .contact-value{font-size:1.6rem}
.contact-help{font-size:var(--fs-sm);font-weight:300;opacity:.85}

/* ---------- Záró CTA ---------- */
.final-cta{background:var(--grad-band);background-size:160% 160%;color:#fff;padding-block:clamp(56px,7vw,96px);position:relative;overflow:hidden;animation:bandshift 14s ease-in-out infinite alternate}
@keyframes bandshift{to{background-position:100% 50%}}
.final-cta::after{content:"wp";position:absolute;right:-1rem;bottom:-4.5rem;font-size:clamp(10rem,20vw,18rem);font-weight:700;letter-spacing:-.06em;color:rgba(255,255,255,.08);line-height:1;pointer-events:none}
.final-inner{position:relative;z-index:1;display:grid;gap:32px;align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.final-inner{grid-template-columns:minmax(0,1fr) auto}}
.final-title{font-size:var(--fs-lg);font-weight:700}
.final-sub{margin-top:10px;font-weight:300;font-size:var(--fs-md);opacity:.92;max-width:52ch}
.final-actions{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- Lábléc ---------- */
.site-footer{background:var(--bg-tint);color:var(--fg-mute);font-size:var(--fs-sm);padding-top:56px}
.footer-grid{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}
.footer-note{margin-top:14px;font-weight:300;max-width:34ch}
.footer-h{font-weight:700;text-transform:uppercase;font-size:var(--fs-xs);letter-spacing:.1em;color:var(--fg);margin-bottom:12px}
.footer-list{display:grid;gap:8px}
.footer-list li{display:flex;align-items:center;gap:.5em}
.footer-list a{color:var(--fg-soft);text-decoration:none;background:linear-gradient(var(--accent),var(--accent)) 0 100%/0 1px no-repeat;transition:background-size .35s var(--ease),color .2s}
.footer-list a:hover{color:var(--accent);background-size:100% 1px}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;padding-block:18px calc(18px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);font-size:var(--fs-xs)}
.to-top{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;transition:transform .3s var(--ease),border-color .3s,background-color .3s}
.to-top:hover{transform:translateY(-3px);border-color:var(--accent);background:var(--accent);color:#fff}

/* ---------- Ragadós hívás sáv (mobil) ---------- */
.call-bar{display:none}
@media (max-width:720px){
  .call-bar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:var(--header-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .35s var(--ease)}
  .call-bar.is-visible{transform:none}
  .call-bar .btn{width:100%}
  .site-footer{padding-bottom:80px}
  .cta-row .btn{width:100%}
}

/* ---------- Vélemény: projekt domain ---------- */
.r-domain{display:block;font-size:var(--fs-xs);font-weight:400;color:var(--fg-mute);letter-spacing:.02em;opacity:.85}
.quote figcaption .r-domain{flex-basis:100%;order:3}
.quote figcaption a{order:4}
.review-lead .r-domain{color:rgba(255,255,255,.75)}
.review figcaption .r-domain{margin-top:2px;padding-left:28px}

/* ---------- Videó előnézet ---------- */
.video-btn img.is-broken{opacity:0}
.video.is-embedded .video-note{display:none}

/* ---------- Lábléc: közösségi média, útvonal, jogi linkek ---------- */
.social-h{margin-top:20px}
.social{display:flex;gap:10px;flex-wrap:wrap}
.social a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--surface);border:1px solid var(--line);color:var(--fg-soft);transition:transform .3s var(--ease),background-color .3s,color .3s,border-color .3s}
.social a:hover{transform:translateY(-3px);background:var(--accent);border-color:var(--accent);color:#fff}
.social svg.brand{width:18px;height:18px}
.footer-list small{color:var(--fg-mute)}
.footer-route{margin-top:14px}
.footer-legal{display:grid;gap:6px}
.legal-links{display:flex;flex-wrap:wrap;gap:4px 18px}
.legal-links a,.link-btn{color:var(--fg-soft);text-decoration:none;font:inherit;font-size:var(--fs-xs);background:none;border:0;padding:0;cursor:pointer}
.legal-links a:hover,.link-btn:hover{color:var(--accent);text-decoration:underline}

/* ---------- Térkép ---------- */
.map-grid{display:grid;gap:clamp(28px,4vw,56px);align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.map-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.map-copy{display:grid;gap:18px;min-width:0}
.map-copy .section-head{margin-bottom:6px}
.map-addr{display:flex;gap:.6em;align-items:flex-start;color:var(--fg-soft)}
.map-addr svg{color:var(--accent);margin-top:.3em}
.map-addr b{color:var(--fg)}
.map-actions{display:flex;flex-wrap:wrap;gap:12px}
.map-frame{position:relative;aspect-ratio:4/3;max-width:100%;border-radius:14px;overflow:hidden;background:var(--ph);border:6px solid var(--surface);box-shadow:var(--shadow-lg)}
.map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map-placeholder{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;padding:24px;text-align:center;color:var(--fg-soft);font-size:var(--fs-sm)}
.map-placeholder>svg{width:44px;height:44px;color:var(--accent)}
.map-placeholder p{max-width:40ch}

/* ---------- Jogi oldalak ---------- */
.legal{max-width:900px;display:grid;gap:44px}
.legal-block{display:grid;gap:14px}
.legal-block h2{font-size:1.35rem;font-weight:700;padding-bottom:10px;border-bottom:1px solid var(--line)}
.legal-block p,.legal-block li{color:var(--fg-soft);font-weight:300;max-width:72ch}
.legal-block ul{display:grid;gap:8px;padding-left:1.2em;list-style:disc}
.legal-rows{display:grid;gap:0;margin:0}
.legal-rows div{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}
.legal-rows dt{font-weight:500;color:var(--fg)}
.legal-rows dd{margin:0;color:var(--fg-soft);word-break:break-word}
@media (max-width:560px){.legal-rows div{grid-template-columns:1fr;gap:2px}}

/* ---------- Süti-sáv ---------- */
.cookie{position:fixed;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:90;display:flex;justify-content:center;pointer-events:none}
.cookie[hidden]{display:none!important}
.cookie-inner{pointer-events:auto;width:100%;max-width:760px;display:grid;gap:14px;padding:22px 24px;background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px -20px rgba(0,0,0,.45);animation:rise .5s var(--ease) both}
.cookie-title{display:flex;align-items:center;gap:.5em;font-weight:700;font-size:1.05rem}
.cookie-title svg{color:var(--accent)}
.cookie-text{font-size:var(--fs-sm);color:var(--fg-soft);font-weight:300}
.cookie-prefs{display:grid;gap:10px}
.cookie-prefs[hidden]{display:none}
.cookie-opt{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);font-size:var(--fs-sm);color:var(--fg-soft);cursor:pointer}
.cookie-opt input{width:18px;height:18px;margin-top:3px;accent-color:var(--purple);flex:none}
.cookie-opt b{color:var(--fg)}
.cookie-opt i{font-style:normal;font-size:var(--fs-xs);color:var(--good);margin-left:6px}
.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.cookie-actions [hidden]{display:none}
@media (max-width:560px){.cookie-actions .btn{flex:1 1 calc(50% - 10px)}}
.footer-list.plain li{display:block}
.cookie:not([hidden]) ~ .call-bar{display:none}

/* ====================================================================
   Bővítés: fényfoltok, ABMG díszítőelemek, galéria, logósáv, társoldalak
   ==================================================================== */
[hidden]{display:none!important}
:root{--blob-a:rgba(21,180,229,.20);--blob-b:rgba(109,78,236,.16);--deco:var(--blue);--deco-o:.06;
  --abmg-circle:url("data:image/svg+xml,%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M43.0136 32.1785C44.3851 29.2646 45.1517 26.0098 45.1517 22.5759C45.1517 19.2416 44.4289 16.0762 43.1314 13.2277C38.0406 12.0776 33.5694 16.2141 32.0433 20.7025C31.9733 20.6792 31.9091 20.6553 31.8445 20.6312C31.7874 20.6099 31.73 20.5885 31.6679 20.5673C29.7204 18.6988 27.77 16.8244 25.8177 14.9484C22.2616 11.531 18.6995 8.10788 15.1377 4.70332H22.8618C24.6426 5.93126 26.4119 7.17075 28.1858 8.41354C28.8969 8.91167 29.6087 9.41034 30.3223 9.909C30.8519 9.5913 31.3552 9.26982 31.8515 8.95278C33.6646 7.79454 35.385 6.69554 37.9635 6.05636C33.9314 2.29888 28.5221 0 22.5758 0C16.6661 0 11.2868 2.27069 7.2627 5.9872C8.45502 6.25197 9.65726 6.68335 10.8551 7.30581C13.0825 8.46481 14.8726 10.2038 16.632 11.9131C17.2787 12.5413 17.9213 13.1655 18.5798 13.7554C23.3476 18.0328 27.938 22.4452 32.3959 27.0169C32.4446 27.0668 32.4939 27.1174 32.5437 27.1685C34.8318 29.5168 38.3522 33.1298 43.0136 32.1785Z' fill='%23000'/%3E %3Cpath d='M37.8111 39.2356C37.188 39.0925 36.5662 38.9055 35.9493 38.6708C32.379 37.3245 29.726 34.6208 27.1481 31.9937C26.1724 30.9994 25.2074 30.016 24.2075 29.1213C20.7868 25.9527 17.344 22.763 13.9226 19.5718C13.4765 19.1224 13.0207 18.5934 12.539 18.0342C10.3037 15.4396 7.5098 12.1966 2.53418 13.2573C2.33316 13.3006 2.13535 13.3494 1.94086 13.4035C0.693348 16.206 0 19.3096 0 22.5752C0 25.8696 0.705643 28.9992 1.97403 31.8211C5.32511 32.4898 9.18173 31.4593 11.2306 29.0081C11.9433 28.1554 12.3365 27.2104 12.7594 26.1939C12.965 25.6996 13.1776 25.1885 13.4375 24.6628C13.4669 24.6932 13.4939 24.7235 13.5201 24.7529C13.5724 24.8116 13.6215 24.8666 13.6804 24.9119L14.1913 25.3964C19.6051 30.5305 25.0196 35.6651 30.4542 40.7978H22.619C20.1699 39.0565 17.7194 37.3137 15.2696 35.5709C14.6298 35.4665 13.8177 36.2463 13.1297 36.907C12.7736 37.2489 12.4507 37.5589 12.2022 37.6979C11.0075 38.3402 9.3676 39.0075 7.51965 39.3975C11.5144 42.9754 16.7911 45.1511 22.5759 45.1511C28.4475 45.1511 33.7956 42.9096 37.8111 39.2356Z' fill='%23000'/%3E %3C/svg%3E");
  --abmg-infinity:url("data:image/svg+xml,%3Csvg width='539' height='273' viewBox='0 0 539 273' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M464.248 19.6781C446.876 11.8058 418.886 3.76758 391.407 9.24771C363.586 15.0596 348.575 27.5612 328.683 39.3723C309.63 26.1911 290.745 13.0099 271.685 0C251.957 0 232.397 0 212.674 0C254.825 39.8861 296.982 80.1093 338.964 119.985C339.977 120.327 340.825 120.675 341.832 121.007C355.999 79.7615 403.38 42.4442 452.111 75.9992C500.837 109.372 489.207 183.825 437.101 204.365C394.945 221.142 363.754 188.278 344.526 168.765C310.468 134.188 275.397 100.815 238.971 68.4641C220.25 51.8632 203.226 31.6713 179.954 19.6835C106.438 -18.1368 30.7294 37.3119 9.81976 90.0367C-26.0946 180.576 42.8713 251.267 113.688 263.592C143.202 268.724 172.879 258.797 190.246 249.554C195.813 246.472 206.263 232.268 213.681 233.467C232.397 246.648 251.119 259.829 269.83 273C289.722 273 309.624 273 329.69 273C286.864 232.959 244.201 192.901 201.539 152.849C200.864 152.336 200.358 151.656 199.683 150.966C193.615 163.119 190.915 174.245 182.822 183.83C158.544 212.585 101.04 215.491 76.255 184.687C38.9909 138.641 62.5946 76.1705 116.382 64.7018C162.588 54.9511 184.167 93.2905 203.389 112.46C229.529 136.596 255.832 160.722 281.966 184.687C309.788 209.331 334.072 242.875 371.673 256.913C425.292 277.105 483.634 250.576 508.25 220.452C566.26 149.082 536.92 52.3769 464.248 19.6781Z' fill-rule='evenodd' clip-rule='evenodd' fill='%23000'/%3E %3C/svg%3E");}
:root[data-theme="dark"]{--blob-a:rgba(21,180,229,.22);--blob-b:rgba(148,128,245,.22);--deco-o:.08}

/* Elmosott fényfoltok (világos módban is, kék és lila) – a tartalom mögött */
.section-tint,.quote-band,.gallery-band,.hero,.sites-section,.video-small-section{position:relative;isolation:isolate;overflow:hidden}
.section-tint::before,.quote-band::before,.gallery-band::before,.sites-section::before,.video-small-section::before{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(520px,80vw);aspect-ratio:1;border-radius:50%;background:var(--blob-a);filter:blur(90px);top:-180px;right:-160px}
.section-tint::after,.gallery-band::after,.sites-section::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(460px,70vw);aspect-ratio:1;border-radius:50%;background:var(--blob-b);filter:blur(90px);bottom:-200px;left:-160px}
.quote-band:nth-of-type(even)::before{right:auto;left:-160px;background:var(--blob-b)}
.hero::after{content:"";position:absolute;z-index:0;pointer-events:none;width:min(480px,70vw);aspect-ratio:1;border-radius:50%;background:var(--blob-b);filter:blur(100px);left:-180px;bottom:-220px}
.hero-grid{z-index:1}

/* ABMG kör-minta: apró ismétlődő jel a megerősítő sávban és a láblécben */
.trust,.site-footer{position:relative;isolation:isolate}
.trust::before,.site-footer::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--deco);opacity:var(--deco-o);
  -webkit-mask:var(--abmg-circle) 0 0/34px 34px repeat;mask:var(--abmg-circle) 0 0/34px 34px repeat;
  -webkit-mask-image:var(--abmg-circle),linear-gradient(#000,#000);mask-image:var(--abmg-circle)}
.trust::before{-webkit-mask-size:30px;mask-size:30px;-webkit-mask-repeat:space;mask-repeat:space}
.site-footer::before{opacity:calc(var(--deco-o) * .7)}
/* ABMG végtelen-jel: nagy háttérmotívum */
.final-cta::after{content:"";right:-60px;bottom:-70px;width:min(560px,70vw);aspect-ratio:539/273;height:auto;font-size:0;background:#fff;opacity:.16;
  -webkit-mask:var(--abmg-infinity) center/contain no-repeat;mask:var(--abmg-infinity) center/contain no-repeat}
.sla-band,.legal-section{position:relative;isolation:isolate;overflow:hidden}
.sla-band::after,.video-small-section::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(620px,90vw);aspect-ratio:539/273;right:-120px;top:20px;background:var(--deco);opacity:calc(var(--deco-o) * .9);
  -webkit-mask:var(--abmg-infinity) center/contain no-repeat;mask:var(--abmg-infinity) center/contain no-repeat}
.video-small-section::after{right:auto;left:-140px;top:auto;bottom:-40px}

/* Véletlenszerű vélemények: a csere idejére elrejtjük a szöveget (ha a szkript nem fut, 2 mp után úgyis megjelenik) */
.js [data-review-slot]>blockquote,.js [data-review-slot]>figcaption{opacity:0;transition:opacity .45s var(--ease);animation:slotReveal 0s 2s forwards}
.js [data-review-slot].is-filled>blockquote,.js [data-review-slot].is-filled>figcaption{opacity:1;animation:none}
@keyframes slotReveal{to{opacity:1}}
.r-role::before{content:" · "}
.review figcaption .r-role{color:var(--fg-mute)}
.review-lead .r-role{color:rgba(255,255,255,.85)}

/* Galéria */
.gallery-band{padding-block:clamp(8px,2vw,24px)}
.gallery{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(150px,18vw,230px)}
.gallery-item{aspect-ratio:auto;height:100%;margin:0;border-radius:14px;box-shadow:var(--shadow)}
.gallery-item img{transition:transform .8s var(--ease),filter .5s}
.gallery-item:hover img{transform:scale(1.06)}
.gallery-3 .gallery-item:first-child{grid-row:span 2}
@media (min-width:900px){.gallery-3{grid-template-columns:1.4fr 1fr 1fr;grid-auto-rows:clamp(220px,24vw,330px)}.gallery-3 .gallery-item:first-child{grid-row:auto}.gallery-3 .gallery-item:nth-child(2){transform:translateY(28px)}
  .gallery-4{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(200px,20vw,280px)}.gallery-4 .gallery-item:nth-child(even){transform:translateY(24px)}}
@media (max-width:520px){.gallery{grid-template-columns:1fr;grid-auto-rows:200px}.gallery-3 .gallery-item:first-child{grid-row:auto}}

/* Ügyféllogók (sziluett, rámutatásra színes) */
.logos-band{padding-block:28px 34px;border-bottom:1px solid var(--line);overflow:hidden}
.logos-kicker{text-align:center;margin-bottom:18px}
.logos-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logos-track{display:flex;gap:56px;width:max-content;align-items:center;animation:marquee 60s linear infinite}
.logos-marquee:hover .logos-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.logo-item{flex:none}
.logo-mask{display:block;width:150px;height:58px;background:var(--fg-mute);opacity:.75;-webkit-mask:var(--logo) center/contain no-repeat;mask:var(--logo) center/contain no-repeat;transition:background-color .35s var(--ease),opacity .35s,transform .35s var(--ease)}
.logo-item:hover .logo-mask{background:var(--accent);opacity:1;transform:scale(1.06)}
@media (prefers-reduced-motion:reduce){.logos-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center;gap:28px 40px}.logos-track .logo-item[aria-hidden]{display:none}}

/* Társoldalak: rács és csúszka */
.sites-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.sites-head .section-head{margin-bottom:clamp(28px,4vw,44px)}
.slider-nav{display:flex;gap:10px;margin-bottom:clamp(28px,4vw,44px)}
.slider-btn{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;transition:background-color .3s,color .3s,border-color .3s,transform .3s var(--ease)}
.slider-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-2px)}
.sites{display:grid;gap:20px}
.sites-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.sites-slider{grid-auto-flow:column;grid-auto-columns:minmax(260px,32%);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:12px;scrollbar-width:thin}
.sites-slider>li{scroll-snap-align:start}
@media (max-width:700px){.sites-slider{grid-auto-columns:82%}}
.site-card a{position:relative;display:grid;gap:8px;align-content:start;height:100%;padding:26px 26px 24px;border-radius:14px;background:var(--surface);border:1px solid var(--line);color:var(--fg);text-decoration:none;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
.site-card a:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:transparent;color:var(--fg)}
.site-mark{width:40px;height:40px;background:var(--blue);-webkit-mask:var(--abmg-circle) center/contain no-repeat;mask:var(--abmg-circle) center/contain no-repeat;margin-bottom:6px;transition:transform .6s var(--ease)}
.site-card a:hover .site-mark{transform:rotate(180deg)}
.site-domain{font-weight:700;font-size:1.12rem;word-break:break-word}
.site-desc{color:var(--fg-soft);font-weight:300;font-size:var(--fs-sm)}
.site-go{margin-top:8px;display:inline-flex;align-items:center;gap:.35em;font-weight:700;font-size:var(--fs-sm);color:var(--link)}
.site-card a::after{content:"";position:absolute;right:-50px;bottom:-40px;width:150px;aspect-ratio:539/273;background:var(--deco);opacity:var(--deco-o);-webkit-mask:var(--abmg-infinity) center/contain no-repeat;mask:var(--abmg-infinity) center/contain no-repeat}

/* Kisebb bemutatkozó videó */
.video-small{max-width:680px;margin-inline:auto;display:grid;gap:12px;text-align:center;justify-items:center}
.video-small .video{width:100%;margin-top:10px}
.h3-like{font-size:1.35rem;font-weight:700}
.final-cta::after{z-index:0;opacity:.11}
.final-cta>.wrap{position:relative;z-index:1}
.site-footer::before{opacity:calc(var(--deco-o) * .55)}

/* ===== Kör 3 ===== */
/* Főoldali nyitóblokk: fotó + rálógó átvilágítási kártya */
.hero-stack{position:relative;min-width:0;padding-top:clamp(48px,6vw,84px)}
.hero-stack .hero-photo{position:absolute;top:0;right:0;margin:0;width:80%;height:78%;aspect-ratio:auto;border-radius:18px;box-shadow:var(--shadow-lg);animation:rise .9s .05s var(--ease) both}
.hero-stack .hero-photo img{width:100%;height:100%;object-fit:cover}
.hero-stack .audit{position:relative;width:68%;z-index:1}
.hero-stack .audit-head{padding:12px 16px;gap:10px;flex-wrap:nowrap}
.hero-stack .audit-title{font-size:.92rem}
.hero-stack .audit-switch button{padding:.3rem .7rem}
.hero-stack .audit-list li{padding:5px 16px;font-size:.8rem;gap:10px}
.hero-stack .audit-list b{font-size:.72rem;padding-block:.15rem}
.hero-stack .audit-head>div:first-child{min-width:0}
.hero-stack .audit-foot{padding:8px 16px 10px;font-size:.72rem}
@media (max-width:999px){.hero-stack{padding-top:0}.hero-stack .hero-photo{position:relative;width:100%;height:auto;aspect-ratio:4/3}.hero-stack .audit{width:92%;margin:-22% 0 0 4%;font-size:.9em}}
.page-home .hero{padding-block:clamp(28px,3.5vw,52px) clamp(28px,3.5vw,48px)}
.page-home .hero-copy{gap:16px}
.page-home .logos-band{padding-block:12px 16px}
.page-home .logos-kicker{margin-bottom:8px}

/* Lágy, ismétlődő mozgás a nyitóblokkban: lélegző fényfoltok */
.hero::before{animation:drift 18s ease-in-out infinite alternate,breathe 9s ease-in-out infinite alternate}
.hero::after{animation:breathe2 12s ease-in-out infinite alternate}
.hero-grid::before{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(340px,60vw);aspect-ratio:1;border-radius:50%;background:var(--blob-a);filter:blur(80px);left:38%;top:-10%;animation:float3 16s ease-in-out infinite alternate}
@keyframes breathe{0%{opacity:.75;scale:.9}100%{opacity:1;scale:1.18}}
@keyframes breathe2{0%{transform:translate(0,0) scale(.85);opacity:.7}100%{transform:translate(12%,-14%) scale(1.25);opacity:1}}
@keyframes float3{0%{transform:translate(0,0) scale(1)}50%{transform:translate(-18%,30%) scale(1.2)}100%{transform:translate(14%,55%) scale(.9)}}
/* Írógépes második sor */
.tw-ch{visibility:hidden}
.tw-ch.on{visibility:visible}
.tw-caret{display:inline-block;width:.07em;height:.9em;margin-left:.04em;vertical-align:-.06em;background:var(--accent);border-radius:2px;animation:caret 1s steps(1) infinite}
.tw-done .tw-caret{animation:caret 1s steps(1) 4,fadeout .6s 4s forwards}
@keyframes caret{50%{opacity:0}}
@keyframes fadeout{to{opacity:0}}
@media (prefers-reduced-motion:reduce){.hero::before,.hero::after,.hero-grid::before{animation:none}.tw-ch{visibility:visible}.tw-caret{display:none}}

/* Referenciakártyák: ügyfél weboldala és logója */
.case-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.case-top>div{min-width:0}
.case-site{display:inline-flex;align-items:center;gap:.4em;margin-top:6px;font-size:var(--fs-xs);color:var(--fg-mute);letter-spacing:.02em}
.case-site svg{width:14px;height:14px}
.case-logo{flex:none;width:88px;height:48px;background:var(--fg-soft);opacity:.8;-webkit-mask:var(--logo) right center/contain no-repeat;mask:var(--logo) right center/contain no-repeat;transition:background-color .35s,opacity .35s}
.case:hover .case-logo{background:var(--accent);opacity:1}
.case-row .case-logo{width:72px;height:40px}

/* Videós vélemény: weboldal */
.video-who .r-domain{margin-top:2px}

/* Társoldalak: ABMG-jel + projektre jellemző ikon */
.site-icons{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.site-icons .site-mark{margin:0}
.site-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);transition:background-color .35s,color .35s,transform .35s var(--ease)}
.site-ic svg{width:20px;height:20px}
.site-card a:hover .site-ic{background:var(--accent);color:#fff;transform:translateY(-2px)}

/* Lábléc: közösségi ikon színe kövesse a gombot (a .brand osztály ütközését feloldjuk) */
.social a svg.brand{color:inherit;fill:currentColor;transition:color .3s}
/* Logósáv a hajtás felett: tömörebb a főoldalon */
.page-home .logo-mask{height:46px;width:132px}
@media (min-width:1000px){
  .page-home .hero-title{font-size:clamp(2.4rem,4vw,3.25rem)}
  .page-home .hero .lead{font-size:1.02rem}
  .page-home .hero{padding-block:24px 30px}
}
@media (min-width:1000px) and (max-height:800px){.page-home .hero-title{font-size:2.6rem}.page-home .hero .lead{font-size:.98rem;line-height:1.55}.page-home .hero-copy{gap:12px}}
