.header-fixed,
.header-fixed * {
    box-sizing: border-box;
}

@font-face {
    font-family : Grave;
    src: url(font/GravePresse-ExtraBold.otf);
}
@font-face {
    font-family : League;
    src: url(font/League_Spartan/LeagueSpartan-VariableFont_wght.ttf);
}

header, .navbar-brut, .navbar-brut * {
    font-family: Grave !important;
    font-weight: 800 !important;
    letter-spacing: 1px;
}

/* Header fixed pour rester toujours visible */
.header-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: #fff;
    border-bottom: 1px solid #000;
    transition: box-shadow 0.25s ease;
}

/* État scrolled */
.header-fixed.scrolled {
    box-shadow:
        0 8px 20px #8d8d8d,
        0 4px 10px rgba(183, 0, 255, 0.15);
}

/* Navbar identique page projet */
.navbar-brut {
    width: 100%;
    padding: 14px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: Grave !important;
    font-weight: 800 !important;
    font-size: 1.15rem !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

/* Logo */
.logo-brut.navbar-brand {
    display: inline-flex;
    align-items: center;
    color: #000;
    text-decoration: none;
    font-weight: 900;
}
.logo-brut img {
    width: 50px;
    height: auto;
    display: inline-block;
    vertical-align: middle;
}

/* Liens */
.nav-links .nav-link,
.navbar-brut .nav-link {
    font-family: Grave !important;
    font-weight: 800 !important;
    font-size: 1.15rem !important;    text-transform: uppercase !important;
    color: #000 !important;
    text-decoration: none;
    padding: 6px 8px;
}
.nav-links {
    display: flex;
    align-items: center;
    gap: 25px !important; /* spacing identique à ta page projet */
}

.navbar-brut .nav-link:hover {
    background: #eaeaea;
    color: #000 !important;
    transition: background 0.15s ease;
}

/* Burger */
.navbar-toggler {
    border: none;
    background: transparent;
    padding: .25rem .5rem;
}
.navbar-toggler-icon {
    background-image: none;
}
.navbar-toggler .bar {
    display: block;
    width: 22px;
    height: 2px;
    margin: 4px 0;
    background: #000;
}

/* Ajustements mobiles */
@media (max-width: 576px) {
    .navbar-brut { font-size: 1rem; padding: 12px 0; }
    .nav-links { gap: 14px; }
    .logo-brut img { width: 44px; }
}

/* Body padding pour fixed header */
body {
    padding-top: 78px; /* hauteur exacte du header */
}
