
  .rh-a3b1 * { box-sizing: border-box; font-family: 'Mont', sans-serif; }
  .rh-a3b1 { box-sizing: border-box !important; width: 100%; background: #ffffff; }
  .rh-a3b1-wrap { width: 100%; max-width: 1600px; margin: 0 auto; padding: 52px 80px 44px; }

  .rh-a3b1-toprow { display: flex; align-items: center; gap: 10px; margin: 0 0 22px 0; flex-wrap: wrap; }
  .rh-a3b1-tag {
    display: inline-block; background: #262626; color: #ffffff;
    font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase;
    padding: 6px 18px; border-radius: 100px;
  }
  .rh-a3b1-badge {
    display: inline-flex; align-items: center; gap: 6px;
    background: #DFECD9; color: #606C59;
    font-size: 11px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase;
    padding: 6px 14px; border-radius: 100px;
  }
  .rh-a3b1-badge::before { content:''; width:6px; height:6px; background:#99AD8F; border-radius:50%; display:inline-block; flex-shrink:0; }

  .rh-a3b1-h1 {
    font-size: clamp(28px, 3.5vw, 48px); font-weight: 600; color: #262626;
    line-height: 1.15; letter-spacing: -0.015em; margin: 0 0 14px 0; padding: 0;
  }
  .rh-a3b1-h1 em { font-style: normal; color: #99AD8F; }

  .rh-a3b1-lead {
    font-size: clamp(14px, 1.4vw, 18px); font-weight: 600; color: #808080;
    line-height: 1.65; margin: 0 0 20px 0; padding: 0; max-width: 860px; display: block;
  }

  .rh-a3b1-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; }
  .rh-a3b1-meta-text { font-size: 13px; font-weight: 600; color: #A3A3A3; }
  .rh-a3b1-meta-dot { color: #CCCCCC; font-size: 13px; }
  .rh-a3b1-updated {
    font-size: 12px; font-weight: 600; color: #606C59;
    background: #DFECD9; border-radius: 100px; padding: 4px 14px;
  }

  .rh-a3b1-divider { display: flex; gap: 5px; align-items: center; margin: 24px 0 28px 0; }
  .rh-a3b1-divider span { height: 3px; border-radius: 100px; display: block; }
  .rh-a3b1-divider span:nth-child(1) { width: 36px; background: #262626; }
  .rh-a3b1-divider span:nth-child(2) { width: 22px; background: #BFD8B3; }
  .rh-a3b1-divider span:nth-child(3) { width: 12px; background: #DFECD9; }

  .rh-a3b1-toc { background: #f7f7f7; border-radius: 20px; padding: 28px 32px; border-left: 4px solid #BFD8B3; }
  .rh-a3b1-toc-label { font-size: 10px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: #A3A3A3; display: block; margin: 0 0 18px 0; }
  .rh-a3b1-toc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 32px; }
  .rh-a3b1-toc-grid a {
    font-size: 14px; font-weight: 600; color: #262626 !important;
    text-decoration: none !important; display: flex; align-items: flex-start;
    gap: 10px; line-height: 1.45; transition: color 0.15s;
  }
  .rh-a3b1-toc-grid a::before { content:''; width:8px; height:8px; min-width:8px; background:#BFD8B3; border-radius:50%; margin-top:4px; flex-shrink:0; }
  .rh-a3b1-toc-grid a:hover { color: #606C59 !important; }

  @media (max-width: 1280px) { .rh-a3b1-wrap { padding: 48px 60px 40px; } }
  @media (max-width: 768px) { .rh-a3b1-wrap { padding: 36px 32px 32px; } }
  @media (max-width: 600px) {
    .rh-a3b1-wrap { padding: 32px 20px 28px; }
    .rh-a3b1-h1 { font-size: clamp(22px, 6vw, 28px); }
    .rh-a3b1-toc { padding: 20px 18px; border-radius: 14px; }
    .rh-a3b1-toc-grid { grid-template-columns: 1fr; gap: 10px; }
  }
