:root{
      --bg:#f7f4ef;
      --bg2:#eef4ff;
      --card:#ffffff;
      --card2:#fff8f1;
      --line:#e6dfd4;
      --text:#1f2937;
      --muted:#5b6472;
      --brand:#2c6cff;
      --brand2:#7c3aed;
      --brand3:#ff8a4c;
      --shadow:0 14px 40px rgba(31,41,55,.08);
      --radius:20px;
      --radius2:28px;
      --max: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",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 15% 10%, rgba(124,58,237,.10), transparent 28%),
        radial-gradient(circle at 85% 20%, rgba(44,108,255,.10), transparent 30%),
        linear-gradient(180deg, #fffdf9 0%, var(--bg) 28%, #f5f8ff 100%);
      line-height:1.65;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%;height:auto}
    .container{width:min(var(--max), calc(100% - 32px)); margin:0 auto}
    .topbar{
      position:sticky; top:0; z-index:50;
      backdrop-filter: blur(14px);
      background:rgba(255,255,255,.78);
      border-bottom:1px solid rgba(230,223,212,.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:42px; flex:0 0 auto}
    .brand-text{min-width:0}
    .brand-text strong{display:block; font-size:18px; letter-spacing:.5px}
    .brand-text span{display:block; font-size:12px; color:var(--muted)}
    .nav-actions{display:flex; align-items:center; gap:12px}
    .nav-links{display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:flex-end}
    .nav-links a{
      font-size:14px; color:#334155; padding:8px 10px; border-radius:999px; transition:.25s ease;
    }
    .nav-links a:hover,.nav-links a:focus{background:rgba(44,108,255,.08); color:var(--brand)}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      padding:12px 18px; border-radius:999px; border:1px solid transparent;
      font-weight:700; font-size:14px; transition:.25s ease; cursor:pointer;
      box-shadow:none;
    }
    .btn-primary{background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#fff; box-shadow:0 10px 24px rgba(44,108,255,.22)}
    .btn-primary:hover{transform:translateY(-1px); box-shadow:0 14px 30px rgba(44,108,255,.26)}
    .btn-soft{background:#fff; color:var(--text); border-color:var(--line)}
    .btn-soft:hover{transform:translateY(-1px); border-color:#c8d3e6}
    .menu-btn{display:none; width:44px; height:44px; border-radius:12px; border:1px solid var(--line); background:#fff; color:var(--text)}
    .hero{
      padding:34px 0 18px;
      position:relative;
    }
    .hero-grid{
      display:grid; grid-template-columns:1.15fr .85fr; gap:24px; align-items:stretch;
    }
    .hero-main, .hero-side, .section-card, .contact-card, .faq-card, .quote-card, .timeline-card, .panel{
      background:rgba(255,255,255,.84);
      border:1px solid rgba(230,223,212,.9);
      box-shadow:var(--shadow);
      border-radius:var(--radius2);
    }
    .hero-main{padding:30px; position:relative; overflow:hidden}
    .hero-main:before{
      content:""; position:absolute; inset:-40px -30px auto auto; width:220px; height:220px; border-radius:50%;
      background:radial-gradient(circle, rgba(255,138,76,.22), transparent 65%);
      pointer-events:none;
    }
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px; padding:7px 12px; border-radius:999px;
      background:rgba(44,108,255,.08); color:var(--brand); font-size:13px; font-weight:700;
    }
    h1{
      margin:16px 0 14px; font-size:clamp(30px, 5vw, 54px); line-height:1.08; letter-spacing:-.02em;
    }
    .lead{font-size:16px; color:var(--muted); max-width:56ch; margin:0 0 20px}
    .hero-points{
      display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:20px 0 22px;
    }
    .mini-stat{
      background:linear-gradient(180deg,#fff, #fafcff);
      border:1px solid var(--line); border-radius:18px; padding:16px 14px;
    }
    .mini-stat strong{display:block; font-size:22px; line-height:1.1}
    .mini-stat span{display:block; margin-top:6px; color:var(--muted); font-size:13px}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; align-items:center}
    .hero-note{margin-top:14px; font-size:13px; color:var(--muted)}
    .hero-side{padding:22px; display:grid; gap:14px}
    .side-card{
      background:linear-gradient(135deg, rgba(44,108,255,.08), rgba(124,58,237,.08));
      border:1px solid rgba(44,108,255,.10);
      border-radius:22px; padding:18px;
    }
    .side-card h3{margin:0 0 8px; font-size:18px}
    .side-card p{margin:0; color:var(--muted); font-size:14px}
    .side-list{display:grid; gap:10px}
    .side-list div{
      display:flex; justify-content:space-between; gap:14px; align-items:flex-start;
      padding:12px 14px; border-radius:16px; background:#fff; border:1px solid var(--line)
    }
    .side-list b{font-size:14px}
    .side-list span{font-size:13px; color:var(--muted); text-align:right}
    .ticker{
      margin-top:22px; padding:14px 18px; border-radius:18px; background:linear-gradient(90deg, rgba(255,138,76,.12), rgba(44,108,255,.10));
      border:1px solid rgba(44,108,255,.10); color:#334155; overflow:hidden;
    }
    .ticker strong{color:var(--brand)}
    .section{padding:18px 0}
    .section-head{display:flex; align-items:end; justify-content:space-between; gap:18px; margin-bottom:16px}
    .section-head h2{margin:0; font-size:clamp(22px, 3vw, 34px); line-height:1.15}
    .section-head p{margin:0; color:var(--muted); max-width:62ch}
    .grid-4{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px}
    .grid-3{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}
    .grid-2{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px}
    .card{
      background:rgba(255,255,255,.88);
      border:1px solid rgba(230,223,212,.9);
      border-radius:24px;
      box-shadow:var(--shadow);
      padding:20px;
      transition:.25s ease;
    }
    .card:hover{transform:translateY(-4px); box-shadow:0 18px 42px rgba(31,41,55,.11)}
    .card h3{margin:0 0 8px; font-size:18px}
    .card p{margin:0; color:var(--muted)}
    .metric{
      display:flex; gap:14px; align-items:flex-start;
    }
    .metric .icon{
      width:44px; height:44px; border-radius:14px; flex:0 0 auto;
      display:grid; place-items:center; background:linear-gradient(135deg, rgba(44,108,255,.12), rgba(124,58,237,.12));
      color:var(--brand); font-weight:900;
    }
    .metric strong{display:block; font-size:26px; margin-bottom:4px}
    .metric small{color:var(--muted)}
    .chips{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px}
    .chip{padding:8px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); color:#394150; font-size:13px}
    .two-col{display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:start}
    .list{margin:0; padding:0; list-style:none; display:grid; gap:12px}
    .list li{display:flex; gap:10px; align-items:flex-start; color:#334155}
    .dot{width:10px; height:10px; border-radius:50%; background:linear-gradient(135deg,var(--brand),var(--brand3)); margin-top:8px; flex:0 0 auto}
    .steps{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
    .step{
      padding:18px; border-radius:22px; background:linear-gradient(180deg,#fff, #fbfcff); border:1px solid var(--line); position:relative;
    }
    .step .num{display:inline-flex; width:34px; height:34px; border-radius:12px; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#fff; font-weight:800; margin-bottom:12px}
    .step h3{margin:0 0 8px; font-size:17px}
    .step p{margin:0; color:var(--muted); font-size:14px}
    .table-wrap{overflow:auto; border-radius:24px; border:1px solid var(--line); background:#fff}
    table{width:100%; border-collapse:collapse; min-width:920px}
    th,td{padding:16px 14px; border-bottom:1px solid #edf0f4; vertical-align:top; text-align:left}
    th{background:#f7f9fd; font-size:14px}
    td{font-size:14px; color:#334155}
    .tag-bad{display:inline-flex; padding:6px 10px; border-radius:999px; background:rgba(255,138,76,.12); color:#d97706; font-weight:700; font-size:12px}
    .tag-good{display:inline-flex; padding:6px 10px; border-radius:999px; background:rgba(16,185,129,.12); color:#047857; font-weight:700; font-size:12px}
    .faq details{
      background:#fff; border:1px solid var(--line); border-radius:18px; padding:0 16px; overflow:hidden;
    }
    .faq summary{
      list-style:none; cursor:pointer; padding:16px 0; font-weight:700; color:#243041;
    }
    .faq summary::-webkit-details-marker{display:none}
    .faq .answer{padding:0 0 16px; color:var(--muted)}
    .quote-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}
    .quote{
      padding:20px; border-radius:24px; background:linear-gradient(180deg,#fff, #fffaf4); border:1px solid var(--line)
    }
    .quote p{margin:0 0 14px; color:#334155}
    .quote .meta{display:flex; justify-content:space-between; gap:12px; align-items:center; color:var(--muted); font-size:13px}
    .case-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:16px}
    .case-box{padding:22px; border-radius:24px; background:#fff; border:1px solid var(--line)}
    .case-gallery{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
    .case-gallery img{border-radius:18px; border:1px solid var(--line); background:#fff}
    .article-list{display:grid; gap:12px}
    .article-item{
      padding:16px 18px; border-radius:18px; background:#fff; border:1px solid var(--line); display:flex; justify-content:space-between; gap:16px; align-items:center;
    }
    .article-item span{color:var(--muted); font-size:13px}
    .form-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px}
    .field{display:grid; gap:8px}
    label{font-size:14px; font-weight:700; color:#334155}
    input,select,textarea{
      width:100%; border:1px solid #d8e0ea; background:#fff; color:var(--text);
      border-radius:14px; padding:13px 14px; font:inherit; outline:none; transition:.2s ease;
    }
    textarea{min-height:118px; resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:rgba(44,108,255,.55); box-shadow:0 0 0 4px rgba(44,108,255,.10)}
    .submit-row{display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:8px}
    .footer{
      margin-top:14px; padding:26px 0 30px; background:linear-gradient(180deg, rgba(255,255,255,.75), rgba(247,244,239,.95));
      border-top:1px solid rgba(230,223,212,.9);
      color:#334155;
    }
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:18px}
    .footer p,.footer a{color:#334155}
    .footer .muted{color:var(--muted)}
    .link-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .link-cloud a{
      padding:8px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); font-size:13px
    }
    .float-tools{
      position:fixed; right:16px; bottom:16px; z-index:60; display:grid; gap:10px;
    }
    .float-tools a, .float-tools button{
      width:52px; height:52px; border-radius:16px; border:1px solid rgba(230,223,212,.95); background:#fff; box-shadow:var(--shadow);
      display:grid; place-items:center; cursor:pointer; color:var(--text); font-weight:800;
    }
    .float-contact{
      position:fixed; left:16px; bottom:16px; z-index:60;
      width:min(310px, calc(100vw - 32px));
      background:#fff; border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow);
      overflow:hidden;
    }
    .float-contact header{
      padding:12px 16px; display:flex; justify-content:space-between; gap:12px; align-items:center;
      background:linear-gradient(135deg, rgba(44,108,255,.08), rgba(255,138,76,.10));
      border-bottom:1px solid var(--line);
    }
    .float-contact .body{padding:14px 16px; display:grid; gap:12px}
    .float-contact .qr{display:flex; gap:12px; align-items:center}
    .float-contact .qr img{width:84px; height:auto; border-radius:14px; border:1px solid var(--line); background:#fff}
    .float-contact small{color:var(--muted)}
    .mobile-only{display:none}
    .scroll-reveal{opacity:0; transform:translateY(14px); transition:.6s ease}
    .scroll-reveal.show{opacity:1; transform:translateY(0)}
    .anchor-pad{scroll-margin-top:92px}
    .service-tags{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px}
    .service-tags span{padding:10px 12px; border-radius:14px; background:#fff; border:1px solid var(--line); font-size:13px; color:#374151}
    .timeline{display:grid; gap:12px}
    .timeline-item{display:grid; grid-template-columns:110px 1fr; gap:14px; padding:16px 18px; background:#fff; border:1px solid var(--line); border-radius:18px}
    .timeline-item b{font-size:14px}
    .timeline-item p{margin:0; color:var(--muted); font-size:14px}
    .rating{
      display:flex; align-items:center; gap:10px; flex-wrap:wrap;
    }
    .stars{color:#f59e0b; letter-spacing:2px; font-size:18px}
    .divider{height:1px; background:linear-gradient(90deg, transparent, rgba(230,223,212,.95), transparent); margin:22px 0}
    @media (max-width: 1024px){
      .hero-grid,.case-grid,.footer-grid,.two-col,.grid-4,.grid-3,.steps,.quote-grid,.service-tags{grid-template-columns:1fr 1fr}
      .nav-links{display:none}
      .menu-btn{display:inline-grid; place-items:center}
      .mobile-only{display:flex}
    }
    @media (max-width: 720px){
      .container{width:min(var(--max), calc(100% - 20px))}
      .hero-main,.hero-side,.card,.case-box,.contact-card{padding:18px}
      .hero-grid,.case-grid,.footer-grid,.two-col,.grid-4,.grid-3,.grid-2,.steps,.quote-grid,.service-tags,.form-grid,.timeline-item{grid-template-columns:1fr}
      .hero-points{grid-template-columns:1fr}
      .section-head{flex-direction:column; align-items:flex-start}
      .nav{min-height:66px}
      .brand-text span{display:none}
      .float-contact{display:none}
      .float-tools{right:12px; bottom:12px}
      .btn{padding:11px 15px}
      .timeline-item{grid-template-columns:1fr}
    }