  :root{
    --bg:#f7f7f8;
    --ink:#1c1c1e;
    --ink-2:#4a4a4f;
    --muted:#9a9aa0;
    --line:#efeff1;
    --accent:#d9534f;
  }

  *{box-sizing:border-box;}

  html{-webkit-text-size-adjust:100%;}

  body{
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB",
                "Microsoft YaHei","Source Han Sans SC","Noto Sans CJK SC",
                "Helvetica Neue",Arial,sans-serif;
    font-size:16px;
    line-height:1.85;
    letter-spacing:.01em;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
  }

  .wrap{
    max-width:680px;
    margin:0 auto;
    padding:64px 22px 80px;
  }

  /* ---------- 顶部 ---------- */

  h1{
    font-size:24px;
    line-height:1.5;
    font-weight:600;
    margin:0 0 10px;
    letter-spacing:.01em;
  }

  .subtitle{
    font-size:13px;
    color:var(--muted);
    letter-spacing:.06em;
    margin:0 0 30px;
  }

  /* ---------- 图片 / 视频 ---------- */

  .shots{
    display:flex;
    flex-direction:column;
    gap:26px;
    margin:38px 0 0;
  }

  figure{
    margin:0;
  }

  figure img,
  figure video{
    display:block;
    width:100%;
    height:auto;
    border-radius:14px;
    box-shadow:0 2px 10px rgba(0,0,0,.06);
    background:#f2f2f4;
  }

  figure video{
    aspect-ratio:16 / 9;
    cursor:pointer;
  }

  .caption{
    font-size:12.5px;
    color:#b4b4ba;
    text-align:center;
    margin:14px 0 0;
    letter-spacing:.04em;
    line-height:1.7;
  }

  /* ---------- 数据区 ---------- */

  .stats{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:0;
    background:transparent;
    margin:34px 0 0;
  }

  .stat{
    background:transparent;
    padding:15px 0 16px;
    border-top:1px solid var(--line);
  }

  .stat:nth-child(2n){
    padding-left:26px;
  }

  .stat .k{
    font-size:12px;
    color:var(--muted);
    letter-spacing:.08em;
    margin:0 0 3px;
  }

  .stat .v{
    font-size:16px;
    font-weight:500;
    color:var(--ink);
    margin:0;
    line-height:1.6;
  }

  .stat .v em{
    font-style:normal;
    color:var(--accent);
    font-weight:600;
    font-size:18px;
  }

  /* ---------- 正文 ---------- */

  .story{
    margin:6px 0 0;
  }

  .story p{
    margin:20px 0 0;
    font-size:15.5px;
    line-height:2;
    color:var(--ink-2);
  }

  .story p:first-child{
    margin-top:26px;
  }

  .story .closing{
    color:var(--ink);
  }

  .rip{
    margin:32px 0 46px;
    font-size:11.5px;
    color:#c2c2c8;
    letter-spacing:.1em;
    text-align:center;
  }

  /* ---------- 结尾 ---------- */

  .end{
    margin:34px auto 0;
    max-width:680px;
    text-align:center;
    padding:66px 20px 40px;
  }

  .end .l1{
    font-size:15px;
    color:var(--ink);
    margin:0;
    font-weight:500;
  }

  .end .l2{
    font-size:15px;
    color:var(--ink-2);
    margin:4px 0 0;
  }

  .end .date{
    font-size:11.5px;
    color:#c2c2c8;
    letter-spacing:.14em;
    margin:22px 0 0;
  }

  @media (max-width:420px){
    .wrap{padding:36px 18px 56px;}
    h1{font-size:21px;}
    .story p{font-size:15px;line-height:1.95;}
    .shots{gap:22px;}
    .stat:nth-child(2n){padding-left:20px;}
  }
