/* RealFinance campaigns & customer service — production experience. */
.rf-campaign-hero{background:linear-gradient(122deg,#062a52 0%,#075aa5 74%,#0b75b8 100%);color:#fff;padding:clamp(3.4rem,7vw,6.3rem) 0}
.rf-campaign-hero .wrap,.rf-campaign-section .wrap,.rf-campaign-final .wrap{max-width:1160px;margin:auto;padding:0 24px}
.rf-campaign-eyebrow{display:inline-flex;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.25);border-radius:30px;padding:8px 14px;color:#ffe176;font-size:.75rem;font-weight:800;letter-spacing:.07em;margin-bottom:19px}
.rf-campaign-hero h1{color:white;font-size:clamp(2rem,4.3vw,3.6rem);line-height:1.17;font-weight:800;letter-spacing:-.05em;max-width:850px;margin:0 0 22px}
.rf-campaign-hero p{font-size:clamp(.97rem,1.3vw,1.12rem);line-height:1.8;max-width:760px;color:#e7f3fe}
.rf-campaign-hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.rf-campaign-section{padding:clamp(3.4rem,7vw,6rem) 0}.rf-campaign-section .tt{max-width:780px}.rf-campaign-lead{color:#52667f;font-size:1rem;line-height:1.8;max-width:800px;margin:16px 0 24px}
.rf-campaign-muted{background:#f3f7fd}.rf-campaign-stats,.rf-campaign-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:28px 0}
.rf-campaign-stats article,.rf-campaign-steps article{border:1px solid #d9e7f2;border-radius:16px;background:#fff;padding:26px 22px;box-shadow:0 6px 24px rgba(3,33,76,.045)}
.rf-campaign-stats strong{display:block;font-size:clamp(1.65rem,2.6vw,2.35rem);color:#0655a0;font-weight:800;letter-spacing:-.035em;margin-bottom:8px}
.rf-campaign-stats span,.rf-campaign-steps p{font-size:.85rem;color:#536780;line-height:1.75}
.rf-campaign-disclaimer{font-size:.8rem;color:#4c6074;line-height:1.65;max-width:820px}
.rf-campaign-steps article>span{display:block;color:#e2aa00;font-size:.85rem;font-weight:800;margin-bottom:12px}
.rf-campaign-steps h3{font-size:1rem;font-weight:800;color:#093761;margin-bottom:8px}
.rf-campaign-faq{display:grid;gap:10px;max-width:920px;margin:24px 0}
.rf-campaign-faq details{background:white;border:1px solid #dce7f1;border-radius:12px;padding:17px 20px}
.rf-campaign-faq summary{cursor:pointer;font-weight:800;color:#0a365f;font-size:.94rem}
.rf-campaign-faq p{font-size:.9rem;line-height:1.75;color:#425873;margin:10px 0 0}
.rf-campaign-final{background:#06345f;color:#fff;padding:3.5rem 0}.rf-campaign-final h2{color:#fff;font-size:clamp(1.6rem,3vw,2.5rem);max-width:720px}
.rf-campaign-final p{color:#d9e9f7;line-height:1.7;margin:12px 0 22px}
.hero[data-rf-slide] .hero-copy{transition:opacity .25s ease-out}
.hero[data-rf-slide="1"]{background:linear-gradient(115deg,#082b55,#075b9b)!important}
.hero[data-rf-slide="2"]{background:linear-gradient(115deg,#042a4e,#063a7e)!important}
.hero .hero-scene-label{font-weight:700}
.rf-chat-panel{max-height:min(740px,calc(100dvh - 94px));}
.rf-chat-panel .rf-chat-body{max-height:min(465px,calc(100dvh - 240px));scroll-behavior:smooth}
.rf-chat-progress{font-size:.71rem;letter-spacing:.025em;font-weight:800;color:#09529c;margin:0 0 9px}
.rf-chat-summary{padding:12px;background:#f5f9fd;border-radius:12px;border:1px solid #deebf6;display:grid;gap:7px;margin-bottom:12px}
.rf-chat-summary p{font-size:.73rem;line-height:1.55;margin:0;color:#314e70}
.rf-chat-summary strong{color:#12365d}
.rf-chat-form .rf-chat-prefill{font-size:.73rem;background:#ecf5fd;color:#12385e;border-radius:9px;padding:10px}
.rf-chat-aux{font-size:.7rem;color:#4b637b;text-decoration:underline;text-align:center;display:block;padding:5px}
.rf-chat-option.rf-chat-back{border-color:transparent;background:transparent;color:#466482;font-weight:600}
.rf-chat-option.rf-chat-emphasis{background:#075cb4;color:#fff;border-color:#075cb4;text-align:center}
.rf-campaign-mini{display:flex;align-items:center;gap:12px;background:#eff6fc;border:1px solid #d4e5f7;border-radius:12px;padding:16px 18px;margin:24px 0}
.rf-campaign-mini strong{font-weight:800;color:#104477}.rf-campaign-mini a{color:#0961b0;font-weight:800;text-decoration:underline}
@media(max-width:780px){.rf-campaign-stats,.rf-campaign-steps{grid-template-columns:1fr}.rf-campaign-section{padding:3.2rem 0}.rf-campaign-hero{padding:3rem 0}.rf-campaign-hero h1{font-size:clamp(2rem,7vw,2.8rem)}.rf-chat-panel .rf-chat-body{max-height:calc(100dvh - 320px)}}
@media(prefers-reduced-motion:reduce){.hero .hero-copy,.rf-chat-panel .rf-chat-body{transition:none;scroll-behavior:auto}}

/* Guided answers: useful information before optional consultation */
.rf-chat-guide-title{font-size:.93rem;line-height:1.45;font-weight:800;color:#123e6a;margin:1px 0 11px;letter-spacing:-.01em}
.rf-chat-guide-steps{list-style:decimal;list-style-position:outside;margin:11px 0 15px;padding:13px 14px 13px 34px;border:1px solid #dae7f5;border-radius:13px;background:#f6f9fe;display:grid;gap:10px}
.rf-chat-guide-steps li{font-size:.78rem;line-height:1.66;color:#234769;padding-left:3px}
.rf-chat-guide-steps li::marker{color:#0661af;font-weight:800}
.rf-chat-guide-notice{font-size:.7rem;line-height:1.7;padding:11px 12px;border-radius:10px;color:#405772;background:#f3f5f8;border-left:3px solid #e5b327;margin:0 0 12px}
.rf-chat-panel .rf-chat-link{margin:7px 0 13px}
.rf-chat-panel .rf-chat-progress{margin-top:4px}
@media(max-width:620px){.rf-chat-guide-steps{padding:10px 11px 10px 30px;gap:9px}.rf-chat-guide-steps li{font-size:.76rem}.rf-chat-guide-title{font-size:.88rem}}


/* Keep the assistant input comfortably separated from the blue heading. */
.rf-chat-panel .rf-chat-search{
  padding:16px 16px 15px;
  column-gap:10px;
  row-gap:9px;
  background:#fff;
}
.rf-chat-panel .rf-chat-search input{
  min-height:46px;
  padding:11px 13px;
  line-height:1.35;
}
.rf-chat-panel .rf-chat-search button{
  min-height:46px;
  padding:0 16px;
  line-height:1.35;
}
.rf-chat-panel .rf-chat-search-hint{
  margin:1px 0 0;
  line-height:1.55;
}
.rf-chat-panel .rf-chat-body{padding-top:17px}
@media(max-width:620px){
  .rf-chat-panel .rf-chat-search{padding:14px 13px 15px;column-gap:8px}
  .rf-chat-panel .rf-chat-search input,.rf-chat-panel .rf-chat-search button{min-height:44px}
  .rf-chat-panel .rf-chat-search button{padding:0 12px}
}


/* Editorial entrances to the four-step document checklist */
.rf-tool-promo{padding:2rem 0;background:#fff}
.rf-tool-promo-in{display:flex;align-items:center;gap:1.25rem;padding:1.55rem 1.7rem;border:1px solid #cbdff0;border-radius:16px;background:linear-gradient(108deg,#eff7ff,#fff);box-shadow:0 8px 30px rgba(5,46,93,.045)}
.rf-tool-promo-icon{background:#e0effe;display:grid;place-items:center;border-radius:13px;width:58px;height:58px;font-size:1.55rem;flex-shrink:0}
.rf-tool-promo-copy{flex:1;min-width:0}
.rf-tool-promo-copy small{font-size:.65rem;color:#0b65b1;letter-spacing:.1em;font-weight:800}
.rf-tool-promo-copy h2{color:#0a3a6c;font-size:clamp(1rem,2vw,1.38rem);font-weight:800;line-height:1.4;margin:.26rem 0}
.rf-tool-promo-copy p{color:#57718a;font-size:.77rem;line-height:1.7}
.rf-tool-promo-btn{background:#075fb2;color:#fff!important;padding:.87rem 1.15rem;white-space:nowrap;border-radius:9px;font-size:.78rem;font-weight:800;text-align:center;line-height:1.4}
.rf-tool-promo-btn:hover{background:#043e7a}
.rf-tool-strip{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:1.1rem 0 2rem;padding:1.25rem 1.45rem;border:1px solid #d9e7f5;border-radius:13px;background:#f3f9ff}
.rf-tool-strip>div{flex:1}
.rf-tool-strip strong{display:block;font-size:.88rem;color:#0c467e;font-weight:800}
.rf-tool-strip p{font-size:.77rem;color:#5d758d;line-height:1.7;margin:.25rem 0 0}
.rf-doc-inline-promo{padding:1.2rem 1.4rem;border:1px solid #d4e3f4;border-radius:12px;background:#f3f9ff;margin:1.7rem 0}
.rf-doc-inline-promo strong{font-weight:800;color:#0b487b;display:block}
.rf-doc-inline-promo p{font-size:.79rem;line-height:1.7;color:#58718b;margin:.3rem 0 .6rem}
.rf-doc-inline-promo a{font-weight:800;color:#075fae;font-size:.78rem;text-decoration:underline}
@media(max-width:800px){.rf-tool-promo-in,.rf-tool-strip{align-items:flex-start;flex-direction:column}.rf-tool-promo-in{gap:.95rem}.rf-tool-promo-btn{white-space:normal;width:100%}}
