/* =========================================================
   Dom Diego · Back to Top · DS v5
   Botão flutuante que aparece após scroll ≥ 800px
   Posicionado acima do WPP FAB
   ========================================================= */

.dd-back-top {
  position: fixed;
  right: 20px;
  bottom: 92px;
  z-index: 145;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--dd-ink, #0A0A0A);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.08);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(10, 10, 10, 0.18);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px) scale(0.9);
  transition: opacity 220ms ease, transform 220ms cubic-bezier(.2,.7,.2,1),
              visibility 0ms linear 220ms, background 160ms ease;
  font-family: inherit;
}
.dd-back-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
  transition: opacity 220ms ease, transform 220ms cubic-bezier(.2,.7,.2,1), background 160ms ease;
}
.dd-back-top:hover {
  background: var(--dd-accent, #7A1F2B);
  transform: translateY(-3px) scale(1.05);
}
.dd-back-top:focus-visible {
  outline: 2px solid var(--dd-gold, #E6C06C);
  outline-offset: 2px;
}
.dd-back-top svg {
  transition: transform 180ms ease;
}
.dd-back-top:hover svg {
  transform: translateY(-2px);
}

/* Mobile: acima do bottom-nav + wpp FAB */
@media (max-width: 900px) {
  .dd-back-top {
    right: 16px;
    bottom: calc(142px + env(safe-area-inset-bottom, 0px));
    width: 40px;
    height: 40px;
  }
  .dd-back-top svg { width: 16px; height: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .dd-back-top {
    transition: opacity 220ms ease, visibility 0ms linear 220ms;
  }
  .dd-back-top.is-visible {
    transition: opacity 220ms ease;
  }
  .dd-back-top:hover { transform: none; }
  .dd-back-top:hover svg { transform: none; }
}
