:root {
    --gold: #C5A021;
    --clay: #a0522d;
    --bg-main: #0a0a0a;
    --bg-darker: #050505;
}

body {
    background-color: var(--bg-main);
    font-family: 'Montserrat', sans-serif;
}

.bg-darker { background-color: var(--bg-darker); }
.bg-dark-alt { background-color: rgba(255, 255, 255, 0.03); }
.text-gold { color: var(--gold) !important; }
.border-gold { border-color: rgba(197, 160, 33, 0.3) !important; }
.border-clay { border-color: var(--clay) !important; }

h1, h2, h3, h4, h5, .logo {
    font-family: 'Playfair Display', serif;
}

.section-title {
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 2px;
}

/* Grain Historique */
.grain-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: url('https://www.transparenttextures.com/patterns/stardust.png');
    opacity: 0.04; pointer-events: none; z-index: 2000;
}

/* Navbar personnalisée */
.transition-nav {
    background: rgba(10, 10, 10, 0.98);
    border-bottom: 1px solid rgba(197, 160, 33, 0.2);
    transition: all 0.4s ease;
    padding: 15px 0;
}
.nav-link {
    color: #f4f1ea !important;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: 0.3s;
}
.nav-link:hover { color: var(--gold) !important; }
.navbar-brand { color: var(--gold) !important; font-size: 1.8rem; font-weight: bold; }
.custom-toggler { border-color: var(--gold); }
.custom-toggler .navbar-toggler-icon { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(197, 160, 33, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }

/* Hero avec background du dossier TOP */
#hero {
    height: 100vh;
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.8)), url('images/TOP/2.jpg');
    background-size: cover; background-position: center;
}
#hero h1 { color: var(--gold); }

/* Images Présentation */
.project-img-main img { width: 100%; height: 400px; object-fit: cover; }
.project-img-sub img { width: 100%; height: 190px; object-fit: cover; }

/* Effets Equipe */
.member { transition: transform 0.3s ease, border-color 0.3s ease; }
.member:hover { transform: translateY(-5px); border-color: var(--gold) !important; }

/* Galerie d'images */
.gallery-grid img {
    height: 250px; width: 100%; object-fit: cover;
    filter: grayscale(80%) sepia(20%);
    transition: all 0.4s ease;
    cursor: pointer;
}
.gallery-grid img:hover {
    filter: grayscale(0%) sepia(0%);
    transform: scale(1.03);
    box-shadow: 0 10px 20px rgba(0,0,0,0.8);
    z-index: 10; position: relative;
}

/* Partenaires et Presse */
.presse-links a { color: var(--gold); border-bottom: 1px solid var(--gold); padding-bottom: 3px; }
.presse-links a:hover { color: #fff; border-color: #fff; }

.partners-logos img {
    max-height: 80px; max-width: 150px; object-fit: contain;
    filter: grayscale(100%) opacity(0.6); transition: 0.3s;
}
.partners-logos img:hover { filter: grayscale(0%) opacity(1); }

/* Footer */
footer { background-color: #030303; border-top: 1px solid #1a1a1a; }