/* Header Elementor 2597 — alinhar ao gabarito (.wrap · 1280px · header-inner)
   Modelo: logo esquerda · nav centro · CTA direita · mesma margem do conteúdo */

.elementor-location-header .elementor-element-02813d3 > .e-con-inner,
.elementor-location-header .elementor-element-4d2bc9c > .e-con-inner,
.elementor-location-header .elementor-element-e008e05 > .e-con-inner {
  box-sizing: border-box !important;
  width: min(100%, calc(1280px + 2 * var(--ydv-page-pad, clamp(1.25rem, 4vw, 2.5rem)))) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-inline: var(--ydv-page-pad, clamp(1.25rem, 4vw, 2.5rem)) !important;
}

/* Barra utilitária (Home · Sobre · …) */
.elementor-location-header .elementor-element-02813d3 .hfe-nav-menu {
  justify-content: flex-end !important;
}

.elementor-location-header .elementor-element-ea1fbdc .hfe-nav-menu .menu-item a {
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  white-space: nowrap;
}

/* Barra principal — espelha .header-inner do gabarito */
.elementor-location-header .elementor-element-e008e05 > .e-con-inner {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: clamp(0.75rem, 2vw, 1.5rem) !important;
  min-height: var(--ydv-header-h, 4.875rem);
}

.elementor-location-header .elementor-element-9ecbfe6 {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: min(240px, 30vw) !important;
}

.elementor-location-header .elementor-element-e9ea394 img {
  width: auto !important;
  max-width: 100% !important;
  max-height: 3.25rem !important;
  height: auto !important;
  display: block !important;
}

.elementor-location-header .elementor-element-9af3823 {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  display: flex !important;
  justify-content: center !important;
}

.elementor-location-header .elementor-element-030846f {
  width: 100% !important;
}

.elementor-location-header .elementor-element-030846f .hfe-nav-menu {
  justify-content: center !important;
  flex-wrap: nowrap !important;
}

.elementor-location-header .elementor-element-030846f .hfe-nav-menu .menu-item a {
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  white-space: nowrap;
  padding-inline: clamp(0.35rem, 1.2vw, 0.85rem) !important;
}

.elementor-location-header .elementor-element-c5cb188 {
  flex: 0 0 auto !important;
  width: auto !important;
  margin-left: auto !important;
}

.elementor-location-header .elementor-element-ad612c1 .elementor-button-wrapper,
.elementor-location-header .elementor-element-ad612c1 .elementor-button {
  width: auto !important;
  max-width: none !important;
  white-space: nowrap !important;
}

.elementor-location-header .elementor-element-ad612c1 .elementor-button {
  padding-inline: 1.15rem !important;
}

/* Tablet — nav compacto, CTA visível */
@media (max-width: 1023px) {
  .elementor-location-header .elementor-element-030846f .hfe-nav-menu .menu-item a {
    font-size: 0.8125rem !important;
    padding-inline: 0.4rem !important;
  }

  .elementor-location-header .elementor-element-e9ea394 img {
    max-height: 2.75rem !important;
  }
}

@media (max-width: 767px) {
  .elementor-location-header .elementor-element-e008e05 > .e-con-inner {
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    row-gap: 0.5rem !important;
    min-height: 0;
    padding-block: 0.65rem !important;
  }

  .elementor-location-header .elementor-element-9ecbfe6 {
    max-width: min(200px, 55vw) !important;
  }

  .elementor-location-header .elementor-element-9af3823 {
    order: 3;
    flex: 1 1 100% !important;
    justify-content: flex-start !important;
  }

  .elementor-location-header .elementor-element-c5cb188 {
    order: 2;
    margin-left: 0 !important;
  }
}

@media (max-width: 479px) {
  .elementor-location-header .elementor-element-ad612c1 .elementor-button-text {
    font-size: 0.8125rem !important;
  }
}
