/* Versão 2 da leitura (proposta de 17/10/2026): Newsreader nos títulos, Literata no texto. Fontes locais, latin e latin-ext. */
@font-face {
  font-family: 'Literata';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/literata-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Literata';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/literata-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(/fonts/literata-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(/fonts/literata-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/newsreader-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/newsreader-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url(/fonts/newsreader-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url(/fonts/newsreader-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Newsreader nos títulos, Literata no texto, letra maior, linha mais curta e sublinhado só no link dentro do texto. */
:root {
  --font-primary: 'Newsreader', Georgia, serif !important;
  --font-secondary: 'Literata', Georgia, serif !important;
  --le-serifa: 'Literata', Georgia, serif;
}
body :is(p, li, span, a, label, input, textarea, select, button, blockquote, .grid-button) { font-family: 'Literata', Georgia, serif !important; }
body :is(h1, h2, h3, h4, h5, h6, .autor__nome), body :is(h1, h2, h3, h4, h5, h6) * { font-family: 'Newsreader', Georgia, serif !important; font-weight: 500 !important; }
body :is(h1, h2, h3, h4, h5, h6) :is(em, i) { font-weight: 500 !important; }
body { font-variant-numeric: lining-nums tabular-nums; }

/* texto corrido: mínimo de 17px no celular e 18px no computador */
.text-box p.body { font-size: 18px !important; line-height: 1.65 !important; }
.text-box p.body-large { font-size: 19px !important; line-height: 1.6 !important; }
.text-box p.body-small { font-size: 16px !important; line-height: 1.55 !important; letter-spacing: 0 !important; }
.text-box p :is(span, a) { font-size: inherit !important; }
.block-header__nav-links a, .block-header-item__link { font-size: 17px !important; letter-spacing: .01em !important; }
.grid-button { white-space: nowrap; font-size: 17px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; min-height: 48px; }
.block-blog-list-item__category, [class*="category"] { font-size: 13px !important; letter-spacing: .08em !important; }
.endereco-bloco p { font-size: 16px; }

/* artigo: linha de até 66 letras, sempre alinhada à esquerda */
.pagina-post .text-box p.body, .pagina-post .text-box p.body-large { font-size: 20px !important; line-height: 1.7 !important; }
.pagina-post .text-box :is(p, li) { max-width: 66ch; text-align: left !important; hyphens: manual !important; }
.pagina-post .layout-element[style*="--text:justify"] { --m-text: left !important; --text: left !important; }
.post-novo__conteudo { max-width: 68ch; }
.post-novo__conteudo p { font-size: 20px; text-align: left; hyphens: manual; }
.block-blog-header__description { max-width: 64ch; margin-left: auto !important; margin-right: auto !important; line-height: 1.55 !important; }
@media (max-width: 920px) {
  .pagina-post .text-box p.body:not([style*="--fontSizeMobile"]), .post-novo__conteudo p { font-size: 19px !important; line-height: 1.7 !important; }
}

/* sublinhado: sai do telefone, menu, rodapé e botões; fica só no link dentro do parágrafo do artigo */
u { text-decoration: none !important; }
a, a * { text-decoration: none !important; }
.pagina-post .text-box p a, .post-novo__conteudo p a {
  text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: .2em !important;
}

/* citação manuscrita: maior para dar para ler */
[style*="Caveat"] { font-family: 'Caveat Regular', cursive !important; font-size: max(1em, 20px) !important; }

/* botão do WhatsApp: verde um pouco mais escuro para a letra branca ler melhor */
a.grid-button:is([href*="wa.me"], [href*="api.whatsapp"], [href*="whatsapp.com"]) { --background-color: #1A7F45 !important; --border-color: #1A7F45 !important; }
.whatsapp-fixo, a[href*="wa.me"][class*="fixo"] { background: #1A7F45 !important; }

/* peso normal no texto (o construtor antigo deixava 500 em alguns blocos); negrito só onde o Flávio marcou */
.text-box :is(p, li), .text-box :is(p, li) :is(span, a) { font-weight: 400 !important; }
.text-box :is(strong, b), .text-box :is(strong, b) * { font-weight: 600 !important; }
a[href^="mailto:"] { white-space: nowrap; }
@media (max-width: 920px) { a[href^="mailto:"] { font-size: 17px !important; } }

/* computador: o site antigo prende cada texto numa caixa de altura fixa; títulos com o mesmo "tamanho de olho" da letra antiga
   (font-size-adjust) e texto um pouco menor que no celular, para nada vazar da caixa */
body :is(h1, h2, h3, h4, h5, h6) { font-size-adjust: 0.42; }
@media (min-width: 921px) {
  .text-box p.body { font-size: 17px !important; line-height: 1.6 !important; }
  .text-box p.body-large { font-size: 18px !important; }
  .text-box p.body-small { font-size: 15px !important; }
  .pagina-post .text-box p.body, .pagina-post .text-box p.body-large { font-size: 19px !important; line-height: 1.7 !important; }
}

/* Primeira tela: botão numa linha só (no celular a caixa do construtor é estreita) e rótulos curtos sem crescer */
.grid-button { white-space: nowrap !important; }
@media (max-width: 920px) {
  .layout-element:has(> .grid-button) { min-width: max-content; justify-self: center; }
  .layout-element > .grid-button { width: max-content !important; min-width: 100%; padding-inline: 18px !important; }
  .text-box p.body[style*="--fontSizeMobile: 10px"] { font-size: 13px !important; line-height: 1.4 !important; }
  .text-box p.body[style*="--fontSizeMobile: 10px"] span[style*="uppercase"] { letter-spacing: .14em !important; }
  #zm4COb p.body { font-size: 12.5px !important; letter-spacing: .03em !important; line-height: 1.4 !important; }
}

/* verde mais escuro também nos botões novos, para a letra branca passar no contraste mínimo */
.wa-flutuante, .onde-atendo__btn--wa { background: #1A7F45 !important; border-color: #1A7F45 !important; }
.wa-flutuante:hover, .onde-atendo__btn--wa:hover { background: #146437 !important; }
/* link do endereço sublinhado (não depende só da cor) */
.endereco-bloco a { text-decoration: underline !important; text-underline-offset: .2em; }

/* ===== Telas grandes (2,5K, ultrawide, 4K): o site antigo tem largura fixa de ~1200 px e sobrava tela vazia dos lados.
   A página inteira cresce na mesma proporção (letra, fotos e espaços), sem mudar o desenho. ===== */
@media (min-width: 1900px) { html { zoom: 1.15; } }
@media (min-width: 2300px) { html { zoom: 1.3; } }
@media (min-width: 2900px) { html { zoom: 1.4; } }
@media (min-width: 3600px) { html { zoom: 1.7; } }

/* fotos de fundo com o texto escuro do site antigo: véu claro (o véu escuro era para texto claro e deixava a leitura difícil) */
body[data-pagina="/sobre-flavio-sousa-psicologo"] :is(#zEFAyR, #zZMFjy) > .block-background > .block-background__overlay,
body[data-pagina="/sobre-limiar-existencial"] #z2GEkn > .block-background > .block-background__overlay {
  background-image: none !important; background-color: rgba(245, 237, 209, .8) !important;
}
body[data-pagina="/sobre-flavio-sousa-psicologo"] :is(#zEFAyR, #zZMFjy) .text-box :is(h1, h2, h3, p),
body[data-pagina="/sobre-limiar-existencial"] :is(#z2GEkn, #zEFAyR) .text-box :is(h1, h2, h3, p) { text-shadow: none !important; }

/* botão com texto maior que a caixa do construtor: o botão cresce e continua centralizado */
.layout-element:has(> .grid-button) { display: flex; justify-content: center; overflow: visible; }
.layout-element > a.grid-button.grid-button { width: auto !important; max-width: none !important; flex: none !important; box-sizing: border-box; min-width: 100%; white-space: nowrap !important; padding-inline: 24px !important; }

/* foto da abertura em tela larga: o rosto não sai cortado no alto */
@media (min-width: 1900px) { #ai-sSa2eu .block-background__image { object-position: center 18% !important; } }

/* os 3 quadros do "Compreender o que você vive": títulos com a mesma letra (o 1º vinha em itálico) */
#ai-fQ6Btf .text-box h3 em { font-style: normal !important; }

/* botão fixo do WhatsApp: só o ícone redondo; na página inicial aparece depois da primeira tela (lá já tem o botão "Iniciar conversa") */
.wa-flutuante { padding: 0 !important; width: 60px; height: 60px; justify-content: center; transition: opacity .35s, transform .35s, background .2s; }
.wa-flutuante span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.wa-flutuante::before { width: 30px !important; height: 30px !important; }
.wa-flutuante--oculto { opacity: 0; transform: translateY(16px) scale(.9); pointer-events: none; }

/* Política de privacidade: lista das ferramentas (no site antigo era uma tabela que virou uma linha só) */
.lista-ferramentas { margin: 0 0 14px; padding-left: 1.3em; list-style: disc; }
.lista-ferramentas li { margin-bottom: 6px; line-height: 1.5; }
/* "Termos de Uso" estava em 18px no computador (no celular e no blog é título grande) */
@media (min-width: 921px) { body[data-pagina="/privacy"] #ai-tsrEDl :is(h3, h3 *) { font-size: 34px !important; } }

/* Celular de 361 a 920 px (quase todos os celulares de hoje): o construtor antigo usava o espaçamento de tablet,
   que não existe nas seções, e o texto terminava colado na seção de baixo. Respiro embaixo de cada seção. */
@media (min-width: 361px) and (max-width: 920px) {
  main section > .block-layout--layout { padding-bottom: 44px !important; }
}
