:root{
  --bg:        #060a18;
  --bg-2:      #0b1226;
  --surface:   rgba(255,255,255,0.035);
  --surface-2: rgba(255,255,255,0.06);
  --line:      rgba(255,255,255,0.07);
  --line-2:    rgba(255,255,255,0.12);
  --text:      #e8ecf8;
  --muted:     #8a93b3;
  --dim:       #5e6789;

  --blue:      #2767de;
  --blue-2:    #5e8be8;
  --blue-soft: rgba(39,103,222,0.16);
  --navy:      #0c1a34;
  --gold:      #c9d4ff;

  --r-sm: 10px;
  --r-md: 16px;
  --r-lg: 22px;

  --maxw: 1200px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:"Manrope", system-ui, sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body{
  background:
    radial-gradient(1200px 600px at 80% -100px, rgba(39,103,222,0.18), transparent 60%),
    radial-gradient(900px 700px at -10% 30%, rgba(39,103,222,0.10), transparent 60%),
    var(--bg);
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:
    linear-gradient(to right, rgba(255,255,255,0.035) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,0.035) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(ellipse at center, black 30%, transparent 80%);
}
body::after{content:none}
main,header,footer{position:relative;z-index:1}

/* Type */
h1,h2,h3,h4{font-family:"Space Grotesk", "Manrope", sans-serif;font-weight:600;letter-spacing:-0.01em;margin:0;color:var(--text)}
h1{font-size:clamp(36px, 4vw, 56px);line-height:1.02;letter-spacing:-0.025em;font-weight:600}
h2{font-size:clamp(32px, 3.8vw, 54px);line-height:1.04;letter-spacing:-0.02em}
h3{font-size:22px;line-height:1.2}
p{margin:0;color:var(--muted);line-height:1.55}
.kicker{
  font-family:"Space Grotesk", sans-serif;
  font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--blue-2);
  display:inline-flex;align-items:center;gap:10px;
}
.kicker::before{content:"";width:24px;height:1px;background:var(--blue-2);display:inline-block}
.accent{color:var(--blue-2);font-weight:600}
.gradient-text{
  background:linear-gradient(95deg, #ffffff 0%, #b4c1ff 60%, #6e87ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

/* Layout */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
section{padding:120px 0;position:relative}
section.tight{padding:80px 0}
.eyebrow-row{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:28px;flex-wrap:wrap}

/* Nav */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:50;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  background:rgba(8,12,28,0.55);
  border-bottom:1px solid var(--line);
  transition:background .25s ease;
}
.nav-inner{max-width:var(--maxw);margin:0 auto;padding:28px 28px;display:flex;align-items:center;justify-content:space-between;gap:28px;position:relative}
.nav-inner .right{justify-self:end}
.logo{display:inline-flex;align-items:center;gap:10px;color:white;text-decoration:none;font-family:"Space Grotesk", sans-serif;font-weight:700;font-size:18px;letter-spacing:.04em}
.logo img{height:64px;width:auto;display:block}
.nav ul{list-style:none;padding:0;margin:0;display:flex;align-items:center;flex-wrap:nowrap;gap:18px;font-size:14px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap}
.nav ul li{display:flex;align-items:center}
.nav ul li a{color:var(--muted);text-decoration:none;display:flex;align-items:center;gap:6px;white-space:nowrap;transition:color .2s}
.nav ul li a:hover{color:var(--text)}
.nav ul li a.active{color:var(--text)}
html{scroll-behavior:smooth}
section[id]{scroll-margin-top:96px}
.nav .right{display:flex;align-items:center;gap:14px}
.nav .btn-ghost{font-size:14px;color:var(--text);text-decoration:none;opacity:.85}
.nav-access{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--muted);text-decoration:none;
  font-size:14px;font-weight:400;letter-spacing:.01em;
  line-height:1;
  padding:0;margin:0;
  opacity:.7;
  transition:color .2s ease, opacity .2s ease;
  white-space:nowrap;
}
.nav-access:hover{color:var(--text);opacity:1}
.nav-access svg{width:13px;height:13px;opacity:.55;display:block;transition:transform .2s ease, opacity .2s ease}
.nav-access:hover svg{transform:translateX(2px);opacity:.9}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 22px;border-radius:99px;
  font-family:"Manrope", sans-serif;font-size:15px;font-weight:600;
  text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:transform .2s, background .2s, border-color .2s, color .2s;
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--blue);color:white;box-shadow:0 12px 28px -10px rgba(58,91,255,0.55), inset 0 1px 0 rgba(255,255,255,.18)}
.btn-primary:hover{background:#4a6bff}
.btn-sm{padding:11px 18px;font-size:14px;gap:9px}
.btn-sm .arr{width:22px;height:22px}
.btn-sm .arr svg{width:11px;height:11px}
.btn-ghost-line{background:transparent;color:var(--text);border-color:var(--line-2)}
.btn-ghost-line:hover{border-color:rgba(255,255,255,0.3)}
.btn .arr{
  width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.18);display:inline-flex;align-items:center;justify-content:center;
}
.btn-primary .arr{background:rgba(255,255,255,.22)}
.btn .arr svg{width:13px;height:13px;color:white}
.pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 12px;border-radius:99px;
  background:var(--surface);border:1px solid var(--line);
  font-size:12px;color:var(--muted);font-family:"Space Grotesk", sans-serif;letter-spacing:.06em;
}
.pill.dot::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue-2);box-shadow:0 0 12px var(--blue-2)}

/* Hero */
.hero{padding:170px 0 80px;position:relative;min-height:92vh;display:flex;align-items:center}
.hero::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.43) 0%, rgba(7,12,26,0.26) 35%, transparent 60%), linear-gradient(90deg, transparent 40%, rgba(7,12,26,0.19) 65%, rgba(7,12,26,0.32) 100%), linear-gradient(90deg, rgba(7,12,26,0.90) 0%, rgba(7,12,26,0.70) 25%, rgba(7,12,26,0.60) 50%, rgba(7,12,26,0.70) 75%, rgba(7,12,26,0.83) 100%), url('hero-bg.jpg');
  background-size:cover, cover, cover, cover;
  background-position:center, center, center, calc(50% - 5px) center;
  background-repeat:no-repeat, no-repeat, no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.hero > *{position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:100px;align-items:center}
.hero h1{white-space:normal}
.hero h1 .lite{color:rgba(255,255,255,.42);font-weight:300}
.hero h1 .glow{color:var(--blue-2)}
.hero .lede{margin-top:26px;max-width:520px;font-size:17px;color:#aab1ce}
.hero-cta-row{display:flex;align-items:center;gap:14px;margin-top:34px;flex-wrap:wrap}

.ghost-headline{
  position:absolute;right:-30px;top:90px;font-family:"Space Grotesk", sans-serif;font-weight:700;
  font-size:260px;line-height:1;letter-spacing:-0.04em;
  color:transparent;-webkit-text-stroke:1px rgba(255,255,255,0.07);
  pointer-events:none;user-select:none;z-index:0;
  white-space:nowrap;
}

.hero-stage{position:relative;height:560px}
.hero-stage svg.lines{position:absolute;inset:0;width:100%;height:100%;opacity:.55}

/* Coin stage (logo with orbiting icons) */
#coin-stage{
  position:relative;
  width:480px;height:480px;
  margin:0 auto;
  transform:translateX(35px);
  pointer-events:none;
  z-index:1;
}
.coin-lines{
  position:absolute;
  inset:0%;
  z-index:0;
  pointer-events:none;
  opacity:.9;
  animation:linesRotate 90s linear infinite;
}
@keyframes linesRotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.coin{
  position:absolute;inset:0;
  transform-style:preserve-3d;
  animation:coinFloat 8s ease-in-out infinite;
}
.coin img{
  width:100%;height:100%;
  display:block;
  object-fit:contain;
  animation:coinWobble 6s ease-in-out infinite;
  transform-origin:center;
}
@keyframes coinFloat{
  0%,100%{transform:translateY(0)}
  50%    {transform:translateY(-14px)}
}
@keyframes coinWobble{
  0%   {transform:rotateZ(-6deg) rotateX(0deg)}
  50%  {transform:rotateZ( 6deg) rotateX(6deg)}
  100% {transform:rotateZ(-6deg) rotateX(0deg)}
}

/* Privacy modal */
.modal-scrim{
  position:fixed;inset:0;background:rgba(0,0,0,0.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  z-index:90;opacity:0;pointer-events:none;
  transition:opacity .3s ease;
}
.modal-scrim.open{opacity:1;pointer-events:auto}
.modal{
  position:fixed;top:50%;left:50%;
  transform:translate(-50%,-50%) scale(.95);
  width:calc(100% - 32px);max-width:820px;max-height:88vh;
  background:#0c1a34;
  border:1px solid rgba(255,255,255,0.10);
  border-radius:18px;
  z-index:100;opacity:0;pointer-events:none;
  transition:opacity .35s ease, transform .35s cubic-bezier(.2,.7,.2,1);
  display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 30px 80px -20px rgba(0,0,0,.6);
}
.modal.open{opacity:1;transform:translate(-50%,-50%) scale(1);pointer-events:auto}
.modal-close{
  position:absolute;top:14px;right:14px;z-index:2;
  width:36px;height:36px;border-radius:50%;
  border:1px solid rgba(255,255,255,0.16);background:rgba(255,255,255,0.05);
  color:#cdd2e8;font-size:20px;cursor:pointer;line-height:0;
  display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s;
}
.modal-close:hover{background:rgba(255,255,255,0.12);color:white}
.modal-content{
  overflow-y:auto;padding:40px 44px 36px;
  color:#c3cae0;font-size:14px;line-height:1.65;
}
.modal-content::-webkit-scrollbar{width:8px}
.modal-content::-webkit-scrollbar-track{background:transparent}
.modal-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.10);border-radius:4px}
.modal-content h2{
  color:white;font-family:"Space Grotesk",sans-serif;font-weight:600;
  font-size:26px;margin:0 0 8px;letter-spacing:-0.01em;
}
.modal-content .lede{color:#cdd2e8;font-size:15px;margin:0 0 22px}
.modal-content h3{
  color:white;font-family:"Space Grotesk",sans-serif;font-weight:600;
  font-size:17px;margin:24px 0 8px;letter-spacing:-0.005em;
}
.modal-content p{margin:0 0 12px;color:inherit}
.modal-content ul{padding-left:20px;margin:8px 0 12px}
.modal-content li{margin:6px 0;color:inherit}
.modal-content strong{color:#e8ecf8}
body.modal-open{overflow:hidden}
@media (max-width: 720px){
  .modal-content{padding:32px 24px 24px}
}

/* Light sections */
section.section-light{
  background:#f3f6fc;
  color:#0c1a34;
}
section.section-light .kicker{color:#2767de}
section.section-light h2, section.section-light h3, section.section-light h4{color:#0c1a34}
section.section-light p, section.section-light small{color:#43507a}
section.section-light .accent{color:#2767de}
section.section-light .gradient-text{
  background:linear-gradient(95deg, #0c1a34 0%, #2767de 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
section.section-light .ncard{
  background:linear-gradient(180deg, rgba(39,103,222,0.04), rgba(39,103,222,0.01));
  border-color:rgba(39,103,222,0.18);
}
section.section-light .ncard .num{color:#2767de}
section.section-light .ncard h3{color:#0c1a34}
section.section-light .ncard p{color:#43507a}
section.section-light .ncard .read{color:#2767de}
section.section-light .ncard:hover{
  border-color:rgba(39,103,222,0.55);
  box-shadow:0 30px 80px -30px rgba(39,103,222,0.35);
}
section.section-light .ncard:hover .num,
section.section-light .ncard:hover .read{color:#2767de}
section.section-light .re-card{
  background:#ffffff;
  border-color:rgba(39,103,222,0.16);
  box-shadow:0 4px 16px -8px rgba(12,26,52,0.10);
}
section.section-light .re-card:hover{
  border-color:rgba(39,103,222,0.35);
  box-shadow:0 12px 30px -10px rgba(12,26,52,0.18);
}
section.section-light .re-card h4{color:#0c1a34}
section.section-light .re-card small{color:#43507a}
section.section-light .re-card .ico{
  background:rgba(39,103,222,0.10);
  border-color:rgba(39,103,222,0.28);
  color:#2767de;
}
section.section-light .ghost-headline{
  color:transparent;-webkit-text-stroke:1px rgba(12,26,52,0.10);
}
section.section-light .btn-ghost-line{
  color:#0c1a34;border-color:rgba(12,26,52,0.20);
}
section.section-light .btn-ghost-line:hover{
  border-color:rgba(12,26,52,0.45);
}
section.section-light .cta-wrap{
  background:
    radial-gradient(circle at 50% 0%, rgba(39,103,222,0.18), transparent 60%),
    linear-gradient(180deg, rgba(39,103,222,0.08), rgba(39,103,222,0.02));
  border-color:rgba(39,103,222,0.30);
}
section.section-light .cta-wrap h2{color:#0c1a34}
section.section-light .cta-wrap p{color:#43507a}
section.section-light .pill{
  background:rgba(39,103,222,0.06);
  border-color:rgba(39,103,222,0.25);
  color:#2767de;
}

/* Trust strip — 4 itens uniformes com ícone */
.trust{padding:50px 0 40px;background:#f3f6fc}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;align-items:start;justify-items:center;text-align:center}
.trust .ti{display:flex;flex-direction:column;gap:14px;align-items:center;max-width:240px}
.trust .ti .ico-wrap{
  width:58px;height:58px;border-radius:16px;
  background:rgba(39,103,222,0.10);border:1px solid rgba(39,103,222,0.28);
  display:flex;align-items:center;justify-content:center;color:#2767de;
}
.trust .ti .ico-wrap svg{width:26px;height:26px}
.trust .ti b{
  font-family:"Space Grotesk", sans-serif;font-size:30px;font-weight:600;
  color:#0c1a34;letter-spacing:-0.015em;line-height:1.1;white-space:nowrap;
}
.trust .ti.num b{color:#2767de;font-size:42px;letter-spacing:-0.025em;font-variant-numeric:tabular-nums}
.trust .ti small{color:#43507a;font-size:13.5px;letter-spacing:.01em;line-height:1.4}

/* Orbit (logo + icons) */
.orbit-stage{
  position:absolute;inset:0;
  perspective:800px;
  transform-style:preserve-3d;
}
.orbit-logo{
  position:absolute;left:50%;top:50%;
  width:230px;height:auto;
  transform:translate(-50%,-50%);
  z-index:10;
  filter:drop-shadow(0 14px 30px rgba(39,103,222,0.45));
}
.orbit-icon{
  position:absolute;left:50%;top:50%;
  width:90px;height:90px;
  margin-left:-45px;margin-top:-45px;
  background:transparent;border:none;box-shadow:none;
  display:flex;align-items:center;justify-content:center;
  color:#cdd6ff;will-change:transform, opacity;
}
.orbit-icon svg{
  width:58px;height:58px;color:#2767de;
  filter:drop-shadow(0 4px 10px rgba(39,103,222,0.55)) drop-shadow(0 0 18px rgba(39,103,222,0.25));
}
.orbit-icon-img img{
  width:58px;height:58px;object-fit:contain;display:block;
  filter:drop-shadow(0 4px 10px rgba(39,103,222,0.55)) drop-shadow(0 0 18px rgba(39,103,222,0.25));
}

/* Numbered cards */
.cards-row{display:grid;grid-template-columns:repeat(3, 1fr);gap:22px}
.analista-img{margin:8px 0 30px;border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(39,103,222,0.18);box-shadow:0 14px 40px -18px rgba(12,26,52,0.18);aspect-ratio:21/7}
.analista-img img{width:100%;height:100%;object-fit:cover;display:block}
.bridge-section{padding:30px 0 0}
.bridge-img{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);box-shadow:0 14px 40px -18px rgba(0,0,0,0.5);aspect-ratio:18/7}
section.section-light .bridge-img{border-color:rgba(39,103,222,0.18);box-shadow:0 14px 40px -18px rgba(12,26,52,0.18)}
.bridge-img img{width:100%;height:100%;object-fit:cover;display:block}
/* Conta Digital promo (home) */
.conta-promo{display:grid;grid-template-columns:1.05fr 1fr;gap:0 48px;align-items:center;grid-template-areas:"intro visual" "rest visual"}
.conta-promo .cp-intro{grid-area:intro}
.conta-promo .cp-rest{grid-area:rest}
.conta-promo .cp-visual{grid-area:visual}
@media (max-width:980px){
  .conta-promo{grid-template-columns:1fr;grid-template-areas:"intro" "rest";gap:0;padding:30px 22px !important}
  .conta-promo .cp-visual{display:none}
  .conta-promo .cp-rest li{font-size:13px !important;line-height:1.45}
  #sec-services{padding-top:32px !important}
}
.ncard{
  position:relative;
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:36px 28px 32px;
  background:linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.005));
  min-height:280px;display:flex;flex-direction:column;gap:14px;
  transition:transform .6s cubic-bezier(.2,.7,.2,1), border-color 1.4s ease, box-shadow 1.1s ease;
  overflow:hidden;
  isolation:isolate;
}
.ncard::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg, rgba(58,91,255,0.22), rgba(58,91,255,0.06));
  opacity:0;transition:opacity 1.1s ease;pointer-events:none;
}
.ncard::after{
  content:"";position:absolute;inset:auto -40% -60% auto;width:240px;height:240px;border-radius:50%;
  background:radial-gradient(circle, rgba(58,91,255,0.6), transparent 65%);
  filter:blur(20px);opacity:0;transition:opacity 1.2s ease;pointer-events:none;
}
.ncard:hover{
  transform:translateY(-4px);
  border-color:rgba(58,91,255,0.55);
  box-shadow:0 30px 80px -30px rgba(58,91,255,0.45);
}
.ncard:hover::before{opacity:1}
.ncard:hover::after{opacity:1}
.ncard:hover .num{color:white}
.ncard:hover .read{color:white}
.ncard .num{font-family:"Space Grotesk", sans-serif;font-size:22px;font-weight:500;color:var(--blue-2);transition:color 1.1s ease}
.ncard .read{transition:color 1.1s ease}
.ncard h3{font-size:24px}
.ncard p{font-size:14px;color:#aab1ce}
.ncard .read{
  margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:var(--blue-2);font-size:14px;text-decoration:none;font-weight:600;
}

/* Audience badge (PJ / PF) */
.aud-badge{
  display:inline-flex;align-items:center;
  padding:4px 10px;border-radius:99px;
  font-family:"Space Grotesk",sans-serif;font-size:11px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;
  margin-bottom:10px;
}
.aud-badge.pj{background:rgba(58,91,255,0.15);color:#5e8be8;border:1px solid rgba(58,91,255,0.35)}
.aud-badge.pf{background:rgba(125,208,169,0.12);color:#7dd0a9;border:1px solid rgba(125,208,169,0.35)}
.aud-badge.pjpf{background:rgba(255,255,255,0.06);color:#cdd2e8;border:1px solid var(--line-2)}
section.section-light .aud-badge.pj{background:rgba(58,91,255,0.10);color:#2767de;border-color:rgba(58,91,255,0.35)}
section.section-light .aud-badge.pf{background:rgba(31,138,91,0.10);color:#1f8a5b;border-color:rgba(31,138,91,0.35)}
section.section-light .aud-badge.pjpf{background:rgba(12,26,52,0.06);color:#0c1a34;border-color:rgba(12,26,52,0.15)}

/* 4-card credit grid (PJ + PF mixed) */
.credit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.credit-grid .pcard{min-height:380px;padding:32px}
.credit-grid .pcard h2{font-size:28px;line-height:1.15}
.credit-grid .pcard p{margin-top:10px;font-size:14.5px}
.credit-grid .pcard .feat-list{margin-top:18px}
@media (max-width:980px){.credit-grid{grid-template-columns:1fr}}

/* Two-up product section */
.two-up{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}
.pcard{
  position:relative;
  border:1px solid var(--line);border-radius:var(--r-lg);
  padding:40px;overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0));
  min-height:460px;display:flex;flex-direction:column;
}
.pcard.dark, .pcard.tinted{background:linear-gradient(160deg, rgba(58,91,255,0.18), rgba(58,91,255,0.02) 70%);border-color:rgba(58,91,255,0.3)}
.modalidades-bg .pcard.tinted{background:linear-gradient(160deg, rgba(58,91,255,0.22), rgba(20,28,52,0.55) 70%), rgba(9,14,30,0.78);border-color:rgba(58,91,255,0.4)}
.pcard .kicker{margin-bottom:14px}
.pcard h2{font-size:38px;letter-spacing:-0.02em}
.pcard p{margin-top:14px;max-width:420px}
.pcard .feat-list{margin-top:22px;display:flex;flex-direction:column;gap:10px}
.pcard .feat-list .item{display:flex;align-items:center;gap:10px;font-size:14px;color:#cdd2e8}
.pcard .feat-list .item svg{width:16px;height:16px;color:#2767de;flex-shrink:0}
.pcard .actions{margin-top:auto;padding-top:30px;display:flex;gap:12px;flex-wrap:wrap}

/* Real estate grid */
.re-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.re-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.re-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.re-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);
  padding:24px 22px;display:flex;flex-direction:column;gap:10px;min-height:200px;
  transition:transform .3s, border-color .3s;
}
.re-card:hover{transform:translateY(-3px);border-color:var(--line-2)}
.re-card .ico{
  width:42px;height:42px;border-radius:10px;background:var(--blue-soft);border:1px solid rgba(58,91,255,0.32);
  display:flex;align-items:center;justify-content:center;color:#2767de;
}
.re-card .ico svg{width:20px;height:20px}
.re-card .ico img{width:18px;height:18px;object-fit:contain;display:block}
.re-card h4{font-size:17px;letter-spacing:-0.01em}
.re-card small{color:var(--muted);font-size:13px;line-height:1.5;margin-top:auto}

/* Insurance */
.ins-wrap{
  border:1px solid var(--line);border-radius:var(--r-lg);
  padding:50px;
  background:
    radial-gradient(600px 400px at 90% 10%, rgba(58,91,255,0.18), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.005)),
    #060a18;
  overflow:hidden;position:relative;
}
.ins-row{display:grid;grid-template-columns:1fr;gap:30px;align-items:center}
.ins-tags{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
.ins-marquees{margin:24px -50px 0;display:flex;flex-direction:column;gap:14px;min-width:0;width:auto}
.marquee{overflow:hidden;width:100%;position:relative;cursor:grab;touch-action:pan-y}
.marquee.dragging{cursor:grabbing;user-select:none}
.marquee-track{display:flex;gap:14px;width:max-content;will-change:transform}
.marquee .ins-tag{min-width:300px;flex-shrink:0}
.ins-tag{
  border:1px solid var(--line);border-radius:14px;padding:14px;
  background:rgba(255,255,255,0.025);
  display:flex;align-items:center;gap:12px;font-size:14px;
}
.ins-tag .ico{width:36px;height:36px;border-radius:8px;background:var(--blue-soft);display:flex;align-items:center;justify-content:center;color:#2767de}
.ins-tag .ico svg{width:18px;height:18px}
.ins-tag .ico img{width:18px;height:18px;object-fit:contain;display:block}
.ins-tag b{color:white;display:block;font-weight:600;font-size:14px}
.ins-tag small{color:var(--muted);font-size:12px;display:block;margin-top:2px}

/* CTA */
#sec-cta{padding:16px 0 120px}
.cta-banner{
  border:1px solid rgba(58,91,255,0.4);
  border-bottom:none;
  border-radius:var(--r-lg) var(--r-lg) 0 0;
  overflow:hidden;aspect-ratio:19.5/7;
  margin-bottom:0;
}
.cta-banner img{width:100%;height:100%;object-fit:cover;display:block}
.cta-wrap-attached{border-radius:0 0 var(--r-lg) var(--r-lg) !important;border-top:none !important;margin-top:0 !important}
section.section-light .cta-banner{border-color:rgba(39,103,222,0.30)}
.cta-wrap{
  border:1px solid rgba(58,91,255,0.4);border-radius:var(--r-lg);
  padding:42px 60px;text-align:center;
  background:
    radial-gradient(circle at 50% 0%, rgba(58,91,255,0.4), transparent 60%),
    linear-gradient(180deg, rgba(58,91,255,0.18), rgba(58,91,255,0.03));
  position:relative;overflow:hidden;
}
.cta-wrap h2{font-size:46px;letter-spacing:-0.02em}
.cta-wrap p{margin:14px auto 28px;max-width:520px}
.cta-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* Footer */
footer{border-top:1px solid var(--line);padding:80px 0 30px;background:rgba(0,0,0,0.25)}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px}
footer h5{font-family:"Space Grotesk", sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 16px;font-weight:500}
footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
footer ul li{color:#cdd2e8;font-size:14px;cursor:pointer;transition:color .2s}
footer ul li a{color:inherit;text-decoration:none;transition:color .2s}
footer ul li a:hover{color:white}
footer .brand-block .logo{margin-bottom:18px}
footer .brand-block p{font-size:14px;max-width:300px;margin-top:18px}
.foot-tech{margin-top:22px;display:flex;flex-direction:column;gap:8px}
.foot-tech .tech-label{font-family:"Space Grotesk",sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.foot-tech .tech-row{display:flex;flex-wrap:wrap;gap:8px}
.foot-tech .tech-badge{
  display:inline-flex;align-items:center;padding:6px 12px;border-radius:99px;
  background:rgba(39,103,222,0.10);border:1px solid rgba(39,103,222,0.30);
  font-size:12px;color:#cdd2e8;font-family:"Space Grotesk",sans-serif;letter-spacing:.04em;
}
.foot-address-link{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none;transition:color .2s}
.foot-address-link span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.foot-address-link:hover{color:#ffffff}
.foot-address-link svg{width:15px;height:15px;color:#2767de;flex-shrink:0;transition:color .2s}
.foot-address-link:hover svg{color:#5e8be8}
.contact-list li{margin:0}
.contact-list li a, .contact-list li .contact-static{
  display:inline-flex;align-items:center;gap:8px;
  color:#cdd2e8;text-decoration:none;
  font-size:14px;transition:color .2s;
}
.contact-list li a:hover{color:#ffffff}
.contact-list li a:hover svg{color:#5e8be8}
.contact-list li svg{width:15px;height:15px;color:#2767de;flex-shrink:0;transition:color .2s}
.foot-address{margin-top:18px;display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.55;color:#aab1ce;max-width:320px;text-decoration:none;transition:color .2s}
.foot-address:hover{color:#cdd2e8}
.foot-address:hover .pin{color:#5e8be8}
.foot-address:hover b{color:#ffffff}
.foot-address .pin{width:16px;height:16px;color:#2767de;flex-shrink:0;margin-top:2px;transition:color .2s}
.foot-address b{display:block;color:#e8ecf8;font-weight:600;font-size:13.5px;margin-bottom:3px;transition:color .2s}
.foot-address span{display:block}
.foot-bot{margin-top:60px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;color:var(--dim);font-size:13px;flex-wrap:wrap;gap:14px}
.socials{display:flex;gap:10px}
.socials a{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);text-decoration:none;transition:color .2s, border-color .2s}
.socials a:hover{color:var(--blue-2);border-color:var(--blue-2)}
.socials svg{width:16px;height:16px}

/* Hamburger + mobile menu */
.hamb{
  display:none;
  width:42px;height:42px;border-radius:10px;
  background:transparent;border:1px solid var(--line-2);
  align-items:center;justify-content:center;color:var(--text);
  cursor:pointer;padding:0;
}
.hamb svg{width:20px;height:20px}
.mobile-menu{
  display:none;
  position:fixed;top:0;right:0;bottom:0;width:78%;max-width:320px;
  background:#070b1c;border-left:1px solid var(--line-2);
  z-index:60;padding:90px 28px 28px;
  transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.7,.2,1);
  box-shadow:-20px 0 60px rgba(0,0,0,.5);
}
.mobile-menu.open{transform:translateX(0)}
.mobile-menu-close{
  position:absolute;top:24px;right:24px;
  width:42px;height:42px;border-radius:10px;
  display:inline-flex;align-items:center;justify-content:center;
  background:transparent;border:1px solid var(--line-2);
  color:var(--text);cursor:pointer;padding:0;
  transition:background .2s ease,border-color .2s ease;
}
.mobile-menu-close:hover{background:rgba(255,255,255,.06)}
.mobile-menu-close svg{width:20px;height:20px}
.mobile-menu ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:18px}
.mobile-menu ul li a{color:var(--text);text-decoration:none;font-size:18px;display:block;padding:8px 0;border-bottom:1px solid var(--line)}
.mobile-scrim{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.55);z-index:55;opacity:0;pointer-events:none;transition:opacity .3s}
.mobile-scrim.open{opacity:1;pointer-events:auto}
body.menu-open{overflow:hidden}

/* Reveal on scroll */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal[data-reveal="left"] {transform:translateX(-40px)}
.reveal[data-reveal="right"]{transform:translateX( 40px)}
.reveal[data-reveal="scale"]{transform:scale(0.92)}
.reveal[data-reveal="fade"] {transform:none}
.reveal.in{opacity:1;transform:none}

/* ============================
   Landing page specific components
   ============================ */

/* Page header (sub-page hero shorter) */
.subhero{padding:230px 0 130px;position:relative;min-height:838px}
.subhero-pj-bg::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.95) 0%, rgba(7,12,26,0.86) 38%, rgba(7,12,26,0.62) 62%, rgba(7,12,26,0.55) 100%), url('pj-bg.jpg');
  background-size:cover, cover;
  background-position:center, center top;
  background-repeat:no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.subhero-pj-bg > *{position:relative;z-index:1}
.subhero-imob-bg::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.95) 0%, rgba(7,12,26,0.86) 38%, rgba(7,12,26,0.62) 62%, rgba(7,12,26,0.55) 100%), url('imob-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.subhero-imob-bg > *{position:relative;z-index:1}
.subhero-veic-bg::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.95) 0%, rgba(7,12,26,0.86) 38%, rgba(7,12,26,0.52) 64%, rgba(7,12,26,0.45) 100%), url('veic-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.subhero-veic-bg > *{position:relative;z-index:1}
.subhero-cons-bg::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.95) 0%, rgba(7,12,26,0.86) 38%, rgba(7,12,26,0.62) 62%, rgba(7,12,26,0.55) 100%), url('cons-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.subhero-cons-bg > *{position:relative;z-index:1}
.subhero-seg-bg::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.95) 0%, rgba(7,12,26,0.86) 38%, rgba(7,12,26,0.62) 62%, rgba(7,12,26,0.55) 100%), url('seg-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.subhero-seg-bg > *{position:relative;z-index:1}
.subhero-conta-bg::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.92) 0%, rgba(7,12,26,0.74) 34%, rgba(7,12,26,0.50) 60%, rgba(7,12,26,0.55) 100%), url('conta-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.subhero-conta-bg > *{position:relative;z-index:1}
.subhero-pf-bg::before{
  content:"";position:absolute;left:0;right:0;bottom:0;top:120px;
  background-image:linear-gradient(90deg, rgba(7,12,26,0.95) 0%, rgba(7,12,26,0.86) 38%, rgba(7,12,26,0.67) 62%, rgba(7,12,26,0.60) 100%), url('pf-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
  pointer-events:none;z-index:0;
}
.subhero-pf-bg > *{position:relative;z-index:1}
.subhero .breadcrumb{font-size:13px;color:var(--muted);margin-bottom:18px;display:flex;align-items:center;gap:8px}
.subhero .breadcrumb a{color:var(--muted);text-decoration:none;transition:color .2s}
.subhero .breadcrumb a:hover{color:var(--text)}
.subhero .breadcrumb svg{width:12px;height:12px;opacity:.6}
.subhero h1{font-size:clamp(34px,3.6vw,52px);line-height:1.05;white-space:normal;max-width:760px}
.subhero h1 .glow{color:var(--blue-2)}
.subhero .lede{margin-top:22px;max-width:580px;font-size:17px;color:#aab1ce}
.subhero-cta-row{display:flex;align-items:center;gap:14px;margin-top:32px;flex-wrap:wrap}
.subhero-art{
  position:absolute;
  right:max(28px, calc((100% - var(--maxw)) / 2 + 28px));
  top:50%;
  transform:translateY(calc(-50% + 55px));
  width:min(28%, 340px);
  pointer-events:none;
  z-index:0;
}
.subhero-art .subhero-art-img{
  width:100%;height:auto;display:block;
  filter:drop-shadow(0 26px 60px rgba(39,103,222,0.45));
  position:relative;z-index:2;
  animation:predioFloat 5s ease-in-out infinite;
}
@keyframes predioFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-14px)}
}
.subhero-art .coin-lines-pj{
  position:absolute;inset:-25%;width:150%;height:150%;
  pointer-events:none;z-index:1;opacity:.9;
  animation:linesRotate 90s linear infinite;
}
/* Moeda flutuante acima da carteira (Crédito PF) */
.subhero-art-pf{width:min(24%, 300px)}
.subhero-art-pf .coin-lines-pj{top:-37%;left:-35%;width:170%;height:170%}
.subhero-art-pf .subhero-art-img{filter:drop-shadow(0 26px 60px rgba(39,103,222,0.45));animation:walletFloatPf 5s ease-in-out infinite}
@keyframes walletFloatPf{
  0%,100%{transform:translateY(12px)}
  50%{transform:translateY(-2px)}
}
.subhero-art-pf .coin-float{
  position:absolute;
  top:-7%;left:59%;
  width:26%;height:auto;
  transform:translateX(-50%);
  z-index:3;
  filter:drop-shadow(0 18px 30px rgba(39,103,222,0.45));
  animation:coinFloat 4.2s ease-in-out infinite;
}
@keyframes coinFloat{
  0%,100%{transform:translateX(-50%) translateY(18px) rotate(-4deg)}
  50%{transform:translateX(-50%) translateY(-2px) rotate(4deg)}
}
/* Celular flutuante (Conta Digital) */
.subhero-art-conta{width:min(28%, 340px);transform:translate(0px, calc(-50% + 73px))}
.subhero-art-conta .subhero-art-img{width:44%;margin:0 auto}
.subhero-art-conta .coin-lines-pj{inset:auto;top:50%;left:50%;translate:-50% -50%;width:208%;height:auto;aspect-ratio:440 / 308}

/* Escudo flutuante (Seguros) */
.subhero-art-seg{width:min(30%, 360px);transform:translate(22px, calc(-50% + 45px))}
.subhero-art-seg .subhero-art-img{width:62%;margin:0 auto}
.subhero-art-seg .coin-lines-pj{inset:auto;top:50%;left:50%;translate:-50% -50%;width:196%;height:auto;aspect-ratio:440 / 308}

/* Carro flutuante (Veículos) — mesmo tamanho/posição da casa (Imobiliário) */
.subhero-art-veic{width:min(33%, 400px);transform:translate(110px, calc(-50% + 50px))}
.subhero-art-veic .coin-lines-pj{inset:auto;top:50%;left:50%;translate:-50% -50%;width:176%;height:auto;aspect-ratio:440 / 308}

/* Engrenagens flutuantes (Consórcios) */
.subhero-art-cons{width:min(28%, 340px);transform:translate(15px, calc(-50% + 50px))}
.subhero-art-cons .coin-lines-pj{inset:auto;top:50%;left:50%;translate:-50% -50%;width:207%;height:auto;aspect-ratio:440 / 308}
.subhero-art-cons .subhero-art-img{width:75%;margin:0 auto;filter:saturate(1.5) hue-rotate(8deg) drop-shadow(0 26px 60px rgba(39,103,222,0.45))}

/* Chave flutuante acima da casa (Imobiliário) */
.subhero-art-imob{width:min(36%, 440px);transform:translate(110px, calc(-50% + 60px))}
.subhero-art-imob .coin-lines-pj{top:-36%;left:-33%;width:162%;height:162%}
.subhero-art-imob .subhero-art-img{filter:drop-shadow(0 26px 60px rgba(39,103,222,0.45));animation:houseFloatImob 5s ease-in-out infinite}
@keyframes houseFloatImob{
  0%,100%{transform:translateY(4px)}
  50%{transform:translateY(-10px)}
}
.subhero-art-imob .coin-float{
  position:absolute;
  top:4%;left:86%;
  width:13%;height:auto;
  transform:translateX(-50%);
  z-index:3;
  filter:drop-shadow(0 18px 30px rgba(39,103,222,0.55));
  animation:keyFloatImob 4.2s ease-in-out infinite;
}
@keyframes keyFloatImob{
  0%,100%{transform:translateX(-50%) translateY(14px) rotate(-6deg)}
  50%{transform:translateX(-50%) translateY(-6px) rotate(6deg)}
}

/* Trust mini-strip (landing) */
.mini-trust{
  display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;
  padding:22px 28px;border:1px solid var(--line);border-radius:var(--r-md);
  background:linear-gradient(180deg, rgba(58,91,255,0.06), rgba(58,91,255,0.01));
}
.mini-trust .ti b{font-family:"Space Grotesk",sans-serif;font-size:32px;color:#5e8be8;display:block;letter-spacing:-0.01em;line-height:1.1}
.mini-trust .ti small{color:var(--muted);font-size:13px;display:block;margin-top:6px}
.mini-trust-compact{max-width:520px;gap:40px;padding:14px 16px;justify-items:center;text-align:center;grid-template-columns:repeat(3,auto);justify-content:center}
.mini-trust-compact .ti b{font-size:20px}
.mini-trust-compact .ti small{font-size:11px;margin-top:3px}
@media (max-width:720px){
  .mini-trust{grid-template-columns:repeat(3,1fr);gap:6px;padding:16px 10px;margin-top:29px}
  .mini-trust .ti b{font-size:18px}
  .mini-trust .ti small{font-size:9.5px;margin-top:3px}
}

/* Pain section */
.perfil-bg{position:relative;isolation:isolate}
.perfil-bg::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background-image:linear-gradient(rgba(7,12,26,0.92), rgba(7,12,26,0.94)), url('perfil-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
}
.modalidades-bg{position:relative;isolation:isolate}
.infra-conta-bg{position:relative;isolation:isolate}
.infra-conta-bg::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background-image:linear-gradient(rgba(7,12,26,0.90), rgba(7,12,26,0.93)), url('infra-conta-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
}
.modalidades-seg-bg{position:relative;isolation:isolate}
.modalidades-seg-bg::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background-image:linear-gradient(rgba(7,12,26,0.93), rgba(7,12,26,0.95)), url('modalidades-seg-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
}
.objetivos-veic-bg{position:relative;isolation:isolate}
.objetivos-veic-bg::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background-image:linear-gradient(rgba(7,12,26,0.92), rgba(7,12,26,0.94)), url('objetivos-veic-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
}
.modalidades-imob-bg{position:relative;isolation:isolate}
.modalidades-imob-bg::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background-image:linear-gradient(rgba(7,12,26,0.92), rgba(7,12,26,0.94)), url('modalidades-imob-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
}
.modalidades-bg::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background-image:linear-gradient(rgba(7,12,26,0.92), rgba(7,12,26,0.94)), url('modalidades-bg.jpg');
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat, no-repeat;
}
.pain-block{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:stretch}
.pain-block .pain-list{display:flex;flex-direction:column;gap:12px;height:100%}
.pain-block .pain-item{flex:1 1 0;display:flex;gap:14px;align-items:center;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r-md);background:rgba(255,90,90,0.05)}
.pain-block .pain-item .x{width:28px;height:28px;border-radius:8px;background:rgba(255,90,90,0.18);border:1px solid rgba(255,90,90,0.35);display:flex;align-items:center;justify-content:center;color:#ff8a8a;flex-shrink:0;font-size:18px;font-weight:600;line-height:1}
.pain-block .pain-item p{color:#cdd2e8;font-size:15px;margin:0}
/* Pain summary card (lado direito) */
.pain-summary{
  border:1px solid rgba(58,91,255,0.35);border-radius:var(--r-lg);
  padding:32px 30px;
  background:linear-gradient(180deg, rgba(58,91,255,0.10), rgba(58,91,255,0.02));
  display:flex;flex-direction:column;gap:18px;justify-content:center;
  position:relative;overflow:hidden;
}
.pain-summary::before{
  content:"";position:absolute;inset:auto -20% -40% auto;width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle, rgba(58,91,255,0.35), transparent 65%);
  filter:blur(20px);opacity:.7;pointer-events:none;
}
.pain-summary .ps-icon{
  width:54px;height:54px;border-radius:14px;
  background:rgba(58,91,255,0.20);border:1px solid rgba(58,91,255,0.40);
  display:flex;align-items:center;justify-content:center;color:#5e8be8;
  z-index:1;
}
.pain-summary .ps-icon svg{width:26px;height:26px}
.pain-summary .ps-icon img{width:28px;height:28px;object-fit:contain;display:block}
.pain-summary h3{font-size:22px;line-height:1.2;color:white;z-index:1;margin:0}
.pain-summary p{font-size:16px;line-height:1.55;color:#cdd2e8;z-index:1;margin:0}
.pain-summary .ps-bullets{display:flex;flex-direction:column;gap:8px;z-index:1;margin-top:4px}
.pain-summary .ps-bullets li{
  display:flex;gap:10px;align-items:flex-start;font-size:14px;color:#cdd2e8;
}
.pain-summary .ps-bullets li::before{
  content:"";flex-shrink:0;width:6px;height:6px;border-radius:50%;background:#5e8be8;
  margin-top:7px;box-shadow:0 0 10px rgba(58,91,255,0.6);
}
.pain-summary .ps-cta{
  margin-top:6px;display:inline-flex;align-items:center;gap:8px;
  color:#5e8be8;text-decoration:none;font-weight:600;font-size:14px;z-index:1;
  align-self:flex-start;
}
.pain-summary .ps-cta svg{width:14px;height:14px;flex-shrink:0;transition:transform .2s}
.pain-summary .ps-cta:hover{color:#ffffff}
.pain-summary .ps-cta:hover svg{transform:translateX(3px)}

/* Pain block on light bg */
section.section-light .pain-block .pain-item{
  border-color:rgba(12,26,52,0.10);background:rgba(255,90,90,0.06);
}
section.section-light .pain-block .pain-item p{color:#43507a}
section.section-light .pain-summary{
  border-color:rgba(58,91,255,0.30);
  background:linear-gradient(180deg, rgba(58,91,255,0.08), rgba(58,91,255,0.02));
}
section.section-light .pain-summary h3{color:#0c1a34}
section.section-light .pain-summary p, section.section-light .pain-summary .ps-bullets li{color:#43507a}
section.section-light .pain-summary .ps-icon{background:rgba(39,103,222,0.12);border-color:rgba(39,103,222,0.32);color:#2767de}
section.section-light .pain-summary .ps-cta{color:#2767de}
section.section-light .pain-summary .ps-cta:hover{color:#0c1a34}

@media (max-width:980px){.pain-block{grid-template-columns:1fr;gap:24px}.pain-summary{padding:28px 24px}}

/* Accident animation frame (iframe embed) */
.accident-frame{
  position:relative;
  width:100%;
  aspect-ratio:2 / 1;
  border-radius:var(--r-lg);
  overflow:hidden;
  background:#000;
  border:1px solid var(--line);
  box-shadow:0 30px 80px rgba(0,0,0,0.5), 0 0 0 1px rgba(58,91,255,0.08);
  margin-top:8px;
}
.accident-frame iframe{
  position:absolute;inset:0;
  width:100%;height:100%;
  border:0;display:block;
  background:#050913;
}
.accident-cta{
  margin-top:24px;
  display:flex;align-items:center;justify-content:space-between;gap:32px;
  padding:22px 26px;
  border:1px solid var(--line);
  border-radius:var(--r-md);
  background:linear-gradient(180deg, rgba(58,91,255,0.06), rgba(58,91,255,0.01));
}
.accident-cta p{
  margin:0;font-size:14.5px;color:#cdd2e8;line-height:1.5;
  max-width:520px;
}
.accident-cta-actions{display:flex;gap:10px;flex-shrink:0;flex-wrap:wrap}
.accident-cta-actions .btn{flex-shrink:0}
@media (max-width:980px){
  .accident-frame{aspect-ratio:4 / 3}
  .accident-cta{flex-direction:column;align-items:flex-start;gap:18px;padding:20px}
  .accident-cta-actions{width:100%}
}
@media (max-width:600px){
  .accident-frame{aspect-ratio:4 / 5}
  .accident-cta-actions{flex-direction:column;align-items:stretch}
  .accident-cta-actions .btn{justify-content:center}
}

/* Solution / stack section */
.stack-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:36px}
.stack-item{
  display:flex;gap:14px;align-items:flex-start;
  padding:22px 24px;border:1px solid var(--line);border-radius:var(--r-md);
  background:linear-gradient(180deg, rgba(58,91,255,0.05), rgba(58,91,255,0.01));
}
.stack-item .chk{width:30px;height:30px;border-radius:8px;background:rgba(58,91,255,0.18);border:1px solid rgba(58,91,255,0.40);display:flex;align-items:center;justify-content:center;color:#5e8be8;flex-shrink:0}
.stack-item .chk svg{width:14px;height:14px}
.stack-item b{display:block;color:white;font-weight:600;font-size:15px;margin-bottom:4px}
.stack-item p{font-size:14px;color:#aab1ce}
@media (max-width:720px){.stack-grid{grid-template-columns:1fr}}

/* Veículos — 3 cards em row + fan-out from center */
#veic-grid{
  grid-template-columns:repeat(3,1fr);
  perspective:1000px;
}
#veic-grid .veic-item{
  opacity:0;
  flex-direction:column;
  align-items:flex-start;
  padding:26px;
  gap:14px;
  transition:border-color .3s ease, box-shadow .3s ease;
}
#veic-grid.is-ready .veic-item:hover{
  border-color:rgba(94,139,232,0.55);
  box-shadow:0 16px 36px -14px rgba(58,91,255,0.45);
  transform:translateY(-4px) !important;
}
@media (max-width:980px){
  #veic-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  #veic-grid{grid-template-columns:1fr}
}

/* Imobiliário — cards com número decorativo + flip cascade */
.imob-grid{perspective:1200px}
#imob-grid .imob-item{
  opacity:0;
  transform:rotateX(-70deg) translateY(40px);
  transform-origin:top center;
  transform-style:preserve-3d;
  padding:26px 28px;
  gap:18px;
  position:relative;
  transition:border-color .3s ease, box-shadow .3s ease;
  text-decoration:none;color:inherit;cursor:pointer;
}
#imob-grid .imob-item > div{padding-right:48px}
#imob-grid.is-ready .imob-item:hover{
  border-color:rgba(94,139,232,0.55);
  box-shadow:0 18px 48px -16px rgba(58,91,255,0.45);
}
.imob-num{
  font:800 38px/1 'Space Grotesk',sans-serif;
  letter-spacing:-0.04em;
  color:#5e8be8;
  min-width:54px;
  flex-shrink:0;
  display:block;
}
.imob-arrow{
  position:absolute;top:24px;right:24px;
  width:34px;height:34px;border-radius:9px;
  background:rgba(58,91,255,0.10);
  border:1px solid rgba(58,91,255,0.30);
  display:flex;align-items:center;justify-content:center;
  color:#5e8be8;
  transition:all .25s ease;
  flex-shrink:0;
}
.imob-arrow svg{width:14px;height:14px}
#imob-grid.is-ready .imob-item:hover .imob-arrow{
  background:#3a5bff;border-color:#3a5bff;color:#fff;
  transform:translate(3px,-2px);
}

/* Tabs do simulador (Imobiliário) — fundo claro */
.sim-tabs{
  display:flex;gap:0;
  border-bottom:1px solid rgba(12,26,52,0.10);
  margin-bottom:28px;
  flex-wrap:wrap;
}
.sim-tab{
  background:none;border:none;cursor:pointer;
  padding:14px 22px;
  font:500 14.5px/1 'Manrope',sans-serif;
  color:#43507a;
  position:relative;
  margin-bottom:-1px;
  transition:color .22s ease;
}
.sim-tab:hover{color:#0c1a34}
.sim-tab.active{color:#2767de;font-weight:600}
.sim-tab.active::after{
  content:"";position:absolute;left:22px;right:22px;bottom:-1px;height:2px;
  background:#2767de;border-radius:2px;
  animation:simTabSlide .25s ease-out;
}
@keyframes simTabSlide{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.sim-panel[hidden]{display:none}
.sim-panel.active{animation:simPanelIn .3s ease-out}
@keyframes simPanelIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}
@media (max-width:720px){
  .sim-tab{padding:12px 14px;font-size:13px}
  .sim-tab.active::after{left:14px;right:14px}
}

/* ============================
   Filtro de modalidades (Seguros / anime.js)
   ============================ */
/* Tabs minimalistas — underline animado */
.seg-filter{margin:0 0 36px}
.seg-tabs{
  display:flex;align-items:stretch;gap:0;flex-wrap:wrap;
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.seg-tab{
  background:none;border:none;cursor:pointer;
  display:inline-flex;align-items:center;gap:7px;
  padding:14px 18px;
  font:500 14px/1 'Manrope',sans-serif;
  color:#8a90b0;
  position:relative;
  transition:color .22s ease;
  margin-bottom:-1px;
  white-space:nowrap;
}
.seg-tab:hover{color:#cdd2e8}
.seg-tab .tab-count{
  font-size:11px;font-weight:500;color:#5b6080;
  transition:color .22s ease;
}
.seg-tab.active{color:#fff}
.seg-tab.active .tab-count{color:#5e8be8}
.seg-tab.active::after{
  content:"";position:absolute;left:18px;right:18px;bottom:-1px;height:2px;
  background:#3a5bff;border-radius:2px;
  animation:segTabSlide .25s ease-out;
}
@keyframes segTabSlide{
  from{transform:scaleX(0)}
  to{transform:scaleX(1)}
}
.seg-tab-sep{
  align-self:center;
  width:1px;height:20px;
  background:rgba(255,255,255,0.12);
  margin:0 10px;
}
@media (max-width:720px){
  .seg-tabs{gap:2px}
  .seg-tab{padding:12px 10px;font-size:13px}
  .seg-tab-sep{display:none}
  .seg-tab.active::after{left:10px;right:10px}
}
#seg-grid .stack-item{
  opacity:0;transform:translateY(20px);
  transition:box-shadow .25s ease, border-color .25s ease;
}
#seg-grid .stack-item.is-hidden{display:none !important}
#seg-grid.is-ready .stack-item:hover{
  box-shadow:0 12px 28px -10px rgba(58,91,255,0.40);
  border-color:rgba(94,139,232,0.50);
}

/* For-who / NOT-for-who */
.for-who{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.for-who .col{padding:28px;border:1px solid var(--line);border-radius:var(--r-md)}
.for-who .col.yes{background:linear-gradient(180deg, rgba(58,200,120,0.06), rgba(58,200,120,0.01));border-color:rgba(58,200,120,0.22)}
.for-who .col.no{background:linear-gradient(180deg, rgba(255,90,90,0.05), rgba(255,90,90,0.01));border-color:rgba(255,90,90,0.20)}
.for-who h3{font-size:18px;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.for-who h3 .badge-circle{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;line-height:1}
.for-who .col.yes h3 .badge-circle{background:rgba(58,200,120,0.20);color:#7dd0a9}
.for-who .col.no h3 .badge-circle{background:rgba(255,90,90,0.20);color:#ff8a8a}
.for-who ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.for-who li{font-size:14px;color:#cdd2e8;line-height:1.55;padding-left:20px;position:relative}
.for-who .col.yes li::before{content:"+";position:absolute;left:0;color:#7dd0a9;font-weight:600}
.for-who .col.no li::before{content:"−";position:absolute;left:0;color:#ff8a8a;font-weight:600}
@media (max-width:720px){.for-who{grid-template-columns:1fr}}

/* Steps / how it works */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
.step{
  padding:24px 22px;border:1px solid var(--line);border-radius:var(--r-md);
  background:linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0));
  position:relative;
}
.step .step-num{font-family:"Space Grotesk",sans-serif;font-size:14px;color:var(--blue-2);font-weight:600;letter-spacing:.06em;margin-bottom:10px}
.step h4{font-size:16px;margin-bottom:8px;letter-spacing:-0.005em}
.step p{font-size:13px;color:#aab1ce}
@media (max-width:980px){.steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.steps{grid-template-columns:1fr}}

/* FAQ accordion */
.faq-layout{display:grid;grid-template-columns:594px 1fr;gap:48px;align-items:stretch;margin-top:32px}
.faq-layout .faq{margin-top:0}
.faq-art{position:relative;align-self:start;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line)}
.faq-art.square{aspect-ratio:1/1;height:auto !important;align-self:center}
.faq-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:980px){.faq-layout{grid-template-columns:1fr;gap:28px}.faq-art{display:none}}
.faq-layout.no-art{grid-template-columns:1fr}
.faq-layout.no-art .faq-art{display:none}
.faq-layout.no-art .faq{max-width:none}
.faq{display:flex;flex-direction:column;gap:12px;margin-top:32px;max-width:594px}
.faq-item{
  border:1px solid var(--line);border-radius:var(--r-md);
  background:linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0));
  overflow:hidden;
}
.faq-item summary{
  list-style:none;cursor:pointer;
  padding:20px 22px;font-family:"Space Grotesk",sans-serif;font-weight:500;color:var(--text);
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  font-size:15.5px;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary .chev{width:24px;height:24px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;transition:transform .25s ease;color:var(--blue-2);flex-shrink:0}
.faq-item summary .chev svg{width:13px;height:13px}
.faq-item[open] summary .chev{transform:rotate(180deg)}
.faq-item .answer{padding:0 22px 20px;color:#cdd2e8;font-size:14.5px;line-height:1.65}

/* Guarantee */
.guarantee{
  display:flex;gap:24px;align-items:center;
  padding:32px 36px;border:1px solid rgba(58,91,255,0.4);border-radius:var(--r-lg);
  background:linear-gradient(160deg, rgba(58,91,255,0.12), rgba(58,91,255,0.02));
  margin-top:60px;
}
.guarantee .seal{width:80px;height:80px;border-radius:50%;background:rgba(58,91,255,0.18);border:1px solid rgba(58,91,255,0.50);display:flex;align-items:center;justify-content:center;color:#5e8be8;flex-shrink:0}
.guarantee .seal svg{width:36px;height:36px}
.guarantee h3{font-size:20px;margin-bottom:6px;color:white}
.guarantee p{color:#cdd2e8;font-size:14.5px;max-width:560px}
@media (max-width:720px){.guarantee{flex-direction:column;text-align:center}}

/* Location block — compact */
#sec-local{padding:44px 0 56px}
.location-block{
  display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;
  border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;
  background:linear-gradient(180deg, rgba(58,91,255,0.05), rgba(58,91,255,0.01));
}
.location-info{padding:28px 32px;display:flex;flex-direction:column;justify-content:center}
.location-info .kicker{margin-bottom:8px}
.location-info h2{font-size:24px;line-height:1.15;margin-bottom:8px}
.location-info p{font-size:14px;color:#cdd2e8;margin-bottom:0;max-width:420px}
.location-info .addr-block{
  display:flex;gap:12px;align-items:flex-start;margin:16px 0 14px;
  padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);
  background:rgba(255,255,255,0.025);
}
.location-info .addr-block .pin{
  width:34px;height:34px;border-radius:8px;flex-shrink:0;
  background:var(--blue-soft);border:1px solid rgba(58,91,255,0.32);
  display:flex;align-items:center;justify-content:center;color:#5e8be8;
}
.location-info .addr-block .pin svg{width:16px;height:16px}
.location-info .addr-block .info b{display:block;color:white;font-size:14px;font-weight:600;margin-bottom:2px}
.location-info .addr-block .info small{color:#aab1ce;font-size:12.5px;line-height:1.5;display:block}
.location-info .hours-row{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:18px;font-size:12.5px;color:#aab1ce}
.location-info .hours-row span{display:inline-flex;align-items:center;gap:6px}
.location-info .hours-row svg{width:12px;height:12px;color:#5e8be8;flex-shrink:0}
.location-info .actions{display:flex;gap:10px;flex-wrap:wrap}
.location-info .actions .btn{padding:10px 16px;font-size:13px}
.location-map{position:relative;min-height:280px;background:#0b1226}
.location-map iframe{
  position:absolute;inset:0;width:100%;height:100%;border:0;display:block;
  filter:grayscale(40%) contrast(0.95) brightness(0.92);
  transition:filter .6s ease;
}
.location-map:hover iframe{filter:grayscale(0%) contrast(1) brightness(1)}
@media (max-width:980px){
  #sec-local{padding:32px 0 40px}
  .location-block{grid-template-columns:1fr}
  .location-info{padding:24px 20px}
  .location-info h2{font-size:22px}
  .location-map{min-height:220px}
}

/* ============================
   Horizontal scroll (GSAP)
   ============================ */
.hscroll-section{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  z-index:1;
  background:var(--bg);
}
.hscroll-track{
  display:flex;
  width:max-content;
  will-change:transform;
  transform:translateZ(0);
  backface-visibility:hidden;
  background:
    radial-gradient(800px 500px at 40% 30%, rgba(58,91,255,0.10), transparent 60%),
    var(--bg);
}
.hscroll-panel{
  width:100vw;
  min-height:100vh;
  flex-shrink:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  padding:100px 80px;
  align-items:center;
  position:relative;
  border-right:1px solid var(--line);
  background:
    radial-gradient(800px 500px at 40% 30%, rgba(58,91,255,0.10), transparent 60%),
    var(--bg);
}
.hscroll-panel:last-child{border-right:none}
.hscroll-panel .panel-num{display:none}

/* Item Home (ícone) no nav superior */
.nav ul li a.nav-home{
  display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:50%;
  padding:0;gap:0;
  opacity:.78;
  border:1px solid transparent;
  transition:color .25s ease, background .25s ease, border-color .25s ease, opacity .25s ease, transform .25s ease;
}
.nav ul li a.nav-home:hover{
  opacity:1;
  color:var(--blue-2);
  background:rgba(94,139,232,0.12);
  border-color:rgba(94,139,232,0.35);
  transform:scale(1.08);
}
.nav ul li a.nav-home.active{
  opacity:1;
  color:var(--blue-2);
  background:rgba(94,139,232,0.10);
  border-color:rgba(94,139,232,0.28);
}
.nav ul li a.nav-home svg{width:16px;height:16px;display:block;transform:translateY(-1px)}
.hscroll-panel .panel-visual{
  display:flex;align-items:center;justify-content:center;
  position:relative;height:100%;min-height:380px;
}
.hscroll-panel .panel-visual::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at center, rgba(58,91,255,0.18), transparent 65%);
  filter:blur(40px);pointer-events:none;
}
.hscroll-panel .panel-visual .big-icon{
  width:280px;height:280px;border-radius:32px;
  background:linear-gradient(160deg, rgba(58,91,255,0.20), rgba(58,91,255,0.04));
  border:1px solid rgba(58,91,255,0.40);
  display:flex;align-items:center;justify-content:center;
  color:#5e8be8;position:relative;z-index:1;
  box-shadow:0 30px 80px -20px rgba(58,91,255,0.4);
}
.hscroll-panel .panel-visual .big-icon svg{width:140px;height:140px}
.hscroll-panel .panel-visual .big-icon img{width:160px;height:160px;object-fit:contain;filter:drop-shadow(0 8px 24px rgba(58,91,255,0.5))}
.hscroll-panel .panel-visual .big-icon.big-photo{padding:0;overflow:hidden;width:100%;max-width:520px;height:440px;border-radius:var(--r-lg);background:none;border:none;box-shadow:0 30px 80px -20px rgba(58,91,255,0.55)}
.hscroll-panel .panel-visual .big-icon.big-photo img{width:100%;height:100%;object-fit:cover;filter:none}
.hscroll-panel .panel-content{display:flex;flex-direction:column;gap:18px;max-width:520px}
.hscroll-panel .panel-content h2{font-size:46px;line-height:1.05;letter-spacing:-0.02em}
.hscroll-panel .panel-content .lede{font-size:17px;color:#cdd2e8;line-height:1.55}
.hscroll-panel .panel-content .panel-bullets{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.hscroll-panel .panel-content .panel-bullets li{
  display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:#cdd2e8;
}
.hscroll-panel .panel-content .panel-bullets li svg{width:18px;height:18px;color:#5e8be8;flex-shrink:0;margin-top:3px}
.hscroll-panel .panel-content .panel-cta{margin-top:14px;display:flex;gap:12px;flex-wrap:wrap}

/* Hint de scroll (na entrada da seção) */
.hscroll-hint{
  position:absolute;bottom:30px;left:50%;transform:translateX(-50%);
  display:flex;align-items:center;gap:10px;
  color:var(--muted);font-size:13px;font-family:"Space Grotesk",sans-serif;letter-spacing:.06em;
  z-index:2;opacity:.85;pointer-events:none;
}
.hscroll-hint svg{width:18px;height:18px;animation:hintArrow 1.6s ease-in-out infinite}
@keyframes hintArrow{
  0%,100%{transform:translateX(0);opacity:.5}
  50%{transform:translateX(8px);opacity:1}
}

/* Progress dots */
.hscroll-progress{
  position:absolute;bottom:30px;right:80px;
  display:flex;gap:8px;z-index:2;
}
.hscroll-progress .dot{
  width:24px;height:4px;border-radius:99px;
  background:rgba(255,255,255,0.15);transition:background .3s;
}
.hscroll-progress .dot.active{background:#5e8be8;box-shadow:0 0 10px rgba(58,91,255,0.5)}

@media (max-width:980px){
  .hscroll-panel{
    width:100%;min-height:auto;
    grid-template-columns:1fr;gap:30px;padding:48px 24px;border-right:none;border-bottom:1px solid var(--line);
  }
  .hscroll-panel .panel-num{position:static;margin-bottom:6px}
  .hscroll-panel .panel-visual{min-height:200px}
  .hscroll-panel .panel-visual .big-icon{width:180px;height:180px}
  .hscroll-panel .panel-visual .big-icon svg{width:90px;height:90px}
  .hscroll-panel .panel-visual .big-icon img{width:100px;height:100px}
  .hscroll-panel .panel-content h2{font-size:32px}
  .hscroll-track{flex-direction:column;width:100%}
  .hscroll-hint, .hscroll-progress{display:none}
}

/* ============================
   Simulador interativo (slider)
   ============================ */
.simulator{
  border:1px solid rgba(58,91,255,0.32);border-radius:var(--r-lg);
  padding:36px 40px;
  background:
    radial-gradient(800px 400px at 90% -10%, rgba(58,91,255,0.18), transparent 60%),
    linear-gradient(180deg, rgba(58,91,255,0.08), rgba(58,91,255,0.02));
}
.simulator-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:8px}
.simulator-head .kicker{margin-bottom:0}
.simulator-head h3{font-size:28px;letter-spacing:-0.01em;color:white}
.simulator-head .product-tag{
  display:inline-flex;align-items:center;padding:5px 12px;border-radius:99px;
  background:rgba(255,255,255,0.08);border:1px solid var(--line-2);
  font-size:12px;color:var(--muted);font-family:"Space Grotesk",sans-serif;letter-spacing:.06em;
}
.simulator-body{margin-top:24px;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center}
.sim-value-block{display:flex;flex-direction:column;gap:10px}
.sim-value-label{font-family:"Space Grotesk",sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.sim-value-big{font-family:"Space Grotesk",sans-serif;font-size:54px;font-weight:600;color:#5e8be8;letter-spacing:-0.02em;line-height:1;font-variant-numeric:tabular-nums}
.sim-value-small{color:var(--muted);font-size:13px;margin-top:4px}
.sim-slider-wrap{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.sim-slider{
  -webkit-appearance:none;appearance:none;width:100%;height:6px;
  background:rgba(255,255,255,0.10);border-radius:99px;outline:none;
  cursor:pointer;
}
.sim-slider::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;
  background:#2767de;border:3px solid #fff;
  box-shadow:0 4px 14px -3px rgba(39,103,222,0.7);cursor:grab;
}
.sim-slider::-webkit-slider-thumb:active{cursor:grabbing}
.sim-slider::-moz-range-thumb{
  width:24px;height:24px;border-radius:50%;
  background:#2767de;border:3px solid #fff;
  box-shadow:0 4px 14px -3px rgba(39,103,222,0.7);cursor:grab;
}
.sim-range-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--dim);font-family:"Space Grotesk",sans-serif;letter-spacing:.04em}
.sim-summary{
  background:rgba(0,0,0,0.25);border:1px solid var(--line);
  border-radius:var(--r-md);padding:22px 24px;
  display:flex;flex-direction:column;gap:14px;
}
.sim-summary-item{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.sim-summary-item .label{color:var(--muted);font-size:13px}
.sim-summary-item .value{font-family:"Space Grotesk",sans-serif;font-weight:600;color:white;font-size:15px;text-align:right;font-variant-numeric:tabular-nums}
.sim-summary-item.estimate .value{color:#5e8be8;font-size:19px}
.sim-cta-row{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}
.sim-disclaimer{margin-top:14px;font-size:11.5px;color:var(--dim);line-height:1.5;max-width:680px}
section.section-light .simulator{
  background:linear-gradient(180deg, rgba(39,103,222,0.05), rgba(39,103,222,0.01));
  border-color:rgba(39,103,222,0.30);
}
section.section-light .simulator-head h3{color:#0c1a34}
section.section-light .sim-value-big{color:#2767de}
section.section-light .sim-summary{background:rgba(255,255,255,0.6);border-color:rgba(39,103,222,0.15)}
section.section-light .sim-summary-item .value{color:#0c1a34}
section.section-light .sim-summary-item.estimate .value{color:#2767de}
section.section-light .sim-slider{background:rgba(12,26,52,0.10)}
section.section-light .sim-disclaimer{color:#67708e}
@media (max-width:980px){
  .simulator{padding:28px 24px}
  .simulator-body{grid-template-columns:1fr;gap:24px}
  .sim-value-big{font-size:42px}
}

/* ============================================================
   SIMULADORES NRB v2 — selects, slider de prazo, tabela, print
   ============================================================ */
.sim-selects{
  display:grid; gap:14px; margin-bottom:24px;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
}
.sim-field{display:flex; flex-direction:column; gap:6px}
.sim-field > label{
  font-family:"Space Grotesk", sans-serif;
  font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted);
}
.sim-select, .sim-input{
  appearance:none; -webkit-appearance:none;
  background:rgba(0,0,0,0.30);
  color:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:12px 38px 12px 14px;
  font-family:"Manrope", sans-serif; font-size:14px; font-weight:500;
  cursor:pointer;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%235e8be8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:12px 8px;
  transition:border-color .2s, background-color .2s;
}
.sim-select:hover, .sim-select:focus, .sim-input:hover, .sim-input:focus{
  border-color:rgba(94,139,232,0.55);
  outline:none;
}
.sim-input{ cursor:text; background-image:none; padding-right:14px; font-variant-numeric:tabular-nums }

section.section-light .sim-select,
section.section-light .sim-input{
  background-color:rgba(255,255,255,0.85);
  color:#0c1a34;
  border-color:rgba(12,26,52,0.18);
}
section.section-light .sim-field > label{ color:#67708e }

.sim-prazo-block{display:flex; flex-direction:column; gap:8px; margin-top:18px}
.sim-prazo-head{display:flex; justify-content:space-between; align-items:baseline; gap:14px}
.sim-prazo-label{
  font-family:"Space Grotesk", sans-serif;
  font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted);
}
.sim-prazo-value{
  font-family:"Space Grotesk", sans-serif;
  font-size:22px; font-weight:600; color:#fff;
  font-variant-numeric:tabular-nums;
}
section.section-light .sim-prazo-value{color:#0c1a34}

.sim-extras-row{
  display:flex; flex-wrap:wrap; gap:10px; margin-top:18px;
  align-items:center;
}
.sim-toggle-table, .sim-print-btn{
  appearance:none; cursor:pointer;
  background:transparent;
  border:1px solid var(--line);
  color:var(--text);
  font-family:"Space Grotesk", sans-serif; font-size:12px;
  letter-spacing:.10em; text-transform:uppercase;
  padding:10px 16px; border-radius:99px;
  display:inline-flex; align-items:center; gap:8px;
  transition:border-color .2s, color .2s, background .2s;
}
.sim-toggle-table:hover, .sim-print-btn:hover{
  border-color:rgba(94,139,232,0.7);
  color:#5e8be8;
}
.sim-toggle-table svg, .sim-print-btn svg{width:14px; height:14px}
.sim-toggle-table[aria-expanded="true"] .sim-toggle-icon{transform:rotate(180deg)}
.sim-toggle-icon{transition:transform .25s ease}
section.section-light .sim-toggle-table,
section.section-light .sim-print-btn{
  color:#0c1a34;
  border-color:rgba(12,26,52,0.2);
}

.sim-table-wrap{
  margin-top:18px;
  max-height:0; overflow:hidden;
  transition:max-height .35s ease;
}
.sim-table-wrap.open{ max-height:460px; overflow:auto }
.sim-table-inner{
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(0,0,0,0.20);
  padding:6px;
}
section.section-light .sim-table-inner{
  background:rgba(255,255,255,0.7);
  border-color:rgba(12,26,52,0.10);
}
table.sim-table{
  width:100%;
  border-collapse:collapse;
  font-family:"Space Grotesk", sans-serif;
  font-size:13px;
  font-variant-numeric:tabular-nums;
  color:var(--text);
}
table.sim-table thead th{
  position:sticky; top:0;
  background:rgba(6,10,24,0.95);
  text-align:left;
  font-size:11px;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:var(--muted);
  padding:10px 14px;
  border-bottom:1px solid var(--line);
  font-weight:500;
}
table.sim-table tbody td{
  padding:8px 14px;
  border-bottom:1px solid rgba(255,255,255,0.04);
}
table.sim-table tbody tr:last-child td{border-bottom:none}
table.sim-table tbody tr:nth-child(even){background:rgba(255,255,255,0.02)}
section.section-light table.sim-table{color:#0c1a34}
section.section-light table.sim-table thead th{background:#eef2fb; color:#67708e; border-bottom-color:rgba(12,26,52,0.10)}
section.section-light table.sim-table tbody td{border-bottom-color:rgba(12,26,52,0.05)}
section.section-light table.sim-table tbody tr:nth-child(even){background:rgba(12,26,52,0.025)}

.sim-summary-item.estimate-pair{
  display:flex; flex-direction:column; gap:6px;
  align-items:stretch;
}
.sim-summary-item.estimate-pair .label{margin-bottom:4px}
.sim-pair-row{
  display:flex; justify-content:space-between; gap:14px;
  font-size:13px; color:var(--muted);
}
.sim-pair-row b{
  font-family:"Space Grotesk", sans-serif;
  font-weight:600; color:#5e8be8; font-size:18px;
}
section.section-light .sim-pair-row b{color:#2767de}
section.section-light .sim-pair-row{color:#67708e}

@media print{
  body * { visibility:hidden !important; }
  .sim-print-area{ display:none !important }
  .sim-print-area.print-target{
    display:block !important;
    visibility:visible !important;
    position:absolute; left:0; top:0; width:100%;
    padding:30px;
    background:#fff !important; color:#0c1a34 !important;
    font-family:"Manrope", sans-serif;
  }
  .sim-print-area.print-target *{ visibility:visible !important }
  .sim-print-area .sim-print-header{
    border-bottom:2px solid #2767de;
    padding-bottom:14px; margin-bottom:20px;
  }
  .sim-print-area .sim-print-header h1{
    font-family:"Space Grotesk", sans-serif;
    font-size:22px; margin:0 0 4px; color:#0c1a34;
  }
  .sim-print-area .sim-print-header small{ color:#67708e; font-size:12px }
  .sim-print-area .sim-print-grid{
    display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:22px;
  }
  .sim-print-area .sim-print-grid > div{
    border:1px solid #e3e8f3; border-radius:6px; padding:10px 12px;
  }
  .sim-print-area .sim-print-grid label{
    font-size:10px; letter-spacing:.10em; text-transform:uppercase;
    color:#67708e; display:block; margin-bottom:4px;
  }
  .sim-print-area .sim-print-grid span{
    font-family:"Space Grotesk", sans-serif;
    font-weight:600; font-size:14px; color:#0c1a34;
  }
  .sim-print-area table{
    width:100%; border-collapse:collapse; font-size:11px;
  }
  .sim-print-area table th, .sim-print-area table td{
    text-align:left; padding:5px 8px; border-bottom:1px solid #e3e8f3;
  }
  .sim-print-area table th{ background:#eef2fb; color:#67708e; font-weight:500 }
  .sim-print-area .sim-print-foot{
    margin-top:24px; padding-top:14px;
    border-top:1px solid #e3e8f3; font-size:10px; color:#67708e;
  }
  .sim-print-area .sim-print-foot b{ color:#0c1a34 }
  @page { margin:14mm }
}
.sim-print-area{ display:none }

@media (max-width:980px){
  .sim-selects{grid-template-columns:1fr 1fr}
  .sim-extras-row{flex-direction:column; align-items:stretch}
  .sim-extras-row .sim-toggle-table,
  .sim-extras-row .sim-print-btn{justify-content:center}
}
@media (max-width:520px){
  .sim-selects{grid-template-columns:1fr}
}

/* Cross-sell footer band */
.cross-sell{padding:60px 0 0;border-top:1px solid var(--line);margin-top:60px}
.cross-sell .label{font-family:"Space Grotesk",sans-serif;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.cross-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cross-card{
  display:flex;flex-direction:column;gap:8px;
  padding:20px 22px;border:1px solid var(--line);border-radius:var(--r-md);
  background:linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0));
  text-decoration:none;color:inherit;
  transition:transform .3s, border-color .3s;
}
.cross-card:hover{transform:translateY(-3px);border-color:rgba(58,91,255,0.45)}
.cross-card b{color:white;font-size:15px;font-weight:600}
.cross-card small{color:var(--muted);font-size:13px;line-height:1.5}
.cross-card .arrow{margin-top:auto;padding-top:10px;color:var(--blue-2);font-size:13px}
.section-light .cross-sell{border-top-color:rgba(12,26,52,0.10)}
.section-light .cross-sell .label{color:#43507a}
.section-light .cross-card{background:linear-gradient(180deg, rgba(255,255,255,0.7), rgba(255,255,255,0.35));border-color:rgba(12,26,52,0.10)}
.section-light .cross-card:hover{border-color:rgba(39,103,222,0.45)}
.section-light .cross-card b{color:#0c1a34}
.section-light .cross-card small{color:#43507a}
.section-light .cross-card .arrow{color:#2767de}
@media (max-width:720px){.cross-grid{grid-template-columns:1fr}}

/* Responsive */
@media (max-width: 980px){
  .hero{padding-top:130px;padding-bottom:14px;min-height:auto;display:block}
  .hero::before{
    top:100px;
    background-image:linear-gradient(180deg, rgba(7,12,26,0.84) 0%, rgba(7,12,26,0.46) 46%, rgba(7,12,26,0.40) 100%), url('hero-bg.jpg');
    background-size:cover, cover;
    background-position:center, 92% center;
    background-repeat:no-repeat, no-repeat;
  }
  .hero-grid,.two-up,.ins-row,.cards-row,.re-grid,.foot-grid{grid-template-columns:1fr;gap:30px}
  .hero-grid{gap:8px}
  .trust-grid{grid-template-columns:repeat(2,1fr);column-gap:24px;row-gap:40px}
  .trust .ti b{font-size:24px}
  .trust .ti.num b{font-size:34px}
  .hero-stage{display:flex;align-items:center;justify-content:center;height:auto;min-height:200px;margin-top:14px}
  .re-grid, .re-grid.cols-3, .re-grid.cols-2{grid-template-columns:1fr;gap:18px}
  .ghost-headline{display:none}
  .ins-wrap,.cta-wrap{padding:20px}
  .ins-row > div > h3{font-size:24px!important}
  .ins-tags{grid-template-columns:1fr;gap:10px}
  #coin-stage{width:min(300px,82vw);height:min(300px,82vw);margin:0 auto;transform:none}
  .orbit-logo{width:120px}
  .orbit-icon{width:46px;height:46px;margin-left:-23px;margin-top:-23px;border-radius:11px}
  .orbit-icon svg{width:26px;height:26px}
  .orbit-icon-img img{width:30px;height:30px}
  .nav ul{display:none}
  .nav-inner{padding:18px 20px;gap:12px}
  .nav-inner .logo{flex:0 0 auto}
  .nav-inner .right{flex:1;justify-content:flex-end;display:flex;align-items:center;gap:14px}
  .nav-inner .right .btn-sm{padding:9px 14px;font-size:13px}
  .nav-inner .right .nav-access{margin-left:auto;position:relative;left:1px}
  .hamb{display:inline-flex;flex:0 0 auto;margin-left:auto;margin-right:5px}
  .mobile-menu, .mobile-scrim{display:block}
  section{padding:48px 0}
  section.tight{padding:36px 0}
  .subhero{padding:130px 0 44px;min-height:auto}
  .subhero-pj-bg::before,.subhero-imob-bg::before,.subhero-veic-bg::before,.subhero-cons-bg::before,.subhero-seg-bg::before,.subhero-conta-bg::before,.subhero-pf-bg::before{top:100px}
  .subhero-pj-bg::before{background-position:center, 30% top}
  .subhero-pf-bg::before{background-position:center, 32% center}
  .subhero-imob-bg::before{background-position:center, 55% center}
  .subhero-cons-bg::before{background-position:center, 27% center}
  .subhero-conta-bg::before{background-position:center, 46% center}
  .objetivos-veic-bg{padding-top:34px !important;padding-bottom:38px !important}
  .subhero-art{
    display:flex;align-items:center;justify-content:center;
    position:relative;right:auto;top:auto;
    transform:none;
    width:auto;max-width:300px;
    margin:36px auto 0;
  }
  .subhero-art .subhero-art-img{
    width:auto;height:auto;
    max-width:230px;max-height:220px;
    margin:0 auto;
  }
  .subhero-art .coin-float{display:block}
  .subhero-art-pf .coin-float{width:32px;top:14%;left:60%}
  .subhero-art-imob .coin-float{width:20px;top:24%;left:80%}
  .subhero-art .coin-lines-pj{
    display:block;position:absolute;
    inset:auto;top:50%;left:50%;
    width:300px;height:300px;
    translate:-50% -50%;
    opacity:.8;z-index:1;
  }
  .cross-grid{grid-template-columns:1fr}
}

/* Telefones — seção inicial mais compacta (texto + imagem) */
@media (max-width: 560px){
  .hero h1{font-size:28px;line-height:1.08}
  .hero .lede{font-size:14.5px;line-height:1.55;margin-top:16px}
  .subhero h1{font-size:28px;line-height:1.08}
  .subhero .lede{font-size:14.5px;line-height:1.55;margin-top:16px}
  .pill,.aud-badge{font-size:10.5px;letter-spacing:0.08em}

  /* Botões CTA da seção inicial menores */
  .hero-cta-row,.subhero-cta-row{gap:10px;margin-top:24px}
  .hero-cta-row .btn,.subhero-cta-row .btn{padding:11px 16px;font-size:13px;gap:8px}
  .hero-cta-row .btn .arr,.subhero-cta-row .btn .arr{width:20px;height:20px}
  .hero-cta-row .btn .arr svg,.subhero-cta-row .btn .arr svg{width:10px;height:10px}

  /* Imagem flutuante da home (órbita) menor */
  #coin-stage{width:min(220px,66vw);height:min(220px,66vw)}
  .orbit-logo{width:94px}
  .orbit-icon{width:38px;height:38px;margin-left:-19px;margin-top:-19px}
  .orbit-icon svg{width:22px;height:22px}
  .orbit-icon-img img{width:26px;height:26px}
  .hero-stage{min-height:160px;margin-top:8px}

  /* Imagem flutuante das páginas internas — mesmo bloco da home */
  .subhero{padding:130px 0 14px}
  .subhero-art{width:min(220px,66vw);height:min(220px,66vw);max-width:none;margin:15px auto 0}
  .subhero-art .subhero-art-img{max-width:min(180px,54vw);max-height:min(180px,54vw)}
  .subhero-art-pf .subhero-art-img{max-width:min(132px,40vw);max-height:min(132px,40vw)}
  .subhero-art-cons .subhero-art-img{max-width:min(134px,40vw);max-height:min(134px,40vw)}
  .subhero-art-seg .subhero-art-img{max-width:min(150px,45vw);max-height:min(150px,45vw)}
  .subhero-art-conta .subhero-art-img{max-width:min(138px,41vw);max-height:min(138px,41vw)}
  .subhero-conta-bg .breadcrumb{margin-top:0 !important}

  /* Imagens-banner da home mais quadradas no mobile */
  .analista-img,.bridge-img,.cta-banner{aspect-ratio:4/3}
  .bridge-img img[src*="veiculos"]{object-position:18% center}
  .subhero-art .coin-lines-pj{width:min(220px,66vw);height:min(220px,66vw)}

  /* Redução leve do texto de conteúdo (não afeta seções iniciais) */
  .eyebrow-row p{font-size:13.5px}
  .ncard h3{font-size:20px}
  .ncard p{font-size:13px}
  .re-card h4{font-size:15.5px}
  .re-card small{font-size:12px}
  .pcard p{font-size:14px}
  .credit-grid .pcard p{font-size:13.5px}
  .pcard .feat-list .item{font-size:13px}
  .step p{font-size:12px}
  .faq-item .answer{font-size:13.5px}
  .faq-item summary{font-size:14.5px}
  .cta-wrap h2{font-size:25px;line-height:1.12}
  .cta-banner img{object-position:72% center}
  #sec-cta{padding-bottom:40px}
}

/* FAQ — imagem entre o título e as caixas no mobile (todas as páginas) */
@media (max-width:980px){
  .faq-layout:not(.no-art){display:flex;flex-direction:column;gap:18px}
  .faq-layout:not(.no-art) .faq-art{
    display:block;order:-1;
    height:auto !important;
    aspect-ratio:16/10;
    width:100%;
  }
  .faq-art img[src*="faq-pj"]{object-position:center 28%}
  .faq-art img[src*="faq-pf"]{object-position:center 42%}
  .faq-art img[src*="faq-veic"]{object-position:center 18%}
  .faq-art img[src*="faq-cons"]{object-position:center 32%}
  .faq-art img[src*="faq-conta"]{object-position:center 22%}
  .faq-art img[src*="faq-seg"]{object-position:center 28%}
  section:has(.faq-layout){padding-top:36px !important}
  .hscroll-panel:first-child{padding-top:18px}
  .hscroll-panel:last-child{padding-bottom:22px}
  section:has(.for-who){padding-top:22px}
  .steps{grid-template-columns:repeat(2,1fr) !important}

  /* Painéis viram carrossel com swipe lateral no mobile */
  .hscroll-section{overflow:hidden}
  .hscroll-track{
    flex-direction:row;width:100%;
    overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .hscroll-track::-webkit-scrollbar{display:none}
  .hscroll-panel{
    width:86vw;flex:0 0 86vw;
    scroll-snap-align:center;
    min-height:auto;
    border-bottom:none;border-right:1px solid var(--line);
    padding:26px 22px !important;
  }
  .hscroll-panel:last-child{border-right:none}
  .hscroll-hint{
    display:flex;position:static;transform:none;
    justify-content:center;margin:16px auto 0;
    bottom:auto;left:auto;transition:opacity .3s ease;
  }
  .hscroll-progress{
    display:flex;position:static;transform:none;
    justify-content:center;margin:14px auto 2px;
    right:auto;bottom:auto;
  }
}

@media (max-width:600px){
  .steps{grid-template-columns:1fr !important}
}
