:root{
    --main:#16a34a;
    --accent:#84cc16;
    --bg:#f7fee7;
    --ink:#1a2e05;
    --line:rgba(26,46,5,.16);
    --soft:rgba(26,46,5,.06);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background-color:var(--bg);
    color:var(--ink);
    font-family:"Inter","PingFang SC","Microsoft YaHei",sans-serif;
    font-weight:400;
    line-height:1.85;
    letter-spacing:.01em;
    background-image:
      linear-gradient(to right, var(--soft) 1px, transparent 1px),
      linear-gradient(to bottom, var(--soft) 1px, transparent 1px);
    background-size:64px 64px;
    background-position:center top;
  }
  h1,h2,h3,h4,h5{
    font-weight:900;
    letter-spacing:-0.02em;
    line-height:1.15;
    color:var(--ink);
  }
  a{color:var(--main);text-decoration:none;}
  a:hover{color:var(--accent);}
  .mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:0;}

  /* ===== 导航 ===== */
  .site-nav{
    position:sticky;top:0;z-index:1000;
    background:rgba(247,254,231,.92);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{
    max-width:1080px;margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 24px;gap:16px;
  }
  .brand{
    font-weight:900;font-size:1.32rem;color:var(--ink);
    letter-spacing:-.01em;white-space:nowrap;
  }
  .brand i{color:var(--main);margin-right:8px;}
  .nav-links{
    display:flex;align-items:center;gap:28px;list-style:none;
    margin:0;padding:0;
  }
  .nav-links a{
    color:var(--ink);font-weight:600;font-size:.94rem;
    padding:4px 0;border-bottom:2px solid transparent;
    transition:border-color .25s ease,color .25s ease;
  }
  .nav-links a:hover{border-bottom-color:var(--main);color:var(--main);}
  .nav-toggle{
    display:none;background:none;border:1px solid var(--line);
    border-radius:6px;padding:6px 12px;color:var(--ink);font-size:1.1rem;
  }

  /* ===== 通用容器 ===== */
  .wrap{max-width:860px;margin:0 auto;padding:0 24px;}
  .rule{border:none;border-top:1px solid var(--line);margin:0;}
  section{padding:96px 0;}
  .eyebrow{
    display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.22em;
    text-transform:uppercase;color:var(--main);
    border:1px solid var(--main);border-radius:2px;
    padding:4px 12px;margin-bottom:26px;
  }
  .lede{font-size:1.12rem;color:rgba(26,46,5,.78);max-width:640px;}
  .small-note{font-size:.86rem;color:rgba(26,46,5,.58);}

  /* ===== Hero ===== */
  .hero{padding:120px 0 100px;text-align:center;position:relative;}
  .hero h1{
    font-size:clamp(2.6rem,7vw,4.1rem);
    line-height:1.05;max-width:20ch;margin:0 auto 28px;
  }
  .hero h1 .hl{color:var(--main);}
  .hero .lede{margin:0 auto 44px;text-align:center;}
  .btn-row{
    display:flex;gap:16px;justify-content:center;flex-wrap:wrap;
  }
  .btn-main,.btn-ghost{
    display:inline-flex;align-items:center;gap:10px;
    padding:15px 34px;border-radius:3px;font-weight:700;font-size:.98rem;
    transition:all .25s ease;border:1.5px solid var(--main);
  }
  .btn-main{background:var(--main);color:#fff;}
  .btn-main:hover{background:var(--accent);border-color:var(--accent);color:var(--ink);}
  .btn-ghost{background:transparent;color:var(--main);}
  .btn-ghost:hover{background:var(--main);color:#fff;}
  .hero-meta{
    margin-top:64px;display:flex;justify-content:center;gap:56px;flex-wrap:wrap;
    border-top:1px solid var(--line);padding-top:40px;
  }
  .hero-meta div{text-align:center;}
  .hero-meta .num{font-family:ui-monospace,Menlo,monospace;font-size:1.9rem;font-weight:700;color:var(--main);line-height:1;}
  .hero-meta .lbl{font-size:.8rem;letter-spacing:.12em;color:rgba(26,46,5,.6);margin-top:10px;}

  /* ===== 手风琴（使用说明） ===== */
  .acc-list{border-top:1px solid var(--line);margin-top:44px;}
  .acc-item{border-bottom:1px solid var(--line);}
  .acc-head{
    width:100%;background:none;border:none;text-align:left;
    display:flex;align-items:center;justify-content:space-between;gap:20px;
    padding:26px 4px;cursor:pointer;color:var(--ink);
    font-weight:800;font-size:1.12rem;transition:color .2s ease;
  }
  .acc-head:hover{color:var(--main);}
  .acc-head .idx{
    font-family:ui-monospace,Menlo,monospace;font-size:.86rem;
    color:var(--main);margin-right:16px;font-weight:600;
  }
  .acc-head .ttl{flex:1;}
  .acc-head .ic{
    width:26px;height:26px;flex:0 0 26px;border:1px solid var(--line);
    border-radius:50%;display:grid;place-items:center;
    font-size:.72rem;color:var(--main);transition:transform .3s ease,background .3s ease;
  }
  .acc-item.open .acc-head .ic{transform:rotate(45deg);background:var(--main);color:#fff;border-color:var(--main);}
  .acc-body{
    max-height:0;overflow:hidden;
    transition:max-height .4s ease,padding .3s ease;
    padding:0 4px;
  }
  .acc-item.open .acc-body{padding:0 4px 30px;}
  .acc-body p{margin:0;color:rgba(26,46,5,.76);max-width:660px;}

  /* ===== 特色网格 ===== */
  .feat-grid{
    display:grid;grid-template-columns:repeat(2,1fr);
    gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);
    margin-top:52px;
  }
  .feat-card{
    border-right:1px solid var(--line);border-bottom:1px solid var(--line);
    padding:38px 32px;background:transparent;
    transition:background .3s ease;
  }
  .feat-card:hover{background:rgba(22,163,74,.05);}
  .feat-card .fi{
    width:44px;height:44px;border:1px solid var(--main);border-radius:50%;
    display:grid;place-items:center;color:var(--main);font-size:1.05rem;
    margin-bottom:22px;
  }
  .feat-card h3{font-size:1.18rem;margin:0 0 12px;font-weight:800;}
  .feat-card p{margin:0;font-size:.95rem;color:rgba(26,46,5,.72);}

  /* ===== 长文 + 图片 ===== */
  .longtext{margin-top:44px;}
  .longtext p{color:rgba(26,46,5,.82);margin-bottom:26px;}
  .longtext h3{font-size:1.55rem;margin:52px 0 20px;}
  .longtext blockquote{
    border-left:3px solid var(--accent);margin:36px 0;padding:4px 0 4px 26px;
    font-size:1.08rem;color:var(--ink);font-weight:500;
  }
  .figure-row{
    display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:48px 0 12px;
  }
  .fig{
    position:relative;overflow:hidden;border:1px solid var(--line);
    aspect-ratio:3/4;background:rgba(22,163,74,.07);
  }
  .fig img{
    width:100%;height:100%;object-fit:cover;display:block;
    transition:transform .6s ease,opacity .6s ease;
    opacity:0;
  }
  .fig img.loaded{opacity:1;}
  .fig:hover img{transform:scale(1.07);}
  .fig .cap{
    position:absolute;inset:auto 0 0 0;
    background:linear-gradient(to top,rgba(26,46,5,.82),rgba(26,46,5,0));
    color:#fff;font-size:.8rem;padding:32px 12px 12px;
    opacity:0;transform:translateY(8px);
    transition:opacity .35s ease,transform .35s ease;
  }
  .fig:hover .cap{opacity:1;transform:translateY(0);}

  /* ===== FAQ ===== */
  .faq-list{margin-top:48px;border-top:1px solid var(--line);}
  .faq-item{border-bottom:1px solid var(--line);padding:30px 0;}
  .faq-item h3{
    font-size:1.06rem;font-weight:800;margin:0 0 12px;
    display:flex;gap:12px;align-items:flex-start;
  }
  .faq-item h3 i{color:var(--accent);font-size:.95rem;margin-top:6px;}
  .faq-item p{margin:0 0 0 28px;color:rgba(26,46,5,.75);font-size:.96rem;}

  /* ===== CTA ===== */
  .cta{
    border:1px solid var(--main);border-radius:4px;
    padding:64px 40px;text-align:center;background:rgba(132,204,22,.07);
    margin:0 0 0;
  }
  .cta h2{font-size:clamp(1.9rem,4.4vw,2.7rem);margin:0 0 18px;}
  .cta p{max-width:520px;margin:0 auto 34px;color:rgba(26,46,5,.76);}

  /* ===== 渐显动效 ===== */
  .reveal{
    opacity:0;transform:translateY(28px);
    transition:opacity .7s ease,transform .7s ease;
  }
  .reveal.in{opacity:1;transform:translateY(0);}

  /* ===== 友链 & 页脚 ===== */
  .friend-links{
    border-top:1px solid var(--line);padding:56px 0 44px;
  }
  .friend-links h4{
    font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;
    font-weight:700;color:var(--main);margin-bottom:20px;
  }
  .friend-links .fl-body{color:rgba(26,46,5,.72);font-size:.92rem;line-height:2.2;}
  footer{
    border-top:1px solid var(--line);padding:44px 0 56px;
    font-size:.88rem;color:rgba(26,46,5,.62);
  }
  .foot-top{
    display:flex;justify-content:space-between;align-items:flex-start;
    gap:32px;flex-wrap:wrap;margin-bottom:32px;
  }
  .foot-brand{font-weight:900;font-size:1.14rem;color:var(--ink);}
  .foot-brand i{color:var(--main);margin-right:8px;}
  .foot-links{display:flex;gap:24px;flex-wrap:wrap;}
  .foot-links a{color:rgba(26,46,5,.72);font-weight:500;}
  .foot-links a:hover{color:var(--main);}
  .foot-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}

  /* ===== 响应式 ===== */
  @media (max-width:860px){
    .nav-links{
      display:none;position:absolute;top:100%;left:0;right:0;
      flex-direction:column;align-items:flex-start;gap:0;
      background:var(--bg);border-bottom:1px solid var(--line);
      padding:8px 24px 18px;
    }
    .nav-links.show{display:flex;}
    .nav-links li{width:100%;}
    .nav-links a{display:block;padding:12px 0;width:100%;border-bottom:1px solid var(--soft);}
    .nav-toggle{display:block;}
    .nav-inner{position:relative;}
    section{padding:68px 0;}
    .feat-grid{grid-template-columns:1fr;}
    .figure-row{grid-template-columns:1fr 1fr;gap:12px;}
    .hero{padding:84px 0 68px;}
    .hero-meta{gap:32px;margin-top:48px;}
    .cta{padding:48px 24px;}
    .faq-item p{margin-left:0;}
  }
  @media (max-width:480px){
    .figure-row{grid-template-columns:1fr;}
    .btn-main,.btn-ghost{width:100%;justify-content:center;}
  }

/* --- 子页面追加 --- */
/* 仅本页少量补充样式,全部沿用站点配色变量 */
    .about-hero-visual {
      width:100%;
      border-radius:18px;
      border:1px solid var(--line);
      overflow:hidden;
      background:var(--soft);
    }
.about-hero-visual img {
      width:100%;
      height:100%;
      object-fit:cover;
      display:block;
      aspect-ratio:4/3;
    }
.about-hero-visual figcaption {
      font-size:.8rem;
      padding:.6rem .9rem;
      color:var(--ink);
      opacity:.7;
      border-top:1px solid var(--line);
    }
.about-stat {
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:1rem;
      margin-top:1.4rem;
    }
.about-stat div {
      background:var(--soft);
      border:1px solid var(--line);
      border-radius:14px;
      padding:1rem 1.1rem;
    }
.about-stat strong {
      display:block;
      font-family:"Inter",sans-serif;
      font-size:1.5rem;
      font-weight:800;
      color:var(--main);
      line-height:1.2;
    }
.about-stat span {
      font-size:.8rem;
      opacity:.75;
    }
.principle-card {
      background:var(--soft);
      border:1px solid var(--line);
      border-radius:16px;
      padding:1.4rem 1.5rem;
      height:100%;
    }
.principle-card h3 {
      font-size:1.05rem;
      margin-bottom:.6rem;
      color:var(--ink);
    }
.principle-card p {
      font-size:.9rem;
      line-height:1.75;
      opacity:.8;
      margin:0;
    }
.principle-card i {
      color:var(--main);
      margin-right:.4rem;
    }
.about-timeline {
      list-style:none;
      padding:0;
      margin:0;
    }
.about-timeline li {
      position:relative;
      padding:0 0 1.5rem 1.9rem;
      border-left:2px solid var(--line);
      margin-left:.6rem;
    }
.about-timeline li:last-child {
      border-left-color:transparent;
      padding-bottom:0;
    }
.about-timeline li::before {
      content:"";
      position:absolute;
      left:-7px;
      top:.15rem;
      width:12px;
      height:12px;
      border-radius:50%;
      background:var(--main);
      box-shadow:0 0 0 3px var(--bg);
    }
.about-timeline b {
      display:block;
      font-size:.95rem;
      margin-bottom:.25rem;
      color:var(--ink);
    }
.about-timeline p {
      font-size:.88rem;
      line-height:1.7;
      margin:0;
      opacity:.78;
    }
.about-note {
      border-left:3px solid var(--accent);
      background:var(--soft);
      border-radius:0 12px 12px 0;
      padding:1rem 1.2rem;
      font-size:.9rem;
      line-height:1.8;
      opacity:.9;
    }
.about-stat {grid-template-columns:1fr;}

/* --- 子页面追加 --- */
.legal-block {margin-top:34px}
.legal-block h2 {font-size:1.35rem;letter-spacing:.01em;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.legal-block h2 i {color:var(--main);font-size:1rem}
.legal-block p {line-height:1.9;margin-bottom:14px}
.legal-block ul {line-height:1.95;padding-left:1.15rem;margin-bottom:14px}
.legal-block li {margin-bottom:6px}
.legal-tag {display:inline-block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;border:1px solid var(--line);border-radius:999px;color:var(--main);background:var(--soft);margin-bottom:10px}
.legal-callout {border-left:3px solid var(--main);background:var(--soft);padding:16px 18px;border-radius:0 10px 10px 0;margin:18px 0;line-height:1.85}
.legal-updated {font-size:.82rem;color:rgba(26,46,5,.6)}
.legal-fig {margin:26px 0 0}
.legal-fig img {width:100%;border-radius:14px;border:1px solid var(--line);display:block}
.legal-fig figcaption {font-size:.82rem;color:rgba(26,46,5,.6);margin-top:8px}