*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:8.5rem}
body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
a{color:inherit;text-decoration:none}
button{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}
img{max-width:100%;display:block;height:auto}
input,textarea,select{font:inherit;color:inherit}

:root{
  --c-bg:#0A0E17;
  --c-bg-2:#0E1420;
  --c-surface:#121A2F;
  --c-surface-2:#182238;
  --c-primary:#00A8FF;
  --c-primary-soft:rgba(0,168,255,.14);
  --c-accent:#FF6B00;
  --c-ok:#00C48C;
  --c-gold:#F5C518;
  --c-text:#E5EAF0;
  --c-muted:#9AA8B8;
  --c-line:rgba(154,168,184,.16);
  --c-line-blue:rgba(0,168,255,.22);
  --font-body:"Helvetica Neue","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;
  --font-display:Impact,"Arial Black","PingFang SC","Microsoft YaHei",sans-serif;
  --font-data:"Roboto Mono","Cascadia Mono","SF Mono","Courier New",ui-monospace,monospace;
  --r-sm:10px;
  --r-md:16px;
  --r-lg:24px;
  --r-pill:999px;
  --sp-1:.25rem;
  --sp-2:.5rem;
  --sp-3:.75rem;
  --sp-4:1rem;
  --sp-5:1.5rem;
  --sp-6:2rem;
  --sp-7:3rem;
  --sp-8:4rem;
  --container:1200px;
  --scroll-progress:0;
  --reveal-delay:0ms;
  --bar-width:50%
}

body{
  font-family:var(--font-body);
  font-size:1rem;
  line-height:1.7;
  background-color:var(--c-bg);
  background-image:radial-gradient(1100px 480px at 88% -6%,rgba(0,168,255,.14),transparent 62%),radial-gradient(860px 420px at -10% 12%,rgba(0,196,140,.08),transparent 60%),linear-gradient(180deg,#0A0E17 0%,#0C111D 55%,#090D16 100%);
  color:var(--c-text);
  min-height:100vh;
  -webkit-font-smoothing:antialiased
}

::selection{background:var(--c-primary);color:#06121F}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--c-bg)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#1B2740,#233352);border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:#2A3C5E}

.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}

:focus-visible{outline:2px solid var(--c-primary);outline-offset:3px;border-radius:4px}

.container{max-width:var(--container);margin-inline:auto;padding-inline:clamp(1rem,4vw,2rem)}
.section{padding-block:var(--sp-7)}
.lead{font-size:1.06rem;color:var(--c-muted);max-width:60ch}
.divider{display:flex;align-items:center;gap:.75rem;color:var(--c-muted);font-family:var(--font-data);font-size:.72rem;letter-spacing:.18em}
.divider::before,.divider::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--c-line-blue))}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  padding:.65rem 1.25rem;
  border-radius:var(--r-pill);
  font-weight:700;
  font-size:.92rem;
  line-height:1;
  letter-spacing:.02em;
  border:1px solid transparent;
  white-space:nowrap;
  transition:transform .18s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease
}
.btn:active{transform:translateY(1px) scale(.99)}
.btn--primary{
  background:linear-gradient(135deg,var(--c-accent),#FF8A3D);
  color:#0A0E17;
  box-shadow:0 6px 22px -8px rgba(255,107,0,.65)
}
.btn--primary:hover{transform:translateY(-2px);box-shadow:0 12px 26px -8px rgba(255,107,0,.75)}
.btn--ghost{background:rgba(255,255,255,.04);border-color:var(--c-line);color:var(--c-text)}
.btn--ghost:hover{border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-soft)}
.btn--sm{padding:.5rem .9rem;font-size:.8rem}

.breadcrumb{margin-block:1rem 1.5rem}
.breadcrumb__list{display:flex;flex-wrap:wrap;gap:.45rem .35rem;align-items:center}
.breadcrumb__item{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;color:var(--c-muted)}
.breadcrumb__item~.breadcrumb__item::before{content:"/";font-family:var(--font-data);color:var(--c-line)}
.breadcrumb__link:not([aria-current="page"]):hover{color:var(--c-text)}
.breadcrumb__link[aria-current="page"]{color:var(--c-primary)}

.grid{display:grid;gap:1rem}
.grid--2{grid-template-columns:repeat(2,1fr)}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--4{grid-template-columns:repeat(4,1fr)}

.card{
  background:var(--c-surface);
  border:1px solid var(--c-line);
  border-radius:var(--r-lg);
  padding:var(--sp-5);
  transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease
}
.card--lift:hover{transform:translateY(-4px);border-color:var(--c-line-blue);box-shadow:0 18px 44px -18px rgba(0,168,255,.28)}

.pill{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:.28rem .72rem;
  border-radius:var(--r-pill);
  background:var(--c-primary-soft);
  color:var(--c-primary);
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.04em
}
.pill--ok{background:rgba(0,196,140,.14);color:var(--c-ok)}
.pill--warn{background:rgba(255,107,0,.14);color:var(--c-accent)}
.pill--gold{background:rgba(245,197,24,.14);color:var(--c-gold)}

.stat{display:grid;gap:.25rem}
.stat__value{font-family:var(--font-data);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;color:var(--c-primary);font-variant-numeric:tabular-nums;line-height:1}
.stat__value--ok{color:var(--c-ok)}
.stat__value--accent{color:var(--c-accent)}
.stat__label{font-size:.8rem;color:var(--c-muted);letter-spacing:.08em}

.data-bar{height:6px;border-radius:var(--r-pill);background:rgba(154,168,184,.14);overflow:hidden}
.data-bar__fill{display:block;height:100%;width:var(--bar-width);border-radius:inherit;background:linear-gradient(90deg,var(--c-primary),var(--c-ok))}
.data-bar__fill--accent{background:linear-gradient(90deg,var(--c-accent),#FFB020)}

.figure{
  position:relative;
  aspect-ratio:16/9;
  border-radius:var(--r-lg);
  overflow:hidden;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,rgba(0,168,255,.22),rgba(0,196,140,.08) 46%,rgba(255,107,0,.10)),var(--c-surface)
}
.figure::before{
  content:"";
  position:absolute;
  width:64px;height:64px;
  border-radius:50%;
  border:1.5px dashed rgba(0,168,255,.55);
  box-shadow:0 0 0 26px rgba(0,168,255,.06),0 0 0 52px rgba(0,168,255,.03)
}
.figure::after{
  content:"";
  position:absolute;
  width:200%;
  height:1px;
  background:rgba(255,255,255,.13);
  transform:rotate(-8deg)
}
.figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.figure--16-10{aspect-ratio:16/10}
.figure--4-3{aspect-ratio:4/3}
.figure--square{aspect-ratio:1/1}
.figure--hero{aspect-ratio:21/9}

.kicker{
  display:flex;
  align-items:center;
  gap:.6rem;
  font-family:var(--font-data);
  font-size:.75rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--c-primary)
}
.kicker::before{content:"";width:2rem;height:2px;background:linear-gradient(90deg,var(--c-primary),transparent);border-radius:2px}
.board-title{
  font-family:var(--font-display);
  font-style:italic;
  font-size:clamp(2rem,4.8vw,3.5rem);
  line-height:1.05;
  color:var(--c-text);
  transform:skewX(-6deg)
}

.site-header{
  position:sticky;
  top:0;
  z-index:120;
  background:rgba(10,14,23,.78);
  -webkit-backdrop-filter:blur(14px) saturate(1.2);
  backdrop-filter:blur(14px) saturate(1.2);
  border-bottom:1px solid rgba(154,168,184,.14);
  transition:background-color .3s ease,box-shadow .3s ease
}
.site-header.is-scrolled{
  background:rgba(6,9,15,.92);
  box-shadow:0 10px 40px -18px rgba(0,0,0,.55)
}
.site-header::before{
  content:"";
  position:absolute;
  top:0;left:0;
  height:2px;
  width:100%;
  z-index:5;
  background:linear-gradient(90deg,var(--c-primary),var(--c-ok),var(--c-accent),var(--c-primary));
  transform:scaleX(var(--scroll-progress,0));
  transform-origin:0 50%;
  pointer-events:none
}

.skip-link{
  position:fixed;
  left:1rem;
  top:-4rem;
  z-index:300;
  background:var(--c-primary);
  color:#06121F;
  padding:.6rem 1rem;
  border-radius:var(--r-pill);
  font-weight:700;
  transition:top .2s ease
}
.skip-link:focus{top:1rem}

.site-header__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  max-width:var(--container);
  margin-inline:auto;
  padding:.45rem clamp(1rem,4vw,2rem);
  border-bottom:1px solid rgba(0,168,255,.14);
  background:linear-gradient(90deg,rgba(0,168,255,.10),transparent 55%,rgba(255,107,0,.05))
}
.site-header__slogan{
  display:flex;
  align-items:center;
  gap:.5rem;
  font-size:.74rem;
  font-weight:600;
  letter-spacing:.18em;
  color:var(--c-muted)
}
.site-header__slogan::before{
  content:"";
  width:6px;height:6px;
  border-radius:50%;
  background:var(--c-ok);
  box-shadow:0 0 0 4px rgba(0,196,140,.16)
}
.site-header__ticker{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  font-family:var(--font-data);
  font-size:.68rem;
  letter-spacing:.1em;
  color:var(--c-text);
  padding:.2rem .75rem;
  border-radius:var(--r-pill);
  background:rgba(0,168,255,.09);
  border:1px solid rgba(0,168,255,.2)
}
.site-header__ticker-dot{
  width:5px;height:5px;
  border-radius:50%;
  background:var(--c-accent);
  animation:ng-pulse 1.6s ease-in-out infinite
}
@keyframes ng-pulse{0%,100%{opacity:1}50%{opacity:.3}}

.site-header__bar{
  position:relative;
  display:flex;
  align-items:center;
  gap:1rem;
  max-width:var(--container);
  margin-inline:auto;
  padding:.8rem clamp(1rem,4vw,2rem)
}

.site-brand{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  color:var(--c-text);
  flex-shrink:0
}
.site-brand__mark{
  font-family:var(--font-display);
  font-style:italic;
  font-size:1.55rem;
  line-height:1;
  background:linear-gradient(135deg,var(--c-primary),var(--c-ok));
  color:#06121F;
  padding:.3rem .5rem .34rem;
  border-radius:14px 4px 14px 4px;
  transform:skewX(-6deg);
  box-shadow:0 6px 20px -8px rgba(0,168,255,.55)
}
.site-brand__text{display:grid;line-height:1.2}
.site-brand__cn{
  font-family:var(--font-display);
  font-weight:800;
  font-size:1.25rem;
  letter-spacing:.04em;
  transform:skewX(-5deg)
}
.site-brand__sub{
  font-family:var(--font-data);
  font-size:.58rem;
  letter-spacing:.08em;
  color:var(--c-muted);
  text-transform:lowercase
}
.site-brand--footer .site-brand__mark{font-size:1.3rem;box-shadow:0 4px 14px -6px rgba(0,168,255,.6)}
.site-brand--footer .site-brand__cn{font-size:1.1rem}

.site-nav{margin-inline-start:auto}
.site-nav__list{display:flex;align-items:center;gap:.25rem}
.site-nav__link{
  position:relative;
  display:inline-block;
  padding:.55rem .3rem;
  margin:0 .25rem;
  font-size:.92rem;
  font-weight:700;
  color:var(--c-text);
  letter-spacing:.03em;
  transition:color .2s ease
}
.site-nav__link::after{
  content:"";
  position:absolute;
  left:50%;right:50%;
  bottom:2px;
  height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--c-primary),var(--c-ok));
  transition:left .25s ease,right .25s ease
}
.site-nav__link:hover,.site-nav__link[aria-current="page"]{color:var(--c-primary)}
.site-nav__link:hover::after,.site-nav__link[aria-current="page"]::after{left:.3rem;right:.3rem}

.site-header__actions{display:flex;align-items:center;gap:.55rem}
.nav-toggle{
  display:none;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  width:44px;
  height:40px;
  border-radius:14px;
  border:1px solid var(--c-line);
  background:rgba(255,255,255,.04)
}
.nav-toggle__bar{width:20px;height:2px;border-radius:2px;background:var(--c-text);transition:transform .28s ease,opacity .2s ease}

@media (max-width:1080px){
  .nav-toggle{display:inline-flex}
  .site-header__actions .btn--ghost{display:none}
  .site-nav{
    position:absolute;
    top:100%;
    right:0;
    left:0;
    margin:0;
    padding:0 clamp(1rem,4vw,2rem) .5rem;
    background:rgba(7,10,16,.98);
    border-bottom:1px solid rgba(0,168,255,.18);
    box-shadow:0 24px 40px -24px rgba(0,0,0,.65);
    visibility:hidden;
    opacity:0;
    transform:translateY(-8px);
    transition:opacity .25s ease,transform .25s ease,visibility .25s ease
  }
  .site-nav[data-open]{visibility:visible;opacity:1;transform:none}
  .site-nav__list{flex-direction:column;align-items:stretch;gap:0;padding:.5rem 0 0}
  .site-nav__item{border-bottom:1px solid rgba(154,168,184,.08)}
  .site-nav__item:last-child{border-bottom:0}
  .site-nav__link{display:flex;align-items:center;padding:.95rem .35rem;margin:0;font-size:1rem}
  .site-nav__link[aria-current="page"]{background:var(--c-primary-soft);border-radius:var(--r-sm)}
  .site-nav__link::after{left:0;right:auto;width:0;transition:width .25s ease}
  .site-nav__link:hover::after,.site-nav__link[aria-current="page"]::after{left:0;right:auto;width:2.4rem}
}

@media (max-width:560px){
  .site-header__ticker-text{display:none}
  .site-header__ticker{padding:.25rem .5rem}
}

@media (max-width:420px){
  .site-brand__sub{display:none}
  .site-header__bar{padding-block:.65rem}
}

.site-footer{
  position:relative;
  margin-top:var(--sp-8);
  overflow:hidden;
  background:radial-gradient(720px 300px at 16% 0%,rgba(0,168,255,.12),transparent 60%),radial-gradient(560px 260px at 90% 12%,rgba(255,107,0,.07),transparent 55%),linear-gradient(180deg,#0B101C 0%,#080C13 100%);
  border-top:1px solid var(--c-line)
}
.site-footer__glow{
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,var(--c-primary),var(--c-ok),var(--c-accent),transparent 80%);
  opacity:.8
}
.site-footer__inner{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1.4fr;
  gap:2.5rem 1.5rem;
  padding-block:3rem 2rem
}
.site-footer__cell{display:grid;gap:.75rem;align-content:start}
.site-footer__cell--brand{gap:.85rem}
.site-footer__statement{color:var(--c-muted);font-size:.9rem;line-height:1.75;max-width:30ch}
.site-footer__slogan{
  display:inline-flex;
  width:fit-content;
  font-family:var(--font-display);
  font-style:italic;
  font-size:.85rem;
  letter-spacing:.08em;
  color:var(--c-gold);
  padding:.35rem .85rem;
  border-radius:var(--r-pill);
  border:1px solid rgba(245,197,24,.3);
  background:rgba(245,197,24,.08);
  transform:skewX(-5deg)
}
.site-footer__heading{
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--c-text);
  padding-bottom:.55rem;
  border-bottom:1px solid var(--c-line-blue)
}
.site-footer__list{display:grid;gap:.45rem}
.site-footer__list a{
  position:relative;
  display:inline-block;
  color:var(--c-muted);
  font-size:.9rem;
  transition:color .18s ease,padding-left .18s ease
}
.site-footer__list a::before{
  content:"";
  position:absolute;
  left:-8px;
  top:50%;
  width:4px;height:4px;
  border-radius:50%;
  background:var(--c-primary);
  opacity:0;
  transform:translateY(-8px);
  transition:opacity .18s ease,transform .18s ease
}
.site-footer__list a:hover{color:var(--c-text);padding-left:.25rem}
.site-footer__list a:hover::before{opacity:1;transform:translateY(-50%)}
.site-footer__list--contact span{font-family:var(--font-data);font-size:.82rem;color:var(--c-muted)}
.site-footer__addr{font-style:normal;color:var(--c-muted);font-size:.85rem;line-height:1.7;max-width:28ch}
.site-footer__bottom{
  border-top:1px solid rgba(154,168,184,.12);
  background:rgba(4,7,11,.4);
  padding-block:1.1rem
}
.site-footer__bottom-inner{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1.5rem;
  justify-content:space-between;
  align-items:center;
  font-family:var(--font-data);
  font-size:.76rem;
  letter-spacing:.04em;
  color:var(--c-muted)
}

@media (max-width:980px){
  .site-footer__inner{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .site-footer__inner{grid-template-columns:1fr;gap:2rem}
  .site-footer__bottom-inner{flex-direction:column;align-items:flex-start}
}

@media (max-width:900px){
  .grid--4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  .grid--2,.grid--3,.grid--4{grid-template-columns:1fr}
}

.js [data-reveal]{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);
  transition-delay:var(--reveal-delay,0ms);
  will-change:opacity,transform
}
.js [data-reveal].is-reveal{opacity:1;transform:none}
.js [data-reveal="left"]{transform:translateX(-30px)}
.js [data-reveal="right"]{transform:translateX(30px)}
.js [data-reveal="zoom"]{transform:scale(.95)}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .site-header__ticker-dot{animation:none}
  .site-header::before{display:none}
  .js [data-reveal],.js [data-reveal].is-reveal{opacity:1;transform:none;transition:none;will-change:auto}
}
