:root{
      --bg:#f6f2ff;
      --bg2:#ffffff;
      --panel:#ffffff;
      --text:#1f2230;
      --muted:#5c6073;
      --line:#e6ddff;
      --primary:#7b4dff;
      --primary2:#b45cff;
      --primary3:#5d78ff;
      --accent:#ff7ad9;
      --shadow:0 18px 50px rgba(91, 52, 179, .12);
      --radius:20px;
      --radius-sm:14px;
      --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 top left, rgba(180,92,255,.14), transparent 34%),
        radial-gradient(circle at top right, rgba(93,120,255,.14), transparent 26%),
        linear-gradient(180deg, #fbf8ff 0%, #f6f2ff 42%, #f8f7ff 100%);
      line-height:1.7;
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(var(--container), calc(100% - 32px)); margin:0 auto}
    .site-header{
      position:sticky; top:0; z-index:50;
      backdrop-filter: blur(18px);
      background:rgba(250,247,255,.78);
      border-bottom:1px solid rgba(123,77,255,.12);
    }
    .topbar{
      display:flex; align-items:center; justify-content:space-between; gap:18px;
      padding:14px 0;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand img{width:44px; height:44px; object-fit:contain; border-radius:12px; background:#fff; box-shadow:0 8px 20px rgba(123,77,255,.12)}
    .brand strong{display:block; font-size:18px; line-height:1.15}
    .brand span{display:block; font-size:12px; color:var(--muted)}
    .nav-toggle{display:none}
    .nav{
      display:flex; align-items:center; gap:14px; flex-wrap:wrap; justify-content:flex-end;
    }
    .nav a{
      font-size:14px; color:#30354a; padding:8px 10px; border-radius:999px;
      transition:.2s ease;
    }
    .nav a:hover,.nav a:focus{background:rgba(123,77,255,.10); color:var(--primary)}
    .btn, .btn-outline{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      padding:12px 18px; border-radius:999px; border:1px solid transparent;
      font-weight:700; transition:.2s ease; cursor:pointer; white-space:nowrap;
    }
    .btn{background:linear-gradient(135deg,var(--primary),var(--primary2)); color:#fff; box-shadow:0 14px 30px rgba(123,77,255,.22)}
    .btn:hover{transform:translateY(-1px); box-shadow:0 18px 34px rgba(123,77,255,.28)}
    .btn-outline{background:#fff; color:var(--primary); border-color:rgba(123,77,255,.24)}
    .btn-outline:hover{transform:translateY(-1px); border-color:var(--primary)}
    .hero{
      padding:28px 0 20px;
      overflow:hidden;
    }
    .hero-inner{
      display:grid; grid-template-columns:1.2fr .8fr; gap:22px; align-items:stretch;
      background:
        linear-gradient(135deg, rgba(123,77,255,.10), rgba(180,92,255,.06) 44%, rgba(255,122,217,.08)),
        rgba(255,255,255,.72);
      border:1px solid rgba(123,77,255,.14);
      border-radius:28px;
      box-shadow:var(--shadow);
      padding:28px;
      position:relative;
    }
    .hero-inner:before,.hero-inner:after{
      content:""; position:absolute; border-radius:999px; pointer-events:none;
      background:linear-gradient(135deg, rgba(123,77,255,.16), rgba(255,122,217,.14));
      filter:blur(4px);
      animation:float 8s ease-in-out infinite;
    }
    .hero-inner:before{width:180px;height:180px; right:-48px; top:-48px}
    .hero-inner:after{width:120px;height:120px; left:42%; bottom:-30px; animation-delay:-3s}
    @keyframes float{50%{transform:translateY(10px)}}
    .hero h1{margin:0 0 14px; font-size:clamp(30px, 4vw, 54px); line-height:1.08; letter-spacing:-.02em}
    .hero p{margin:0 0 18px; color:var(--muted); font-size:16px; max-width:54ch}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin:20px 0 18px}
    .hero-badges{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px}
    .badge{
      padding:8px 12px; border-radius:999px; background:#fff; border:1px solid rgba(123,77,255,.15);
      color:#433a63; font-size:13px;
    }
    .hero-card{
      display:flex; flex-direction:column; gap:14px;
      background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(247,242,255,.95));
      border:1px solid rgba(123,77,255,.14);
      border-radius:24px; padding:18px;
      position:relative;
    }
    .mini-stats{display:grid; grid-template-columns:repeat(2,1fr); gap:12px}
    .mini-stats .stat{
      padding:14px; background:#fff; border-radius:18px; border:1px solid rgba(123,77,255,.12);
    }
    .stat b{display:block; font-size:20px; color:var(--primary)}
    .stat span{font-size:13px; color:var(--muted)}
    .hero-side{
      display:grid; gap:12px; grid-template-columns:1fr;
    }
    .contact-box{
      padding:16px; border-radius:18px; background:#fff; border:1px solid rgba(123,77,255,.12);
    }
    .contact-box h3{margin:0 0 10px; font-size:16px}
    .contact-list{display:grid; gap:8px; color:#3b4058; font-size:14px}
    .contact-list a{color:var(--primary)}
    .section{padding:18px 0}
    .section-head{
      display:flex; align-items:end; justify-content:space-between; gap:18px; margin:8px 0 14px;
    }
    .section-head h2{margin:0; font-size:26px; line-height:1.2}
    .section-head p{margin:0; color:var(--muted); max-width:60ch}
    .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
    .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:14px}
    .grid-2{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    .card{
      background:rgba(255,255,255,.88);
      border:1px solid rgba(123,77,255,.12);
      border-radius:var(--radius);
      box-shadow:0 12px 34px rgba(81,48,155,.08);
      padding:18px;
      transition:.22s ease;
    }
    .card:hover{transform:translateY(-3px); box-shadow:0 18px 44px rgba(81,48,155,.12)}
    .metric{min-height:132px}
    .metric .k{font-size:28px; font-weight:800; color:var(--primary); line-height:1}
    .metric .t{margin-top:8px; font-weight:700}
    .metric .d{margin-top:6px; color:var(--muted); font-size:14px}
    .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .tag-cloud span{
      padding:9px 12px; border-radius:999px; background:linear-gradient(135deg,#fff, #f6f1ff);
      border:1px solid rgba(123,77,255,.12); font-size:13px; color:#3a4057;
    }
    .feature h3,.case h3,.review h3,.step h3{margin:0 0 8px; font-size:18px}
    .feature p,.case p,.review p,.step p,.faq-answer,.article p{margin:0; color:var(--muted)}
    .split{
      display:grid; grid-template-columns:1.05fr .95fr; gap:14px;
    }
    .panel{
      background:rgba(255,255,255,.88);
      border:1px solid rgba(123,77,255,.12);
      border-radius:24px;
      padding:18px;
    }
    .timeline{display:grid; gap:12px}
    .time-item{
      display:grid; grid-template-columns:86px 1fr; gap:14px; align-items:start;
      padding:14px; border-radius:18px; background:#fff; border:1px solid rgba(123,77,255,.10)
    }
    .time-item b{color:var(--primary)}
    .compare-table{width:100%; border-collapse:collapse; overflow:hidden; border-radius:18px}
    .compare-wrap{overflow:auto; border-radius:18px; border:1px solid rgba(123,77,255,.12); background:#fff}
    .compare-table th,.compare-table td{
      padding:14px 12px; text-align:left; border-bottom:1px solid #efe7ff; white-space:nowrap; font-size:14px;
    }
    .compare-table th{background:linear-gradient(135deg,#f6f1ff,#fff); color:#2c3042}
    .compare-table tr:last-child td{border-bottom:none}
    .pill{display:inline-flex; align-items:center; gap:6px; padding:7px 10px; border-radius:999px; background:#f4edff; color:var(--primary); font-weight:700; font-size:13px}
    .rating{
      display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:8px
    }
    .stars{color:#ffb400; letter-spacing:2px}
    .faq details{
      background:#fff; border:1px solid rgba(123,77,255,.12); border-radius:16px; padding:14px 16px;
    }
    .faq details + details{margin-top:12px}
    .faq summary{cursor:pointer; list-style:none; font-weight:700}
    .faq summary::-webkit-details-marker{display:none}
    .faq .faq-answer{padding-top:10px}
    .form{
      display:grid; gap:12px;
    }
    .form-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px}
    input, select, textarea{
      width:100%; border:1px solid #dccfff; background:#fff; color:var(--text);
      border-radius:14px; padding:13px 14px; font:inherit; outline:none;
      transition:.2s ease;
    }
    textarea{min-height:126px; resize:vertical}
    input:focus, select:focus, textarea:focus{border-color:var(--primary); box-shadow:0 0 0 4px rgba(123,77,255,.10)}
    .footer{
      margin-top:12px;
      padding:22px 0 92px;
      border-top:1px solid rgba(123,77,255,.12);
      background:linear-gradient(180deg, rgba(255,255,255,.55), rgba(245,239,255,.92));
      color:#2a2f43;
    }
    .footer a{color:var(--primary)}
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr .9fr; gap:16px}
    .footer small,.footer p{color:#5d6275}
    .footer-links{display:flex; flex-wrap:wrap; gap:10px}
    .footer-links a{padding:7px 10px; border-radius:999px; background:#fff; border:1px solid rgba(123,77,255,.12)}
    .floating{
      position:fixed; right:16px; bottom:16px; z-index:60; display:grid; gap:10px;
    }
    .floating a,.floating button{
      width:52px; height:52px; border:none; border-radius:50%;
      display:grid; place-items:center; background:linear-gradient(135deg,var(--primary),var(--primary2));
      color:#fff; box-shadow:0 16px 30px rgba(123,77,255,.24); cursor:pointer;
    }
    .wechat-card{
      display:grid; grid-template-columns:110px 1fr; gap:14px; align-items:center;
    }
    .wechat-card img{width:110px; height:110px; object-fit:cover; border-radius:14px; border:1px solid #e8defe}
    .articles{display:grid; gap:12px}
    .article{padding:16px; border-radius:18px; background:#fff; border:1px solid rgba(123,77,255,.12)}
    .article h3{margin:0 0 6px; font-size:17px}
    .center-note{
      padding:16px 18px; border-radius:18px; background:linear-gradient(135deg, rgba(123,77,255,.08), rgba(255,122,217,.06));
      border:1px dashed rgba(123,77,255,.22); color:#3b4058;
    }
    .image-strip{display:grid; gap:12px; grid-template-columns:repeat(3,1fr)}
    .image-strip img{border-radius:18px; border:1px solid rgba(123,77,255,.12); box-shadow:0 12px 24px rgba(81,48,155,.08)}
    .mobile-only{display:none}
    .scroll-reveal{opacity:0; transform:translateY(14px); transition:.6s ease}
    .scroll-reveal.in{opacity:1; transform:none}
    @media (max-width: 1024px){
      .grid-4,.grid-3,.footer-grid,.split,.hero-inner,.grid-2{grid-template-columns:1fr}
      .section-head{align-items:start; flex-direction:column}
      .nav{display:none}
      .nav-toggle{display:inline-flex; margin-left:auto}
      .nav.open{
        display:flex; position:absolute; left:16px; right:16px; top:72px; padding:14px;
        background:#fff; border:1px solid rgba(123,77,255,.12); border-radius:18px; box-shadow:var(--shadow)
      }
      .form-grid,.image-strip{grid-template-columns:1fr}
      .mobile-only{display:block}
    }
    .service-list{display:grid; gap:10px}
    .service-item{
      display:flex; gap:12px; align-items:flex-start; padding:14px; background:#fff;
      border:1px solid rgba(123,77,255,.10); border-radius:18px
    }
    .dot{width:12px;height:12px;border-radius:50%; background:linear-gradient(135deg,var(--primary),var(--accent)); margin-top:6px; flex:0 0 auto}
    .price-list{display:grid; gap:12px}
    .price-item{padding:16px; border-radius:18px; background:#fff; border:1px solid rgba(123,77,255,.12)}
    .price-item b{display:block; color:var(--primary); font-size:20px}
    .qa-title{display:flex; align-items:center; justify-content:space-between; gap:10px}
    .note-link{color:var(--primary); font-weight:700}