/* ============================================================================
   NEXT CORE — nc-nav.css
   Nav unique et partagée par TOUTES les pages du site.
   Une seule source de vérité : tu modifies ici, tout le site suit.

   Règles scopées sous #stickyTop : elles gagnent toujours sur l'ancien
   CSS de nav des pages (spécificité supérieure), quel que soit l'ordre.
   Le header est "sticky" : il reste en haut au scroll SANS jamais
   recouvrir le contenu (donc aucun décalage à gérer page par page).
   ============================================================================ */

#stickyTop{
  position:sticky; top:0; left:0; right:0; z-index:1000;
  background:#050506;
}

/* ---------- Barre d'infos (haut) ---------- */
#stickyTop .topinfo{
  display:flex; align-items:center; justify-content:space-between; gap:18px;
  padding:11px 48px;
  background:#0b0b0d;
  border-bottom:1px solid rgba(255,255,255,.05);
  font-family:'Orbitron',sans-serif;
  font-size:.56rem; letter-spacing:2.4px; text-transform:uppercase;
  color:#7d7d86;
}
#stickyTop .ti-l{display:flex; align-items:center; gap:9px; white-space:nowrap}
#stickyTop .ti-dot{
  width:7px; height:7px; border-radius:50%;
  background:#35d07f; box-shadow:0 0 9px rgba(53,208,127,.85);
  animation:ncTiPulse 2.4s ease-in-out infinite; flex:none;
}
@keyframes ncTiPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}
#stickyTop .ti-c{white-space:nowrap}
#stickyTop .ti-r{display:flex; align-items:center; gap:9px; white-space:nowrap}
#stickyTop .ti-r a{color:#7d7d86; text-decoration:none; transition:color .2s}
#stickyTop .ti-r a:hover{color:#fff}
#stickyTop .ti-sep{opacity:.32}
#stickyTop .ti-tel{color:#c9c9d0; font-weight:700}
#stickyTop .ti-tel:hover{color:#ff1a1a}

/* ---------- Nav principale ---------- */
#stickyTop nav{
  position:relative; top:auto; left:auto; right:auto;
  display:flex; align-items:center; justify-content:space-between; gap:26px;
  padding:15px 48px;
  background:#060607;
  backdrop-filter:none;
  border-bottom:1px solid rgba(255,255,255,.07);
  box-shadow:none;
}

/* Logo + signature */
#stickyTop .nav-logo{display:flex; align-items:center; gap:14px; text-decoration:none; flex:none; opacity:1}
#stickyTop .nav-logo img{height:52px; width:52px; border-radius:50%; object-fit:cover; opacity:1}
#stickyTop .nav-word{display:flex; flex-direction:column; line-height:1}
#stickyTop .nav-word b{
  font-family:'Inter',sans-serif; font-weight:800;
  font-size:1.5rem; letter-spacing:-.4px; color:#fff;
}
#stickyTop .nav-word em{
  font-family:'Orbitron',sans-serif; font-style:normal; font-weight:700;
  font-size:.54rem; letter-spacing:4.5px; color:#e00000; margin-top:6px;
}

/* Liens (centrés, sans capitales) */
#stickyTop .nav-links{display:flex; align-items:center; gap:34px; list-style:none; margin:0 auto; padding:0}
#stickyTop .nav-links li{margin:0}
#stickyTop .nav-links a{
  font-family:'Inter',sans-serif; font-size:1rem; font-weight:500;
  letter-spacing:0; text-transform:none;
  color:#e6e6ea; text-decoration:none; transition:color .2s;
  position:relative; padding:0;
}
#stickyTop .nav-links a:hover{color:#fff}
#stickyTop .nav-links a.active{color:#fff; font-weight:600}
#stickyTop .nav-links a.active::before{
  content:''; position:absolute; left:0; right:0; bottom:-7px; height:2px;
  background:#e00000; border-radius:2px;
}

/* Menu déroulant "Services" */
#stickyTop .nav-dropdown{position:relative}
#stickyTop .nav-dropdown > a{cursor:pointer}
#stickyTop .nav-dropdown > a::after{
  content:'▾'; display:inline-block; margin-left:6px;
  font-size:.72rem; line-height:1; transition:transform .2s; vertical-align:middle;
}
#stickyTop .nav-dropdown.open > a::after{transform:rotate(180deg)}
#stickyTop .dropdown-menu{
  display:none; position:absolute; top:calc(100% + 14px); left:50%; transform:translateX(-50%);
  min-width:248px; background:#101013;
  border:1px solid rgba(255,255,255,.09); border-top:2px solid #e00000;
  border-radius:12px; padding:8px; z-index:1001;
  box-shadow:0 22px 60px rgba(0,0,0,.6);
}
#stickyTop .nav-dropdown.open .dropdown-menu{display:block}
#stickyTop .dropdown-menu a{
  display:flex; align-items:center; gap:10px;
  padding:11px 14px; border-radius:8px;
  font-family:'Inter',sans-serif; font-size:.9rem; font-weight:400;
  letter-spacing:0; text-transform:none; color:#b9b9c0; white-space:nowrap;
}
#stickyTop .dropdown-menu a:hover{color:#fff; background:rgba(224,0,0,.12)}
#stickyTop .dropdown-menu a::before{display:none}
#stickyTop .drop-icon{font-size:1rem; width:20px; text-align:center; flex:none}

/* Boutons d'action */
#stickyTop .nav-actions{display:flex; align-items:center; gap:12px; flex:none}
#stickyTop .nbtn{
  font-family:'Inter',sans-serif; font-weight:700; font-size:.82rem;
  letter-spacing:.6px; text-transform:uppercase;
  padding:13px 24px; border-radius:10px;
  text-decoration:none; white-space:nowrap; transition:.2s; display:inline-block;
}
#stickyTop .nbtn-ghost{color:#fff; border:1.5px solid rgba(255,255,255,.26); background:transparent}
#stickyTop .nbtn-ghost:hover{border-color:#fff; background:rgba(255,255,255,.07)}
#stickyTop .nbtn-red{
  color:#fff; border:1.5px solid transparent;
  background:linear-gradient(135deg,#ff2f2f,#c40000);
  box-shadow:0 8px 26px rgba(224,0,0,.4);
}
#stickyTop .nbtn-red:hover{filter:brightness(1.08); transform:translateY(-1px); box-shadow:0 11px 32px rgba(224,0,0,.5)}

/* Burger (mobile) */
#stickyTop .hamburger{display:none; cursor:pointer; flex-direction:column; gap:5px; flex:none; padding:4px}
#stickyTop .hamburger span{display:block; width:24px; height:2px; background:#f5f5f5; transition:.3s}
#stickyTop .hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
#stickyTop .hamburger.open span:nth-child(2){opacity:0}
#stickyTop .hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- Responsive ---------- */
@media(max-width:1240px){
  #stickyTop nav{padding:14px 26px}
  #stickyTop .topinfo{padding:10px 26px}
  #stickyTop .nav-links{gap:24px}
  #stickyTop .nav-links a{font-size:.95rem}
  #stickyTop .nbtn{padding:12px 18px; font-size:.76rem}
}
@media(max-width:1080px){
  #stickyTop .nav-links{display:none; margin:0}
  #stickyTop .hamburger{display:flex}
  /* menu mobile ouvert */
  #stickyTop .nav-links.nc-open{
    display:flex; flex-direction:column; align-items:flex-start;
    position:absolute; top:100%; left:0; right:0;
    background:rgba(5,5,6,.98); backdrop-filter:blur(14px);
    padding:22px 26px; gap:20px;
    border-bottom:1px solid rgba(224,0,0,.3);
    box-shadow:0 22px 50px rgba(0,0,0,.6);
  }
  #stickyTop .nav-links.nc-open .dropdown-menu{
    position:static; transform:none; display:none;
    min-width:0; width:100%; margin-top:10px; box-shadow:none;
  }
  #stickyTop .nav-links.nc-open .nav-dropdown{width:100%}
  #stickyTop .nav-links.nc-open .nav-dropdown.open .dropdown-menu{display:block}
}
@media(max-width:900px){
  #stickyTop .ti-c{display:none}
  #stickyTop .nbtn-ghost{display:none}
}
@media(max-width:720px){
  #stickyTop .topinfo{font-size:.48rem; letter-spacing:1.4px; padding:9px 16px; gap:10px}
  #stickyTop .ti-r a:not(.ti-tel), #stickyTop .ti-sep{display:none}
  #stickyTop nav{padding:12px 16px; gap:12px}
  #stickyTop .nav-logo img{height:42px; width:42px}
  #stickyTop .nav-word b{font-size:1.12rem}
  #stickyTop .nav-word em{font-size:.44rem; letter-spacing:3px}
  #stickyTop .nbtn{padding:11px 15px; font-size:.7rem}
}
@media(max-width:460px){
  #stickyTop .nav-word{display:none}
}
@media(prefers-reduced-motion:reduce){
  #stickyTop .ti-dot{animation:none}
}
