.hero{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:22px;
  align-items:start;
  margin-top:18px;
}

@media (max-width: 980px){
  .hero{
    grid-template-columns:1fr;
  }
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(159,224,255,.14);
  background:rgba(159,224,255,.06);
  color:rgba(208,234,255,.9);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.hero h1{
  margin:16px 0 0;
  max-width:14ch;
  font-size:clamp(40px,5.2vw,68px);
  line-height:1.02;
  letter-spacing:-.045em;
  color:#f4f7ff;
}

.hero .sub,
.hero .lede,
.hero p.sub,
.hero p.lede{
  margin:18px 0 0;
  max-width:66ch;
  color:rgba(234,240,255,.76);
  font-size:clamp(17px,1.45vw,21px);
  line-height:1.72;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}

.hero-kpis{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.pill{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
  color:rgba(234,240,255,.74);
  font-size:13px;
}

.pill strong{
  color:#fff;
  margin-right:6px;
}

.hero-card{
  position:relative;
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  padding:22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-shadow:0 22px 64px rgba(0,0,0,.34);
  overflow:hidden;
}

.hero-card::after{
  content:"";
  position:absolute;
  right:-32px;
  bottom:-32px;
  width:140px;
  height:140px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(124,156,255,.16), transparent 72%);
  pointer-events:none;
}

.mini-label{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(159,224,255,.14);
  background:rgba(159,224,255,.06);
  color:rgba(208,234,255,.82);
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.card-title{
  margin:14px 0 0;
  font-size:clamp(24px,2.1vw,30px);
  line-height:1.12;
  letter-spacing:-.03em;
  color:#f3f7ff;
}

.card-text{
  margin:12px 0 0;
  color:rgba(234,240,255,.74);
  line-height:1.7;
}

.signal-list{
  margin:18px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}

.signal-item{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.signal-dot{
  width:10px;
  height:10px;
  margin-top:7px;
  border-radius:999px;
  background:linear-gradient(180deg, #8ae7ff, #6ca6ff);
  box-shadow:0 0 0 6px rgba(124,156,255,.08);
  flex:0 0 auto;
}

.signal-item strong{
  display:block;
  color:#f4f7ff;
  font-size:14px;
  line-height:1.35;
}

.signal-item span{
  display:block;
  margin-top:2px;
  color:rgba(234,240,255,.68);
  font-size:14px;
  line-height:1.6;
}

.section-head{
  margin-top:34px;
}

.section-head .kicker{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
  color:rgba(208,234,255,.8);
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.section-head h2{
  margin:14px 0 0;
  font-size:clamp(28px,3vw,40px);
  line-height:1.08;
  letter-spacing:-.035em;
  color:#f4f7ff;
}

.section-head p{
  margin:12px 0 0;
  max-width:72ch;
  color:rgba(234,240,255,.72);
  line-height:1.72;
}

.grid,
.grid2{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}

.grid > .card,
.grid2 > .card{
  grid-column:span 12;
}

@media (min-width: 900px){
  .grid > .card{
    grid-column:span 6;
  }

  .grid2 > .card{
    grid-column:span 6;
  }
}

.card{
  position:relative;
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  padding:22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.042), rgba(255,255,255,.018));
  box-shadow:0 18px 54px rgba(0,0,0,.28);
  overflow:hidden;
}

.card::after{
  content:"";
  position:absolute;
  right:-26px;
  bottom:-26px;
  width:110px;
  height:110px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(124,156,255,.12), transparent 72%);
  pointer-events:none;
}

.card h3{
  margin:0 0 10px;
  color:#f4f7ff;
  font-size:1.05rem;
  letter-spacing:-.01em;
}

.card p{
  margin:0;
  color:rgba(234,240,255,.72);
  line-height:1.7;
}

.card p + p{
  margin-top:12px;
}

.card ul{
  margin:12px 0 0 18px;
  padding:0;
  color:rgba(234,240,255,.72);
}

.card li{
  margin:7px 0;
  line-height:1.66;
}

.card .small{
  margin-top:14px;
  color:rgba(234,240,255,.6);
  font-size:13px;
  line-height:1.65;
}

.title{
  margin-bottom:10px;
  color:#f4f7ff;
  font-size:1rem;
  letter-spacing:-.01em;
}

.note{
  margin-top:14px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
  color:rgba(234,240,255,.64);
  font-size:13px;
  line-height:1.66;
}

.note a,
.card a,
.footer-local a{
  color:rgba(159,224,255,.92);
  text-decoration:none;
}

.note a:hover,
.card a:hover,
.footer-local a:hover{
  text-decoration:underline;
}

.formActions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

.footer-local{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.44);
  font-size:12px;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
}

@media (max-width: 760px){
  .hero h1{
    max-width:12ch;
    font-size:clamp(34px, 9vw, 50px);
    line-height:1.06;
  }

  .hero .sub,
  .hero .lede,
  .hero p.sub,
  .hero p.lede{
    font-size:16px;
    line-height:1.66;
  }

  .hero-card,
  .card{
    padding:18px;
  }

  .section-head{
    margin-top:28px;
  }
}
.hero{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:22px;
  align-items:start;
  margin-top:18px;
}

@media (max-width:980px){
  .hero{
    grid-template-columns:1fr;
  }
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(159,224,255,.14);
  background:rgba(159,224,255,.06);
  color:rgba(208,234,255,.9);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.hero h1{
  margin:16px 0 0;
  max-width:14ch;
  font-size:clamp(40px,5.2vw,68px);
  line-height:1.02;
  letter-spacing:-.045em;
  color:#f4f7ff;
}

.hero .sub,
.hero .lede,
.hero p.sub,
.hero p.lede{
  margin:18px 0 0;
  max-width:66ch;
  color:rgba(234,240,255,.76);
  font-size:clamp(17px,1.45vw,21px);
  line-height:1.72;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}

.hero-kpis{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.pill{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
  color:rgba(234,240,255,.74);
  font-size:13px;
}

.pill strong{
  color:#fff;
  margin-right:6px;
}

.hero-card{
  position:relative;
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  padding:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-shadow:0 22px 64px rgba(0,0,0,.34);
  overflow:hidden;
}

.hero-card::after{
  content:"";
  position:absolute;
  right:-32px;
  bottom:-32px;
  width:140px;
  height:140px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(124,156,255,.16), transparent 72%);
  pointer-events:none;
}

.mini-label{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(159,224,255,.14);
  background:rgba(159,224,255,.06);
  color:rgba(208,234,255,.82);
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.card-title{
  margin:14px 0 0;
  font-size:clamp(24px,2.1vw,30px);
  line-height:1.12;
  letter-spacing:-.03em;
  color:#f3f7ff;
}

.card-text{
  margin:12px 0 0;
  color:rgba(234,240,255,.74);
  line-height:1.7;
}

.signal-list{
  margin:18px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}

.signal-item{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.signal-dot{
  width:10px;
  height:10px;
  margin-top:7px;
  border-radius:999px;
  background:linear-gradient(180deg, #8ae7ff, #6ca6ff);
  box-shadow:0 0 0 6px rgba(124,156,255,.08);
  flex:0 0 auto;
}

.signal-item strong{
  display:block;
  color:#f4f7ff;
  font-size:14px;
  line-height:1.35;
}

.signal-item span{
  display:block;
  margin-top:2px;
  color:rgba(234,240,255,.68);
  font-size:14px;
  line-height:1.6;
}

.section-head{
  margin-top:34px;
}

.section-head .kicker{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
  color:rgba(208,234,255,.8);
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.section-head h2{
  margin:14px 0 0;
  font-size:clamp(28px,3vw,40px);
  line-height:1.08;
  letter-spacing:-.035em;
  color:#f4f7ff;
}

.section-head p{
  margin:12px 0 0;
  max-width:72ch;
  color:rgba(234,240,255,.72);
  line-height:1.72;
}

.grid,
.grid2{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}

.grid > .card,
.grid2 > .card{
  grid-column:span 12;
}

@media (min-width:900px){
  .grid > .card{
    grid-column:span 6;
  }

  .grid2 > .card{
    grid-column:span 6;
  }
}

.card{
  position:relative;
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  padding:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.042), rgba(255,255,255,.018));
  box-shadow:0 18px 54px rgba(0,0,0,.28);
  overflow:hidden;
}

.card::after{
  content:"";
  position:absolute;
  right:-26px;
  bottom:-26px;
  width:110px;
  height:110px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(124,156,255,.12), transparent 72%);
  pointer-events:none;
}

.card h3{
  margin:0 0 10px;
  color:#f4f7ff;
  font-size:1.05rem;
  letter-spacing:-.01em;
}

.card p{
  margin:0;
  color:rgba(234,240,255,.72);
  line-height:1.7;
}

.card p + p{
  margin-top:12px;
}

.card ul{
  margin:12px 0 0 18px;
  padding:0;
  color:rgba(234,240,255,.72);
}

.card li{
  margin:7px 0;
  line-height:1.66;
}

.card .small{
  margin-top:14px;
  color:rgba(234,240,255,.6);
  font-size:13px;
  line-height:1.65;
}

.title{
  margin-bottom:10px;
  color:#f4f7ff;
  font-size:1rem;
  letter-spacing:-.01em;
}

.note{
  margin-top:14px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
  color:rgba(234,240,255,.64);
  font-size:13px;
  line-height:1.66;
}

.note a,
.card a,
.footer-local a{
  color:rgba(159,224,255,.92);
  text-decoration:none;
}

.note a:hover,
.card a:hover,
.footer-local a:hover{
  text-decoration:underline;
}

.formActions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

.footer-local{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.44);
  font-size:12px;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
}

@media (max-width:760px){
  .hero h1{
    max-width:12ch;
    font-size:clamp(34px,9vw,50px);
    line-height:1.06;
  }

  .hero .sub,
  .hero .lede,
  .hero p.sub,
  .hero p.lede{
    font-size:16px;
    line-height:1.66;
  }

  .hero-card,
  .card{
    padding:18px;
  }

  .section-head{
    margin-top:28px;
  }
}
:root{
  --rt-accent:#7ef0d1;
  --rt-accent-2:#59d7b8;
  --rt-accent-soft:rgba(126,240,209,.12);
  --rt-accent-line:rgba(126,240,209,.18);
  --rt-accent-glow:rgba(126,240,209,.22);
}

.rt-dot{
  background:linear-gradient(180deg, #9af7df, #59d7b8);
  box-shadow:0 0 0 6px rgba(126,240,209,.10);
}

.rt-header__brand:hover,
.rt-header__nav a:hover,
.rt-header__nav a[aria-current="page"],
.rt-header__lang:hover{
  color:var(--rt-accent);
}

.rt-header__cta{
  background:linear-gradient(135deg, rgba(126,240,209,.92), rgba(159,224,255,.78));
  color:#08241f;
  border-color:transparent;
  box-shadow:0 18px 40px rgba(74,186,160,.24);
}

.rt-header__cta:hover{
  box-shadow:0 22px 48px rgba(74,186,160,.30);
}

.conf-badge,
.eyebrow,
.mini-label,
.index-badge,
.section-head .kicker{
  border-color:var(--rt-accent-line);
  background:var(--rt-accent-soft);
  color:rgba(225,255,247,.92);
}

.btn.primary{
  background:linear-gradient(135deg, rgba(126,240,209,.94), rgba(108,230,205,.88));
  color:#08241f;
  border-color:transparent;
  box-shadow:0 18px 40px rgba(74,186,160,.24);
}

.btn.primary:hover{
  box-shadow:0 22px 46px rgba(74,186,160,.3);
}

.signal-dot{
  background:linear-gradient(180deg, #9af7df, #59d7b8);
  box-shadow:0 0 0 6px rgba(126,240,209,.08);
}

.hero-card::after,
.card::after,
.index-card::after{
  background:radial-gradient(circle, rgba(126,240,209,.18), transparent 72%);
}

.note a,
.card a,
.footer-local a,
.conf-text a{
  color:var(--rt-accent);
}

.note a:hover,
.card a:hover,
.footer-local a:hover,
.conf-text a:hover{
  color:#baffef;
}
/* =========================
   Investor top spacing trim
   ========================= */

/* container principal da página */
.investor-page,
.investor-shell,
.investor-main,
.data-room-page,
.data-room-shell{
  padding-top: 0 !important;
}

/* faixa superior / banda confidential */
.confidential-bar,
.investor-topbar,
.data-room-topbar{
  margin-bottom: 10px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* navegação interna do data room */
.investor-subnav,
.data-room-nav,
.investor-nav{
  margin-bottom: 14px !important;
  padding-top: 0 !important;
  padding-bottom: 10px !important;
}

/* aviso de confidencialidade */
.investor-notice,
.confidential-notice,
.data-room-notice{
  margin-top: 0 !important;
  margin-bottom: 18px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

/* hero da página investidor */
.investor-hero,
.data-room-hero,
.investor-overview-hero{
  margin-top: 0 !important;
  padding-top: 8px !important;
}

/* título/bloco principal logo abaixo do topo */
.investor-hero__grid,
.investor-hero__content,
.data-room-hero__grid,
.data-room-hero__content{
  padding-top: 0 !important;
  margin-top: 0 !important;
}
/* =========================================================
   INVESTIDOR PT — rebaixar aviso de confidencialidade real
   e aproximar o hero
   ========================================================= */

/* o aviso acima do hero */
.note{
  margin-top: 6px !important;
  margin-bottom: 10px !important;
  padding: 8px 0 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(234,240,255,.60) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* primeira linha do aviso ("Confidencial / Acesso restrito") */
.note strong,
.note b{
  display: block !important;
  margin: 0 0 4px !important;
  color: rgba(234,240,255,.76) !important;
  font-size: 0.92rem !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}

/* links dentro do aviso, se existirem */
.note a,
.note a:visited{
  color: rgba(126,240,209,.88) !important;
  text-decoration: none !important;
}

/* encurta a faixa entre aviso e hero */
.hero{
  margin-top: 8px !important;
}
.note::before,
.note::after{
  opacity: .22 !important;
  box-shadow: none !important;
}
/* =========================================================
   INVESTIDOR PT — rebaixar o bloco imediatamente antes da hero
   (Safari suporta :has, então isso pega o aviso real)
   ========================================================= */

/* aviso que fica logo antes da hero */
main > *:has(+ .hero){
  margin: 0 0 10px !important;
  padding: 6px 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  max-width: 980px !important;
  color: rgba(234,240,255,.60) !important;
}

/* mata qualquer faixa/linha pesada desse bloco */
main > *:has(+ .hero)::before,
main > *:has(+ .hero)::after{
  opacity: .22 !important;
  box-shadow: none !important;
}

/* primeira linha do aviso */
main > *:has(+ .hero) strong,
main > *:has(+ .hero) b{
  display: block !important;
  margin: 0 0 4px !important;
  color: rgba(234,240,255,.74) !important;
  font-size: 0.92rem !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}

/* texto corrido do aviso */
main > *:has(+ .hero) p,
main > *:has(+ .hero) span,
main > *:has(+ .hero) div{
  color: rgba(234,240,255,.58) !important;
  line-height: 1.45 !important;
}

/* sobe o hero */
.hero{
  margin-top: 6px !important;
}
main > *:has(+ .hero){
  font-size: 14px !important;
}

main > *:has(+ .hero) strong,
main > *:has(+ .hero) b{
  font-size: 0.88rem !important;
}
/* =========================================================
   INVESTIDOR INDEX — corrigir faixa confidencial com simetria
   e reduzir o vazio antes da hero
   ========================================================= */

.page-investidor-index .confidential{
  padding: 6px 0 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.page-investidor-index .confidential .wrap{
  max-width: 1320px !important;   /* volta para a mesma lógica do layout */
  margin: 0 auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  box-sizing: border-box !important;
}

.page-investidor-index .conf-badge{
  display: block !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(234,240,255,.34) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.page-investidor-index .conf-text{
  max-width: 760px !important;
  margin: 0 !important;
  color: rgba(234,240,255,.44) !important;
  font-size: 13px !important;
  line-height: 1.38 !important;
}

/* remove qualquer faixa/efeito antigo */
.page-investidor-index .confidential::before,
.page-investidor-index .confidential::after,
.page-investidor-index .conf-badge::before,
.page-investidor-index .conf-badge::after{
  display: none !important;
}

/* reduz o espaço real entre aviso e hero */
.page-investidor-index .hero{
  margin-top: 0 !important;
}

/* se ainda houver gordura acima da hero, ela costuma vir do main/page */
.page-investidor-index .page{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.page-investidor-index .page > .wrap{
  padding-top: 0 !important;
}
@media (max-width: 980px){
  .page-investidor-index .confidential .wrap{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .page-investidor-index .conf-text{
    max-width: none !important;
    font-size: 12.5px !important;
  }
}
.page-investidor-index .confidential .wrap{
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-left: 88px !important;
  padding-right: 20px !important;
  box-sizing: border-box !important;
}
@media (max-width: 980px){
  .page-investidor-index .confidential .wrap{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}
/* =========================================================
   INVESTIDOR — CONFIDENTIAL GLOBAL (todas as páginas)
   ========================================================= */

/* seção inteira */
.confidential{
  padding: 6px 0 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* mantém alinhamento com o layout (simetria correta) */
.confidential .wrap{
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-left: 88px !important;
  padding-right: 20px !important;
  box-sizing: border-box !important;
}

/* badge vira micro-label institucional */
.conf-badge{
  display: block !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(234,240,255,.34) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

/* texto vira legenda */
.conf-text{
  max-width: 760px !important;
  margin: 0 !important;
  color: rgba(234,240,255,.44) !important;
  font-size: 13px !important;
  line-height: 1.38 !important;
}

/* remove qualquer faixa/linha pesada */
.confidential::before,
.confidential::after,
.conf-badge::before,
.conf-badge::after{
  display: none !important;
}

/* aproxima a hero em TODAS as páginas */
.hero{
  margin-top: 2px !important;
}

/* =========================================================
   MOBILE (mantém responsividade correta)
   ========================================================= */

@media (max-width: 980px){
  .confidential .wrap{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .conf-text{
    max-width: none !important;
    font-size: 12.5px !important;
  }

  .hero{
    margin-top: 6px !important;
  }
}
/* =========================================================
   INVESTIDOR — reduzir o vazio real entre confidential e hero
   ========================================================= */

/* faixa confidencial mais curta */
.confidential{
  padding-top: 4px !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* remove gordura estrutural logo depois do confidential */
.confidential + .page{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* remove gordura do container interno do main */
.confidential + .page > .wrap{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* aproxima o hero de verdade */
.confidential + .page .hero{
  margin-top: 0 !important;
}

/* se houver algum primeiro bloco antes do hero, zera também */
.confidential + .page > .wrap > *:first-child{
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* =========================================================
   FOOTER INVESTIDOR — rebaixar bloco editorial acima das colunas
   ========================================================= */

/* parágrafo institucional acima do grid */
.rt-footer__closing-band{
  padding: 8px 0 10px !important;
  border-bottom: 1px solid rgba(234,240,255,.04) !important;
}

.rt-footer__closing-kicker{
  margin-bottom: 4px !important;
  color: rgba(234,240,255,.28) !important;
  font-size: 10px !important;
  letter-spacing: .08em !important;
}

.rt-footer__closing-copy{
  max-width: 860px !important;
  color: rgba(234,240,255,.52) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* link dentro desse texto */
.rt-footer__closing-copy a,
.rt-footer__closing-link{
  color: rgba(159,224,255,.70) !important;
  text-decoration: none !important;
}

.rt-footer__closing-copy a:hover,
.rt-footer__closing-link:hover{
  color: rgba(234,240,255,.90) !important;
}

/* linha de “sinais” / claims logo abaixo */
.rt-footer__signal-layer{
  gap: 8px !important;
  padding: 10px 0 14px !important;
}

.rt-footer__signal{
  min-height: 28px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.015) !important;
  border: 1px solid rgba(255,255,255,.04) !important;
  color: rgba(234,240,255,.42) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

/* encurta a entrada do grid principal do footer */
.rt-footer__grid{
  padding-top: 8px !important;
}
/* =========================================================
   INVESTIDOR — compactar bloco institucional antes do footer
   (independente de classes internas)
   ========================================================= */

/* alvo: último bloco antes do footer */
main > *:has(+ footer),
main > *:has(+ .rt-footer),
main > *:has(+ .footer-local){

  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;

  gap: 10px !important;

  padding: 8px 0 !important;
  margin: 0 !important;

  border-top: 1px solid rgba(234,240,255,.04) !important;
  border-bottom: 0 !important;

  background: transparent !important;
  box-shadow: none !important;
}

/* todo texto dentro vira inline e leve */
main > *:has(+ footer) * ,
main > *:has(+ .rt-footer) * ,
main > *:has(+ .footer-local) * {

  display: inline !important;

  font-size: 12px !important;
  line-height: 1.4 !important;

  color: rgba(234,240,255,.42) !important;

  margin: 0 !important;
  padding: 0 !important;
}

/* títulos ficam só levemente destacados */
main > *:has(+ footer) strong,
main > *:has(+ footer) b,
main > *:has(+ .rt-footer) strong,
main > *:has(+ .rt-footer) b,
main > *:has(+ .footer-local) strong,
main > *:has(+ .footer-local) b{

  color: rgba(234,240,255,.62) !important;
  font-weight: 600 !important;
}

/* links discretos */
main > *:has(+ footer) a,
main > *:has(+ .rt-footer) a,
main > *:has(+ .footer-local) a{

  color: rgba(159,224,255,.70) !important;
  text-decoration: none !important;
}

main > *:has(+ footer) a:hover,
main > *:has(+ .rt-footer) a:hover,
main > *:has(+ .footer-local) a:hover{

  color: rgba(234,240,255,.90) !important;
}

/* reduz altura do footer após isso */
footer,
.rt-footer{
  margin-top: 10px !important;
}