/* roulang page: index */
:root{
      --bg:#070914;
      --bg-2:#0b1020;
      --panel:#11182b;
      --panel-2:#151f36;
      --panel-3:#0d1325;
      --text:#f5f7ff;
      --muted:#aab4d4;
      --subtle:#7f8aab;
      --line:rgba(255,255,255,.12);
      --line-strong:rgba(135,159,255,.28);
      --primary:#8b5cf6;
      --primary-2:#00e5ff;
      --primary-3:#ff4fd8;
      --success:#3cffb0;
      --warning:#ffd166;
      --danger:#ff6b7a;
      --white:#ffffff;
      --radius-xs:10px;
      --radius-sm:14px;
      --radius-md:22px;
      --radius-lg:32px;
      --shadow-sm:0 12px 30px rgba(0,0,0,.22);
      --shadow-md:0 22px 60px rgba(0,0,0,.34);
      --shadow-neon:0 0 34px rgba(139,92,246,.28),0 0 46px rgba(0,229,255,.13);
      --container:1180px;
      --nav-h:78px;
      --ease:cubic-bezier(.2,.8,.2,1);
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--text);
      font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
      line-height:1.72;
      background:
        radial-gradient(circle at 12% 8%,rgba(139,92,246,.22),transparent 34%),
        radial-gradient(circle at 86% 18%,rgba(0,229,255,.16),transparent 30%),
        linear-gradient(180deg,#070914 0%,#0b1020 38%,#070914 100%);
      overflow-x:hidden;
      text-rendering:optimizeLegibility;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background-image:
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
      background-size:44px 44px;
      mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 78%);
      z-index:-2;
    }
    body::after{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.07),transparent 42%);
      z-index:-1;
    }
    a{color:inherit;text-decoration:none;transition:color .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease),transform .22s var(--ease),box-shadow .22s var(--ease)}
    img{max-width:100%;height:auto;display:block}
    button,input,textarea,select{font:inherit}
    button{cursor:pointer}
    ::selection{background:rgba(0,229,255,.28);color:#fff}

    .container{
      width:min(calc(100% - 40px),var(--container));
      margin-inline:auto;
    }
    .section{
      padding:88px 0;
      position:relative;
    }
    .section.tight{padding:58px 0}
    .section-title{
      max-width:760px;
      margin:0 0 34px;
    }
    .section-title.center{
      text-align:center;
      margin-inline:auto;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border:1px solid rgba(0,229,255,.26);
      border-radius:999px;
      color:#dffbff;
      background:rgba(0,229,255,.08);
      font-size:13px;
      font-weight:700;
      letter-spacing:.03em;
      margin-bottom:14px;
    }
    .eyebrow i{color:var(--primary-2)}
    h1,h2,h3,h4,p{margin-top:0}
    h1{
      font-size:clamp(42px,5.8vw,78px);
      line-height:1.04;
      letter-spacing:-.065em;
      margin-bottom:22px;
    }
    h2{
      font-size:clamp(28px,3.4vw,48px);
      line-height:1.14;
      letter-spacing:-.04em;
      margin-bottom:14px;
    }
    h3{
      font-size:21px;
      line-height:1.32;
      letter-spacing:-.02em;
      margin-bottom:10px;
    }
    p{color:var(--muted)}
    .lead{
      font-size:18px;
      line-height:1.9;
      color:#c9d1ef;
    }
    .gradient-text{
      background:linear-gradient(95deg,#fff 0%,#bfc9ff 33%,#46efff 68%,#ff82df 100%);
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
    }

    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      height:var(--nav-h);
      display:flex;
      align-items:center;
      backdrop-filter:blur(20px);
      background:linear-gradient(180deg,rgba(7,9,20,.86),rgba(7,9,20,.62));
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .nav-shell{
      width:min(calc(100% - 40px),var(--container));
      margin:auto;
      display:grid;
      grid-template-columns:1fr auto 1fr;
      align-items:center;
      gap:18px;
      position:relative;
    }
    .nav-side{
      display:flex;
      align-items:center;
      gap:10px;
    }
    .nav-side.left{justify-content:flex-start}
    .nav-side.right{justify-content:flex-end}
    .brand{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      min-width:260px;
      padding:10px 18px;
      border-radius:999px;
      background:rgba(17,24,43,.82);
      border:1px solid var(--line);
      box-shadow:var(--shadow-sm);
      font-weight:900;
      letter-spacing:-.03em;
      white-space:nowrap;
    }
    .brand-mark{
      width:34px;
      height:34px;
      border-radius:12px;
      display:grid;
      place-items:center;
      background:
        radial-gradient(circle at 30% 25%,#fff,transparent 20%),
        linear-gradient(135deg,var(--primary),var(--primary-2) 58%,var(--primary-3));
      color:#081020;
      font-size:15px;
      box-shadow:0 0 24px rgba(0,229,255,.24);
    }
    .nav-link{
      display:inline-flex;
      align-items:center;
      gap:8px;
      min-height:42px;
      padding:0 16px;
      border-radius:999px;
      color:#d8def6;
      font-weight:800;
      border:1px solid transparent;
    }
    .nav-link:hover,.nav-link:focus{
      color:#fff;
      background:rgba(255,255,255,.07);
      border-color:rgba(255,255,255,.12);
      outline:none;
    }
    .nav-link.active{
      color:#07101d;
      background:linear-gradient(135deg,var(--primary-2),#9afcff);
      box-shadow:0 8px 26px rgba(0,229,255,.22);
    }
    .status-pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:#d8fff0;
      background:rgba(60,255,176,.08);
      border:1px solid rgba(60,255,176,.24);
      border-radius:999px;
      padding:9px 13px;
      font-size:13px;
      font-weight:800;
      white-space:nowrap;
    }
    .pulse-dot{
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--success);
      box-shadow:0 0 0 6px rgba(60,255,176,.12),0 0 18px rgba(60,255,176,.7);
    }
    .menu-toggle{
      display:none;
      width:44px;
      height:44px;
      border:1px solid var(--line);
      border-radius:14px;
      background:rgba(255,255,255,.06);
      color:#fff;
    }
    .mobile-panel{
      display:none;
      position:absolute;
      top:58px;
      left:0;
      right:0;
      padding:12px;
      border:1px solid var(--line);
      border-radius:18px;
      background:rgba(13,19,37,.98);
      box-shadow:var(--shadow-md);
    }
    .mobile-panel.open{display:grid;gap:10px}

    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      min-height:48px;
      padding:0 20px;
      border-radius:999px;
      border:1px solid transparent;
      font-weight:900;
      line-height:1;
      white-space:nowrap;
      transition:transform .22s var(--ease),box-shadow .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease),color .22s var(--ease);
    }
    .btn-primary{
      color:#07101d;
      background:linear-gradient(135deg,var(--primary-2),#e8fdff 52%,#d6c5ff);
      box-shadow:0 18px 40px rgba(0,229,255,.22);
    }
    .btn-primary:hover,.btn-primary:focus{
      transform:translateY(-2px);
      box-shadow:0 24px 50px rgba(0,229,255,.3);
      color:#07101d;
      outline:none;
    }
    .btn-secondary{
      color:#f5f7ff;
      background:rgba(255,255,255,.07);
      border-color:rgba(255,255,255,.14);
    }
    .btn-secondary:hover,.btn-secondary:focus{
      transform:translateY(-2px);
      background:rgba(255,255,255,.1);
      border-color:rgba(0,229,255,.35);
      color:#fff;
      outline:none;
    }
    .btn-ghost{
      color:#dfe7ff;
      background:transparent;
      border-color:rgba(255,255,255,.14);
    }
    .btn-ghost:hover,.btn-ghost:focus{
      background:rgba(139,92,246,.12);
      border-color:rgba(139,92,246,.42);
      color:#fff;
      outline:none;
    }

    .hero{
      padding:78px 0 76px;
      min-height:calc(100vh - var(--nav-h));
      display:flex;
      align-items:center;
    }
    .hero-grid{
      display:grid;
      grid-template-columns:5fr 7fr;
      gap:48px;
      align-items:center;
    }
    .hero-copy{
      position:relative;
      z-index:2;
    }
    .hero-copy .lead{
      max-width:590px;
      margin-bottom:28px;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:14px;
      margin:28px 0 28px;
    }
    .hero-kpis{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
      max-width:610px;
    }
    .kpi-mini{
      padding:15px 14px;
      border-radius:18px;
      background:rgba(255,255,255,.055);
      border:1px solid rgba(255,255,255,.1);
    }
    .kpi-mini strong{
      display:block;
      font-size:24px;
      line-height:1;
      color:#fff;
      letter-spacing:-.04em;
    }
    .kpi-mini span{
      display:block;
      margin-top:8px;
      font-size:13px;
      color:var(--subtle);
      line-height:1.4;
    }
    .hero-art-wrap{
      position:relative;
      min-height:560px;
      perspective:1200px;
    }
    .hero-art-wrap::before{
      content:"";
      position:absolute;
      inset:8% -4% 0 10%;
      border-radius:44px;
      background:linear-gradient(135deg,rgba(139,92,246,.5),rgba(0,229,255,.08));
      filter:blur(38px);
      opacity:.8;
      transform:rotate(-7deg);
    }
    .hero-visual{
      position:absolute;
      inset:34px 0 20px 36px;
      border-radius:38px;
      border:1px solid rgba(255,255,255,.16);
      background:
        linear-gradient(140deg,rgba(255,255,255,.14),rgba(255,255,255,.03)),
        radial-gradient(circle at 18% 18%,rgba(0,229,255,.28),transparent 25%),
        radial-gradient(circle at 78% 20%,rgba(255,79,216,.22),transparent 28%),
        linear-gradient(180deg,#11182b,#080d1c);
      box-shadow:var(--shadow-md),var(--shadow-neon);
      overflow:hidden;
      transform:rotate(-4deg) translateX(10px);
    }
    .hero-visual::before{
      content:"";
      position:absolute;
      inset:-90px -120px auto auto;
      width:280px;
      height:280px;
      border-radius:50%;
      background:rgba(0,229,255,.17);
      filter:blur(8px);
    }
    .hero-visual::after{
      content:"";
      position:absolute;
      left:-20%;
      top:16%;
      width:140%;
      height:1px;
      background:linear-gradient(90deg,transparent,rgba(0,229,255,.65),transparent);
      box-shadow:0 105px 0 rgba(139,92,246,.32),0 210px 0 rgba(255,79,216,.24);
      transform:rotate(-18deg);
    }
    .dashboard{
      position:relative;
      z-index:2;
      height:100%;
      padding:28px;
      display:grid;
      grid-template-rows:auto 1fr auto;
      gap:20px;
    }
    .dash-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
    }
    .dash-title{
      display:flex;
      align-items:center;
      gap:12px;
      font-weight:900;
    }
    .dash-title .icon{
      width:42px;
      height:42px;
      border-radius:16px;
      display:grid;
      place-items:center;
      background:linear-gradient(135deg,var(--primary),var(--primary-2));
      color:#07101d;
    }
    .dash-badge{
      padding:7px 10px;
      border-radius:999px;
      color:#d8fff0;
      background:rgba(60,255,176,.09);
      border:1px solid rgba(60,255,176,.25);
      font-size:12px;
      font-weight:900;
    }
    .address-stage{
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:16px;
      align-items:stretch;
    }
    .address-card{
      border-radius:26px;
      padding:22px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(7,9,20,.56);
      backdrop-filter:blur(12px);
      min-height:256px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }
    .scan-lines{
      display:grid;
      gap:12px;
    }
    .line{
      height:12px;
      border-radius:999px;
      background:rgba(255,255,255,.1);
      overflow:hidden;
    }
    .line span{
      display:block;
      height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg,var(--primary-2),var(--primary),var(--primary-3));
      box-shadow:0 0 22px rgba(0,229,255,.32);
    }
    .line:nth-child(1) span{width:92%}
    .line:nth-child(2) span{width:76%}
    .line:nth-child(3) span{width:84%}
    .line:nth-child(4) span{width:62%}
    .signal-ring{
      position:relative;
      border-radius:26px;
      border:1px solid rgba(0,229,255,.2);
      background:radial-gradient(circle at 50% 45%,rgba(0,229,255,.28),transparent 22%),rgba(255,255,255,.045);
      display:grid;
      place-items:center;
      overflow:hidden;
    }
    .signal-ring span{
      width:108px;
      height:108px;
      border-radius:50%;
      border:2px solid rgba(0,229,255,.5);
      box-shadow:0 0 0 28px rgba(0,229,255,.06),0 0 0 58px rgba(139,92,246,.05),0 0 36px rgba(0,229,255,.35);
      display:grid;
      place-items:center;
      color:#fff;
      font-size:32px;
      background:rgba(7,9,20,.56);
    }
    .dash-bottom{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
    }
    .dash-chip{
      padding:14px;
      border-radius:18px;
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.1);
    }
    .dash-chip b{
      display:block;
      font-size:18px;
      color:#fff;
      line-height:1.1;
    }
    .dash-chip small{
      color:var(--subtle);
      font-weight:700;
    }

    .metric-strip{
      display:grid;
      grid-template-columns:1.1fr repeat(3,.8fr);
      gap:16px;
      align-items:stretch;
    }
    .about-card,.metric-card,.content-card,.service-card,.compare-card,.app-card,.faq-item,.topic-card,.rank-card,.form-card{
      border:1px solid rgba(255,255,255,.11);
      background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
      border-radius:var(--radius-md);
      box-shadow:var(--shadow-sm);
      overflow:hidden;
    }
    .about-card{
      padding:30px;
      background:
        radial-gradient(circle at 0% 0%,rgba(139,92,246,.18),transparent 32%),
        linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
    }
    .metric-card{
      padding:24px;
      min-height:174px;
      position:relative;
    }
    .metric-card::after{
      content:"";
      position:absolute;
      right:18px;
      top:18px;
      width:44px;
      height:44px;
      border-radius:16px;
      background:rgba(0,229,255,.08);
      border:1px solid rgba(0,229,255,.18);
    }
    .metric-number{
      font-size:42px;
      font-weight:950;
      letter-spacing:-.06em;
      line-height:1;
      background:linear-gradient(135deg,#fff,var(--primary-2));
      -webkit-background-clip:text;
      color:transparent;
    }
    .metric-card p{font-size:14px;margin:12px 0 0}

    .countdown-panel{
      display:grid;
      grid-template-columns:1.1fr .9fr auto;
      gap:18px;
      align-items:center;
      padding:20px;
      border-radius:28px;
      border:1px solid rgba(255,209,102,.24);
      background:
        radial-gradient(circle at 10% 10%,rgba(255,209,102,.15),transparent 30%),
        linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.035));
      box-shadow:var(--shadow-sm);
    }
    .countdown-title h2{font-size:30px;margin-bottom:6px}
    .countdown-title p{margin:0}
    .timer{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:10px;
    }
    .time-box{
      text-align:center;
      padding:14px 10px;
      border-radius:18px;
      background:rgba(7,9,20,.48);
      border:1px solid rgba(255,255,255,.11);
    }
    .time-box strong{
      display:block;
      font-size:28px;
      line-height:1;
      color:#fff;
      font-weight:950;
    }
    .time-box span{
      display:block;
      margin-top:7px;
      color:var(--subtle);
      font-size:12px;
      font-weight:800;
    }

    .news-layout{
      display:grid;
      grid-template-columns:1.55fr .8fr;
      gap:22px;
      align-items:start;
    }
    .news-list{
      display:grid;
      gap:12px;
    }
    .news-link{
      display:grid;
      grid-template-columns:auto 1fr auto;
      gap:15px;
      align-items:center;
      padding:17px;
      border-radius:18px;
      background:rgba(255,255,255,.055);
      border:1px solid rgba(255,255,255,.09);
    }
    .news-link:hover,.news-link:focus{
      transform:translateX(4px);
      background:rgba(255,255,255,.085);
      border-color:rgba(0,229,255,.28);
      outline:none;
    }
    .news-index{
      width:34px;
      height:34px;
      border-radius:12px;
      display:grid;
      place-items:center;
      color:#081020;
      background:linear-gradient(135deg,var(--primary-2),#b6fbff);
      font-weight:950;
    }
    .news-link b{display:block;color:#fff;line-height:1.35}
    .news-link span{display:block;color:var(--subtle);font-size:13px;margin-top:4px}
    .news-tag{
      color:#dffbff;
      font-size:12px;
      font-weight:900;
      border:1px solid rgba(0,229,255,.22);
      background:rgba(0,229,255,.07);
      border-radius:999px;
      padding:6px 10px;
      white-space:nowrap;
    }
    .recommend-box{
      padding:24px;
      border-radius:24px;
      background:
        radial-gradient(circle at 95% 8%,rgba(255,79,216,.18),transparent 35%),
        rgba(255,255,255,.055);
      border:1px solid rgba(255,255,255,.1);
      position:sticky;
      top:104px;
    }
    .recommend-box h3{font-size:24px}
    .check-list{
      list-style:none;
      margin:18px 0 0;
      padding:0;
      display:grid;
      gap:12px;
    }
    .check-list li{
      display:flex;
      gap:10px;
      color:#cbd4f0;
      font-size:15px;
    }
    .check-list i{color:var(--success);margin-top:5px}

    .service-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:18px;
    }
    .service-card{
      padding:24px;
      min-height:210px;
      transition:transform .22s var(--ease),border-color .22s var(--ease),background .22s var(--ease),box-shadow .22s var(--ease);
    }
    .service-card:hover{
      transform:translateY(-5px);
      border-color:rgba(0,229,255,.28);
      box-shadow:var(--shadow-md);
      background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.04));
    }
    .service-icon{
      width:48px;
      height:48px;
      border-radius:18px;
      display:grid;
      place-items:center;
      margin-bottom:16px;
      color:#081020;
      background:linear-gradient(135deg,var(--primary-2),#fff,var(--primary));
      box-shadow:0 16px 36px rgba(0,229,255,.17);
      font-size:20px;
    }
    .service-card p{font-size:15px;margin-bottom:0}
    .badge-row{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-top:16px;
    }
    .badge{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:6px 10px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.055);
      color:#d7def7;
      font-size:12px;
      font-weight:800;
    }

    .compare-shell{
      display:grid;
      grid-template-columns:.78fr 1.22fr;
      gap:22px;
      align-items:stretch;
    }
    .compare-card{
      padding:26px;
      background:
        radial-gradient(circle at 0% 0%,rgba(0,229,255,.13),transparent 34%),
        linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
    }
    .compare-table{
      width:100%;
      border-collapse:separate;
      border-spacing:0 10px;
      color:#dce4ff;
    }
    .compare-table th{
      text-align:left;
      color:#fff;
      font-size:14px;
      padding:0 14px 8px;
    }
    .compare-table td{
      padding:16px 14px;
      background:rgba(255,255,255,.055);
      border-top:1px solid rgba(255,255,255,.09);
      border-bottom:1px solid rgba(255,255,255,.09);
      font-size:14px;
    }
    .compare-table td:first-child{
      border-left:1px solid rgba(255,255,255,.09);
      border-radius:16px 0 0 16px;
      color:#fff;
      font-weight:900;
    }
    .compare-table td:last-child{
      border-right:1px solid rgba(255,255,255,.09);
      border-radius:0 16px 16px 0;
    }
    .compare-table tr.recommended td{
      background:rgba(0,229,255,.1);
      border-color:rgba(0,229,255,.3);
      box-shadow:0 12px 30px rgba(0,229,255,.08);
    }
    .recommend-mark{
      display:inline-flex;
      padding:5px 8px;
      border-radius:999px;
      color:#07101d;
      background:linear-gradient(135deg,var(--warning),#fff0b3);
      font-size:12px;
      font-weight:950;
      margin-left:6px;
      vertical-align:middle;
    }

    .app-stage{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:24px;
      align-items:center;
    }
    .app-card{
      padding:30px;
    }
    .device-board{
      position:relative;
      min-height:390px;
      border-radius:32px;
      overflow:hidden;
      border:1px solid rgba(255,255,255,.12);
      background:
        radial-gradient(circle at 26% 18%,rgba(0,229,255,.2),transparent 26%),
        radial-gradient(circle at 74% 78%,rgba(139,92,246,.24),transparent 28%),
        linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
      box-shadow:var(--shadow-md);
    }
    .device{
      position:absolute;
      border:1px solid rgba(255,255,255,.16);
      background:rgba(8,13,28,.82);
      box-shadow:0 20px 55px rgba(0,0,0,.36);
      overflow:hidden;
    }
    .device.desktop{
      width:72%;
      height:52%;
      left:8%;
      top:14%;
      border-radius:22px;
    }
    .device.mobile{
      width:24%;
      height:58%;
      right:12%;
      bottom:12%;
      border-radius:26px;
    }
    .device .bar{
      height:34px;
      border-bottom:1px solid rgba(255,255,255,.09);
      display:flex;
      align-items:center;
      gap:6px;
      padding:0 12px;
    }
    .dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.28)}
    .device-content{
      padding:16px;
      display:grid;
      gap:10px;
    }
    .device-line{
      height:10px;
      border-radius:999px;
      background:rgba(255,255,255,.11);
    }
    .device-line.hot{background:linear-gradient(90deg,var(--primary-2),var(--primary));box-shadow:0 0 20px rgba(0,229,255,.22)}
    .device-card-small{
      height:62px;
      border-radius:16px;
      background:rgba(0,229,255,.08);
      border:1px solid rgba(0,229,255,.16);
    }

    .topic-rank{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:22px;
      align-items:start;
    }
    .topic-card,.rank-card{
      padding:26px;
    }
    .tag-cloud{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:18px;
    }
    .topic-tag{
      display:inline-flex;
      align-items:center;
      padding:9px 13px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.12);
      color:#dfe7ff;
      background:rgba(255,255,255,.055);
      font-size:14px;
      font-weight:800;
    }
    .topic-tag:hover,.topic-tag:focus{
      transform:translateY(-2px);
      color:#07101d;
      background:linear-gradient(135deg,var(--primary-2),#dffcff);
      outline:none;
    }
    .rank-list{
      list-style:none;
      padding:0;
      margin:16px 0 0;
      display:grid;
      gap:10px;
    }
    .rank-list li{
      display:grid;
      grid-template-columns:auto 1fr auto;
      gap:12px;
      align-items:center;
      padding:13px;
      border-radius:16px;
      background:rgba(255,255,255,.052);
      border:1px solid rgba(255,255,255,.08);
    }
    .rank-no{
      width:32px;
      height:32px;
      border-radius:11px;
      display:grid;
      place-items:center;
      font-weight:950;
      color:#07101d;
      background:#dfe7ff;
    }
    .rank-list li:nth-child(1) .rank-no{background:linear-gradient(135deg,var(--warning),#fff)}
    .rank-list li:nth-child(2) .rank-no{background:linear-gradient(135deg,var(--primary-2),#fff)}
    .rank-list li:nth-child(3) .rank-no{background:linear-gradient(135deg,var(--primary-3),#fff)}
    .rank-title b{display:block;color:#fff;line-height:1.3}
    .rank-title span{font-size:12px;color:var(--subtle)}
    .trend{
      color:var(--success);
      font-weight:950;
      font-size:13px;
      white-space:nowrap;
    }

    .faq-wrap{
      display:grid;
      grid-template-columns:.78fr 1.22fr;
      gap:28px;
      align-items:start;
    }
    .faq-aside{
      padding:26px;
      border-radius:26px;
      border:1px solid rgba(255,255,255,.11);
      background:
        radial-gradient(circle at 100% 0%,rgba(139,92,246,.18),transparent 34%),
        rgba(255,255,255,.05);
      position:sticky;
      top:104px;
    }
    .faq-list{
      display:grid;
      gap:14px;
    }
    .faq-item{
      padding:0;
    }
    .faq-question{
      width:100%;
      border:0;
      background:transparent;
      color:#fff;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:20px 22px;
      text-align:left;
      font-weight:950;
    }
    .faq-question i{
      color:var(--primary-2);
      transition:transform .22s var(--ease);
    }
    .faq-answer{
      display:none;
      padding:0 22px 22px;
      color:#bfc8e8;
      font-size:15px;
    }
    .faq-item.open .faq-answer{display:block}
    .faq-item.open .faq-question i{transform:rotate(45deg)}
    .faq-question:focus{outline:2px solid rgba(0,229,255,.45);outline-offset:-3px;border-radius:var(--radius-md)}

    .cta-section{
      padding:96px 0;
    }
    .cta-panel{
      display:grid;
      grid-template-columns:1fr .92fr;
      gap:26px;
      align-items:stretch;
      padding:30px;
      border-radius:36px;
      border:1px solid rgba(0,229,255,.22);
      background:
        radial-gradient(circle at 10% 20%,rgba(0,229,255,.18),transparent 30%),
        radial-gradient(circle at 86% 18%,rgba(255,79,216,.16),transparent 28%),
        linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.035));
      box-shadow:var(--shadow-md);
      overflow:hidden;
    }
    .cta-copy{
      padding:10px 0 10px 4px;
    }
    .cta-copy h2{font-size:clamp(32px,4vw,56px)}
    .form-card{
      padding:24px;
      background:rgba(7,9,20,.58);
    }
    .form-grid{
      display:grid;
      gap:14px;
    }
    .field label{
      display:block;
      color:#dce4ff;
      font-weight:900;
      font-size:14px;
      margin-bottom:7px;
    }
    .field input,.field select{
      width:100%;
      height:50px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.14);
      background:rgba(255,255,255,.07);
      color:#fff;
      padding:0 14px;
      box-shadow:none;
      margin:0;
    }
    .field select option{color:#07101d}
    .field input::placeholder{color:#7f8aab}
    .field input:focus,.field select:focus{
      border-color:rgba(0,229,255,.5);
      background:rgba(255,255,255,.09);
      box-shadow:0 0 0 4px rgba(0,229,255,.1);
      outline:none;
    }
    .form-note{
      color:#92a0c4;
      font-size:13px;
      margin:0;
    }
    .submit-state{
      display:none;
      padding:12px 14px;
      border-radius:16px;
      color:#d8fff0;
      background:rgba(60,255,176,.08);
      border:1px solid rgba(60,255,176,.2);
      font-size:14px;
    }
    .submit-state.show{display:block}

    .site-footer{
      padding:48px 0 32px;
      border-top:1px solid rgba(255,255,255,.08);
      background:rgba(5,7,16,.7);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:28px;
      align-items:start;
    }
    .footer-brand{
      display:flex;
      align-items:center;
      gap:12px;
      font-weight:950;
      font-size:20px;
      margin-bottom:12px;
    }
    .footer-links{
      display:flex;
      flex-wrap:wrap;
      justify-content:flex-end;
      gap:10px;
    }
    .footer-links a{
      padding:9px 12px;
      border-radius:999px;
      color:#b9c3e3;
      background:rgba(255,255,255,.045);
      border:1px solid rgba(255,255,255,.08);
      font-weight:800;
      font-size:14px;
    }
    .footer-links a:hover,.footer-links a:focus{
      color:#fff;
      border-color:rgba(0,229,255,.28);
      background:rgba(0,229,255,.07);
      outline:none;
    }
    .copyright{
      margin-top:26px;
      padding-top:20px;
      border-top:1px solid rgba(255,255,255,.08);
      color:#7f8aab;
      font-size:13px;
      display:flex;
      justify-content:space-between;
      gap:14px;
      flex-wrap:wrap;
    }

    .floating-cta{
      position:fixed;
      left:50%;
      bottom:18px;
      transform:translateX(-50%);
      z-index:45;
      width:min(calc(100% - 28px),760px);
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:10px 12px 10px 18px;
      border-radius:999px;
      background:rgba(13,19,37,.9);
      border:1px solid rgba(0,229,255,.22);
      box-shadow:0 18px 50px rgba(0,0,0,.35);
      backdrop-filter:blur(16px);
    }
    .floating-cta span{
      color:#dce4ff;
      font-size:14px;
      font-weight:800;
    }
    .floating-cta .btn{min-height:40px;padding:0 15px;font-size:14px}

    @media (max-width:1024px){
      :root{--nav-h:72px}
      .section{padding:72px 0}
      .hero-grid,.metric-strip,.compare-shell,.app-stage,.topic-rank,.faq-wrap,.cta-panel{
        grid-template-columns:1fr;
      }
      .hero{
        padding-top:54px;
        min-height:auto;
      }
      .hero-art-wrap{
        min-height:500px;
        order:2;
      }
      .hero-copy{order:1}
      .countdown-panel{
        grid-template-columns:1fr;
      }
      .news-layout{
        grid-template-columns:1fr;
      }
      .recommend-box,.faq-aside{
        position:relative;
        top:auto;
      }
      .service-grid{
        grid-template-columns:1fr 1fr;
      }
      .footer-grid{
        grid-template-columns:1fr;
      }
      .footer-links{justify-content:flex-start}
    }
    @media (max-width:768px){
      .container,.nav-shell{width:min(calc(100% - 28px),var(--container))}
      .nav-shell{
        grid-template-columns:auto 1fr auto;
      }
      .brand{
        min-width:0;
        justify-self:center;
        max-width:calc(100vw - 120px);
        padding:9px 12px;
        font-size:14px;
      }
      .brand-mark{
        width:30px;
        height:30px;
        border-radius:11px;
      }
      .nav-side.left .nav-link,.nav-side.right .status-pill{
        display:none;
      }
      .menu-toggle{display:inline-grid;place-items:center}
      .hero-kpis,.dash-bottom,.timer{
        grid-template-columns:1fr 1fr;
      }
      .hero-art-wrap{
        min-height:440px;
      }
      .hero-visual{
        inset:18px 0 24px 0;
        transform:rotate(-2deg);
        border-radius:30px;
      }
      .dashboard{padding:20px}
      .address-stage{
        grid-template-columns:1fr;
      }
      .signal-ring{min-height:150px}
      .service-grid{grid-template-columns:1fr}
      .news-link{
        grid-template-columns:auto 1fr;
      }
      .news-tag{
        grid-column:2;
        width:max-content;
      }
      .compare-table{
        display:block;
        overflow-x:auto;
        white-space:nowrap;
        padding-bottom:8px;
      }
      .floating-cta{
        border-radius:22px;
        align-items:flex-start;
      }
      .floating-cta span{line-height:1.45}
    }
    @media (max-width:520px){
      h1{font-size:40px}
      .section{padding:58px 0}
      .hero-actions{
        flex-direction:column;
      }
      .btn{width:100%}
      .hero-kpis,.dash-bottom,.timer{
        grid-template-columns:1fr;
      }
      .hero-art-wrap{min-height:390px}
      .dash-top,.countdown-panel{
        align-items:flex-start;
      }
      .dash-badge{display:none}
      .device-board{min-height:330px}
      .device.desktop{width:82%;left:6%;top:12%}
      .device.mobile{width:30%;right:8%;bottom:10%}
      .cta-panel{padding:20px;border-radius:28px}
      .floating-cta{
        display:none;
      }
    }
