.rp { color:#203d5a; }
.rp .fi-kicker { color:#3278b4; }
.rp h1,.rp h2,.rp h3 { color:#1b3d5d; }
.rp p { line-height:1.9; }
.rp-section { padding:96px 0; }
.rp-section h2 { margin:12px 0 22px; }
.rp-section p { color:#587286; }
.rp-lead { max-width:760px; margin-bottom:34px !important; font-size:17px !important; }
.rp .fi-text-link { color:#2a70ab !important; }
.rp-hero { padding:88px 0; background:linear-gradient(125deg,#f7fbff,#e9f5ff); }
.rp-hero__inner { display:grid; grid-template-columns:.86fr 1.14fr; gap:38px; align-items:center; }
.rp-hero h1 { margin:13px 0 22px; font-size:clamp(37px,3.2vw,45px); }
.rp-hero__lead { color:#4f6c85; font-size:17px !important; }
.rp-hero .fi-actions { margin:26px 0 19px; }
.rp-hero__note { color:#69849b; font-size:12px !important; }
.rp-hero__visual { margin:0; border-radius:20px; overflow:hidden; box-shadow:0 24px 52px #26577f20; }
.rp-hero__visual img { display:block; width:100%; height:auto; }
.rp-friction { background:#fff; }
.rp-friction__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.rp-friction__grid article { display:grid; grid-template-columns:1fr auto; align-content:start; gap:3px 10px; min-height:205px; padding:27px; border:1px solid #d6e6f2; border-radius:14px; background:#f6faff; }
.rp-friction__grid span { grid-column:1/-1; width:max-content; margin-bottom:9px; padding:4px 10px; border-radius:20px; background:#e9edf2; color:#687e8e; font-size:11px; font-weight:900; }
.rp-friction__grid strong { grid-column:1/-1; color:#2a4960; font-size:20px; }
.rp-friction__grid p { grid-column:1/-1; margin-bottom:13px; font-size:14px; }
.rp-friction__grid b { align-self:center; color:#66a2c7; font-size:22px; }
.rp-friction__grid em { padding:10px 16px; border-radius:8px; background:#dcedf9; color:#226ba0; font-style:normal; font-weight:900; }
.rp-overview { background:#edf7ff; text-align:center; }
.rp-overview .rp-lead { margin-left:auto; margin-right:auto; }
.rp-overview__rail { display:grid; grid-template-columns:repeat(9,auto); gap:6px; align-items:center; justify-content:center; margin-top:39px; }
.rp-overview__rail span { display:grid; align-content:center; min-width:132px; min-height:93px; padding:10px; border:1px solid #b9d8ec; border-radius:12px; background:#fff; color:#367eb1; font-size:12px; font-weight:900; }
.rp-overview__rail b { color:#285c86; font-size:14px; }
.rp-overview__rail i { color:#669ac1; font-size:21px; font-style:normal; font-weight:900; }
.rp-overview__image-note { margin-top:28px !important; color:#7890a0 !important; font-size:12px !important; }
.rp-feature__inner,.rp-payment__inner { display:flex; flex-direction:column; gap:29px; align-items:stretch; }
.rp-feature__copy,.rp-payment__inner>div { max-width:760px; }
.rp-cancel__inner { display:grid; grid-template-columns:1fr .85fr; gap:75px; align-items:center; }
.rp-feature__copy p:not(.fi-kicker) { margin-bottom:16px; }
.rp-feature__outcome { margin-top:25px; padding:17px 19px; border-left:4px solid #3e8abf; border-radius:0 9px 9px 0; background:#e9f4fc; color:#3f627e; font-size:13px; line-height:1.8; }
.rp-feature__outcome b { color:#276fa6; }
.rp-feature__outcome span { color:#90b0c8; }
.rp-feature__image { width:min(850px,100%); min-width:0; margin:0 auto; padding:13px; border:1px solid #d3e4f0; border-radius:17px; background:#fff; box-shadow:0 22px 48px #24567b16; }
.rp-feature__image img { display:block; width:100%; height:auto; border-radius:9px; }
.rp-feature__image figcaption { margin-top:8px; color:#7990a2; text-align:center; font-size:12px; }
.rp-feature--notice { background:#fff; }
.rp-feature--message { background:#f4f9fe; }
.rp-feature--message .rp-feature__image { order:2; }
.rp-feature--library { background:#fff; }
.rp-payment { background:#eaf4fb; }
.rp-payment .rp-feature__image { order:2; }
.rp-payment p:not(.fi-kicker) { margin-bottom:17px; }
.rp-cancel { background:#fff; }
.rp-cancel p:not(.fi-kicker) { margin-bottom:18px; }
.rp-cancel__flow { display:grid; justify-items:center; gap:9px; padding:30px; border-radius:19px; background:#e7f3fd; }
.rp-cancel__flow span,.rp-cancel__flow strong { width:100%; padding:17px; border-radius:11px; background:#fff; text-align:center; }
.rp-cancel__flow small,.rp-cancel__flow b { display:block; }
.rp-cancel__flow small { color:#4c8cbb; font-size:11px; font-weight:900; }
.rp-cancel__flow b { color:#2b5b7e; font-size:16px; }
.rp-cancel__flow strong { background:#296fa8; color:#fff; }
.rp-cancel__flow i { color:#5394c3; font-size:20px; font-style:normal; }
.rp-intro { background:#f2f8fd; }
.rp-intro__steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:36px; }
.rp-intro__steps article { min-height:230px; padding:28px; border-radius:14px; background:#fff; }
.rp-intro__steps small { color:#4290c2; font-size:28px; font-weight:900; }
.rp-intro__steps h3 { margin:17px 0 10px; font-size:21px; }
.rp-intro__steps p { font-size:14px; }
.rp-intro__note { margin-top:25px !important; color:#6c8599 !important; font-size:13px !important; }
.rp-cta { padding:92px 0; background:#1e4b70; color:#fff; text-align:center; }
.rp-cta .fi-kicker { color:#9dd7f6; }
.rp-cta h2 { margin:14px 0 20px; color:#fff; }
.rp-cta p:not(.fi-kicker) { max-width:650px; margin:0 auto 27px; color:#d0e3ef; }
.rp-cta .fi-actions { justify-content:center; }
.rp-cta .fi-text-link { color:#e0f3ff !important; }
@media(max-width:1100px) {
  .rp-overview__rail { grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
  .rp-overview__rail i { transform:rotate(90deg); }
}
@media(max-width:991px) {
  .rp-hero__inner,.rp-cancel__inner { grid-template-columns:1fr; gap:35px; }
  .rp-hero__visual { max-width:720px; }
  .rp-overview__rail { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media(max-width:767px) {
  .rp-section,.rp-cta { padding:68px 0; }
  .rp-hero { padding:68px 0; }
  .rp-hero h1 { font-size:clamp(35px,9vw,43px); }
  .rp-friction__grid,.rp-intro__steps { grid-template-columns:1fr; }
  .rp-friction__grid article { min-height:0; }
  .rp-overview__rail { display:flex; flex-direction:column; align-items:stretch; }
  .rp-overview__rail span { min-height:60px; }
  .rp-overview__rail i { line-height:1; }
  .rp-feature__outcome span { display:none; }
  .rp-feature__outcome b:not(:first-child) { display:block; margin-top:8px; }
  .rp-feature__image { padding:8px; }
}
