@media (min-width: 761px) {
  .home-mobile-back-to-top-positioner {
    display: none;
  }
}

@media (max-width: 760px) {
  .home-mobile-back-to-top-positioner {
    position: fixed;
    right: 16px;
    bottom: calc(16px + env(safe-area-inset-bottom, 0px));
    z-index: 80;
    width: 48px;
    height: 48px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-30%) translateY(10px) scale(.96);
    transition: opacity .24s ease-out, visibility 0s linear .24s, transform .24s ease-out, bottom .22s ease;
  }
  .home-mobile-back-to-top-positioner.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-30%) translateY(0) scale(1);
    transition-delay: 0s;
  }
  .home-mobile-back-to-top-positioner.is-footer-visible {
    bottom: calc(92px + env(safe-area-inset-bottom, 0px));
  }
  .home-mobile-back-to-top {
    width: 100%;
    height: 100%;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    appearance: none;
    border: 0;
    border-radius: 12px;
    outline: 0;
    background: linear-gradient(180deg, rgba(22, 35, 42, .98) 0%, rgba(10, 20, 26, .98) 100%);
    color: rgba(235, 243, 246, .82);
    box-shadow: 0 5px 10px rgba(0, 0, 0, .30), 0 10px 24px rgba(0, 0, 0, .18), inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 -1px 0 rgba(0, 0, 0, .24);
    cursor: pointer;
    transition: transform .24s ease-out, color .22s ease, background .22s ease, box-shadow .22s ease;
  }
  .home-mobile-back-to-top svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: #66e8fa;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .home-mobile-back-to-top:focus-visible {
    box-shadow: 0 5px 10px rgba(0, 0, 0, .30), 0 10px 24px rgba(0, 0, 0, .18), 0 0 0 2px rgba(207, 233, 237, .32), 0 0 14px rgba(207, 233, 237, .12), inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 -1px 0 rgba(0, 0, 0, .24);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-mobile-back-to-top-positioner {
    transition: none !important;
    transform: translateX(-30%) !important;
  }
}
