html, body {
    margin: 0 !important;
    padding: 0 !important;
}

body > .main-header {
    margin-top: 0 !important;
    top: 0 !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
}

body:not(.home-page):not(.header-hidden) > .main-content {
    margin-top: 0 !important;
    padding-top: 56px !important;
}

body > .main-content > :first-child,
body > .main-content > .container:first-child > :first-child {
    margin-top: 0 !important;
}

body.admin-page .main-header {
    display: block !important;
}

body.admin-page .admin-nav {
    top: 0 !important;
    min-height: 100vh !important;
    z-index: 2500 !important;
}

@media (max-width: 768px) {
    body:not(.home-page):not(.header-hidden) > .main-content {
        padding-top: 54px !important;
    }

    body.admin-page .admin-nav {
        top: 0 !important;
        min-height: 100vh !important;
    }

    body.header-hidden .main-header {
        display: flex !important;
    }

    body.header-hidden .main-content {
        padding-top: 0 !important;
    }
}
