/* ============================================================
   PATRIMÔNIO PRESERVADO — Páginas internas (Nível 1)
   Topo de página, largura de leitura e tipografia do conteúdo.
   ============================================================ */

/* ---------- Topo de página ---------- */
.pp-hero-pagina {
	background: var(--pp-creme-claro);
	border-bottom: 1px solid var(--pp-cinza-200);
	padding-block: var(--pp-e8) var(--pp-e7);
}

.pp-filete-curto {
	display: block;
	width: 64px;
	height: 3px;
	background: var(--pp-filete);
	margin-bottom: var(--pp-e3);
}

/* Caixa-alta espaçada só aqui, em Figtree. Nos títulos ela pesa. */
.pp-sobrelinha {
	margin: 0 0 var(--pp-e2);
	font-family: var(--pp-fonte-texto);
	font-size: var(--pp-fs-legenda);
	font-weight: 600;
	letter-spacing: var(--pp-tracking-caps);
	text-transform: uppercase;
	/* ouro-800 (#8a6117) e não o bege da marca: sobre claro o bege dá 1,67:1. */
	color: var(--pp-ouro-800);
}

.pp-hero-pagina__titulo {
	margin: 0;
	font-family: var(--pp-fonte-titulo);
	font-size: var(--pp-fs-h1);
	line-height: var(--pp-lh-h1);
	font-weight: var(--pp-peso-titulo);
	letter-spacing: var(--pp-tracking-titulo);
	color: var(--pp-texto);
	max-width: 20ch;
}

.pp-hero-pagina { position: relative; }
.pp-hero-pagina__trilha { margin-top: var(--pp-e4); }
/* A trilha do OceanWP nasce flutuando e posicionada, para viver dentro da
   barra cinza do tema. Fora dela, escapava para o meio da página. */
.pp-hero-pagina__trilha .site-breadcrumbs {
	position: static;
	float: none;
	transform: none;
	display: block;
	padding: 0;
	margin: 0;
	max-width: none;
	text-align: left;
}
.pp-hero-pagina__trilha,
.pp-hero-pagina__trilha a {
	font-size: var(--pp-fs-apoio);
	color: var(--pp-texto-apoio);
}
.pp-hero-pagina__trilha a { text-decoration: none; }
.pp-hero-pagina__trilha a:hover { text-decoration: underline; }
.pp-hero-pagina__trilha .breadcrumb-sep { margin-inline: 6px; color: var(--pp-cinza-300); }

/* O título que o construtor repete dentro do conteúdo. Marcado pelo script,
   escondido aqui — o texto continua no banco, intacto. */
.pp-titulo-repetido { display: none !important; }

/* 🔴 Nada de `#main > .elementor` aqui. Essas regras pegavam a landing da Sessão
   (a única página ainda montada no construtor direto sob o <main>) e mudavam 41
   de 47 textos dela — margens, tamanho do preço, a linha da Hotmart. Revisão
   de 21/09. A landing tem de sair como foi desenhada.
   ---------- Largura e respiro do conteúdo ----------
   Duas raízes, não uma: páginas normais têm `#content-wrap`; páginas feitas
   no construtor não têm — o conteúdo entra direto sob o <main> como
   `.elementor`. Escrever só a primeira deixava metade do site sem tratamento. */
#content-wrap.container {
	max-width: var(--pp-container);
	padding-inline: var(--pp-gutter);
	padding-block: var(--pp-secao-y);
}

/* Medida de leitura — só nas páginas de texto puro.
   Nas páginas do construtor a medida foi retirada por decisão do Alex (20/09):
   o texto estreito ao lado de uma seção larga lia como desalinhamento, e o
   desalinhamento incomoda mais do que a linha longa ajuda. */
.single-page-article .entry > p,
.single-page-article .entry > ul,
.single-page-article .entry > ol,
.single-page-article .entry > blockquote {
	max-width: var(--pp-medida);
}

/* ---------- Tipografia do conteúdo ---------- */
#content-wrap .entry p,
#content-wrap .entry li {
	font-family: var(--pp-fonte-texto);
	font-size: var(--pp-fs-corpo);
	line-height: var(--pp-lh-corpo);
	color: var(--pp-texto-apoio);
}
#content-wrap .entry p { margin: 0 0 var(--pp-e5); }
#content-wrap .entry li { margin-bottom: var(--pp-e2); }

#content-wrap h1, #content-wrap h2, #content-wrap h3, #content-wrap h4 {
	font-family: var(--pp-fonte-titulo);
	font-weight: var(--pp-peso-titulo);
	letter-spacing: var(--pp-tracking-titulo);
	color: var(--pp-texto);
	text-transform: none;
}
#content-wrap h2 {
	font-size: var(--pp-fs-h2);
	line-height: var(--pp-lh-h2);
	margin: var(--pp-e8) 0 var(--pp-e4);
}
#content-wrap h3 {
	font-size: var(--pp-fs-h3);
	line-height: var(--pp-lh-h3);
	margin: var(--pp-e7) 0 var(--pp-e3);
}
#content-wrap h4 { font-size: var(--pp-fs-h4); line-height: var(--pp-lh-h4); margin: var(--pp-e6) 0 var(--pp-e3); }
#content-wrap .entry > *:first-child { margin-top: 0; }

/* O filete é deliberado, não automático: numa página com dezesseis perguntas,
   um filete por título vira listra. Quem quiser, usa `.pp-secao-titulo`. */
.pp-secao-titulo::before {
	content: "";
	display: block;
	width: 48px;
	height: 2px;
	background: var(--pp-filete);
	margin-bottom: var(--pp-e3);
}

#content-wrap .entry a {
	color: var(--pp-link);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}
#content-wrap .entry a:hover { color: var(--pp-azul-600); }

/* O tema desenha uma coluna com borda mesmo sem widget nenhum dentro. */
#right-sidebar, #left-sidebar { display: none; }

/* O post e a listagem do blog têm templates próprios (single.php, home.php) e
   estilo em blog.css. As regras de remendo sobre a estrutura do OceanWP que
   moravam aqui saíram junto com ela. */


/* Página de texto puro: a coluna de leitura fica centrada, como em impresso.
   Nas páginas do construtor não — lá existem seções de duas colunas que
   precisam da largura inteira. */
body.page-template-default .single-page-article .entry {
	max-width: var(--pp-container-estreito);
	margin-inline: auto;
}
body.page-template-default .single-page-article .entry > p,
body.page-template-default .single-page-article .entry > ul,
body.page-template-default .single-page-article .entry > ol,
body.page-template-default .single-page-article .entry > blockquote {
	max-width: none;
}

@media (max-width: 767px) {
	.pp-hero-pagina { padding-block: var(--pp-e7) var(--pp-e6); }
	#content-wrap.container { padding-block: var(--pp-secao-y-mob); }
	#content-wrap h2 { margin-top: var(--pp-e7); }
}
