:root{
      --bg:#f7f5fb;
      --bg2:#fff7ef;
      --card:#ffffff;
      --text:#1f2430;
      --muted:#5f6778;
      --line:#e7e1ef;
      --brand:#6d4cff;
      --brand2:#ff5d73;
      --brand3:#ffb347;
      --shadow:0 16px 40px rgba(35,29,67,.10);
      --radius:22px;
      --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(109,76,255,.12), transparent 28%),
        radial-gradient(circle at top right, rgba(255,93,115,.10), transparent 25%),
        linear-gradient(180deg, var(--bg), #fff 26%, #fff8f2 100%);
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(100% - 32px, var(--container)); margin:0 auto}
    header{
      position:sticky;top:0;z-index:30;
      backdrop-filter: blur(12px);
      background: rgba(247,245,251,.86);
      border-bottom:1px solid rgba(231,225,239,.85);
    }
    .nav{
      display:flex;align-items:center;justify-content:space-between;gap:16px;
      min-height:72px;padding:10px 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;box-shadow:0 8px 18px rgba(0,0,0,.06)}
    .brand strong{display:block;font-size:18px;line-height:1.1}
    .brand span{display:block;font-size:12px;color:var(--muted);margin-top:2px}
    .nav-links{
      display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end;
      font-size:14px;color:#394052;
    }
    .nav-links a{padding:8px 10px;border-radius:999px;transition:.2s ease}
    .nav-links a:hover,.nav-links a.active{background:#efe9ff;color:#4a2fd0}
    .nav-cta{display:flex;align-items:center;gap:10px}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      border:1px solid transparent;border-radius:14px;padding:12px 18px;
      font-weight:700;transition:.2s ease;cursor:pointer;white-space:nowrap;
    }
    .btn-primary{background:linear-gradient(135deg,var(--brand),#4d7dff);color:#fff;box-shadow:0 12px 28px rgba(109,76,255,.25)}
    .btn-primary:hover{transform:translateY(-1px);filter:saturate(1.05)}
    .btn-ghost{background:#fff;border-color:var(--line);color:var(--text)}
    .btn-ghost:hover{border-color:#d5c6ff;box-shadow:0 10px 22px rgba(109,76,255,.08)}
    .menu-btn{display:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
    .hero{padding:42px 0 14px}
    .hero-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:24px;align-items:stretch}
    .hero-copy{
      background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,255,255,.88));
      border:1px solid rgba(231,225,239,.9);border-radius:30px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden;
    }
    .hero-copy::before,.hero-copy::after{
      content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(2px)
    }
    .hero-copy::before{width:220px;height:220px;background:rgba(109,76,255,.08);right:-70px;top:-70px}
    .hero-copy::after{width:180px;height:180px;background:rgba(255,93,115,.08);left:-50px;bottom:-70px}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;background:#f1ecff;color:#5b37d1;border:1px solid #e2d8ff;padding:7px 12px;border-radius:999px;font-size:13px;font-weight:700}
    h1{margin:16px 0 14px;font-size:clamp(32px,5vw,54px);line-height:1.06;letter-spacing:-.02em}
    .lead{margin:0;color:var(--muted);font-size:17px;line-height:1.8;max-width:62ch}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
    .hero-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}
    .mini{
      background:linear-gradient(180deg,#fff,#faf8ff);border:1px solid var(--line);border-radius:18px;padding:16px;min-height:98px;
    }
    .mini b{display:block;font-size:18px}
    .mini span{display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:7px}
    .hero-side{display:grid;gap:16px}
    .stats{
      display:grid;grid-template-columns:repeat(2,1fr);gap:14px;
    }
    .stat{
      background:linear-gradient(135deg,#fff, #fff6f7);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 10px 24px rgba(35,29,67,.06)
    }
    .stat strong{display:block;font-size:28px;color:#22243a}
    .stat span{display:block;color:var(--muted);font-size:13px;margin-top:6px;line-height:1.5}
    .promo{
      border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#1f2430,#3e2c7f 55%,#ff5d73);color:#fff;padding:24px;box-shadow:var(--shadow)
    }
    .promo p{margin:10px 0 0;color:rgba(255,255,255,.86);line-height:1.7}
    .promo .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
    .chip{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);font-size:12px}
    section{padding:24px 0}
    .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}
    .section-head h2{margin:0;font-size:28px;line-height:1.15}
    .section-head p{margin:0;color:var(--muted);max-width:62ch;line-height:1.7}
    .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
    .grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
    .card{
      background:rgba(255,255,255,.92);
      border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 10px 26px rgba(35,29,67,.05);
      transition:.24s ease;
    }
    .card:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(35,29,67,.08)}
    .icon{
      width:46px;height:46px;border-radius:16px;display:grid;place-items:center;
      background:linear-gradient(135deg,#f0ebff,#ffe9ef);color:#4e2fd0;font-weight:900;margin-bottom:14px
    }
    .card h3{margin:0 0 8px;font-size:18px}
    .card p,.card li{color:var(--muted);line-height:1.75}
    .card ul{margin:0;padding-left:18px}
    .flow{counter-reset:step}
    .flow .card{position:relative;padding-top:20px}
    .flow .card::before{
      counter-increment:step;content:"0" counter(step);position:absolute;right:18px;top:18px;
      font-size:14px;font-weight:800;color:#a88cff;background:#f5f0ff;border-radius:999px;padding:6px 10px;border:1px solid #e5dbff
    }
    .table-wrap{overflow:auto;border-radius:24px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow)}
    table{width:100%;border-collapse:collapse;min-width:760px}
    th,td{padding:16px 18px;border-bottom:1px solid #f0ebf5;text-align:left;vertical-align:top}
    th{background:#faf7ff;font-size:14px;color:#2a3040}
    td{color:var(--muted);line-height:1.7}
    .rating{
      display:grid;gap:14px;align-content:start
    }
    .score{
      background:linear-gradient(135deg,#fff,#fff5ea);border:1px solid #ffe2bf;border-radius:24px;padding:20px
    }
    .score strong{display:block;font-size:42px;line-height:1;color:#d96d00}
    .score span{display:block;margin-top:8px;color:var(--muted)}
    details{
      background:#fff;border:1px solid var(--line);border-radius:18px;padding:0 18px;box-shadow:0 8px 20px rgba(35,29,67,.04)
    }
    details+details{margin-top:12px}
    summary{
      list-style:none;cursor:pointer;padding:18px 0;font-weight:700;color:#23283a;display:flex;justify-content:space-between;gap:16px
    }
    summary::-webkit-details-marker{display:none}
    summary::after{content:"+";color:#8b6cff;font-size:24px;line-height:1}
    details[open] summary::after{content:"–"}
    details .detail{padding:0 0 18px;color:var(--muted);line-height:1.75}
    .review{
      display:flex;flex-direction:column;gap:14px;height:100%
    }
    .review .meta{display:flex;align-items:center;justify-content:space-between;gap:12px}
    .avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#6d4cff,#ff5d73);color:#fff;font-weight:800}
    .stars{color:#ff9f1c;font-weight:900;letter-spacing:1px}
    .tagcloud{display:flex;flex-wrap:wrap;gap:10px}
    .tag{
      padding:9px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);color:#3a4154;font-size:13px
    }
    .gallery{
      display:grid;grid-template-columns:repeat(3,1fr);gap:16px
    }
    .gallery img{width:100%;border-radius:22px;aspect-ratio: 4 / 3;object-fit:cover;border:1px solid var(--line);box-shadow:var(--shadow)}
    .article-list{display:grid;gap:12px}
    .article{
      display:flex;justify-content:space-between;gap:16px;align-items:flex-start;
      padding:16px 18px;border-radius:18px;border:1px solid var(--line);background:#fff
    }
    .article b{display:block;margin-bottom:6px}
    .article span{color:var(--muted);line-height:1.6;font-size:14px}
    .article em{font-style:normal;color:#815cff;white-space:nowrap}
    .form{
      display:grid;grid-template-columns:repeat(2,1fr);gap:14px
    }
    .field{display:flex;flex-direction:column;gap:8px}
    .field.full{grid-column:1/-1}
    label{font-weight:700;font-size:14px;color:#2a3040}
    input,select,textarea{
      width:100%;border:1px solid #dcd5ea;border-radius:14px;background:#fff;padding:13px 14px;font:inherit;color:var(--text);outline:none;transition:.2s ease
    }
    textarea{min-height:120px;resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:#9b7dff;box-shadow:0 0 0 4px rgba(109,76,255,.10)}
    .submit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
    .note{color:var(--muted);font-size:13px;line-height:1.6}
    .footer{
      margin-top:10px;padding:22px 0 30px;border-top:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(247,245,251,.96));
      color:#2a3040
    }
    .footer-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:18px}
    .footer a{color:#3d2dd7}
    .footer small,.footer p{color:#5d6474;line-height:1.75}
    .foot-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:14px;margin-top:16px;border-top:1px solid var(--line)}
    .mobile-toggle{display:none}
    .float-contact{
      position:fixed;right:18px;bottom:18px;z-index:40;display:grid;gap:10px
    }
    .float-contact a,.backtop{
      width:52px;height:52px;border-radius:18px;display:grid;place-items:center;
      background:linear-gradient(135deg,#6d4cff,#ff5d73);color:#fff;box-shadow:0 16px 28px rgba(109,76,255,.24);border:none;cursor:pointer
    }
    .backtop{opacity:0;pointer-events:none;transform:translateY(10px);transition:.2s ease}
    .backtop.show{opacity:1;pointer-events:auto;transform:none}
    .reveal{opacity:0;transform:translateY(18px);transition:.7s ease}
    .reveal.show{opacity:1;transform:none}
    .breadcrumb{display:flex;flex-wrap:wrap;gap:8px;color:#5f6778;font-size:13px;margin-bottom:14px}
    .breadcrumb a{color:#5b37d1}
    .inline-banner{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
    .inline-banner .banner{
      border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#fff
    }
    .inline-banner img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
    .service-net{
      display:grid;grid-template-columns:repeat(4,1fr);gap:14px
    }
    .service-net .card{min-height:160px}
    .timeline{display:grid;gap:12px}
    .timeline .titem{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:#fff}
    .timeline .dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,#6d4cff,#ff5d73);margin-top:6px;box-shadow:0 0 0 6px rgba(109,76,255,.10)}
    @media (max-width: 980px){
      .hero-grid,.grid-4,.grid-3,.grid-2,.footer-grid,.service-net,.gallery,.inline-banner{grid-template-columns:1fr}
      .stats{grid-template-columns:repeat(2,1fr)}
      .nav-links,.nav-cta .btn-ghost{display:none}
      .menu-btn{display:inline-flex}
      .mobile-toggle{display:block}
      .nav{position:relative}
      .nav-links.open{
        display:flex;position:absolute;left:0;right:0;top:72px;padding:14px;background:rgba(255,255,255,.98);
        border-bottom:1px solid var(--line);box-shadow:0 16px 28px rgba(35,29,67,.08);justify-content:flex-start
      }
      .hero-copy{padding:24px}
      .section-head{align-items:flex-start;flex-direction:column}
    }
    @media (max-width: 640px){
      .container{width:min(100% - 20px, var(--container))}
      .hero{padding-top:20px}
      .hero-highlights,.stats,.form{grid-template-columns:1fr}
      .card,.hero-copy,.promo{border-radius:22px}
      .article{flex-direction:column}
      h1{font-size:31px}
      .section-head h2{font-size:24px}
      .nav{min-height:66px}
      .brand span{display:none}
    }