/* ══════════════════════════════════════
   SIDNEY GILSON — Feuille de style globale
   ══════════════════════════════════════ */

@font-face { font-family:"Minion Pro"; src:url("fonts/MinionPro-Regular.otf") format("opentype"); font-weight:400; font-style:normal; }
@font-face { font-family:"Minion Pro"; src:url("fonts/MinionPro-It.otf") format("opentype"); font-weight:400; font-style:italic; }
@font-face { font-family:"Minion Pro"; src:url("fonts/MinionPro-Medium.otf") format("opentype"); font-weight:500; font-style:normal; }
@font-face { font-family:"Minion Pro"; src:url("fonts/MinionPro-Semibold.otf") format("opentype"); font-weight:600; font-style:normal; }
@font-face { font-family:"Minion Pro"; src:url("fonts/MinionPro-Bold.otf") format("opentype"); font-weight:700; font-style:normal; }
@font-face { font-family:"Minion Pro"; src:url("fonts/MinionPro-BoldIt.otf") format("opentype"); font-weight:700; font-style:italic; }

/* ── Variables ── */
:root {
  --gold:        #c9a84c;
  --gold-light:  #e2c97e;
  --gold-dim:    rgba(201,168,76,0.75);
  --gold-faint:  rgba(201,168,76,0.15);
  --text:        #d4c4b0;
  --dark:        rgba(4,0,0,0.65);
  --dark-card:   rgba(25,5,5,0.85);
  --red-btn:     rgba(63,1,1,0.85);
  --red-hover:   rgba(90,5,5,0.95);
}

/* ── Reset ── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

body {
  background-color: #1a0303;
  background-image:url('SITE_INTERNET_CARD-06.png');
  background-size:cover;
  background-position:center center;
  background-attachment:fixed;
  background-repeat:no-repeat;
  color:var(--text);
  font-family:'Poppins',sans-serif;
  min-height:100vh;
  display:flex; flex-direction:column;
}
body::before {
  content:''; position:fixed; inset:0;
  background:var(--dark); pointer-events:none; z-index:0;
}
.wrapper { position:relative; z-index:1; flex:1; }

/* ── Header & Nav ── */
header {
  display:flex; flex-direction:column;
  align-items:center; padding:48px 24px 32px; gap:32px;
}
.logo { width:120px; height:120px; }
.logo img { width:100%; height:100%; object-fit:contain; border-radius:50%; }

nav { display:flex; gap:8px; flex-wrap:wrap; justify-content:center; }
nav a {
  text-decoration:none; font-family:'Poppins',sans-serif;
  font-size:1rem; font-weight:400; letter-spacing:.04em;
  color:var(--text); padding:8px 22px; border-radius:999px;
  transition:color .25s, background .25s, border-color .25s;
}
nav a:hover { color:var(--gold-light); }
nav a.active {
  background:rgba(63,1,1,0.85);
  border:2px solid var(--gold);
  color:#fff;
}

/* ── Buttons ── */
.btn, .btn-submit, .btn-login {
  display:inline-block; text-decoration:none; cursor:pointer;
  font-family:'Poppins',sans-serif; font-size:.9rem; font-weight:500;
  letter-spacing:.04em; padding:11px 36px; border-radius:999px;
  background:var(--red-btn);
  border:2px solid var(--gold);
  color:#fff;
  transition:background .25s, border-color .25s;
}
.btn:hover, .btn-submit:hover, .btn-login:hover {
  background:var(--red-hover);
  border-color:var(--gold-light);
}

/* ── Divider ── */
.divider {
  width:60px; height:1px;
  background:linear-gradient(to right, transparent, var(--gold), transparent);
  margin:32px auto;
}

/* ── Cards ── */
.card {
  background:var(--dark-card);
  border:2px solid var(--gold-dim);
  border-radius:16px;
  transition:border-color .3s, transform .3s;
}
.card:hover { border-color:var(--gold); transform:translateY(-3px); }

/* ── Footer ── */
footer {
  position:relative; z-index:1;
  border-top:2px solid var(--gold-dim);
  padding:32px 40px;
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:16px;
  background:rgba(8,2,2,0.4);
}
.footer-left { font-size:.78rem; color:rgba(201,168,76,0.5); letter-spacing:.06em; }
.footer-right { display:flex; gap:20px; align-items:center; }
.footer-right a { text-decoration:none; font-size:.82rem; color:var(--text); transition:color .2s; }
.footer-right a:hover { color:var(--gold-light); }

/* ── Nav profil membre ── */
.nav-profile-trigger {
  text-decoration:none; font-family:'Poppins',sans-serif; font-size:.9rem;
  font-weight:500; color:var(--gold-light); cursor:pointer;
}
.nav-profile-menu {
  display:none; position:absolute; top:calc(100% + 10px); right:0;
  background:rgba(10,2,2,0.97); border:1px solid var(--gold-dim); border-radius:10px;
  padding:8px; min-width:160px; z-index:300; flex-direction:column; gap:2px;
  box-shadow:0 8px 24px rgba(0,0,0,0.5);
}
.nav-profile-menu.open { display:flex; }
.nav-profile-menu a {
  text-decoration:none; font-size:.82rem; color:var(--text); padding:8px 12px;
  border-radius:6px; transition:background .2s, color .2s;
}
.nav-profile-menu a:hover { background:rgba(201,168,76,0.1); color:var(--gold-light); }
.nav-profile-menu a#navLogoutBtn { color:#e07070; }
.nav-profile-menu a#navLogoutBtn:hover { background:rgba(200,80,80,0.1); color:#ff8080; }
.hamburger {
  display:none; flex-direction:column; gap:5px;
  cursor:pointer; padding:8px; z-index:300;
  position:fixed; top:20px; right:20px;
  width:40px; height:40px;
  background:rgba(4,0,0,0.7);
  border:1px solid rgba(201,168,76,0.5);
  border-radius:8px;
  align-items:center; justify-content:center;
}
.hamburger span { display:block; width:18px; height:1.5px; background:var(--gold); transition:all .3s; border-radius:2px; }
.hamburger.open span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity:0; }
.hamburger.open span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }
.nav-mobile {
  display:none; position:fixed; top:0; left:0; width:0; height:0; overflow:hidden;
  background:rgba(4,0,0,0.97); z-index:200;
  flex-direction:column; align-items:center; justify-content:center; gap:32px;
}
.nav-mobile.open { display:flex; width:100vw; height:100vh; }
.nav-mobile a { text-decoration:none; font-family:'Poppins',sans-serif; font-size:1.4rem; font-weight:400; color:var(--text); letter-spacing:.08em; transition:color .2s; }
.nav-mobile a:hover, .nav-mobile a.active { color:var(--gold-light); }

/* ── Animations ── */
@keyframes fadeIn  { from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);} }
@keyframes fadeUp  { from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);} }
@keyframes fadeDown{ from{opacity:0;transform:translateY(-18px);}to{opacity:1;transform:translateY(0);} }

/* ── Responsive ── */
@media(max-width:768px) {
  nav { display:none; }
  .hamburger { display:flex; }
  footer { flex-direction:column; text-align:center; }
  .footer-right { flex-direction:column; gap:10px; }
}
