
.gsnav{
  --gsnav-black:#111;
  --gsnav-gold:#b78a4b;
  --gsnav-ivory:#f7f3eb;
  position:relative;
  z-index:9990;
  width:100%;
  background:var(--gsnav-black);
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  border:0;
}
.gsnav *{box-sizing:border-box}
.gsnav-inner{
  width:min(1440px,calc(100% - 42px));
  min-height:72px;
  margin:0 auto;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:34px;
  align-items:center;
}
.gsnav-brand{
  color:#fff!important;
  text-decoration:none!important;
  white-space:nowrap;
  display:inline-flex;
  align-items:baseline;
  font-family:Georgia,"Times New Roman",serif;
  font-size:29px;
  letter-spacing:-.035em;
  line-height:1;
}
.gsnav-brand-go{font-style:italic;font-weight:400}
.gsnav-brand-dot{margin:0 2px;color:var(--gsnav-gold);font-size:.8em}
.gsnav-brand-styles{font-weight:400}
.gsnav-menu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:34px;
  min-width:0;
}
.gsnav-menu a{
  position:relative;
  color:#fff!important;
  text-decoration:none!important;
  font-size:11px;
  font-weight:500;
  letter-spacing:.12em;
  padding:29px 0 26px;
  white-space:nowrap;
}
.gsnav-menu a:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:18px;
  height:1px;
  background:transparent;
}
.gsnav-menu a:hover,
.gsnav-menu a.is-active{color:var(--gsnav-gold)!important}
.gsnav-menu a.is-active:after{background:var(--gsnav-gold)}
.gsnav-actions{
  display:flex;
  align-items:center;
  gap:11px;
}
.gsnav-icon{
  width:34px;height:34px;
  display:inline-flex;
  align-items:center;justify-content:center;
  border:0;
  background:transparent;
  color:#fff;
  padding:6px;
}
button.gsnav-icon{cursor:pointer}
.gsnav-icon svg{
  width:20px;height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.gsnav-icon:hover{color:var(--gsnav-gold)}
.gsnav-favorite{opacity:.88}
.gsnav-account{position:relative}
.gsnav-account-menu{
  position:absolute;
  right:0;
  top:43px;
  min-width:185px;
  padding:8px 0;
  background:#fff;
  border:1px solid #ded6ca;
  box-shadow:0 10px 30px rgba(0,0,0,.14);
}
.gsnav-account-menu a{
  display:block;
  padding:11px 15px;
  color:#222!important;
  text-decoration:none!important;
  font-size:12px;
}
.gsnav-account-menu a:hover{background:#f7f3eb;color:#8f6937!important}
.gsnav-search{
  border-top:1px solid rgba(255,255,255,.13);
  background:#181818;
}
.gsnav-search form{
  width:min(920px,calc(100% - 42px));
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 0;
}
.gsnav-search label{flex:1}
.gsnav-search input{
  width:100%;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.4);
  background:transparent;
  color:#fff;
  padding:9px 2px;
  outline:0;
  font-size:14px;
}
.gsnav-search input::placeholder{color:#aaa}
.gsnav-search button{
  border:1px solid var(--gsnav-gold);
  background:transparent;
  color:#fff;
  padding:10px 14px;
  font-size:10px;
  letter-spacing:.1em;
  cursor:pointer;
}
.gsnav-mobile-toggle{display:none}
.screen-reader-text{
  border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);
  height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;
}
@media(max-width:1000px){
  .gsnav-inner{
    grid-template-columns:auto auto 1fr;
  }
  .gsnav-mobile-toggle{
    display:inline-flex;
    flex-direction:column;
    gap:4px;
    width:34px;height:34px;
    align-items:center;justify-content:center;
    border:0;background:transparent;cursor:pointer;
  }
  .gsnav-mobile-toggle span:not(.screen-reader-text){
    display:block;width:20px;height:1px;background:#fff;
  }
  .gsnav-menu{
    position:absolute;
    top:72px;
    left:0;right:0;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    background:#111;
    border-top:1px solid rgba(255,255,255,.12);
    padding:8px 21px 17px;
  }
  .gsnav-menu.is-open{display:flex}
  .gsnav-menu a{
    padding:14px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .gsnav-menu a:after{display:none}
  .gsnav-actions{justify-self:end}
}
@media(max-width:520px){
  .gsnav-inner{width:calc(100% - 24px);gap:10px}
  .gsnav-brand{font-size:25px}
  .gsnav-actions{gap:3px}
  .gsnav-icon{width:31px;height:31px}
}

/* =========================================================
   v1.2 — EN-TÊTE UNIQUE
   - masque l'ancien en-tête BuddyBoss/WordPress uniquement
     sur les pages de la nouvelle expérience
   - garde une seule barre noire Go-Styles
   - garantit l'affichage des actions à droite
   ========================================================= */

/* Masquer l'ancien header du thème / BuddyBoss sur les pages ciblées */
body.gsnav-active #masthead,
body.gsnav-active .site-header,
body.gsnav-active .bb-mobile-header,
body.gsnav-active .bb-template-v2 .site-header,
body.gsnav-active .header-aside,
body.gsnav-active .site-header-container,
body.gsnav-active header#masthead,
body.gsnav-active .bb-header-buttons,
body.gsnav-active .header-search-wrap,
body.gsnav-active .bb-header-search{
  display:none!important;
}

/* Éviter un espace résiduel laissé par le thème */
body.gsnav-active .site-content,
body.gsnav-active #content{
  margin-top:0!important;
  padding-top:0!important;
}

/* Barre noire vraiment unique et stable */
.gsnav{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  width:100%!important;
  min-height:72px!important;
}
.gsnav-inner{
  grid-template-columns:minmax(170px,auto) minmax(420px,1fr) auto!important;
  gap:24px!important;
}
.gsnav-menu{
  gap:30px!important;
}
.gsnav-actions{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  justify-self:end!important;
  min-width:120px!important;
  flex:0 0 auto!important;
}
.gsnav-icon{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto!important;
}
.gsnav-favorite{
  display:inline-flex!important;
}
.gsnav-account{
  display:inline-block!important;
}

/* Les 4 entrées validées seulement */
.gsnav-menu a{
  display:inline-block!important;
}
.gsnav-menu a[href*="/boutique"]{
  display:none!important;
}

/* Sur écrans plus étroits, basculer plus tôt sur le menu mobile
   pour préserver recherche / favoris / compte */
@media(max-width:1180px){
  .gsnav-inner{
    grid-template-columns:auto auto 1fr!important;
  }
  .gsnav-mobile-toggle{
    display:inline-flex!important;
  }
  .gsnav-menu{
    position:absolute!important;
    top:72px!important;
    left:0!important;
    right:0!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    background:#111!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
    padding:8px 21px 17px!important;
  }
  .gsnav-menu.is-open{display:flex!important}
}

/* =========================================================
   v1.3 — Barre complète fidèle à la navigation validée
   VITRINES / GO-STYLERS / GO-LOOKERS / GO-MODELS / GO-LIKERS /
   COMMUNAUTÉ / LES FORUMS / TUTOS / DOCS
   ========================================================= */

.gsnav-inner{
  width:min(1540px,calc(100% - 28px))!important;
  grid-template-columns:minmax(145px,auto) minmax(0,1fr) auto!important;
  gap:18px!important;
}
.gsnav-brand{
  font-size:24px!important;
  letter-spacing:.015em!important;
}
.gsnav-menu{
  gap:18px!important;
  justify-content:center!important;
}
.gsnav-menu a{
  font-size:10px!important;
  letter-spacing:.085em!important;
  padding-left:0!important;
  padding-right:0!important;
}
.gsnav-actions{
  min-width:108px!important;
}
@media(max-width:1320px){
  .gsnav-mobile-toggle{display:inline-flex!important}
  .gsnav-inner{grid-template-columns:auto auto 1fr!important}
  .gsnav-menu{
    position:absolute!important;
    top:72px!important;
    left:0!important;
    right:0!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    background:#111!important;
    padding:8px 21px 17px!important;
  }
  .gsnav-menu.is-open{display:flex!important}
  .gsnav-menu a{font-size:11px!important;padding:13px 0!important}
}

/* v1.4 — vrai logo du site + menu desktop complet */
.gsnav-brand{
  min-width:145px!important;
  max-width:190px!important;
  height:52px!important;
  display:flex!important;
  align-items:center!important;
}
.gsnav-real-logo{
  display:block!important;
  width:auto!important;
  max-width:180px!important;
  height:auto!important;
  max-height:48px!important;
  object-fit:contain!important;
}
.gsnav-brand-fallback{
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:23px;
  font-weight:400;
  letter-spacing:.02em;
}
.gsnav-inner{
  width:calc(100% - 24px)!important;
  max-width:1600px!important;
  grid-template-columns:minmax(145px,190px) minmax(0,1fr) auto!important;
  gap:12px!important;
}
.gsnav-menu{
  display:flex!important;
  gap:clamp(8px,1.05vw,18px)!important;
  min-width:0!important;
}
.gsnav-menu a{
  font-size:clamp(8px,.72vw,10px)!important;
  letter-spacing:.055em!important;
}
.gsnav-actions{min-width:104px!important;gap:5px!important}

/* On conserve le menu complet sur les ordinateurs.
   Le menu hamburger ne prend le relais que sur tablette/mobile. */
@media(min-width:1101px){
  .gsnav-mobile-toggle{display:none!important}
  .gsnav-menu{
    position:static!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    border:0!important;
    padding:0!important;
  }
}
@media(max-width:1100px){
  .gsnav-inner{grid-template-columns:auto auto 1fr!important}
  .gsnav-mobile-toggle{display:inline-flex!important}
  .gsnav-menu{
    position:absolute!important;
    top:72px!important;left:0!important;right:0!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    background:#111!important;
    padding:8px 21px 17px!important;
  }
  .gsnav-menu.is-open{display:flex!important}
}

/* =========================================================
   v1.5 — En-tête agrandi, proportions validées
   ========================================================= */
.gsnav-inner{
  min-height:88px!important;
  width:calc(100% - 38px)!important;
  max-width:1680px!important;
  grid-template-columns:minmax(205px,245px) minmax(0,1fr) auto!important;
  gap:20px!important;
}
.gsnav-brand{
  min-width:205px!important;
  max-width:245px!important;
  height:68px!important;
}
.gsnav-real-logo{
  max-width:235px!important;
  max-height:64px!important;
}
.gsnav-menu{
  gap:clamp(12px,1.2vw,23px)!important;
}
.gsnav-menu a{
  font-size:clamp(9px,.79vw,11px)!important;
  letter-spacing:.065em!important;
  padding-top:36px!important;
  padding-bottom:33px!important;
}
.gsnav-menu a:after{
  bottom:23px!important;
}
.gsnav-actions{
  min-width:126px!important;
  gap:8px!important;
}
.gsnav-icon{
  width:36px!important;
  height:36px!important;
  padding:6px!important;
}
.gsnav-icon svg{
  width:22px!important;
  height:22px!important;
}

/* Menu complet maintenu sur desktop large */
@media(min-width:1181px){
  .gsnav-mobile-toggle{display:none!important}
  .gsnav-menu{
    position:static!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    border:0!important;
    padding:0!important;
  }
}

/* Hamburger seulement lorsque la largeur ne permet plus une barre élégante */
@media(max-width:1180px){
  .gsnav-inner{
    min-height:78px!important;
    grid-template-columns:auto auto 1fr!important;
  }
  .gsnav-brand{
    min-width:175px!important;
    max-width:205px!important;
    height:58px!important;
  }
  .gsnav-real-logo{
    max-width:195px!important;
    max-height:54px!important;
  }
  .gsnav-mobile-toggle{display:inline-flex!important}
  .gsnav-menu{
    top:78px!important;
  }
}
