/*
 * Flex Browser — Navbar 2026
 * Réplica visual da navbar da página inicial, aplicada ao restante do site.
 */
:root{
  --flex2026-bg:#090909;
  --flex2026-panel:#121212;
  --flex2026-line:rgba(209,183,86,.20);
  --flex2026-line-strong:rgba(209,183,86,.40);
  --flex2026-gold:#d1b756;
  --flex2026-gold-soft:#ead88f;
  --flex2026-text:#f4efe4;
  --flex2026-shadow:0 26px 70px rgba(0,0,0,.40);
}

.flex2026-header,
.flex2026-header *{
  box-sizing:border-box;
}

.flex2026-header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  z-index:2500!important;
  min-height:78px!important;
  color:var(--flex2026-text)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,backdrop-filter .25s ease!important;
}

.flex2026-header.is-scrolled,
.flex2026-header.is-menu-open{
  background:rgba(9,9,9,.84)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
  border-bottom:1px solid var(--flex2026-line)!important;
  box-shadow:0 16px 45px rgba(0,0,0,.28)!important;
}

.flex2026-nav-shell{
  width:min(calc(100% - 40px),1180px)!important;
  min-height:78px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  position:relative!important;
}

.flex2026-brand{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  color:var(--flex2026-text)!important;
  text-decoration:none!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:1.06rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
}

.flex2026-brand:hover,
.flex2026-brand:focus{
  color:var(--flex2026-text)!important;
  text-decoration:none!important;
}

.flex2026-brand-mark{
  width:39px!important;
  height:39px!important;
  flex:0 0 39px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:12px!important;
  border:1px solid var(--flex2026-line-strong)!important;
  background:linear-gradient(145deg,rgba(234,216,143,.16),rgba(209,183,86,.03))!important;
  box-shadow:inset 0 0 30px rgba(209,183,86,.09),0 10px 34px rgba(0,0,0,.35)!important;
  color:var(--flex2026-gold-soft)!important;
}

.flex2026-brand-mark svg{
  width:22px!important;
  height:22px!important;
}

.flex2026-brand-name{
  color:var(--flex2026-text)!important;
  white-space:nowrap!important;
}

.flex2026-brand-name strong{
  color:var(--flex2026-gold-soft)!important;
  font-weight:900!important;
}

.flex2026-links{
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:26px!important;
  color:#d8ccb1!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:.92rem!important;
  font-weight:700!important;
}

.flex2026-links > a{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:44px!important;
  padding:0!important;
  color:#d8ccb1!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  transition:color .2s ease!important;
}

.flex2026-links > a::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  right:50%!important;
  bottom:4px!important;
  height:2px!important;
  border-radius:999px!important;
  background:var(--flex2026-gold)!important;
  opacity:0!important;
  transition:left .2s ease,right .2s ease,opacity .2s ease!important;
}

.flex2026-links > a:hover,
.flex2026-links > a:focus-visible,
.flex2026-links > a.is-active{
  color:var(--flex2026-gold-soft)!important;
}

.flex2026-links > a:hover::after,
.flex2026-links > a:focus-visible::after,
.flex2026-links > a.is-active::after{
  left:0!important;
  right:0!important;
  opacity:1!important;
}

.flex2026-actions{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}

.flex2026-btn{
  min-height:48px!important;
  padding:0 19px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  border-radius:13px!important;
  border:1px solid transparent!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:.91rem!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease!important;
}

.flex2026-btn:hover,
.flex2026-btn:focus-visible{
  transform:translateY(-2px)!important;
  text-decoration:none!important;
}

.flex2026-btn-ghost{
  color:var(--flex2026-text)!important;
  border-color:var(--flex2026-line)!important;
  background:rgba(255,255,255,.025)!important;
  box-shadow:none!important;
}

.flex2026-btn-ghost:hover,
.flex2026-btn-ghost:focus-visible{
  color:var(--flex2026-text)!important;
  border-color:var(--flex2026-line-strong)!important;
  background:rgba(209,183,86,.06)!important;
}

.flex2026-btn-gold{
  color:#15120a!important;
  border-color:transparent!important;
  background:linear-gradient(180deg,#f0df98 0%,var(--flex2026-gold) 100%)!important;
  box-shadow:0 12px 34px rgba(209,183,86,.22),inset 0 1px rgba(255,255,255,.55)!important;
}

.flex2026-btn-gold:hover,
.flex2026-btn-gold:focus-visible{
  color:#15120a!important;
  box-shadow:0 16px 44px rgba(209,183,86,.32),inset 0 1px rgba(255,255,255,.55)!important;
}

.flex2026-menu-toggle{
  display:none!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  padding:0!important;
  place-items:center!important;
  border-radius:12px!important;
  border:1px solid var(--flex2026-line)!important;
  background:var(--flex2026-panel)!important;
  color:var(--flex2026-text)!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.flex2026-menu-toggle:hover,
.flex2026-menu-toggle:focus-visible{
  border-color:var(--flex2026-line-strong)!important;
  background:rgba(209,183,86,.07)!important;
}

.flex2026-menu-toggle svg{
  pointer-events:none!important;
}

.flex2026-mobile-actions{
  display:none!important;
}

.flex2026-nav-spacer{
  display:block!important;
  width:100%!important;
  height:78px!important;
  min-height:78px!important;
}

/* A versão da index usa o próprio hero como espaçamento. */
body.flex-index-page .flex2026-nav-spacer{
  display:none!important;
}

@media(max-width:1080px){
  .flex2026-links{gap:18px!important}
  .flex2026-links > a{font-size:.87rem!important}
  .flex2026-btn{padding-inline:15px!important}
}

@media(max-width:980px){
  .flex2026-header,
  .flex2026-nav-shell{
    min-height:72px!important;
  }

  .flex2026-nav-spacer{
    height:72px!important;
    min-height:72px!important;
  }

  .flex2026-links{
    display:none!important;
    position:absolute!important;
    top:72px!important;
    left:0!important;
    right:0!important;
    z-index:2!important;
    margin:0!important;
    padding:18px!important;
    border-radius:16px!important;
    border:1px solid var(--flex2026-line)!important;
    background:rgba(12,12,12,.98)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    backdrop-filter:blur(18px)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:2px!important;
    box-shadow:var(--flex2026-shadow)!important;
  }

  .flex2026-links.is-open{
    display:flex!important;
  }

  .flex2026-links > a{
    width:100%!important;
    min-height:46px!important;
    padding:0 12px!important;
    border-radius:10px!important;
    font-size:.94rem!important;
  }

  .flex2026-links > a::after{
    left:12px!important;
    right:auto!important;
    bottom:7px!important;
    width:0!important;
    opacity:1!important;
    transition:width .2s ease!important;
  }

  .flex2026-links > a:hover,
  .flex2026-links > a:focus-visible,
  .flex2026-links > a.is-active{
    background:rgba(209,183,86,.06)!important;
  }

  .flex2026-links > a:hover::after,
  .flex2026-links > a:focus-visible::after,
  .flex2026-links > a.is-active::after{
    width:34px!important;
    right:auto!important;
  }

  .flex2026-menu-toggle{
    display:grid!important;
  }

  .flex2026-actions > .flex2026-btn-ghost{
    display:none!important;
  }

  .flex2026-mobile-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin-top:10px!important;
    padding-top:16px!important;
    border-top:1px solid var(--flex2026-line)!important;
  }

  .flex2026-mobile-actions .flex2026-btn{
    width:100%!important;
  }
}

@media(max-width:680px){
  .flex2026-nav-shell{
    width:min(calc(100% - 24px),1180px)!important;
    min-height:68px!important;
    gap:12px!important;
  }

  .flex2026-header{
    min-height:68px!important;
  }

  .flex2026-nav-spacer{
    height:68px!important;
    min-height:68px!important;
  }

  .flex2026-brand{
    gap:10px!important;
    font-size:1rem!important;
  }

  .flex2026-brand-mark{
    width:38px!important;
    height:38px!important;
    flex-basis:38px!important;
  }

  .flex2026-actions > .flex2026-btn-gold{
    display:none!important;
  }

  .flex2026-menu-toggle{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
  }

  .flex2026-links{
    top:68px!important;
    padding:14px!important;
  }

  .flex2026-mobile-actions{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:380px){
  .flex2026-brand-name{
    font-size:.94rem!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .flex2026-header,
  .flex2026-header *,
  .flex2026-header *::before,
  .flex2026-header *::after{
    transition:none!important;
  }
}

/* Botão premium da navbar sem halo/sombra dourada. */
.flex2026-btn-gold,
.flex2026-btn-gold:hover,
.flex2026-btn-gold:focus,
.flex2026-btn-gold:focus-visible,
.flex2026-btn-gold:active{
  box-shadow:none!important;
  filter:none!important;
  text-shadow:none!important;
}
.flex2026-btn-gold{
  border-color:rgba(240,223,152,.72)!important;
  background:linear-gradient(180deg,#f0df98 0%,var(--flex2026-gold) 100%)!important;
}
.flex2026-btn-gold:hover,
.flex2026-btn-gold:focus-visible{
  border-color:var(--flex2026-gold-soft)!important;
  background:linear-gradient(180deg,#f6e8aa 0%,#d8bc59 100%)!important;
}
.flex2026-btn-gold:focus-visible{
  outline:2px solid rgba(244,239,228,.72)!important;
  outline-offset:2px!important;
}

