@font-face {
  font-family: "Inter";
  src: url("/assets/fonts/inter/inter-latin-wght-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

/* RB INTELLECTUS + CONFIANCE | HOMEPAGE PREMIUM v1.0
   CSS em escopo (.rb-home) para evitar afetar as telas de login/cadastro.
   Gradientes, detalhes dourados, ondas, cartoes e responsividade.
   Todos os valores de espacamento podem ser ajustados no :root abaixo. */
.rb-home {
  --rb-navy: #062252;
  --rb-deep: #04204a;
  --rb-blue: #0065e9;
  --rb-cyan: #00a5ff;
  --rb-gold: #efbb51;
  --rb-gold-light: #ffe4a2;
  --rb-text: #102d59;
  --rb-muted: #516886;
  --rb-border: #cbdcf2;
  --rb-bg: #eff6ff;
  --rb-white: #ffffff;
  --rb-shadow: 0 14px 38px rgba(4,40,90,.11);
  --rb-radius: 22px;
}
.rb-home, .rb-home * { box-sizing:border-box; }
.rb-home { margin:0; font:400 16px/1.55 "Inter","Segoe UI",Arial,sans-serif; color:var(--rb-text); background:linear-gradient(180deg,#f5faff,#eef5fd); -webkit-font-smoothing:antialiased; }
.rb-home button, .rb-home input, .rb-home select, .rb-home textarea { font:inherit; }
.rb-home a { color:inherit; text-decoration:none; }
.rb-home svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.rb-home .rb-container { width:min(1220px,calc(100% - 64px)); margin-inline:auto; }
.rb-home .skip-link { position:absolute; z-index:100; top:-50px; left:10px; padding:10px 16px; background:#fff; }
.rb-home .skip-link:focus {top:10px}
/* Barra superior */
.rb-home .rb-header { position:sticky; top:0; z-index:40; background:rgba(255,255,255,.96); border-bottom:1px solid #e4eefa; box-shadow:0 4px 25px rgba(7,30,70,.055); backdrop-filter:blur(14px); }
.rb-home .rb-header-inner { min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.rb-home .rb-brand { display:flex; flex-direction:row; width:218px; flex:0 0 218px; align-items:center; gap:9px; line-height:1; }
.rb-home .rb-brand img { display:block; width:55px; height:55px; object-fit:contain; }
.rb-home .rb-brand-wordmark {display:flex;flex-direction:column;gap:6px;color:#0c4b99} .rb-home .rb-brand-wordmark strong {font-size:19px;letter-spacing:2px;font-weight:900} .rb-home .rb-brand-wordmark small {font-size:8px;letter-spacing:2.4px;font-weight:900;color:#567caa}
.rb-home .rb-nav { display:flex; align-items:center; gap:25px; }
.rb-home .rb-nav > a { position:relative; color:#142d55; white-space:nowrap; font-size:14px; font-weight:700; transition:color .2s; }
.rb-home .rb-nav > a:not(.rb-client-link):hover, .rb-home .rb-nav > a.active { color:#0062d9; }
.rb-home .rb-nav > a:not(.rb-client-link).active::after { content:""; position:absolute; bottom:-10px; left:0; width:100%; height:3px; background:#007cfa; border-radius:6px; }
.rb-home .rb-nav > .rb-client-link { color:white; display:flex; gap:7px; align-items:center; padding:12px 17px; border:1.5px solid var(--rb-gold); border-radius:14px; background:linear-gradient(150deg,#0777ef,#06265f 85%); box-shadow:0 6px 13px rgba(6,67,156,.2); }
.rb-home .rb-nav > .rb-client-link:hover {filter:brightness(1.12)}
.rb-home .rb-menu-toggle {display:none;border:0;background:none;padding:12px;cursor:pointer}
.rb-home .rb-menu-toggle span {display:block;width:24px;height:2px;margin:5px;background:#083a83}
/* Hero azul premium */
.rb-home .rb-hero { position:relative; overflow:hidden; isolation:isolate; padding:63px 0 93px; background:radial-gradient(ellipse at 64% 43%,#0c80de 0%,transparent 43%),linear-gradient(126deg,#002252 4%,#004da8 53%,#07306b 100%); color:white; }
.rb-home .rb-hero::before {content:""; position:absolute; top:-290px; right:-160px; width:930px; height:670px; transform:rotate(-20deg); border:110px solid rgba(16,148,255,.13); border-radius:50%; z-index:-1}
.rb-home .rb-hero::after {content:""; position:absolute; left:-300px; bottom:-450px; width:850px; height:650px; border:85px solid rgba(1,174,255,.17); border-radius:50%; transform:rotate(22deg); z-index:-1}
.rb-home .rb-hero-gold-line {position:absolute; z-index:3; width:520px; height:240px; border-top:9px solid #f7c76b; border-radius:0 0 100% 0; left:-170px; top:-3px; transform:rotate(-16deg); pointer-events:none; box-shadow:0 -5px 0 #0084ed}
.rb-home .rb-hero-grid {position:relative; display:grid; grid-template-columns:1fr 1.04fr; align-items:center; gap:46px}
.rb-home .rb-overline {display:flex;align-items:center;gap:18px;letter-spacing:6px;font-size:14px;font-weight:900}
.rb-home .rb-overline span {width:60px;height:2px;background:linear-gradient(90deg,transparent,var(--rb-gold))}
.rb-home .rb-overline span:last-child {background:linear-gradient(90deg,var(--rb-gold),transparent)}
.rb-home .rb-overline-light {color:white;margin-bottom:24px}
.rb-home .rb-eyebrow {display:inline-block; color:#c4e4ff; font-weight:700; font-size:13px; letter-spacing:.4px; margin-bottom:14px; }
.rb-home .rb-hero h1 {font-size:clamp(39px,4.4vw,67px); line-height:1.08; letter-spacing:-1.9px; font-weight:850; margin:0 0 21px; text-wrap:balance; }
.rb-home .rb-hero h1 em,.rb-home .rb-contact h2 em {font-style:normal;color:var(--rb-gold);}
.rb-home .rb-hero-copy > p {margin:0 0 29px; color:#e1efff; font-size:17px; max-width:550px; }
.rb-home .rb-hero-actions {display:flex;gap:13px;flex-wrap:wrap}
.rb-home .rb-btn {display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:52px;padding:12px 20px;border-radius:14px;border:1px solid transparent;line-height:1.2;font-weight:800;font-size:14px;cursor:pointer;transition:transform .2s,box-shadow .2s,filter .2s;}
.rb-home .rb-btn:hover {transform:translateY(-2px);filter:brightness(1.07)}
.rb-home .rb-btn-bright {background:linear-gradient(135deg,#008cff,#0652cc 67%,#043b93);color:white;border-color:#b5e8ff;box-shadow:0 7px 22px rgba(0,121,245,.3)}
.rb-home .rb-btn-bright svg{width:18px;height:18px}
.rb-home .rb-btn-outline {border:1.5px solid var(--rb-gold);background:rgba(2,31,71,.22);color:white;box-shadow:inset 0 0 0 1px rgba(255,231,164,.16),0 4px 12px rgba(255,191,57,.18)}
.rb-home .rb-trust-row {display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-top:25px;color:#b7dafa;font-size:12px}
.rb-home .rb-live-dot {width:8px;height:8px;background:#6fe2c3;box-shadow:0 0 0 4px rgba(111,226,195,.15);border-radius:50%}
.rb-home .rb-trust-sep {height:12px;width:1px;background:#83a7d5}
.rb-home .rb-hero-visual {position:relative; min-width:0; padding:34px 0 28px 0}
.rb-home .rb-dashboard-glow {position:absolute;inset:15% 10%;filter:blur(42px);background:#2e9df8;opacity:.4;border-radius:60%}
.rb-home .rb-laptop {position:relative;transform:perspective(1100px) rotateY(-8deg) rotateX(3deg);filter:drop-shadow(0 29px 28px rgba(0,17,39,.52));}
.rb-home .rb-laptop-bezel {border:10px solid #081932;border-bottom-width:13px;border-radius:19px 19px 6px 6px; background:#fff;box-shadow:inset 0 0 0 2px #77c5ff,0 0 0 2px rgba(222,239,255,.7);overflow:hidden}
.rb-home .rb-laptop-base {height:20px;max-width:112%;margin:0 -6%;border-radius:2px 2px 55% 55%;background:linear-gradient(180deg,#c6d3e7 0%,#7896b8 40%,#294669 75%,#aabdd5);}
.rb-home .rb-dashboard {display:flex;height:295px;background:#f4f8fd;color:#0a2d58}
.rb-home .rb-dash-side {width:54px;padding:19px 10px;display:flex;flex-direction:column;gap:20px;background:linear-gradient(#083d80,#09285b);align-items:center;flex:0 0 auto}
.rb-home .rb-dash-mark {font-weight:900;color:white;font-size:25px;line-height:1}
.rb-home .rb-dash-side > span {height:6px;width:20px;background:#b0cff5;opacity:.6;border-radius:5px}
.rb-home .rb-dash-side > .rb-dash-side-active {background:#f6c46b;opacity:1;width:28px}
.rb-home .rb-dash-content {flex:1;padding:18px 16px;min-width:0}
.rb-home .rb-dash-top {display:flex;justify-content:space-between;gap:9px;align-items:center;margin-bottom:15px}
.rb-home .rb-dash-top strong {font-size:15px}
.rb-home .rb-dash-top > span {font-size:8px;color:#6281a5}
.rb-home .rb-dash-cards {display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.rb-home .rb-dash-stat {min-width:0;border:1px solid #d4e2f2;border-radius:7px;background:#fff;padding:10px 9px}
.rb-home .rb-dash-stat small {display:block;font-size:9px;color:#687e9a}
.rb-home .rb-dash-stat b {display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rb-home .rb-stat-line {width:70%;height:4px;border-radius:6px;background:linear-gradient(90deg,#00aeff,#075ad6);margin-top:10px}
.rb-home .rb-dash-stat:nth-child(3) .rb-stat-line{background:linear-gradient(90deg,#ffcc6a,#efac2b)}
.rb-home .rb-dash-charts {display:grid;grid-template-columns:1.5fr 1fr;gap:9px;margin-top:10px;height:130px}
.rb-home .rb-dash-chart,.rb-home .rb-dash-ring {background:white;border:1px solid #d4e2f2;border-radius:7px;padding:9px;overflow:hidden}
.rb-home .rb-dash-chart strong,.rb-home .rb-dash-ring strong {display:block;font-size:10px}
.rb-home .rb-bars {height:81px;display:flex;gap:8px;align-items:end;border-bottom:1px solid #afc4df;padding:0 7px}
.rb-home .rb-bars i {height:var(--v);flex:1;background:linear-gradient(#13a2ff,#0658d1);border-radius:3px 3px 0 0}
.rb-home .rb-ring {margin:14px auto 0;width:66px;height:66px;border-radius:50%;background:conic-gradient(#05a2ef 0 260deg,#d9eaf7 260deg 360deg);display:grid;place-items:center}
.rb-home .rb-ring span {width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:11px;font-weight:900}
.rb-home .rb-floating-chip {position:absolute;padding:9px 12px;border-radius:12px;color:#0b3d79;background:rgba(255,255,255,.96);font-weight:800;font-size:11px;box-shadow:0 7px 22px rgba(0,18,62,.22)}
.rb-home .rb-chip-top {top:0;right:0}
.rb-home .rb-chip-bottom {bottom:4px;left:-15px}
.rb-home .rb-hero-wave {position:absolute;bottom:-2px;left:0;right:0;height:56px;background:linear-gradient(170deg,transparent 0 20%,#078cf4 22% 35%,#f8d080 36% 37%,#f5faff 40%);z-index:2;pointer-events:none}
/* Secoes */
.rb-home .rb-section {padding:75px 0}
.rb-home .rb-section-heading {text-align:center;margin:0 auto 34px;max-width:760px}
.rb-home .rb-small-label {display:inline-flex;align-items:center;gap:17px;color:#0a4287;font-size:12px;font-weight:900;letter-spacing:4px}
.rb-home .rb-small-label:before,.rb-home .rb-small-label:after {content:"";width:33px;height:2px;background:var(--rb-gold)}
.rb-home .rb-section h2 {margin:11px 0 8px;font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-.8px;color:#092d60}
.rb-home .rb-section-heading p {margin:0;color:var(--rb-muted);font-size:15px}
.rb-home .rb-card-grid {display:grid;gap:18px}
.rb-home .rb-three-cols {grid-template-columns:repeat(3,minmax(0,1fr))}
.rb-home .rb-four-cols {grid-template-columns:repeat(4,minmax(0,1fr))}
.rb-home .rb-solution-card,.rb-home .rb-service-card {position:relative;min-width:0;overflow:hidden;background:linear-gradient(155deg,#fff,#f1f8ff);border:1px solid #c8ddf3;box-shadow:var(--rb-shadow);border-radius:var(--rb-radius);padding:26px 25px 31px;transition:transform .2s,box-shadow .2s}
.rb-home .rb-solution-card:hover,.rb-home .rb-service-card:hover {transform:translateY(-4px);box-shadow:0 20px 40px rgba(4,40,90,.15)}
.rb-home .rb-solution-card::after,.rb-home .rb-service-card::after {content:"";position:absolute;bottom:-53px;right:-65px;width:200px;height:92px;background:#0069d9;border-radius:55%;transform:rotate(-30deg);box-shadow:0 -10px 0 #f5bf55,0 -16px 0 #1197f9}
.rb-home .rb-icon-tile {width:60px;height:60px;border-radius:16px;background:linear-gradient(142deg,#10afff 0%,#046ac7 50%,#071f52);box-shadow:0 9px 18px rgba(2,84,180,.22);display:grid;place-items:center;color:white}
.rb-home .rb-icon-tile svg {width:32px;height:32px;stroke-width:1.8}
.rb-home .rb-solution-card h3 {font-size:20px;line-height:1.25;margin:20px 0 10px;color:#072f6a;max-width:240px}
.rb-home .rb-solution-card p,.rb-home .rb-service-card p {font-size:14px;line-height:1.55;margin:0 0 18px;color:#425a77;max-width:275px}
.rb-home .rb-solution-card a {position:relative;z-index:1;font-size:13px;font-weight:800;color:#006bdc}
.rb-home .rb-solution-card a span {margin-left:4px}
/* Parceiros */
.rb-home .rb-partners {padding-top:40px;padding-bottom:70px;background:linear-gradient(180deg,#f5faff,#eaf4fe)}
.rb-home .rb-partners-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.rb-home .rb-partner {display:grid;grid-template-columns:48px 1fr;grid-template-rows:1fr 1fr;align-items:center;column-gap:12px;min-height:88px;padding:15px 18px;border:1px solid #d0e0f3;border-radius:16px;background:#fff;box-shadow:0 9px 20px rgba(10,50,100,.07)}
.rb-home .rb-partner-monogram {grid-row:1/3;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;font-size:13px;font-weight:900;background:linear-gradient(130deg,#d6f0ff,#e6f4ff);border:2px solid #8dcfff;color:#0765b0}
.rb-home .rb-partner strong {font-size:14px;align-self:end;line-height:1.25}
.rb-home .rb-partner small {font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#627f9f;align-self:start}
.rb-home .rb-partner-note {text-align:center;font-size:11px;color:#7890a9;margin:16px 0 0}
/* Servicos */
.rb-home .rb-services {background:radial-gradient(ellipse at 85% 10%,#d5ecff 0,transparent 42%),#f0f7ff}
.rb-home .rb-service-card {padding:23px 20px 34px}
.rb-home .rb-service-ico {font-weight:900;font-size:33px;color:#0675d7;line-height:1}
.rb-home .rb-service-card h3 {margin:13px 0 7px;color:#082e66;font-size:18px;line-height:1.25}
.rb-home .rb-service-card p {font-size:13px;margin:0}
/* Institucional */
.rb-home .rb-about {background:#fff}
.rb-home .rb-about-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.rb-home .rb-about-grid article {border:1px solid #d3e3f4;border-top:4px solid var(--rb-gold);border-radius:18px;padding:25px;background:linear-gradient(#fff,#f5faff)}
.rb-home .rb-about-grid article span {font-weight:900;color:#1382df;letter-spacing:2px}
.rb-home .rb-about-grid h3 {margin:10px 0;color:#0b326b;font-size:20px}
.rb-home .rb-about-grid p {color:#536982;font-size:14px;margin:0}
.rb-home .rb-steps {margin:36px auto 0;display:flex;justify-content:center;gap:16px;align-items:center;flex-wrap:wrap}
.rb-home .rb-steps div {display:flex;align-items:center;gap:9px;color:#133764;font-size:13px}
.rb-home .rb-steps div span {width:35px;height:35px;background:linear-gradient(#087bf0,#004cac);border:2px solid #bedafa;border-radius:50%;color:#fff;display:grid;place-items:center;font-weight:900}
.rb-home .rb-steps i {width:36px;height:1px;background:#aacce9}
/* CTA */
.rb-home .rb-contact {position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 10% 60%,#146dd0 0,transparent 42%),linear-gradient(130deg,#052558,#063d8a);padding:75px 0}
.rb-home .rb-contact::before {content:"";position:absolute;z-index:-1;left:-160px;top:-300px;width:650px;height:500px;border:50px solid rgba(0,158,255,.13);border-radius:50%;transform:rotate(-30deg)}
.rb-home .rb-contact-grid {display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:60px}
.rb-home .rb-small-label-white {color:#d2eafa}
.rb-home .rb-contact h2 {font-size:clamp(36px,4vw,57px);line-height:1.08;color:#fff;margin:17px 0 17px;letter-spacing:-1.7px}
.rb-home .rb-contact-copy > p {color:#dbefff;max-width:420px;font-size:17px}
.rb-home .rb-contact-accent {margin-top:22px;color:#ffd27e;font-size:13px;font-weight:700}
.rb-home .rb-whatsapp-link {display:inline-flex;margin-top:26px;padding:11px 15px;border:1px solid #b0dfff;border-radius:12px;color:#fff;font-weight:800;font-size:13px}
.rb-home .rb-contact-form {padding:28px;background:linear-gradient(#fff,#f4f9ff);border:1px solid #b0d7fc;box-shadow:0 15px 40px rgba(0,15,60,.3);border-radius:25px}
.rb-home .rb-contact-form h3 {font-size:23px;color:#092f69;margin:0 0 4px}
.rb-home .rb-contact-form > p:first-of-type {color:#627895;font-size:13px;margin:0 0 16px}
.rb-home .rb-contact-form label {display:block;font-size:12px;font-weight:800;color:#10345f;margin:12px 0 5px}
.rb-home .rb-contact-form input,.rb-home .rb-contact-form select {width:100%;height:48px;border-radius:10px;padding:10px 13px;border:1.5px solid #bdd5ed;background:#f7fbff;color:#1a345a;outline:none;font-size:14px}
.rb-home .rb-contact-form input:focus,.rb-home .rb-contact-form select:focus {background:#fff;border-color:#2389fa;box-shadow:0 0 0 4px rgba(7,126,243,.12)}
.rb-home .rb-form-row {display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rb-home .rb-btn-submit {margin-top:20px;width:100%;background:linear-gradient(150deg,#0087f9,#0055c5 55%,#072b69);color:#fff;border:1px solid #6ecaff;box-shadow:0 7px 18px rgba(9,73,165,.2)}
.rb-home .rb-form-status {min-height:14px;color:#7a4505;font-size:12px;margin:12px 0 0}
/* Rodape */
.rb-home .rb-footer {background:linear-gradient(105deg,#041c43,#073572 58%,#041c43);color:#edf6ff;border-top:3px solid #e0ae50;padding:53px 0 15px}
.rb-home .rb-footer-grid {display:grid;grid-template-columns:1.5fr .8fr 1fr 1fr;gap:42px}
.rb-home .rb-footer-grid h3 {font-size:14px;color:#fff;margin:4px 0 14px}
.rb-home .rb-footer-grid a {display:block;font-size:13px;color:#d8e7f8;padding:4px 0}
.rb-home .rb-footer-grid a:hover {color:#ffcf71}
.rb-home .rb-footer-grid p {font-size:13px;color:#c4d9f0;line-height:1.6;margin-top:13px}
.rb-home .rb-footer-logo {font-weight:900;font-size:25px;letter-spacing:2px;display:flex;align-items:center;gap:7px}
.rb-home .rb-footer-logo:first-letter {color:#ffdc82}
.rb-home .rb-footer-brand > small {font-size:10px;letter-spacing:3px;color:#b2d9ff;margin-left:40px}
.rb-home .rb-footer-brand > p {max-width:250px}
.rb-home .rb-footer-bottom {border-top:1px solid rgba(255,255,255,.17);margin-top:43px;padding:17px 0 0;font-size:11px;color:#b3ceec;display:flex;gap:20px;justify-content:space-between}
/* Responsivo */
@media(max-width:1150px) {
 .rb-home .rb-header-inner {gap:14px}
 .rb-home .rb-nav {gap:13px}
 .rb-home .rb-nav > a {font-size:12px}
 .rb-home .rb-brand {width:192px;flex-basis:192px} .rb-home .rb-brand-wordmark strong{font-size:15px}
 .rb-home .rb-hero-grid {gap:24px}
 .rb-home .rb-contact-grid {gap:30px}
}
@media(max-width:930px) {
 .rb-home .rb-container {width:min(100% - 42px,840px)}
 .rb-home .rb-menu-toggle {display:block}
 .rb-home .rb-nav {display:none;position:absolute;right:20px;top:75px;width:min(350px,calc(100vw - 40px));padding:18px;flex-direction:column;align-items:stretch;gap:7px;background:#fff;border:1px solid #c7dbf4;border-radius:15px;box-shadow:0 20px 30px rgba(10,44,88,.2)}
 .rb-home .rb-nav.rb-nav-open {display:flex}
 .rb-home .rb-nav > a {font-size:15px;padding:9px}
 .rb-home .rb-nav > a:not(.rb-client-link).active::after {display:none}
 .rb-home .rb-hero-grid {grid-template-columns:1fr;gap:14px}
 .rb-home .rb-hero-copy {text-align:center}
 .rb-home .rb-hero h1 {max-width:800px;margin-inline:auto}
 .rb-home .rb-hero-copy > p {margin-inline:auto}
 .rb-home .rb-hero-actions,.rb-home .rb-overline,.rb-home .rb-trust-row {justify-content:center}
 .rb-home .rb-hero-visual {width:min(560px,95%);margin:0 auto;padding:22px 0}
 .rb-home .rb-four-cols {grid-template-columns:repeat(2,minmax(0,1fr))}
 .rb-home .rb-contact-grid {grid-template-columns:1fr;gap:26px}
 .rb-home .rb-contact-copy {text-align:center}
 .rb-home .rb-contact-copy > p {margin-inline:auto}
 .rb-home .rb-footer-grid {grid-template-columns:repeat(2,1fr);gap:32px}
}
@media(max-width:650px) {
 .rb-home .rb-container {width:calc(100% - 32px)}
 .rb-home .rb-header-inner {min-height:75px}
 .rb-home .rb-brand img {width:44px;height:44px}
 .rb-home .rb-brand {width:170px;flex-basis:170px;gap:6px}
 .rb-home .rb-brand-wordmark strong{font-size:15px;letter-spacing:1.6px}
 .rb-home .rb-brand-wordmark small{font-size:7px;letter-spacing:1.5px}
 .rb-home .rb-hero {padding:42px 0 61px}
 .rb-home .rb-hero h1 {font-size:37px;letter-spacing:-1px}
 .rb-home .rb-hero-copy > p {font-size:15px}
 .rb-home .rb-hero-actions {flex-direction:column;align-items:stretch}
 .rb-home .rb-hero-actions .rb-btn {width:100%}
 .rb-home .rb-overline {font-size:11px;letter-spacing:3px}
 .rb-home .rb-overline span {width:33px}
 .rb-home .rb-trust-row {font-size:11px}
 .rb-home .rb-dashboard {height:228px}
 .rb-home .rb-dash-content {padding:10px 8px}
 .rb-home .rb-dash-top strong {font-size:12px}
 .rb-home .rb-dash-side {width:35px;padding:12px 7px}
 .rb-home .rb-dash-mark {font-size:18px}
 .rb-home .rb-dash-side > span {width:14px}
 .rb-home .rb-dash-stat {padding:7px 5px}
 .rb-home .rb-dash-stat small {font-size:7px}
 .rb-home .rb-dash-stat b {font-size:8px}
 .rb-home .rb-dash-charts {height:103px}
 .rb-home .rb-bars {height:60px;gap:3px}
 .rb-home .rb-dash-ring strong,.rb-home .rb-dash-chart strong {font-size:8px}
 .rb-home .rb-ring {width:48px;height:48px}
 .rb-home .rb-ring span {width:36px;height:36px;font-size:8px}
 .rb-home .rb-floating-chip {font-size:8px;padding:6px}
 .rb-home .rb-section {padding:52px 0}
 .rb-home .rb-three-cols,.rb-home .rb-four-cols {grid-template-columns:1fr}
 .rb-home .rb-solution-card,.rb-home .rb-service-card {padding:22px 22px 29px}
 .rb-home .rb-partners-grid {grid-template-columns:1fr 1fr}
 .rb-home .rb-partner {grid-template-columns:35px 1fr;column-gap:9px;padding:10px;min-height:75px}
 .rb-home .rb-partner-monogram {width:33px;height:33px;font-size:10px}
 .rb-home .rb-partner strong {font-size:11px}
 .rb-home .rb-partner small {font-size:8px;letter-spacing:1px}
 .rb-home .rb-about-grid {grid-template-columns:1fr}
 .rb-home .rb-steps {gap:8px}
 .rb-home .rb-steps i {width:6px}
 .rb-home .rb-steps div {font-size:10px;gap:5px}
 .rb-home .rb-steps div span {width:28px;height:28px}
 .rb-home .rb-contact {padding:55px 0}
 .rb-home .rb-contact-form {padding:19px}
 .rb-home .rb-form-row {grid-template-columns:1fr;gap:0}
 .rb-home .rb-footer-grid {grid-template-columns:1fr 1fr;gap:25px}
 .rb-home .rb-footer-bottom {flex-direction:column;gap:6px}
}
@media(max-width:410px) {
 .rb-home .rb-hero h1 {font-size:32px}
 .rb-home .rb-partners-grid {grid-template-columns:1fr}
 .rb-home .rb-partner {grid-template-columns:44px 1fr}
 .rb-home .rb-partner-monogram {width:40px;height:40px}
 .rb-home .rb-footer-grid {grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.rb-home * {scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(min-width:651px){.rb-home{scroll-behavior:smooth}}

/* Integração com o conteúdo e o formulário reais da página institucional. */
.rb-home { overflow-x: clip; }
.rb-home main > section[id], .rb-home #financial, .rb-home #indicators { scroll-margin-top: 85px; }
.rb-home ::selection { background: #ffcf70; color: #062252; }
.rb-home :focus-visible { outline: 3px solid #f7be4d; outline-offset: 3px; }
.rb-home .rb-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.rb-home .rb-header-inner { min-height: 76px; justify-content: flex-start; gap: 34px; }
.rb-home .rb-brand { position: relative; width: 245px; flex-basis: 245px; gap: 7px; }
.rb-home .rb-brand::after { content: ""; position: absolute; right: -17px; height: 35px; width: 1px; background: #eeb949; }
.rb-home .rb-brand img { width: 59px; height: 59px; }
.rb-home .rb-brand-wordmark strong { font-size: 23px; letter-spacing: .07em; }
.rb-home .rb-brand-wordmark small { font-size: 10px; letter-spacing: .19em; }
.rb-home .rb-nav { flex: 1; justify-content: space-between; gap: 13px; }
.rb-home .rb-nav > a { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; }
.rb-home .rb-nav > a svg { width: 16px; height: 16px; stroke-width: 2.3; }
.rb-home .rb-nav > .rb-client-link { padding: 10px 13px; border-radius: 14px; border-color: #f4bb47; }
.rb-home .rb-nav > .rb-client-link svg { width: 20px; height: 20px; }

.rb-home .rb-hero { padding: 24px 0 25px; background: radial-gradient(ellipse at 59% 33%, #078fe9 0%, transparent 38%), linear-gradient(112deg,#06224f 0%,#044d9e 56%,#042d72 100%); }
.rb-home .rb-hero-grid { grid-template-columns: 1fr 1.08fr; align-items: start; gap: 20px; }
.rb-home .rb-hero-copy { position: relative; z-index: 2; width: calc(100% + 65px); padding-top: 22px; }
.rb-home .rb-hero-gold-line { left: -172px; top: -15px; width: 495px; height: 230px; }
.rb-home .rb-overline-light { margin-bottom: 13px; font-size: 16px; letter-spacing: .31em; }
.rb-home .rb-hero h1 { font-size: clamp(39px,4vw,50px); line-height: 1.04; margin-bottom: 14px; letter-spacing: -.035em; font-weight: 850; }
.rb-home .rb-hero-copy > p { max-width: 470px; margin-bottom: 20px; font-size: 19px; font-weight: 600; line-height: 1.27; }
.rb-home .rb-hero-actions { gap: 13px; }
.rb-home .rb-hero-actions .rb-btn { min-height: 44px; padding: 9px 15px; font-size: 14px; }
.rb-home .rb-hero-actions .rb-btn svg { width: 20px; height: 20px; }
.rb-home .rb-hero-visual { margin: 0; padding: 0 0 12px; }
.rb-home .rb-hero-visual figcaption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.rb-home .rb-laptop { transform: perspective(1100px) rotateY(-9deg) rotateX(2deg) rotateZ(-1deg); }
.rb-home .rb-laptop-bezel { border-width: 9px; border-bottom-width: 12px; border-radius: 16px 16px 5px 5px; }
.rb-home .rb-dashboard { height: 240px; }
.rb-home .rb-dash-side { width: 59px; gap: 12px; padding: 12px 8px; }
.rb-home .rb-dash-side img { width: 32px; height: 32px; object-fit: contain; filter: grayscale(1) invert(1); mix-blend-mode: screen; }
.rb-home .rb-dash-side svg { width: 16px; height: 16px; color: #cde9ff; }
.rb-home .rb-dash-content { padding: 15px 12px; }
.rb-home .rb-dash-top strong { font-size: 13px; }
.rb-home .rb-dash-cards { gap: 7px; }
.rb-home .rb-dash-stat { padding: 8px 7px; }
.rb-home .rb-dash-stat:nth-child(1) { background: linear-gradient(145deg,#3abf72,#047a43); color: white; }
.rb-home .rb-dash-stat:nth-child(2) { background: linear-gradient(145deg,#138efa,#064aaf); color: white; }
.rb-home .rb-dash-stat:nth-child(3) { background: linear-gradient(145deg,#ffb638,#db7a00); color: white; }
.rb-home .rb-dash-stat small { color: inherit; font-size: 8px; opacity: .95; }
.rb-home .rb-dash-stat b { font-size: 10px; }
.rb-home .rb-stat-line { display: none; }
.rb-home .rb-dash-charts { height: 106px; }
.rb-home .rb-bars { height: 57px; }
.rb-home .rb-ring { width: 57px; height: 57px; margin-top: 6px; background: conic-gradient(#14bd72 0 250deg,#d9eaf7 250deg 360deg); }
.rb-home .rb-ring span { width: 40px; height: 40px; }
.rb-home .rb-laptop-base { height: 17px; }
.rb-home .rb-hero-wave { height: 31px; background: linear-gradient(174deg,transparent 0 32%,#059cf6 35% 50%,#f7be4d 51% 54%,#f5faff 58%); }

.rb-home .rb-solutions { padding: 20px 0 23px; }
.rb-home .rb-solutions .rb-section-heading { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.rb-home .rb-card-grid { gap: 16px; }
.rb-home .rb-solution-card { display: grid; grid-template-columns: 64px 1fr; grid-template-rows: auto auto 1fr; column-gap: 14px; align-content: start; min-height: 178px; padding: 17px 19px 22px; border-radius: 18px; }
.rb-home .rb-solution-card .rb-icon-tile { grid-column: 1; grid-row: 1; width: 60px; height: 52px; border-radius: 14px; }
.rb-home .rb-icon-tile svg { width: 31px; height: 31px; }
.rb-home .rb-solution-card h3 { grid-column: 2; grid-row: 1; align-self: center; max-width: none; margin: 0; font-size: 21px; line-height: 1.08; font-weight: 800; }
.rb-home .rb-solution-card p { grid-column: 1/-1; grid-row: 2; margin: 11px 0 0; font-size: 15px; line-height: 1.33; color: #183760; }
.rb-home .rb-solution-card a { grid-column: 1/-1; grid-row: 3; align-self: end; margin-top: 8px; font-size: 11px; }
.rb-home .rb-solution-card a svg { vertical-align: -2px; width: 13px; height: 13px; }
.rb-home .rb-solution-card::after,.rb-home .rb-service-card::after { bottom: -64px; right: -85px; width: 150px; height: 77px; box-shadow: 0 -7px 0 #f5bf55,0 -11px 0 #1197f9; }
.rb-home .rb-solution-detail { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-top: 13px; }
.rb-home .rb-solution-detail p { display: flex; align-items: flex-start; gap: 6px; margin: 0; color: #32557d; font-size: 11px; line-height: 1.35; }
.rb-home .rb-solution-detail svg { width: 14px; height: 14px; flex: 0 0 auto; color: #0876d9; }

.rb-home .rb-partners { padding: 12px 0 20px; }
.rb-home .rb-partners .rb-section-heading { margin-bottom: 15px; }
.rb-home .rb-partners-grid { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 1px 1px 9px; scrollbar-color: #8fb8e7 transparent; }
.rb-home .rb-partner { flex: 0 0 calc((100% - 36px)/4); scroll-snap-align: start; grid-template-columns: 56px 1fr; grid-template-rows: auto auto; min-height: 73px; padding: 8px 11px; }
.rb-home .rb-partner img { grid-column: 1; grid-row: 1/3; display: block; width: 52px; height: 51px; object-fit: contain; }
.rb-home .rb-partner strong { grid-column: 2; grid-row: 1; font-size: 14px; font-weight: 800; }
.rb-home .rb-partner small { grid-column: 2; grid-row: 2; }
.rb-home .rb-section h2 { font-size: clamp(28px,3.1vw,39px); margin: 6px 0 3px; font-weight: 800; }
.rb-home .rb-section-heading p { font-size: 15px; }

.rb-home .rb-services { padding: 20px 0 25px; }
.rb-home .rb-services .rb-section-heading { margin-bottom: 18px; }
.rb-home .rb-service-card { min-height: 158px; padding: 16px 17px 22px; border-radius: 17px; }
.rb-home .rb-service-ico svg { width: 36px; height: 36px; color: #0674d5; }
.rb-home .rb-service-card h3 { font-size: 18px; margin: 6px 0 4px; font-weight: 800; }
.rb-home .rb-service-card p { font-size: 13px; line-height: 1.33; }

.rb-home .rb-about { padding: 45px 0 50px; }
.rb-home .rb-about-grid article { border-top: 3px solid #edb848; }
.rb-home .rb-about-grid article > svg { width: 27px; height: 27px; color: #047ce3; }
.rb-home .rb-about-grid article h3 { margin: 7px 0; }
.rb-home .rb-integration { margin-top: 45px; text-align: center; }
.rb-home .rb-integration > h3 { margin: 0 0 5px; color: #0a326c; font-size: 25px; }
.rb-home .rb-integration > p { margin: 0 0 22px; color: #536982; }
.rb-home .rb-integration-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; text-align: left; }
.rb-home .rb-integration-grid article { padding: 17px; background: #f1f7ff; border-radius: 14px; }
.rb-home .rb-integration-grid article span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #0765c8; color: #fff; font-weight: 900; }
.rb-home .rb-integration-grid h4 { margin: 8px 0 4px; color: #092e69; }
.rb-home .rb-integration-grid p { margin: 0; color: #536982; font-size: 13px; line-height: 1.4; }

.rb-home .rb-contact { margin: 24px 0; padding: 0; background: transparent; }
.rb-home .rb-contact::before { display: none; }
.rb-home .rb-contact-grid { position: relative; display: grid; grid-template-columns: 23% 34% 43%; align-items: stretch; gap: 0; min-height: 280px; padding: 5px; border: 3px solid #fff; border-radius: 23px; background: radial-gradient(circle at 48% 60%,#0874d0,#053375 72%); box-shadow: 0 16px 30px rgba(8,59,125,.17); overflow: hidden; }
.rb-home .rb-contact-photo { position: relative; min-width: 0; overflow: hidden; border-radius: 17px 0 0 17px; border-right: 6px solid #f9c455; }
.rb-home .rb-contact-photo > img:first-child { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: 55% center; }
.rb-home .rb-contact-photo .rb-contact-mark { position: absolute; top: 49%; left: 58%; width: 47px; height: 47px; object-fit: contain; opacity: .92; mix-blend-mode: multiply; transform: rotate(-4deg); }
.rb-home .rb-contact-copy { display: flex; flex-direction: column; justify-content: center; padding: 20px 19px 20px 25px; color: #fff; }
.rb-home .rb-contact h2 { font-size: clamp(29px,3vw,40px); margin: 0 0 14px; letter-spacing: -.03em; font-weight: 800; }
.rb-home .rb-contact-copy > p { color: #e8f3ff; font-size: 13px; line-height: 1.42; margin: 0; }
.rb-home .rb-whatsapp-link { align-self: flex-start; align-items: center; gap: 6px; margin-top: 14px; padding: 7px 9px; font-size: 11px; }
.rb-home .rb-whatsapp-link svg { width: 16px; height: 16px; }
.rb-home .rb-contact-form { display: flex; flex-direction: column; justify-content: center; gap: 7px; min-width: 0; margin: 0; padding: 16px 18px; border-radius: 18px; }
.rb-home .rb-contact-form .input-field { width: 100%; min-height: 30px; height: 31px; margin: 0; padding: 5px 10px; border: 1px solid #b7d4f1; border-radius: 7px; outline: none; background: #f8fbff; color: #173862; font-size: 12px; }
.rb-home .rb-contact-form textarea.input-field { height: 48px; min-height: 48px; resize: vertical; }
.rb-home .rb-contact-form .input-field:focus { border-color: #087dec; box-shadow: 0 0 0 3px rgba(8,125,236,.15); }
.rb-home .rb-contact-form .rb-btn-submit { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; margin: 0; padding: 7px 12px; border-radius: 9px; font-size: 13px; }
.rb-home .rb-contact-form .rb-btn-submit svg { width: 17px; height: 17px; }
.rb-home .cta-message { margin: 0; min-height: 0; font-size: 12px; line-height: 1.3; }
.rb-home .cta-message:empty { display: none; }
.rb-home .cta-message.success { color: #116545; }
.rb-home .cta-message.error { color: #a52a2a; }

.rb-home .rb-footer { padding: 27px 0 14px; border-top: 0; border-radius: 24px 24px 0 0; }
.rb-home .rb-footer-grid { grid-template-columns: 1.65fr .85fr 1.1fr .95fr; gap: 28px; }
.rb-home .rb-footer-brand-lockup { display: flex; align-items: center; gap: 8px; }
.rb-home .rb-footer-brand-lockup img { width: 53px; height: 53px; object-fit: contain; filter: grayscale(1) invert(1); mix-blend-mode: screen; }
.rb-home .rb-footer-brand-lockup span { display: flex; flex-direction: column; color: #fff; line-height: 1.1; }
.rb-home .rb-footer-brand-lockup strong { font-size: 19px; letter-spacing: .07em; }
.rb-home .rb-footer-brand-lockup small { font-size: 8px; letter-spacing: .24em; }
.rb-home .rb-footer-grid h3 { margin-bottom: 7px; }
.rb-home .rb-footer-grid a { display: flex; align-items: center; gap: 5px; padding: 2px 0; line-height: 1.2; }
.rb-home .rb-footer-grid a svg { width: 15px; height: 15px; color: #f5c769; }
.rb-home .rb-footer-grid p { margin: 5px 0 0; }
.rb-home .rb-footer-bottom { border-top: 2px solid #e8b448; margin-top: 22px; padding-top: 10px; }

@media (max-width: 1150px) {
  .rb-home .rb-brand { width: 224px; flex-basis: 224px; }
  .rb-home .rb-brand-wordmark strong { font-size: 22px; }
  .rb-home .rb-nav { gap: 13px; }
  .rb-home .rb-contact-grid { gap: 0; }
}
@media (max-width: 930px) {
  .rb-home .rb-header-inner { justify-content: space-between; }
  .rb-home .rb-brand::after { display: none; }
  .rb-home .rb-nav { gap: 7px; }
  .rb-home .rb-nav > a { font-size: 15px; }
  .rb-home .rb-hero-grid { grid-template-columns: 1fr; }
  .rb-home .rb-hero-copy { width: 100%; padding-top: 0; }
  .rb-home .rb-hero-visual { width: min(560px,95%); margin: 0 auto; }
  .rb-home .rb-partner { flex-basis: calc((100% - 12px)/2); }
  .rb-home .rb-contact-grid { grid-template-columns: 31% 69%; }
  .rb-home .rb-contact-photo { grid-row: 1/3; }
  .rb-home .rb-contact-copy { padding: 18px; }
  .rb-home .rb-contact-form { margin: 0 8px 8px; }
  .rb-home .rb-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 650px) {
  .rb-home .rb-container { width: calc(100% - 28px); }
  .rb-home .rb-header-inner { min-height: 70px; }
  .rb-home .rb-brand { width: 190px; flex-basis: 190px; }
  .rb-home .rb-brand-wordmark strong { font-size: 17px; }
  .rb-home .rb-hero { padding: 33px 0 47px; }
  .rb-home .rb-hero h1 { font-size: clamp(32px,9vw,43px); }
  .rb-home .rb-hero-copy > p { font-size: 16px; }
  .rb-home .rb-dashboard { height: 207px; }
  .rb-home .rb-dash-side { width: 42px; gap: 8px; padding: 9px 5px; }
  .rb-home .rb-dash-side img { width: 25px; height: 25px; }
  .rb-home .rb-dash-side svg { width: 13px; height: 13px; }
  .rb-home .rb-dash-content { padding: 9px 8px; }
  .rb-home .rb-dash-cards { gap: 4px; }
  .rb-home .rb-dash-stat b { font-size: 8px; }
  .rb-home .rb-dash-charts { height: 92px; }
  .rb-home .rb-three-cols,.rb-home .rb-four-cols { grid-template-columns: 1fr; }
  .rb-home .rb-solution-card { min-height: 164px; }
  .rb-home .rb-solution-detail { grid-template-columns: 1fr; }
  .rb-home .rb-partner { flex-basis: 77%; }
  .rb-home .rb-service-card { min-height: 145px; }
  .rb-home .rb-integration-grid { grid-template-columns: 1fr 1fr; }
  .rb-home .rb-contact-grid { grid-template-columns: 1fr; }
  .rb-home .rb-contact-photo { grid-row: auto; height: 190px; border-right: 0; border-bottom: 5px solid #f9c455; border-radius: 17px 17px 0 0; }
  .rb-home .rb-contact-copy { text-align: left; padding: 25px 20px; }
  .rb-home .rb-contact-copy > p { margin: 0; }
  .rb-home .rb-contact-form { margin: 0 8px 8px; padding: 17px; }
  .rb-home .rb-contact-form .input-field { min-height: 44px; height: 44px; font-size: 16px; }
  .rb-home .rb-contact-form textarea.input-field { min-height: 85px; height: 85px; }
  .rb-home .rb-contact-form .rb-btn-submit { min-height: 48px; }
}
@media (max-width: 410px) {
  .rb-home .rb-footer-grid { grid-template-columns: 1fr 1fr; }
  .rb-home .rb-integration-grid { grid-template-columns: 1fr; }
  .rb-home .rb-partner { flex-basis: 85%; }
}

/* Marcas parceiras: logos maiores e movimento contínuo da versão anterior. */
.rb-home .rb-partners { padding: 20px 0 36px; }
.rb-home .rb-partners .rb-section-heading { margin-bottom: 18px; }
.rb-home .rb-partners-viewport {
  max-width: 100%;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
}
.rb-home .rb-partners-viewport:focus-visible { outline: 3px solid #0878e8; outline-offset: 4px; }
.rb-home .rb-partners-grid {
  display: flex;
  width: max-content;
  gap: 14px;
  overflow: visible;
  scroll-snap-type: none;
  padding: 6px 0 14px;
}
.rb-home .rb-partners-grid[data-duplicated="true"] { animation: rb-partner-rail 40s linear infinite paused; }
.rb-home .rb-partners-grid.is-in-view { animation-play-state: running; }
.rb-home .rb-partners-viewport:hover .rb-partners-grid,
.rb-home .rb-partners-viewport:focus-within .rb-partners-grid { animation-play-state: paused; }
.rb-home .rb-partner {
  display: grid;
  flex: 0 0 270px;
  width: 270px;
  grid-template-columns: 1fr;
  grid-template-rows: 112px auto auto;
  justify-items: center;
  align-content: center;
  min-height: 180px;
  padding: 13px 15px;
  scroll-snap-align: none;
  text-align: center;
}
.rb-home .rb-partner img {
  grid-column: 1;
  grid-row: 1;
  width: 190px;
  height: 108px;
  object-fit: contain;
}
.rb-home .rb-partner strong {
  grid-column: 1;
  grid-row: 2;
  align-self: center;
  font-size: 16.5px;
  line-height: 1.2;
}
.rb-home .rb-partner small {
  grid-column: 1;
  grid-row: 3;
  align-self: center;
  margin-top: 3px;
  font-size: 10px;
}
@keyframes rb-partner-rail {
  to { transform: translate3d(calc(-50% - 7px), 0, 0); }
}
@media (max-width: 650px) {
  .rb-home .rb-partner { flex-basis: 250px; width: 250px; }
  .rb-home .rb-partner img { width: 185px; }
}
@media (prefers-reduced-motion: reduce) {
  .rb-home .rb-partners-grid[data-duplicated="true"] { animation: rb-partner-rail 80s linear infinite paused !important; }
  .rb-home .rb-partners-grid[data-duplicated="true"].is-in-view { animation-play-state: running !important; }
  .rb-home .rb-partners-viewport:hover .rb-partners-grid,
  .rb-home .rb-partners-viewport:focus-within .rb-partners-grid { animation-play-state: paused !important; }
}
