:root{
      --bg:#fffaf5;
      --bg2:#fff;
      --card:#ffffff;
      --text:#1f2937;
      --muted:#5b6473;
      --line:#e7e1da;
      --primary:#6f3cff;
      --primary2:#ff5c7a;
      --accent:#ff8a00;
      --cyan:#20b8ff;
      --green:#17a46f;
      --shadow:0 18px 50px rgba(26,31,44,.10);
      --radius:22px;
      --radius-sm:16px;
      --max:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
      background:
        radial-gradient(circle at top left, rgba(255,92,122,.12), transparent 28%),
        radial-gradient(circle at top right, rgba(111,60,255,.10), transparent 22%),
        linear-gradient(180deg, #fff8f1 0%, #fff 20%, #fffaf5 100%);
      color:var(--text);
      line-height:1.65;
      overflow-x:hidden;
    }
    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:saturate(180%) blur(14px);
      background:rgba(255,250,245,.82);
      border-bottom:1px solid rgba(231,225,218,.8);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      padding:12px 0;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand .ai-page-logo{width:42px; height:42px; object-fit:contain; border-radius:12px; background:#fff; box-shadow:0 10px 26px rgba(0,0,0,.08)}
    .brand strong{display:block; font-size:1.02rem; letter-spacing:.02em}
    .brand span{display:block; font-size:.84rem; color:var(--muted)}
    .nav-actions{display:flex; align-items:center; gap:10px}
    .menu-toggle{
      display:none; border:1px solid var(--line); background:#fff; color:var(--text);
      padding:10px 12px; border-radius:14px; box-shadow:0 8px 22px rgba(0,0,0,.05)
    }
    .nav-links{display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:flex-end}
    .nav-links a{
      padding:9px 12px; border-radius:999px; color:#2d3748; font-size:.94rem;
      border:1px solid transparent; transition:.24s ease;
    }
    .nav-links a:hover{background:#fff; border-color:var(--line); box-shadow:0 10px 20px rgba(0,0,0,.04); transform:translateY(-1px)}
    .hero{
      position:relative; overflow:hidden;
      padding:34px 0 18px;
    }
    .hero:before,.hero:after{
      content:""; position:absolute; inset:auto;
      border-radius:50%;
      pointer-events:none;
      filter:blur(10px);
      opacity:.7;
    }
    .hero:before{width:340px;height:340px; background:radial-gradient(circle, rgba(111,60,255,.12), transparent 60%); top:-120px; right:-90px}
    .hero:after{width:260px;height:260px; background:radial-gradient(circle, rgba(255,92,122,.10), transparent 60%); bottom:10px; left:-120px}
    .hero-grid{
      display:grid; grid-template-columns:1.2fr .8fr; gap:24px; align-items:stretch;
    }
    .hero-copy,.hero-side,.section-card,.review-card,.faq-item,.contact-card,.case-card,.content-card,.price-card,.compare-card,.step-card,.info-chip,.service-card,.article-card,.quote-card{
      background:rgba(255,255,255,.88);
      border:1px solid rgba(231,225,218,.95);
      box-shadow:var(--shadow);
    }
    .hero-copy{
      border-radius:28px; padding:28px;
      background:
        linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.82)),
        linear-gradient(135deg, rgba(111,60,255,.08), rgba(255,92,122,.06));
    }
    .kicker{
      display:inline-flex; align-items:center; gap:8px; padding:7px 12px; border-radius:999px;
      background:linear-gradient(90deg, rgba(111,60,255,.12), rgba(255,92,122,.12));
      color:#4527a0; font-weight:700; font-size:.88rem;
      border:1px solid rgba(111,60,255,.12);
    }
    h1{font-size:clamp(2rem, 4vw, 3.5rem); line-height:1.08; margin:16px 0 14px; letter-spacing:-.02em}
    .lead{font-size:1.02rem; color:#374151; max-width:62ch; margin:0}
    .hero-points{
      display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; margin:20px 0 22px;
    }
    .mini-stat{
      border-radius:18px; padding:14px 16px; background:rgba(255,255,255,.8); border:1px solid var(--line)
    }
    .mini-stat b{display:block; font-size:1.05rem}
    .mini-stat span{display:block; color:var(--muted); font-size:.92rem}
    .cta-row{display:flex; flex-wrap:wrap; gap:12px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border:none; border-radius:16px; padding:13px 18px; font-weight:700; cursor:pointer;
      transition:.24s ease; box-shadow:0 12px 24px rgba(111,60,255,.16);
    }
    .btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary2)); color:#fff}
    .btn-secondary{background:#fff; color:#1f2937; border:1px solid var(--line); box-shadow:none}
    .btn:hover{transform:translateY(-2px); filter:saturate(1.05)}
    .btn:active{transform:translateY(0)}
    .hero-side{border-radius:28px; padding:22px; display:grid; gap:14px; align-content:start}
    .side-banner{
      min-height:180px; border-radius:22px; padding:18px; color:#fff;
      background:linear-gradient(135deg, #111827, #6f3cff 55%, #ff5c7a);
      position:relative; overflow:hidden;
    }
    .side-banner:after{
      content:""; position:absolute; inset:auto -20px -40px auto; width:140px; height:140px; border-radius:50%;
      background:rgba(255,255,255,.16);
    }
    .side-banner h2{margin:0 0 8px; font-size:1.2rem}
    .side-banner p{margin:0; color:rgba(255,255,255,.88)}
    .side-list{display:grid; gap:10px}
    .side-item{display:flex; gap:12px; align-items:flex-start; padding:12px 14px; border-radius:16px; background:#fff; border:1px solid var(--line)}
    .dot{width:10px;height:10px;border-radius:50%;margin-top:7px;background:linear-gradient(135deg,var(--cyan),var(--primary2))}
    .section{padding:18px 0}
    .section-head{display:flex; justify-content:space-between; align-items:end; gap:16px; margin-bottom:16px}
    .section-head h2{margin:0; font-size:1.6rem}
    .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}
    .metric,.service-card,.step-card,.case-card,.review-card,.article-card,.price-card,.compare-card,.contact-card,.section-card,.content-card,.faq-item,.quote-card{
      border-radius:22px; padding:18px;
    }
    .metric{position:relative; overflow:hidden}
    .metric:before{content:""; position:absolute; inset:0 auto auto 0; width:100%; height:4px; background:linear-gradient(90deg,var(--primary),var(--accent),var(--cyan))}
    .metric b{display:block; font-size:1.8rem; margin:8px 0 4px}
    .metric span{color:var(--muted); font-size:.94rem}
    .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .tag{padding:9px 13px; border:1px solid var(--line); background:#fff; border-radius:999px; color:#344054; font-size:.92rem}
    .timeline{display:grid; gap:12px}
    .timeline-item{display:grid; grid-template-columns:120px 1fr; gap:14px; align-items:start; padding:14px 0; border-bottom:1px dashed #eadfd4}
    .timeline-item:last-child{border-bottom:none}
    .timeline-item strong{color:#6f3cff}
    .table-wrap{overflow:auto; border-radius:22px; border:1px solid var(--line); background:#fff; box-shadow:var(--shadow)}
    table{width:100%; border-collapse:collapse; min-width:860px}
    th,td{padding:14px 16px; border-bottom:1px solid #f0e8df; text-align:left; vertical-align:top}
    th{background:#fff8f1; font-size:.95rem}
    .badge{display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px; font-size:.84rem; font-weight:700}
    .b-p{background:rgba(111,60,255,.12); color:#5b21b6}
    .b-o{background:rgba(255,138,0,.14); color:#9a4d00}
    .b-g{background:rgba(23,164,111,.12); color:#0f6d49}
    .compare-highlight{
      border:2px solid rgba(111,60,255,.2); background:linear-gradient(180deg,#fff,#f8f4ff);
    }
    .star{color:#f59e0b; font-size:1.15rem; letter-spacing:.04em}
    .faq-list{display:grid; gap:12px}
    .faq-item{padding:0; overflow:hidden}
    .faq-q{
      width:100%; text-align:left; background:#fff; border:none; padding:18px; color:var(--text);
      display:flex; justify-content:space-between; align-items:center; gap:16px; font-weight:700; font-size:1rem; cursor:pointer;
    }
    .faq-a{padding:0 18px 18px; color:var(--muted); display:none}
    .faq-item.open .faq-a{display:block}
    .faq-item.open .faq-q .chev{transform:rotate(180deg)}
    .chev{transition:.2s ease}
    .reviews{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px}
    .review-card{display:grid; gap:10px}
    .review-top{display:flex; justify-content:space-between; gap:12px; align-items:center}
    .avatar{
      width:44px;height:44px;border-radius:14px; display:grid; place-items:center; font-weight:800; color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--primary2));
    }
    .review-card p{margin:0; color:#374151}
    .article-list{display:grid; gap:12px}
    .article-card{display:flex; justify-content:space-between; gap:16px; align-items:flex-start}
    .article-card time{color:var(--muted); font-size:.9rem; white-space:nowrap}
    .form{
      display:grid; gap:12px;
    }
    .field{display:grid; gap:8px}
    label{font-weight:700; font-size:.94rem}
    input,select,textarea{
      width:100%; border:1px solid var(--line); border-radius:14px; padding:13px 14px; background:#fff; color:var(--text);
      outline:none; transition:.2s ease; font:inherit;
    }
    input:focus,select:focus,textarea:focus{border-color:rgba(111,60,255,.55); box-shadow:0 0 0 4px rgba(111,60,255,.08)}
    textarea{min-height:120px; resize:vertical}
    .footer{
      margin-top:14px;
      padding:24px 0 28px;
      border-top:1px solid var(--line);
      background:#fffaf5;
      color:#243041;
    }
    .footer a{color:#203a8f}
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr .9fr; gap:18px}
    .footer small{color:#5b6473}
    .contact-list{display:grid; gap:8px}
    .floating{
      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; border:none; cursor:pointer;
      box-shadow:0 14px 28px rgba(0,0,0,.15); color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--primary2));
    }
    .backtop{display:none}
    .mobile-panel{display:none}
    .scroll-reveal{opacity:0; transform:translateY(16px); transition:.5s ease}
    .scroll-reveal.in{opacity:1; transform:none}
    .service-card h3,.case-card h3,.price-card h3,.contact-card h3,.content-card h3,.step-card h3,.article-card h3{margin:0 0 8px; font-size:1.08rem}
    .service-card p,.case-card p,.price-card p,.contact-card p,.content-card p,.step-card p,.article-card p{margin:0; color:var(--muted)}
    .mini-strip{display:flex; flex-wrap:wrap; gap:10px; margin-top:16px}
    .mini-strip .tag{background:rgba(255,255,255,.85)}
    .two-cols{display:grid; grid-template-columns:1fr 1fr; gap:14px}
    .quote-card{border-left:4px solid var(--primary)}
    .pill-row{display:flex; flex-wrap:wrap; gap:10px}
    .pill{padding:8px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); color:#334155; font-size:.92rem}
    @media (max-width: 980px){
      .hero-grid,.grid-4,.grid-3,.reviews,.footer-grid,.two-cols,.grid-2{grid-template-columns:1fr}
      .nav-links{display:none}
      .menu-toggle{display:inline-flex}
      .mobile-panel{display:none; padding:0 0 12px}
      .mobile-panel.open{display:block}
      .mobile-panel .nav-links{display:grid; grid-template-columns:1fr 1fr; gap:8px}
      .timeline-item{grid-template-columns:1fr; gap:6px}
      .section-head{align-items:flex-start; flex-direction:column}
    }
    @media (max-width: 640px){
      .container{width:min(var(--max), calc(100% - 24px))}
      .hero-copy,.hero-side,.metric,.service-card,.step-card,.case-card,.review-card,.article-card,.price-card,.compare-card,.contact-card,.section-card,.content-card,.faq-item,.quote-card{padding:16px}
      .hero-points{grid-template-columns:1fr}
      h1{font-size:2.05rem}
      .article-card{flex-direction:column}
      .article-card time{white-space:normal}
      .cta-row{display:grid; grid-template-columns:1fr}
      .floating{right:12px; bottom:12px}
    }