/* Aggressive Navbar Top Gap Fix - Loads after Bootstrap to override defaults */

/* Complete reset - override ALL possible sources of spacing */
html {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    height: 100%;
}

body {
    margin: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    border: 0 !important;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* Remove ALL spacing from body's first element (navbar) - CRITICAL */
body > *:first-child {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    flex-shrink: 0;
}

/* Aggressive navbar positioning - override Bootstrap completely */
nav.navbar,
.navbar,
body > nav,
body > nav.navbar,
body > nav.navbar:first-child,
.navbar.navbar-expand-lg,
.navbar.navbar-dark,
.navbar.bg-primary,
.navbar.navbar-expand-lg.navbar-dark.bg-primary {
    margin-top: -25px !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
    top: 0 !important;
    position: relative !important;
    border-top: 0 !important;
    border-top-width: 0 !important;
    border-radius: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    transform: translateY(0) !important;
    vertical-align: top !important;
}

/* Ensure navbar container doesn't add spacing */
.navbar .container,
.navbar .container-fluid {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Remove any potential pseudo-elements creating space */
body::before,
html::before,
.navbar::before {
    display: none !important;
    content: none !important;
}
