/* ==========================================================================
   ESA Shop Layout — Customer-facing pages
   Applied to: product grid, product detail, cart, checkout, orders, wishlist
   ========================================================================== */

/* Hide admin sidebar and go full-width */
html body .main-nav,
html body .button-sm-hover,
html body .button-toggle-menu { display: none !important; }

html body .page-content { margin-left: 0 !important; padding-left: 0 !important; width: 100% !important; }

html body .topbar { margin-left: 0 !important; left: 0 !important; width: 100% !important; }

html[data-sidenav-size] body .page-content,
html[data-sidenav-size="default"] body .page-content,
html[data-sidenav-size="sm-hover"] body .page-content,
html[data-sidenav-size="sm-hover-active"] body .page-content { margin-left: 0 !important; }

html[data-sidenav-size] body .topbar,
html[data-sidenav-size="default"] body .topbar,
html[data-sidenav-size="sm-hover"] body .topbar { margin-left: 0 !important; left: 0 !important; }

/* Shop branded topbar — dark blue */
html body .topbar {
    background: #004A99 !important;
    border-bottom: none !important;
    box-shadow: 0 2px 8px rgba(0,74,153,0.15) !important;
}
html body .topbar .topbar-button,
html body .topbar .fs-32,
html body .topbar .fs-28,
html body .topbar .fs-22,
html body .topbar h4.topbar-button { color: #FFFFFF !important; }
html body .topbar .topbar-button:hover { opacity: 0.85 !important; color: #FFFFFF !important; }
html body .topbar .topbar-search { display: none !important; }
html body .topbar .shop-link { display: none !important; }

/* Login button on shop — orange */
html body .topbar .btn { background: #FD7E14 !important; border-color: #FD7E14 !important; color: #fff !important; }
html body .topbar .btn:hover { background: #E86F0A !important; }

/* Badge visibility on dark topbar */
html body .topbar .topbar-badge { background: #EF4444 !important; }

/* Center content at max-width */
html body .topbar .container-fluid,
html body .page-content > .container-fluid {
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
}

@media (min-width: 1600px) {
    html body .topbar .container-fluid,
    html body .page-content > .container-fluid {
        padding-left: 48px !important;
        padding-right: 48px !important;
    }
}

@media (max-width: 767px) {
    html body .topbar .container-fluid,
    html body .page-content > .container-fluid {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}

/* Shop page background */
html body .page-content { background: #F8FAFC !important; }

/* Footer styling */
html body .footer { margin-left: 0 !important; }
