@charset "UTF-8";
/* PORTAL MOJU - PADRÃO LIMPO FINAL */
:root {
  --azul:#0057D9;
  --azul-escuro:#003B95;
  --branco:#ffffff;
  --texto:#111827;
}

/* GERAL */
body {
  background: #fff !important;
  color: var(--texto) !important;
}

/* TOPO */
.top-bar,
.header-top,
.news-ticker,
.breaking-news {
  background: var(--azul) !important;
  color: #fff !important;
  height: 40px !important;
  line-height: 40px !important;
  overflow: hidden !important;
  border: none !important;
}

.top-bar *,
.header-top *,
.news-ticker *,
.breaking-news * {
  color: #fff !important;
}

/* HEADER */
.site-header,
.header,
.main-header {
  background: #fff !important;
  padding: 25px 0 !important;
  margin: 0 !important;
  text-align: center !important;
}

/* LOGO CENTRAL */
.site-branding,
.custom-logo-link,
.logo {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 auto !important;
  text-align: center !important;
  background: transparent !important;
}

.custom-logo,
.site-branding img,
.logo img {
  max-width: 300px !important;
  height: auto !important;
  margin: 0 auto !important;
  display: block !important;
}

/* MENU */
.main-navigation,
#site-navigation,
.navbar {
  background: var(--azul) !important;
  border: none !important;
  box-shadow: none !important;
}

.main-navigation ul,
#site-navigation ul,
.navbar ul {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
}

.main-navigation a,
#site-navigation a,
.navbar a {
  color: #fff !important;
  background: transparent !important;
  padding: 18px 24px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.main-navigation a:hover,
#site-navigation a:hover,
.current-menu-item > a,
.current_page_item > a {
  background: var(--azul-escuro) !important;
  color: #fff !important;
}

/* BUSCA */
.search-submit,
.search-icon,
.header-search {
  background: var(--azul-escuro) !important;
  color: #fff !important;
  border: none !important;
}

/* BREADCRUMB */
.breadcrumb,
.breadcrumbs {
  background: #fff !important;
  color: var(--azul) !important;
  border: none !important;
  box-shadow: none !important;
}

.breadcrumb a,
.breadcrumbs a {
  color: var(--azul) !important;
}

/* TÍTULOS */
h1, h2, h3, h4, h5, h6,
.entry-title,
.entry-title a {
  color: var(--azul-escuro) !important;
  background: transparent !important;
}

/* TÍTULO DAS SEÇÕES */
.section-title,
.widget-title,
.elementor-heading-title {
  background: transparent !important;
  color: var(--azul-escuro) !important;
  font-size: 34px !important;
  font-weight: 800 !important;
  padding: 0 0 12px 0 !important;
  margin: 0 0 25px 0 !important;
  border-bottom: 3px solid var(--azul) !important;
}

/* REMOVE BLOCO AZUL GIGANTE DO ELEMENTOR */
.elementor-widget-heading,
.elementor-widget-heading .elementor-widget-container {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* CARDS */
.post,
article,
.elementor-post {
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
}

/* IMAGENS */
.post img,
article img,
.elementor-post img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  background: transparent !important;
  border: none !important;
}

/* CATEGORIAS */
.cat-links a,
.post-categories a,
.entry-category a,
.elementor-post__badge {
  background: var(--azul) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 20px !important;
  padding: 6px 14px !important;
}

/* BOTÕES */
.read-more,
.more-link,
.elementor-button,
button,
input[type=submit] {
  background: var(--azul) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  font-weight: 700 !important;
}

.read-more:hover,
.more-link:hover,
.elementor-button:hover {
  background: var(--azul-escuro) !important;
}

/* ESPAÇAMENTO */
.site-content,
.content-area {
  padding-top: 30px !important;
}

/* MOBILE */
@media (max-width: 768px) {
  .custom-logo,
  .site-branding img {
    max-width: 220px !important;
  }
  .main-navigation ul,
  #site-navigation ul {
    flex-wrap: wrap !important;
  }
  .main-navigation a,
  #site-navigation a {
    padding: 14px !important;
    font-size: 14px !important;
  }
  .section-title,
  .widget-title,
  .elementor-heading-title {
    font-size: 26px !important;
  }
}