:root{
    --bg:#06040e;--bg2:#04030a;--surface:rgba(10,8,20,.7);
    --violet:#a78bfa;--violet-lt:#c4b5fd;--violet-dk:#7c3aed;
    --magenta:#e879f9;--cyan:#22d3ee;--pink:#f472b6;
    --text:#d8d0f0;--muted:#6a5a90;--dim:#3a2a58;
    --border:rgba(167,139,250,.1);--border-s:rgba(255,255,255,.05);
    --fd:'Exo 2',sans-serif;--fb:'Inter',sans-serif;
    --xs:.5rem;--sm:1rem;--md:1.5rem;--lg:3rem;--xl:5rem;--2xl:8rem;
    --r:8px;--e:cubic-bezier(.4,0,.2,1)
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{font-family:var(--fb);color:var(--text);background:var(--bg);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}

.violet{color:var(--violet);text-shadow:0 0 25px rgba(167,139,250,.3)}.violet-lt{color:var(--violet-lt)}.violet-k{color:var(--violet)!important}.vk{color:rgba(255,255,255,.4)!important}.white{color:#fff}.light{color:var(--text)}.light-muted{color:var(--muted)}.fw7{font-weight:700}.center{text-align:center}.nb{border:none!important}
.container{max-width:1100px;margin:0 auto;padding:0 var(--md)}
.bg-void{background:linear-gradient(135deg,#0e0520,#08041a,#12081e)}.bg-deep{background:var(--bg2)}

#orb-bg{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}

.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 34px;font-family:var(--fd);font-size:.9rem;font-weight:700;letter-spacing:1.5px;text-decoration:none;border-radius:50px;cursor:pointer;transition:all .3s var(--e);border:1.5px solid transparent;text-transform:uppercase}
.btn-violet{background:transparent;color:var(--violet);border-color:var(--violet);box-shadow:0 0 20px rgba(167,139,250,.1),inset 0 0 20px rgba(167,139,250,.03)}
.btn-violet:hover{background:rgba(167,139,250,.08);transform:translateY(-2px);box-shadow:0 0 40px rgba(167,139,250,.25),inset 0 0 25px rgba(167,139,250,.06)}
.btn-ghost{border-color:rgba(255,255,255,.08);color:var(--muted)}.btn-ghost:hover{border-color:var(--violet);color:var(--violet)}
.btn-full{width:100%}

.navbar{position:fixed;top:0;left:0;right:0;z-index:100;padding:var(--sm) 0;transition:all .35s var(--e)}
.navbar.scrolled{background:rgba(6,4,14,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:8px 0}
.nav-flex{display:flex;justify-content:space-between;align-items:center}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.logo-ico{font-size:1.3rem}.logo-ico.small{font-size:1rem}
.logo-text{display:flex;flex-direction:column;line-height:1.1}
.logo-name{font-family:var(--fd);font-size:.8rem;font-weight:700;letter-spacing:1px}
.logo-tag{font-size:.5rem;color:var(--violet);letter-spacing:2px;font-weight:600}
.nav-links{display:flex;align-items:center;gap:var(--lg)}
.nav-links a{font-size:.8rem;font-weight:600;color:var(--muted);text-decoration:none;letter-spacing:.5px;transition:color .25s var(--e)}
.nav-links a:hover{color:var(--violet)}.dim{opacity:.4}.dim:hover{opacity:1}

.menu-btn{display:none;background:none;border:none;cursor:pointer;width:32px;height:24px;position:relative;z-index:101}
.menu-btn span{display:block;width:100%;height:2px;background:var(--violet);position:absolute;left:0;transition:all .3s var(--e)}
.menu-btn span:first-child{top:4px}.menu-btn span:last-child{bottom:4px}
.menu-btn.active span:first-child{top:50%;transform:translateY(-50%) rotate(45deg)}
.menu-btn.active span:last-child{bottom:50%;transform:translateY(50%) rotate(-45deg)}
.mobile-overlay{position:fixed;inset:0;background:rgba(6,4,14,.98);z-index:99;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .35s var(--e)}
.mobile-overlay.active{opacity:1;visibility:visible}
.mobile-nav{display:flex;flex-direction:column;gap:var(--md);text-align:center}
.mobile-nav a{font-family:var(--fd);font-size:1.3rem;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:1px}

.hero{padding:180px 0 100px;min-height:100vh;display:flex;align-items:center;text-align:center;position:relative;z-index:1;
    background:radial-gradient(ellipse at 50% 60%,rgba(167,139,250,.04) 0%,transparent 55%)}
.hero-inner{position:relative}
.hero-pub{font-family:var(--fd);font-size:.55rem;letter-spacing:4px;color:var(--dim);margin-bottom:var(--md);font-weight:600}
.hero-title{font-family:var(--fd);font-size:clamp(3.5rem,9vw,7.5rem);font-weight:900;line-height:.85;margin-bottom:var(--sm);letter-spacing:3px}
.sub-title{font-size:.4em;font-weight:300;letter-spacing:8px;color:var(--muted);display:block;margin-top:8px}
.hero-body{font-size:1.05rem;color:var(--muted);max-width:440px;margin:var(--md) auto var(--lg)}
.hero-btns{display:flex;gap:var(--sm);justify-content:center;flex-wrap:wrap}

.hero-orb{margin-top:var(--xl);position:relative;display:inline-block}
.orb-main{position:relative;width:100px;height:100px;display:inline-block}
.orb-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:22px;height:22px;background:radial-gradient(circle,var(--violet-lt),var(--violet),var(--violet-dk));border-radius:50%;box-shadow:0 0 30px rgba(167,139,250,.4),0 0 60px rgba(167,139,250,.15);animation:core-pulse 2.5s ease-in-out infinite}
.orb-ring{position:absolute;top:50%;left:50%;border:1px solid rgba(167,139,250,.2);border-radius:50%}
.r1o{width:50px;height:50px;margin:-25px 0 0 -25px;animation:ring-spin 8s linear infinite}
.r2o{width:70px;height:70px;margin:-35px 0 0 -35px;animation:ring-spin 12s linear infinite reverse;border-color:rgba(232,121,249,.12)}
.r3o{width:90px;height:90px;margin:-45px 0 0 -45px;animation:ring-spin 18s linear infinite;border-color:rgba(34,211,238,.08)}
.orb-ring::before{content:'';position:absolute;width:5px;height:5px;border-radius:50%;top:-2.5px;left:50%;margin-left:-2.5px}
.r1o::before{background:var(--violet);box-shadow:0 0 8px var(--violet)}
.r2o::before{background:var(--magenta);box-shadow:0 0 8px var(--magenta)}
.r3o::before{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
@keyframes core-pulse{0%,100%{box-shadow:0 0 30px rgba(167,139,250,.4),0 0 60px rgba(167,139,250,.15)}50%{box-shadow:0 0 45px rgba(167,139,250,.5),0 0 80px rgba(167,139,250,.2)}}
@keyframes ring-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}

.section{padding:var(--2xl) 0;position:relative;z-index:1}
.kicker{font-family:var(--fd);font-size:.75rem;font-weight:700;color:var(--violet);letter-spacing:3px;text-transform:uppercase;margin-bottom:8px}
.heading{font-family:var(--fd);font-size:clamp(2rem,4.5vw,3.2rem);font-weight:800;line-height:1.1;margin-bottom:var(--md);letter-spacing:1px}
.section-intro{margin-bottom:var(--xl);max-width:600px}.section-intro.center{margin-left:auto;margin-right:auto}
.lead{font-size:1.05rem;color:var(--text);font-weight:400;margin-bottom:var(--md)}
p{color:var(--muted);margin-bottom:var(--sm)}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--xl);align-items:start}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--md)}

.info-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.panel-head{padding:14px 20px;background:rgba(167,139,250,.03);border-bottom:1px solid var(--border)}
.badge{font-family:var(--fd);font-size:.8rem;letter-spacing:2px;color:var(--violet);font-weight:700}
.panel-body{padding:8px 20px}
.row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border-s)}
.lbl{font-size:.7rem;color:var(--dim);text-transform:uppercase;letter-spacing:2px;font-weight:600}
.val{font-family:var(--fd);font-size:.9rem;font-weight:700;letter-spacing:.5px}

.feat{background:rgba(255,255,255,.02);border:1px solid var(--border-s);border-radius:var(--r);padding:var(--lg);text-align:center;transition:all .35s var(--e)}
.feat:hover{border-color:var(--violet);transform:translateY(-5px);box-shadow:0 0 30px rgba(167,139,250,.08)}
.fi{font-size:2.5rem;margin-bottom:var(--sm)}
.feat h3{font-family:var(--fd);font-size:1rem;font-weight:700;color:var(--violet-lt);margin-bottom:10px;letter-spacing:1px}
.feat p{font-size:.9rem;color:rgba(255,255,255,.35)}

.registry{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-top:var(--md)}
.ri{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 20px;border-bottom:1px solid var(--border-s)}
.rl{font-size:.65rem;color:var(--dim);text-transform:uppercase;letter-spacing:2px;font-weight:600;width:120px;flex-shrink:0}
.rv{font-family:var(--fd);font-size:.85rem;text-align:right;font-weight:700;letter-spacing:.5px}
.addr{font-style:normal;text-align:right;line-height:1.6;font-family:var(--fb);font-weight:500;letter-spacing:0}
.map-box{height:100%;min-height:380px;border-radius:var(--r);overflow:hidden;border:1px solid var(--border)}

.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--xl);align-items:start}
.cd-list{margin-top:var(--lg)}
.cd{display:flex;gap:14px;margin-bottom:var(--md);color:var(--muted)}
.cdi{font-size:1.3rem}.cd strong{color:var(--text)}
.cd a{color:var(--violet-lt);text-decoration:none}.cd a:hover{text-decoration:underline}

.cform{background:var(--surface);border:1px solid var(--border-s);border-radius:var(--r);padding:var(--lg)}
.fpair{display:grid;grid-template-columns:1fr 1fr;gap:var(--md)}
.ff{margin-bottom:var(--md)}
.ff label{display:block;font-family:var(--fd);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:3px;color:var(--dim);margin-bottom:8px}
.ff input,.ff select,.ff textarea{width:100%;padding:12px 14px;background:rgba(255,255,255,.03);border:1px solid var(--border-s);border-radius:var(--r);color:var(--text);font-family:var(--fb);font-size:.95rem;transition:border-color .25s var(--e)}
.ff input:focus,.ff select:focus,.ff textarea:focus{outline:none;border-color:var(--violet)}
.ff input::placeholder,.ff textarea::placeholder{color:rgba(255,255,255,.1)}

.footer{padding:var(--lg) 0;background:var(--bg2);border-top:1px solid var(--border);position:relative;z-index:1}
.ft-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--md);margin-bottom:var(--md);padding-bottom:var(--md);border-bottom:1px solid var(--border-s)}
.ft-brand{display:flex;align-items:center;gap:10px}
.ft-name{font-family:var(--fd);font-weight:700;font-size:.7rem;letter-spacing:1px}
.ft-links{display:flex;gap:var(--sm);align-items:center}
.ft-links a{color:var(--muted);text-decoration:none;font-size:.8rem}.ft-links a:hover{color:var(--violet)}
.sep{color:var(--dim)}
.ft-bot p{font-size:.65rem;color:var(--dim);text-align:center;margin-bottom:4px}

.anim-up{opacity:0;transform:translateY(30px);animation:fu .7s forwards var(--e)}
.anim-scroll{opacity:0;transform:translateY(25px);transition:all .7s var(--e)}
.anim-scroll.visible{opacity:1;transform:translateY(0)}
.d1{animation-delay:.15s;transition-delay:.15s}.d2{animation-delay:.3s;transition-delay:.3s}.d3{animation-delay:.45s;transition-delay:.45s}
@keyframes fu{to{opacity:1;transform:translateY(0)}}

@media(max-width:960px){.grid-2,.contact-grid{grid-template-columns:1fr}.fpair{grid-template-columns:1fr;gap:0}.ft-top{flex-direction:column;text-align:center}}
@media(max-width:768px){.nav-links{display:none}.menu-btn{display:block}.hero-title{font-size:3.5rem}.sub-title{font-size:.5em}.ri{flex-direction:column;gap:6px}.rv,.addr{text-align:left}}
