/* ═══════════════════════════════════════════════════════════
   RateAcuity design system — scoped under .ra
   Loads via the Avada child theme; every RateAcuity Fusion Text
   block wraps its markup in <div class="ra"> … </div>.
   Palette + type tokens mirror Avada Global Options (see README).
   ═══════════════════════════════════════════════════════════ */
/* ══════════ RateAcuity — Concept B design system ══════════ */
:root{
  --navy:#122031; --navy-deep:#0c1826; --navy-mid:#3d5268;
  --green:#1e7a52; --green-dark:#155c3d; --green-light:#6fc79b; --mint:#e7f2ec;
  --blue:#3d6a8f; --blue-tint:#e8eff5;
  --ink:#21303c; --muted:#5f6e79; --faint:#8595a2; --cool:#9fb0bf; --nav-txt:#b9c6d1;
  --line:#e3e8e6; --wash:#f7f9f8; --danger:#b4483e;
}
.ra *{margin:0;padding:0;box-sizing:border-box}
.ra{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){.ra *{transition:none!important}}
.ra{font-family:"Source Sans 3",sans-serif;font-size:16px;color:var(--ink);background:#fff;line-height:1.5}
.ra h1,.ra h2,.ra h3,.ra .serif{font-family:"Bitter",serif}
.ra img{max-width:100%;display:block}
.ra a{color:var(--green);text-decoration:none;transition:color .15s}
.ra a:hover{color:var(--green-dark)}
.ra .wrap{max-width:1220px;margin:0 auto;padding:0 48px}
.ra :focus-visible{outline:3px solid var(--green-light);outline-offset:2px}

/* header / nav */
.ra .site-head{background:var(--navy);position:sticky;top:0;z-index:100;box-shadow:0 1px 0 rgba(255,255,255,.06)}
.ra .nav{display:flex;align-items:center;gap:26px;padding:14px 48px;max-width:1220px;margin:0 auto;position:relative}
.ra .nav .logo{font-family:"Bitter",serif;font-weight:700;font-size:20px;color:#fff}
.ra .nav .logo span{color:var(--green-light)}
.ra .nav .links{display:flex;gap:20px;font-size:14.5px;font-weight:600;align-items:center}
.ra .nav .links>a,.ra .nav .drop>a{color:var(--nav-txt);padding:8px 2px}
.ra .nav .links>a:hover,.ra .nav .drop>a:hover{color:#fff}
.ra .nav .links>a.on,.ra .nav .drop>a.on{color:#fff;border-bottom:2px solid var(--green-light)}
.ra .nav .right{margin-left:auto;display:flex;gap:14px;align-items:center}
.ra .nav .login{color:var(--nav-txt);font-weight:600;font-size:14.5px}
.ra .nav .login:hover{color:#fff}
.ra .drop{position:relative}
.ra .drop .menu{position:absolute;top:100%;left:-14px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 14px 34px rgba(18,32,49,.18);padding:8px;min-width:250px;display:none;z-index:110}
.ra .drop:hover .menu,.ra .drop:focus-within .menu{display:block}
.ra .drop .menu a{display:block;padding:9px 12px;border-radius:4px;color:var(--ink);font-weight:600;font-size:14px}
.ra .drop .menu a:hover{background:var(--wash);color:var(--green)}
.ra .burger{display:none;margin-left:16px;background:none;border:0;cursor:pointer;padding:6px}
.ra .burger i{display:block;width:24px;height:2.5px;background:#fff;margin:5px 0;border-radius:2px}

/* buttons */
.ra .btn{display:inline-block;font-weight:700;padding:11px 22px;border-radius:4px;font-size:15px;white-space:nowrap;cursor:pointer;border:0;font-family:inherit;transition:background .15s,color .15s;text-align:center}
.ra .btn-green{background:var(--green);color:#fff}.ra .btn-green:hover{background:var(--green-dark);color:#fff}
.ra .btn-blue{background:var(--blue);color:#fff}.ra .btn-blue:hover{background:#315674;color:#fff}
.ra .btn-outline{border:2px solid var(--navy);color:var(--navy);padding:9px 20px;background:transparent}
.ra .btn-outline:hover{background:var(--navy);color:#fff}
.ra .btn-outline-light{border:2px solid #fff;color:#fff;padding:9px 20px;background:transparent}
.ra .btn-outline-light:hover{background:#fff;color:var(--navy)}
.ra .btn-sm{padding:9px 18px;font-size:14px}
.ra .eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.09em;color:var(--green);text-transform:uppercase;display:block}
.ra .eyebrow.blue{color:var(--blue)}.ra .eyebrow.faint{color:var(--faint)}

/* heroes */
.ra .hero-dark{background:var(--navy);color:#fff}
.ra .hero-light{background:var(--wash);border-bottom:1px solid var(--line)}
.ra .hero-inner{display:flex;gap:48px;align-items:center;padding:62px 48px 70px;max-width:1220px;margin:0 auto}
.ra .hero-inner h1{font-weight:600;font-size:42px;line-height:1.14;margin:10px 0 0}
.ra .hero-light h1,.ra .hero-white h1{color:var(--navy)}
.ra p.sub{font-size:17.5px;line-height:1.6;margin:16px 0 0;max-width:470px}
.ra .hero-dark p.sub{color:var(--cool)}
.ra .hero-light p.sub,.ra .hero-white p.sub{color:var(--muted)}
.ra .hero-ctas{display:flex;gap:14px;margin-top:26px;align-items:center;flex-wrap:wrap}
.ra .ticks{display:flex;gap:20px;margin-top:20px;font-weight:600;font-size:14.5px;color:var(--green);flex-wrap:wrap}
.ra .hero-dark .ticks{color:var(--green-light)}
.ra .crumb{font-size:13px;color:var(--faint);margin-bottom:10px}
.ra .crumb a{color:var(--faint)}.ra .crumb b{color:var(--muted);font-weight:600}

/* trust strip */
.ra .trust{border-bottom:1px solid #eef1f0;background:var(--wash)}
.ra .trust .in{display:flex;align-items:center;gap:30px;padding:18px 48px;max-width:1220px;margin:0 auto;flex-wrap:wrap}
.ra .trust .big{font-family:"Bitter",serif;font-weight:700;color:var(--navy);font-size:17px}
.ra .trust .sep{color:#cdd6dc}
.ra .trust .lbl{font-size:12.5px;font-weight:700;letter-spacing:.08em;color:var(--faint)}
.ra .trust .logo-g{font-weight:700;font-size:14px;color:#aab6bf}

/* sections */
.ra .sec{padding:64px 0}
.ra .sec.wash{background:var(--wash)}
.ra .sec.tight{padding:48px 0}
.ra .sec h2{font-weight:600;font-size:31px;color:var(--navy);margin:0}
.ra .sec h2.center{text-align:center}
.ra .sec .lead{color:var(--muted);font-size:16.5px;line-height:1.6;max-width:660px;margin:12px auto 0;text-align:center}
.ra .cards{display:grid;gap:20px;margin-top:36px}
.ra .cards.c2{grid-template-columns:repeat(2,1fr)}
.ra .cards.c3{grid-template-columns:repeat(3,1fr)}
.ra .cards.c4{grid-template-columns:repeat(4,1fr)}
.ra .card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:24px}
.ra .card h3{font-size:18px;margin:8px 0 6px;color:var(--navy)}
.ra .card p{color:var(--muted);font-size:14.5px;line-height:1.55}
.ra .card .go{display:inline-block;margin-top:12px;font-weight:700;font-size:14px}

/* feature rows */
.ra .frow{display:flex;gap:52px;align-items:center;padding:46px 48px;border-top:1px solid var(--line);max-width:1220px;margin:0 auto}
.ra .frow.first{border-top:none}
.ra .frow.flip{flex-direction:row-reverse}
.ra .frow .txt{flex:1}
.ra .frow .viz{flex:1.1;min-width:0}
.ra .frow h3{font-size:23px;color:var(--navy);margin:8px 0 10px}
.ra .frow p{color:var(--muted);line-height:1.6;font-size:15.5px}
.ra .frow ul{margin:12px 0 0 2px;list-style:none}
.ra .frow li{padding:4px 0;font-size:15px;font-weight:600}
.ra .frow li::before{content:"✓";color:var(--green);font-weight:700;margin-right:9px}
.ra .frow.blue li::before{color:var(--blue)}

/* checklist grid */
.ra .checks{display:grid;grid-template-columns:1fr 1fr;gap:10px 32px;margin-top:28px;max-width:880px;margin-left:auto;margin-right:auto}
.ra .checks div{font-size:15.5px;font-weight:600;padding:6px 0}
.ra .checks div::before{content:"✓";color:var(--green);font-weight:700;margin-right:10px}
.ra .checks.blue div::before{color:var(--blue)}
.ra .checks.single{grid-template-columns:1fr;margin-left:0}

/* stat tiles */
.ra .stat{background:var(--mint);border-radius:6px;padding:16px 26px;text-align:center}
.ra .stat .n{font-family:"Bitter",serif;font-size:28px;font-weight:700;color:var(--green)}
.ra .stat .l{font-size:13px;color:#3d4d5a;font-weight:600}
.ra .stat-col{display:flex;flex-direction:column;gap:12px}

/* coverage band */
.ra .cov{background:var(--navy);color:#fff}
.ra .cov .in{display:flex;gap:20px;text-align:center;padding:48px;max-width:1220px;margin:0 auto}
.ra .cov .c{flex:1}
.ra .cov .n{font-family:"Bitter",serif;font-size:34px;font-weight:700;color:var(--green-light)}
.ra .cov .l{font-size:14px;color:var(--cool);font-weight:600;margin-top:4px}

/* browser mockup */
.ra .browser{border-radius:8px;box-shadow:0 20px 44px rgba(18,32,49,.16);overflow:hidden;border:1px solid var(--line);background:#fff}
.ra .browser .bar{background:var(--navy);padding:10px 16px;display:flex;gap:7px;align-items:center}
.ra .browser .bar i{width:10px;height:10px;border-radius:50%;background:var(--navy-mid)}
.ra .browser .bar span{color:var(--cool);font-size:12px;margin-left:10px}
.ra .browser .body{padding:18px 20px}
.ra .mock-note{text-align:center;font-size:12.5px;color:var(--faint);margin-top:10px}
.ra .mtable{font-size:12.5px;text-align:left}
.ra .mtable .h,.ra .mtable .r{display:grid;grid-template-columns:2fr 1.4fr 1fr .8fr;gap:8px;padding:8px 11px}
.ra .mtable .h{background:#f0f4f2;font-weight:700;color:#3d4d5a;border-radius:4px 4px 0 0}
.ra .mtable .r{border-bottom:1px solid #eef1f0;color:#3d4d5a}
.ra .mtable b{color:var(--green)}
.ra .mtable .bad{color:var(--danger);font-weight:700}

/* code block */
.ra .code{background:var(--navy-deep);border-radius:8px;box-shadow:0 20px 44px rgba(0,0,0,.28);padding:22px 24px;font:13px/1.75 ui-monospace,"SF Mono",Menlo,monospace;color:#c8d6e2;overflow-x:auto}
.ra .code .k{color:#6fc79b}.ra .code .s{color:#8fb8dd}.ra .code .n{color:#e0b36a}.ra .code .c{color:#5b7186}
.ra .endp{font:13px/1.6 ui-monospace,"SF Mono",Menlo,monospace}
.ra .endp .er{display:grid;grid-template-columns:64px 1.6fr 1.4fr;gap:10px;padding:9px 12px;border-bottom:1px solid #eef1f0;align-items:center}
.ra .endp .eh{background:#f0f4f2;font-family:"Source Sans 3",sans-serif;font-weight:700;font-size:12.5px;color:#3d4d5a}
.ra .endp .m{color:var(--blue);font-weight:700}
.ra .endp .d{font-family:"Source Sans 3",sans-serif;font-size:13px;color:var(--muted)}

/* steps */
.ra .pill-step{display:flex;align-items:flex-start;justify-content:center;margin-top:40px}
.ra .pill-step .st{width:230px;text-align:center;padding:0 8px}
.ra .pill-step .num{width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center;margin:0 auto}
.ra .pill-step .num.blue{background:var(--blue)}
.ra .pill-step .st h3{font-size:17px;margin:12px 0 4px;color:var(--navy)}
.ra .pill-step .st p{color:var(--muted);font-size:14px;line-height:1.5}
.ra .pill-step .ln{width:54px;height:2px;background:#dbe5e0;margin-top:21px;flex-shrink:0}

/* persona switcher & chips */
.ra .switch{background:var(--wash);border-bottom:1px solid var(--line)}
.ra .switch .in{display:flex;gap:10px;padding:16px 48px;max-width:1220px;margin:0 auto;font-size:14px;font-weight:700;flex-wrap:wrap}
.ra .switch a{padding:9px 16px;border-radius:20px;border:1.5px solid var(--line);background:#fff;color:var(--muted)}
.ra .switch a:hover{border-color:var(--green);color:var(--green)}
.ra .switch a.on{background:var(--navy);border-color:var(--navy);color:#fff}
.ra .chips{display:flex;gap:8px;flex-wrap:wrap}
.ra .chips span,.ra .chips a{padding:7px 14px;border-radius:16px;border:1.5px solid var(--line);background:#fff;color:var(--muted);font-size:13px;font-weight:700}
.ra .chips .on{background:var(--green);border-color:var(--green);color:#fff}

/* two-path cards */
.ra .path{background:#fff;border-radius:8px;padding:26px 28px;border:1px solid var(--line)}
.ra .path.lift{box-shadow:0 12px 30px rgba(18,32,49,.09)}
.ra .path h3{font-size:20px;margin:6px 0 4px;color:var(--navy)}
.ra .path p{color:var(--muted);font-size:15px;margin:0 0 16px}

/* FAQ */
.ra .faq{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.ra .faq .card h3{font-size:16.5px;margin-top:0}

/* timeline & team */
.ra .tl{margin-top:8px;border-left:2px solid var(--line);padding-left:28px;display:flex;flex-direction:column;gap:22px}
.ra .tl .t{position:relative}
.ra .tl .t::before{content:"";position:absolute;left:-35px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--green)}
.ra .tl .y{font-family:"Bitter",serif;font-weight:700;color:var(--green);font-size:15px}
.ra .tl .t h3{font-size:17px;color:var(--navy);margin:2px 0 3px}
.ra .tl .t p{color:var(--muted);font-size:14.5px;line-height:1.55;max-width:520px}
.ra .team{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.ra .team .card{text-align:center}
.ra .team .ava{width:76px;height:76px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--navy-mid));margin:0 auto 12px}

/* quote */
.ra .q{font-family:"Bitter",serif;font-weight:600;font-size:26px;line-height:1.35;color:var(--navy)}
.ra .split{display:flex;gap:44px;align-items:center}

/* CTA band + footer */
.ra .cta-band{background:var(--navy)}
.ra .cta-band.green{background:var(--green)}
.ra .cta-band .in{display:flex;align-items:center;gap:22px;padding:40px 48px;max-width:1220px;margin:0 auto;flex-wrap:wrap}
.ra .cta-band h2{font-weight:600;font-size:25px;color:#fff;margin:0;flex:1;min-width:280px}
.ra .site-foot{background:var(--navy-deep);color:var(--cool)}
.ra .site-foot .in{padding:44px 48px 36px;display:flex;gap:48px;font-size:13.5px;line-height:2;max-width:1220px;margin:0 auto;flex-wrap:wrap}
.ra .site-foot b{color:#fff}
.ra .site-foot a{color:var(--cool)}.ra .site-foot a:hover{color:#fff}
.ra .site-foot .fl{flex:1;min-width:130px}
.ra .site-foot .logo{font-family:"Bitter",serif;font-weight:700;font-size:18px;color:#fff}
.ra .site-foot .logo span{color:var(--green-light)}
.ra .site-foot .fine{border-top:1px solid rgba(255,255,255,.08)}
.ra .site-foot .fine div{padding:16px 48px;font-size:12.5px;color:#6e8299;max-width:1220px;margin:0 auto}

/* forms */
.ra .field{display:block;font-size:14px;font-weight:700;color:#3d4d5a;margin-top:14px}
.ra .input{width:100%;border:1.5px solid var(--line);border-radius:4px;padding:10px 14px;margin-top:6px;font:600 15px "Source Sans 3",sans-serif;color:var(--ink);background:#fff}
.ra .input:focus{border-color:var(--green);outline:none}
.ra .panel-mint{background:var(--mint);border:1px solid #cfe5da;border-radius:6px;padding:28px}

/* responsive */
@media(max-width:1120px){.ra .nav .links{gap:14px;font-size:13.5px}}
@media(max-width:960px){
  .ra .wrap,.ra .hero-inner,.ra .frow,.ra .cta-band .in,.ra .site-foot .in,.ra .trust .in,.ra .cov .in,.ra .nav,.ra .switch .in{padding-left:22px;padding-right:22px}
  .ra .nav .links{display:none}
  .ra .burger{display:block}
  .ra .nav.open .links{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--navy);flex-direction:column;align-items:flex-start;padding:14px 22px 20px;gap:2px;box-shadow:0 20px 30px rgba(0,0,0,.25)}
  .ra .nav.open .links>a,.ra .nav.open .drop>a{padding:10px 0;font-size:16px}
  .ra .nav.open .drop{width:100%}
  .ra .nav.open .drop .menu{position:static;display:block;box-shadow:none;border:0;background:transparent;padding:0 0 4px 14px;min-width:0}
  .ra .nav.open .drop .menu a{color:var(--cool);padding:7px 0}
  .ra .nav.open .drop .menu a:hover{background:none;color:#fff}
  .ra .hero-inner,.ra .frow,.ra .split,.ra .cov .in{flex-direction:column;align-items:flex-start;gap:32px}
  .ra .frow.flip{flex-direction:column}
  .ra .hero-inner h1{font-size:33px}
  .ra .cards.c2,.ra .cards.c3,.ra .cards.c4,.ra .faq,.ra .team,.ra .checks{grid-template-columns:1fr}
  .ra .pill-step{flex-direction:column;align-items:center;gap:22px}
  .ra .pill-step .ln{display:none}
  .ra .sec{padding:48px 0}
  .ra .cov .c{width:100%}
}

/* Avada-context adjustments */
.ra{font-family:'Source Sans 3',sans-serif;font-size:16px;color:#21303c;line-height:1.5}
.ra p{margin:0}
.ra ul,.ra ol{margin:0;padding:0}
.fusion-text .ra a{box-shadow:none}
.ra .browser .bar span{font-style:normal}
