/* RESET & BASE */
* { margin: 0; padding: 0; box-sizing: border-box; }
:root { --bg: #080808; --text: #e0e0e0; --gold: #C5A059; --font-head: 'Cinzel', serif; --font-body: 'Montserrat', sans-serif; }
body { background: var(--bg); color: var(--text); font-family: var(--font-body); overflow-x: hidden; }

/* LOADER & NOISE */
.loader-overlay { position: fixed; top:0; left:0; width:100%; height:100%; background:#000; z-index:9999; display:flex; justify-content:center; align-items:center; animation: fadeOutLoader 1s ease 1.5s forwards; pointer-events:none; }
.loader-content { color: var(--gold); font-family: var(--font-head); letter-spacing:5px; font-size:1.2rem; }
@keyframes fadeOutLoader { to { opacity:0; visibility:hidden; } }
.noise { position:fixed; top:0; left:0; width:100%; height:100%; background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MDAiIGhlaWdodD0iNTAwIj48ZmlsdGVyIGlkPSJub2lzZSI+PGZlVHVyYnVsZW5jZSB0eXBlPSJmcmFjdGFsTm9pc2UiIGJhc2VGcmVxdWVuY3k9IjAuNjUiIG51bU9jdGF2ZXM9IjMiIHN0aXRjaFRpbGVzPSJzdGl0Y2giLz48L2ZpbHRlcj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWx0ZXI9InVybCgjbm9pc2UpIiBvcGFjaXR5PSIwLjA1Ii8+PC9zdmc+'); pointer-events:none; z-index:90; opacity:0.4; }

/* NAV */
.navbar { position:fixed; top:0; width:100%; padding:20px 40px; display:flex; justify-content:space-between; align-items:center; z-index:100; mix-blend-mode:difference; }
.nav-logo-small img { height: 40px; width: auto; opacity: 0.8; } /* Petit logo discret en haut */
.nav-cta { color:#fff; text-decoration:none; text-transform:uppercase; font-size:0.8rem; letter-spacing:2px; border:1px solid rgba(255,255,255,0.3); padding:10px 25px; border-radius:50px; transition:0.3s; }
.nav-cta:hover { background:#fff; color:#000; }

/* HERO MODIFIÉ */
.hero { height:100vh; position:relative; overflow:hidden; display:flex; justify-content:center; align-items:center; text-align:center; }
.hero-bg { position:absolute; top:0; left:0; width:100%; height:100%; z-index:0; }
.parallax-img { width:100%; height:110%; object-fit:cover; }
.overlay { position:absolute; top:0; left:0; width:100%; height:100%; background:linear-gradient(to bottom, rgba(0,0,0,0.2), rgba(0,0,0,0.7)); }

.hero-content { 
    position:relative; z-index:2; 
    display: flex; flex-direction: column; align-items: center; /* Centrage du logo et texte */
}

/* Style du Gros Logo Hero */
.hero-big-logo {
    width: 220px; /* Taille ajustable */
    height: auto;
    margin-bottom: 40px; /* Espace entre logo et titre */
    filter: drop-shadow(0 5px 10px rgba(0,0,0,0.3));
}

.hero-content h1 { font-family:var(--font-head); font-size:4rem; line-height:1.1; display:flex; flex-direction:column; text-transform:uppercase; }
.gold-text { color:var(--gold); font-style:italic; }
.hero-content p { margin-top:20px; font-size:0.9rem; letter-spacing:5px; text-transform:uppercase; }

/* SECTIONS */
.intro { padding:100px 20px; text-align:center; }
.manifesto { font-family:var(--font-head); font-size:1.8rem; color:#ccc; max-width:800px; margin:0 auto; line-height:1.6; }
.collection { padding:50px 5%; max-width:1400px; margin:0 auto; }
.card { display:flex; align-items:center; gap:50px; margin-bottom:150px; }
.card.reverse { flex-direction:row-reverse; }
.card-img { flex:1.2; height:60vh; overflow:hidden; position:relative; }
.card-img img { width:100%; height:100%; object-fit:cover; transition:transform 1s; }
.card:hover .card-img img { transform:scale(1.05); }
.card-text { flex:1; position:relative; }
.num { font-family:var(--font-head); font-size:6rem; color:#1a1a1a; position:absolute; top:-60px; left:0; z-index:-1; }
.card-text h2 { font-family:var(--font-head); font-size:2.5rem; margin-bottom:10px; }
.sub { color:var(--gold); text-transform:uppercase; letter-spacing:3px; font-size:0.8rem; margin-bottom:20px; }
.desc { color:#999; line-height:1.6; margin-bottom:30px; }
.btn-link { display:inline-block; color:#fff; text-decoration:none; text-transform:uppercase; letter-spacing:2px; font-size:0.8rem; border-bottom:1px solid var(--gold); padding-bottom:5px; }
footer { text-align:center; padding:50px; border-top:1px solid #1a1a1a; color:#555; }

/* RESPONSIVE */
@media(max-width: 768px) {
    .card, .card.reverse { flex-direction:column; margin-bottom:80px; }
    .card-img { height:40vh; width:100%; }
    .hero-content h1 { font-size:2.5rem; }
    .hero-big-logo { width: 150px; margin-bottom: 25px; } /* Logo plus petit sur mobile */
    .nav-logo-small img { height:30px; }
}
