:root{
      --bg0:#f7f8ff;
      --bg1:#ffffff;
      --text:#1f2937;
      --muted:#5b667a;
      --muted2:#7a879d;
      --line:rgba(20,34,55,.12);
      --line2:rgba(20,34,55,.08);
      --card:#ffffff;
      --shadow: 0 10px 30px rgba(16,24,40,.10);
      --shadow2: 0 12px 40px rgba(16,24,40,.14);
      --blue:#1b5cff;
      --blue2:#0ea5ff;
      --violet:#6d28d9;
      --mint:#00c2a8;
      --orange:#ff7a18;
      --pink:#ff3d81;
      --focus: rgba(27,92,255,.22);
      --radius:18px;
      --radius2:14px;
      --container:1140px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: ui-sans-serif, system-ui, -apple-system, "PingFang SC","Microsoft YaHei","Noto Sans SC", Arial, sans-serif;
      color:var(--text);
      background:
        radial-gradient(900px 520px at 10% -10%, rgba(27,92,255,.16), transparent 55%),
        radial-gradient(700px 480px at 95% 0%, rgba(0,194,168,.14), transparent 55%),
        linear-gradient(180deg, var(--bg0), #fff 34%, #f9fbff 100%);
    }
    a{color:inherit; text-decoration:none}
    .container{
      width:min(var(--container), calc(100% - 32px));
      margin:0 auto;
    }

    /* Topbar */
    .topbar{
      position:sticky;
      top:0;
      z-index:50;
      backdrop-filter:saturate(140%) blur(10px);
      background: rgba(247,248,255,.74);
      border-bottom:1px solid var(--line2);
    }
    .navwrap{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:12px 0;
    }
    .brand{
      display:flex;
      align-items:center;
      gap:12px;
      min-width: 230px;
    }
    .logo{
      width:44px;
      height:44px;
      display:flex;
      align-items:center;
      justify-content:center;
      background: rgba(255,255,255,.7);
      border:1px solid rgba(27,92,255,.15);
      border-radius:14px;
      box-shadow: 0 8px 20px rgba(27,92,255,.12);
      overflow:hidden;
    }
    .logo img{width:100%; height:100%; object-fit:contain}
    .brandmeta{display:flex; flex-direction:column; gap:2px}
    .brandname{
      font-weight:820;
      letter-spacing:.2px;
      line-height:1.15;
      font-size:14px;
      color:#0b1b39;
      white-space:nowrap;
    }
    .brandsub{
      font-size:12px;
      color:var(--muted);
      white-space:nowrap;
    }

    .navlinks{
      display:flex;
      align-items:center;
      gap:14px;
      flex-wrap:wrap;
      justify-content:flex-end;
    }
    .navlinks a{
      font-size:13px;
      color:#2b3a55;
      padding:8px 10px;
      border-radius:12px;
      border:1px solid transparent;
      transition: transform .18s ease, background .18s ease, border-color .18s ease;
    }
    .navlinks a:hover{
      transform: translateY(-1px);
      background: rgba(27,92,255,.06);
      border-color: rgba(27,92,255,.18);
    }
    .navcta{
      display:flex;
      align-items:center;
      gap:10px;
      margin-left:6px;
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      padding:10px 14px;
      border-radius:14px;
      border:1px solid rgba(20,34,55,.12);
      background: rgba(255,255,255,.65);
      color:#0b1b39;
      font-weight:700;
      font-size:13px;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
      cursor:pointer;
      user-select:none;
      white-space:nowrap;
    }
    .btn:hover{
      transform: translateY(-1px);
      box-shadow: 0 12px 30px rgba(16,24,40,.10);
      border-color: rgba(27,92,255,.22);
      background: rgba(255,255,255,.9);
    }
    .btn.primary{
      background: linear-gradient(135deg, rgba(27,92,255,.98), rgba(0,194,168,.92));
      border-color: rgba(255,255,255,.22);
      color:#fff;
      box-shadow: 0 16px 36px rgba(27,92,255,.22);
    }
    .btn.primary:hover{
      box-shadow: 0 22px 48px rgba(27,92,255,.28);
      border-color: rgba(255,255,255,.30);
      background: linear-gradient(135deg, rgba(27,92,255,1), rgba(0,194,168,1));
    }
    .btn .dot{
      width:10px; height:10px; border-radius:999px;
      background: rgba(255,255,255,.95);
      box-shadow: 0 0 0 6px rgba(255,255,255,.16);
    }
    .burger{
      display:none;
      width:44px;
      height:44px;
      border-radius:14px;
      border:1px solid rgba(20,34,55,.12);
      background: rgba(255,255,255,.7);
      align-items:center;
      justify-content:center;
      cursor:pointer;
      transition: transform .18s ease, background .18s ease;
    }
    .burger:hover{transform: translateY(-1px); background: rgba(255,255,255,.95)}
    .burger svg{width:20px; height:20px}
    .mobilepanel{
      display:none;
      padding:12px 0 16px 0;
    }
    .mobilepanel .grid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:10px;
    }
    .mobilepanel a{
      display:block;
      padding:10px 12px;
      border-radius:14px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.7);
      font-weight:700;
      font-size:13px;
      color:#162238;
      transition: transform .18s ease, border-color .18s ease, background .18s ease;
    }
    .mobilepanel a:hover{
      transform: translateY(-1px);
      border-color: rgba(27,92,255,.20);
      background: rgba(255,255,255,.95);
    }

    /* Hero */
    main{padding-bottom:10px}
    .hero{
      padding:28px 0 12px 0;
    }
    .heroGrid{
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap:18px;
      align-items:stretch;
    }
    .heroCard{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(27,92,255,.14);
      background:
        radial-gradient(900px 360px at 0% 0%, rgba(27,92,255,.24), transparent 55%),
        radial-gradient(720px 320px at 100% 30%, rgba(0,194,168,.18), transparent 52%),
        linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.68));
      box-shadow: var(--shadow);
      padding:22px;
      position:relative;
      overflow:hidden;
      min-height: 360px;
    }
    .heroCard::before{
      content:"";
      position:absolute;
      inset:-2px;
      background:
        radial-gradient(600px 220px at 15% 15%, rgba(255,61,129,.18), transparent 58%),
        radial-gradient(520px 240px at 75% 0%, rgba(27,92,255,.18), transparent 55%),
        radial-gradient(420px 200px at 80% 85%, rgba(0,194,168,.16), transparent 55%);
      pointer-events:none;
      opacity:.9;
    }
    .heroInner{position:relative; z-index:1; height:100%; display:flex; flex-direction:column}
    .badgeRow{display:flex; gap:10px; flex-wrap:wrap; align-items:center}
    .badge{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:8px 12px;
      border-radius:999px;
      background: rgba(255,255,255,.72);
      border:1px solid rgba(20,34,55,.10);
      color:#0b1b39;
      font-weight:800;
      font-size:12px;
    }
    .badge .chip{
      width:26px; height:26px; border-radius:10px;
      background: linear-gradient(135deg, rgba(27,92,255,.95), rgba(0,194,168,.95));
      display:flex; align-items:center; justify-content:center;
      box-shadow: 0 10px 22px rgba(27,92,255,.22);
    }
    .badge svg{width:14px; height:14px; color:#fff}
    .heroTitle{
      margin:14px 0 10px 0;
      font-size:34px;
      line-height:1.18;
      letter-spacing:.2px;
      font-weight:920;
      color:#0a1b3b;
      max-width: 18ch;
    }
    .heroLead{
      margin:0;
      color:var(--muted);
      font-size:15px;
      line-height:1.7;
      max-width: 62ch;
    }
    .heroActions{
      margin-top:16px;
      display:flex;
      align-items:center;
      gap:12px;
      flex-wrap:wrap;
    }
    .ghost{
      background: rgba(255,255,255,.60);
      border-color: rgba(20,34,55,.12);
    }
    .heroMeta{
      margin-top:auto;
      padding-top:16px;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:12px;
    }
    .metaItem{
      border-radius:16px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.66);
      padding:12px 12px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      min-height:74px;
      display:flex;
      flex-direction:column;
      justify-content:center;
    }
    .metaItem:hover{
      transform: translateY(-2px);
      box-shadow: 0 18px 38px rgba(16,24,40,.10);
      border-color: rgba(27,92,255,.18);
    }
    .metaK{
      display:flex; align-items:center; gap:10px;
      font-weight:900;
      color:#0a1b3b;
      font-size:13px;
    }
    .metaK .icon{
      width:34px; height:34px; border-radius:14px;
      background: rgba(27,92,255,.10);
      border:1px solid rgba(27,92,255,.18);
      display:flex; align-items:center; justify-content:center;
    }
    .metaK svg{width:16px; height:16px; color: rgba(27,92,255,.95)}
    .metaV{
      margin-top:6px;
      color:var(--muted);
      font-size:12.5px;
      line-height:1.45;
    }

    .sidePanel{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.72);
      box-shadow: 0 10px 28px rgba(16,24,40,.08);
      padding:16px;
      position:relative;
      overflow:hidden;
      min-height: 360px;
    }
    .sidePanel::after{
      content:"";
      position:absolute;
      width:520px; height:520px;
      right:-320px; top:-360px;
      background: radial-gradient(circle at center, rgba(255,61,129,.18), transparent 60%);
      pointer-events:none;
    }
    .sideInner{position:relative; z-index:1; display:flex; flex-direction:column; height:100%}
    .sideTitle{
      font-size:16px;
      margin:2px 0 10px 0;
      font-weight:920;
      color:#0b1b39;
    }
    .pillRow{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px}
    .pill{
      font-size:12px;
      padding:8px 10px;
      border-radius:999px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.65);
      color:#23324a;
      font-weight:800;
      transition: transform .18s ease, border-color .18s ease;
      cursor:default;
      user-select:none;
    }
    .pill:hover{transform: translateY(-1px); border-color: rgba(27,92,255,.18)}
    .chart{
      margin-top:auto;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:12px;
      padding-top:6px;
    }
    .miniStat{
      border-radius:16px;
      border:1px solid rgba(20,34,55,.10);
      background: linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.52));
      padding:12px;
      transition: transform .18s ease, box-shadow .18s ease;
      min-height:98px;
      display:flex; flex-direction:column; justify-content:space-between;
    }
    .miniStat:hover{transform: translateY(-2px); box-shadow: 0 18px 40px rgba(16,24,40,.10)}
    .miniTop{display:flex; align-items:center; justify-content:space-between; gap:10px}
    .miniTop .tag{
      display:inline-flex; align-items:center; gap:8px;
      font-size:12px; font-weight:900; color:#0b1b39;
    }
    .miniTop .tag .mark{
      width:10px; height:10px; border-radius:999px;
      background: linear-gradient(135deg, rgba(27,92,255,1), rgba(0,194,168,1));
      box-shadow: 0 0 0 6px rgba(27,92,255,.14);
    }
    .miniStat .val{
      font-size:20px;
      font-weight:980;
      letter-spacing:.2px;
      color:#0a1b3b;
    }
    .miniStat .desc{
      font-size:12.5px; color:var(--muted);
      line-height:1.45;
      margin-top:6px;
    }

    /* Sections */
    section{padding:22px 0}
    .sectionHead{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:16px;
      margin-bottom:14px;
    }
    .kicker{
      color: rgba(27,92,255,.95);
      font-weight:900;
      font-size:12px;
      letter-spacing:.3px;
      text-transform:uppercase;
    }
    h2{
      margin:8px 0 0 0;
      font-size:24px;
      line-height:1.2;
      letter-spacing:.2px;
      font-weight:950;
      color:#08162f;
    }
    .subhead{
      margin:6px 0 0 0;
      color:var(--muted);
      font-size:14px;
      line-height:1.7;
      max-width: 66ch;
    }

    .grid3{display:grid; grid-template-columns: repeat(3, 1fr); gap:14px}
    .grid2{display:grid; grid-template-columns: repeat(2, 1fr); gap:14px}
    .card{
      border-radius: var(--radius);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.74);
      box-shadow: 0 8px 24px rgba(16,24,40,.06);
      padding:16px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      position:relative;
      overflow:hidden;
    }
    .card:hover{
      transform: translateY(-2px);
      box-shadow: 0 18px 48px rgba(16,24,40,.10);
      border-color: rgba(27,92,255,.18);
    }
    .card h3{
      margin:10px 0 6px 0;
      font-size:15px;
      font-weight:920;
      letter-spacing:.2px;
      color:#0a1b3b;
    }
    .card p{
      margin:0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.7;
    }
    .card .topIcon{
      width:44px; height:44px;
      border-radius:16px;
      background: rgba(27,92,255,.10);
      border:1px solid rgba(27,92,255,.18);
      display:flex; align-items:center; justify-content:center;
    }
    .card .topIcon svg{width:18px; height:18px; color: rgba(27,92,255,.98)}
    .card .list{
      margin:10px 0 0 0;
      padding:0;
      list-style:none;
      display:flex;
      flex-direction:column;
      gap:8px;
    }
    .card .list li{
      display:flex; gap:10px; align-items:flex-start;
      color:#24324a;
      font-size:13px;
      line-height:1.55;
    }
    .tick{
      width:18px; height:18px;
      border-radius:7px;
      background: rgba(0,194,168,.12);
      border:1px solid rgba(0,194,168,.22);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top:2px;
    }
    .tick svg{width:12px; height:12px; color: rgba(0,194,168,1)}

    /* Timeline */
    .timeline{
      display:grid;
      grid-template-columns: 1.2fr .8fr;
      gap:14px;
      align-items:stretch;
    }
    .steps{
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .step{
      display:flex;
      gap:12px;
      padding:14px;
      border-radius: var(--radius);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.72);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .step:hover{
      transform: translateY(-2px);
      box-shadow: 0 18px 46px rgba(16,24,40,.10);
      border-color: rgba(27,92,255,.18);
    }
    .step .num{
      width:42px; height:42px;
      border-radius:16px;
      background: linear-gradient(135deg, rgba(27,92,255,.12), rgba(0,194,168,.12));
      border:1px solid rgba(27,92,255,.18);
      display:flex; align-items:center; justify-content:center;
      font-weight:980;
      color:#0a1b3b;
      flex:0 0 auto;
    }
    .step h3{
      margin:0;
      font-size:14px;
      font-weight:950;
      color:#0a1b3b;
    }
    .step p{
      margin:6px 0 0 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.65;
    }
    .sideQuote{
      border-radius: var(--radius);
      border:1px solid rgba(27,92,255,.14);
      background:
        radial-gradient(700px 260px at 10% 0%, rgba(27,92,255,.18), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.62));
      padding:16px;
      box-shadow: 0 10px 28px rgba(27,92,255,.10);
      display:flex; flex-direction:column;
      justify-content:space-between;
      gap:14px;
      position:relative;
      overflow:hidden;
    }
    .sideQuote::before{
      content:"";
      position:absolute;
      width:280px; height:280px;
      right:-120px; bottom:-140px;
      background: radial-gradient(circle at center, rgba(255,122,24,.16), transparent 60%);
      pointer-events:none;
    }
    .sideQuote .qTop{position:relative; z-index:1}
    .sideQuote .qTitle{
      font-weight:980;
      color:#0a1b3b;
      font-size:16px;
      margin:0 0 6px 0;
    }
    .sideQuote .qText{
      margin:0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.75;
    }
    .quoteStats{
      position:relative; z-index:1;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:10px;
    }
    .qStat{
      border-radius:16px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.66);
      padding:12px;
      transition: transform .18s ease;
    }
    .qStat:hover{transform: translateY(-2px)}
    .qStat .n{
      font-weight:980;
      color:#0a1b3b;
      font-size:18px;
    }
    .qStat .t{
      margin-top:6px;
      color:var(--muted);
      font-size:12.5px;
      line-height:1.45;
    }

    /* Compare */
    .compareWrap{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.70);
      box-shadow: 0 12px 36px rgba(16,24,40,.08);
      overflow:hidden;
    }
    .compareTop{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:14px;
      padding:16px;
      background:
        radial-gradient(800px 260px at 0% 0%, rgba(27,92,255,.18), transparent 55%),
        radial-gradient(520px 220px at 100% 0%, rgba(0,194,168,.16), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.62));
      border-bottom:1px solid rgba(20,34,55,.08);
    }
    .rating{
      display:flex; align-items:center; gap:12px; flex-wrap:wrap;
    }
    .stars{
      display:flex; gap:6px; align-items:center;
      padding:10px 12px;
      border-radius:16px;
      border:1px solid rgba(255,122,24,.20);
      background: rgba(255,122,24,.08);
    }
    .stars svg{width:16px; height:16px; color: rgba(255,122,24,1)}
    .rating .score{
      display:flex; flex-direction:column;
      gap:2px;
    }
    .rating .score .big{
      font-weight:990; font-size:26px; color:#0a1b3b; line-height:1.05;
    }
    .rating .score .small{
      font-size:13px; color:var(--muted);
      font-weight:800;
    }
    .recommend{
      display:flex; flex-direction:column; gap:6px; align-items:flex-end;
      min-width: 220px;
    }
    .recommend .label{
      font-weight:980;
      color:#0a1b3b;
      font-size:15px;
    }
    .recommend .hint{
      color:var(--muted);
      font-size:13px;
      line-height:1.6;
      text-align:right;
      max-width: 36ch;
    }
    .compareTableWrap{overflow:auto}
    table{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
      min-width: 920px;
    }
    th, td{
      padding:14px 14px;
      border-bottom:1px solid rgba(20,34,55,.08);
      vertical-align:top;
      text-align:left;
      font-size:13.5px;
      line-height:1.6;
    }
    th{
      background: rgba(247,248,255,.65);
      position:sticky;
      top:0;
      z-index:1;
      border-bottom:1px solid rgba(20,34,55,.10);
      color:#0b1b39;
      font-weight:980;
    }
    .tcol{
      width:20%;
    }
    td .badgeCell{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:6px 10px;
      border-radius:999px;
      border:1px solid rgba(0,194,168,.20);
      background: rgba(0,194,168,.10);
      font-weight:900;
      color:#0a1b3b;
      white-space:nowrap;
    }
    td .badgeCell .bDot{
      width:10px; height:10px; border-radius:999px;
      background: rgba(0,194,168,1);
      box-shadow: 0 0 0 6px rgba(0,194,168,.12);
    }
    td .badgeCell.alt{
      border-color: rgba(27,92,255,.18);
      background: rgba(27,92,255,.08);
    }
    td .badgeCell.alt .bDot{
      background: rgba(27,92,255,1);
      box-shadow: 0 0 0 6px rgba(27,92,255,.12);
    }

    /* Case/Articles */
    .listGrid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
      align-items:start;
    }
    .caseCard{
      border-radius: var(--radius);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.74);
      padding:14px;
      display:flex;
      flex-direction:column;
      gap:10px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      min-height: 220px;
    }
    .caseCard:hover{
      transform: translateY(-2px);
      box-shadow: 0 18px 46px rgba(16,24,40,.10);
      border-color: rgba(27,92,255,.18);
    }
    .caseTop{
      display:flex; gap:12px; align-items:flex-start;
      justify-content:space-between;
    }
    .caseTitle{
      font-weight:980;
      color:#0a1b3b;
      margin:0;
      font-size:15px;
      line-height:1.4;
    }
    .caseMeta{
      display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end;
    }
    .chip2{
      font-size:12px;
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(247,248,255,.75);
      color:#27344b;
      font-weight:900;
      white-space:nowrap;
    }
    .caseBody{
      color:var(--muted);
      font-size:13.5px;
      line-height:1.75;
      margin:0;
    }
    .caseActions{
      margin-top:auto;
      display:flex; gap:10px; align-items:center; flex-wrap:wrap;
    }
    .linkBtn{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:10px 12px;
      border-radius:14px;
      border:1px solid rgba(20,34,55,.12);
      background: rgba(255,255,255,.65);
      font-weight:900;
      color:#0b1b39;
      font-size:13px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
    }
    .linkBtn:hover{
      transform: translateY(-1px);
      box-shadow: 0 16px 34px rgba(16,24,40,.10);
      border-color: rgba(27,92,255,.20);
      background: rgba(255,255,255,.95);
    }
    .linkBtn svg{width:16px; height:16px; color: rgba(27,92,255,.95)}
    .articleCard{
      border-radius: var(--radius);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.74);
      padding:14px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .articleCard:hover{
      transform: translateY(-2px);
      box-shadow: 0 18px 46px rgba(16,24,40,.10);
      border-color: rgba(27,92,255,.18);
    }
    .articleTop{
      display:flex; justify-content:space-between; gap:10px; align-items:flex-start;
      margin-bottom:10px;
    }
    .articleTitle{
      margin:0;
      font-weight:980;
      font-size:14.5px;
      color:#0a1b3b;
      line-height:1.55;
    }
    .articleTime{
      color:var(--muted2);
      font-size:12px;
      font-weight:800;
      white-space:nowrap;
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(20,34,55,.08);
      background: rgba(247,248,255,.70);
    }
    .articleDesc{
      margin:0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.75;
    }

    /* Services (cards) */
    .servicesGrid{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:14px;
    }

    /* Form */
    .formWrap{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
      align-items:start;
    }
    .formCard{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(27,92,255,.14);
      background:
        radial-gradient(700px 240px at 0% 0%, rgba(27,92,255,.18), transparent 55%),
        radial-gradient(520px 220px at 100% 20%, rgba(0,194,168,.14), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.62));
      padding:16px;
      box-shadow: 0 12px 36px rgba(27,92,255,.10);
    }
    .formCard h3{
      margin:0 0 6px 0;
      font-size:16px;
      font-weight:990;
      color:#0a1b3b;
    }
    .formCard p{
      margin:0 0 14px 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.75;
    }
    form{
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .row2{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:12px;
    }
    label{
      display:flex;
      flex-direction:column;
      gap:8px;
      font-size:13px;
      color:#1d2a42;
      font-weight:900;
    }
    input, select, textarea{
      width:100%;
      padding:12px 12px;
      border-radius:14px;
      border:1px solid rgba(20,34,55,.12);
      background: rgba(255,255,255,.76);
      color:#0a1b3b;
      outline:none;
      font-size:14px;
      transition: box-shadow .18s ease, border-color .18s ease, background .18s ease;
    }
    textarea{min-height:110px; resize:vertical}
    input:focus, select:focus, textarea:focus{
      border-color: rgba(27,92,255,.35);
      box-shadow: 0 0 0 5px var(--focus);
      background: rgba(255,255,255,.96);
    }
    .formActions{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      flex-wrap:wrap;
      margin-top:2px;
    }
    .fineprint{
      color:var(--muted2);
      font-size:12.5px;
      line-height:1.5;
      max-width: 40ch;
      font-weight:800;
    }
    .toast{
      position:fixed;
      left:50%;
      bottom:20px;
      transform: translateX(-50%);
      background: rgba(11,27,59,.92);
      color:#fff;
      padding:12px 14px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.14);
      box-shadow: 0 18px 54px rgba(0,0,0,.25);
      display:none;
      z-index:1000;
      max-width: calc(100% - 24px);
    }
    .toast.show{display:block; animation: pop .22s ease both}
    @keyframes pop{from{opacity:0; transform: translateX(-50%) translateY(10px)} to{opacity:1; transform: translateX(-50%) translateY(0)}}

    /* FAQ */
    .faqGrid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
    }
    details.faq{
      border-radius: var(--radius);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.74);
      padding:12px 14px;
      transition: box-shadow .18s ease, border-color .18s ease, transform .18s ease;
    }
    details.faq[open]{
      border-color: rgba(27,92,255,.22);
      box-shadow: 0 18px 46px rgba(16,24,40,.10);
      transform: translateY(-2px);
    }
    summary{
      cursor:pointer;
      list-style:none;
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:12px;
      font-weight:980;
      color:#0a1b3b;
      font-size:14px;
      padding:6px 2px;
    }
    summary::-webkit-details-marker{display:none}
    .faqIcon{
      width:28px; height:28px;
      border-radius:12px;
      border:1px solid rgba(27,92,255,.18);
      background: rgba(27,92,255,.08);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top:2px;
    }
    .faqIcon svg{width:14px; height:14px; color: rgba(27,92,255,.95)}
    .chev{
      width:28px; height:28px;
      border-radius:12px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.62);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      transition: transform .18s ease, border-color .18s ease;
    }
    details[open] .chev{transform: rotate(180deg); border-color: rgba(27,92,255,.22)}
    .faqBody{
      padding:8px 2px 6px 2px;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.75;
      border-top:1px dashed rgba(20,34,55,.12);
      margin-top:8px;
    }

    /* Pricing/Token */
    .tokenGrid{
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap:14px;
      align-items:start;
    }
    .tokenCard{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(20,34,55,.10);
      background:
        radial-gradient(700px 260px at 0% 0%, rgba(0,194,168,.18), transparent 55%),
        radial-gradient(520px 220px at 100% 20%, rgba(27,92,255,.14), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.62));
      padding:16px;
      box-shadow: 0 12px 34px rgba(16,24,40,.08);
      overflow:hidden;
      position:relative;
    }
    .tokenCard::before{
      content:"";
      position:absolute;
      inset:-2px;
      background: radial-gradient(520px 240px at 80% 10%, rgba(255,61,129,.12), transparent 58%);
      pointer-events:none;
    }
    .tokenCard > *{position:relative; z-index:1}
    .tokenCard h3{
      margin:0 0 8px 0;
      font-weight:990;
      color:#0a1b3b;
      font-size:16px;
    }
    .tokenCard p{
      margin:0 0 12px 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.75;
    }
    .tokenFilters{
      display:flex; gap:10px; flex-wrap:wrap;
      margin-bottom:12px;
    }
    .seg{
      display:inline-flex; gap:6px; align-items:center;
      padding:10px 12px;
      border-radius:14px;
      border:1px solid rgba(20,34,55,.12);
      background: rgba(255,255,255,.72);
      font-weight:900;
      font-size:13px;
      color:#172642;
      cursor:pointer;
      user-select:none;
      transition: transform .18s ease, border-color .18s ease;
    }
    .seg:hover{transform: translateY(-1px); border-color: rgba(27,92,255,.20)}
    .seg[aria-pressed="true"]{
      border-color: rgba(27,92,255,.30);
      box-shadow: 0 0 0 5px rgba(27,92,255,.10);
      background: rgba(255,255,255,.96);
    }
    .seg .sDot{
      width:10px; height:10px; border-radius:999px;
      background: rgba(27,92,255,1);
      box-shadow: 0 0 0 6px rgba(27,92,255,.12);
    }
    .tokenTable{
      border-radius: var(--radius);
      border:1px solid rgba(20,34,55,.10);
      overflow:hidden;
      background: rgba(255,255,255,.70);
    }
    .tokenRowHead{
      display:grid;
      grid-template-columns: 1.2fr .8fr .9fr;
      gap:0;
      padding:12px 12px;
      background: rgba(247,248,255,.75);
      border-bottom:1px solid rgba(20,34,55,.08);
      color:#0b1b39;
      font-weight:980;
      font-size:13px;
    }
    .tokenRows{
      display:flex; flex-direction:column;
    }
    .tokenRow{
      display:grid;
      grid-template-columns: 1.2fr .8fr .9fr;
      padding:12px 12px;
      gap:0;
      border-bottom:1px solid rgba(20,34,55,.08);
      align-items:start;
    }
    .tokenRow:last-child{border-bottom:none}
    .tokenRow .name{
      font-weight:950; color:#0a1b3b; font-size:13.5px;
    }
    .tokenRow .small{
      color:var(--muted);
      font-size:13px;
      line-height:1.55;
      margin-top:4px;
      grid-column: 1 / 2;
      display:none;
    }
    .tokenRow .price{
      font-weight:990;
      color:#0a1b3b;
      font-size:15px;
      white-space:nowrap;
    }
    .tokenRow .pillA{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(0,194,168,.20);
      background: rgba(0,194,168,.10);
      font-weight:900;
      color:#0a1b3b;
      white-space:nowrap;
    }
    .tokenRow .pillA .pDot{
      width:10px; height:10px; border-radius:999px;
      background: rgba(0,194,168,1);
      box-shadow: 0 0 0 6px rgba(0,194,168,.12);
    }
    .sideToken{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.74);
      padding:16px;
      box-shadow: 0 10px 28px rgba(16,24,40,.06);
    }
    .sideToken h3{
      margin:0 0 8px 0;
      font-weight:990;
      color:#0a1b3b;
      font-size:16px;
    }
    .sideToken ul{
      margin:10px 0 0 0;
      padding:0;
      list-style:none;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .sideToken li{
      display:flex; gap:10px; align-items:flex-start;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.7;
    }
    .sideToken li .b{
      width:28px; height:28px;
      border-radius:12px;
      border:1px solid rgba(27,92,255,.18);
      background: rgba(27,92,255,.08);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top:2px;
    }
    .sideToken li .b svg{width:14px; height:14px; color: rgba(27,92,255,.95)}
    .sideToken .smallCta{margin-top:12px; display:flex; gap:10px; flex-wrap:wrap}

    /* Network */
    .networkGrid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
      align-items:start;
    }
    .mapCard{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.74);
      padding:16px;
      box-shadow: 0 10px 28px rgba(16,24,40,.06);
      overflow:hidden;
      position:relative;
      min-height: 320px;
    }
    .mapCard::before{
      content:"";
      position:absolute;
      inset:-2px;
      background:
        radial-gradient(520px 220px at 35% 20%, rgba(27,92,255,.14), transparent 60%),
        radial-gradient(480px 240px at 85% 50%, rgba(0,194,168,.12), transparent 60%);
      pointer-events:none;
    }
    .mapInner{position:relative; z-index:1; height:100%; display:flex; flex-direction:column}
    .mapTitle{
      margin:0 0 8px 0;
      font-weight:990;
      color:#0a1b3b;
      font-size:16px;
    }
    .networkPoints{
      display:grid;
      grid-template-columns: repeat(2, 1fr);
      gap:10px;
      margin-top:10px;
    }
    .point{
      border-radius:16px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.65);
      padding:12px;
      transition: transform .18s ease;
    }
    .point:hover{transform: translateY(-2px)}
    .point .city{
      font-weight:980; color:#0a1b3b; font-size:13.5px;
      display:flex; align-items:center; gap:8px;
    }
    .point .city .pin{
      width:10px; height:10px; border-radius:999px;
      background: linear-gradient(135deg, rgba(27,92,255,1), rgba(0,194,168,1));
      box-shadow: 0 0 0 6px rgba(27,92,255,.12);
    }
    .point .desc{
      margin-top:6px;
      color:var(--muted);
      font-size:13px;
      line-height:1.55;
    }

    .networkInfo{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(20,34,55,.10);
      background:
        radial-gradient(700px 260px at 0% 0%, rgba(255,61,129,.12), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.62));
      padding:16px;
      box-shadow: 0 10px 28px rgba(16,24,40,.06);
      min-height: 320px;
    }
    .networkInfo h3{
      margin:0 0 8px 0;
      font-weight:990;
      color:#0a1b3b;
      font-size:16px;
    }
    .networkInfo p{
      margin:0 0 12px 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.75;
    }
    .segList{
      display:flex; flex-direction:column; gap:10px;
      padding:0; margin:10px 0 0 0;
      list-style:none;
    }
    .segList li{
      display:flex; gap:10px; align-items:flex-start;
      color:#24324a;
      font-size:13.5px;
      line-height:1.7;
    }
    .segList li .ico{
      width:32px; height:32px;
      border-radius:14px;
      border:1px solid rgba(0,194,168,.20);
      background: rgba(0,194,168,.10);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top:2px;
    }
    .segList li .ico svg{width:16px; height:16px; color: rgba(0,194,168,1)}
    .networkInfo .ctaRow{margin-top:14px; display:flex; gap:10px; flex-wrap:wrap}

    /* Tag cloud */
    .tagCloud{
      border-radius: calc(var(--radius) + 6px);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.72);
      padding:16px;
      box-shadow: 0 10px 28px rgba(16,24,40,.06);
    }
    .cloudTitle{
      font-weight:990; color:#0a1b3b; font-size:16px;
      margin:0 0 10px 0;
    }
    .cloudTags{
      display:flex; flex-wrap:wrap; gap:10px;
    }
    .cloudTags a{
      padding:10px 12px;
      border-radius:999px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(247,248,255,.72);
      font-weight:900;
      font-size:13px;
      color:#24324a;
      transition: transform .18s ease, border-color .18s ease, background .18s ease;
    }
    .cloudTags a:hover{
      transform: translateY(-2px);
      border-color: rgba(27,92,255,.18);
      background: rgba(255,255,255,.95);
    }

    /* Footer */
    footer{
      padding:16px 0 22px 0;
      background:
        radial-gradient(700px 260px at 10% 0%, rgba(27,92,255,.14), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.62), rgba(247,248,255,.70));
      border-top:1px solid rgba(20,34,55,.08);
      margin-top:10px;
    }
    .footerGrid{
      display:grid;
      grid-template-columns: 1.2fr .8fr;
      gap:14px;
      align-items:start;
    }
    .footCard{
      border-radius: var(--radius);
      border:1px solid rgba(20,34,55,.10);
      background: rgba(255,255,255,.74);
      padding:16px;
    }
    .footTitle{
      font-weight:980; color:#0a1b3b;
      font-size:15px;
      margin:0 0 8px 0;
    }
    .footText{
      margin:0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.8;
    }
    .footLinks{
      margin-top:12px;
      display:flex; flex-wrap:wrap; gap:10px;
    }
    .footLinks a{
      padding:9px 11px;
      border-radius:14px;
      border:1px solid rgba(20,34,55,.10);
      background: rgba(247,248,255,.72);
      font-weight:900;
      font-size:13px;
      color:#24324a;
      transition: transform .18s ease, border-color .18s ease, background .18s ease;
    }
    .footLinks a:hover{
      transform: translateY(-2px);
      border-color: rgba(27,92,255,.20);
      background: rgba(255,255,255,.95);
    }
    .footAside .row{
      display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap;
      margin-bottom:12px;
    }
    .qr{
      display:flex; gap:12px; align-items:center;
    }
    .qr img{
      width:86px; height:86px; border-radius:18px;
      border:1px solid rgba(20,34,55,.10);
      background:#fff;
      object-fit:cover;
      box-shadow: 0 10px 26px rgba(16,24,40,.10);
    }
    .qrMeta{
      display:flex; flex-direction:column; gap:6px;
    }
    .qrMeta .k{
      font-weight:980; color:#0a1b3b; font-size:14px; margin:0;
    }
    .qrMeta .v{
      color:var(--muted);
      font-size:13px;
      line-height:1.6;
      margin:0;
      font-weight:800;
    }
    .footBottom{
      margin-top:14px;
      color:var(--muted2);
      font-size:12.5px;
      line-height:1.7;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      flex-wrap:wrap;
    }

    /* Floating */
    .floatBar{
      position:fixed;
      right:14px;
      bottom:14px;
      z-index:60;
      display:flex;
      flex-direction:column;
      gap:10px;
      align-items:flex-end;
    }
    .floatBtn{
      display:flex;
      align-items:center;
      gap:10px;
      padding:12px 12px;
      border-radius:18px;
      border:1px solid rgba(20,34,55,.12);
      background: rgba(255,255,255,.86);
      box-shadow: 0 18px 54px rgba(0,0,0,.14);
      cursor:pointer;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      user-select:none;
    }
    .floatBtn:hover{
      transform: translateY(-2px);
      border-color: rgba(27,92,255,.20);
      box-shadow: 0 24px 68px rgba(0,0,0,.18);
    }
    .floatBtn .fIcon{
      width:36px; height:36px;
      border-radius:16px;
      background: rgba(27,92,255,.10);
      border:1px solid rgba(27,92,255,.18);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
    }
    .floatBtn .fIcon svg{width:16px; height:16px; color: rgba(27,92,255,.98)}
    .floatBtn .fText{
      font-weight:980; color:#0a1b3b; font-size:13px; line-height:1.2;
    }
    .floatBtn .fSub{
      font-size:12px; color:var(--muted); font-weight:800; margin-top:4px;
    }

    /* Scroll reveal */
    .reveal{opacity:0; transform: translateY(10px); transition: opacity .5s ease, transform .5s ease}
    .reveal.on{opacity:1; transform: translateY(0)}

    /* Responsive */
    @media (max-width: 980px){
      .heroGrid{grid-template-columns: 1fr; }
      .sidePanel{min-height: unset}
      .heroCard{min-height: unset}
      .servicesGrid{grid-template-columns: 1fr 1fr}
      .grid3{grid-template-columns: 1fr}
      .grid2{grid-template-columns: 1fr}
      .timeline{grid-template-columns: 1fr}
      .tokenGrid{grid-template-columns: 1fr}
      .networkGrid{grid-template-columns: 1fr}
      .formWrap{grid-template-columns: 1fr}
      .faqGrid{grid-template-columns: 1fr}
      .listGrid{grid-template-columns: 1fr}
      .footerGrid{grid-template-columns: 1fr}
      .recommend{align-items:flex-start; min-width: unset}
      .compareTop{flex-direction:column; align-items:flex-start}
      .navlinks{display:none}
      .burger{display:flex}
      .mobilepanel{display:block}
      .mobilepanel[data-open="false"]{display:none}
    }
    @media (prefers-reduced-motion: reduce){
      html{scroll-behavior:auto}
      .reveal{transition:none}
    }