/* «Regala €8, ricevi €8» public page (IT/EN invita.aspx). The code box itself is
   RiCo.Referrals.InviteBoxHtml (its own inline styles, .bt-invite). */
.rf-page { box-sizing: border-box; max-width: 980px; margin: 0 auto; padding: 8px 16px 56px; color: #3a3a3a; }
.rf-page *, .rf-page *::before, .rf-page *::after { box-sizing: border-box; }
.rf-lead { max-width: 680px; margin: 8px auto 32px; font-size: 18px; line-height: 1.6; text-align: center; }
.rf-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 32px; padding: 0; list-style: none; }
.rf-steps li { display: flex; flex-direction: column; gap: 6px; padding: 22px 20px; border: 1px solid #e6dcc0; border-radius: 10px; background: #fff; line-height: 1.5; }
.rf-steps strong { font-size: 18px; color: #2a2a2a; }
.rf-num { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; margin-bottom: 4px; border-radius: 50%; background: #af903f; color: #fff; font-weight: 800; }
.rf-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.rf-box { padding: 24px 22px; border: 2px solid #af903f; border-radius: 10px; background: #faf7ee; line-height: 1.55; text-align: center; }
.rf-cards .rf-box { display: flex; flex-direction: column; align-items: center; }
.rf-cards .rf-box p { flex: 1; }
.rf-box h2 { margin: 0 0 10px; font-size: 21px; line-height: 1.3; color: #2a2a2a; }
.rf-box p { margin: 0 0 18px; }
.rf-code { display: inline-block; padding: 1px 8px; border: 1px dashed #af903f; border-radius: 4px; background: #fff; letter-spacing: 1px; }
.rf-btn { display: inline-block; min-width: 180px; padding: 13px 26px; border-radius: 4px; background: #82bc00; color: #fff; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; text-decoration: none; text-align: center; }
.rf-btn:hover { background: #6fa000; color: #fff; }
.rf-btn-light { background: #2f2f2f; }
.rf-btn-light:hover { background: #000; }
.rf-count { margin: 14px 0 0; text-align: center; font-weight: 700; }
.rf-faq { max-width: 760px; margin: 44px auto 0; line-height: 1.6; }
.rf-faq h2 { margin: 0 0 10px; font-size: 24px; }
.rf-faq h3 { margin: 18px 0 4px; font-size: 17px; color: #2a2a2a; }
.rf-faq p { margin: 0; }
.rf-faq a { color: #4a6b00; text-underline-offset: 3px; }
@media (max-width: 767px) {
  .rf-lead { font-size: 16px; margin-bottom: 24px; }
  .rf-steps, .rf-cards { grid-template-columns: 1fr; gap: 12px; }
  .rf-steps li { padding: 16px; }
}
