/*
Theme Name: Saber e Bem-Estar Child
Theme URI: https://saberebemestar.com.br
Description: Child theme do projeto Saber e Bem-Estar, baseado em GeneratePress.
Author: Saber e Bem-Estar
Template: generatepress
Version: 1.0.0
Text Domain: saber-bem-estar-child
*/

/*
CSS próprio do projeto será adicionado aqui apenas quando necessário.
*/
/* =========================================================
   Saber e Bem-Estar — CSS Global Base
   Child theme GeneratePress
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,wght@0,400;0,600;0,700;1,400&family=DM+Sans:wght@400;500;600&display=swap');

:root {
  --serif: 'Source Serif 4', Georgia, serif;
  --sans: 'DM Sans', Arial, sans-serif;

  --bg: #FAFAF8;
  --surface: #FFFFFF;
  --surface-soft: #F5F5F3;
  --text: #2C2C2C;
  --muted: #555555;
  --border: #DDDDDD;

  --teal: #3B8C8C;
  --teal-light: #5BB8B8;
  --teal-bg: #EAF4F4;

  --emocional-acento: #C4785E;
  --emocional-func: #A35A42;
  --emocional-bg: #F6E7E0;

  --financeiro-acento: #3B5F82;
  --financeiro-func: #3B5F82;
  --financeiro-bg: #E1E9F1;

  --rotina-acento: #B8923A;
  --rotina-func: #8A6E2B;
  --rotina-bg: #F5EED8;

  --saude-acento: #5E9A72;
  --saude-func: #427A55;
  --saude-bg: #E8F2EB;

  --wrap: 1100px;
  --wrap-leitura: 720px;
  --r: 8px;
  --rl: 12px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.65;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--text);
  font-family: var(--serif);
  font-weight: 700;
  line-height: 1.2;
}

a {
  color: var(--teal);
}

a:hover {
  color: var(--text);
}

.w {
  width: 100%;
  max-width: var(--wrap);
  margin: 0 auto;
  padding: 0 40px;
}

.w-leitura {
  width: 100%;
  max-width: var(--wrap-leitura);
  margin: 0 auto;
  padding: 0 40px;
}

.btn {
  display: inline-block;
  padding: 13px 28px;
  border: 2px solid transparent;
  border-radius: var(--r);
  font-family: var(--sans);
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: opacity .15s ease, background .15s ease, color .15s ease;
}

.btn-p {
  background: var(--teal);
  color: #FFFFFF;
}

.btn-p:hover {
  color: #FFFFFF;
  opacity: .88;
}

.btn-s {
  background: transparent;
  border-color: var(--teal);
  color: var(--teal);
}

.btn-s:hover {
  background: var(--teal-bg);
  color: var(--teal);
}

/* Header base GeneratePress */

.site-header {
  background: var(--bg);
  border-bottom: 1px solid var(--border);
}

.main-navigation,
.main-navigation ul ul {
  background: var(--bg);
}

.main-navigation .main-nav ul li a {
  color: var(--muted);
  font-family: var(--sans);
  font-size: 14px;
  font-weight: 500;
}

.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li.current-menu-item > a,
.main-navigation .main-nav ul li.current_page_item > a {
  color: var(--teal);
}

/* Rodapé oficial */

.site-footer,
.site-info {
  background: var(--surface-soft);
}

.site-info {
  padding: 32px 20px;
  color: var(--text);
  font-family: var(--sans);
  font-size: 14px;
  line-height: 1.6;
}

.sbe-footer-copy {
  max-width: var(--wrap);
  margin: 0 auto;
  text-align: center;
}

.sbe-footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 18px;
  margin-bottom: 14px;
}

.sbe-footer-links a {
  color: var(--text);
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
}

.sbe-footer-links a:hover {
  color: var(--teal);
  text-decoration: underline;
}

.sbe-footer-aviso {
  max-width: 820px;
  margin: 0 auto 14px;
  color: var(--muted);
  font-size: 13px;
}

.sbe-footer-legal {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

/* Responsivo */

@media (max-width: 768px) {
  .w,
  .w-leitura {
    padding: 0 20px;
  }

  .main-navigation .main-nav ul li a {
    font-size: 13px;
  }

  .site-info {
    padding: 28px 20px;
  }

  .sbe-footer-links {
    flex-direction: column;
    gap: 8px;
  }
}

  }
}

/* Correção mobile — filtros da Biblioteca e dos Artigos */
@media (max-width:768px){
  .sbe-filtros,
  .filtros{
    overflow-x:visible !important;
  }
    .sbe-filtros-list,
  .filtros-wrap{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    justify-content:center !important;
    align-items:center !important;
    max-width:100% !important;
    overflow-x:visible !important;
    padding-bottom:0 !important;
  }
    .sbe-filtros-list .filtro,
  .filtros-wrap .filtro{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    text-align:center !important;
    line-height:1.25 !important;
    padding:9px 12px !important;
  }
    .sbe-filtros-list .filtro:first-child,
  .filtros-wrap .filtro:first-child{
    grid-column:1 / -1 !important;
    justify-self:center !important;
    width:auto !important;
    min-width:72px !important;
    padding:9px 18px !important;
  }
}