:root{
      --bg:#f5f8ff;
      --bg2:#eef4ff;
      --card:#ffffff;
      --line:#dbe5f4;
      --text:#17304b;
      --muted:#5d6f86;
      --brand:#165dff;
      --brand2:#0ea5e9;
      --accent:#ffb800;
      --shadow:0 18px 40px rgba(20,54,110,.10);
      --shadow2:0 10px 24px rgba(20,54,110,.08);
      --radius:20px;
      --radius2:14px;
      --max:1200px;
    }
    *{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 15% 10%, rgba(22,93,255,.10), transparent 28%),
        radial-gradient(circle at 85% 20%, rgba(14,165,233,.12), transparent 26%),
        linear-gradient(180deg, #f8fbff 0%, #f4f8ff 100%);
    }
    a{color:var(--brand); text-decoration:none}
    a:hover{color:#0d45d1}
    img{display:block; max-width:100%}
    .container{max-width:var(--max); margin:0 auto; padding:0 20px}
    .site-header{
      position:sticky; top:0; z-index:50;
      background:rgba(245,248,255,.88);
      backdrop-filter:blur(14px);
      border-bottom:1px solid rgba(219,229,244,.75);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      min-height:74px;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand .ai-page-logo{width:44px; height:44px; object-fit:contain; border-radius:12px; background:#fff; box-shadow:var(--shadow2)}
    .brand-title{display:flex; flex-direction:column; line-height:1.15}
    .brand-title strong{font-size:1.02rem; letter-spacing:.5px}
    .brand-title span{font-size:.82rem; color:var(--muted)}
    .nav-toggle{
      display:none; border:1px solid var(--line); background:#fff; color:var(--text);
      border-radius:12px; padding:10px 12px; font-size:.95rem; box-shadow:var(--shadow2);
    }
    .nav-links{
      display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:flex-end;
      font-size:.95rem;
    }
    .nav-links a{color:var(--text); opacity:.92}
    .nav-links a:hover{color:var(--brand)}
    .nav-cta{
      display:inline-flex; align-items:center; gap:8px; padding:11px 16px;
      border-radius:999px; background:linear-gradient(135deg,var(--brand),#2f7bff);
      color:#fff; box-shadow:0 14px 24px rgba(22,93,255,.25);
      white-space:nowrap;
    }
    .nav-cta:hover{color:#fff; transform:translateY(-1px)}
    .hero{
      padding:40px 0 28px;
    }
    .hero-grid{
      display:grid; grid-template-columns:1.25fr .75fr; gap:24px; align-items:stretch;
    }
    .hero-main{
      background:
        linear-gradient(135deg, rgba(22,93,255,.96), rgba(15,118,255,.88)),
        radial-gradient(circle at 80% 10%, rgba(255,255,255,.16), transparent 24%);
      color:#fff;
      border-radius:28px;
      padding:34px;
      box-shadow:0 24px 50px rgba(22,93,255,.18);
      overflow:hidden;
      position:relative;
    }
    .hero-main::after{
      content:"";
      position:absolute; inset:auto -120px -100px auto;
      width:300px; height:300px; border-radius:50%;
      background:radial-gradient(circle, rgba(255,255,255,.16), transparent 62%);
      pointer-events:none;
    }
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px;
      background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.18);
      border-radius:999px; padding:8px 12px; font-size:.88rem;
      margin-bottom:16px;
    }
    h1{margin:0 0 14px; font-size:clamp(2rem, 4vw, 3.5rem); line-height:1.1; letter-spacing:-.02em}
    .hero-main p{margin:0; max-width:58ch; color:rgba(255,255,255,.92); font-size:1.03rem; line-height:1.85}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:24px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border-radius:14px; padding:12px 18px; border:1px solid transparent;
      font-weight:600; transition:.2s ease; cursor:pointer;
    }
    .btn-primary{background:#fff; color:var(--brand)}
    .btn-primary:hover{transform:translateY(-2px); box-shadow:0 12px 26px rgba(255,255,255,.18)}
    .btn-secondary{background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.18)}
    .btn-secondary:hover{background:rgba(255,255,255,.14); transform:translateY(-2px)}
    .hero-side{
      display:grid; gap:16px;
    }
    .stat-box, .intro-card, .mini-card, .panel, .card, .quote-card, .faq-item, .form-card, .price-box{
      background:var(--card); border:1px solid var(--line); border-radius:var(--radius);
      box-shadow:var(--shadow2);
    }
    .stat-box{padding:18px}
    .stat-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px}
    .stat{padding:14px; border-radius:16px; background:linear-gradient(180deg,#f8fbff,#eff5ff); border:1px solid #deebff}
    .stat strong{display:block; font-size:1.28rem; color:var(--brand); margin-bottom:6px}
    .stat span{display:block; color:var(--muted); font-size:.92rem; line-height:1.45}
    .chip-row{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px}
    .chip{padding:8px 12px; background:#edf4ff; border:1px solid #dbe8ff; border-radius:999px; color:#244669; font-size:.88rem}
    .section{padding:22px 0}
    .section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:14px; margin-bottom:18px}
    .section-head h2{margin:0; font-size:clamp(1.45rem, 2.4vw, 2.15rem)}
    .section-head p{margin:0; color:var(--muted); line-height:1.7; max-width:68ch}
    .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; transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
    .card:hover{transform:translateY(-4px); box-shadow:0 18px 38px rgba(20,54,110,.12); border-color:#c8d9f4}
    .card h3{margin:0 0 10px; font-size:1.05rem}
    .card p, .card li{color:var(--muted); line-height:1.78}
    .icon{
      width:44px; height:44px; border-radius:14px; display:grid; place-items:center;
      background:linear-gradient(135deg, rgba(22,93,255,.12), rgba(14,165,233,.12)); color:var(--brand);
      margin-bottom:14px; font-size:1.1rem; font-weight:700;
    }
    .intro-card{padding:22px; display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:start}
    .intro-card ul{margin:12px 0 0; padding-left:18px}
    .intro-card li{margin:8px 0}
    .media-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
    .media-grid .mini-card{overflow:hidden; border-radius:18px}
    .mini-card img{width:100%; height:auto}
    .mini-card .caption{padding:12px 14px; color:var(--muted); font-size:.92rem}
    .timeline{display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
    .step{
      position:relative; padding:18px; border-radius:20px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow2)
    }
    .step .num{
      display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:999px;
      background:linear-gradient(135deg,var(--brand),#3785ff); color:#fff; font-weight:700; margin-bottom:12px
    }
    .table-wrap{overflow:auto; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:var(--shadow2)}
    table{width:100%; border-collapse:collapse; min-width:860px}
    th, td{padding:16px 14px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top}
    th{background:#eff5ff; color:#244669; font-size:.95rem}
    td{color:var(--muted)}
    .badge{display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px; background:#eaf2ff; color:#1c4fb4; font-size:.84rem; margin:4px 6px 0 0}
    .rating{
      display:grid; grid-template-columns:1.05fr .95fr; gap:16px; align-items:stretch
    }
    .rating-card{padding:22px}
    .stars{font-size:1.1rem; color:#ffb000; letter-spacing:2px; margin:10px 0 14px}
    .score{font-size:2.4rem; font-weight:800; color:var(--brand)}
    .review-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .quote-card{padding:20px}
    .quote-card .who{margin-top:14px; color:#27456c; font-weight:700}
    .quote-card .role{color:var(--muted); font-size:.92rem; margin-top:4px}
    .split{display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:start}
    .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .tag-cloud .tag{padding:9px 12px; border-radius:999px; background:#fff; border:1px solid #dce6f4; color:#284668}
    .articles{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .article a{display:block}
    .article time{display:block; color:var(--muted); font-size:.9rem; margin-bottom:10px}
    .faq-list{display:grid; gap:12px}
    .faq-item{padding:0; overflow:hidden}
    .faq-q{
      width:100%; border:0; background:#fff; padding:18px 20px; font:inherit; color:var(--text);
      display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer; text-align:left
    }
    .faq-q span{font-weight:700}
    .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease; border-top:1px solid transparent}
    .faq-a p{margin:0; padding:0 20px 18px; color:var(--muted); line-height:1.8}
    .faq-item.active .faq-a{max-height:220px; border-top-color:var(--line)}
    .form-card{padding:22px}
    .form-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    label{display:block; font-weight:700; margin-bottom:8px; color:#284668}
    input, select, textarea{
      width:100%; border:1px solid #d7e3f3; background:#fbfdff; color:var(--text);
      border-radius:14px; padding:12px 14px; font:inherit; outline:none;
    }
    input:focus, select:focus, textarea:focus{border-color:#7ab0ff; box-shadow:0 0 0 4px rgba(22,93,255,.10)}
    textarea{min-height:120px; resize:vertical}
    .form-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:14px}
    .footer{
      margin-top:22px;
      background:linear-gradient(180deg,#163865,#102b4c);
      color:#eaf2ff;
      padding:28px 0 18px;
    }
    .footer a{color:#fff; opacity:.92}
    .footer a:hover{opacity:1}
    .footer-grid{display:grid; grid-template-columns:1.2fr .8fr 1fr; gap:18px; align-items:start}
    .footer small, .footer p, .footer li{color:#d9e6fb; line-height:1.8}
    .footer .home-link{display:inline-flex; margin-top:10px; color:#fff}
    .footer-bottom{margin-top:18px; padding-top:14px; border-top:1px solid rgba(255,255,255,.14); font-size:.92rem}
    .floating{
      position:fixed; right:16px; bottom:16px; z-index:60; display:flex; flex-direction:column; gap:10px;
    }
    .float-btn{
      width:48px; height:48px; border-radius:16px; border:0; cursor:pointer;
      background:linear-gradient(135deg,var(--brand),#2f7bff); color:#fff; box-shadow:0 12px 24px rgba(22,93,255,.28)
    }
    .float-panel{
      display:none; width:290px; background:#fff; border:1px solid var(--line); border-radius:18px;
      box-shadow:var(--shadow); padding:14px
    }
    .floating.open .float-panel{display:block}
    .float-panel .qr{display:grid; grid-template-columns:84px 1fr; gap:12px; align-items:center}
    .float-panel .qr img{width:84px; height:84px; object-fit:cover; border-radius:14px; border:1px solid var(--line)}
    .float-panel h4{margin:0 0 6px}
    .float-panel p{margin:0; color:var(--muted); line-height:1.7; font-size:.92rem}
    .scrolltop{margin-top:10px}
    .reveal{opacity:0; transform:translateY(16px); transition:all .55s ease}
    .reveal.in{opacity:1; transform:none}
    @media (max-width: 1024px){
      .hero-grid,.intro-card,.rating,.split,.footer-grid,.grid-4,.grid-3,.review-grid,.articles,.media-grid,.timeline{grid-template-columns:repeat(2,1fr)}
    }
    @media (max-width: 768px){
      .nav-toggle{display:inline-flex}
      .nav-links{
        display:none; position:absolute; left:20px; right:20px; top:74px; background:#fff; border:1px solid var(--line);
        border-radius:18px; padding:14px; box-shadow:var(--shadow); flex-direction:column; align-items:flex-start;
      }
      .nav-links.open{display:flex}
      .hero{padding-top:18px}
      .hero-grid,.intro-card,.rating,.split,.footer-grid,.grid-4,.grid-3,.review-grid,.articles,.media-grid,.timeline,.form-grid{grid-template-columns:1fr}
      .hero-main{padding:26px}
      .section-head{flex-direction:column; align-items:flex-start}
      .nav{position:relative}
      table{min-width:760px}
    }