
  .rh-a20b2 * { box-sizing: border-box; font-family: 'Mont', sans-serif; }
  .rh-a20b2 { box-sizing: border-box !important; width: 100%; background: #ffffff; }
  .rh-a20b2-wrap { width: 100%; max-width: 1600px; margin: 0 auto; padding: 48px 80px; }
  .rh-a20b2-intro { font-size: 17px; font-weight: 600; color: #262626; line-height: 1.75; margin: 0 0 20px 0; display: block; }
  .rh-a20b2 h2 { font-size: clamp(20px, 2.4vw, 28px); font-weight: 600; color: #262626; line-height: 1.2; border-top: 3px solid #BFD8B3; padding: 20px 0 0 0; margin: 40px 0 24px 0; }
  .rh-a20b2 p { font-size: 16px; font-weight: 600; color: #464646; line-height: 1.75; margin: 0 0 20px 0; display: block; }
  .rh-a20b2 p a { color: #99AD8F !important; font-weight: 600; text-decoration: underline !important; }
  .rh-a20b2 p em { font-style: italic; color: #262626; }
  .rh-a20b2-pull { background: #262626; border-radius: 20px; padding: 36px 40px; position: relative; overflow: hidden; margin: 28px 0; }
  .rh-a20b2-pull::before { content: '\201C'; font-size: 90px; font-weight: 600; color: #BFD8B3; line-height: 0.7; display: block; margin: 0 0 12px 0; opacity: 0.5; }
  .rh-a20b2-pull::after { content: ''; position: absolute; right: -30px; bottom: -30px; width: 140px; height: 140px; border-radius: 50%; background: #BFD8B3; opacity: 0.06; }
  .rh-a20b2-pull p { font-size: 16px; font-weight: 600; color: #E6E6E6; line-height: 1.7; margin: 0; position: relative; z-index: 1; }
  .rh-a20b2-pull p strong { color: #BFD8B3; }
  .rh-a20b2-callout { border: 1.5px solid #eeeeee; border-left: 4px solid #BFD8B3; border-radius: 0 14px 14px 0; padding: 20px 24px; font-size: 15px; font-weight: 600; color: #464646; line-height: 1.65; background: #f7f7f7; margin: 28px 0; }
  .rh-a20b2-callout strong { color: #262626; }
  .rh-a20b2-warn { border: 1.5px solid #f5dada; border-left: 4px solid #CB817D; border-radius: 0 14px 14px 0; padding: 20px 24px; font-size: 15px; font-weight: 600; color: #585858; line-height: 1.65; background: #fdf6f6; margin: 28px 0; }
  .rh-a20b2-warn strong { color: #262626; }
  .rh-a20b2-timeline { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 28px 0; }
  .rh-a20b2-tcard { background: #f7f7f7; border-radius: 14px; padding: 20px 18px; }
  .rh-a20b2-tcard-label { font-size: 10px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: #99AD8F; display: block; margin: 0 0 8px 0; }
  .rh-a20b2-tcard-text { font-size: 13px; font-weight: 600; color: #464646; line-height: 1.6; display: block; }
  .rh-a20b2-closing { font-size: 16px; font-weight: 600; color: #262626; line-height: 1.75; font-style: italic; display: block; margin: 0; }
  @media (max-width: 1280px) { .rh-a20b2-wrap { padding: 40px 60px; } }
  @media (max-width: 900px) { .rh-a20b2-timeline { grid-template-columns: 1fr; } }
  @media (max-width: 600px) {
    .rh-a20b2-wrap { padding: 32px 20px; }
    .rh-a20b2-intro { font-size: 15px; }
    .rh-a20b2 p { font-size: 15px; }
    .rh-a20b2-pull { padding: 26px 22px; border-radius: 14px; }
    .rh-a20b2-pull p { font-size: 14px; }
  }
