/* Общие стили лендингов IDIUM (idium-cloud.ru, idium-network.ru, idium-buh.ru). Шрифты — /fonts/fonts.css. */
:root{--bg:#05070D;--bg2:#0B1020;--el:#3B82F6;--neon:#60A5FA;--glow:#9BE1FF;--w:#F5F9FF;--mute:rgba(245,249,255,.64);
  --line:rgba(96,165,250,.22);--ok:#22C55E;--acc:var(--neon);--r:22px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--w);font-family:Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5}
a{color:var(--acc)}
img,video{display:block;max-width:100%}

/* ---------- интро ---------- */
.intro{position:fixed;inset:0;z-index:50;background:var(--bg);display:grid;place-items:center;transition:opacity .7s ease,visibility .7s}
.intro video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.intro .skip{position:absolute;right:20px;bottom:20px;z-index:2;background:rgba(11,16,32,.6);border:1px solid var(--line);color:var(--mute);border-radius:999px;padding:8px 14px;font:inherit;font-size:13px;cursor:pointer;box-shadow:none}
.intro.out{opacity:0;visibility:hidden}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:-2}
.hero-bg video,.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.85}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(70% 60% at 25% 45%,rgba(59,130,246,.10),transparent 70%),
  linear-gradient(90deg,rgba(5,7,13,.82) 0%,rgba(5,7,13,.45) 55%,rgba(5,7,13,.2) 100%),
  linear-gradient(0deg,var(--bg) 0%,transparent 35%)}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:center;padding-top:104px;padding-bottom:72px}

/* верхнее меню экосистемы */
.nav{position:fixed;top:0;left:0;right:0;z-index:30;backdrop-filter:blur(14px);background:rgba(5,7,13,.55);border-bottom:1px solid rgba(96,165,250,.1)}
.nav .wrap{display:flex;align-items:center;gap:18px;height:62px}
.nav .logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--w);font-family:Unbounded,sans-serif;font-weight:600;letter-spacing:.18em;font-size:14px}
.nav .logo svg{width:28px;height:28px}
.nav .links{display:flex;gap:4px;margin-left:auto}
.nav .links a{color:var(--mute);text-decoration:none;font-size:14px;padding:8px 12px;border-radius:10px;transition:color .2s,background .2s}
.nav .links a:hover{color:var(--w);background:rgba(96,165,250,.08)}
.nav .links a[aria-current]{color:var(--w);background:rgba(96,165,250,.14)}
.nav .go{text-decoration:none;font-size:14px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--el),var(--neon));padding:9px 14px;border-radius:10px}

/* анимированный знак IDIUM: шестигранник медленно вращается в 3D, линии прорисовываются, узлы пульсируют */
.emblem{width:132px;height:132px;perspective:600px;margin-bottom:22px}
.emblem .spin{width:100%;height:100%;transform-style:preserve-3d;animation:spinY 14s linear infinite}
.emblem svg{width:100%;height:100%;overflow:visible}
.emblem .orbit{transform-origin:60px 60px;animation:orbit 22s linear infinite}
.emblem .edge{stroke-dasharray:240;stroke-dashoffset:240;animation:draw 1.8s cubic-bezier(.6,.1,.2,1) .2s forwards}
.emblem .spoke{stroke-dasharray:90;stroke-dashoffset:90;animation:draw 1.4s ease .9s forwards}
.emblem .node{transform-box:fill-box;transform-origin:center;animation:node 3.2s ease-in-out infinite}
.emblem .core{transform-box:fill-box;transform-origin:center;animation:core 2.6s ease-in-out infinite}
.emblem .p{transform-origin:60px 60px}
.emblem .p1{animation:orbit 9s linear infinite}.emblem .p2{animation:orbit 13s linear infinite reverse}.emblem .p3{animation:orbit 17s linear infinite}
@keyframes spinY{0%{transform:rotateY(0) rotateX(8deg)}50%{transform:rotateY(180deg) rotateX(-8deg)}100%{transform:rotateY(360deg) rotateX(8deg)}}
@keyframes orbit{to{transform:rotate(360deg)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes node{0%,100%{opacity:.55;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
@keyframes core{0%,100%{opacity:.8;transform:scale(.9)}50%{opacity:1;transform:scale(1.2)}}
.motto{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--neon);margin-bottom:14px;max-width:560px;line-height:1.6}

/* три опоры платформы — одинаково на всех сайтах */
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
.pillar{position:relative;border:1px solid var(--line);border-radius:20px;padding:26px;background:linear-gradient(180deg,rgba(59,130,246,.08),rgba(11,16,32,.4));overflow:hidden}
.pillar::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--neon),transparent);opacity:.6}
.pillar svg{width:40px;height:40px;color:var(--neon);margin-bottom:16px}
.pillar b{display:block;font-family:Unbounded,sans-serif;font-weight:600;font-size:16px;margin-bottom:8px}
.pillar span{color:var(--mute);font-size:14px}
.eco{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
.eco a{display:block;text-decoration:none;color:var(--w);border:1px solid var(--line);border-radius:18px;padding:22px;background:rgba(11,16,32,.5);transition:border-color .25s,transform .25s}
.eco a:hover{border-color:var(--neon);transform:translateY(-3px)}
.eco a[aria-current]{border-color:rgba(96,165,250,.55);background:rgba(59,130,246,.1)}
.eco b{display:block;font-family:Unbounded,sans-serif;font-size:15px;margin-bottom:6px}
.eco span{color:var(--mute);font-size:14px}
.eco i{display:inline-block;margin-top:12px;color:var(--neon);font-style:normal;font-size:13px}
.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}
.brand svg{width:40px;height:40px;filter:drop-shadow(0 0 12px rgba(96,165,250,.55))}
.brand b{font-family:Unbounded,sans-serif;font-weight:600;letter-spacing:.2em;font-size:16px}
.brand small{display:block;font-size:11px;letter-spacing:.08em;color:var(--mute);font-weight:500}
.tag{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:rgba(59,130,246,.08);border-radius:999px;padding:6px 12px;font-size:12px;color:var(--mute);margin-bottom:18px}
.tag i{width:7px;height:7px;border-radius:50%;background:var(--acc);box-shadow:0 0 10px var(--acc);animation:pulse 1.8s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}
h1{font-family:Unbounded,sans-serif;font-weight:600;font-size:clamp(28px,4.4vw,52px);line-height:1.1;letter-spacing:-.01em}
h1 span{background:linear-gradient(100deg,var(--acc),var(--glow));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:var(--mute);font-size:clamp(15px,1.5vw,18px);max-width:560px;margin-top:18px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0}
.chip{border:1px solid var(--line);background:rgba(11,16,32,.5);border-radius:999px;padding:7px 13px;font-size:13px;backdrop-filter:blur(8px)}

/* ---------- форма ---------- */
.card{background:rgba(11,16,32,.62);border:1px solid var(--line);border-radius:var(--r);padding:26px;backdrop-filter:blur(16px);box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 60px rgba(59,130,246,.12)}
.card h2{font-family:Unbounded,sans-serif;font-size:18px;font-weight:600;margin-bottom:6px}
.card>p{color:var(--mute);font-size:14px;margin-bottom:18px}
form{display:flex;flex-direction:column;gap:12px}
input[type=email]{width:100%;background:rgba(5,7,13,.75);border:1px solid rgba(96,165,250,.3);border-radius:12px;padding:14px 16px;color:var(--w);font:inherit;font-size:15px;outline:none;transition:border-color .2s,box-shadow .2s}
input[type=email]:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(96,165,250,.2)}
label.cb{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
label.cb input{margin-top:3px;flex:none;width:16px;height:16px;accent-color:var(--el)}
label.cb span,.note{font-size:12px;color:var(--mute);line-height:1.45}
button{background:linear-gradient(135deg,var(--el),var(--acc));color:#fff;border:0;border-radius:12px;padding:14px 18px;font:inherit;font-weight:600;font-size:15px;cursor:pointer;box-shadow:0 10px 30px rgba(59,130,246,.35);transition:transform .15s,box-shadow .2s}
button:hover{transform:translateY(-1px);box-shadow:0 14px 40px rgba(59,130,246,.45)}
button:disabled{opacity:.6;cursor:default;transform:none}
.count{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mute)}
.count i{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 10px var(--ok)}
.err{color:#F87171;font-size:13px;min-height:1em}
.done{display:none;padding:18px 0 4px;text-align:center}
.done b{display:block;font-family:Unbounded,sans-serif;font-size:17px;color:var(--ok);margin-bottom:6px}
.done span{color:var(--mute);font-size:14px}

/* ---------- секции ---------- */
section{position:relative;padding:96px 0}
.kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--acc);margin-bottom:10px}
h2.t{font-family:Unbounded,sans-serif;font-weight:600;font-size:clamp(22px,3vw,36px);line-height:1.15;max-width:760px}
.sub{color:var(--mute);max-width:640px;margin-top:12px}

/* «живой экран»: видео в рамке с наклоном за курсором и шагами, привязанными ко времени ролика */
.demo{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:40px;align-items:center;margin-top:44px}
.screen{position:relative;border-radius:var(--r);padding:10px;background:linear-gradient(160deg,rgba(96,165,250,.35),rgba(11,16,32,.2) 40%,rgba(96,165,250,.2));
  box-shadow:0 40px 100px rgba(0,0,0,.55),0 0 80px rgba(59,130,246,.18);transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease-out;will-change:transform}
.screen video,.screen img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:calc(var(--r) - 8px);background:#000}
.screen .bar{position:absolute;left:24px;right:24px;bottom:22px;height:3px;border-radius:3px;background:rgba(255,255,255,.15);overflow:hidden}
.screen .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--el),var(--acc))}
.screen .glare{position:absolute;inset:10px;border-radius:calc(var(--r) - 8px);pointer-events:none;background:radial-gradient(400px circle at var(--gx,50%) var(--gy,0%),rgba(255,255,255,.12),transparent 60%)}
.steps{display:flex;flex-direction:column;gap:12px;list-style:none;counter-reset:s}
.steps li{counter-increment:s;position:relative;border:1px solid var(--line);border-radius:16px;padding:16px 18px 16px 62px;background:rgba(11,16,32,.45);cursor:pointer;transition:border-color .3s,background .3s,transform .3s}
.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:18px;top:16px;font-family:Unbounded,sans-serif;font-size:14px;color:var(--mute)}
.steps li b{display:block;font-size:15px;margin-bottom:2px}
.steps li span{color:var(--mute);font-size:14px}
.steps li.on{border-color:var(--acc);background:rgba(59,130,246,.12);transform:translateX(4px)}
.steps li.on::before{color:var(--acc)}

/* карточки преимуществ с подсветкой под курсором */
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:44px}
.f{position:relative;border:1px solid var(--line);border-radius:18px;padding:22px;background:rgba(11,16,32,.5);overflow:hidden}
.f::before{content:"";position:absolute;inset:0;background:radial-gradient(260px circle at var(--mx,-100px) var(--my,-100px),rgba(96,165,250,.16),transparent 70%);transition:opacity .3s}
.f svg{width:34px;height:34px;color:var(--acc);margin-bottom:14px}
.f b{display:block;font-size:15px;margin-bottom:6px;position:relative}
.f span{color:var(--mute);font-size:14px;position:relative}
.cta{text-align:center}
.cta .btn{display:inline-block;margin-top:24px;text-decoration:none;background:linear-gradient(135deg,var(--el),var(--acc));color:#fff;border-radius:12px;padding:14px 22px;font-weight:600}

/* появление при прокрутке */
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:none}

footer{padding:36px 0 48px;border-top:1px solid rgba(96,165,250,.12);color:rgba(245,249,255,.5);font-size:12px;line-height:1.7}
footer a{color:rgba(245,249,255,.72)}
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:40;max-width:760px;margin:0 auto;background:rgba(11,16,32,.94);border:1px solid var(--line);border-radius:14px;padding:12px 16px;font-size:13px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;backdrop-filter:blur(10px)}
.cookie span{flex:1 1 260px}
.cookie button{padding:8px 14px;font-size:13px;box-shadow:none}
.cookie button.ghost{background:transparent;border:1px solid var(--line)}

@media (max-width:900px){
  .hero .wrap,.demo{grid-template-columns:1fr}
  .hero::after{background:linear-gradient(0deg,var(--bg) 8%,rgba(5,7,13,.78) 55%,rgba(5,7,13,.55))}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pillars,.eco{grid-template-columns:1fr}
  .nav .links{display:none}.nav .go{margin-left:auto}
  .emblem{width:104px;height:104px}
  section{padding:64px 0}
  .screen{transform:none}
}
@media (max-width:520px){.grid{grid-template-columns:1fr}.card{padding:20px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}.emblem .edge,.emblem .spoke{stroke-dashoffset:0}}
