/* Computer Pro Network — Back to Top (corporate accent)
   Higher specificity beats modern-styles.css .back-to-top !important rules. */
body.home-corporate button.back-to-top,
body.site-corporate button.back-to-top,
body button.back-to-top,
button.back-to-top,
#back-to-top.back-to-top,
button.back-to-top-btn {
  position: fixed !important;
  right: 1.25rem !important;
  bottom: 1.5rem !important;
  z-index: 10050 !important;
  width: 48px !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  border: 1px solid var(--cpn-accent-hover, #7F0000) !important;
  background: var(--cpn-accent, #A00000) !important;
  background-image: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 1.35rem !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 20px rgba(25, 27, 24, 0.18) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(6px) !important;
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease, background-color 0.15s ease !important;
  text-decoration: none !important;
}

body.home-corporate button.back-to-top.is-visible,
body.site-corporate button.back-to-top.is-visible,
body button.back-to-top.is-visible,
button.back-to-top.is-visible,
#back-to-top.back-to-top.is-visible,
button.back-to-top-btn.is-visible,
body.home-corporate button.back-to-top.show,
body.site-corporate button.back-to-top.show,
button.back-to-top.show,
button.back-to-top-btn.show {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}

body.home-corporate button.back-to-top:hover,
body.site-corporate button.back-to-top:hover,
body button.back-to-top:hover,
button.back-to-top:hover,
#back-to-top.back-to-top:hover {
  background: var(--cpn-accent-hover, #7F0000) !important;
  background-image: none !important;
  color: #fff !important;
  transform: translateY(0) !important;
}

body.home-corporate button.back-to-top:focus-visible,
body.site-corporate button.back-to-top:focus-visible,
body button.back-to-top:focus-visible,
button.back-to-top:focus-visible {
  outline: 3px solid var(--focus-ring, #F59E0B) !important;
  outline-offset: 3px !important;
}

button.back-to-top span,
button.back-to-top svg {
  pointer-events: none;
  color: #fff !important;
  fill: #fff !important;
}

@media (max-width: 767px) {
  body.home-corporate button.back-to-top,
  body.site-corporate button.back-to-top,
  body button.back-to-top,
  button.back-to-top,
  #back-to-top.back-to-top,
  button.back-to-top-btn {
    right: 1rem !important;
    bottom: 5.5rem !important;
    width: 46px !important;
    height: 46px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.home-corporate button.back-to-top,
  body.site-corporate button.back-to-top,
  body button.back-to-top,
  button.back-to-top,
  #back-to-top.back-to-top,
  button.back-to-top-btn {
    transition: none !important;
    transform: none !important;
  }
}
