.referral-program { width:min(720px,calc(100% - 40px)); margin-inline:auto; padding-block:28px 40px; }
.referral-program-header { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:24px; }
.referral-brand { font-size:20px; font-weight:600; }
.referral-program-card { border:1px solid var(--line); background:var(--panel); border-radius:14px; padding:clamp(22px,5vw,40px); }
.referral-program-card h1 { margin:0; font-size:clamp(28px,5vw,38px); line-height:1.25; letter-spacing:-.025em; text-wrap:balance; }
.referral-program-card h1 span { color:var(--accent); white-space:nowrap; }
.referral-intro { margin:18px 0 28px; color:var(--muted); font-size:16px; }
.referral-steps { margin:0; padding-left:24px; }
.referral-steps li { padding:0 0 22px 8px; }
.referral-steps li::marker { color:var(--accent); font-weight:600; }
.referral-steps strong,.referral-steps span { display:block; font-size:16px; }
.referral-steps span { margin-top:4px; color:var(--muted); }
.referral-program-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 24px; margin-top:8px; }
.referral-program-actions .primary-pay { min-width:160px; }
.referral-program-actions > a:not(.primary-pay) { color:var(--muted); font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.referral-help { margin:24px 0 0; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font-size:14px; }
