:root{
      --bg:#f5f7fb;
      --surface:#ffffff;
      --surface-2:#f9fbff;
      --line:#e4eaf3;
      --text:#1b2430;
      --muted:#5b687a;
      --brand:#4f7cff;
      --brand-2:#ff7ab6;
      --brand-3:#42c6c3;
      --warm:#fff1d9;
      --shadow:0 18px 50px rgba(24, 39, 75, .09);
      --radius:22px;
      --radius-sm:16px;
      --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",Arial,sans-serif;
      background:
        radial-gradient(circle at top left, rgba(79,124,255,.12), transparent 28%),
        radial-gradient(circle at top right, rgba(255,122,182,.12), transparent 24%),
        linear-gradient(180deg, #ffffff 0%, #f7f9fe 32%, #f4f7fb 100%);
      color:var(--text);
      line-height:1.65;
    }
    a{color:var(--brand);text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(var(--max), calc(100% - 32px)); margin:0 auto}
    header{
      position:sticky; top:0; z-index:60;
      backdrop-filter:saturate(180%) blur(14px);
      background:rgba(255,255,255,.82);
      border-bottom:1px solid rgba(228,234,243,.85);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      min-height:76px;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand img{width:42px;height:42px;object-fit:contain; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(79,124,255,.12)}
    .brand strong{display:block; font-size:1.05rem; line-height:1.1}
    .brand small{display:block; color:var(--muted); font-size:.82rem}
    .menu-toggle{
      display:none; border:1px solid var(--line); background:#fff; color:var(--text);
      border-radius:14px; padding:10px 12px; box-shadow:0 10px 22px rgba(24,39,75,.05)
    }
    .nav-links{display:flex; flex-wrap:wrap; justify-content:flex-end; gap:4px 10px; align-items:center}
    .nav-links a,.nav-links .ai-page-home-link{
      padding:9px 11px; border-radius:999px; color:var(--text); font-size:.94rem;
    }
    .nav-links a:hover,.nav-links .ai-page-home-link:hover{background:#eef3ff;color:#234}
    .nav-cta{display:flex; gap:10px; align-items:center}
    .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; cursor:pointer; transition:.24s ease; box-shadow:0 12px 30px rgba(79,124,255,.12);
    }
    .btn-primary{background:linear-gradient(135deg, var(--brand), #6f8fff); color:#fff}
    .btn-secondary{background:#fff; color:var(--text); border-color:var(--line)}
    .btn:hover{transform:translateY(-2px); box-shadow:0 18px 35px rgba(79,124,255,.18)}
    main{padding:20px 0 24px}
    .hero{
      position:relative; overflow:hidden;
      padding:34px 0 10px;
    }
    .hero-grid{
      display:grid; grid-template-columns:1.2fr .8fr; gap:22px; align-items:stretch;
    }
    .hero-card,.glass,.panel,.faq-item,.review-card,.article-card,.service-card,.stat,.compare-card,.timeline-card,.form-card,.case-card{
      background:rgba(255,255,255,.86);
      border:1px solid rgba(228,234,243,.92);
      box-shadow:var(--shadow);
      border-radius:var(--radius);
    }
    .hero-card{padding:28px}
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px;
      background:linear-gradient(135deg, rgba(79,124,255,.12), rgba(66,198,195,.12));
      color:#20406f; font-weight:700; font-size:.88rem;
    }
    h1{
      margin:16px 0 14px; font-size:clamp(2rem, 5vw, 3.6rem); line-height:1.1; letter-spacing:-.03em;
    }
    .lead{color:var(--muted); font-size:1.02rem; max-width:62ch}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:22px}
    .hero-points{display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:24px}
    .hero-point{
      border-radius:18px; background:linear-gradient(180deg,#fff,#f7fbff); border:1px solid var(--line);
      padding:14px 14px 13px;
    }
    .hero-point strong{display:block; font-size:1.08rem}
    .hero-point span{color:var(--muted); font-size:.9rem}
    .hero-side{display:grid; gap:14px}
    .stat-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    .stat{padding:18px; background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,249,255,.96))}
    .stat b{font-size:1.5rem}
    .stat p{margin:4px 0 0; color:var(--muted); font-size:.9rem}
    .panel{padding:18px}
    .panel h2,.section-title{margin:0 0 10px; font-size:1.55rem}
    .section{padding:16px 0}
    .section-head{display:flex; justify-content:space-between; gap:14px; align-items:end; margin-bottom:16px}
    .section-head p{margin:0; color:var(--muted); max-width:70ch}
    .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .grid-2{display:grid; grid-template-columns:repeat(2,1fr); gap:16px}
    .service-card,.case-card,.article-card,.review-card,.compare-card,.faq-item,.form-card,.timeline-card{padding:18px}
    .service-card h3,.case-card h3,.article-card h3,.review-card h3,.compare-card h3{margin:0 0 8px; font-size:1.08rem}
    .service-card p,.case-card p,.article-card p,.review-card p,.compare-card p,.timeline-card p{margin:0; color:var(--muted)}
    .pill-row{display:flex; flex-wrap:wrap; gap:10px; margin-top:12px}
    .pill{padding:7px 10px; border-radius:999px; background:#f4f7ff; border:1px solid #e5ecff; color:#27406d; font-size:.88rem}
    .table-wrap{overflow:auto; border-radius:18px; border:1px solid var(--line); background:#fff}
    table{width:100%; border-collapse:collapse; min-width:840px}
    th,td{padding:14px 14px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top}
    th{background:#f7f9fe; font-size:.95rem}
    tr:last-child td{border-bottom:none}
    .score{
      display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px;
      background:linear-gradient(135deg, rgba(255,122,182,.12), rgba(79,124,255,.12));
      color:#5a346e; font-weight:700
    }
    .timeline{display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
    .timeline-card{position:relative}
    .timeline-card::before{
      content:""; position:absolute; top:18px; left:18px; width:12px; height:12px; border-radius:50%;
      background:linear-gradient(135deg, var(--brand), var(--brand-2));
      box-shadow:0 0 0 6px rgba(79,124,255,.1)
    }
    .timeline-card h3{margin:0 0 8px; padding-left:22px}
    .timeline-card p{padding-left:22px}
    .tags{display:flex; flex-wrap:wrap; gap:10px}
    .tags span{padding:8px 12px; border-radius:999px; border:1px solid var(--line); background:#fff; color:#30435d}
    .faq-item{padding:0; overflow:hidden}
    .faq-q{
      width:100%; background:transparent; border:none; padding:18px; text-align:left; font-size:1rem; font-weight:700;
      color:var(--text); display:flex; justify-content:space-between; gap:16px; cursor:pointer
    }
    .faq-a{max-height:0; overflow:hidden; transition:max-height .28s ease, padding .28s ease; padding:0 18px}
    .faq-item.active .faq-a{max-height:180px; padding:0 18px 18px}
    .faq-icon{color:var(--brand); font-size:1.2rem}
    .form-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    label{display:block; font-weight:700; margin-bottom: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:126px; resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:#98b0ff; box-shadow:0 0 0 4px rgba(79,124,255,.08)}
    .form-actions{display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:14px}
    .note{color:var(--muted); font-size:.92rem}
    .sidebar-card{padding:20px}
    .contact-list{display:grid; gap:12px; margin:0; padding:0; list-style:none}
    .contact-list li{display:flex; justify-content:space-between; gap:12px; border-bottom:1px dashed var(--line); padding-bottom:10px}
    .contact-list li:last-child{border-bottom:none; padding-bottom:0}
    .floating{
      position:fixed; right:16px; bottom:18px; z-index:70; display:grid; gap:10px;
    }
    .floating a,.floating button{
      border:none; border-radius:999px; padding:12px 14px; box-shadow:0 18px 32px rgba(24,39,75,.16);
      background:#fff; color:var(--text); font-weight:700; cursor:pointer
    }
    .floating .primary{background:linear-gradient(135deg, var(--brand), #6f8fff); color:#fff}
    footer{
      background:#eef3fb; color:#203043; margin-top:8px; border-top:1px solid #dde6f4;
    }
    footer a{color:#244d9b}
    .footer-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:20px; padding:26px 0}
    .footer-bottom{border-top:1px solid #d9e3f2; padding:14px 0 18px; color:#51637b; font-size:.92rem}
    .mini-links{display:flex; flex-wrap:wrap; gap:10px}
    .img-row{display:grid; grid-template-columns:repeat(2,1fr); gap:12px}
    .image-card{border-radius:18px; overflow:hidden; border:1px solid var(--line); background:#fff}
    .image-card img{width:100%; height:auto}
    .accordion-grid{display:grid; gap:12px}
    .badge{
      display:inline-flex; padding:6px 10px; border-radius:999px; background:#f2f6ff; color:#35508f; font-size:.85rem; font-weight:700
    }
    .responsive-hide{display:block}
    @media (max-width: 980px){
      .hero-grid,.grid-3,.grid-2,.timeline,.footer-grid,.img-row{grid-template-columns:1fr}
      .hero-points,.stat-grid,.form-grid{grid-template-columns:1fr 1fr}
      .nav-links{display:none}
      .nav-links.open{
        display:flex; position:absolute; left:16px; right:16px; top:76px; flex-direction:column;
        background:#fff; padding:12px; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow)
      }
      .menu-toggle{display:inline-flex}
      .nav{position:relative}
      .nav-cta .btn-secondary{display:none}
    }
    @media (max-width: 640px){
      .container{width:min(var(--max), calc(100% - 22px))}
      .hero-card,.panel,.service-card,.case-card,.article-card,.review-card,.compare-card,.faq-item,.form-card,.timeline-card,.stat{padding:16px}
      .hero-points,.stat-grid,.form-grid{grid-template-columns:1fr}
      h1{font-size:2rem}
      .section-head{flex-direction:column; align-items:flex-start}
      .hero-actions .btn{width:100%}
      .floating{right:10px; bottom:10px}
      .responsive-hide{display:none}
    }
    .reveal{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease}
    .reveal.show{opacity:1; transform:none}