:root{
      --bg:#f7f3ff;
      --bg-2:#fffafc;
      --card:#ffffff;
      --text:#1f1933;
      --muted:#5f5a78;
      --line:#e8def7;
      --purple:#7c3aed;
      --purple-2:#a855f7;
      --purple-3:#d946ef;
      --pink:#ff4fd8;
      --blue:#5b8cff;
      --shadow:0 18px 40px rgba(91,56,157,.12);
      --shadow-2:0 12px 24px rgba(91,56,157,.14);
      --radius:22px;
      --radius-sm:16px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:Inter, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, -apple-system, sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 10% 10%, rgba(168,85,247,.14), transparent 24%),
        radial-gradient(circle at 90% 8%, rgba(217,70,239,.12), transparent 24%),
        linear-gradient(180deg, #fff 0%, var(--bg) 40%, #fff 100%);
      overflow-x:hidden;
    }
    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(14px);
      background:rgba(255,255,255,.78);
      border-bottom:1px solid rgba(232,222,247,.9);
    }
    .nav{
      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-mark{
      width:46px; height:46px; border-radius:14px;
      background:linear-gradient(135deg, var(--purple), var(--pink));
      box-shadow:0 12px 24px rgba(124,58,237,.28);
      display:grid; place-items:center; color:#fff; font-weight:800; letter-spacing:.06em;
      flex:0 0 auto;
    }
    .brand-text{min-width:0}
    .brand-text strong{display:block; font-size:17px; line-height:1.1}
    .brand-text 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;
    }
    .nav-links a{
      font-size:14px; color:#3d3556; padding:8px 10px; border-radius:10px;
      transition:.2s ease;
    }
    .nav-links a:hover,.nav-links a:focus-visible{background:#f0e8ff; color:var(--purple); outline:none}
    .nav-actions{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:999px;
      padding:12px 18px; font-weight:700; cursor:pointer;
      transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-1px); box-shadow:var(--shadow-2)}
    .btn-primary{background:linear-gradient(135deg, var(--purple), var(--pink)); color:#fff}
    .btn-ghost{background:#fff; border-color:#eadff9; color:var(--text)}
    .btn-sm{padding:10px 14px; font-size:14px}
    .menu-toggle{display:none; width:42px; height:42px; border-radius:12px; border:1px solid #eadff9; background:#fff}
    .menu-toggle span{display:block; width:18px; height:2px; background:#3d3556; margin:4px auto; border-radius:2px}
    .hero{
      position:relative;
      padding:42px 0 24px;
    }
    .hero-shell{
      border:1px solid rgba(232,222,247,.95);
      background:
        linear-gradient(135deg, rgba(124,58,237,.08), rgba(255,255,255,.92) 36%, rgba(255,79,216,.07)),
        linear-gradient(180deg, #fff, #fff);
      border-radius:30px;
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .hero-grid{
      display:grid; grid-template-columns:1.2fr .8fr; gap:24px;
      padding:34px;
      align-items:stretch;
    }
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px;
      padding:8px 12px; border-radius:999px;
      background:#f6edff; color:var(--purple); font-weight:700; font-size:13px;
    }
    h1{margin:16px 0 14px; font-size:clamp(32px, 4vw, 56px); line-height:1.08; letter-spacing:-.03em}
    .hero p{margin:0; color:var(--muted); font-size:16px; line-height:1.85}
    .hero-copy{display:flex; flex-direction:column; gap:18px}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:6px}
    .hero-points{
      display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px;
      margin-top:auto;
    }
    .mini-metric{
      background:#fff; border:1px solid #efe5fb; border-radius:18px; padding:16px;
      box-shadow:0 10px 20px rgba(72,40,118,.06);
    }
    .mini-metric strong{display:block; font-size:20px; margin-bottom:4px}
    .mini-metric span{display:block; color:var(--muted); font-size:13px; line-height:1.5}
    .hero-visual{
      background:linear-gradient(180deg, rgba(124,58,237,.08), rgba(255,255,255,.9));
      border:1px solid #f0e7fc;
      border-radius:24px;
      padding:20px;
      display:flex; flex-direction:column; gap:16px;
      position:relative;
    }
    .hero-visual::before,.hero-visual::after{
      content:""; position:absolute; inset:auto; border-radius:50%; filter:blur(18px); opacity:.9; pointer-events:none;
    }
    .hero-visual::before{width:120px; height:120px; right:-24px; top:-18px; background:rgba(168,85,247,.22)}
    .hero-visual::after{width:140px; height:140px; left:-40px; bottom:-30px; background:rgba(255,79,216,.16)}
    .visual-panel{
      position:relative; z-index:1;
      background:rgba(255,255,255,.85);
      border:1px solid #eee2fd;
      border-radius:20px; padding:18px;
    }
    .panel-title{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:14px}
    .panel-title strong{font-size:16px}
    .panel-title span{font-size:12px; color:var(--muted)}
    .chips{display:flex; flex-wrap:wrap; gap:10px}
    .chip{
      padding:8px 12px; border-radius:999px; background:#faf5ff; color:#53327f;
      border:1px solid #efe2ff; font-size:13px;
    }
    .hero-grid-figure{
      display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px;
      position:relative; z-index:1;
    }
    .glass-card{
      background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,242,255,.92));
      border:1px solid #eadff9; border-radius:18px; padding:14px;
      box-shadow:0 10px 20px rgba(91,56,157,.07);
      min-height:96px;
    }
    .glass-card strong{display:block; font-size:18px; margin-bottom:6px}
    .glass-card span{color:var(--muted); font-size:13px; line-height:1.5}
    main{padding-bottom:18px}
    section{padding:18px 0}
    .section-head{
      display:flex; align-items:flex-end; justify-content:space-between; gap:14px; margin-bottom:18px;
    }
    .section-head h2{margin:0; font-size:clamp(24px, 2.8vw, 36px); line-height:1.15}
    .section-head p{margin:0; color:var(--muted); max-width:720px; line-height:1.7}
    .section-card{
      background:rgba(255,255,255,.92);
      border:1px solid #ede2fb;
      border-radius:26px;
      padding:24px;
      box-shadow:var(--shadow);
    }
    .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}
    .feature-card,.service-card,.case-card,.review-card,.article-card,.faq-item,.timeline-item,.network-card,.compare-card,.match-card,.training-card{
      background:#fff; border:1px solid #ecdefb; border-radius:20px; padding:18px;
      box-shadow:0 10px 20px rgba(91,56,157,.06);
      transition:transform .2s ease, box-shadow .2s ease;
    }
    .feature-card:hover,.service-card:hover,.case-card:hover,.review-card:hover,.article-card:hover,.network-card:hover,.compare-card:hover,.match-card:hover,.training-card:hover{
      transform:translateY(-3px); box-shadow:var(--shadow-2);
    }
    .feature-card h3,.service-card h3,.case-card h3,.review-card h3,.article-card h3,.match-card h3,.training-card h3{margin:0 0 10px; font-size:18px}
    .feature-card p,.service-card p,.case-card p,.review-card p,.article-card p,.match-card p,.training-card p{margin:0; color:var(--muted); line-height:1.75; font-size:14px}
    .stat{
      display:flex; flex-direction:column; gap:10px; height:100%;
      justify-content:space-between;
    }
    .stat strong{font-size:30px; line-height:1; color:var(--purple)}
    .stat small{color:var(--muted); font-size:13px}
    .tag-list{display:flex; flex-wrap:wrap; gap:10px}
    .tag-list span{
      padding:8px 12px; border-radius:999px; background:#f7f0ff; color:#522f86; font-size:13px;
      border:1px solid #ead6ff;
    }
    .workflow{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
    .step{
      background:linear-gradient(180deg, #fff, #fcf8ff);
      border:1px solid #eddffb; border-radius:20px; padding:18px; position:relative;
    }
    .step .num{
      width:34px; height:34px; border-radius:50%; display:grid; place-items:center;
      background:linear-gradient(135deg, var(--purple), var(--pink)); color:#fff; font-weight:800; margin-bottom:14px;
      box-shadow:0 10px 20px rgba(124,58,237,.2);
    }
    .table-wrap{overflow:auto; border-radius:20px; border:1px solid #ecdff9; background:#fff}
    table{width:100%; border-collapse:collapse; min-width:820px}
    th,td{padding:16px 14px; text-align:left; border-bottom:1px solid #f1e8fb; vertical-align:top; font-size:14px; line-height:1.6}
    th{background:#faf5ff; color:#402a69; font-weight:800}
    tr:last-child td{border-bottom:none}
    .rating{
      display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:14px;
    }
    .stars{color:#ffb400; letter-spacing:2px; font-size:18px}
    .score{padding:8px 12px; border-radius:999px; background:#f4ecff; color:#5b21b6; font-weight:700}
    .faq-list{display:grid; gap:12px}
    .faq-item{padding:0; overflow:hidden}
    .faq-q{
      width:100%; background:#fff; border:none; padding:18px 18px; font-size:16px; font-weight:700; color:var(--text);
      display:flex; justify-content:space-between; align-items:center; text-align:left; cursor:pointer;
    }
    .faq-q span{display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:10px; background:#f4ecff; color:var(--purple); flex:0 0 auto}
    .faq-a{
      max-height:0; overflow:hidden; transition:max-height .28s ease;
      padding:0 18px;
      color:var(--muted); line-height:1.8; font-size:14px;
    }
    .faq-item.active .faq-a{padding:0 18px 18px; max-height:220px}
    .articles{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px}
    .article-meta{display:flex; gap:10px; flex-wrap:wrap; color:#7859a8; font-size:12px; margin-bottom:10px}
    .article-card a.inline{
      display:inline-flex; margin-top:12px; color:var(--purple); font-weight:700; font-size:14px
    }
    .form-shell{
      display:grid; grid-template-columns:1fr .92fr; gap:18px; align-items:start;
    }
    form{
      display:grid; gap:12px;
      background:#fff; border:1px solid #ecdefb; border-radius:22px; padding:18px;
    }
    label{font-size:14px; font-weight:700; color:#3c315d}
    input,select,textarea{
      width:100%; margin-top:8px;
      border:1px solid #ddcfef; border-radius:14px; padding:13px 14px;
      font:inherit; color:var(--text); background:#fff;
      outline:none; transition:border-color .2s ease, box-shadow .2s ease;
    }
    input:focus,select:focus,textarea:focus{border-color:var(--purple); box-shadow:0 0 0 4px rgba(124,58,237,.12)}
    textarea{min-height:120px; resize:vertical}
    .submit-row{display:flex; gap:12px; flex-wrap:wrap; align-items:center; justify-content:space-between}
    .support-box{
      background:linear-gradient(180deg, rgba(124,58,237,.08), rgba(255,255,255,.92));
      border:1px solid #eadff9; border-radius:22px; padding:18px;
    }
    .support-qr{
      width:180px; max-width:100%; margin:12px auto 0; border-radius:18px; overflow:hidden;
      border:1px solid #eadff9; background:#fff; padding:10px;
    }
    .support-qr img{width:100%; height:auto}
    .support-list{display:grid; gap:10px; margin-top:14px}
    .support-list div{
      display:flex; justify-content:space-between; gap:14px; border-bottom:1px dashed #ecdff9; padding-bottom:10px;
      font-size:14px
    }
    .support-list div strong{color:var(--text)}
    .footer-links{
      display:flex; flex-wrap:wrap; gap:10px; margin-top:10px
    }
    .footer-links a{
      color:#4a2f77; background:#f6efff; border:1px solid #eadbff;
      padding:8px 12px; border-radius:999px; font-size:13px
    }
    footer{
      margin-top:10px;
      background:#1e1234;
      color:#f2ebff;
      border-top:1px solid rgba(255,255,255,.08);
    }
    footer .container{padding:26px 0}
    footer a{color:#f5d6ff}
    footer .footer-top{
      display:flex; align-items:flex-start; justify-content:space-between; gap:18px; flex-wrap:wrap;
    }
    footer .copyright{margin-top:16px; color:#d7c6f0; font-size:13px; line-height:1.7}
    .floating-tools{
      position:fixed; right:16px; bottom:16px; z-index:60; display:grid; gap:10px;
    }
    .float-btn{
      width:52px; height:52px; border-radius:16px; display:grid; place-items:center;
      background:linear-gradient(135deg, var(--purple), var(--pink)); color:#fff; box-shadow:var(--shadow-2);
      border:none; cursor:pointer; font-weight:800;
    }
    .chat-float{
      position:fixed; left:16px; bottom:16px; z-index:60;
      display:none;
    }
    .chat-float .btn{box-shadow:var(--shadow-2)}
    .mobile-drawer{
      display:none;
      position:absolute; left:0; right:0; top:100%;
      background:rgba(255,255,255,.98);
      border-bottom:1px solid #eadff9;
      box-shadow:0 20px 30px rgba(66,32,123,.08);
      padding:14px 16px;
    }
    .mobile-drawer a{display:block; padding:10px 0; border-bottom:1px solid #f2e9fb; color:#39275e}
    .mobile-drawer a:last-child{border-bottom:none}
    .scroll-reveal{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease}
    .scroll-reveal.show{opacity:1; transform:none}
    .anchor{scroll-margin-top:92px}
    .gray-note{color:var(--muted); font-size:13px; line-height:1.7}
    .inline-badge{
      display:inline-flex; align-items:center; gap:6px; border-radius:999px;
      background:#f4ecff; color:#5b21b6; padding:8px 12px; font-size:13px; font-weight:700;
    }
    .compare-grid{
      display:grid; grid-template-columns:1fr 1fr; gap:14px;
    }
    .compare-card ul{margin:10px 0 0; padding-left:18px; color:var(--muted); line-height:1.8; font-size:14px}
    .timeline{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
    .timeline-item .t{color:var(--purple); font-weight:800; margin-bottom:8px}
    .network{
      display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px;
    }
    .network-card .region{font-weight:800; margin-bottom:8px}
    .price-strip{
      display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px;
    }
    .price-box{
      background:#fff; border:1px solid #ecdefb; border-radius:20px; padding:18px;
    }
    .price-box strong{font-size:24px; color:var(--purple)}
    .price-box p{margin:8px 0 0; color:var(--muted); line-height:1.7}
    .case-grid{
      display:grid; grid-template-columns:1.1fr .9fr; gap:14px;
    }
    .case-list{display:grid; gap:12px; margin-top:10px}
    .case-list div{padding:12px 14px; border-radius:16px; background:#faf7ff; border:1px solid #ece0fb; color:#4a3a69; font-size:14px}
    .review-meta{display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:10px}
    .review-role{color:var(--purple); font-weight:800; font-size:13px}
    .reviews{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px}
    .hero-images{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
    .hero-images .imgbox{
      border-radius:20px; overflow:hidden; border:1px solid #eadff9; background:#fff;
    }
    .hero-images img{width:100%; height:180px; object-fit:cover}
    .image-row{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
    .image-row .imgbox{border-radius:20px; overflow:hidden; border:1px solid #eadff9; background:#fff}
    .image-row img{width:100%; height:220px; object-fit:cover}
    .home-link{display:inline-flex; align-items:center; gap:8px; color:var(--purple); font-weight:800}
    @media (max-width: 1024px){
      .hero-grid,.form-shell,.case-grid,.compare-grid{grid-template-columns:1fr}
      .grid-4,.workflow,.timeline,.network,.articles,.reviews,.grid-3,.price-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
      .hero-points,.hero-images,.image-row{grid-template-columns:repeat(2,minmax(0,1fr))}
      .nav-links{display:none}
      .menu-toggle{display:inline-grid; place-items:center}
      .mobile-drawer.open{display:block}
    }
    @media (max-width: 700px){
      .container{width:min(var(--container), calc(100% - 22px))}
      .hero{padding-top:18px}
      .hero-grid,.section-card{padding:18px}
      .grid-4,.workflow,.timeline,.network,.articles,.reviews,.grid-3,.grid-2,.price-strip,.hero-points,.hero-images,.image-row,.grid-2,.compare-grid{grid-template-columns:1fr}
      .nav{padding:12px 0}
      .btn{width:100%}
      .nav-actions{display:none}
      .hero-actions{flex-direction:column}
      .hero-images img,.image-row img{height:180px}
      .floating-tools{right:12px; bottom:12px}
      .chat-float{display:block}
      .section-head{flex-direction:column; align-items:flex-start}
      .submit-row{flex-direction:column; align-items:stretch}
    }