/* Payment information. Scoped to this template; no payment SDK or custom font load. */
html body #content .rh-payment { max-width:1160px; padding-top:20px; padding-bottom:56px; color:var(--color-text,#0a1628); font-family:var(--font-body,'IBM Plex Sans',sans-serif); font-size:16px; line-height:1.55; }
html body #content .rh-payment h1,
html body #content .rh-payment h2 { color:var(--color-text,#0a1628); font-family:var(--font-display,'Manrope',sans-serif); letter-spacing:-.02em; }
html body #content .rh-payment-intro { max-width:760px; margin-bottom:32px; box-shadow:none; }
html body #content .rh-payment-kicker { margin:0 0 10px; color:var(--brand-primary,#116bb0); font-size:12px; font-weight:700; letter-spacing:.09em; }
html body #content .rh-payment h1 { margin:0 0 14px; font-size:clamp(28px,3.3vw,40px); line-height:1.2; font-weight:800; }
html body #content .rh-payment-intro > p:not(.rh-payment-kicker) { font-size:18px; margin:0 0 16px; color:var(--color-text-muted,#525252); }
html body #content .rh-payment-security { display:flex; align-items:center; gap:8px; font-size:14px; color:#506575; }
html body #content .rh-payment-security svg { flex:none; }
html body #content .rh-payment-grid { padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
html body #content .rh-payment-card { min-width:0; padding:24px; border:1px solid var(--color-line,#e2e8f0); border-radius:12px; background:#fff; }
html body #content .rh-payment-media { display:flex; align-items:center; gap:14px; height:40px; margin-bottom:16px; }
html body #content .rh-payment-media img { display:block; object-fit:contain; width:auto; max-width:110px; height:32px; }
html body #content .rh-payment-media--cards img { max-width:66px; }
html body #content .rh-payment-media--symbol { color:var(--brand-primary,#116bb0); }
html body #content .rh-payment-media--symbol svg { width:32px; height:32px; flex:none; }
html body #content .rh-payment h2 { margin:0 0 10px; font-size:19px; line-height:1.35; font-weight:700; }
html body #content .rh-payment-card p { margin:0 0 12px; color:var(--color-text-muted,#525252); }
html body #content .rh-payment-card p:last-child { margin-bottom:0; }
html body #content .rh-payment a { color:var(--brand-primary,#116bb0); text-decoration:underline; text-underline-offset:3px; }
html body #content .rh-payment-card a { display:inline-block; font-size:14px; }
html body #content .rh-payment a:focus-visible,
html body #content .rh-payment summary:focus-visible { outline:3px solid var(--brand-primary,#116bb0); outline-offset:4px; border-radius:3px; }
html body #content .rh-payment-badge { padding:4px 9px; border-radius:6px; background:#edf6f0; color:#217343; font-size:13px; font-weight:600; }
html body #content .rh-payment-availability { margin:20px 0 0; font-size:14px; color:#506575; max-width:100ch; }
html body #content .rh-payment-bottom { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:40px; margin-top:44px; padding-top:32px; border-top:1px solid var(--color-line,#e2e8f0); }
html body #content .rh-payment-faq { padding:0; }
html body #content .rh-payment-faq > h2 { font-size:24px; margin-bottom:16px; }
html body #content .rh-payment-faq details { border-bottom:1px solid var(--color-line,#e2e8f0); }
html body #content .rh-payment-faq summary { cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0; font-weight:600; list-style:none; }
html body #content .rh-payment-faq summary::-webkit-details-marker { display:none; }
html body #content .rh-payment-faq summary::after { content:'+'; flex:none; width:20px; text-align:center; color:var(--brand-primary,#116bb0); font-size:22px; line-height:1; }
html body #content .rh-payment-faq details[open] summary::after { content:'−'; }
html body #content .rh-payment-faq details p { margin:0 0 16px; color:var(--color-text-muted,#525252); }
html body #content .rh-payment-faq details > a { display:inline-block; margin-bottom:16px; }
html body #content .rh-payment-terms { margin:20px 0 0; font-size:14px; color:#506575; }
html body #content .rh-payment-contact { align-self:start; padding:24px; background:#f6f8fa; border-radius:12px; }
html body #content .rh-payment-contact-icon { color:var(--brand-primary,#116bb0); margin-bottom:12px; }
html body #content .rh-payment-contact p { margin:0 0 16px; color:var(--color-text-muted,#525252); }
html body #content .rh-payment .rh-payment-phone { display:inline-block; font-family:var(--font-display,sans-serif); font-size:22px; font-weight:700; text-decoration:none; }
html body #content .rh-payment-contact .rh-payment-hours { font-size:14px; margin:4px 0 18px; }
html body #content .rh-payment-contact-link { font-weight:600; }
@media (max-width:991.98px) {
 html body #content .rh-payment-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 html body #content .rh-payment-bottom { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:575.98px) {
 html body #content .rh-payment { padding-top:12px; padding-bottom:36px; }
 html body #content .rh-payment-intro { margin-bottom:24px; }
 html body #content .rh-payment-intro > p:not(.rh-payment-kicker) { font-size:16px; }
 html body #content .rh-payment-grid { grid-template-columns:1fr; gap:12px; }
 html body #content .rh-payment-card { padding:20px; }
 html body #content .rh-payment-media { margin-bottom:12px; height:32px; }
 html body #content .rh-payment h2 { font-size:18px; }
 html body #content .rh-payment-bottom { margin-top:28px; padding-top:24px; }
 html body #content .rh-payment-faq > h2 { font-size:22px; }
 html body #content .rh-payment-faq summary { padding:14px 0; }
 html body #content .rh-payment-contact { padding:20px; }
}
