*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;min-height:100%}
:root{
 --night:#0a0e27;
 --deep:#121a3a;
 --mid:#1f2a54;
 --light:#e6e9ff;
 --pale:#a0a6cf;
 --gold:#ffd700;
 --purple:#8a2be2;
 --pink:#ff3366;
 --cyan:#00e5ff;
 --gray:#3a3a3a;
 --header-h:76px;
 --radius:10px;
 --wrap:1180px;
 --nav-gap:24px;
 --font-head:'Chakra Petch','Arial Narrow','Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;
 --font-body:'Inter','PingFang SC','Microsoft YaHei',sans-serif;
 --font-mono:'JetBrains Mono','SFMono-Regular',Consolas,monospace
}
@media(max-width:768px){:root{--header-h:64px}}
body{
 font-family:var(--font-body);
 background-color:var(--night);
 background-image:linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);
 background-size:28px 28px;
 color:var(--light);
 font-size:16px;
 line-height:1.65;
 -webkit-font-smoothing:antialiased;
 min-height:100vh;
 display:flex;
 flex-direction:column
}
body::before{
 content:'';
 position:fixed;
 top:0;left:0;bottom:0;width:6px;
 z-index:180;
 pointer-events:none;
 background:linear-gradient(to bottom,var(--gold) 0,var(--gold) 48px,var(--purple) 48px,var(--purple) 56px,transparent 56px);
 box-shadow:0 0 16px rgba(138,43,226,.25)
}
@media(max-width:768px){body::before{width:4px;background:linear-gradient(to bottom,var(--gold) 0,var(--gold) 40px,var(--purple) 40px,var(--purple) 46px,transparent 46px)}}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;background:none;border:none;cursor:pointer;color:inherit}
ul,ol{list-style:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
::selection{background:var(--purple);color:#fff}

h1,h2,h3,h4,h5,h6{font-family:var(--font-head);font-weight:700;line-height:1.2;color:var(--light);letter-spacing:.02em}
h1{font-size:clamp(32px,5vw,52px)}
h2{font-size:clamp(24px,4vw,38px)}
h3{font-size:clamp(19px,2.6vw,24px)}
h4{font-size:18px}
p{margin-bottom:1em}
code,pre,.mono{font-family:var(--font-mono)}

#main-content{flex:1 0 auto}

.container{
 max-width:var(--wrap);
 margin-inline:auto;
 padding-inline:24px
}
.section{padding-block:64px}
@media(max-width:768px){.section{padding-block:40px}}
.section-head{margin-bottom:40px;position:relative}
.section-title{
 font-size:clamp(26px,4vw,42px);
 margin-bottom:12px;
 position:relative;
 padding-left:20px
}
.section-title::before{
 content:'';
 position:absolute;
 left:0;top:0.2em;bottom:0.2em;
 width:6px;
 background:linear-gradient(to bottom,var(--gold),var(--purple));
 clip-path:polygon(0 0,100% 0,100% 100%,0 100%)
}
.section-title__index{
 font-family:var(--font-mono);
 font-size:.5em;
 color:var(--gold);
 margin-right:10px;
 vertical-align:middle
}
.section-subtitle{
 font-size:16px;
 color:var(--pale);
 max-width:640px;
 margin-top:-6px
}

.btn{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:8px;
 padding:13px 28px;
 border-radius:8px;
 font-family:var(--font-head);
 font-weight:600;
 font-size:14px;
 letter-spacing:.08em;
 transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease;
 text-align:center;
 line-height:1.2
}
.btn--primary{
 background:var(--gold);
 color:var(--night);
 clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));
 padding:15px 30px
}
.btn--primary:hover{
 transform:translateY(-2px);
 box-shadow:0 0 28px rgba(255,215,0,.35)
}
.btn--ghost{
 background:transparent;
 color:var(--light);
 border:1px solid var(--mid);
 border-radius:8px
}
.btn--ghost:hover{
 border-color:var(--purple);
 color:var(--gold);
 box-shadow:0 0 18px rgba(138,43,226,.18);
 transform:translateY(-2px)
}

.grid{
 display:grid;
 gap:24px
}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--2{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.grid--3{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.grid--3,.grid--2{grid-template-columns:1fr}}

.card{
 display:block;
 background:var(--deep);
 border:1px solid var(--mid);
 border-radius:var(--radius);
 padding:28px 24px;
 box-shadow:0 10px 32px rgba(0,0,0,.35);
 transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease
}
.card:hover{
 border-color:var(--purple);
 transform:translateY(-4px);
 box-shadow:0 16px 40px rgba(0,0,0,.5),0 0 20px rgba(138,43,226,.12)
}
.card__title{
 font-family:var(--font-head);
 font-size:20px;
 margin-bottom:10px
}
.card__text{font-size:14px;color:var(--pale);margin-bottom:14px}
.card__meta{
 font-family:var(--font-mono);
 font-size:12px;
 color:var(--cyan);
 letter-spacing:.04em
}

.media{
 position:relative;
 overflow:hidden;
 background:linear-gradient(135deg,var(--deep),var(--night));
 border:1px solid var(--mid);
 border-radius:var(--radius);
 min-height:120px
}
.media::after{
 content:'▦';
 position:absolute;
 top:50%;left:50%;
 transform:translate(-50%,-50%);
 font-size:36px;
 color:var(--mid);
 opacity:.5;
 pointer-events:none
}
.media--16x9{aspect-ratio:16/9}
.media--4x3{aspect-ratio:4/3}
.media--1x1{aspect-ratio:1/1}
.media--card{border-radius:var(--radius) var(--radius) 0 0;border-bottom:none;min-height:0}
.media img{
 position:absolute;
 inset:0;
 width:100%;
 height:100%;
 object-fit:cover;
 z-index:1
}

.breadcrumbs{
 display:flex;
 align-items:center;
 flex-wrap:wrap;
 gap:8px;
 padding:20px 0;
 font-size:13px;
 color:var(--pale)
}
.breadcrumbs__link{color:var(--pale);transition:color .2s}
.breadcrumbs__link:hover{color:var(--gold)}
.breadcrumbs__sep{color:var(--mid);font-family:var(--font-mono)}
.breadcrumbs__item[aria-current="page"]{color:var(--gold)}

.site-skip{
 position:absolute;
 top:-120%;
 left:16px;
 z-index:300;
 background:var(--gold);
 color:var(--night);
 font-weight:700;
 padding:12px 22px;
 border-radius:0 0 10px 10px;
 transition:top .25s ease;
 font-size:14px
}
.site-skip:focus-visible{top:0}

.scroll-bar{
 position:fixed;
 top:0;left:0;
 width:0%;
 height:3px;
 z-index:220;
 background:linear-gradient(90deg,var(--gold),var(--purple),var(--cyan));
 box-shadow:0 0 12px rgba(255,215,0,.4);
 pointer-events:none
}

.site-header{
 position:sticky;
 top:0;
 z-index:200;
 background:rgba(10,14,39,.94);
 backdrop-filter:blur(14px);
 -webkit-backdrop-filter:blur(14px);
 border-bottom:1px solid var(--mid)
}
.site-header::after{
 content:'';
 position:absolute;
 left:0;bottom:-1px;
 width:min(260px,36vw);
 height:3px;
 background:linear-gradient(90deg,var(--gold),rgba(255,215,0,.25),transparent);
 pointer-events:none
}
.site-header__inner{
 display:flex;
 align-items:center;
 justify-content:space-between;
 max-width:1440px;
 margin-inline:auto;
 padding-inline:32px;
 height:var(--header-h);
 gap:24px
}
.site-header__brand{
 display:flex;
 align-items:center;
 gap:14px;
 min-width:0
}
.site-header__logo{
 display:flex;
 align-items:center;
 gap:12px;
 flex-shrink:0
}
.site-header__logo-mark{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:44px;height:44px;
 background:var(--gold);
 color:var(--night);
 font-family:var(--font-head);
 font-weight:700;
 font-size:17px;
 border-radius:4px;
 clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));
 box-shadow:0 0 16px rgba(255,215,0,.16)
}
.site-header__logo-text{
 font-family:var(--font-head);
 font-size:22px;
 font-weight:700;
 letter-spacing:.05em;
 color:var(--light);
 white-space:nowrap
}
.site-header__tagline{
 font-family:var(--font-mono);
 font-size:11px;
 color:var(--pale);
 border-left:1px solid var(--mid);
 padding-left:14px;
 letter-spacing:.18em;
 white-space:nowrap;
 display:none
}
@media(min-width:580px){.site-header__tagline{display:inline}}
.site-header__toggle{
 display:none;
 position:relative;
 width:42px;height:42px;
 border:1px solid var(--mid);
 border-radius:6px;
 background:transparent;
 flex-shrink:0;
 transition:border-color .2s
}
.site-header__toggle:hover{border-color:var(--purple)}
.site-header__toggle-bar{
 position:absolute;
 left:50%;
 width:20px;height:2px;
 background:var(--gold);
 border-radius:2px;
 transform:translateX(-50%);
 transition:transform .25s ease,opacity .25s ease,top .25s ease
}
.site-header__toggle-bar:nth-child(1){top:21px;transform:translateX(-50%) translateY(-6px)}
.site-header__toggle-bar:nth-child(2){top:21px;transform:translateX(-50%)}
.site-header__toggle-bar:nth-child(3){top:21px;transform:translateX(-50%) translateY(6px)}
.site-header__toggle[data-open="true"] .site-header__toggle-bar:nth-child(1){transform:translateX(-50%) rotate(45deg)}
.site-header__toggle[data-open="true"] .site-header__toggle-bar:nth-child(2){opacity:0}
.site-header__toggle[data-open="true"] .site-header__toggle-bar:nth-child(3){transform:translateX(-50%) rotate(-45deg)}
.site-header__nav{
 display:flex;
 align-items:center
}
.site-header__menu{
 display:flex;
 align-items:center;
 margin:0;
 padding:0
}
.site-header__item{list-style:none;margin:0}
.site-header__link{
 display:inline-flex;
 align-items:center;
 position:relative;
 font-family:var(--font-head);
 font-size:14px;
 font-weight:600;
 color:var(--pale);
 letter-spacing:.06em;
 padding:10px 0;
 transition:color .2s ease
}
.site-header__item+.site-header__item{
 margin-left:var(--nav-gap);
 padding-left:var(--nav-gap);
 border-left:1px solid rgba(31,42,84,.65)
}
.site-header__link::after{
 content:'';
 position:absolute;
 bottom:0;left:0;
 width:0;height:2px;
 background:var(--purple);
 transition:width .25s ease,background .25s ease;
 border-radius:2px
}
.site-header__link:hover{color:var(--light)}
.site-header__link:hover::after{width:100%;background:var(--cyan)}
.site-header__link[aria-current="page"]{color:var(--gold)}
.site-header__link[aria-current="page"]::after{width:100%;background:var(--gold)}

@media(max-width:900px){
 .site-header__inner{padding-inline:20px}
 .site-header__toggle{display:block}
 .site-header__nav{
  position:absolute;
  top:var(--header-h);
  left:0;right:0;
  background:rgba(10,14,39,.98);
  border-bottom:2px solid var(--purple);
  box-shadow:0 20px 40px rgba(0,0,0,.5);
  transform:translateY(-12px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .25s ease,transform .25s ease,visibility .25s;
  max-height:calc(100vh - var(--header-h));
  overflow-y:auto
 }
 .site-header__nav[data-open="true"]{
  transform:translateY(0);
  opacity:1;
  visibility:visible;
  pointer-events:auto
 }
 .site-header__menu{
  flex-direction:column;
  align-items:stretch;
  padding:16px 24px 24px
 }
 .site-header__item+.site-header__item{
  margin-left:0;
  padding-left:0;
  border-left:none;
  border-top:1px solid rgba(31,42,84,.5)
 }
 .site-header__link{
  display:block;
  padding:16px 8px;
  font-size:16px;
  color:var(--light)
 }
 .site-header__link[aria-current="page"]{color:var(--gold)}
}

@media(max-width:580px){
 .site-header__inner{padding-inline:16px;gap:12px}
 .site-header__brand{gap:8px}
 .site-header__logo-text{font-size:17px;white-space:normal}
 .site-header__logo-mark{width:38px;height:38px;font-size:14px}
}

.back-top{
 position:fixed;
 right:20px;bottom:28px;
 z-index:170;
 width:52px;height:52px;
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:2px;
 border-radius:8px;
 background:var(--deep);
 border:1px solid var(--mid);
 color:var(--gold);
 box-shadow:0 8px 24px rgba(0,0,0,.45);
 opacity:0;
 visibility:hidden;
 transform:translateY(12px);
 transition:opacity .25s ease,transform .25s ease,visibility .25s,border-color .25s,box-shadow .25s
}
.back-top.is-visible{
 opacity:1;
 visibility:visible;
 transform:translateY(0)
}
.back-top:hover{
 border-color:var(--gold);
 box-shadow:0 0 20px rgba(255,215,0,.25)
}
.back-top__arrow{
 font-size:18px;
 line-height:1
}
.back-top__text{
 font-family:var(--font-head);
 font-size:9px;
 letter-spacing:.14em
}

.site-footer{
 position:relative;
 margin-top:80px;
 background:linear-gradient(180deg,var(--deep) 0%,#151a3d 100%);
 border-top:2px solid var(--mid)
}
.site-footer::before{
 content:'';
 position:absolute;
 top:-2px;left:0;
 width:min(240px,30vw);
 height:2px;
 background:linear-gradient(90deg,var(--gold),transparent);
 pointer-events:none
}
.site-footer__inner{
 max-width:var(--wrap);
 margin-inline:auto;
 padding:64px 24px 0
}
.site-footer__grid{
 display:grid;
 grid-template-columns:1.5fr .8fr .8fr 1.2fr;
 gap:40px;
 padding-bottom:48px;
 border-bottom:1px solid rgba(31,42,84,.5)
}
.site-footer__logo{
 font-family:var(--font-head);
 font-size:22px;
 font-weight:700;
 color:var(--light);
 display:flex;
 align-items:center;
 margin-bottom:16px
}
.site-footer__logo::before{
 content:'9B';
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:36px;height:36px;
 margin-right:12px;
 background:var(--gold);
 color:var(--night);
 font-family:var(--font-head);
 font-weight:700;
 font-size:14px;
 border-radius:4px;
 clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));
 box-shadow:0 0 14px rgba(255,215,0,.15)
}
.site-footer__desc{
 font-size:14px;
 color:var(--pale);
 line-height:1.7;
 margin-bottom:14px
}
.site-footer__trust{
 font-size:12px;
 color:var(--pale);
 background:rgba(31,42,84,.25);
 border-left:3px solid var(--purple);
 padding:10px 14px;
 border-radius:0 6px 6px 0;
 line-height:1.6
}
.site-footer__heading{
 font-family:var(--font-head);
 font-size:15px;
 font-weight:600;
 color:var(--light);
 letter-spacing:.14em;
 margin-bottom:18px;
 padding-bottom:8px;
 border-bottom:1px solid var(--mid)
}
.site-footer__list li{margin-bottom:10px}
.site-footer__link{
 display:inline-block;
 font-size:14px;
 color:var(--pale);
 transition:color .2s ease,transform .2s ease,padding-left .2s ease;
 padding:2px 0
}
.site-footer__link:hover{
 color:var(--gold);
 padding-left:6px
}
.site-footer__contact-item{
 display:block;
 font-size:14px;
 color:var(--pale);
 margin-bottom:10px;
 line-height:1.6
}
.site-footer__contact-item:first-of-type{
 color:var(--light)
}
.site-footer__meta{
 display:flex;
 justify-content:space-between;
 align-items:center;
 flex-wrap:wrap;
 gap:12px;
 padding:22px 0 26px;
 font-size:13px;
 color:var(--pale)
}
.site-footer__copy{letter-spacing:.03em}
.site-footer__icp{
 font-family:var(--font-mono);
 font-size:12px;
 color:var(--cyan);
 letter-spacing:.06em
}

@media(max-width:900px){
 .site-footer__grid{
  grid-template-columns:1fr 1fr;
  gap:32px
 }
 .site-footer__brand{grid-column:1/-1}
}
@media(max-width:600px){
 .site-footer__grid{grid-template-columns:1fr;gap:28px}
 .site-footer__inner{padding-top:48px}
 .site-footer__meta{flex-direction:column;align-items:flex-start;gap:6px}
 .back-top{right:16px;bottom:20px;width:46px;height:46px}
 .back-top__arrow{font-size:16px}
 .back-top__text{font-size:8px}
}

@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{
  animation-duration:.01ms !important;
  animation-iteration-count:1 !important;
  transition-duration:.01ms !important;
  transition-delay:0ms !important
 }
 .site-header__nav{transition:none}
 .back-top{transition:none}
}
