/* ===== RESET & BASE ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;color:#c8d6e5;background:#0a1628;line-height:1.7;overflow-x:hidden}
a{text-decoration:none;color:inherit}
ul{list-style:none}
img{max-width:100%;display:block}

/* ===== CSS VARIABLES ===== */
:root{
    --navy-deep:#0a1628;
    --navy-mid:#0f1f38;
    --navy-light:#132742;
    --blue-card:#162d4a;
    --cyan:#00d4ff;
    --cyan-dark:#009fc4;
    --gold:#c9a84c;
    --gold-light:#e0c46c;
    --text-primary:#e8edf3;
    --text-secondary:#8899aa;
    --text-muted:#5a6d80;
    --border-subtle:rgba(255,255,255,0.06);
    --border-card:rgba(255,255,255,0.08);
    --shadow-card:0 4px 24px rgba(0,0,0,0.3);
    --shadow-glow:0 0 40px rgba(0,212,255,0.08);
    --radius-sm:8px;
    --radius-md:16px;
    --radius-lg:24px;
    --gap-section:120px;
    --gap-block:80px;
}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--navy-deep)}
::-webkit-scrollbar-thumb{background:var(--blue-card);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--cyan-dark)}

/* ===== NAVBAR ===== */
.navbar{
    position:fixed;top:0;left:0;right:0;z-index:1000;
    padding:0 40px;height:72px;
    display:flex;align-items:center;justify-content:space-between;
    background:rgba(10,22,40,0.85);
    backdrop-filter:blur(20px) saturate(180%);
    -webkit-backdrop-filter:blur(20px) saturate(180%);
    border-bottom:1px solid var(--border-subtle);
    transition:all 0.3s ease;
}
.navbar.scrolled{height:60px;background:rgba(10,22,40,0.95);box-shadow:0 2px 20px rgba(0,0,0,0.4)}
.nav-logo{
    display:flex;align-items:center;gap:12px;
    font-size:1.25rem;font-weight:700;color:var(--text-primary);
    letter-spacing:1px;
}
.nav-logo .logo-icon{
    width:40px;height:40px;
    background:linear-gradient(135deg,var(--cyan),var(--cyan-dark));
    border-radius:10px;
    display:flex;align-items:center;justify-content:center;
    font-size:1.2rem;color:#fff;font-weight:900;
}
.nav-logo span{color:var(--cyan)}
.nav-links{display:flex;gap:32px;align-items:center}
.nav-links a{
    font-size:0.9rem;color:var(--text-secondary);
    transition:color 0.2s;position:relative;padding:4px 0;
}
.nav-links a::after{
    content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;
    background:var(--cyan);transition:width 0.3s ease;
}
.nav-links a:hover,.nav-links a.active{color:var(--text-primary)}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.nav-cta{
    padding:8px 24px;background:linear-gradient(135deg,var(--cyan),var(--cyan-dark));
    border-radius:24px;font-size:0.85rem;font-weight:600;color:#0a1628 !important;
    transition:transform 0.2s,box-shadow 0.2s;
}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 4px 20px rgba(0,212,255,0.3)}
.nav-cta::after{display:none !important}
.menu-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:1001}
.menu-toggle span{width:24px;height:2px;background:var(--text-primary);border-radius:1px;transition:0.3s}

/* ===== HERO ===== */
.hero{
    position:relative;min-height:100vh;
    display:flex;align-items:center;justify-content:center;
    padding:120px 40px 80px;overflow:hidden;
}
.hero-bg{
    position:absolute;inset:0;z-index:0;
    background:
        radial-gradient(ellipse 80% 60% at 50% 0%,rgba(0,180,220,0.12) 0%,transparent 60%),
        radial-gradient(ellipse 60% 50% at 80% 80%,rgba(201,168,76,0.06) 0%,transparent 60%),
        radial-gradient(ellipse 50% 40% at 20% 20%,rgba(0,212,255,0.04) 0%,transparent 50%),
        var(--navy-deep);
}
.hero-grid{
    position:absolute;inset:0;z-index:0;opacity:0.03;
    background-image:
        linear-gradient(rgba(255,255,255,0.1) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,0.1) 1px,transparent 1px);
    background-size:60px 60px;
}
.hero-particles{position:absolute;inset:0;z-index:0}
.hero-content{position:relative;z-index:1;text-align:center;max-width:900px}
.hero-badge{
    display:inline-block;padding:6px 20px;
    border:1px solid rgba(0,212,255,0.3);
    border-radius:20px;font-size:0.8rem;color:var(--cyan);
    letter-spacing:2px;margin-bottom:32px;
    backdrop-filter:blur(10px);
}
.hero-title{
    font-size:clamp(2.2rem,5vw,3.8rem);font-weight:800;
    color:var(--text-primary);line-height:1.25;margin-bottom:20px;
}
.hero-title .highlight{
    background:linear-gradient(135deg,var(--cyan),var(--cyan-dark));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;
    background-clip:text;
    position:relative;
}
.hero-subtitle{
    font-size:1.15rem;color:var(--text-secondary);
    margin-bottom:48px;max-width:600px;margin-left:auto;margin-right:auto;
}
.hero-stats{
    display:flex;gap:48px;justify-content:center;flex-wrap:wrap;
    margin-top:20px;
}
.hero-stat{text-align:center}
.hero-stat .num{
    font-size:2.8rem;font-weight:800;
    background:linear-gradient(135deg,var(--cyan),var(--gold-light));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;
    background-clip:text;
    line-height:1.1;
}
.hero-stat .num sup{font-size:1.2rem;vertical-align:super}
.hero-stat .label{font-size:0.85rem;color:var(--text-muted);margin-top:4px}
.hero-cta{
    display:inline-block;margin-top:48px;
    padding:14px 48px;
    background:linear-gradient(135deg,var(--cyan),var(--cyan-dark));
    border-radius:32px;font-size:1rem;font-weight:700;
    color:#0a1628;letter-spacing:1px;
    transition:transform 0.3s,box-shadow 0.3s;
}
.hero-cta:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 32px rgba(0,212,255,0.35);
}
.hero-scroll{
    position:absolute;bottom:40px;left:50%;transform:translateX(-50%);
    z-index:1;
    display:flex;flex-direction:column;align-items:center;gap:8px;
    color:var(--text-muted);font-size:0.75rem;letter-spacing:1px;
    animation:bounce 2s infinite;
}
.hero-scroll::before{
    content:'';width:1px;height:24px;background:var(--text-muted);
}
@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}

/* ===== SECTION COMMONS ===== */
.section{padding:var(--gap-section) 40px;position:relative}
.section-label{
    display:inline-block;font-size:0.8rem;color:var(--cyan);
    letter-spacing:3px;text-transform:uppercase;margin-bottom:12px;
}
.section-title{
    font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;
    color:var(--text-primary);margin-bottom:12px;
}
.section-desc{
    font-size:1.05rem;color:var(--text-secondary);max-width:640px;
    margin-bottom:var(--gap-block);
}
.container{max-width:1200px;margin:0 auto}
