/* ============================================================================
   MVM: közös design tokenek + mozgásrendszer.
   VILÁGOS az alapértelmezett; sötét: <html data-theme="dark">.
   Arculat: SZÖGLETES (border-radius:0 mindenhol).
   ========================================================================== */
@font-face{font-family:'Nunito';font-weight:400;font-display:swap;src:url('/fonts/Nunito-Regular.woff2') format('woff2')}
@font-face{font-family:'Nunito';font-weight:600;font-display:swap;src:url('/fonts/Nunito-SemiBold.woff2') format('woff2')}
@font-face{font-family:'Nunito';font-weight:700;font-display:swap;src:url('/fonts/Nunito-Bold.woff2') format('woff2')}
@font-face{font-family:'Nunito';font-weight:800;font-display:swap;src:url('/fonts/Nunito-ExtraBold.woff2') format('woff2')}
@font-face{font-family:'Nunito';font-weight:900;font-display:swap;src:url('/fonts/Nunito-Black.woff2') format('woff2')}

:root{
  color-scheme:light;
  /* MVM márkaszínek */
  --gold:#F0B323; --gold-d:#D97F00; --blue:#003DA5; --blue-l:#2E6BE0;
  --cyan:#00A8DA; --green:#98C000; --orange:#EE8730; --coral:#FF5E6C;
  --purple:#784E90; --slate:#333F48; --brown:#B4794F;
  /* világos felület */
  --bg:#FFFFFF; --bg-2:#F4F7FA; --panel:#FFFFFF; --panel-2:#F4F7FA;
  --line:#E3E9F0; --line-2:#CFD9E4;
  --ink:#141E28; --ink-2:#4C5C6E; --ink-3:#8494A4;
  --gold-ink:#A97706; --cyan-ink:#0B7391; --blue-ink:#1D4FBF;
  --shadow:0 1px 2px rgba(18,40,64,.05), 0 8px 24px rgba(18,40,64,.07);
  --shadow-lg:0 2px 6px rgba(18,40,64,.07), 0 24px 60px rgba(18,40,64,.12);
  --tip-bg:#101C27; --tip-ink:#fff; --tip-line:rgba(255,255,255,.16);
  --ease:cubic-bezier(.2,.7,.2,1);
  --font:'Nunito',ui-sans-serif,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#080E15; --bg-2:#0E1822; --panel:#111D28; --panel-2:#182632;
  --line:#263746; --line-2:#33485A;
  --ink:#EAF1F7; --ink-2:#A9BBCB; --ink-3:#728698;
  --gold-ink:#F0B323; --cyan-ink:#00A8DA; --blue-ink:#6FA8FF;
  --shadow:0 10px 26px rgba(0,0,0,.45); --shadow-lg:0 24px 60px rgba(0,0,0,.55);
  --tip-bg:#0A131B; --tip-line:rgba(255,255,255,.14);
}
*{box-sizing:border-box}
html,body{margin:0}
body{
  background:var(--bg); color:var(--ink); font-family:var(--font);
  font-size:14px; line-height:1.5; font-variant-numeric:tabular-nums;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
/* SZÖGLETES: minden él éles */
*, *::before, *::after{border-radius:0 !important}

a{color:var(--gold-ink); text-decoration:none}
a:hover{text-decoration:underline}

/* ---------- alap építőelemek ---------- */
.mvm-card{background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow);
  position:relative; transition:box-shadow .22s var(--ease), transform .22s var(--ease), border-color .22s}
.mvm-card:hover{box-shadow:var(--shadow-lg); border-color:var(--line-2)}
.mvm-card--gold{border-top:3px solid var(--gold)}
.mvm-lbl{font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; color:var(--ink-3);
  display:flex; align-items:center; gap:8px}
.mvm-lbl [data-ic]{width:16px; height:16px; color:var(--gold); flex:none}
.mvm-num{font-weight:900; letter-spacing:-.025em; line-height:1}
.mvm-u{font-size:.5em; font-weight:700; color:var(--ink-3); margin-left:.3em}

/* ---------- mozgásrendszer ---------- */
.mo-reveal{opacity:0; transform:translateY(16px)}
.mo-in{animation:moIn .6s var(--ease) forwards; animation-delay:var(--d,0s)}
@keyframes moIn{to{opacity:1; transform:none}}
.mo-flash{animation:moFlash .9s var(--ease)}
@keyframes moFlash{0%{background:color-mix(in srgb,var(--gold) 45%,transparent)}100%{background:transparent}}
.mo-live{position:relative; display:inline-block; width:8px; height:8px; background:var(--green); flex:none}
.mo-live::after{content:""; position:absolute; inset:0; background:var(--green); animation:moLive 1.9s var(--ease) infinite}
@keyframes moLive{0%{transform:scale(1);opacity:.8}70%{transform:scale(2.6);opacity:0}100%{opacity:0}}
/* átlós fénycsík hoverre */
.mo-shine{overflow:hidden}
.mo-shine::after{content:""; position:absolute; top:-60%; bottom:-60%; left:-40%; width:34%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.38),transparent);
  transform:translateX(-260%) skewX(-16deg); pointer-events:none; opacity:0; z-index:2}
.mo-shine:hover::after{opacity:1; animation:moShine .8s var(--ease)}
@keyframes moShine{to{transform:translateX(430%) skewX(-16deg)}}
/* MVM arany átló (cégbemutató szignó) */
.mo-diag{position:relative; overflow:hidden}
.mo-diag::before{content:""; position:absolute; top:-20%; bottom:-20%; right:14%; width:180px; pointer-events:none;
  background:linear-gradient(115deg,transparent 49.3%,var(--gold) 49.3%,var(--gold) 50.7%,transparent 50.7%); opacity:.75}
@media (prefers-reduced-motion:reduce){
  .mo-reveal{opacity:1; transform:none}
  .mo-in,.mo-flash,.mo-shine:hover::after{animation:none}
  .mo-live::after{animation:none}
}
/* téma-kapcsoló gomb */
.mvm-theme{border:1px solid var(--line); background:var(--panel-2); color:var(--ink);
  width:34px; height:34px; cursor:pointer; font-size:15px; line-height:1; display:inline-flex;
  align-items:center; justify-content:center; transition:border-color .18s}
.mvm-theme:hover{border-color:var(--gold)}
