/* Company landing (/, /sk/, /ru/). Loaded after style.css. Vanilla CSS, no external assets. Motion = transform/opacity only. */
body.co{--bg:#0a0e14;--fg:#e6edf3;--muted:#9aa8b6;--line:rgba(255,255,255,.11);--accent:#4be0b0;--accent-fg:#04130d;--card:rgba(255,255,255,.045);--glow:rgba(75,224,176,.16);--hbg:rgba(10,14,20,.95);--gridc:rgba(255,255,255,.065);--b1:rgba(56,225,176,.30);--b2:rgba(110,99,255,.32);--b3:rgba(0,160,255,.20);--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;background:var(--bg);color:var(--fg);overflow-x:hidden}
@media (prefers-color-scheme:light){body.co{--bg:#f6f8fb;--fg:#0d1622;--muted:#4a5866;--line:rgba(13,22,34,.14);--accent:#0a7a5a;--accent-fg:#fff;--card:rgba(255,255,255,.78);--glow:rgba(10,122,90,.12);--hbg:rgba(246,248,251,.95);--gridc:rgba(13,22,34,.06);--b1:rgba(16,185,129,.20);--b2:rgba(99,102,241,.17);--b3:rgba(14,165,233,.15)}}
html{scroll-padding-top:4.5rem;scroll-behavior:smooth}
.co a{color:var(--accent);text-underline-offset:3px}
.co a:focus-visible,.co .btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:1rem;top:-4rem;background:var(--accent);color:var(--accent-fg);padding:.6rem 1rem;border-radius:8px;z-index:30;text-decoration:none;font-weight:600}
.skip:focus{top:.6rem}
.mono{font-family:var(--mono)}

/* animated background: gradient mesh + drifting grid (fixed layer, compositor-only animation) */
.bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.grid{position:absolute;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 0,transparent 75%);mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 0,transparent 75%)}
.grid::before{content:"";position:absolute;left:0;right:0;top:-48px;bottom:0;background-image:linear-gradient(var(--gridc) 1px,transparent 1px),linear-gradient(90deg,var(--gridc) 1px,transparent 1px);background-size:48px 48px;will-change:transform;animation:drift 12s linear infinite}
.blob{position:absolute;width:44rem;height:44rem;border-radius:50%;background:radial-gradient(circle,var(--b1) 0,transparent 65%);will-change:transform}
.b1{left:-14rem;top:-12rem;animation:f1 24s ease-in-out infinite alternate}
.b2{right:-16rem;top:6rem;background:radial-gradient(circle,var(--b2) 0,transparent 65%);animation:f2 28s ease-in-out infinite alternate}
.b3{left:20%;bottom:-24rem;background:radial-gradient(circle,var(--b3) 0,transparent 65%);animation:f1 32s ease-in-out infinite alternate-reverse}
@keyframes drift{to{transform:translate3d(0,48px,0)}}
@keyframes f1{to{transform:translate3d(8rem,5rem,0) scale(1.15)}}
@keyframes f2{to{transform:translate3d(-9rem,7rem,0) scale(.9)}}
@keyframes blink{50%{opacity:0}}

/* header */
body.co header.top{position:sticky;top:0;z-index:20;max-width:none;margin:0;padding:.55rem max(1rem,calc((100% - 66rem)/2));background:var(--hbg);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.5rem}
.brand{font-family:var(--mono);font-weight:700;font-size:1.2rem;letter-spacing:-.02em;color:var(--fg);text-decoration:none}
.sections,.lang{display:flex;gap:.15rem 1.1rem;font-size:.95rem}
.sections{margin-left:auto}
.lang{font-family:var(--mono);font-size:.85rem}
.top a,.top span[aria-current]{padding:.5rem .15rem;min-height:44px;display:inline-flex;align-items:center}
.top a{text-decoration:none;color:var(--muted)}
.top a:hover{color:var(--fg)}
.top [aria-current]{color:var(--fg);font-weight:700}
@media (max-width:40rem){.brand{order:1}.lang{order:2;margin-left:auto}.sections{order:3;flex:1 0 100%;margin:0;gap:.15rem 1.25rem}.top a,.top span[aria-current]{min-height:40px}}

/* layout */
body.co main{max-width:66rem;padding:0 1rem}
.hero{display:grid;gap:2.5rem;padding:3.5rem 0 2.5rem;align-items:center}
@media (min-width:60rem){.hero{grid-template-columns:1.05fr .95fr;gap:3.5rem;padding:5rem 0 3.5rem}}
.eyebrow{font-family:var(--mono);color:var(--accent);font-size:.9rem;margin:0}
.co h1{font-size:clamp(2.5rem,8.5vw,4.4rem);line-height:1.04;letter-spacing:-.03em;margin:.7rem 0 1rem}
.co h1 .acc{font-family:var(--mono);font-weight:600;color:var(--accent);letter-spacing:-.04em}
.co .lead{color:var(--muted);font-size:1.15rem;max-width:34rem;margin:0}
.co .actions{margin:1.75rem 0 0}
.co .btn{transition:transform .2s,box-shadow .2s}
.co .btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px -8px var(--accent)}
.co .btn.ghost{color:var(--accent);border-color:var(--line)}
.co h2{font-size:1.5rem;letter-spacing:-.01em;margin:3.5rem 0 1rem}
.co h2::before{content:"// ";font-family:var(--mono);color:var(--accent)}
.co h3{margin:0 0 .4rem;font-size:1.15rem}

/* terminal (always dark) */
.term{background:#0b1119;color:#d7e2ec;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 24px 60px -24px rgba(0,0,0,.55);overflow:hidden;font-family:var(--mono);font-size:.9rem;line-height:1.7}
.term-bar{display:flex;align-items:center;gap:.4rem;padding:.6rem .9rem;border-bottom:1px solid rgba(255,255,255,.1);color:#8696a8;font-size:.78rem}
.term-bar i{width:.7rem;height:.7rem;border-radius:50%;background:#2b3644}
.term-bar i:nth-child(1){background:#ff6b6b}.term-bar i:nth-child(2){background:#f5c451}.term-bar i:nth-child(3){background:#4be0b0}
.term-bar b{margin-left:.5rem;font-weight:400}
.term-body{padding:1rem 1.1rem 1.15rem;min-height:12.5rem}
.term-body p{margin:0;word-break:break-word}
.term .t{white-space:pre-wrap}
.term .ps{color:#4be0b0;margin-right:.6ch;user-select:none}
.term .out{color:#9fb0c1;margin-bottom:.5rem}
.term .out b{color:#e6edf3;font-weight:600}
.term .caret{display:inline-block;width:.6ch;height:1.05em;vertical-align:-.15em;background:#4be0b0;margin-left:.2ch;animation:blink 1.1s steps(1) infinite}
.js .term .c{opacity:0}
.js .term .c.on{opacity:1}
.js .term .caret{opacity:0}
.js .term.done .caret{opacity:1}

/* cards */
.cards{display:grid;gap:1rem}
@media (min-width:48rem){.cards.two{grid-template-columns:1.15fr .85fr}}
.co .card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.4rem 1.5rem;margin:0;transition:transform .25s,border-color .25s}
.co .card.glow{background:radial-gradient(360px circle at var(--mx,80%) var(--my,0%),var(--glow),transparent 60%),var(--card)}
@media (hover:hover){.co .card.glow:hover{transform:translateY(-3px);border-color:var(--accent)}}
.tag{display:inline-block;font-family:var(--mono);font-size:.78rem;color:var(--accent);border:1px solid var(--line);border-radius:999px;padding:.1rem .65rem;margin-bottom:.75rem}
.co dl.facts{margin:0;grid-template-columns:max-content 1fr}
.co dl.facts dt{font-family:var(--mono);font-size:.85rem;padding-top:.1rem}
.co dl.facts dd{overflow-wrap:anywhere}
.mail{font:600 clamp(1.05rem,3.6vw,1.45rem) var(--mono);word-break:break-all}
.co p{margin:.5rem 0}
.co .muted{color:var(--muted)}

/* footer */
body.co footer{max-width:66rem;border-top:1px solid var(--line);margin-top:4rem;padding:1.5rem 1rem 2.5rem;color:var(--muted)}
.co footer a{color:var(--muted)}
.co footer a:hover{color:var(--fg)}

/* reveal on scroll (content is visible without JS; the hidden state exists only when site.js ran) */
.js .rv{opacity:0;transform:translate3d(0,16px,0);transition:opacity .7s ease,transform .7s ease;transition-delay:calc(var(--i,0)*90ms)}
.js .rv.in{opacity:1;transform:none}
.d1{--i:1}.d2{--i:2}.d3{--i:3}.d4{--i:4}.d5{--i:5}

@media (max-width:30rem){.co dl.facts{grid-template-columns:1fr}.hero{padding-top:2.25rem}.term{font-size:.82rem}}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important}
.js .rv{opacity:1;transform:none}
.js .term .c{opacity:1}
.js .term .caret{opacity:1}
}
.co .top .brand{color:var(--fg)}
.co .btn{color:var(--accent-fg)}
.co .btn.ghost{color:var(--accent)}
.co h1{font-size:clamp(2.3rem,7vw,3.9rem)}
.co h1 .acc{white-space:nowrap;font-size:.82em}
.sections{margin-left:1rem}
.lang{margin-left:auto}
@media (max-width:40rem){.sections{margin:0}}
.co .hero.solo{grid-template-columns:1fr}
