/* =========================
   G.O.S. Header (apenas estilos do header)
   ========================= */

/* ----- CAMADAS / BASE ----- */
.gos-header{ position:relative; z-index:1100; }
.gos-sticky{ position:fixed;   z-index:1200; }
.gos-drawer{                  z-index:1300; }

/* ----- TOPBAR ----- */
.gos-top{
  background: var(--bg-1);
  color: var(--text);
  border-bottom: 1px solid var(--line);
  padding: 16px 0;
}
.gos-top__grid{
  display:grid; grid-template-columns:auto 1fr;
  align-items:center; gap: clamp(12px,2vw,24px);
  min-height: 80px;
}
.gos-brand__img--lg{ height: clamp(28px,3.2vw,44px); display:block; }

.gos-top__right{ display:flex; align-items:center; justify-content:flex-end; gap: 18px; }

.gos-contact{ display:flex; align-items:center; gap:12px; color:#e8eef7; text-decoration:none; }
.gos-contact__iconwrap,
.gos-social__link{
  width:44px; height:44px; display:grid; place-items:center; border-radius:999px;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow:
    0 0 0 2px rgba(255,255,255,.04) inset,
    0 0 12px rgba(15, 30, 56, .35),
    0 6px 18px rgba(0,0,0,.22);
  transition: transform .15s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}
.gos-contact__icon{ width:22px; height:22px; display:block; }

.gos-contact__text{ display:flex; flex-direction:column; line-height:1.05 }
.gos-contact__label{ font-size:1.02rem; font-weight:800; color:var(--text); letter-spacing:.2px; }
.gos-contact__value{ margin-top:4px; font-weight:600; font-size:1.02rem; color:var(--muted); white-space:nowrap; }

.gos-top__divider{ width:1px; height:22px; background:var(--line); }

.gos-social{ display:flex; align-items:center; gap:12px; }
.gos-social__label{ font-size:.86rem; color:var(--muted); margin-right:2px; }
.gos-social__link img{ width:20px; height:20px; opacity:.95; }

.gos-contact:hover .gos-contact__iconwrap,
.gos-social__link:hover{
  border-color: var(--brand);
  box-shadow:
    0 0 0 2px color-mix(in srgb, var(--brand) 60%, transparent) inset,
    0 0 24px color-mix(in srgb, var(--brand) 45%, transparent),
    0 10px 26px rgba(0,0,0,.28);
  transform: translateY(-1px);
}

/* ----- BURGER ----- */
.gos-burger{ display:none; width:44px; height:44px; border-radius:10px;
  border:1px solid rgba(255,255,255,.16);
  background: color-mix(in srgb, var(--bg-1) 70%, black); position:relative; cursor:pointer;
  transition: background .2s ease, border-color .2s ease;
}
.gos-burger:hover{ background: color-mix(in srgb, var(--bg-1) 55%, black); border-color:rgba(255,255,255,.26); }
.gos-burger__bar{ position:absolute; left:11px; right:11px; height:2px; background:var(--brand); border-radius:2px; }
.gos-burger__bar:nth-child(1){ top:13px } 
.gos-burger__bar:nth-child(2){ top:21px } 
.gos-burger__bar:nth-child(3){ bottom:13px }

/* ----- NAVBAR FULL ----- */
.gos-nav{
  background: var(--bg-2);
  color: var(--text);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.gos-nav__grid{ display:grid; grid-template-columns:1fr; align-items:center; min-height:58px; }
.gos-nav__list{ list-style:none; margin:0; padding:0; display:flex; justify-content:space-between; gap:0; width:100%; }
.gos-nav__item{ position:relative; }
.gos-nav__item + .gos-nav__item::before{
  content:""; position:absolute; left:-10px; top:50%; transform:translateY(-50%);
  width:1px; height:16px; background: var(--line); opacity:.45;
}
.gos-nav__link{
  display:inline-flex; align-items:center; justify-content:center; text-align:center;
  padding: 10px 14px; font-weight:700; letter-spacing:.2px; color: var(--muted);
  position:relative; transition: color .18s ease;
}
.gos-nav__link:hover{ color: var(--text); }
.gos-nav__link::after{
  content:""; position:absolute; left:50%; bottom:-8px; transform:translateX(-50%);
  width:0; height:3px; background:var(--brand); border-radius:2px; transition: width .22s ease;
}
.gos-nav__link:hover::after, .gos-nav__link:focus-visible::after{ width:36%; }

/* ----- STICKY (compacta) ----- */
.gos-sticky{
  left:0; right:0; top:-68px;
  background: color-mix(in srgb, var(--bg-2) 92%, black);
  border-bottom:1px solid var(--line);
  box-shadow: 0 10px 26px rgba(0,0,0,.28);
  transform:translateY(-100%); opacity:0; pointer-events:none;
  transition: transform .28s ease, opacity .28s ease;
}
.gos-sticky.is-visible{ transform:translateY(0); top:0; opacity:1; pointer-events:auto; }
.gos-sticky__grid{ display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:16px; min-height:56px; }
.gos-sticky__brand-img{ width:60px; height:28px; display:block;}

.gos-sticky__list{ list-style:none; margin:0; padding:0; display:flex; justify-content:space-between; gap:0; }
.gos-sticky__item{ position:relative; }
.gos-sticky__item + .gos-sticky__item::before{
  content:""; position:absolute; left:-10px; top:50%; transform:translateY(-50%);
  width:1px; height:16px; background: var(--line); opacity:.45;
}
.gos-sticky__link{
  display:inline-flex; align-items:center; justify-content:center; text-align:center;
  padding:10px 12px; font-weight:700; color:var(--muted); position:relative;
}
.gos-sticky__link:hover{ color:var(--text); }
.gos-sticky__link::after{
  content:""; position:absolute; left:50%; bottom:-8px; transform:translateX(-50%);
  width:0; height:3px; background:var(--brand); border-radius:2px; transition:width .22s ease;
}
.gos-sticky__link:hover::after, .gos-sticky__link:focus-visible::after{ width:36%; }

/* Toggle na sticky */
.gos-sticky__toggle{
  display:none; position:relative; width:44px; height:44px; border-radius:10px;
  border:1px solid rgba(255,255,255,.16);
  background: color-mix(in srgb, var(--bg-2) 70%, black);
  overflow:hidden; place-items:center;
}
.gos-sticky__toggle .gos-burger__bar{
  position:absolute; left:11px; right:11px; height:2px; background:var(--brand); border-radius:2px;
}
.gos-sticky__toggle .gos-burger__bar:nth-child(1){ top:13px }
.gos-sticky__toggle .gos-burger__bar:nth-child(2){ top:21px }
.gos-sticky__toggle .gos-burger__bar:nth-child(3){ bottom:13px }

/* ----- DRAWER (mobile) ----- */
.gos-drawer[hidden]{ display:none !important; }
.gos-drawer{ position:fixed; inset:0; display:grid; }
.gos-drawer__backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.5); border:0; z-index:1; }
.gos-drawer__panel{
  position:absolute; top:0; right:0; height:100%; width:min(86vw,380px);
  background: var(--bg-1); box-shadow: var(--shadow);
  display:flex; flex-direction:column; transform:translateX(100%); transition:transform .25s ease; z-index:2;
}
.gos-drawer.is-open .gos-drawer__panel{ transform:none; }
.gos-drawer__header{ display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-bottom:1px solid var(--line); }
.gos-drawer__brand{ height:24px; }
.gos-drawer__close{ background:transparent; border:0; color:#fff; font-size:28px; cursor:pointer; }
.gos-drawer__nav{ list-style:none; margin:0; padding:6px; display:flex; flex-direction:column; }
.gos-drawer__link{ padding:14px 16px; border-bottom:1px solid var(--line); font-weight:600; color:var(--text); }
.gos-drawer__link:hover{ background: rgba(255,255,255,.04); }

/* ----- BREAKPOINTS ----- */
@media (max-width:767.98px){
  .gos-contact, .gos-top__divider, .gos-social__label{ display:none; }
  .gos-burger{ display:block; }
  .gos-nav{ display:none; }
  .gos-sticky__brand-img { width:100% ;}

  .gos-sticky__grid{
    display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:center;
  }
  .gos-sticky__list{ display:none !important; }
  .gos-sticky__toggle{ display:inline-grid; justify-self:end; }
  
}

@media (min-width:768px) and (max-width:1199.98px){
  .gos-burger{ display:block; }
  .gos-nav{ display:none; }
  .gos-sticky__list{ display:none !important; }
  .gos-sticky__toggle{ display:inline-grid; justify-self:end; }
}

@media (min-width:1200px){
  .gos-burger{ display:none; }
  .gos-nav{ display:block; }
  .gos-sticky__grid{ grid-template-columns:auto 1fr auto; }
  .gos-sticky__list{ display:flex; }
  .gos-sticky__toggle{ display:none; }
}

@media (prefers-reduced-motion: reduce){
  .gos-sticky, .gos-drawer__panel, .gos-nav__link::after, .gos-sticky__link::after{
    transition:none !important;
  }
}


/* ===== FIX: logo do sticky sempre encostado à esquerda e dimensionado pela altura ===== */
.gos-brand__img--lg{ height: clamp(28px,3.2vw,44px); width:auto; }      /* topo (não sticky) */

.gos-sticky__brand{ display:flex; align-items:center; min-width:0; }   /* evita reserva de largura */
.gos-sticky__brand-img{
  display:block;
  width:auto;                      /* <— NUNCA 100% */
  height:28px;                     /* controla pelo height */
  max-width:clamp(120px, 32vw, 160px);
}

/* grid do sticky sem “empurrar” o logo */
.gos-sticky__grid{
  grid-template-columns: auto minmax(0,1fr) auto;   /* evita o meio “roubar” espaço do logo */
}

/* Mobile: garante override do width e altura menor */
@media (max-width:767.98px){
  /* REMOVA a sua regra antiga: .gos-sticky__brand-img { width:100% } */
  .gos-sticky__brand-img{
    width:auto !important;         /* força evitar 100% */
    height:24px;
    max-width:clamp(110px, 40vw, 160px);
  }
}

/* (opcional) se quiser o logo REALMENTE colado na borda no sticky mobile */
@media (max-width:767.98px){
  .gos-sticky .container{ padding-left:20px; }
}