@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url(/fonts/cormorant-garamond-normal-latin-ext.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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url(/fonts/cormorant-garamond-normal-latin.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: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300 500;
  font-display: swap;
  src: url(/fonts/cormorant-garamond-italic-latin-ext.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: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300 500;
  font-display: swap;
  src: url(/fonts/cormorant-garamond-italic-latin.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: 'DM Sans';
  font-style: normal;
  font-weight: 300 500;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin-ext.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: 'DM Sans';
  font-style: normal;
  font-weight: 300 500;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin.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;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg-base:#0D0F14;--bg-surface:#161A22;--bg-raised:#1E2430;
  --tx-primary:#F0EDE8;--tx-muted:#8892A4;--tx-soft:#C4CDD9;
  --bd-sub:rgba(184,151,90,.12);--bd-form:rgba(184,151,90,.2);--bd-focus:rgba(184,151,90,.6);
  --nav-bg:rgba(13,15,20,.88);
  --gold:#B8975A;--gold-l:#D4B47C;--gold-p:#EFE2C8;--teal:#2E7D6E;
  --serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--bg-base);color:var(--tx-primary);font-family:var(--sans);line-height:1.6;overflow-x:hidden}
a{color:inherit}
img{max-width:100%;display:block}

/* NAV */
nav{position:fixed;inset:0 0 auto 0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 3rem;background:var(--nav-bg);backdrop-filter:blur(16px);border-bottom:.5px solid var(--bd-sub)}
.nav-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none}
.nav-wordmark{font-family:var(--serif);font-size:1.05rem;letter-spacing:.14em;text-transform:uppercase}
.nav-menu{display:flex;align-items:center;gap:2.5rem}
.nav-links{display:flex;gap:2.5rem;list-style:none}
.nav-links a{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted);text-decoration:none;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--gold)}
.nav-cta{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);text-decoration:none;border:.5px solid rgba(184,151,90,.45);padding:.55rem 1.4rem;border-radius:2px;transition:background .2s,border-color .2s}
.nav-cta:hover{background:rgba(184,151,90,.12);border-color:var(--gold)}

/* LAYOUT */
.wrap{max-width:1100px;margin:0 auto;padding:0 2rem}
section{padding:6rem 0}
.label{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15}
h1{font-size:clamp(2.6rem,6vw,4.4rem)}
h2{font-size:clamp(1.9rem,3.6vw,2.7rem);margin-bottom:1rem}
h3{font-size:1.5rem}
.lead{color:var(--tx-soft);font-weight:300;font-size:1.1rem;max-width:620px}
.muted{color:var(--tx-muted)}

/* BUTTONS */
.btn{display:inline-block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:.9rem 2rem;border-radius:2px;border:.5px solid var(--gold);transition:all .25s;cursor:pointer;font-family:var(--sans)}
.btn-primary{background:var(--gold);color:var(--bg-base);font-weight:500}
.btn-primary:hover{background:var(--gold-l)}
.btn-ghost{color:var(--gold);background:transparent}
.btn-ghost:hover{background:rgba(184,151,90,.12)}

/* HERO */
.page-hero{position:relative;padding:11rem 0 4rem}
.page-hero::before{content:'';position:absolute;z-index:-1;top:0;left:0;right:0;height:calc(100% + 14rem);pointer-events:none;background-image:linear-gradient(180deg,rgba(13,15,20,.32) 0%,rgba(13,15,20,.55) 38%,rgba(13,15,20,.9) 76%,#0D0F14 100%),url('https://res.cloudinary.com/aw4mx5w7/image/upload/f_auto,q_auto/v1788467486/neogenics_hero_b.png');background-repeat:no-repeat;background-position:center top;background-size:100% 100%,max(100%,1100px) auto}
.page-hero .lead{margin-top:1.5rem}
.crumbs{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted);margin-bottom:2rem}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--gold)}

/* STATS */
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:.5px solid var(--bd-sub);border-bottom:.5px solid var(--bd-sub);margin-top:4rem}
.stat{padding:1.8rem 1rem;text-align:center;border-right:.5px solid var(--bd-sub)}
.stat:last-child{border-right:0}
.stat b{display:block;font-family:var(--serif);font-weight:400;font-size:2.4rem;color:var(--gold-l)}
.stat span{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted)}

/* FILTER (statikus tag-sor, később szűrhető) */
.filters{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:3rem}
.chip{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:.5rem 1.1rem;border:.5px solid var(--bd-form);border-radius:100px;color:var(--tx-muted);background:transparent;cursor:pointer;font-family:var(--sans);transition:all .2s}
.chip:hover{color:var(--gold);border-color:var(--gold)}
.chip.on{color:var(--bg-base);background:var(--gold);border-color:var(--gold)}

/* CASE (kiemelt projekt) */
.case{background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;overflow:hidden}
.case-media{position:relative;background:var(--bg-raised)}
.ba{position:relative;aspect-ratio:1200/625;overflow:hidden;user-select:none;touch-action:pan-y}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba .before{clip-path:inset(0 50% 0 0)}
.ba-handle{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--gold-l);pointer-events:none}
.ba-handle::after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:var(--gold);color:var(--bg-base);display:grid;place-items:center;font-size:1.1rem}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}
.tag{position:absolute;top:1rem;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;padding:.35rem .8rem;border-radius:2px;background:rgba(13,15,20,.8);backdrop-filter:blur(6px);pointer-events:none}
.tag.l{left:1rem}.tag.r{right:1rem;color:var(--gold-l)}
.case-body{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;padding:3rem}
.meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.2rem}
.pill{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .8rem;border:.5px solid var(--bd-form);border-radius:100px;color:var(--gold)}
.case-body p{color:var(--tx-soft);font-weight:300;margin:1rem 0}
.case-body h3{margin-bottom:.3rem}
.facts{list-style:none;border-top:.5px solid var(--bd-sub)}
.facts li{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:.5px solid var(--bd-sub);font-size:.9rem}
.facts li span:first-child{color:var(--tx-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;padding-top:.15rem}
.facts li span:last-child{text-align:right;color:var(--tx-soft)}
.case-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.8rem}

/* RÉSZLETEK */
.detail{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.dcard{background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;padding:2rem}
.dcard .n{font-family:var(--serif);color:var(--gold);font-size:1.1rem;letter-spacing:.1em}
.dcard h3{margin:.4rem 0 .8rem;font-size:1.35rem}
.dcard p,.dcard li{color:var(--tx-soft);font-weight:300;font-size:.95rem}
.dcard ul{list-style:none}
.dcard li{padding:.35rem 0 .35rem 1.1rem;position:relative}
.dcard li::before{content:'';position:absolute;left:0;top:.95rem;width:5px;height:5px;border-radius:50%;background:var(--gold)}

/* SCREENS */
.screens{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.shot{background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;overflow:hidden}
.shot figcaption{padding:1rem 1.4rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted);display:flex;justify-content:space-between}
.shot figcaption b{color:var(--gold);font-weight:500}
.shot .scroll{max-height:520px;overflow-y:auto;border-top:.5px solid var(--bd-sub)}
.shot .scroll::-webkit-scrollbar{width:4px}.shot .scroll::-webkit-scrollbar-thumb{background:var(--gold)}

/* GRID (további projektek) */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.card{background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;padding:2rem;display:flex;flex-direction:column;gap:.8rem;min-height:230px;transition:border-color .25s,transform .25s}
.card:hover{border-color:var(--bd-focus);transform:translateY(-3px)}
.card .cat{font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.card p{color:var(--tx-muted);font-size:.92rem;font-weight:300;flex:1}
.card .st{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-muted)}
.card.ghost{border-style:dashed;background:transparent}
.card.ghost h3,.card.ghost p{opacity:.6}

/* CTA */
.cta{text-align:center;background:radial-gradient(ellipse at 50% 100%,rgba(184,151,90,.12),transparent 60%);border-top:.5px solid var(--bd-sub)}
.cta .lead{margin:1rem auto 2.2rem}

/* FOOTER */

/* RESPONSIVE */
@media(max-width:900px){
    .wrap{padding:0 1.25rem}section{padding:4rem 0}.page-hero{padding:8rem 0 3rem}
  .case-body{grid-template-columns:1fr;padding:1.75rem;gap:2rem}
  .detail,.grid,.screens{grid-template-columns:1fr}
  .stat b{font-size:1.8rem}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* --- v2 kiegészítések --- */
.back{display:inline-block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted);text-decoration:none;margin-bottom:2rem}
.back:hover{color:var(--gold)}
.pcard{background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:border-color .25s,transform .25s}
.pcard:hover{border-color:var(--bd-focus);transform:translateY(-3px)}
.pcard .thumb{aspect-ratio:1200/625;overflow:hidden;background:var(--bg-raised)}
.pcard .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pcard:hover .thumb img{transform:scale(1.04)}
.pcard .pbody{padding:1.6rem 1.8rem 1.8rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
.pcard .pbody p{color:var(--tx-muted);font-size:.92rem;font-weight:300;flex:1}
.pcard .more{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.pcard .st{color:var(--teal);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}
.tech{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.tcard{background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;padding:2rem}
.tcard h3{font-size:1.35rem;margin-bottom:.6rem}
.tcard p{color:var(--tx-soft);font-weight:300;font-size:.95rem}
.langs{display:flex;gap:.5rem;margin-top:1rem}
.langs span{font-size:.7rem;letter-spacing:.14em;padding:.3rem .8rem;border:.5px solid var(--gold);border-radius:100px;color:var(--gold-l)}
.pager{display:flex;justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:2rem;border-top:.5px solid var(--bd-sub)}
.pager a{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted);text-decoration:none}
.pager a:hover{color:var(--gold)}
@media(max-width:900px){.tech{grid-template-columns:1fr}}

/* nyelvváltó + instagram */
.tabs{display:flex;gap:.5rem;margin:2rem 0 1.2rem}
.tab{font-family:var(--sans);font-size:.75rem;letter-spacing:.16em;padding:.6rem 1.4rem;border:.5px solid var(--bd-form);border-radius:100px;background:transparent;color:var(--tx-muted);cursor:pointer;transition:all .2s}
.tab:hover{color:var(--gold);border-color:var(--gold)}
.tab.on{background:var(--gold);color:var(--bg-base);border-color:var(--gold)}
.langview{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:start}
.langview .shot .scroll{max-height:620px}
.langview ul{list-style:none;margin-top:1.2rem}
.langview li{padding:.5rem 0 .5rem 1.1rem;position:relative;color:var(--tx-soft);font-weight:300;font-size:.95rem}
.langview li::before{content:'';position:absolute;left:0;top:1.05rem;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.igsplit{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:center}
.igsplit .shot img{width:100%}
.igsplit p{color:var(--tx-soft);font-weight:300;margin-top:1rem}
@media(max-width:900px){.langview,.igsplit{grid-template-columns:1fr}}

/* Ava.AI */
.triple{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.triple .shot img{width:100%}
.triple .shot figcaption{flex-direction:column;gap:.2rem}
.case-media img.static{width:100%;aspect-ratio:1200/625;object-fit:cover}
.note{font-size:.8rem;color:var(--tx-muted);margin-top:1rem;font-style:italic}
@media(max-width:900px){.triple{grid-template-columns:1fr}}

.pcard .st.proto,.st.proto{color:var(--gold)}
.flow{display:flex;align-items:stretch;gap:0;margin-top:2rem;flex-wrap:wrap}
.fstep{flex:1 1 180px;background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;padding:1.4rem 1.3rem;position:relative}
.fstep .n{font-family:var(--serif);color:var(--gold);letter-spacing:.1em}
.fstep h3{font-size:1.15rem;margin:.3rem 0 .5rem}
.fstep p{font-size:.88rem;color:var(--tx-soft);font-weight:300}
.farr{flex:0 0 28px;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1.2rem}
.formshots{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.formshots figure{background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;overflow:hidden}
.formshots img{width:100%;display:block}
.formshots figcaption{padding:.9rem 1.2rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted)}
@media(max-width:900px){.farr{transform:rotate(90deg);flex-basis:20px;width:100%}.formshots{grid-template-columns:1fr}}

/* --- Ökoszisztéma ábra --- */
.eco{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr;align-items:stretch;gap:0;margin-top:2rem}
.eco-col{display:flex;flex-direction:column;gap:1rem}
.eco-col h4{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tx-muted);font-weight:500}
.eco-node{display:block;text-decoration:none;background:var(--bg-surface);border:.5px solid var(--bd-sub);border-radius:4px;padding:1.2rem 1.3rem;flex:1}
.eco-node b{display:block;font-family:var(--serif);font-weight:400;font-size:1.25rem;color:var(--tx-primary);margin-bottom:.3rem}
.eco-node span{font-size:.85rem;color:var(--tx-soft);font-weight:300}
.eco-node small{display:block;margin-top:.6rem;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.eco-node small.proto{color:var(--gold)}
a.eco-node:hover{border-color:var(--gold)}
.eco-node.cur{border-color:var(--gold);background:var(--bg-raised)}
.eco-node.store{border-style:dashed}
.eco-arr{display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1.3rem;padding-top:1.6rem}
@media(max-width:900px){.eco{grid-template-columns:1fr}.eco-arr{transform:rotate(90deg);padding:0;height:28px}}
.eco-base{margin-top:1rem;border:.5px solid var(--bd-form);border-radius:4px;padding:1rem 1.3rem;display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;align-items:center;background:var(--bg-surface)}
.eco-base b{font-family:var(--serif);font-weight:400;font-size:1.1rem;color:var(--gold-l)}
.eco-base span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-soft)}

/* --- Képnagyítás --- */
img.zoomable{cursor:zoom-in}
.lb{position:fixed;inset:0;z-index:1000;background:rgba(8,10,14,.98);display:flex;flex-direction:column;align-items:center}
.lb[hidden]{display:none}
.lb-scroll{flex:1;width:100%;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:3.5rem 1rem 1rem;cursor:zoom-out}
.lb-scroll img{max-width:100%;height:auto;display:block;border-radius:4px;box-shadow:0 10px 40px rgba(0,0,0,.6)}
.lb-x{position:absolute;top:.8rem;right:1.2rem;z-index:2;width:40px;height:40px;border-radius:50%;border:.5px solid var(--bd-form);background:var(--bg-surface);color:var(--tx-primary);font-size:1.5rem;line-height:1;cursor:pointer}
.lb-x:hover{border-color:var(--gold);color:var(--gold-l)}
.lb-cap{padding:.7rem 1rem 1rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-muted);text-align:center}

/* gyűjtőoldali kártyák: a két jelvény férjen egy sorba */
.pcard .meta{flex-wrap:nowrap;gap:.4rem}
.pcard .meta .pill{padding:.28rem .6rem;letter-spacing:.07em;font-size:.6rem;white-space:nowrap}

/* Folyamatábra */
.flow{margin:1.8rem 0 0;padding:0}
.flow-scroll{overflow-x:auto;background:var(--bg-surface);border:1px solid var(--bg-raised);border-radius:12px;padding:1rem}
.flow svg{display:block;width:100%;min-width:900px;height:auto}
.flow .ft{font:500 14px 'DM Sans',sans-serif;fill:#F0EDE8}
.flow .fs{font:300 12px 'DM Sans',sans-serif;fill:#C4CDD9}
.flow .fl{font:500 11px 'DM Sans',sans-serif;letter-spacing:.12em}
.flow figcaption{margin-top:.7rem;font-size:.85rem;color:var(--tx-muted)}

/* --- nav (burger) az indexszel egyezően --- */
.nav-burger {
  display: none; flex-direction: column; gap: 5px;
  cursor: pointer; background: transparent; border: none; padding: 4px;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  outline: none;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  user-select: none;
  -webkit-user-select: none;
}
.nav-burger:focus,
.nav-burger:active,
.nav-burger:focus-visible {
  outline: none;
  background: transparent;
  box-shadow: none;
  -webkit-tap-highlight-color: transparent;
}
.nav-burger span {
  display: block; width: 22px; height: 1px; background: var(--tx-primary);
  transition: transform 0.3s, opacity 0.3s;
  pointer-events: none;
}


@media(max-width:768px){
  nav{padding:1.1rem 1.5rem}
  .nav-menu{display:flex;flex-direction:column;position:fixed;top:4.5rem;right:0;width:min(56vw,200px);background:#0D0F14;align-items:center;justify-content:flex-start;gap:1.25rem;padding:1.5rem;z-index:99;box-shadow:-10px 8px 30px rgba(0,0,0,.4);transform:translateX(100%);transition:transform .35s ease}
  .nav-menu a{-webkit-tap-highlight-color:transparent;outline:none}
  .nav-links{display:flex;flex-direction:column;gap:1.25rem;align-items:center;width:100%}
  .nav-cta{margin-top:.25rem}
  .nav-burger{display:flex}
}
.nav-mobile-open .nav-menu{transform:translateX(0)}
.nav-mobile-open .nav-logo,.nav-mobile-open .nav-burger{position:relative;z-index:101}
.nav-burger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}
body.nav-mobile-open nav{backdrop-filter:none}

/* --- COOKIE CONSENT BANNER --- */
.cookie-consent-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 9999;
  background: var(--bg-raised);
  border-top: 0.5px solid var(--bd-form);
  box-shadow: 0 -8px 30px rgba(0,0,0,0.35);
  transform: translateY(100%);
  transition: transform .4s ease;
}
.cookie-consent-banner.visible { transform: translateY(0); }
.cookie-consent-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 1.25rem clamp(1.25rem, 4vw, 3rem);
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
}
.cookie-consent-text {
  flex: 1 1 320px;
  font-size: 0.85rem;
  line-height: 1.6;
  color: var(--tx-soft);
  margin: 0;
}
.cookie-consent-text a { color: var(--gold); }
.cookie-consent-actions {
  display: flex;
  gap: 0.75rem;
  flex-shrink: 0;
}
.cookie-consent-decline,
.cookie-consent-accept {
  padding: 0.65rem 1.4rem;
  border-radius: 2px;
  font-size: 0.8rem;
  letter-spacing: 0.02em;
  cursor: pointer;
  white-space: nowrap;
}
.cookie-consent-decline {
  background: transparent;
  border: 0.5px solid var(--bd-form);
  color: var(--tx-soft);
  transition: border-color .2s, color .2s;
}
.cookie-consent-decline:hover { border-color: var(--gold); color: var(--gold); }
.cookie-consent-accept {
  background: var(--gold);
  border: 0.5px solid var(--gold);
  color: var(--bg-base);
  font-weight: 500;
  transition: background .2s;
}
.cookie-consent-accept:hover { background: var(--gold-l); }
@media (max-width: 640px) {
  .cookie-consent-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
    padding: 0.9rem 1.15rem;
  }
  .cookie-consent-text {
    flex: 0 1 auto;
    font-size: 0.8rem;
    line-height: 1.5;
  }
  .cookie-consent-actions {
    justify-content: stretch;
    gap: 0.5rem;
  }
  .cookie-consent-decline,
  .cookie-consent-accept {
    flex: 1;
    text-align: center;
    padding: 0.55rem 1rem;
    font-size: 0.78rem;
  }
}

/* FOOTER (azonos az index.html lablecevel) */
footer { background: var(--bg-surface); border-top: 0.5px solid var(--bd-sub); padding: 1.25rem 3rem; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem;
}
.footer-copy { font-size: 0.75rem; color: var(--tx-muted);
}
.footer-links { display: flex; gap: 2rem; list-style: none;
}
.footer-links a { font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--tx-muted); text-decoration: none; transition: color 0.2s;
}
.footer-links a:hover { color: var(--gold); }
@media(max-width:768px){footer{flex-direction:column;align-items:flex-start;padding:2rem 1.5rem}}
