:root{
      --bg:#f5fbf6;
      --bg2:#eef8f0;
      --card:#ffffff;
      --text:#15301f;
      --muted:#5e6f64;
      --line:#d9eadf;
      --green:#16c55c;
      --green2:#0ca44b;
      --green3:#ddf8e5;
      --shadow:0 18px 45px rgba(16, 89, 44, .10);
      --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(22,197,92,.11), transparent 30%),
        radial-gradient(circle at top right, rgba(15,164,75,.08), transparent 28%),
        linear-gradient(180deg, #fbfefb 0%, var(--bg) 55%, #f8fcf9 100%);
    }
    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}
    .site-header{
      position:sticky; top:0; z-index:40;
      backdrop-filter:saturate(160%) blur(14px);
      background:rgba(251,254,251,.82);
      border-bottom:1px solid rgba(217,234,223,.88);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:14px;
      padding:14px 0;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand .ai-page-logo{width:42px; height:42px; border-radius:12px; box-shadow:0 8px 22px rgba(22,197,92,.16); object-fit:cover; background:#fff}
    .brand-text{min-width:0}
    .brand-text strong{display:block; font-size:1rem; letter-spacing:.4px}
    .brand-text span{display:block; font-size:.82rem; color:var(--muted); margin-top:2px}
    .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:0 8px 18px rgba(16,89,44,.06);
    }
    .nav-links{display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:flex-end}
    .nav-links a{font-size:.95rem; color:#284535; padding:8px 0; position:relative}
    .nav-links a::after{
      content:""; position:absolute; left:0; bottom:0; width:100%; height:2px;
      background:linear-gradient(90deg, var(--green), var(--green2)); transform:scaleX(0); transform-origin:left; transition:.25s ease;
    }
    .nav-links a:hover::after{transform:scaleX(1)}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border:none; border-radius:999px; padding:12px 18px; font-weight:700;
      transition:.25s ease; cursor:pointer; white-space:nowrap;
    }
    .btn-primary{
      color:#fff; background:linear-gradient(135deg, var(--green) 0%, #1bdf69 52%, #0ea14a 100%);
      box-shadow:0 14px 28px rgba(22,197,92,.24);
    }
    .btn-primary:hover{transform:translateY(-2px); box-shadow:0 18px 34px rgba(22,197,92,.28)}
    .btn-ghost{
      background:#fff; color:var(--text); border:1px solid var(--line);
      box-shadow:0 8px 16px rgba(16,89,44,.05);
    }
    .btn-ghost:hover{transform:translateY(-2px); border-color:#bfe7cc}
    .hero{
      position:relative; overflow:hidden;
      padding:36px 0 22px;
    }
    .hero-grid{
      display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:stretch;
    }
    .hero-copy{
      background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,252,248,.95));
      border:1px solid rgba(217,234,223,.9);
      border-radius:28px; box-shadow:var(--shadow);
      padding:28px;
      position:relative;
    }
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px;
      background:var(--green3); color:#0c6c31; border:1px solid #c6ebd4;
      padding:8px 12px; border-radius:999px; font-size:.9rem; font-weight:700;
    }
    h1{
      margin:16px 0 12px; font-size:clamp(2rem, 4.3vw, 3.6rem); line-height:1.06;
      letter-spacing:-.03em;
    }
    .hero-copy p{margin:0; font-size:1.05rem; line-height:1.8; color:var(--muted); max-width:56ch}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:22px}
    .hero-points{
      display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; margin-top:22px
    }
    .point{
      padding:14px; border-radius:18px; background:#f9fdf9; border:1px solid var(--line)
    }
    .point strong{display:block; font-size:1rem; margin-bottom:6px}
    .point span{display:block; font-size:.92rem; color:var(--muted); line-height:1.55}
    .hero-side{
      display:grid; gap:14px;
    }
    .hero-stat{
      background:linear-gradient(180deg, rgba(21,48,31,.96), rgba(15,95,43,.95));
      color:#fff; border-radius:28px; padding:24px; box-shadow:var(--shadow);
      position:relative; overflow:hidden;
    }
    .hero-stat::before{
      content:""; position:absolute; inset:-40% -20% auto auto; width:220px; height:220px;
      background:radial-gradient(circle, rgba(22,197,92,.34), transparent 65%);
      pointer-events:none;
    }
    .hero-stat h2{margin:0 0 10px; font-size:1.3rem}
    .stat-grid{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; margin-top:14px}
    .stat{
      background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12);
      border-radius:18px; padding:14px;
    }
    .stat b{display:block; font-size:1.4rem; margin-bottom:4px}
    .stat span{font-size:.88rem; color:rgba(255,255,255,.82); line-height:1.4}
    .hero-mini{
      background:#fff; border:1px solid var(--line); border-radius:22px; padding:18px; box-shadow:0 12px 30px rgba(16,89,44,.06)
    }
    .hero-mini h3{margin:0 0 10px; font-size:1.05rem}
    .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .tag{padding:8px 12px; border-radius:999px; background:#f5fbf6; border:1px solid #dfeee3; font-size:.9rem; color:#295141}
    main section{padding:22px 0}
    .section-card{
      background:rgba(255,255,255,.88); border:1px solid rgba(217,234,223,.9);
      border-radius:28px; box-shadow:var(--shadow); padding:26px;
    }
    .section-head{display:flex; align-items:end; justify-content:space-between; gap:12px; margin-bottom:18px}
    .section-head h2{margin:0; font-size:1.7rem}
    .section-head p{margin:0; color:var(--muted); line-height:1.6; max-width:60ch}
    .grid-3{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}
    .grid-4{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px}
    .card{
      background:#fff; border:1px solid var(--line); border-radius:22px; padding:18px;
      box-shadow:0 10px 24px rgba(16,89,44,.05); transition:.25s ease;
    }
    .card:hover{transform:translateY(-4px); box-shadow:0 18px 34px rgba(16,89,44,.10)}
    .card h3{margin:0 0 8px; font-size:1.08rem}
    .card p, .card li{color:var(--muted); line-height:1.7}
    .list-clean{margin:0; padding-left:18px}
    .metric{
      display:flex; flex-direction:column; gap:8px; min-height:140px;
      background:linear-gradient(180deg,#fff, #f8fcf9)
    }
    .metric strong{font-size:1.9rem; color:#0f6e35}
    .metric span{color:var(--muted)}
    .service-badges{display:flex; flex-wrap:wrap; gap:10px}
    .service-badges .tag{background:#fff}
    .steps{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px}
    .step{position:relative}
    .step .num{
      width:42px; height:42px; border-radius:50%; display:grid; place-items:center;
      background:linear-gradient(135deg, var(--green), #0fa54b); color:#fff; font-weight:800; margin-bottom:12px;
      box-shadow:0 10px 20px rgba(22,197,92,.18);
    }
    .compare-wrap{overflow:auto; border-radius:22px; border:1px solid var(--line); background:#fff}
    table{width:100%; border-collapse:collapse; min-width:860px}
    th,td{padding:14px 16px; border-bottom:1px solid #edf3ef; text-align:left; vertical-align:top}
    th{background:#f6fbf7; color:#224132; font-size:.95rem}
    td{color:var(--muted); line-height:1.65}
    .rating-box{
      display:grid; grid-template-columns:1.05fr .95fr; gap:16px; align-items:stretch;
    }
    .score-card{
      background:linear-gradient(135deg, #15c55c, #0c9c47); color:#fff; border-radius:22px; padding:20px
    }
    .score-card .big{font-size:2.4rem; font-weight:900; line-height:1}
    .score-card p{margin:10px 0 0; color:rgba(255,255,255,.88); line-height:1.7}
    .reviews, .articles, .faq-list, .network, .timeline, .gallery{display:grid; gap:16px}
    .review-meta{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px}
    .avatar{
      width:42px; height:42px; border-radius:50%; display:grid; place-items:center;
      background:linear-gradient(135deg, #e7f8eb, #c9f2d6); color:#106534; font-weight:800;
    }
    details{
      background:#fff; border:1px solid var(--line); border-radius:18px; padding:0 16px; box-shadow:0 8px 18px rgba(16,89,44,.04)
    }
    summary{
      cursor:pointer; list-style:none; padding:16px 0; font-weight:700; color:#1c3f2a;
      display:flex; align-items:center; justify-content:space-between; gap:10px;
    }
    summary::-webkit-details-marker{display:none}
    summary::after{content:"+"; color:#0e9a47; font-size:1.2rem; font-weight:800}
    details[open] summary::after{content:"−"}
    details p{margin:0 0 16px; color:var(--muted); line-height:1.75}
    .faq-list details+details{margin-top:12px}
    .articles .card a{color:#0d8f42; font-weight:700}
    .articles .card a:hover{text-decoration:underline}
    .contact-grid{
      display:grid; grid-template-columns:1fr .95fr; gap:16px; align-items:start;
    }
    .form{
      display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px
    }
    .field{display:flex; flex-direction:column; gap:8px}
    .field.full{grid-column:1 / -1}
    label{font-size:.92rem; color:#244434; font-weight:700}
    input,select,textarea{
      width:100%; border:1px solid var(--line); background:#fff; color:var(--text);
      border-radius:14px; padding:12px 14px; font:inherit; outline:none; transition:.2s ease;
    }
    textarea{min-height:120px; resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:#8ddeab; box-shadow:0 0 0 4px rgba(22,197,92,.10)}
    .contact-list{display:grid; gap:12px}
    .contact-item{
      display:flex; gap:12px; align-items:flex-start; padding:14px; border-radius:18px; background:#f8fcf9; border:1px solid var(--line)
    }
    .contact-item strong{display:block; margin-bottom:4px}
    .contact-item span, .contact-item a{color:var(--muted); line-height:1.6}
    .footer{
      margin-top:18px; background:#0f2416; color:#d8f0e1; padding:26px 0;
      border-top:1px solid rgba(255,255,255,.08)
    }
    .footer a{color:#bff2ce}
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr .9fr; gap:16px; align-items:start}
    .footer h3,.footer h4{margin:0 0 12px}
    .footer p, .footer li{color:#b4ccbc; line-height:1.8}
    .footer ul{margin:0; padding-left:18px}
    .floating{
      position:fixed; right:16px; bottom:16px; z-index:60; display:grid; gap:10px
    }
    .floating a, .floating button{
      border:none; border-radius:999px; min-width:54px; min-height:54px; padding:0 16px;
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      background:linear-gradient(135deg, var(--green), var(--green2)); color:#fff; box-shadow:0 14px 26px rgba(22,197,92,.28);
      cursor:pointer;
    }
    .floating button{background:#fff; color:var(--text); border:1px solid var(--line)}
    .mobile-only{display:none}
    .scroll-reveal{opacity:0; transform:translateY(16px); transition:.6s ease}
    .scroll-reveal.in{opacity:1; transform:none}
    .subtle{color:var(--muted)}
    .banner-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}
    .banner-grid img{border-radius:18px; border:1px solid var(--line); background:#fff; box-shadow:0 10px 24px rgba(16,89,44,.05)}
    .inline-link{
      display:inline-flex; align-items:center; gap:8px; color:#0b8f41; font-weight:700
    }
    .inline-link:hover{text-decoration:underline}
    @media (max-width: 980px){
      .hero-grid, .rating-box, .contact-grid, .footer-grid{grid-template-columns:1fr}
      .grid-4, .grid-3, .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
      .section-head{align-items:start; flex-direction:column}
      .nav-toggle{display:inline-flex}
      .nav-links{
        position:absolute; left:16px; right:16px; top:68px; display:none; flex-direction:column; align-items:flex-start;
        padding:16px; border-radius:18px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow)
      }
      .nav-links.open{display:flex}
      .nav{position:relative}
    }
    @media (max-width: 640px){
      .container{width:min(var(--max), calc(100% - 20px))}
      .hero-copy, .section-card{padding:20px}
      .hero-points, .grid-4, .grid-3, .steps, .form, .banner-grid{grid-template-columns:1fr}
      .mobile-only{display:inline-flex}
      .btn{width:100%}
      .hero-actions{flex-direction:column}
      .nav-links{top:64px}
      h1{font-size:2rem}
    }