/* =========================================================
   TOP BAR (fora do header)
   ========================================================= */

.bd-header__top{
  background: #f9f8f5;
  border-bottom: 1px solid #e6e6e6;
  min-height: 40px;     /* altura real */
  padding: 6px 0;
  --wp--style--block-gap: 0px; /* não deixar o WP meter gaps */
}

/* tira margens “automáticas” do WP nessa zona */
.bd-header__top :where(.wp-block-group, .wp-block-columns, .wp-block-column){
  margin: 0 !important;
}

/* garante que a grelha ocupa a largura toda */
.bd-header__top .wp-block-columns{
  width: 100%;
  display: flex;              /* reforço */
  justify-content: flex-end;  /* encosta tudo à direita */
}

/* coluna também a empurrar para a direita */
.bd-header__top .wp-block-column{
  width: 100%;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
}

/* ✅ o GROUP "constrained" é o que costuma centrar -> vira flex e alinha à direita */
.bd-header__top
.wp-block-group.has-global-padding.is-layout-constrained,
.bd-header__top
.wp-block-group.has-global-padding.wp-block-group-is-layout-constrained,
.bd-header__top
.wp-container-core-group-is-layout-e04da429{
  width: 100% !important;

  /* define a largura “wide” e centra o container no ecrã */
  max-width: var(--wp--style--global--wide-size, 1260px) !important;
  margin-left: auto !important;
  margin-right: auto !important;

  /* padding lateral consistente */
  padding-left: 1rem !important;
  padding-right: 1rem !important;

  /* e agora o alinhamento à direita */
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
}

/* ✅ override do "center" do Gutenberg (se existir) */
.bd-header__top .is-content-justification-center{
  justify-content: flex-end !important;
}

/* Search: largura controlada e encostado à direita */
.bd-header__top .wp-block-search{
  width: min(320px, 100%);
  margin-left: auto !important;
}

/* o WP às vezes mete aligncenter -> remove o "margin:auto" interno */
.bd-header__top .wp-block-search.aligncenter .wp-block-search__inside-wrapper{
  margin: 0 !important;
}

/* search compacto */
.bd-header__top .wp-block-search__inside-wrapper{
  display: flex !important;
  align-items: center !important;
  width: 100%;
  border: 1px solid #ccc9c9;

  /* no botão-inside o WP mete padding 4px */
  padding: 2px !important;
}

/* input compacto */
.bd-header__top .wp-block-search__input{
  height: 30px !important;
  padding: 0 .6rem !important;
  font-size: 14px !important;
  line-height: 30px !important;
}

/* botão compacto */
.bd-header__top .wp-block-search__button{
  height: 30px !important;
  padding: 0 .7rem !important;
  line-height: 1 !important;

  /* WP mete 10px */
  margin-left: 8px !important;
}

/* opcional: se o botão estiver “gordo” por estilos globais */
.bd-header__top .wp-element-button{
  min-height: 30px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Botão do search (elipse) */
.bd-header__top .wp-block-search__button{
  background-color: var(--wp--preset--color--accent-1) !important;
  border: none;
}

/* =========================
   TOP BAR - fix alinhamento à direita
   ========================= */

/* 1) a coluna tem de ser flex e justificar à direita */
.bd-header__top .wp-block-column.wp-block-column-is-layout-flow{
  display: flex !important;
  justify-content: flex-end !important;
  width: 100% !important;
}

/* 2) o "group constrained" é quem centra -> vira flex e empurra tudo à direita */
.bd-header__top .wp-block-group.has-global-padding.is-layout-constrained{
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;

  width: 100% !important;

  /* mantém o container centrado no ecrã, mas conteúdo alinhado à direita */
  max-width: var(--wp--style--global--wide-size, 1260px) !important;
  margin-left: auto !important;
  margin-right: auto !important;

  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

/* 3) garante que o próprio form não fica com auto margins (caso tenha aligncenter) */
.bd-header__top form.wp-block-search{
  margin-left: auto !important;
  margin-right: 0 !important;
}

/* 4) se o WP meter wrapper com margin:auto */
.bd-header__top .wp-block-search.aligncenter .wp-block-search__inside-wrapper{
  margin: 0 !important;
}


/* =========================================================
   HEADER (só main bar) - STICKY
   ========================================================= */
header.wp-block-template-part{
  position: sticky;
  top: var(--wp-admin--admin-bar--height, 0px); /* para não ficar por baixo da admin bar */
  z-index: 9999;
  background: #fff;
}

/* sombra quando scrolled */
header.wp-block-template-part.is-scrolled{
  box-shadow: 0 10px 30px rgba(0,0,0,.10);
}

/* alinhar logo + menu */
header.wp-block-template-part .wp-block-columns{
  align-items: center;
}

header.wp-block-template-part .wp-block-columns > .wp-block-column:last-child{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

/* Navigation */
header.wp-block-template-part .wp-block-navigation{
  align-items: center;
}

header.wp-block-template-part
.wp-block-navigation .wp-block-navigation-item__content{
  color: var(--wp--preset--color--accent-4);
  font-weight: 600;
  text-decoration: none;
  line-height: 1;
}

header.wp-block-template-part
.wp-block-navigation .wp-block-navigation__container{
  gap: 1.25rem;
  align-items: center;
}

/* item ativo */
header.wp-block-template-part
.wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
header.wp-block-template-part
.wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content,
header.wp-block-template-part
.wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
header.wp-block-template-part
.wp-block-navigation-item.current_page_ancestor > .wp-block-navigation-item__content{
  color: var(--wp--preset--color--accent-1);
}

/* focus: remove no rato, mantém no teclado */
header.wp-block-template-part a:focus{
  outline: none;
}

header.wp-block-template-part a:focus-visible{
  outline: 2px solid var(--wp--preset--color--accent-1);
  outline-offset: 3px;
}

/* logo sem underline/efeitos */
header.wp-block-template-part .wp-block-image a{
  display: inline-block;
  line-height: 0;
}
