/*
 * Ativa Nautica
 * Catalog Navigation 2026
 */


/* ==================================================
   VOLTAR AO TOPO
   ================================================== */

.ativa-back-to-top {
    position: fixed;

    z-index: 99990;

    right: 22px;
    bottom: 96px;

    min-width: 78px;
    height: 42px;

    padding: 0 14px;

    border:
        1px solid
        rgba(27, 56, 114, .24);

    border-radius: 999px;

    background:
        #ffffff;

    color:
        #1b3872;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 7px;

    font: inherit;

    font-size: 12px;
    font-weight: 700;

    line-height: 1;

    box-shadow:
        0 5px 20px
        rgba(17, 24, 39, .10);

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transform:
        translateY(8px);

    cursor: pointer;

    transition:
        opacity 160ms ease,
        transform 160ms ease,
        visibility 160ms ease,
        border-color 160ms ease;
}


.ativa-back-to-top.is-visible {
    opacity: 1;

    visibility: visible;

    pointer-events: auto;

    transform:
        translateY(0);
}


.ativa-back-to-top:hover {
    border-color:
        #1b3872;

    background:
        #f6f8fc;
}


.ativa-back-to-top__arrow {
    color:
        #ed7b35;

    font-size:
        17px;

    font-weight:
        700;

    line-height:
        1;
}


.ativa-back-to-top:focus-visible {
    outline:
        3px solid
        rgba(237, 123, 53, .42);

    outline-offset:
        2px;
}


/*
 * Não exibe por cima do drawer.
 */
body.ativa-filter-open-v3
.ativa-back-to-top {
    opacity: 0 !important;

    visibility: hidden !important;

    pointer-events: none !important;
}


/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    .ativa-back-to-top {
        right: 16px;
        bottom: 94px;

        min-width: 72px;

        height: 40px;

        padding:
            0 12px;

        font-size:
            11.5px;
    }
}


/* ==================================================
   REDUCED MOTION
   ================================================== */

@media (prefers-reduced-motion: reduce) {

    .ativa-back-to-top {
        transition: none;
    }
}
