/* Reserve room so the fixed bar does not cover the end of the page */
body {
    padding-bottom: calc(var(--space-lg) + var(--space-sm));
}

.sticky-cta {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 50;
    padding: var(--space-xs) var(--space-sm) calc(var(--space-xs) + env(safe-area-inset-bottom));
    transform: translateY(100%);
    visibility: hidden;
    transition: transform var(--transition), visibility var(--transition);
}

.sticky-cta.visible {
    transform: translateY(0);
    visibility: visible;
}

.sticky-cta .btn {
    display: block;
    width: 100%;
}

@media (min-width: 900px) {
    body {
        padding-bottom: 0;
    }

    .sticky-cta {
        display: none;
    }
}
