/* navigation */
.site-nav{
  position:fixed;
  top:0; left:0; right:0;
  z-index:50;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 24px;
  background:transparent;
  transition:background 0.3s ease, border-color 0.3s ease, padding 0.3s ease;
  border-bottom:1px solid transparent;
}
.site-nav.scrolled{
  background:rgba(10,9,8,0.92);
  border-bottom-color:rgba(232,228,221,0.08);
  padding:14px 24px;
  backdrop-filter:blur(6px);
}

.nav-inner{
  max-width:var(--container-max);
  margin:0 auto;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.nav-logo{
  font-family:var(--font-display);
  font-weight:700;
  font-size:16px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--blanc-casse);
  text-decoration:none;
}

.nav-links{
  display:flex;
  align-items:center;
  gap:28px;
  list-style:none;
}
.nav-links a{
  font-family:var(--font-display);
  font-size:12px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--acier-clair);
  text-decoration:none;
  transition:color 0.2s ease;
}
.nav-links a:hover{color:var(--blanc-casse);}

.nav-toggle{
  display:none;
  background:transparent;
  border:none;
  color:var(--blanc-casse);
  cursor:pointer;
  padding:4px;
}
.nav-toggle svg{width:22px; height:22px;}

@media (max-width:860px){
  .nav-links{
    position:fixed;
    top:0; right:0;
    height:100vh;
    width:min(280px, 80vw);
    background:var(--charbon);
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:24px;
    padding:0 32px;
    transform:translateX(100%);
    transition:transform 0.3s ease;
    border-left:1px solid rgba(232,228,221,0.08);
  }
  .nav-links.open{transform:translateX(0);}
  .nav-toggle{display:block;}
}

/* footer */
.site-footer{
  background:var(--charbon);
  border-top:1px solid rgba(232,228,221,0.08);
  padding:56px 0 32px;
}
.footer-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:32px;
  margin-bottom:40px;
}
.footer-logo{
  font-family:var(--font-display);
  font-weight:700;
  font-size:20px;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--blanc-casse);
}
.footer-slogan{
  font-size:12px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--acier-clair);
  margin-top:8px;
}
.footer-links{
  display:flex;
  gap:32px;
  flex-wrap:wrap;
}
.footer-col-title{
  font-family:var(--font-display);
  font-size:11px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--jaune-ind);
  margin-bottom:12px;
}
.footer-col a{
  display:block;
  font-size:13px;
  color:var(--acier-clair);
  text-decoration:none;
  margin-bottom:8px;
  transition:color 0.2s ease;
}
.footer-col a:hover{color:var(--blanc-casse);}

.footer-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  padding-top:24px;
  border-top:1px solid rgba(232,228,221,0.08);
  font-size:12px;
  color:var(--acier-clair);
}
.footer-admin-link{
  color:var(--acier-clair);
  opacity:0.35;
  text-decoration:none;
  font-size:11px;
  transition:opacity 0.2s ease;
}
.footer-admin-link:hover{opacity:0.8;}

.footer-hidden-link{
  color:inherit;
  text-decoration:none;
}
.footer-hidden-link:hover{color:var(--jaune-ind);}
