:root{
      --bg:#f6fbff;
      --bg2:#eef7ff;
      --card:#ffffff;
      --line:#dbe8f3;
      --text:#183047;
      --muted:#5c7085;
      --brand:#1677ff;
      --brand2:#00b7ff;
      --accent:#14b8a6;
      --warm:#ffb84d;
      --shadow:0 18px 50px rgba(23, 60, 96, .10);
      --shadow2:0 10px 24px rgba(23, 60, 96, .08);
      --radius:20px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 12% 8%, rgba(22,119,255,.12), transparent 24%),
        radial-gradient(circle at 88% 12%, rgba(20,184,166,.12), transparent 20%),
        linear-gradient(180deg, #f9fcff 0%, #f4f9fe 100%);
      line-height:1.65;
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(var(--container), calc(100% - 32px)); margin:0 auto}
    header{
      position:sticky; top:0; z-index:50;
      backdrop-filter: blur(14px);
      background:rgba(246,251,255,.82);
      border-bottom:1px solid rgba(219,232,243,.8);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      padding:14px 0;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand img{width:42px; height:42px; object-fit:contain; border-radius:12px; background:#fff; border:1px solid var(--line); padding:4px}
    .brand strong{display:block; font-size:16px; line-height:1.1}
    .brand span{display:block; font-size:12px; color:var(--muted)}
    .nav-links{display:flex; align-items:center; gap:18px; flex-wrap:wrap}
    .nav-links a{font-size:14px; color:#29485f}
    .nav-links a:hover{color:var(--brand)}
    .nav-actions{display:flex; align-items:center; gap:10px}
    .btn, .btn-outline, .btn-soft{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border-radius:999px; padding:12px 18px; font-weight:700; font-size:14px;
      transition:.22s ease; border:1px solid transparent; cursor:pointer;
    }
    .btn{background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#fff; box-shadow:0 10px 24px rgba(22,119,255,.25)}
    .btn:hover{transform:translateY(-2px); box-shadow:0 14px 28px rgba(22,119,255,.28)}
    .btn-soft{background:#e9f5ff; color:#155ea8; border-color:#d5e9fb}
    .btn-outline{background:#fff; color:var(--text); border-color:var(--line)}
    .btn-outline:hover,.btn-soft:hover{transform:translateY(-2px); box-shadow:var(--shadow2)}
    .menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
    .hero{padding:34px 0 18px}
    .hero-grid{
      display:grid; grid-template-columns:1.15fr .85fr; gap:22px; align-items:stretch;
    }
    .hero-main,.hero-side,.panel,.card,.faq-item,.quote,.article,.form-wrap,.table-wrap,.network,.pricing,.compare,.timeline,.tag-cloud{
      background:rgba(255,255,255,.92); border:1px solid rgba(219,232,243,.9); box-shadow:var(--shadow2); border-radius:var(--radius);
    }
    .hero-main{padding:34px}
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px; padding:8px 12px;
      background:#eef7ff; color:#1163b4; border:1px solid #d6e9ff; border-radius:999px;
      font-size:13px; font-weight:700;
    }
    h1{margin:16px 0 14px; font-size:clamp(32px, 5vw, 54px); line-height:1.08; letter-spacing:-.02em}
    .hero p{margin:0; color:var(--muted); font-size:16px}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin:22px 0 18px}
    .hero-points{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; margin-top:20px}
    .mini{
      padding:14px 14px 12px; border-radius:16px; background:linear-gradient(180deg,#fff, #f5fbff);
      border:1px solid var(--line)
    }
    .mini b{display:block; font-size:18px}
    .mini span{font-size:13px; color:var(--muted)}
    .hero-side{padding:20px; display:grid; gap:14px}
    .hero-side .stat{
      padding:18px; border-radius:18px; background:linear-gradient(135deg,#f4f9ff,#effcff);
      border:1px solid #d8ebff
    }
    .stat strong{display:block; font-size:28px; line-height:1}
    .stat span{color:var(--muted); font-size:13px}
    .badge-row{display:flex; flex-wrap:wrap; gap:8px}
    .tag{
      display:inline-flex; align-items:center; border-radius:999px; padding:8px 12px;
      background:#f3f8fc; color:#345066; border:1px solid var(--line); font-size:13px
    }
    section{padding:20px 0}
    .section-head{display:flex; justify-content:space-between; align-items:end; gap:16px; margin-bottom:14px}
    .section-head h2{margin:0; font-size:26px}
    .section-head p{margin:0; color:var(--muted)}
    .grid-4{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
    .grid-3{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px}
    .grid-2{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}
    .card{padding:20px}
    .card h3{margin:10px 0 8px; font-size:18px}
    .card p,.card li{color:var(--muted)}
    .icon{
      width:44px; height:44px; border-radius:14px; display:grid; place-items:center;
      background:linear-gradient(135deg,#eaf4ff,#f7fbff); border:1px solid #dbe8f3; color:var(--brand); font-weight:800
    }
    .steps{counter-reset:step}
    .step{
      padding:18px; border-radius:18px; background:linear-gradient(180deg,#fff,#f8fbff);
      border:1px solid var(--line); position:relative
    }
    .step::before{
      counter-increment:step; content:counter(step);
      position:absolute; top:16px; right:16px; width:32px; height:32px; border-radius:999px;
      display:grid; place-items:center; background:#e9f5ff; color:#1368b9; font-weight:800
    }
    .table-wrap{overflow:auto}
    table{width:100%; border-collapse:separate; border-spacing:0; min-width:860px; background:#fff}
    th,td{padding:14px 14px; text-align:left; border-bottom:1px solid var(--line); vertical-align:top}
    th{background:#f5faff; color:#24445c}
    tr:hover td{background:#fbfdff}
    .rating{color:#d97706; font-weight:800}
    .faq-item{overflow:hidden}
    .faq-q{
      width:100%; background:none; border:0; padding:18px 20px; display:flex; align-items:center; justify-content:space-between;
      font:inherit; font-weight:700; color:var(--text); cursor:pointer; text-align:left
    }
    .faq-a{max-height:0; overflow:hidden; transition:max-height .28s ease; padding:0 20px}
    .faq-item.open .faq-a{max-height:180px; padding-bottom:18px}
    .faq-item.open .faq-q svg{transform:rotate(180deg)}
    .faq-q svg{transition:.22s ease}
    .review{display:flex; gap:14px; align-items:flex-start}
    .avatar{
      width:44px; height:44px; border-radius:14px; background:linear-gradient(135deg,#dff0ff,#effaf8);
      border:1px solid var(--line); flex:0 0 auto
    }
    .article-list{display:grid; gap:12px}
    .article-item{
      padding:16px 18px; border-radius:16px; background:#fff; border:1px solid var(--line);
      display:flex; justify-content:space-between; gap:12px; align-items:center
    }
    .article-item small{color:var(--muted)}
    .form-wrap{padding:22px}
    form{display:grid; gap:14px}
    .form-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}
    label{display:block; font-size:14px; margin-bottom:6px; color:#29485f; font-weight:700}
    input,select,textarea{
      width:100%; border:1px solid var(--line); border-radius:14px; padding:13px 14px; background:#fff; color:var(--text);
      font:inherit; outline:none; transition:border-color .2s, box-shadow .2s;
    }
    input:focus,select:focus,textarea:focus{border-color:#8cc4ff; box-shadow:0 0 0 4px rgba(22,119,255,.10)}
    textarea{min-height:120px; resize:vertical}
    .footer-top{
      display:grid; grid-template-columns:1.1fr .9fr; gap:14px; align-items:start
    }
    footer{
      margin-top:10px; padding:18px 0 24px; background:#f2f8fd; border-top:1px solid var(--line); color:#29485f
    }
    footer a{color:#155ea8}
    .footnote{font-size:13px; color:var(--muted)}
    .float{
      position:fixed; right:16px; bottom:16px; z-index:60; display:grid; gap:10px
    }
    .float a, .float button{
      width:52px; height:52px; border-radius:18px; border:1px solid var(--line); background:#fff; box-shadow:var(--shadow2);
      display:grid; place-items:center; color:var(--text); cursor:pointer
    }
    .backtop{opacity:0; pointer-events:none; transform:translateY(8px); transition:.25s ease}
    .backtop.show{opacity:1; pointer-events:auto; transform:translateY(0)}
    .panel{padding:20px}
    .timeline{padding:20px}
    .timeline ul{margin:0; padding:0; list-style:none; display:grid; gap:12px}
    .timeline li{display:flex; gap:12px; align-items:flex-start}
    .dot{width:12px; height:12px; border-radius:50%; margin-top:7px; background:linear-gradient(135deg,var(--brand),var(--accent))}
    .compare{padding:20px}
    .compare .grid-2 .card{background:linear-gradient(180deg,#fff,#f6fbff)}
    .network{padding:20px}
    .tag-cloud{padding:18px; display:flex; flex-wrap:wrap; gap:10px}
    .small{font-size:13px;color:var(--muted)}
    .subtle{color:#40607a}
    .kpi{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px}
    .kpi .card{padding:16px}
    .maplike{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px}
    .maplike .card{padding:16px}
    .images-row{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px}
    .images-row img{width:100%; border-radius:16px; border:1px solid var(--line); background:#fff; object-fit:cover}
    .mobile-only{display:none}
    @media (max-width: 980px){
      .hero-grid,.grid-4,.grid-3,.grid-2,.footer-top,.kpi,.maplike,.form-grid,.hero-points,.images-row{grid-template-columns:1fr 1fr}
      .hero-grid{grid-template-columns:1fr}
      .nav-links{display:none}
      .menu-toggle{display:inline-flex}
    }
    @media (max-width: 720px){
      .container{width:min(var(--container), calc(100% - 24px))}
      .hero-main{padding:24px}
      .section-head{flex-direction:column; align-items:flex-start}
      .grid-4,.grid-3,.grid-2,.footer-top,.kpi,.maplike,.form-grid,.hero-points,.images-row{grid-template-columns:1fr}
      .nav-actions .btn-outline{display:none}
      .mobile-only{display:block}
      .nav-panel{display:none; padding:0 0 14px}
      .nav-panel.open{display:block}
      .nav-panel .nav-links{display:grid; gap:10px; padding:12px 0 14px}
      .nav-panel .nav-links a{padding:10px 0; border-bottom:1px solid var(--line)}
    }
    .reveal{opacity:0; transform:translateY(18px); transition:.5s ease}
    .reveal.show{opacity:1; transform:none}