/* ═══════════════════════════════════════════════════════════════
   topbar.css — bandeau annonce Giga Studio en haut de chaque page
   ═══════════════════════════════════════════════════════════════ */

/* Hauteur exposée en CSS var → utilisable par les sections fullscreen */
:root{ --ga-topbar-h: 42px; }
@media(max-width:768px){ :root{ --ga-topbar-h: 42px; } }

.ga-topbar{
  position:relative;
  z-index:9999;
  background:#0a0a09;
  color:#fff;
  font-family:'Satoshi','Helvetica Neue',Helvetica,Arial,sans-serif;
  letter-spacing:-0.003em;
  border-bottom:1px solid rgba(255,255,255,.08);
}

/* Compense la topbar sur les sections Elementor en pleine hauteur :
   100vh est trop grand parce que la topbar prend var(--ga-topbar-h).
   On force min-height: calc(100vh - topbar) pour que tout fit dans le viewport. */
.elementor-section.elementor-section-height-full,
.elementor-element.elementor-section-height-full,
[data-settings*="\"shape_divider_top\""].elementor-section-height-full,
section[class*="elementor-section-height-full"]{
  min-height: calc(100vh - var(--ga-topbar-h)) !important;
  min-height: calc(100dvh - var(--ga-topbar-h)) !important;
}
.ga-topbar-link{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
  padding:.75rem 1.5rem;
  color:#fff !important;
  text-decoration:none !important;
  font-size:.86rem;
  line-height:1.3;
  font-weight:400;
  transition:background .2s ease;
}
.ga-topbar-link:hover{background:rgba(255,255,255,.05);text-decoration:none}
.ga-topbar-badge{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.18rem .55rem;
  background:#fff;color:#0a0a09;
  border-radius:100px;
  font-size:.6rem;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;
  flex-shrink:0;
}
.ga-topbar-logo{
  height:14px;width:auto;display:inline-block;vertical-align:-3px;
  filter:brightness(0) invert(1);     /* logo paths noirs → blancs */
  margin:0 .12em;
}
.ga-topbar-badge:before{
  content:"";width:5px;height:5px;border-radius:999px;
  background:#0a0a09;
  box-shadow:0 0 0 3px rgba(10,10,9,.18);
}
.ga-topbar-text{color:rgba(255,255,255,.92)}
.ga-topbar-text strong{color:#fff;font-weight:600}
.ga-topbar-cta{
  display:inline-flex;align-items:center;gap:.3rem;
  font-weight:500;color:#fff;white-space:nowrap;
  border-bottom:1px solid rgba(255,255,255,.4);
  padding-bottom:1px;
  transition:border-color .2s ease;
}
.ga-topbar-link:hover .ga-topbar-cta{border-color:#fff}

/* Wording : version courte cachée par défaut (desktop), longue visible */
.ga-topbar-text-short{display:none}

@media(max-width:768px){
  .ga-topbar-link{
    padding:.5rem .9rem;
    gap:.55rem;
    font-size:.72rem;
    flex-wrap:nowrap;
    justify-content:center;
    align-items:center;
    overflow:hidden;
  }
  .ga-topbar-badge{display:none}
  .ga-topbar-text{
    display:inline-flex !important;
    align-items:center;
    gap:.35rem;
    flex:0 1 auto;
    min-width:0;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
  }
  .ga-topbar-logo{height:12px !important;flex-shrink:0}
  .ga-topbar-text-full{display:none}
  .ga-topbar-text-short{display:inline;overflow:hidden;text-overflow:ellipsis;min-width:0}
  .ga-topbar-sep{margin:0 .2em}
  .ga-topbar-cta{
    flex:0 0 auto;
    padding:.22rem .65rem;
    font-size:.7rem;
    border:1px solid rgba(255,255,255,.28);
    border-radius:999px;
    line-height:1;
  }
}
@media(max-width:480px){
  .ga-topbar-link{font-size:.68rem;padding:.5rem .7rem;gap:.45rem}
  .ga-topbar-text-short{font-size:.68rem}
  .ga-topbar-cta{font-size:.66rem;padding:.2rem .55rem}
}

/* Séparateur entre le logo Giga et le wording */
.ga-topbar-sep{opacity:.4;margin:0 .35em;font-weight:300}

/* ═══ Mobile : compacte le header Billey (theme .header-04) ═══
   Billey met 30px de padding vertical + 100px de padding latéral peu importe la taille
   d'écran, ce qui rend le header trop haut + trop large à droite sur mobile. */
@media (max-width:1024px){
  .page-header.header-04 .container-fluid{padding-left:30px !important;padding-right:30px !important}
}
@media (max-width:768px){
  .page-header.header-04 .page-header-inner,
  .page-header.header-04 #page-header-inner{padding-top:14px !important;padding-bottom:14px !important}
  .page-header.header-04 .container-fluid{padding-left:18px !important;padding-right:18px !important}
}


/* ═══ Override Billey/Elementor : ne pas blanchir le texte des CTA au hover ═══ */
/* Force le texte des boutons CTA à rester lisible (noir) au hover */
a.elementor-button:hover,
a.elementor-button:focus,
a.elementor-button:hover .elementor-button-text,
a.elementor-button:focus .elementor-button-text,
a.tm-button:hover,
a.tm-button:focus{
	color:#0f0e0d !important;
}
a.elementor-button:hover .elementor-button-icon svg,
a.tm-button:hover svg{
	fill:#0f0e0d !important;
}

/* Modal close button : reste noir au hover */
.gs-modal-close:hover,
.gs-modal-close:hover svg{color:#0f0e0d !important;stroke:#0f0e0d !important}
