@media screen and ( max-width: 959px ) {
    :root {
        --mobile-menu-height: calc( 3.3125rem + 0.0625rem );
        --stiki-review-btn-height: 3.875rem;
    }

    /* Position */

    .legal-to-top {
        z-index: 1;
        left: 1rem;
    }

    .legal-to-top:not( .legal-review-page-main .legal-to-top ):not( .has-mobile-menu .legal-to-top ) {
        bottom: 1.25rem;
    }

    .has-mobile-menu .legal-to-top:not( .legal-review-page-main .legal-to-top ) {
        bottom: calc( 1rem + var( --mobile-menu-height ) );
    }

    .legal-review-page-main:not( .has-mobile-menu .legal-review-page-main ) .legal-to-top {
        bottom: calc( var( --stiki-review-btn-height ) + 0.75rem );
    }

    .has-mobile-menu .legal-review-page-main .legal-to-top {
        bottom: calc( 1rem + var( --mobile-menu-height ) + var( --stiki-review-btn-height ) );
    }

    /* Width and Height */

    .legal-to-top {
        width: 2.5rem;
        height: 2.5rem;
        box-sizing: border-box;
    }

    /* Background */
    
    .legal-to-top:active {
        background-color: var( --Base-base-09 );
    }

    /* Typography */

    .legal-to-top:active::before {
        color: var( --Base-base-01 );
    }
}

@media screen and ( min-width: 960px ) {
    /* Position */

    .legal-to-top {
        bottom: 1.25rem;
        right: 1.25rem;
        z-index: 2;
    }

    /* Width and Height */

    .legal-to-top {
        width: calc( 3rem - ( 0.75rem * 2 ) );
        height: calc( 3rem - ( 0.75rem * 2 ) ); 
    }

    /* Background */

    .legal-to-top:hover {
        background-color: var( --Base-base-09 );
    }

    /* Typography */

    .legal-to-top:hover::before {
        color: var( --Base-base-01 );
    }
}

/* Display */

.legal-to-top {
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.legal-to-top.legal-active {
    display: flex;
}

.legal-to-top:not( .legal-active ) {
    display: none;
}

/* Position */

.legal-to-top {
    position: fixed;
    padding: 0.75rem;
}

.legal-to-top::before {
    transform: rotate(90deg);
}

/* Background */

.legal-to-top {
    background-color: var(--Base-base-01);
    border-radius: 60px;
    border: 2px solid var(--Base-base-09); 
}

/* Typography */

.legal-to-top::before {
    content: '\F104';
    font-family: var( --legal-font-icons );
    font-size: 24px;
    line-height: 24px;
    color: var(--Base-base-09);
}