:root{
      --bg:#f7f8fc;
      --panel:#ffffff;
      --panel-2:#fff7ef;
      --text:#1f2937;
      --muted:#5f6b7a;
      --line:#e7eaf1;
      --brand:#6b7cff;
      --brand-2:#ff8f6b;
      --accent:#18b6a4;
      --shadow:0 18px 50px rgba(31,41,55,.10);
      --radius:22px;
      --radius-sm:16px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",PingFang SC,"Hiragino Sans GB","Microsoft YaHei",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 12% 8%, rgba(255,143,107,.16), transparent 18%),
        radial-gradient(circle at 86% 10%, rgba(107,124,255,.15), transparent 20%),
        radial-gradient(circle at 80% 70%, rgba(24,182,164,.12), transparent 18%),
        linear-gradient(180deg, #fbfcff 0%, #f7f8fc 36%, #f6f7fb 100%);
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(100% - 32px, var(--container)); margin:0 auto}
    .topbar{
      position:sticky; top:0; z-index:50;
      backdrop-filter:blur(14px);
      background:rgba(247,248,252,.78);
      border-bottom:1px solid rgba(231,234,241,.85);
    }
    .nav{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 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 8px 24px rgba(0,0,0,.08)}
    .brand-text{min-width:0}
    .brand-text strong{display:block; font-size:18px; line-height:1.1}
    .brand-text span{display:block; font-size:12px; color:var(--muted); margin-top:4px}
    .menu-btn{display:none; border:1px solid var(--line); background:#fff; color:var(--text); border-radius:14px; padding:10px 12px}
    .navlinks{display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:flex-end}
    .navlinks a{font-size:14px; color:var(--muted); padding:9px 11px; border-radius:999px; transition:.2s ease}
    .navlinks a:hover,.navlinks a:focus{background:#fff; color:var(--text); box-shadow:0 8px 24px rgba(31,41,55,.08)}
    .hero{padding:24px 0 18px}
    .hero-card{
      position:relative; overflow:hidden;
      background:
        linear-gradient(135deg, rgba(107,124,255,.10), rgba(255,143,107,.10) 44%, rgba(24,182,164,.08)),
        rgba(255,255,255,.72);
      border:1px solid rgba(231,234,241,.9);
      border-radius:28px;
      box-shadow:var(--shadow);
      padding:34px;
    }
    .hero-grid{display:grid; grid-template-columns:1.25fr .9fr; gap:28px; align-items:stretch}
    h1{font-size:clamp(30px,5vw,54px); line-height:1.06; margin:0 0 14px}
    .lead{font-size:17px; line-height:1.85; color:var(--muted); margin:0 0 20px}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin:22px 0 18px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border-radius:14px; padding:13px 18px; font-weight:700; border:1px solid transparent;
      transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .btn:hover{transform:translateY(-2px)}
    .btn-primary{background:linear-gradient(135deg, var(--brand), #8a7cff); color:#fff; box-shadow:0 14px 30px rgba(107,124,255,.28)}
    .btn-secondary{background:#fff; border-color:var(--line); color:var(--text)}
    .hero-badges{display:flex; flex-wrap:wrap; gap:10px}
    .tag{padding:9px 12px; border-radius:999px; background:rgba(255,255,255,.82); border:1px solid var(--line); color:#344054; font-size:13px}
    .hero-panel{display:grid; gap:14px; align-content:start}
    .metric-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px}
    .metric{background:#fff; border:1px solid var(--line); border-radius:20px; padding:18px; box-shadow:0 10px 26px rgba(31,41,55,.06)}
    .metric strong{display:block; font-size:26px; margin-bottom:6px}
    .metric span{color:var(--muted); font-size:13px; line-height:1.5}
    section{padding:22px 0}
    .section-head{display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:16px}
    .section-head h2{margin:0; font-size:28px}
    .section-head p{margin:0; color:var(--muted); max-width:680px; line-height:1.75}
    .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{
      background:rgba(255,255,255,.88); border:1px solid var(--line); border-radius:var(--radius);
      box-shadow:0 12px 30px rgba(31,41,55,.06); padding:20px; transition:transform .2s ease, box-shadow .2s ease;
    }
    .card:hover{transform:translateY(-3px); box-shadow:0 18px 40px rgba(31,41,55,.10)}
    .card h3{margin:0 0 10px; font-size:18px}
    .card p,.card li{color:var(--muted); line-height:1.8}
    .list{margin:0; padding-left:18px}
    .two-col{display:grid; grid-template-columns:1.05fr .95fr; gap:18px; align-items:start}
    .pill-row{display:flex; flex-wrap:wrap; gap:10px}
    .pill{padding:8px 11px; border-radius:999px; background:#fff; border:1px solid var(--line); color:#344054; font-size:13px}
    .timeline{display:grid; gap:12px}
    .step{display:flex; gap:14px; align-items:flex-start; padding:18px; border-radius:18px; background:#fff; border:1px solid var(--line)}
    .step b{width:34px; height:34px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; color:#fff; background:linear-gradient(135deg, var(--brand), var(--accent)); flex:0 0 auto}
    .table-wrap{overflow-x:auto; border-radius:20px; border:1px solid var(--line); background:#fff; box-shadow:0 12px 30px rgba(31,41,55,.06)}
    table{width:100%; border-collapse:collapse; min-width:780px}
    th,td{padding:15px 14px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top}
    th{background:#fafbff; font-size:14px}
    .rating{display:grid; gap:14px}
    .rating-box{background:linear-gradient(135deg, #fff, #fff7f2); border:1px solid rgba(255,143,107,.18); border-radius:24px; padding:24px}
    .stars{color:#ffb400; letter-spacing:2px; font-size:22px}
    .faq{display:grid; gap:12px}
    details{background:#fff; border:1px solid var(--line); border-radius:18px; padding:16px 18px}
    summary{cursor:pointer; font-weight:700; list-style:none}
    summary::-webkit-details-marker{display:none}
    details p{margin:10px 0 0; color:var(--muted); line-height:1.8}
    .review{display:grid; gap:10px}
    .review .meta{display:flex; align-items:center; justify-content:space-between; gap:10px}
    .avatar{width:42px; height:42px; border-radius:14px; background:linear-gradient(135deg, #ffd9c9, #dce4ff); display:grid; place-items:center; font-weight:800}
    .quote{color:var(--text); line-height:1.8}
    .articles a{display:block; padding:12px 0; border-bottom:1px dashed var(--line); color:var(--text)}
    .articles a:last-child{border-bottom:none}
    .form{display:grid; gap:12px}
    .field{display:grid; gap:8px}
    input,select,textarea{
      width:100%; border:1px solid var(--line); background:#fff; color:var(--text);
      border-radius:14px; padding:13px 14px; font:inherit; outline:none;
    }
    textarea{min-height:120px; resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:rgba(107,124,255,.55); box-shadow:0 0 0 4px rgba(107,124,255,.12)}
    .footer{
      padding:22px 0 34px; border-top:1px solid var(--line); margin-top:12px;
      background:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,.54));
    }
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:18px}
    .footer a{color:#31405b}
    .kefu{
      position:fixed; right:18px; bottom:18px; z-index:60;
      display:grid; gap:10px;
    }
    .float-btn{
      width:54px; height:54px; border-radius:18px; border:none; cursor:pointer;
      background:linear-gradient(135deg, var(--brand), var(--brand-2)); color:#fff; box-shadow:0 16px 30px rgba(107,124,255,.28)
    }
    .kefu-card{
      width:210px; background:#fff; border:1px solid var(--line); border-radius:20px; padding:12px; box-shadow:var(--shadow);
      display:none;
    }
    .kefu-card img{border-radius:14px}
    .kefu.open .kefu-card{display:block}
    .backtop{position:fixed; left:18px; bottom:18px; z-index:60; opacity:0; pointer-events:none; transition:.2s ease}
    .backtop.show{opacity:1; pointer-events:auto}
    .backtop a{
      display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:18px;
      background:#fff; border:1px solid var(--line); box-shadow:var(--shadow)
    }
    .section-note{padding:14px 16px; background:#fff; border:1px solid var(--line); border-radius:18px; color:var(--muted); line-height:1.8}
    .gallery{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    .gallery img{border-radius:18px; border:1px solid var(--line); box-shadow:0 12px 30px rgba(31,41,55,.06)}
    .service-map{display:grid; grid-template-columns:repeat(3,1fr); gap:12px}
    .service-map .card{padding:18px}
    .mobile-only{display:none}
    @media (max-width: 980px){
      .hero-grid,.two-col,.footer-grid,.grid-4,.grid-3,.service-map{grid-template-columns:1fr}
      .navlinks{display:none}
      .menu-btn{display:inline-flex}
      .nav.open .navlinks{
        display:flex; position:absolute; left:16px; right:16px; top:68px; padding:14px; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); flex-direction:column; align-items:stretch;
      }
      .nav.open{position:relative}
      .mobile-only{display:block}
      .hero-card{padding:22px}
    }