/* ============================================================
   Robin Broker Partners — shares the type and palette of the
   Robin Algo Terminal plugin so both pages read as one site.
   Scoped to .rbp and locked with !important so the theme
   cannot override the layout.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap');

.rbp, .rbp *, .rbp *::before, .rbp *::after{ box-sizing:border-box !important; }

.rbp{
  --paper:#F1F2F4; --ink:#12161C; --ink-soft:#4B5563; --ink-mute:#78828F;
  --line:#D8DCE2; --line-soft:#E4E7EB; --surface:#FFFFFF;
  --term:#0E1319; --term2:#161D26; --tline:#232C38; --ttext:#C9D2DE; --tmute:#76838F;
  --gold:#B4832A; --goldlit:#E6B34C; --up:#16915F;

  display:block !important; width:100% !important; max-width:100% !important;
  margin:0 !important; padding:0 !important;
  background:var(--paper) !important; color:var(--ink) !important;
  font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif !important;
  font-size:16px !important; line-height:1.6 !important; text-align:left !important;
  -webkit-font-smoothing:antialiased;
}
.rbp br{ display:none !important; }
.rbp p:empty{ display:none !important; }
.rbp h2,.rbp h3,.rbp h4,.rbp p,.rbp ul,.rbp li,.rbp span,.rbp div{
  margin:0 !important; padding:0 !important; border:0; background:none;
  font-family:inherit; color:inherit; text-transform:none; letter-spacing:normal;
}
.rbp h2,.rbp h3{ font-family:"Archivo",-apple-system,"Segoe UI",sans-serif !important;
  line-height:1.08 !important; letter-spacing:-0.02em !important; text-wrap:balance; }
.rbp a{ color:inherit !important; text-decoration:none !important; }
.rbp .mono{ font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace !important; }

.rbp .wrap{ width:100% !important; max-width:1180px !important; margin:0 auto !important; padding:0 24px !important; }
.rbp .eyebrow{ font-family:"IBM Plex Mono",monospace !important; font-size:11px !important; font-weight:500;
  letter-spacing:.18em !important; text-transform:uppercase !important; color:var(--ink-mute) !important; }

/* ---------- intro ---------- */
.rbp .intro{ padding:0 0 8px !important; }
.rbp.flush{ padding-top:0 !important; margin-top:0 !important; }
.rbp .lede{ font-family:"Archivo",sans-serif !important; font-weight:600 !important;
  font-size:clamp(19px,2.2vw,25px) !important; line-height:1.35 !important; letter-spacing:-0.015em !important;
  margin-top:14px !important; max-width:34ch; }
.rbp .lede .g{ color:var(--gold) !important; }
.rbp .sub{ margin-top:14px !important; color:var(--ink-soft) !important; max-width:70ch; font-size:16px !important; }

/* ---------- disclosure ---------- */
.rbp .disclose{
  display:flex !important; gap:14px !important; align-items:flex-start !important;
  margin-top:26px !important; padding:16px 18px !important;
  background:var(--surface) !important; border:1px solid var(--line) !important;
  border-left:3px solid var(--gold) !important;
}
.rbp .disclose .dt{ font-family:"IBM Plex Mono",monospace !important; font-size:10.5px !important;
  letter-spacing:.14em !important; text-transform:uppercase !important; color:var(--gold) !important;
  flex:none !important; padding-top:2px !important; }
.rbp .disclose p{ font-size:14px !important; color:var(--ink-soft) !important; line-height:1.6 !important; }

/* ---------- broker grid ---------- */
.rbp .grid{ display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:20px !important; margin-top:34px !important; }
.rbp .bcard{
  display:flex !important; flex-direction:column !important;
  background:var(--surface) !important; border:1px solid var(--line) !important;
  transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.rbp .bcard:hover{ border-color:#BDC3CC !important; transform:translateY(-2px);
  box-shadow:0 18px 40px -28px rgba(9,14,20,.35); }

.rbp .bhead{ display:flex !important; align-items:center !important; gap:14px !important;
  padding:20px 22px 16px !important; border-bottom:1px solid var(--line-soft) !important; }
.rbp .logo{
  width:56px !important; height:56px !important; flex:none !important;
  display:grid !important; place-items:center !important; border-radius:3px !important;
  font-family:"Archivo",sans-serif !important; font-weight:800 !important; font-size:17px !important;
  letter-spacing:-0.02em !important; overflow:hidden !important;
}
.rbp .logo img{ width:100% !important; height:100% !important; object-fit:contain !important; display:block !important; padding:6px !important; }
.rbp .bname{ min-width:0 !important; }
.rbp .bname h3{ font-size:21px !important; font-weight:700 !important; }
.rbp .bname .bk{ font-family:"IBM Plex Mono",monospace !important; font-size:10.5px !important;
  letter-spacing:.12em !important; text-transform:uppercase !important; color:var(--ink-mute) !important; margin-top:5px !important; }

.rbp .blist{ list-style:none !important; padding:18px 22px !important; margin:0 !important;
  display:grid !important; gap:11px !important; flex:1 1 auto !important; }
.rbp .blist li{ display:flex !important; gap:10px !important; align-items:flex-start !important;
  font-size:14.5px !important; color:var(--ink-soft) !important; line-height:1.5 !important; }
.rbp .blist li svg{ width:15px !important; height:15px !important; flex:none !important; margin-top:3px !important; }

.rbp .bfoot{ padding:0 22px 20px !important; display:flex !important; align-items:center !important;
  justify-content:space-between !important; gap:12px !important; flex-wrap:wrap !important; }
.rbp .btn{
  display:inline-flex !important; align-items:center !important; gap:8px !important;
  padding:13px 22px !important; border-radius:2px !important; border:1px solid transparent;
  background:var(--ink) !important; color:#fff !important;
  font-family:"IBM Plex Mono",monospace !important; font-size:12px !important; font-weight:600 !important;
  letter-spacing:.1em !important; text-transform:uppercase !important;
  transition:background .15s ease, transform .15s ease;
}
.rbp .btn:hover{ background:var(--gold) !important; transform:translateY(-1px); }
.rbp .btn:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; }
.rbp .btn svg{ width:12px !important; height:12px !important; fill:currentColor !important; }
.rbp .partner{ font-family:"IBM Plex Mono",monospace !important; font-size:10px !important;
  letter-spacing:.12em !important; text-transform:uppercase !important; color:var(--ink-mute) !important; }

/* ---------- choose section ---------- */
.rbp .choose{ background:var(--term) !important; color:var(--ttext) !important;
  margin-top:44px !important; padding:52px 0 !important; }
.rbp .choose h2{ color:#F2F5F8 !important; font-size:clamp(24px,3vw,36px) !important; font-weight:700 !important; }
.rbp .choose .eyebrow{ color:var(--goldlit) !important; }
.rbp .choose .sub{ color:var(--tmute) !important; }
.rbp .checks{ display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1px !important; background:var(--tline) !important; border:1px solid var(--tline) !important; margin-top:34px !important; }
.rbp .check{ background:var(--term) !important; padding:24px 22px !important; }
.rbp .check .n{ font-family:"IBM Plex Mono",monospace !important; font-size:10.5px !important;
  letter-spacing:.14em !important; text-transform:uppercase !important; color:var(--goldlit) !important; }
.rbp .check h3{ font-size:18px !important; font-weight:700 !important; color:#F2F5F8 !important; margin-top:9px !important; }
.rbp .check p{ margin-top:8px !important; color:var(--tmute) !important; font-size:14px !important; }

/* ---------- risk ---------- */
.rbp .risk{ padding:34px 0 40px !important; }
.rbp .risk .rbox{ border:1px solid var(--line) !important; background:var(--surface) !important; padding:22px 24px !important; }
.rbp .risk h4{ font-family:"IBM Plex Mono",monospace !important; font-size:11px !important;
  letter-spacing:.14em !important; text-transform:uppercase !important; color:var(--ink) !important; margin-bottom:12px !important; }
.rbp .risk p{ font-size:13.5px !important; line-height:1.7 !important; color:var(--ink-soft) !important; }
.rbp .risk p + p{ margin-top:11px !important; }

@media (max-width:900px){
  .rbp .grid{ grid-template-columns:minmax(0,1fr) !important; }
  .rbp .checks{ grid-template-columns:minmax(0,1fr) !important; }
}
@media (max-width:560px){
  .rbp .wrap{ padding:0 18px !important; }
  .rbp .bfoot .btn{ width:100% !important; justify-content:center !important; }
}
@media (prefers-reduced-motion:reduce){
  .rbp *{ transition-duration:.001ms !important; }
}
