:root{
      --bg:#f4fbf7;
      --bg-2:#ffffff;
      --card:#ffffff;
      --line:#d8e8de;
      --text:#173126;
      --muted:#5a7167;
      --brand:#2aa46f;
      --brand-2:#7fd7b0;
      --accent:#0f8d5a;
      --soft:#edf9f2;
      --shadow:0 14px 40px rgba(25, 77, 55, .08);
      --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;
      color:var(--text);
      background:
        radial-gradient(circle at top left, rgba(127,215,176,.22), transparent 28%),
        radial-gradient(circle at right 12%, rgba(42,164,111,.10), transparent 24%),
        linear-gradient(180deg, #f7fcf9 0%, #eef8f2 44%, #f6fbf8 100%);
      line-height:1.7;
    }
    a{color:var(--accent); text-decoration:none}
    img{display:block; max-width:100%}
    .container{width:min(100% - 32px, var(--max)); margin:0 auto}
    header{
      position:sticky; top:0; z-index:50;
      backdrop-filter:saturate(180%) blur(14px);
      background:rgba(244,251,247,.84);
      border-bottom:1px solid rgba(216,232,222,.8);
    }
    .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; padding:4px; box-shadow:0 8px 20px rgba(42,164,111,.12)}
    .brand strong{display:block; font-size:1.02rem; line-height:1.1}
    .brand span{display:block; font-size:.82rem; color:var(--muted)}
    .nav-links{display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:flex-end}
    .nav-links a{font-size:.95rem; color:var(--text); opacity:.9}
    .nav-links a:hover{color:var(--accent)}
    .menu-btn{display:none; border:1px solid var(--line); background:#fff; color:var(--text); border-radius:12px; padding:10px 12px}
    .top-cta{display:flex; align-items:center; gap:10px}
    .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:.22s ease; box-shadow:none;
    }
    .btn-primary{background:linear-gradient(135deg, var(--brand), #1f8b63); color:#fff; box-shadow:0 12px 22px rgba(42,164,111,.20)}
    .btn-primary:hover{transform:translateY(-2px); box-shadow:0 16px 28px rgba(42,164,111,.26)}
    .btn-secondary{background:#fff; border-color:var(--line); color:var(--text)}
    .btn-secondary:hover{transform:translateY(-2px); border-color:#b8d4c4}
    .hero{
      padding:34px 0 24px;
    }
    .hero-grid{
      display:grid; grid-template-columns:1.18fr .82fr; gap:22px; align-items:stretch;
    }
    .hero-main, .hero-side, .card, .panel, .faq-item, .review, .article, .price-box, .time-item, .contact-box, .stat, .case-card{
      background:rgba(255,255,255,.92);
      border:1px solid rgba(216,232,222,.95);
      box-shadow:var(--shadow);
    }
    .hero-main{border-radius:30px; padding:34px; position:relative; overflow:hidden}
    .hero-main:before{
      content:""; position:absolute; inset:auto -8% -22% auto; width:280px; height:280px;
      background:radial-gradient(circle, rgba(127,215,176,.28), transparent 68%);
      pointer-events:none;
    }
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border-radius:999px;
      background:var(--soft); color:var(--accent); font-weight:700; font-size:.92rem; border:1px solid #d5efe0;
    }
    h1{margin:16px 0 12px; font-size:clamp(2rem, 4.4vw, 4rem); line-height:1.1; letter-spacing:-.02em}
    .lead{font-size:1.05rem; color:var(--muted); max-width:62ch; margin:0 0 22px}
    .hero-actions{display:flex; gap:12px; flex-wrap:wrap; margin-bottom:20px}
    .hero-points{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:18px}
    .mini{
      border-radius:18px; padding:14px 16px; background:linear-gradient(180deg,#ffffff, #f5fbf7);
      border:1px solid var(--line);
    }
    .mini strong{display:block; font-size:1.02rem}
    .mini span{display:block; color:var(--muted); font-size:.92rem}
    .hero-side{border-radius:30px; padding:22px}
    .side-title{margin:0 0 10px; font-size:1.15rem}
    .stat-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px}
    .stat{border-radius:20px; padding:18px}
    .stat b{display:block; font-size:1.8rem; line-height:1.05}
    .stat span{display:block; color:var(--muted); font-size:.92rem}
    section{padding:18px 0}
    .section-head{display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:16px}
    .section-head h2{margin:0; font-size:clamp(1.45rem, 2.6vw, 2.2rem)}
    .section-head p{margin:0; color:var(--muted); max-width:64ch}
    .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{border-radius:24px; padding:22px}
    .card h3{margin:0 0 10px; font-size:1.1rem}
    .card p{margin:0; color:var(--muted)}
    .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .tag-cloud span{padding:9px 12px; background:#fff; border:1px solid var(--line); border-radius:999px; font-size:.92rem}
    .workflow{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
    .step{padding:20px; border-radius:22px; background:linear-gradient(180deg,#fff, #f5fbf7); border:1px solid var(--line)}
    .step strong{display:inline-flex; width:34px; height:34px; align-items:center; justify-content:center; border-radius:12px; background:var(--soft); color:var(--accent); margin-bottom:12px}
    .table-wrap{overflow:auto; border-radius:24px; border:1px solid var(--line); background:#fff; box-shadow:var(--shadow)}
    table{width:100%; border-collapse:collapse; min-width:760px}
    th, td{padding:16px 18px; border-bottom:1px solid #e4efe7; text-align:left; vertical-align:top}
    th{background:#f5fbf7; color:var(--text)}
    tr:hover td{background:#fbfefc}
    .rating{display:inline-flex; gap:4px; color:#f2b01e}
    .focus-card{
      border-radius:28px; padding:24px; background:linear-gradient(135deg, #ffffff, #f3fbf7 55%, #eef9f2);
      border:1px solid var(--line);
    }
    .case, .review, .article, .faq-item, .price-box, .time-item, .contact-box{border-radius:24px; padding:20px}
    .case-meta{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:10px}
    .badge{display:inline-flex; align-items:center; border-radius:999px; padding:7px 11px; background:#edf9f2; border:1px solid #d6ede2; color:var(--accent); font-size:.88rem}
    .article-list{display:grid; gap:12px}
    .article{display:flex; align-items:flex-start; justify-content:space-between; gap:16px}
    .article b{display:block; margin-bottom:4px}
    .article small{color:var(--muted)}
    .faq-item{padding:0; overflow:hidden}
    .faq-q{width:100%; background:none; border:0; text-align:left; padding:18px 20px; font-size:1rem; font-weight:700; color:var(--text); display:flex; justify-content:space-between; gap:14px; cursor:pointer}
    .faq-a{padding:0 20px 18px; color:var(--muted); display:none}
    .faq-item.active .faq-a{display:block}
    .faq-item.active .faq-q .icon{transform:rotate(45deg)}
    .faq-q .icon{transition:.2s ease; color:var(--accent)}
    .form-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px}
    .field{display:flex; flex-direction:column; gap:8px}
    .field label{font-weight:700}
    input, select, textarea{
      width:100%; border:1px solid #cfe2d7; background:#fff; color:var(--text);
      border-radius:14px; padding:13px 14px; font:inherit; outline:none;
    }
    input:focus, select:focus, textarea:focus{border-color:#86cdaa; box-shadow:0 0 0 4px rgba(127,215,176,.15)}
    textarea{min-height:120px; resize:vertical}
    .footer{
      margin-top:22px; padding:24px 0 28px; border-top:1px solid rgba(216,232,222,.9); background:rgba(244,251,247,.88)
    }
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:18px}
    .footer small, .footer p, .footer a{color:var(--muted)}
    .footer-links{display:flex; flex-wrap:wrap; gap:10px}
    .footer-links a{padding:8px 12px; border-radius:999px; background:#fff; border:1px solid var(--line)}
    .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:50%; display:grid; place-items:center;
      background:linear-gradient(135deg,var(--brand),#1f8b63); color:#fff; border:0; box-shadow:0 12px 24px rgba(42,164,111,.24); cursor:pointer
    }
    .contact-panel{
      position:fixed; right:16px; bottom:76px; z-index:61; width:min(92vw,320px);
      background:#fff; border:1px solid var(--line); border-radius:22px; box-shadow:var(--shadow);
      padding:16px; display:none
    }
    .contact-panel.show{display:block}
    .contact-panel h3{margin:0 0 10px}
    .contact-panel .qr{width:100%; border-radius:18px; overflow:hidden; border:1px solid var(--line); margin:10px 0}
    .contact-panel .qr img{width:100%; height:auto}
    .scrolltop{position:fixed; right:16px; bottom:132px; z-index:60; opacity:0; visibility:hidden; transform:translateY(8px); transition:.2s ease}
    .scrolltop.show{opacity:1; visibility:visible; transform:none}
    .marquee{
      display:flex; gap:12px; flex-wrap:wrap;
    }
    .marquee a{padding:8px 12px; border-radius:999px; border:1px solid var(--line); background:#fff}
    .gallery{display:grid; grid-template-columns:1fr 1fr; gap:16px}
    .media-box{border-radius:24px; overflow:hidden; border:1px solid var(--line); background:#fff; box-shadow:var(--shadow)}
    .media-box img{width:100%; height:auto; display:block}
    .center-note{padding:18px 20px; background:#fff; border:1px solid var(--line); border-radius:22px; color:var(--muted)}
    .mobile-only{display:none}
    @media (max-width: 980px){
      .hero-grid, .grid-3, .workflow, .grid-2, .footer-grid, .gallery{grid-template-columns:1fr}
      .hero-main{padding:26px}
      .nav-links{display:none}
      .menu-btn{display:inline-flex}
      .nav.open .nav-links{
        display:flex; position:absolute; left:16px; right:16px; top:68px; flex-direction:column; align-items:flex-start;
        background:#fff; border:1px solid var(--line); border-radius:18px; padding:14px; box-shadow:var(--shadow)
      }
      .top-cta{display:none}
      .mobile-only{display:block}
      .form-grid{grid-template-columns:1fr}
      .hero-points{grid-template-columns:1fr}
      .stat-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width: 640px){
      .container{width:min(100% - 24px, var(--max))}
      h1{font-size:2rem}
      .section-head{align-items:flex-start; flex-direction:column}
      .stat-grid{grid-template-columns:1fr}
      .hero-actions .btn{width:100%}
      .hero-actions{display:grid; grid-template-columns:1fr}
    }
    .reveal{opacity:0; transform:translateY(18px); transition:.55s ease}
    .reveal.in{opacity:1; transform:none}