:root{
      --bg:#f6f8fb;
      --panel:#ffffff;
      --panel-2:#eef5ff;
      --line:#dbe5f2;
      --text:#172033;
      --muted:#5e6b84;
      --brand:#2169f3;
      --brand-2:#14b8a6;
      --accent:#ffb547;
      --shadow:0 18px 50px rgba(24, 44, 88, .10);
      --shadow-soft:0 10px 26px rgba(24, 44, 88, .08);
      --radius:22px;
      --radius-sm:16px;
      --max: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",sans-serif;
      background:
        radial-gradient(circle at top left, rgba(33,105,243,.10), transparent 28%),
        radial-gradient(circle at top right, rgba(20,184,166,.10), transparent 26%),
        linear-gradient(180deg, #ffffff 0%, #f6f8fb 42%, #f3f7ff 100%);
      color:var(--text);
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(var(--max), calc(100% - 32px)); margin:0 auto}
    .site-header{
      position:sticky; top:0; z-index:50;
      backdrop-filter:blur(18px);
      background:rgba(246,248,251,.78);
      border-bottom:1px solid rgba(219,229,242,.8);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      min-height:76px;
    }
    .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; box-shadow:0 6px 18px rgba(33,105,243,.12)}
    .brand h1,.brand .site-name{font-size:1rem; line-height:1.15; margin:0; font-weight:800; letter-spacing:.2px}
    .brand span{display:block; font-size:.78rem; color:var(--muted); font-weight:500; margin-top:3px}
    .nav-toggle{display:none; border:1px solid var(--line); background:#fff; color:var(--text); width:44px; height:44px; border-radius:14px}
    .menu{display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:flex-end}
    .menu a{font-size:.95rem; color:#314160; padding:10px 2px; position:relative}
    .menu a::after{content:""; position:absolute; left:0; bottom:5px; width:0; height:2px; background:linear-gradient(90deg,var(--brand),var(--brand-2)); transition:.25s}
    .menu a:hover::after,.menu a:focus::after{width:100%}
    .top-cta{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      padding:12px 16px; border-radius:14px;
      background:linear-gradient(135deg,var(--brand),#2c87ff);
      color:#fff; font-weight:700; box-shadow:0 12px 24px rgba(33,105,243,.22);
      transition:.25s transform,.25s box-shadow;
      white-space:nowrap;
    }
    .top-cta:hover{transform:translateY(-1px); box-shadow:0 16px 30px rgba(33,105,243,.28)}
    .hero{padding:28px 0 20px}
    .hero-grid{
      display:grid; grid-template-columns:1.15fr .85fr; gap:22px; align-items:stretch;
    }
    .hero-main,.hero-side,.card,.panel,.faq-item,.quote,.form-box,.article-item,.timeline-item{
      background:rgba(255,255,255,.86);
      border:1px solid rgba(219,229,242,.9);
      border-radius:var(--radius);
      box-shadow:var(--shadow-soft);
    }
    .hero-main{
      padding:34px;
      position:relative; overflow:hidden;
      background:
        linear-gradient(135deg, rgba(33,105,243,.07), rgba(20,184,166,.06)),
        rgba(255,255,255,.90);
    }
    .hero-main::before,.hero-main::after{
      content:""; position:absolute; border-radius:50%; filter:blur(4px); pointer-events:none;
    }
    .hero-main::before{width:240px;height:240px; right:-80px; top:-90px; background:radial-gradient(circle, rgba(33,105,243,.16), transparent 65%)}
    .hero-main::after{width:190px;height:190px; right:56px; bottom:-90px; background:radial-gradient(circle, rgba(20,184,166,.16), transparent 64%)}
    .eyebrow{display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; background:#eef5ff; color:#2457d6; font-weight:700; font-size:.9rem}
    .hero h2{font-size:clamp(2rem, 4vw, 3.45rem); line-height:1.12; margin:18px 0 14px}
    .hero p{margin:0; color:var(--muted); line-height:1.82; font-size:1.02rem}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:24px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      padding:13px 18px; border-radius:14px; border:1px solid transparent;
      font-weight:700; transition:.25s transform,.25s box-shadow,.25s background;
    }
    .btn-primary{background:linear-gradient(135deg,var(--brand),#2c87ff); color:#fff; box-shadow:0 14px 30px rgba(33,105,243,.22)}
    .btn-secondary{background:#fff; color:var(--text); border-color:var(--line)}
    .btn:hover{transform:translateY(-1px)}
    .hero-stats{
      display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:26px;
    }
    .stat{
      background:rgba(255,255,255,.82); border:1px solid rgba(219,229,242,.9);
      border-radius:18px; padding:16px;
    }
    .stat strong{display:block; font-size:1.35rem}
    .stat span{display:block; margin-top:6px; color:var(--muted); font-size:.92rem; line-height:1.5}
    .hero-side{padding:20px; display:grid; gap:14px; align-content:start}
    .side-banner{
      border-radius:20px; padding:18px; background:linear-gradient(135deg,#0f172a,#1d4ed8 55%,#14b8a6);
      color:#fff; overflow:hidden; position:relative;
    }
    .side-banner h3{margin:0 0 8px; font-size:1.15rem}
    .side-banner p{margin:0; opacity:.92; line-height:1.7; font-size:.95rem}
    .side-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px}
    .mini{
      background:#fff; border:1px solid var(--line); border-radius:18px; padding:14px;
    }
    .mini b{display:block; font-size:1.02rem}
    .mini span{display:block; margin-top:6px; color:var(--muted); font-size:.9rem; line-height:1.45}
    section{padding:18px 0}
    .section-head{
      display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:16px
    }
    .section-head h2{margin:0; font-size:1.7rem}
    .section-head p{margin:0; color:var(--muted); line-height:1.7; max-width:760px}
    .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
    .card{padding:20px}
    .card h3{margin:12px 0 10px; font-size:1.06rem}
    .card p,.card li{color:var(--muted); line-height:1.7}
    .icon{
      width:46px;height:46px;border-radius:14px;display:grid;place-items:center;
      background:linear-gradient(135deg, rgba(33,105,243,.12), rgba(20,184,166,.12));
      color:var(--brand); font-weight:900;
    }
    .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .tag{padding:9px 12px; background:#fff; border:1px solid var(--line); border-radius:999px; color:#314160; font-size:.92rem}
    .process{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
    .step{padding:20px; position:relative}
    .step .num{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eff6ff;color:#1d4ed8;font-weight:800}
    .step::after{content:""; position:absolute; right:-10px; top:32px; width:20px; height:2px; background:linear-gradient(90deg,var(--brand),transparent)}
    .step:last-child::after{display:none}
    .compare-wrap{overflow:auto; border-radius:var(--radius); border:1px solid var(--line); background:#fff; box-shadow:var(--shadow-soft)}
    table{width:100%; border-collapse:collapse; min-width:860px}
    th,td{padding:15px 16px; border-bottom:1px solid #edf2f8; text-align:left; vertical-align:top}
    th{background:#f5f9ff; color:#20314f; font-weight:800}
    td{color:var(--muted)}
    .badge{display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px; font-size:.85rem; font-weight:700}
    .good{background:#e8f9f4; color:#0f7b62}
    .warn{background:#fff4e5; color:#a86400}
    .strong{color:#143fca; font-weight:800}
    .review-grid,.article-grid,.faq-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .quote{padding:20px}
    .quote .who{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px}
    .quote p{margin:0; line-height:1.8; color:var(--muted)}
    .case-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:16px}
    .case-large{padding:22px}
    .case-list{display:grid; gap:12px}
    .case-item{padding:16px 18px; border:1px solid var(--line); border-radius:18px; background:#fff}
    .faq-item{overflow:hidden}
    .faq-q{
      width:100%; background:transparent; border:0; padding:18px 20px; color:var(--text);
      display:flex; align-items:center; justify-content:space-between; gap:14px; font-size:1rem; font-weight:700; cursor:pointer; text-align:left;
    }
    .faq-a{max-height:0; overflow:hidden; transition:max-height .28s ease; padding:0 20px}
    .faq-a p{margin:0 0 18px; color:var(--muted); line-height:1.75}
    .faq-item.active .faq-a{max-height:180px}
    .faq-item.active .chev{transform:rotate(180deg)}
    .chev{transition:.25s}
    .form-box{padding:22px}
    .form-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    label{display:block; font-size:.92rem; font-weight:700; margin-bottom:8px; color:#2a3650}
    input,select,textarea{
      width:100%; border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--text);
      padding:13px 14px; font:inherit; outline:none;
    }
    textarea{min-height:120px; resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:#7aa7ff; box-shadow:0 0 0 4px rgba(33,105,243,.10)}
    .form-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:16px}
    .notes{margin-top:14px; color:var(--muted); font-size:.92rem; line-height:1.7}
    .articles{display:grid; gap:12px}
    .article-item{
      padding:16px 18px; display:flex; align-items:center; justify-content:space-between; gap:14px;
    }
    .article-item span{color:var(--muted); font-size:.92rem}
    .foot-cta{
      display:grid; grid-template-columns:1.15fr .85fr; gap:16px; align-items:stretch;
    }
    .contact-box,.network-box,.price-box,.time-box{padding:22px}
    .contact-list{display:grid; gap:10px; margin-top:14px}
    .contact-row{display:flex; justify-content:space-between; gap:10px; padding:12px 0; border-bottom:1px dashed #e7edf7}
    .contact-row:last-child{border-bottom:0}
    .floating{
      position:fixed; right:18px; bottom:18px; z-index:60; display:grid; gap:10px;
    }
    .float-btn{
      width:52px; height:52px; border-radius:16px; display:grid; place-items:center; border:1px solid rgba(219,229,242,.9);
      background:#fff; box-shadow:var(--shadow-soft); color:var(--brand); font-weight:900;
    }
    .footer{
      margin-top:18px; padding:22px 0 28px; background:#0f172a; color:#d8e4ff;
    }
    .footer a{color:#fff}
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:18px; align-items:start}
    .footer small,.footer p{color:#aab8da; line-height:1.75}
    .footer-links{display:flex; flex-wrap:wrap; gap:12px}
    .footer-links a{padding:8px 10px; border-radius:999px; background:rgba(255,255,255,.08)}
    .muted{color:var(--muted)}
    .subtle{font-size:.92rem}
    .image-row{display:grid; grid-template-columns:repeat(2,1fr); gap:16px}
    .image-row img,.single-img img{border-radius:20px; border:1px solid var(--line); box-shadow:var(--shadow-soft)}
    .single-img{display:grid; gap:16px}
    .mobile-only{display:none}
    @media (max-width: 980px){
      .hero-grid,.case-grid,.foot-cta,.footer-grid,.grid-4,.grid-3,.review-grid,.article-grid,.faq-grid,.process,.grid-4{grid-template-columns:1fr}
      .hero-stats{grid-template-columns:1fr}
      .section-head{flex-direction:column; align-items:start}
      .step::after{display:none}
      .menu{display:none; width:100%; padding:0 0 16px}
      .menu.open{display:flex; flex-direction:column; align-items:flex-start; gap:6px}
      .nav{flex-wrap:wrap}
      .nav-toggle{display:inline-grid; place-items:center}
      .mobile-only{display:block}
      .image-row{grid-template-columns:1fr}
      table{min-width:760px}
      .form-grid{grid-template-columns:1fr}
    }