.page {
    -webkit-transition: opacity 0.15s ease;
    transition: opacity 0.15s ease;
    position: absolute;
    margin: 0;
    padding: 0;
    top: 56px;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    background-color: white;
}

.page.selected {
    opacity: 1;
    z-index: 1;
}

.page:not(.selected) {
    opacity: 0;
    z-index: 0;
    pointer-events: none;
}

.page.overlayed {
    pointer-events: none;
}

.page-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow-x: hidden;
    overflow-y: scroll;
}

.ios-safari .page.selected:not(.overlayed) .page-content {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

.ios-safari .page:not(.selected) .page-content,
.ios-safari .page.overlayed .page-content {
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}
