html {
    scroll-behavior: smooth;
    scroll-padding-top:5.5rem;
}

body {
    font-family: var(--font-macho);
    display:flex;
    flex-direction: column;
    font-size: 1rem;
    font-weight: 400;
    color: var(--base-color-brown);
    background: var(--base-color-white);
    overflow: hidden visible;
    min-height:100vh;
}

.spacer{
    flex:1;
}

th, td {
    text-align: left;
}

a, button, input, select, textarea {
    line-height: normal;
    outline: none !important;
}

.main-menu .nav-link a,
footer ul.footer-nav li a,
.dropdown-item a,
.account-menu a{
    text-decoration: none;
}

a, button {
    transition: all ease-in-out 300ms;
}

.back-to-top {
    border-radius: 25px;
    text-align: center;
    background: #78797a;
    color: #fff;
    display: none;
    width: 40px;
    height: 40px;
    position: fixed;
    right: 30px;
    bottom: 20px;
    opacity: 0.4;
    filter: alpha(opacity=40);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    cursor: pointer;
    z-index: 9999;
}

.back-to-top:before {
    content: '\25B2';
    position: relative;
    font-size: 20px;
    top: 2px;
}

.back-to-top:hover {
    opacity: 1;
    filter: alpha(opacity=100);
}

/* accessibility */

.hidden {
    display: none !important;
}

.m-hidden{
    visibility: visible;
}
.m-visible{
    visibility: hidden;
    position:absolute;
}

@media screen and (max-width: 991px){
    .m-hidden{
        display:none;
    }
    .m-visible{
        visibility: visible;
        position: relative;
    }
}

/* ADMIN */
.alert{
    border-radius: 0px;
}

.admin-section{
    border:1px solid #dee2e6;
    background-color:#f8f9fa;
    padding:0.5rem;
}

.admin-functions-section {
    background-color: #d9e2e8;
    border:none;
    border-radius:4px;
    margin: 4px;
    padding: 20px;
}

.alert.adminonly.alert-success{
    color: #452D34;
    background-color: #f8f9fa;
    border:1px solid #dee2e6;
    border-radius:0px;
}


/* END ADMIN */

.mobile-pay-modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
}

.mobile-pay-modal-content {
    background-color: rgba(225, 225, 225, 1);
    border: 1px solid #888;
    border-radius: 4px;
    margin: 15% auto;
    padding: 20px;
    height: 500px;
    text-align: center;
    width: 500px;
}

/* buy page */

.buy-booking-summary{
    border-bottom: 1px solid var(--base-color-grey-300);
}

