@font-face{font-family:Dana;font-style:normal;font-weight:400 600;font-display:swap;src:url('../fonts/woff2/Dana-Regular.woff2') format('woff2'),url('../fonts/woff/Dana-Regular.woff') format('woff')}@font-face{font-family:Dana;font-style:normal;font-weight:700 800;font-display:swap;src:url('../fonts/woff2/Dana-Bold.woff2') format('woff2'),url('../fonts/woff/Dana-Bold.woff') format('woff')}@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url('../fonts/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url('../fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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}:root{--font-fa:'Dana',system-ui,sans-serif;--font-en:'Inter',system-ui,sans-serif;--font:var(--font-fa);--brand:#4286f5;--brand-2:#7c5cff;--brand-3:#22d3ee;--bg:#080b14;--surface:rgba(255,255,255,.04);--surface-2:rgba(255,255,255,.07);--border:rgba(255,255,255,.09);--border-strong:rgba(255,255,255,.17);--text:#eef2f9;--muted:#93a0b8;--shadow:0 24px 60px -20px rgba(0,0,0,.7);--photo-blend:overlay;--photo-bright:1;--r-sm:10px;--r-md:16px;--r-lg:22px;--step:clamp(76px,9vw,124px);--ease:cubic-bezier(.22,.68,.32,1)}html[data-theme=light]{--bg:#f5f7fc;--surface:rgba(255,255,255,.74);--surface-2:rgba(255,255,255,.92);--border:rgba(14,23,45,.10);--border-strong:rgba(14,23,45,.18);--text:#0e1729;--muted:#5a6883;--shadow:0 20px 50px -22px rgba(21,39,80,.3);--photo-blend:multiply;--photo-bright:1.04}html[lang=en]{--font:var(--font-en)}*,::after,::before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.85;overflow-x:hidden;transition:background .5s var(--ease),color .5s var(--ease)}html[lang=en] body{line-height:1.7}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}h1,h2,h3,h4{margin:0;line-height:1.35;font-weight:700;letter-spacing:-.01em}p{margin:0}::selection{background:color-mix(in srgb,var(--brand) 45%,transparent)}:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:6px}.wrap{width:min(1160px,92vw);margin-inline:auto}.section{padding-block:var(--step);position:relative;z-index:1}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-3)}.eyebrow::before{content:"";width:22px;height:1px;background:currentColor;opacity:.7}.h2{font-size:clamp(1.7rem,3.6vw,2.6rem);margin-bottom:14px}.lead{color:var(--muted);max-width:62ch;font-size:1.03rem}.aura{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.aura span{position:absolute;border-radius:50%;filter:blur(90px);opacity:.45;animation:drift 24s var(--ease) infinite alternate}.aura span:first-child{width:46vw;height:46vw;background:rgba(66,134,245,.3);top:-14vw;inset-inline-start:-10vw}.aura span:nth-child(2){width:38vw;height:38vw;background:rgba(124,92,255,.24);top:40%;inset-inline-end:-12vw;animation-delay:-8s}.aura span:nth-child(3){width:34vw;height:34vw;background:rgba(34,211,238,.15);bottom:-12vw;inset-inline-start:26%;animation-delay:-15s}@keyframes drift{to{transform:translate3d(4%,6%,0) scale(1.12)}}.card{position:relative;padding:26px;border-radius:var(--r-lg);overflow:hidden;background:var(--surface);border:1px solid var(--border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform .45s var(--ease),border-color .45s var(--ease),box-shadow .45s var(--ease)}.card::after{content:"";position:absolute;inset:0;opacity:0;pointer-events:none;background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--brand) 15%,transparent),transparent 65%);transition:opacity .4s var(--ease)}.card:hover{transform:translateY(-6px);border-color:var(--border-strong);box-shadow:var(--shadow)}.card:hover::after{opacity:1}.header{position:fixed;inset-inline:0;top:0;z-index:50;padding-block:14px;transition:all .4s var(--ease)}.header.stuck{padding-block:8px;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-bottom:1px solid var(--border)}.nav{display:flex;align-items:center;gap:18px}.logo{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.02em}.logo b{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(140deg,var(--brand),var(--brand-2));box-shadow:0 8px 22px -8px var(--brand);color:#fff;font-family:var(--font-en);font-size:.95rem}.nav-links{display:flex;gap:4px;margin-inline:auto}.nav-links a{position:relative;padding:8px 14px;border-radius:999px;font-size:.93rem;color:var(--muted);transition:color .25s var(--ease),background .25s var(--ease)}.nav-links a::after{content:"";position:absolute;inset-inline:14px;bottom:4px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--brand-3),var(--brand-2));transform:scaleX(0);transform-origin:var(--origin,left);transition:transform .35s var(--ease)}html[dir=rtl] .nav-links a::after{--origin:right}.nav-links a.active,.nav-links a:hover{color:var(--text);background:var(--surface)}.nav-links a.active::after,.nav-links a:hover::after{transform:scaleX(1)}.tools{display:flex;align-items:center;gap:8px}.icon-btn{width:40px;height:40px;display:grid;place-items:center;cursor:pointer;border-radius:12px;border:1px solid var(--border);background:var(--surface);transition:transform .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease)}.icon-btn:hover{transform:translateY(-2px);border-color:var(--border-strong);background:var(--surface-2)}.icon-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.lang{position:relative;display:flex;align-items:center;gap:2px;padding:4px;cursor:pointer;border-radius:999px;border:1px solid var(--border);background:var(--surface)}.lang span{position:relative;z-index:1;padding:5px 13px;border-radius:999px;font-family:var(--font-en);font-size:.8rem;font-weight:600;color:var(--muted);transition:color .35s var(--ease)}.lang span.on{color:#fff}.lang i{position:absolute;z-index:0;top:4px;bottom:4px;inset-inline-start:4px;width:calc(50% - 4px);border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand-2));transition:transform .42s var(--ease)}.lang[data-active=en] i{transform:translateX(var(--slide,100%))}html[dir=rtl] .lang i{--slide:-100%}.burger{display:none}/* ========================================================================== 5. Buttons ========================================================================== */ .btn{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;isolation:isolate;padding:13px 26px;border-radius:999px;border:0;overflow:hidden;font-weight:600;font-size:.96rem;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-2));box-shadow:0 14px 34px -16px var(--brand);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.btn::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:linear-gradient(135deg,var(--brand-2),var(--brand-3));transition:opacity .4s var(--ease)}.btn:hover{transform:translateY(-3px);box-shadow:0 22px 44px -18px var(--brand-2)}.btn:hover::before{opacity:1}.btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--ease)}.btn:hover svg{transform:translateX(var(--shift,3px))}html[dir=rtl] .btn:hover svg{--shift:-3px}.btn--ghost{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);box-shadow:none}.btn--ghost::before{background:var(--surface-2)}.hero{position:relative;z-index:1;min-height:100svh;display:flex;align-items:center;padding-block:132px 72px;overflow-x:clip}#flow{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.9}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.pill{display:inline-flex;align-items:center;gap:9px;padding:7px 15px;margin-bottom:24px;border-radius:999px;border:1px solid var(--border);background:var(--surface);backdrop-filter:blur(10px);font-size:.85rem;color:var(--muted)}.dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 0 rgba(34,197,94,.55);animation:ping 2.4s infinite}@keyframes ping{70%{box-shadow:0 0 0 9px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}.headline{--lx:50%;--ly:50%;--lsize:clamp(200px,30vw,400px);position:relative;font-size:clamp(2.3rem,5.8vw,4.2rem);font-weight:800;letter-spacing:-.03em;margin-bottom:16px}.headline__layer{display:block}.headline__layer--lit{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,var(--brand-3),var(--brand) 42%,var(--brand-2));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-mask-image:radial-gradient(circle closest-side,#000 0%,rgba(0,0,0,.75) 45%,transparent 100%);mask-image:radial-gradient(circle closest-side,#000 0%,rgba(0,0,0,.75) 45%,transparent 100%);-webkit-mask-size:var(--lsize) var(--lsize);mask-size:var(--lsize) var(--lsize);-webkit-mask-position:calc(var(--lx) - var(--lsize)/ 2) calc(var(--ly) - var(--lsize)/ 2);mask-position:calc(var(--lx) - var(--lsize)/ 2) calc(var(--ly) - var(--lsize)/ 2);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.roller{display:flex;align-items:center;gap:12px;height:2.1em;overflow:hidden;font-size:clamp(1.05rem,2.4vw,1.6rem);font-weight:600;color:var(--muted)}.roller__bar{width:26px;height:3px;border-radius:3px;flex:none;background:linear-gradient(90deg,var(--brand-3),var(--brand-2))}.roller__word{display:inline-block;color:var(--text);transition:transform .45s var(--ease),opacity .45s var(--ease)}.roller__word.is-out{transform:translateY(-90%);opacity:0}.roller__word.is-next{transform:translateY(90%);opacity:0;transition:none}.hero .lead{margin-block:22px 32px;font-size:1.06rem}.cta{display:flex;flex-wrap:wrap;gap:12px}.stats{display:flex;flex-wrap:wrap;gap:34px;margin-top:52px;padding-top:32px;border-top:1px solid var(--border)}.stat b{display:block;width:fit-content;direction:ltr;unicode-bidi:isolate;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.02em}.stat span{font-size:.85rem;color:var(--muted)}.portrait{position:relative;width:min(100%,420px);margin-inline:auto;aspect-ratio:1;display:grid;place-items:center;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.portrait__halo{position:absolute;inset:6%;border-radius:38%;background:conic-gradient(from 0deg,var(--brand),var(--brand-2),var(--brand-3),var(--brand));filter:blur(38px);opacity:.55;animation:spin 16s linear infinite}.portrait__ring{position:absolute;inset:2%;border-radius:34%;padding:1.5px;background:conic-gradient(from 0deg,transparent 15%,var(--brand-3),var(--brand-2),transparent 85%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 11s linear infinite}.portrait__orbit{position:absolute;inset:-4%;border-radius:50%;border:1px dashed var(--border-strong);animation:spin 40s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.portrait__frame{position:relative;z-index:1;width:74%;aspect-ratio:1;border-radius:30%;overflow:hidden;border:1px solid var(--border-strong);box-shadow:0 34px 70px -26px rgba(0,0,0,.65);transform:translateZ(40px)}.portrait__frame img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;border-radius:inherit;filter:brightness(var(--photo-bright)) contrast(1.05);transition:transform .7s var(--ease),filter .5s var(--ease)}.portrait:hover .portrait__frame img{transform:scale(1.05)}.portrait__frame::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(150deg,rgba(66,134,245,.42),rgba(124,92,255,.22) 55%,rgba(34,211,238,.28));mix-blend-mode:var(--photo-blend);transition:opacity .5s var(--ease)}.portrait:hover .portrait__frame::after{opacity:.45}.mark{position:absolute;z-index:2;padding:8px 15px;border-radius:999px;white-space:nowrap;font-family:var(--font-en);font-size:.8rem;font-weight:600;background:var(--surface-2);border:1px solid var(--border-strong);backdrop-filter:blur(14px);box-shadow:var(--shadow);transform:translate3d(calc(var(--px,0) * var(--depth,1)),calc(var(--py,0) * var(--depth,1)),60px);will-change:transform}.mark:first-of-type{top:10%;inset-inline-start:2%;--depth:1.6}.mark:nth-of-type(2){top:30%;inset-inline-end:-2%;--depth:1}.mark:nth-of-type(3){bottom:22%;inset-inline-start:-3%;--depth:1.3}.mark:nth-of-type(4){bottom:2%;inset-inline-end:10%;--depth:.8}/* ========================================================================== 7. About & services ========================================================================== */ .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start}.bio p{color:var(--muted)}.bio p+p{margin-top:16px}.services{display:grid;grid-template-columns:1fr 1fr;gap:14px}.service .ico{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;margin-bottom:14px;background:linear-gradient(140deg,color-mix(in srgb,var(--brand) 22%,transparent),color-mix(in srgb,var(--brand-2) 22%,transparent));border:1px solid var(--border-strong);color:var(--brand-3)}.service .ico svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service h3{font-size:1.02rem;margin-bottom:6px}.service p{font-size:.88rem;color:var(--muted);line-height:1.7}.tech{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:46px}.tech-badge{display:inline-flex;align-items:center;gap:9px;padding:10px 17px;border-radius:999px;cursor:default;background:var(--surface);border:1px solid var(--border);font-family:var(--font-en);font-size:.9rem;font-weight:500;transition:transform .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)}.tech-badge i{width:9px;height:9px;border-radius:3px;background:var(--c,var(--brand));transition:transform .3s var(--ease)}.tech-badge:hover{transform:translateY(-4px) scale(1.04);border-color:var(--c,var(--brand));background:color-mix(in srgb,var(--c,var(--brand)) 12%,transparent)}.tech-badge:hover i{transform:rotate(45deg) scale(1.2)}.bars{display:grid;grid-template-columns:1fr 1fr;gap:20px 42px}.bar-top{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:9px}.bar-top span{font-family:var(--font-en)}.bar-top span:first-child{font-weight:500}.bar-top span:last-child{color:var(--muted)}.track{height:7px;border-radius:99px;background:var(--surface-2);border:1px solid var(--border);overflow:hidden}.fill{height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--brand-3),var(--brand) 55%,var(--brand-2));transition:width 1.3s var(--ease)}html[dir=rtl] .fill{background:linear-gradient(270deg,var(--brand-3),var(--brand) 55%,var(--brand-2))}.tl-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}.tl-head{display:flex;align-items:center;gap:11px;font-size:1.15rem;font-weight:700;margin-bottom:26px}.tl-head svg{width:20px;height:20px;stroke:var(--brand-3);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tl{position:relative;padding-inline-start:28px}.tl::before{content:"";position:absolute;inset-block:6px;inset-inline-start:5px;width:2px;border-radius:2px;background:linear-gradient(var(--brand-3),var(--brand-2),transparent)}.tl-item{position:relative;padding-bottom:30px}.tl-item:last-child{padding-bottom:0}.tl-item::before{content:"";position:absolute;top:8px;inset-inline-start:-28px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 18%,transparent);transition:transform .35s var(--ease),background .35s var(--ease)}.tl-item:hover::before{transform:scale(1.28);background:var(--brand)}.tl-item h4{font-size:1.03rem;margin-bottom:5px}.tl-period{display:inline-block;margin-bottom:8px;padding:3px 10px;border-radius:99px;font-size:.78rem;font-weight:600;color:var(--muted);background:var(--surface-2);border:1px solid var(--border)}.tl-item p{font-size:.9rem;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}.links{display:grid;gap:12px}.link-row{display:flex;align-items:center;gap:14px;padding:15px 18px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);transition:transform .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)}.link-row:hover{transform:translateX(var(--nudge,6px));border-color:var(--border-strong);background:var(--surface-2)}html[dir=rtl] .link-row:hover{--nudge:-6px}.link-row .ico{width:40px;height:40px;flex:none;border-radius:12px;display:grid;place-items:center;background:linear-gradient(140deg,color-mix(in srgb,var(--brand) 24%,transparent),color-mix(in srgb,var(--brand-2) 24%,transparent));border:1px solid var(--border-strong);color:var(--brand-3)}.link-row .ico svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.link-row small{display:block;font-size:.76rem;color:var(--muted);line-height:1.5}.link-row b{font-family:var(--font-en);font-size:.95rem;font-weight:600;direction:ltr;unicode-bidi:isolate}.link-row--text b{font-family:var(--font);direction:inherit}.field{margin-bottom:16px}.field label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:7px}.field input,.field textarea{width:100%;padding:13px 16px;border-radius:var(--r-md);outline:0;resize:vertical;background:var(--surface-2);border:1px solid var(--border);transition:border-color .3s var(--ease),box-shadow .3s var(--ease)}.field input:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 16%,transparent)}.form-note{font-size:.82rem;color:var(--muted);margin-top:12px}.form-note:empty{display:none}.form-note.is-error{color:#f87171}.form-note.is-ok{color:#34d399}.footer{border-top:1px solid var(--border);padding-block:30px;position:relative;z-index:1}.footer-in{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;font-size:.87rem;color:var(--muted)}.socials{display:flex;gap:8px}.top{position:fixed;inset-inline-end:24px;bottom:24px;z-index:40;opacity:0;visibility:hidden;transform:translateY(14px);transition:all .4s var(--ease)}.top.show{opacity:1;visibility:visible;transform:none}[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}[data-reveal].in{opacity:1;transform:none}.lang-fade{animation:swap .45s var(--ease)}@keyframes swap{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:NaNs!important;animation-iteration-count:1!important;transition-duration:NaNs!important}html{scroll-behavior:auto}[data-reveal]{opacity:1;transform:none}.headline__layer--lit{display:none}}@media (max-width:1024px){.hero-grid{grid-template-columns:1fr;gap:54px}.portrait{order:-1;max-width:340px}.about-grid,.contact-grid,.tl-grid{grid-template-columns:1fr;gap:36px}}@media (max-width:820px){.nav-links{position:fixed;inset-inline:0;top:0;margin:0;flex-direction:column;gap:6px;padding:88px 22px 26px;background:var(--bg);box-shadow:var(--shadow);border-bottom:1px solid var(--border);transform:translateY(-102%);transition:transform .45s var(--ease)}.nav-links.open{transform:none}.nav-links a{padding:13px 16px;font-size:1rem;border-radius:var(--r-md)}.nav-links a::after{display:none}.nav-links a.active{background:var(--surface-2);color:var(--brand)}.logo,.tools{position:relative;z-index:2}.burger{display:grid}.tools{margin-inline-start:auto}}@media (max-width:640px){.logo span{display:none}.bars,.services{grid-template-columns:1fr}.stats{gap:22px}.stat{min-width:44%}.section{padding-block:clamp(58px,12vw,80px)}.card{padding:22px}.portrait{max-width:min(300px,78vw)}.mark{font-size:.72rem;padding:6px 12px}.mark:first-of-type{top:1%;inset-inline-start:1%}.mark:nth-of-type(2){top:28%;inset-inline-end:1%}.mark:nth-of-type(3){bottom:22%;inset-inline-start:1%}.mark:nth-of-type(4){bottom:1%;inset-inline-end:6%}}