/* V23 — logo polish + back to top */

/* Deixa a logo do menu mais nítida usando o arquivo maior e uma área proporcional */
html body .nav__logo{
  width: 92px !important;
  height: 42px !important;
  margin-right: 30px !important;
  flex: 0 0 92px !important;
  overflow: visible !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
html body .nav__logo img{
  width: 92px !important;
  height: auto !important;
  max-height: 42px !important;
  object-fit: contain !important;
  image-rendering: auto !important;
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
  filter:
    drop-shadow(0 0 10px rgba(164, 112, 255, .42))
    drop-shadow(0 0 16px rgba(255, 255, 255, .10)) !important;
  opacity: 1 !important;
}
html body .nav__logo:hover img{
  filter:
    drop-shadow(0 0 14px rgba(164, 112, 255, .70))
    drop-shadow(0 0 18px rgba(255, 220, 140, .18)) !important;
}

/* Remove somente a logo pequena duplicada dentro do hero */
html body .header-main .roi-hero-art__logo{
  display: none !important;
}

/* Reajuste fino do bloco hero depois da remoção da logo pequena */
html body .roi-hero-art__eyebrow{
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}
html body .roi-hero-art__brand .hero-logo-title{
  margin-top: 10px !important;
}

/* Botão Voltar ao Topo */
html body .back-to-top-v23{
  position: fixed;
  right: 28px;
  bottom: 104px;
  z-index: 950;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1px solid rgba(255, 183, 56, .75);
  background:
    radial-gradient(circle at 35% 28%, rgba(255,255,255,.22), transparent 32%),
    linear-gradient(180deg, #ffb11c 0%, #c97400 100%);
  color: #110b03;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow:
    0 18px 42px rgba(0,0,0,.55),
    0 0 28px rgba(255, 166, 0, .28),
    inset 0 1px 0 rgba(255,255,255,.34);
  opacity: 0;
  visibility: hidden;
  transform: translateY(16px) scale(.92);
  transition: opacity .22s ease, visibility .22s ease, transform .22s ease, filter .22s ease;
}
html body .back-to-top-v23.is-visible{
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}
html body .back-to-top-v23:hover{
  filter: brightness(1.08);
  transform: translateY(-3px) scale(1.03);
}
html body .back-to-top-v23 svg{
  width: 22px;
  height: 22px;
  display: block;
  stroke-width: 2.8;
}
html body .back-to-top-v23::after{
  content: "TOPO";
  position: absolute;
  right: 62px;
  top: 50%;
  transform: translateY(-50%);
  height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(7, 12, 18, .92);
  border: 1px solid rgba(255, 183, 56, .42);
  color: #f6d690;
  font: 900 11px/28px Arial, sans-serif;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}
html body .back-to-top-v23:hover::after{
  opacity: 1;
}

@media (max-width: 1180px){
  html body .nav__logo{
    width: 78px !important;
    flex-basis: 78px !important;
    margin-right: 18px !important;
  }
  html body .nav__logo img{width:78px !important;}
}
@media (max-width: 767px){
  html body .nav__logo{
    width: 70px !important;
    flex-basis: 70px !important;
    height: 36px !important;
  }
  html body .nav__logo img{width:70px !important;max-height:36px !important;}
  html body .back-to-top-v23{
    right: 18px;
    bottom: 86px;
    width: 48px;
    height: 48px;
  }
  html body .back-to-top-v23::after{display:none;}
}
