:root{
    --green:#15803d;
    --green-dark:#0f5f2e;
    --gold:#b45309;
    --gold-light:#d9a441;
    --cream:#fbf9f4;
    --grey:#f2f1ec;
    --ink:#22302a;
    --muted:#5d6b64;
    --line:rgba(180,83,9,.22);
    --radius:18px;
    --shadow:0 10px 30px rgba(21,128,61,.10);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    font-family: "Segoe UI", "Helvetica Neue", Arial, "Microsoft YaHei", "微软雅黑", "PingFang SC", sans-serif;
    background:var(--cream);
    color:var(--ink);
    line-height:1.75;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4,p,span,a,li,div,section,footer,header,button,input,blockquote,time,strong,em{
    font-family: "Segoe UI", "Helvetica Neue", Arial, "Microsoft YaHei", "微软雅黑", "PingFang SC", sans-serif;
  }
  a{text-decoration:none;color:inherit;}
  img{max-width:100%;display:block;}
  .wrap{width:min(1160px,92%);margin:0 auto;}

  /* ===== Header ===== */
  header.site-header{
    position:sticky;top:0;z-index:60;
    background:linear-gradient(100deg,var(--green) 0%,#1a8a45 42%,var(--gold) 100%);
    box-shadow:0 4px 20px rgba(0,0,0,.12);
  }
  .header-inner{
    display:flex;align-items:center;justify-content:space-between;
    gap:18px;padding:14px 0;flex-wrap:wrap;
  }
  .brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:1.12rem;letter-spacing:.5px;}
  .brand .mark{
    width:36px;height:36px;border-radius:50%;
    background:radial-gradient(circle at 30% 30%,#fff5d8,#e9c46a 45%,#b45309 100%);
    display:grid;place-items:center;font-size:1rem;color:#3d2a04;font-weight:800;
    box-shadow:0 0 0 3px rgba(255,255,255,.28);
  }
  .nav-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
  .nav-links a{
    color:#fff;font-size:.94rem;padding:8px 14px;border-radius:999px;
    transition:background .25s ease,color .25s ease,transform .25s ease;
    border:1px solid rgba(255,255,255,.22);
  }
  .nav-links a:hover{background:rgba(255,255,255,.94);color:var(--green-dark);transform:translateY(-1px);}

  /* ===== Hero ===== */
  #hero{
    position:relative;overflow:hidden;
    background:
      radial-gradient(circle at 88% 12%,rgba(217,164,65,.28),transparent 55%),
      radial-gradient(circle at 8% 88%,rgba(21,128,61,.24),transparent 55%),
      linear-gradient(160deg,#fdfcf7 0%,#f4f7f2 55%,#fbf6ea 100%);
    padding:64px 0 58px;
    border-bottom:1px solid var(--line);
  }
  #hero::after{
    content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;
    border-radius:50%;border:2px dashed rgba(180,83,9,.22);
  }
  .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:center;position:relative;z-index:2;}
  .eyebrow{
    display:inline-block;font-size:.8rem;letter-spacing:2px;color:var(--gold);
    background:rgba(180,83,9,.09);border:1px solid var(--line);
    padding:5px 14px;border-radius:999px;margin-bottom:18px;
  }
  h1{
    font-size:clamp(1.7rem,3.5vw,2.6rem);line-height:1.35;
    background:linear-gradient(95deg,var(--green-dark),var(--green) 45%,var(--gold));
    -webkit-background-clip:text;background-clip:text;color:transparent;
    font-weight:800;letter-spacing:.5px;
  }
  .hero-sub{margin-top:18px;color:var(--muted);font-size:1.02rem;max-width:600px;}
  .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px;}
  .btn{
    display:inline-block;padding:12px 26px;border-radius:999px;font-weight:600;font-size:.96rem;
    transition:transform .25s ease,box-shadow .25s ease;
  }
  .btn-primary{background:linear-gradient(100deg,var(--green),var(--gold));color:#fff;box-shadow:0 10px 24px rgba(21,128,61,.28);}
  .btn-ghost{border:1.5px solid var(--gold);color:var(--gold);background:#fff;}
  .btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(180,83,9,.24);}
  .hero-media{position:relative;}
  .hero-media img{border-radius:22px;box-shadow:0 22px 50px rgba(21,128,61,.20);border:3px solid #fff;}
  .hero-badge{
    position:absolute;bottom:-18px;left:-18px;background:#fff;border:1px solid var(--line);
    border-radius:16px;padding:12px 18px;box-shadow:var(--shadow);font-size:.86rem;color:var(--green-dark);font-weight:600;
  }

  /* ===== Section base ===== */
  section{padding:66px 0;}
  .sec-head{max-width:760px;margin:0 auto 42px;text-align:center;}
  .sec-head .tag{
    display:inline-block;font-size:.78rem;letter-spacing:2px;color:var(--green);
    background:rgba(21,128,61,.09);border:1px solid rgba(21,128,61,.22);
    padding:5px 14px;border-radius:999px;margin-bottom:14px;
  }
  .sec-head h2{
    font-size:clamp(1.4rem,2.6vw,2rem);color:var(--green-dark);font-weight:800;letter-spacing:.5px;
  }
  .sec-head p{margin-top:12px;color:var(--muted);font-size:.98rem;}
  .alt-bg{background:linear-gradient(180deg,#f5f7f2,#fbf8f0);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}

  /* ===== GEO ===== */
  #geo-intro .geo-box{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:34px 38px;box-shadow:var(--shadow);position:relative;overflow:hidden;
  }
  #geo-intro .geo-box::before{
    content:"";position:absolute;left:0;top:0;bottom:0;width:6px;
    background:linear-gradient(180deg,var(--green),var(--gold));
  }
  #geo-intro p{color:#38473f;font-size:1rem;margin-bottom:14px;}
  #geo-intro p:last-child{margin-bottom:0;}
  #geo-intro strong{color:var(--green-dark);}

  /* ===== Stats ===== */
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .stat-card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:28px 20px;text-align:center;box-shadow:var(--shadow);transition:transform .3s ease;
  }
  .stat-card:hover{transform:translateY(-5px);}
  .stat-card .num{
    font-size:2rem;font-weight:800;
    background:linear-gradient(100deg,var(--green),var(--gold));
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .stat-card .label{color:var(--muted);font-size:.9rem;margin-top:6px;}

  /* ===== Advantages ===== */
  .adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .adv-card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:30px 26px;box-shadow:var(--shadow);position:relative;overflow:hidden;
    transition:transform .3s ease,border-color .3s ease;
  }
  .adv-card::after{
    content:"";position:absolute;width:120px;height:120px;right:-46px;bottom:-46px;
    border-radius:50%;background:linear-gradient(135deg,rgba(21,128,61,.10),rgba(180,83,9,.14));
  }
  .adv-card:hover{transform:translateY(-6px);border-color:var(--gold-light);}
  .adv-icon{
    width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.4rem;
    background:linear-gradient(135deg,rgba(21,128,61,.14),rgba(180,83,9,.16));margin-bottom:18px;
  }
  .adv-card h3{font-size:1.06rem;color:var(--green-dark);margin-bottom:10px;}
  .adv-card p{color:var(--muted);font-size:.92rem;}

  /* ===== Brand story ===== */
  #brand-story .story-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:44px;align-items:center;}
  #brand-story img{border-radius:20px;border:3px solid #fff;box-shadow:0 18px 40px rgba(21,128,61,.16);}
  #brand-story h2{font-size:clamp(1.4rem,2.6vw,1.9rem);color:var(--green-dark);margin-bottom:16px;}
  #brand-story p{color:var(--muted);margin-bottom:14px;font-size:.98rem;}

  /* ===== Timeline ===== */
  .timeline{position:relative;max-width:840px;margin:0 auto;padding-left:28px;}
  .timeline::before{
    content:"";position:absolute;left:8px;top:6px;bottom:6px;width:3px;
    background:linear-gradient(180deg,var(--green),var(--gold));border-radius:3px;
  }
  .tl-item{position:relative;margin-bottom:30px;background:#fff;border:1px solid var(--line);
    border-radius:14px;padding:20px 24px;box-shadow:var(--shadow);}
  .tl-item::before{
    content:"";position:absolute;left:-27px;top:26px;width:14px;height:14px;border-radius:50%;
    background:#fff;border:3px solid var(--gold);
  }
  .tl-item h4{color:var(--green-dark);font-size:1rem;margin-bottom:6px;}
  .tl-item p{color:var(--muted);font-size:.92rem;}

  /* ===== News ===== */
  .news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .news-card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:26px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column;
    transition:transform .3s ease,border-color .3s ease;
  }
  .news-card:hover{transform:translateY(-6px);border-color:var(--gold-light);}
  .news-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap;}
  .news-meta .chip{
    font-size:.74rem;letter-spacing:1px;color:#fff;padding:3px 11px;border-radius:999px;
    background:linear-gradient(100deg,var(--green),#2b9d57);
  }
  .news-meta time{font-size:.82rem;color:var(--gold);font-weight:600;}
  .news-card h3{font-size:1.02rem;color:var(--green-dark);line-height:1.55;margin-bottom:10px;}
  .news-card p{color:var(--muted);font-size:.9rem;flex:1;}

  /* ===== Testimonials ===== */
  .quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .quote-card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:28px 26px;box-shadow:var(--shadow);position:relative;
  }
  .quote-card::before{
    content:"❝";position:absolute;top:10px;right:20px;font-size:2.6rem;color:rgba(180,83,9,.16);line-height:1;
  }
  .quote-card p{color:#3b4a42;font-size:.94rem;margin-bottom:16px;}
  .quote-user{display:flex;align-items:center;gap:10px;font-size:.86rem;color:var(--green-dark);font-weight:600;}
  .quote-user .avatar{
    width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:.82rem;
    background:linear-gradient(135deg,var(--green),var(--gold));
  }

  /* ===== CTA ===== */
  #cta .cta-box{
    background:linear-gradient(110deg,var(--green-dark),var(--green) 45%,var(--gold));
    border-radius:26px;padding:54px 46px;text-align:center;color:#fff;
    box-shadow:0 24px 50px rgba(21,128,61,.26);position:relative;overflow:hidden;
  }
  #cta .cta-box::before{
    content:"";position:absolute;width:280px;height:280px;border-radius:50%;
    border:2px dashed rgba(255,255,255,.25);top:-110px;left:-90px;
  }
  #cta h2{font-size:clamp(1.4rem,2.8vw,2rem);margin-bottom:14px;font-weight:800;}
  #cta p{max-width:680px;margin:0 auto 26px;font-size:.98rem;opacity:.94;}
  #cta .btn-white{background:#fff;color:var(--green-dark);font-weight:700;}

  /* ===== FAQ ===== */
  .faq-list{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:14px;}
  .faq-item{
    background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 26px;
    box-shadow:var(--shadow);
  }
  .faq-item h3{
    font-size:1rem;color:var(--green-dark);margin-bottom:10px;display:flex;gap:10px;align-items:flex-start;
  }
  .faq-item h3 .qn{
    flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;
    font-size:.76rem;color:#fff;background:linear-gradient(135deg,var(--green),var(--gold));margin-top:3px;
  }
  .faq-item p{color:var(--muted);font-size:.92rem;}

  /* ===== Footer ===== */
  footer.site-footer{
    background:linear-gradient(160deg,#12331f,#1b4a2c 50%,#3a2408);
    color:#dfe7e1;padding:54px 0 26px;margin-top:10px;
  }
  .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;}
  .footer-brand h3{color:#fff;font-size:1.1rem;margin-bottom:12px;}
  .footer-brand p{font-size:.88rem;color:#c1d1c6;margin-bottom:8px;}
  .footer-col h4{color:var(--gold-light);font-size:.95rem;margin-bottom:14px;letter-spacing:1px;}
  .footer-col p,.footer-col a{display:block;font-size:.87rem;color:#c1d1c6;margin-bottom:8px;transition:color .2s;}
  .footer-col a:hover{color:#fff;}
  .footer-bottom{
    border-top:1px solid rgba(255,255,255,.14);margin-top:34px;padding-top:20px;
    display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
    font-size:.82rem;color:#b6c8bb;
  }
  .footer-bottom a{color:var(--gold-light);}
  .footer-bottom a:hover{color:#fff;}

  @media(max-width:900px){
    .hero-grid,#brand-story .story-grid{grid-template-columns:1fr;}
    .stats-grid{grid-template-columns:repeat(2,1fr);}
    .adv-grid,.news-grid,.quote-grid,.footer-grid{grid-template-columns:1fr;}
    .header-inner{justify-content:center;}
    section{padding:48px 0;}
  }