:root{
    --bg:#08090e;--bg2:#050608;--surface:rgba(10,12,20,.7);
    --cyan:#22d3ee;--cyan-lt:#67e8f9;--cyan-dk:#0891b2;
    --indigo:#6366f1;--gold:#d4a039;
    --text:#d0d8f0;--muted:#5a6890;--dim:#3a4060;
    --border:rgba(34,211,238,.1);--border-s:rgba(255,255,255,.05);
    --fd:'Cinzel',serif;--fb:'Inter',sans-serif;
    --xs:.5rem;--sm:1rem;--md:1.5rem;--lg:3rem;--xl:5rem;--2xl:8rem;
    --r:4px;--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}

.cyan{color:var(--cyan);text-shadow:0 0 20px rgba(34,211,238,.3)}.cyan-k{color:var(--cyan-lt)!important}.ak{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-abyss{background:linear-gradient(135deg,#0f0a1e,#0a0818,#100e1e)}.bg-dark{background:var(--bg2)}

#quest-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:.85rem;font-weight:700;letter-spacing:2px;text-decoration:none;border-radius:var(--r);cursor:pointer;transition:all .3s var(--e);border:1.5px solid transparent;text-transform:uppercase}
.btn-cyan{background:transparent;color:var(--cyan);border-color:var(--cyan);box-shadow:0 0 18px rgba(34,211,238,.08),inset 0 0 18px rgba(34,211,238,.03)}
.btn-cyan:hover{background:rgba(34,211,238,.06);transform:translateY(-2px);box-shadow:0 0 35px rgba(34,211,238,.2),inset 0 0 25px rgba(34,211,238,.06)}
.btn-ghost{border-color:rgba(255,255,255,.08);color:var(--muted)}.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)}
.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(8,9,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:2px}
.logo-tag{font-size:.45rem;color:var(--cyan);letter-spacing:2px;text-transform:uppercase;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:1px;transition:color .25s var(--e)}
.nav-links a:hover{color:var(--cyan)}.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(--cyan);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(8,9,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:2px}

.hero{padding:180px 0 120px;min-height:100vh;display:flex;align-items:center;text-align:center;position:relative;z-index:1;
    background:radial-gradient(ellipse at 50% 65%,rgba(34,211,238,.03) 0%,transparent 55%)}
.hero-inner{position:relative}
.hero-pub{font-family:var(--fd);font-size:.55rem;letter-spacing:5px;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(--md);letter-spacing:4px}
.hero-body{font-size:1.1rem;color:var(--muted);max-width:460px;margin:0 auto var(--lg)}
.hero-btns{display:flex;gap:var(--sm);justify-content:center;flex-wrap:wrap}

.hero-sigil{margin-top:var(--xl);position:relative;display:inline-block}
.sigil-container{width:120px;height:120px;position:relative;display:inline-block}
.sigil-svg{animation:sigil-spin 20s linear infinite}
.sigil-outer{animation:sigil-pulse 3s ease-in-out infinite}
.sigil-mid{animation:sigil-pulse 3s ease-in-out infinite;animation-delay:1s}
.sigil-core{animation:core-glow 2s ease-in-out infinite}
@keyframes sigil-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes sigil-pulse{0%,100%{opacity:.6}50%{opacity:1}}
@keyframes core-glow{0%,100%{opacity:.4;r:8}50%{opacity:.8;r:10}}

.section{padding:var(--2xl) 0;position:relative;z-index:1}
.kicker{font-family:var(--fd);font-size:.75rem;font-weight:700;color:var(--cyan);letter-spacing:3px;text-transform:uppercase;margin-bottom:8px}
.heading{font-family:var(--fd);font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.1;margin-bottom:var(--md);letter-spacing:2px}
.section-intro{margin-bottom:var(--xl);max-width:600px}.section-intro.center{margin-left:auto;margin-right:auto}
.lead{font-size:1.1rem;color:var(--text);font-weight:500;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(34,211,238,.03);border-bottom:1px solid var(--border)}
.badge{font-family:var(--fd);font-size:.8rem;letter-spacing:3px;color:var(--cyan);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:1px}

.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(--cyan);transform:translateY(-5px);box-shadow:0 0 30px rgba(34,211,238,.06)}
.fi{font-size:2.5rem;margin-bottom:var(--sm)}
.feat h3{font-family:var(--fd);font-size:1rem;font-weight:700;color:var(--cyan-lt);margin-bottom:10px;letter-spacing:1px}
.feat p{font-size:.9rem;color:rgba(255,255,255,.4)}

.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:1px}
.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(--cyan-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:.55rem;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(--cyan)}
.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:2px}
.ft-links{display:flex;gap:var(--sm);align-items:center}
.ft-links a{color:var(--muted);text-decoration:none;font-size:.8rem;letter-spacing:1px}.ft-links a:hover{color:var(--cyan)}
.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}.ri{flex-direction:column;gap:6px}.rv,.addr{text-align:left}}
