:root{
    --paper:#d6d3d1;
    --paper-light:#e7e5e4;
    --ink:#44403c;
    --red:#991b1b;
  }
  *{
    font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
    box-sizing:border-box;
  }
  html,body{
    font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
  }
  body{
    margin:0;
    background-color:var(--paper);
    background-image:
      repeating-linear-gradient(0deg, rgba(68,64,60,.05) 0 1px, transparent 1px 5px),
      repeating-linear-gradient(90deg, rgba(68,64,60,.035) 0 1px, transparent 1px 7px);
    color:var(--ink);
    line-height:1.8;
    font-size:16px;
  }
  a{color:var(--red);}
  a:hover{color:#7f1d1d;}
  img{
    max-width:100%;
    display:block;
    border:2px solid var(--ink);
    border-radius:8px 3px 8px 3px;
    filter:sepia(.14) contrast(1.04);
  }
  .site-header{
    position:sticky;
    top:0;
    z-index:30;
    background:rgba(214,211,209,.96);
    border-bottom:3px double var(--ink);
  }
  .header-inner{
    max-width:1180px;
    margin:0 auto;
    padding:12px 20px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }
  .brand{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:21px;
    font-weight:700;
    letter-spacing:1px;
    color:var(--red);
  }
  .brand .stamp{
    display:inline-block;
    width:34px;height:34px;
    line-height:32px;
    text-align:center;
    border:2px solid var(--red);
    border-radius:14px 3px 14px 3px;
    color:var(--red);
    font-size:15px;
  }
  .nav-links{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .nav-links a{
    display:inline-block;
    padding:6px 13px;
    font-size:14px;
    text-decoration:none;
    color:var(--ink);
    background:var(--paper-light);
    border:1.5px solid var(--ink);
    border-radius:12px 3px 12px 3px;
    transition:all .2s ease;
  }
  .nav-links a:hover{
    background:var(--red);
    border-color:var(--red);
    color:#fafaf9;
  }
  .section{
    max-width:1180px;
    margin:0 auto;
    padding:46px 20px;
  }
  .section h2{
    font-size:25px;
    color:var(--red);
    margin:0 0 22px;
    padding-bottom:10px;
    border-bottom:3px double var(--ink);
    letter-spacing:1px;
  }
  .section h3{
    color:var(--ink);
  }
  .hero{
    background:linear-gradient(180deg,#dcd9d7 0%, #d6d3d1 100%);
    border-bottom:3px double var(--ink);
  }
  .hero-inner{
    max-width:1180px;
    margin:0 auto;
    padding:52px 20px 44px;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:34px;
    align-items:center;
  }
  .hero-inner h1{
    font-size:34px;
    line-height:1.35;
    margin:0 0 14px;
    color:var(--ink);
    letter-spacing:1px;
  }
  .hero-inner h1 span{color:var(--red);}
  .kicker{
    display:inline-block;
    font-size:13px;
    letter-spacing:2px;
    color:var(--red);
    border:1.5px dashed var(--red);
    padding:3px 12px;
    border-radius:10px 3px;
    margin-bottom:14px;
  }
  .hero-note{
    font-size:15px;
    color:#57534e;
  }
  .btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;}
  .btn{
    display:inline-block;
    padding:10px 22px;
    font-size:15px;
    text-decoration:none;
    border:2px solid var(--ink);
    border-radius:14px 4px 14px 4px;
    background:var(--paper-light);
    color:var(--ink);
    box-shadow:4px 4px 0 rgba(68,64,60,.85);
    transition:.2s;
  }
  .btn:hover{background:var(--red);color:#fafaf9;border-color:var(--red);box-shadow:4px 4px 0 #7f1d1d;}
  .btn.primary{background:var(--red);color:#fafaf9;border-color:var(--red);}
  .btn.primary:hover{background:#7f1d1d;}
  .grid{
    display:grid;
    gap:20px;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  }
  .card{
    background:var(--paper-light);
    border:2px solid var(--ink);
    border-radius:225px 15px 225px 15px/15px 225px 15px 225px;
    padding:22px 22px 20px;
    box-shadow:5px 5px 0 rgba(68,64,60,.8);
  }
  .card.square{
    border-radius:14px 4px 14px 4px;
  }
  .card h3{
    margin:0 0 10px;
    font-size:18px;
    color:var(--red);
  }
  .card p{margin:0;font-size:15px;color:#57534e;}
  .stats-grid{
    display:grid;
    gap:16px;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  }
  .stat{
    text-align:center;
    background:var(--paper-light);
    border:2px dashed var(--ink);
    border-radius:12px 3px 12px 3px;
    padding:22px 14px;
  }
  .stat b{
    display:block;
    font-size:30px;
    color:var(--red);
    letter-spacing:1px;
  }
  .stat span{font-size:14px;color:#57534e;}
  .timeline{
    list-style:none;
    margin:0;
    padding:0 0 0 24px;
    border-left:3px double var(--ink);
  }
  .timeline li{
    position:relative;
    margin-bottom:22px;
    padding-left:8px;
  }
  .timeline li::before{
    content:"◆";
    position:absolute;
    left:-33px;
    color:var(--red);
    font-size:14px;
    background:var(--paper);
  }
  .timeline h4{margin:0 0 6px;font-size:17px;color:var(--ink);}
  .timeline p{margin:0;font-size:15px;color:#57534e;}
  .news-item{
    border-left:4px solid var(--red);
    padding:4px 0 4px 18px;
    margin-bottom:26px;
  }
  .news-item h3{
    margin:0 0 6px;
    font-size:19px;
    line-height:1.5;
  }
  .news-item h3 a{text-decoration:none;color:var(--ink);}
  .news-item h3 a:hover{color:var(--red);text-decoration:underline;}
  .news-date{
    display:inline-block;
    font-size:13px;
    font-weight:700;
    color:var(--red);
    letter-spacing:1px;
    margin-bottom:4px;
  }
  .news-item p{margin:6px 0 0;font-size:15px;color:#57534e;}
  .faq-item{
    background:var(--paper-light);
    border:2px dashed var(--ink);
    border-radius:12px 3px 12px 3px;
    padding:18px 20px;
    margin-bottom:18px;
  }
  .faq-item h3{
    margin:0 0 10px;
    font-size:17px;
    color:var(--red);
    line-height:1.6;
  }
  .faq-item p{margin:0;font-size:15px;color:#57534e;}
  .split{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:26px;
    align-items:center;
  }
  .cta-band{
    background:var(--ink);
    color:#e7e5e4;
    border-top:3px double var(--red);
    border-bottom:3px double var(--red);
  }
  .cta-band .section{padding:40px 20px;}
  .cta-band h2{color:#f5f5f4;border-bottom-color:#991b1b;}
  .cta-band p{color:#d6d3d1;}
  .site-footer{
    background:#3b3835;
    color:#d6d3d1;
    border-top:4px double var(--red);
    padding:40px 20px 24px;
    font-size:14px;
  }
  .footer-inner{
    max-width:1180px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:24px;
  }
  .site-footer h4{
    color:#f5f5f4;
    margin:0 0 10px;
    font-size:16px;
    border-bottom:1px dashed #7f7a75;
    padding-bottom:6px;
  }
  .site-footer p{margin:4px 0;}
  .site-footer a{color:#fca5a5;text-decoration:none;}
  .site-footer a:hover{text-decoration:underline;}
  .footer-bottom{
    max-width:1180px;
    margin:26px auto 0;
    padding-top:16px;
    border-top:1px dashed #7f7a75;
    text-align:center;
    font-size:13px;
    color:#a8a29e;
  }
  @media (max-width:820px){
    .hero-inner{grid-template-columns:1fr;padding:36px 20px;}
    .hero-inner h1{font-size:27px;}
    .split{grid-template-columns:1fr;}
  }