/**
 * Global Centering CSS
 * Aligns common layout containers on mobile/tablet/desktop.
 */

body, html {
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

#page_wrapper {
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    position: relative;
}

/* Prevent Bootstrap row negative margins from shifting content */
.row {
    margin-left: 0;
    margin-right: 0;
}

.site-header .row,
.top-headers-wrapper .row,
#site-top-bar .row {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    max-width: 100%;
}

.container {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    box-sizing: border-box;
}

.container-fluid {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
}

.container-fluid > .container {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
}

.container-fluid > .row {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    box-sizing: border-box;
}

.site-header-wrapper {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    box-sizing: border-box;
}

.site-top-bar-inner {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    box-sizing: border-box;
}

@media (max-width: 992px) {
    .container,
    .site-header-wrapper,
    .site-top-bar-inner {
        padding-left: 15px;
        padding-right: 15px;
    }

    .container-fluid > .row {
        padding-left: 15px;
        padding-right: 15px;
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .container,
    .site-header-wrapper,
    .site-top-bar-inner {
        padding-left: 15px;
        padding-right: 15px;
    }

    .container-fluid > .row {
        padding-left: 15px;
        padding-right: 15px;
        max-width: 100%;
    }
}
