/*
Theme Name: Pires Villela
Theme URI: https://piresvillela.com.br/
Author: Pires Villela Advocacia
Description: Tema próprio do escritório Pires Villela, com o mesmo visual do site atual (Astra) sem depender do Astra, do Elementor nem do Swipe Slider. SEO embutido, carrossel de avaliações próprio e cores editáveis em Aparência › Personalizar.
Version: 3.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pires-villela
*/

/*
 * As regras abaixo reproduzem, com os mesmos seletores e valores, o CSS que o
 * tema Astra 4.13 (Brainstorm Force, GPL v2 ou posterior) gera hoje no site com
 * as configurações atuais. Assim páginas, artigos, painéis dos plugins e
 * páginas antigas do Elementor ficam com a mesma aparência.
 * Ficou de fora o que o site não usa (WooCommerce, busca no cabeçalho, cabeçalho
 * transparente, menus off-canvas etc.).
 */

/* ---------- 1. Variáveis (cores editáveis no Personalizador) ---------- */
:root {
	--ast-global-color-0: #046bd2;
	--ast-global-color-1: #045cb4;
	--ast-global-color-2: #1e293b;
	--ast-global-color-3: #334155;
	--ast-global-color-4: #F0F5FA;
	--ast-global-color-5: #FFFFFF;
	--ast-global-color-6: #ADB6BE;
	--ast-global-color-7: #111111;
	--ast-global-color-8: #111111;
	--ast-border-color: var(--ast-global-color-6);
	--ast-global-color-primary: var(--ast-global-color-5);
	--ast-global-color-secondary: var(--ast-global-color-4);
	--ast-global-color-alternate-background: var(--ast-global-color-7);
	--ast-global-color-subtle-background: var(--ast-global-color-6);
	--ast-code-block-background: #ECEFF3;
	--ast-comment-inputs-background: #F9FAFB;
	--ast-widget-bg-color: #fafafa;
	--ast-post-nav-space: 0;
	--ast-blog-title-font-weight: normal;
	--ast-container-default-xlg-padding: 3em;
	--wp--custom--ast-default-block-top-padding: 3em;
	--wp--custom--ast-default-block-right-padding: 3em;
	--wp--custom--ast-default-block-bottom-padding: 3em;
	--wp--custom--ast-default-block-left-padding: 3em;
	--wp--custom--ast-container-width: 1200px;
	--wp--custom--ast-content-width-size: 1200px;
	--wp--custom--ast-wide-width-size: calc(1200px + var(--wp--custom--ast-default-block-left-padding) + var(--wp--custom--ast-default-block-right-padding));

	--pv-header-bg: #646656;
	--pv-header-border: #c9ad62;
	--pv-menu: var(--ast-global-color-5);
	--pv-menu-hover: #be8d12;
	--pv-theme: #b19b09;
	--pv-link: #b19b09;
	--pv-link-hover: #b19b09;
	--pv-heading: var(--ast-global-color-3);
	--pv-footer-bg: #eeeeee;
	--pv-logo: 204px;
}
@media (max-width: 921px) {
	:root {
		--wp--custom--ast-default-block-right-padding: 2em;
		--wp--custom--ast-default-block-left-padding: 2em;
	}
}
@media (max-width: 544px) {
	:root {
		--wp--custom--ast-default-block-right-padding: 1.5em;
		--wp--custom--ast-default-block-left-padding: 1.5em;
	}
}

/* ---------- 2. Base ---------- */
address, blockquote, body, dd, dl, dt, fieldset, figure, h1, h2, h3, h4, h5, h6, hr, html, iframe, legend, li, ol, p, pre, textarea, ul { border: 0; font-size: 100%; font-style: inherit; font-weight: inherit; margin: 0; outline: 0; padding: 0; vertical-align: baseline; }
html { -webkit-text-size-adjust: 100%; box-sizing: border-box; font-size: 100%; }
*, :after, :before { box-sizing: inherit; }
body { margin: 0; color: var(--ast-global-color-3); background: #fff; font-style: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; }
a { background-color: transparent; color: var(--pv-link); text-decoration: none; transition: all .2s linear; }
a:hover, a:focus { color: var(--pv-link-hover); }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
abbr[title] { border-bottom: 1px dotted; cursor: help; }
b, strong { font-weight: 700; }
cite, dfn, em, i { font-style: italic; }
mark { background: 0 0; text-decoration: none; }
small { font-size: 80%; }
big { font-size: 125%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -.5em; }
sub { bottom: -.25em; }
img { border: 0; height: auto; max-width: 100%; vertical-align: middle; }
figure { margin: 0; }
hr { box-sizing: content-box; background-color: #ccc; border: 0; height: 1px; margin-bottom: 1.5em; }
pre { background: var(--ast-code-block-background); font-family: "Courier 10 Pitch", Courier, monospace; margin-bottom: 1.6em; overflow: auto; max-width: 100%; padding: 1.6em; }
code, kbd, pre, samp { font-size: 1em; }
code, kbd, tt, var { font: 1em Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; }
ol, ul { margin: 0 0 1.5em 3em; }
ul { list-style: disc; }
ol { list-style: decimal; }
li > ol, li > ul { margin-bottom: 0; margin-left: 1.5em; }
dt { font-weight: 600; }
dd { margin: 0 1.5em 1em; }
address { margin: 0 0 1.5em; font-style: italic; }
blockquote, q { quotes: "" ""; }
blockquote:after, blockquote:before, q:after, q:before { content: ""; }
blockquote { border-left: 5px solid var(--ast-border-color); padding: 20px; font-size: 1.1em; font-style: italic; line-height: inherit; position: relative; color: var(--ast-global-color-3); }
blockquote { margin: 1.5em; border-color: rgba(0, 0, 0, .05); }
table { border-collapse: separate; border-spacing: 0; border-width: 1px 0 0 1px; margin: 0 0 1.5em; width: 100%; }
table, td, th { border: 1px solid var(--ast-border-color); }
th { font-weight: 600; }
td, th { padding: .7em 1em; border-width: 0 1px 1px 0; }
iframe, embed, object { max-width: 100%; }
p { margin-bottom: 1.75em; }
::selection { background-color: var(--pv-theme); color: #000000; }

body, button, input, select, textarea, .ast-button, .ast-custom-button { font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif; font-weight: 400; font-size: 16px; font-size: 1rem; line-height: var(--ast-body-line-height, 1.65em); }

h1, h2, h3, h4, h5, h6 { clear: both; }
h1, h2, h3, h4, h5, h6, .entry-content :where(h1, h2, h3, h4, h5, h6), .site-title, .site-title a { font-weight: 600; }
h1, h2, h3, h4, h5, h6, .entry-content :where(h1, h2, h3, h4, h5, h6) { color: var(--pv-heading); }
h1, .entry-content :where(h1) { font-size: 40px; font-size: 2.5rem; line-height: 1.4em; }
h2, .entry-content :where(h2) { font-size: 32px; font-size: 2rem; line-height: 1.3em; }
h3, .entry-content :where(h3) { font-size: 26px; font-size: 1.625rem; line-height: 1.3em; }
h4, .entry-content :where(h4) { font-size: 24px; font-size: 1.5rem; line-height: 1.2em; }
h5, .entry-content :where(h5) { font-size: 20px; font-size: 1.25rem; line-height: 1.2em; }
h6, .entry-content :where(h6) { font-size: 16px; font-size: 1rem; line-height: 1.25em; }
@media (max-width: 921px) {
	html { font-size: 91.2%; }
	h1, .entry-content :where(h1) { font-size: 30px; }
	h2, .entry-content :where(h2) { font-size: 25px; }
	h3, .entry-content :where(h3) { font-size: 20px; }
}

.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background-color: #f1f1f1; border-radius: 2px; box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6); clip: auto !important; color: #21759b; display: block; font-size: 12.25px; font-size: .875rem; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }
.elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible { top: 0 !important; }
.site .skip-link { background-color: #f1f1f1; box-shadow: 0 0 1px 1px rgba(0, 0, 0, .2); color: #21759b; display: block; font-size: 14px; font-weight: 700; left: -9999em; outline: 0; padding: 15px 23px 14px; text-decoration: none; text-transform: none; top: -9999em; }
.site .skip-link:focus { clip: auto; height: auto; left: 6px; top: 7px; width: auto; z-index: 100000; outline: thin dotted; }
a:focus-visible, .ast-menu-toggle:focus-visible, .site .skip-link:focus-visible, .ast-button:focus { outline-style: dotted; outline-color: inherit; outline-width: thin; }

.alignleft { display: inline; float: left; margin-right: 1.5em; }
.alignright { display: inline; float: right; margin-left: 1.5em; }
.aligncenter { clear: both; text-align: center; display: block; margin-left: auto; margin-right: auto; }
.wp-caption { margin-bottom: 1.5em; max-width: 100%; }
.wp-caption img[class*=wp-image-] { display: block; margin-left: auto; margin-right: auto; }
.wp-caption .wp-caption-text { margin: .8075em 0; }
.wp-caption-text { text-align: center; }
.sticky, .bypostauthor { display: block; }
.ast-hidden { display: none !important; }
.ast-flex { display: flex; flex-wrap: wrap; }
.ast-inline-flex { display: inline-flex; align-items: center; flex-wrap: wrap; align-content: center; }
.ast-flex-grow-1 { flex-grow: 1; }
.ast-oembed-container { position: relative; padding-top: 56.25%; overflow: hidden; max-width: 100%; height: auto; }
body .ast-oembed-container * { position: absolute; top: 0; width: 100%; height: 100%; left: 0; }
body .wp-block-embed-pocket-casts .ast-oembed-container * { position: unset; }

/* ---------- 3. Botões e formulários ---------- */
button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; }
button, select { text-transform: none; }
button, html input[type=button], input[type=reset], input[type=submit] { -webkit-appearance: button; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
input[type=checkbox], input[type=radio] { box-sizing: border-box; padding: 0; }
input[type=search] { -webkit-appearance: textfield; box-sizing: content-box; }
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration { -webkit-appearance: none; }
input, select { line-height: 1; }
textarea { overflow: auto; width: 100%; padding-left: 3px; }
fieldset { border: 1px solid var(--ast-border-color); margin: 0; padding: .35em .625em .75em; }
legend { border: 0; padding: 0; }
fieldset legend { margin-bottom: 1.5em; padding: 0 .5em; }
optgroup { font-weight: 700; }
.ast-button, .button, button, input, select, textarea { color: #808285; font-weight: 400; font-size: 100%; margin: 0; vertical-align: baseline; }
.ast-button, .button, button, input[type=button], input[type=reset], input[type=submit] { border: 1px solid; border-color: var(--ast-border-color); border-radius: 2px; background: #e6e6e6; padding: .6em 1em .4em; color: #fff; }
.ast-button, .button, input[type=button], input[type=submit] { border-radius: 0; padding: 18px 30px; border: 0; box-shadow: none; text-shadow: none; }
input[type=email], input[type=number], input[type=password], input[type=reset], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea { color: #666; padding: .75em; height: auto; border-width: 1px; border-style: solid; border-color: var(--ast-border-color); border-radius: 2px; background: var(--ast-comment-inputs-background); box-shadow: none; box-sizing: border-box; transition: all .2s linear; -webkit-appearance: none; }
input[type=email]:focus, input[type=password]:focus, input[type=reset]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=url]:focus, select:focus, textarea:focus { background-color: #fff; color: #111; box-shadow: none; }
input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="search"]:focus, textarea:focus { border-color: var(--pv-theme); }
input[type="radio"]:checked, input[type=reset], input[type="checkbox"]:checked, input[type="checkbox"]:hover:checked, input[type="checkbox"]:focus:checked { border-color: var(--pv-theme); background-color: var(--pv-theme); box-shadow: none; }
input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="search"]:focus, input[type="number"]:focus, textarea:focus, .wp-block-search__input:focus, [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus, #ast-scroll-top:focus { border-style: dotted; border-color: inherit; border-width: thin; }
input { outline: none; }
input[type=search]:focus { outline: thin dotted; }

.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"], #comments .submit, .search .search-submit, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button, body .wp-block-file .wp-block-file__button { border-style: solid; border-width: 0; color: #000000; border-color: var(--pv-theme); background-color: var(--pv-theme); padding: 15px 30px; font-family: inherit; font-weight: 500; font-size: 16px; font-size: 1rem; line-height: 1em; }
button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover, .button:hover, input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus, body .wp-block-file .wp-block-file__button:hover, body .wp-block-file .wp-block-file__button:focus { color: #000000; background-color: var(--pv-theme); border-color: var(--pv-theme); }
.wp-block-button .wp-block-button__link, .wp-block-search .wp-block-search__button, body .wp-block-file .wp-block-file__button { border-color: var(--pv-theme); background-color: var(--pv-theme); color: #000000; font-family: inherit; font-weight: 500; line-height: 1em; font-size: 16px; font-size: 1rem; padding: 15px 30px; }
.wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:focus { color: #000000; background-color: var(--pv-theme); border-color: var(--pv-theme); }
@media (max-width: 921px) {
	.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"], #comments .submit, .search .search-submit, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button, body .wp-block-file .wp-block-file__button, .wp-block-button .wp-block-button__link, .wp-block-search .wp-block-search__button { padding: 14px 28px; }
}
@media (max-width: 544px) {
	.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"], #comments .submit, .search .search-submit, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button, body .wp-block-file .wp-block-file__button, .wp-block-button .wp-block-button__link, .wp-block-search .wp-block-search__button { padding: 12px 24px; }
}
.wp-block-button.is-style-outline .wp-block-button__link { border-color: var(--pv-theme); }
.wp-block-button.is-style-outline .wp-block-button__link.wp-element-button, .ast-outline-button { border-color: var(--pv-theme); font-family: inherit; font-weight: 500; font-size: 16px; font-size: 1rem; line-height: 1em; }
div.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), div.wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color), .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), .ast-outline-button { color: var(--pv-theme); }
.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover, .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover, .ast-outline-button:hover, .ast-outline-button:focus { color: #000000; background-color: var(--pv-theme); border-color: var(--pv-theme); }
.wp-block-button .wp-block-button__link.wp-element-button.is-style-outline:not(.has-background), .wp-block-button.is-style-outline > .wp-block-button__link.wp-element-button:not(.has-background), .ast-outline-button { background-color: transparent; }
.wp-block-buttons.aligncenter { justify-content: center; }

/* ---------- 4. Estrutura da página ---------- */
#page { position: relative; display: flex; flex-direction: column; min-height: 100vh; }
.admin-bar #page { min-height: calc(100vh - 32px); }
@media (max-width: 782px) { .admin-bar #page { min-height: calc(100vh - 46px); } }
#page .site-content { flex-grow: 1; }
.ast-container { max-width: 100%; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; }
@media (min-width: 922px) {
	.ast-container { max-width: 1240px; }
	.site-content .ast-container { display: flex; }
	.blog .site-content > .ast-container, .archive .site-content > .ast-container, .search .site-content > .ast-container, .single-post .site-content > .ast-container { max-width: 1200px; }
}
@media (max-width: 921px) { .site-content .ast-container { flex-direction: column; } }

#primary, #secondary { width: 100%; }
#primary { margin: 4em 0; }
.ast-plain-container, .ast-page-builder-template { background-color: var(--ast-global-color-5); background-image: none; }
.ast-plain-container.ast-no-sidebar #primary { margin-top: 0; margin-bottom: 0; }
/* O Astra só gera a margem de 60 px quando o título aparece; com o título oculto (Home, painéis) o conteúdo encosta no cabeçalho. */
@media (min-width: 1200px) { .ast-plain-container.ast-no-sidebar:not(.pv-title-hidden) #primary { margin-top: 60px; margin-bottom: 60px; } }
@media (max-width: 921px) { .ast-plain-container.ast-no-sidebar #primary { padding: 0; } }

.ast-separate-container { background-color: var(--ast-global-color-4); background-image: none; }
.ast-separate-container #primary { padding: 4em 0; margin: 0; border: 0; }
@media (min-width: 993px) {
	.ast-separate-container #primary, .ast-separate-container.ast-right-sidebar #primary { margin: 4em 0; padding: 0; }
	.ast-right-sidebar #primary { padding-right: 60px; }
}
@media (max-width: 992px) {
	.ast-separate-container #primary, .ast-separate-container.ast-right-sidebar #primary { padding-left: 0; padding-right: 0; }
	.ast-right-sidebar #primary { padding-right: 30px; }
}
@media (min-width: 922px) {
	#primary { width: 70%; }
	#secondary { width: 30%; }
	.ast-no-sidebar #primary { width: 100%; }
	.ast-right-sidebar #primary { border-right: 1px solid var(--ast-border-color); }
	.ast-right-sidebar #secondary { border-left: 1px solid var(--ast-border-color); margin-left: -1px; }
	.ast-separate-container.ast-right-sidebar #primary { border: 0; }
	.search-no-results.ast-separate-container #primary { margin-bottom: 4em; }
	.ast-separate-container.ast-two-container.ast-right-sidebar #secondary { padding-left: 30px; padding-right: 0; }
	.ast-separate-container.ast-right-sidebar #secondary { border: 0; margin-left: auto; margin-right: auto; }
	.ast-separate-container.ast-two-container #secondary .widget:last-child { margin-bottom: 0; }
}
@media (max-width: 921px) {
	.ast-right-sidebar #primary { padding-right: 0; }
	.ast-right-sidebar #secondary { padding-left: 0; }
	#secondary.secondary { padding-top: 0; }
	.ast-separate-container.ast-right-sidebar #secondary { padding-left: 1em; padding-right: 1em; }
	.ast-separate-container.ast-two-container #secondary { padding-left: 0; padding-right: 0; }
}

/* Largura total (Astra: "Full Width / Stretched", usado em páginas do Elementor) */
.ast-page-builder-template .site-content > .ast-container { max-width: 100%; padding: 0; }
.ast-page-builder-template .site-content #primary { padding: 0; margin: 0; }
.ast-page-builder-template .entry-header { margin-top: 4em; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; }
.ast-page-builder-template .entry-header.ast-header-without-markup { margin-top: 0; margin-bottom: 0; }
.ast-page-builder-template .entry-content[data-ast-blocks-layout] > *, .ast-page-builder-template .entry-content[data-ast-blocks-layout] > .alignfull:where(:not(.wp-block-group)) > * { max-width: none; }
.ast-page-builder-template .entry-content[data-ast-blocks-layout] > .inherit-container-width > *, .ast-page-builder-template .entry-content[data-ast-blocks-layout] > *:not(.wp-block-group) > *, .entry-content[data-ast-blocks-layout] > .wp-block-cover .wp-block-cover__inner-container { max-width: var(--wp--custom--ast-content-width-size); margin-left: auto; margin-right: auto; }
.ast-page-builder-template .entry-content[data-ast-blocks-layout] > .alignwide > * { max-width: var(--wp--custom--ast-wide-width-size); }
.elementor-template-full-width .ast-container { display: block; }
.elementor-posts-container [CLASS*="ast-width-"] { width: 100%; }
.elementor-widget-heading h1.elementor-heading-title { line-height: 1.4em; }
.elementor-widget-heading h2.elementor-heading-title { line-height: 1.3em; }
.elementor-widget-heading h3.elementor-heading-title { line-height: 1.3em; }
.elementor-widget-heading h4.elementor-heading-title { line-height: 1.2em; }
.elementor-widget-heading h5.elementor-heading-title { line-height: 1.2em; }
.elementor-widget-heading h6.elementor-heading-title { line-height: 1.25em; }

/* ---------- 5. Cabeçalho ---------- */
.site-header { z-index: 99; position: relative; }
.main-header-bar-wrap { position: relative; }
.main-header-bar { background-color: #fff; border-bottom-color: var(--ast-border-color); border-bottom-style: solid; margin-left: auto; margin-right: auto; z-index: 4; position: relative; }
.ast-primary-header-bar { background-color: var(--pv-header-bg); background-image: none; display: block; border-bottom: 4px solid var(--pv-header-border); }
.ast-mobile-header-wrap .ast-primary-header-bar, .ast-primary-header-bar .site-primary-header-wrap { min-height: 80px; }
.ast-builder-grid-row-container { display: grid; align-content: center; }
.ast-builder-grid-row { display: grid; grid-template-columns: auto auto; align-items: center; grid-column-gap: 20px; overflow-wrap: anywhere; }
.ast-builder-grid-row > .site-header-section { flex-wrap: nowrap; }
.ast-builder-layout-element { align-items: center; }
.site-header-section { height: 100%; min-height: 0; align-items: center; }
.site-header-section > * { padding: 0 10px; }
.site-header-section > div:first-child { padding-left: 0; }
.site-header-section > div:last-child { padding-right: 0; }
.site-header-section .ast-builder-menu { align-items: center; }
.ast-grid-right-section { justify-content: flex-end; }
.ast-builder-layout-element[data-section="title_tagline"] { display: flex; }
.site-branding { line-height: 1; align-self: center; }
.ast-site-identity { padding: 1em 0; }
.ast-logo-title-inline .ast-site-identity { display: inline-flex; vertical-align: middle; align-items: center; transition: all .2s linear; }
.ast-logo-title-inline .site-logo-img { padding-right: 1em; }
.site-logo-img img { transition: all .2s linear; }
header .custom-logo-link img { max-width: var(--pv-logo); width: var(--pv-logo); }
.site-title { font-size: 26px; font-size: 1.625rem; margin-bottom: 0; line-height: 1.2; }
.site-title a, .site-title a:focus, .site-title a:hover, .site-title a:visited { color: var(--ast-global-color-2); }

.main-navigation { height: 100%; display: inline-flex; }
.main-navigation ul { list-style: none; margin: 0; padding-left: 0; position: relative; }
.ast-builder-menu .main-navigation { padding: 0; }
.ast-builder-menu .main-navigation > ul { align-self: center; }
.ast-builder-menu-1 { display: flex; font-family: inherit; font-weight: inherit; }
.main-header-bar .main-header-bar-navigation, .site-navigation { height: 100%; }
.main-header-menu .menu-item, .main-header-bar .ast-masthead-custom-menu-items { position: relative; display: flex; justify-content: center; flex-direction: column; }
.main-header-menu .menu-link { text-decoration: none; padding: 0 1em; display: inline-block; transition: all .2s linear; }
.main-header-menu > .menu-item > .menu-link { height: 100%; align-items: center; display: flex; }
.site-header .menu-link * { transition: none; }
.ast-builder-menu-1 .menu-item > .menu-link { color: var(--pv-menu); }
.ast-builder-menu-1 .menu-link:hover, .ast-builder-menu-1 .main-header-menu > .menu-item:hover > .menu-link { color: var(--pv-menu-hover); }
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link, .ast-builder-menu-1 .current-menu-ancestor > .menu-link { color: var(--pv-menu); }
@media (min-width: 922px) {
	.ast-primary-header-bar .main-header-menu > .menu-item { line-height: 80px; }
	.ast-builder-menu .main-navigation > ul > li:last-child a { margin-right: 0; }
}
/* Submenus (o menu atual não tem; ficam prontos caso sejam criados) */
.main-header-menu .sub-menu { width: 240px; background: #fff; left: -999em; position: absolute; top: 100%; z-index: 99999; visibility: hidden; line-height: 1.45; }
.main-header-menu .menu-item:hover > .sub-menu, .main-header-menu .menu-item:focus-within > .sub-menu { right: auto; left: 0; visibility: visible; }
.main-header-menu .sub-menu .menu-item:hover > .sub-menu, .main-header-menu .sub-menu .menu-item:focus-within > .sub-menu { left: 100%; right: auto; top: -2px; }
.main-header-menu .sub-menu .menu-link { padding: .9em 1em; display: block; word-wrap: break-word; }
.ast-builder-menu-1 .sub-menu { border-top: 2px solid var(--pv-theme); box-shadow: 0 4px 10px -2px rgba(0, 0, 0, .1); }
.ast-builder-menu-1 .sub-menu .menu-item > .menu-link { color: var(--ast-global-color-3); }

/* Celular: cabeçalho próprio com botão do menu, como no Astra */
@media (max-width: 921.99px) { #ast-desktop-header { display: none; } }
@media (min-width: 922px) { #ast-mobile-header { display: none; } }
.ast-mobile-header-wrap .ast-primary-header-bar { display: grid; padding-left: 20px; padding-right: 20px; line-height: 3; }
.ast-mobile-header-wrap .site-branding { flex: 1; align-self: center; }
.ast-mobile-header-wrap .ast-site-identity { width: 100%; }
.ast-button-wrap { display: inline-block; }
.ast-button-wrap button { box-shadow: none; border: none; }
.ast-button-wrap .menu-toggle { width: 2.2em; height: 2.1em; font-size: 1.5em; font-weight: 400; border-radius: 2px; -webkit-font-smoothing: antialiased; vertical-align: middle; line-height: 1.8571428571; }
.ast-button-wrap .menu-toggle.main-header-menu-toggle { padding: .5em; align-items: center; display: flex; text-align: center; }
.ast-mobile-header-wrap .ast-button-wrap .menu-toggle.main-header-menu-toggle { display: flex; align-items: center; width: auto; height: auto; }
.ast-mobile-header-wrap .menu-toggle .mobile-menu-toggle-icon, .menu-toggle .mobile-menu-toggle-icon { display: inline-flex; align-self: center; }
.ahfb-svg-iconset { display: inline-flex; align-self: center; }
.ahfb-svg-iconset svg { width: 17px; height: 17px; transition: none; }
.ahfb-svg-iconset svg > * { transition: none; }
.menu-toggle .ast-close-svg { display: none; }
.menu-toggle.toggled .ast-mobile-svg { display: none; }
.menu-toggle.toggled .ast-close-svg { display: block; }
[data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal { color: var(--pv-theme); border: none; background: transparent; }
[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg { width: 20px; height: 20px; fill: var(--pv-theme); }
.ast-mobile-header-wrap .ast-mobile-header-content { display: none; background-color: #ffffff; }
.ast-main-header-nav-open .ast-mobile-header-wrap .ast-mobile-header-content { display: block; }
.ast-mobile-header-content > * { padding: 0; height: auto; }
.ast-mobile-header-content .ast-builder-menu { width: 100%; }
.ast-mobile-header-content .main-header-bar-navigation { line-height: 3; width: 100%; margin: 0; }
.ast-mobile-header-content .main-navigation { display: block; width: 100%; }
.ast-mobile-header-content .main-header-menu { border-top-width: 0; background-color: var(--ast-global-color-5); }
.ast-mobile-header-content .stack-on-mobile { flex-wrap: wrap; }
.ast-mobile-header-content .stack-on-mobile li { width: 100%; }
.ast-mobile-header-content .main-navigation ul .menu-item .menu-link { padding: 0 20px; display: inline-block; width: 100%; border: 0; background-color: var(--ast-global-color-5); }
.ast-mobile-header-content .main-header-menu > .menu-item > .menu-link { display: flex; }
.ast-mobile-header-content .main-header-menu .sub-menu { position: static; visibility: visible; width: auto; border: 0; box-shadow: none; line-height: 3; }
.ast-mobile-header-content .main-navigation .sub-menu .menu-item .menu-link { padding-left: 30px; }
.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item > .menu-link { color: var(--ast-global-color-3); }
.ast-builder-menu-mobile .main-navigation .menu-link:hover, .ast-builder-menu-mobile .main-navigation .main-header-menu > .menu-item:hover > .menu-link, .ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item > .menu-link, .ast-builder-menu-mobile .main-navigation .menu-item.current-menu-ancestor > .menu-link { color: var(--ast-global-color-1); background: var(--ast-global-color-4); }

/* ---------- 6. Conteúdo ---------- */
.hentry { margin: 0 0 2em; }
.entry-header { margin-bottom: 1.2em; word-wrap: break-word; }
.page .entry-header { margin-bottom: 1.5em; }
.single .entry-header { margin-bottom: 2em; }
.ast-single-post .entry-header.ast-header-without-markup, .ast-single-post .entry-header.ast-no-title.ast-no-thumbnail { margin-bottom: 0; }
@media (max-width: 768px) { .ast-separate-container .entry-header { margin-bottom: 1em; } }
header.entry-header:not(.related-entry-header) { text-align: left; }
header.entry-header:not(.related-entry-header) > *:not(:last-child) { margin-bottom: 10px; }
.entry-title { margin-bottom: .5em; font-size: 30px; font-size: 1.875rem; }
.entry-title, .entry-title a { font-weight: var(--ast-blog-title-font-weight, normal); }
.entry-title a { color: var(--pv-heading); }
.ast-single-post .entry-title, .ast-single-post .entry-title a { line-height: 1.2; }
header.entry-header:not(.related-entry-header) .entry-title { font-weight: 600; font-size: 32px; font-size: 2rem; }
.entry-meta, .entry-meta * { line-height: 1.45; color: var(--pv-theme); }
.entry-meta a:not(.ast-button):hover, .entry-meta a:not(.ast-button):hover *, .entry-meta a:not(.ast-button):focus, .entry-meta a:not(.ast-button):focus *, .post-navigation a:hover { color: var(--pv-theme); }
.ast-related-post-title, .entry-meta * { word-break: break-word; }

.entry-content { word-wrap: break-word; }
.entry-content::after { display: table; clear: both; content: ""; }
.entry-content p, .entry-content .wp-video, .entry-content .wp-audio-shortcode { margin-bottom: 1.6em; }
.entry-content > :last-child, .entry-summary > :last-child, .page-content > :last-child { margin-bottom: 0; }
.entry-content :where(h1, h2, h3, h4, h5, h6) { margin-bottom: 20px; }
.entry-content li > p { margin-bottom: 0; }
.entry-content ul, .entry-content ol { padding: revert; margin: revert; }
.entry-content[data-ast-blocks-layout] > figure { margin-bottom: 1em; }
.entry-content[data-ast-blocks-layout] > embed, .entry-content[data-ast-blocks-layout] > iframe, .entry-content[data-ast-blocks-layout] > object { max-width: 100%; }
.ast-single-post .entry-content a, .ast-comment-content a { text-decoration: underline; }
.ast-single-post .wp-block-button .wp-block-button__link, .ast-single-post .elementor-widget-button .elementor-button, .entry-content .wp-block-latest-posts > li > a, .ast-single-post .entry-content .wp-block-file__button, .ast-single-post .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link, .ast-single-post .ast-comment-content .comment-reply-link, .ast-single-post .ast-comment-content .comment-edit-link, .ast-single-post .entry-content .pv-carousel a { text-decoration: none; }
.page-links { clear: both; margin-top: 1em; }
.page-links .page-link, .single .post-navigation a { color: var(--pv-link); }
.page-links .page-link { padding: 0; margin: 0 0 .3em .3em; border: 2px solid var(--ast-border-color); background: 0 0; font-size: .8em; width: 2.5em; height: 2.5em; line-height: calc(2.5em - 4px); display: inline-block; text-align: center; transition: all .2s linear; }
.post-page-numbers.current .page-link { color: #000000; border-color: var(--pv-theme); background-color: var(--pv-theme); }

/* Blocos (mesmas regras do Astra para o editor de blocos) */
.entry-content > .wp-block-group, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns { padding-top: var(--wp--custom--ast-default-block-top-padding); padding-right: var(--wp--custom--ast-default-block-right-padding); padding-bottom: var(--wp--custom--ast-default-block-bottom-padding); padding-left: var(--wp--custom--ast-default-block-left-padding); }
.ast-plain-container.ast-no-sidebar .entry-content > .alignfull, .ast-page-builder-template .ast-no-sidebar .entry-content > .alignfull { margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); max-width: 100vw; width: 100vw; }
.ast-plain-container.ast-no-sidebar .entry-content .alignfull .alignfull, .ast-page-builder-template.ast-no-sidebar .entry-content .alignfull .alignfull, .ast-plain-container.ast-no-sidebar .entry-content .alignfull .alignwide, .ast-page-builder-template.ast-no-sidebar .entry-content .alignfull .alignwide, .ast-plain-container.ast-no-sidebar .entry-content .alignwide .alignfull, .ast-page-builder-template.ast-no-sidebar .entry-content .alignwide .alignfull, .ast-plain-container.ast-no-sidebar .entry-content .alignwide .alignwide, .ast-page-builder-template.ast-no-sidebar .entry-content .alignwide .alignwide, .ast-plain-container.ast-no-sidebar .entry-content .wp-block-column .alignfull, .ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-column .alignfull, .ast-plain-container.ast-no-sidebar .entry-content .wp-block-column .alignwide, .ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-column .alignwide { margin-left: auto; margin-right: auto; width: 100%; }
[data-ast-blocks-layout] .wp-block-separator:not(.is-style-dots) { height: 0; }
[data-ast-blocks-layout] .wp-block-separator { margin: 20px auto; }
[data-ast-blocks-layout] .wp-block-separator:not(.is-style-wide):not(.is-style-dots) { max-width: 100px; }
[data-ast-blocks-layout] .wp-block-separator.has-background { padding: 0; }
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) { margin: 20px auto; }
.entry-content[data-ast-blocks-layout] > * { max-width: var(--wp--custom--ast-content-width-size); margin-left: auto; margin-right: auto; }
.entry-content[data-ast-blocks-layout] > .alignwide { max-width: var(--wp--custom--ast-wide-width-size); }
.entry-content[data-ast-blocks-layout] .alignfull { max-width: none; }
.entry-content[data-ast-blocks-layout] .wp-block-cover:not(.alignleft):not(.alignright) { width: auto; }
.entry-content .wp-block-columns { margin-bottom: 0; }
.wp-block-quote:not(.has-text-align-right):not(.has-text-align-center) { border-left: 5px solid rgba(0, 0, 0, .05); }
.has-text-align-right > blockquote, blockquote.has-text-align-right { border-right: 5px solid rgba(0, 0, 0, .05); }
.has-text-align-left > blockquote, blockquote.has-text-align-left { border-left: 5px solid rgba(0, 0, 0, .05); }
.wp-block-pullquote { border: none; }
.wp-block-pullquote blockquote::before { content: "\201D"; font-family: "Helvetica", sans-serif; display: flex; transform: rotate(180deg); font-size: 6rem; font-style: normal; line-height: 1; font-weight: bold; align-items: center; justify-content: center; }
.has-text-align-right > blockquote::before { justify-content: flex-start; }
.has-text-align-left > blockquote::before { justify-content: flex-end; }
figure.wp-block-pullquote.is-style-solid-color blockquote { max-width: 100%; text-align: inherit; }
.wp-block-file { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; }
.wp-block-site-tagline, .wp-block-latest-posts .read-more { margin-top: 15px; }
.entry-content .wp-block-media-text .wp-block-media-text__content { padding: 0 0 0 8%; }
.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { padding: 0 8% 0 0; }
.entry-content .wp-block-media-text.has-background .wp-block-media-text__content { padding: 8%; }
.entry-content .wp-block-cover:not([class*="background-color"]):not(.has-text-color.has-link-color) .wp-block-cover__inner-container, .entry-content .wp-block-cover:not([class*="background-color"]) .wp-block-cover-image-text, .entry-content .wp-block-cover:not([class*="background-color"]) .wp-block-cover-text, .entry-content .wp-block-cover-image:not([class*="background-color"]) .wp-block-cover__inner-container { color: var(--ast-global-color-primary, var(--ast-global-color-5)); }
.wp-block-latest-posts > li > *:first-child, .wp-block-latest-posts:not(.is-grid) > li:first-child { margin-top: 0; }
.wp-block-latest-posts > li > *, .wp-block-latest-posts:not(.is-grid) > li { margin-top: 12px; margin-bottom: 12px; }
.wp-block-latest-posts .read-more { margin-bottom: 1.5em; }
.wp-block-latest-posts .wp-block-latest-posts__post-date, .wp-block-latest-posts .wp-block-latest-posts__post-author { font-size: 1rem; }
.entry-content > .wp-block-buttons { margin-bottom: 1.5em; }
.wp-block-search__inside-wrapper .wp-block-search__input { padding: 0 10px; color: var(--ast-global-color-3); background: var(--ast-global-color-primary, var(--ast-global-color-5)); border-color: var(--ast-border-color); }
.wp-block-search__no-button .wp-block-search__inside-wrapper .wp-block-search__input { padding-top: 5px; padding-bottom: 5px; }
.wp-block-loginout p label { display: block; }
.wp-block-loginout p:not(.login-remember):not(.login-submit) input { width: 100%; }
@media (max-width: 1200px) {
	.ast-separate-container .entry-content > .alignfull, .ast-separate-container .entry-content[data-ast-blocks-layout] > .alignwide, .ast-plain-container .entry-content[data-ast-blocks-layout] > .alignwide, .ast-plain-container .entry-content .alignfull { margin-left: calc(-1 * min(var(--ast-container-default-xlg-padding), 20px)); margin-right: calc(-1 * min(var(--ast-container-default-xlg-padding), 20px)); }
}
@media (min-width: 1201px) {
	.ast-separate-container .entry-content > .alignfull { margin-left: calc(-1 * var(--ast-container-default-xlg-padding)); margin-right: calc(-1 * var(--ast-container-default-xlg-padding)); }
	.ast-separate-container .entry-content[data-ast-blocks-layout] > .alignwide, .ast-plain-container .entry-content[data-ast-blocks-layout] > .alignwide { margin-left: calc(-1 * var(--wp--custom--ast-default-block-left-padding)); margin-right: calc(-1 * var(--wp--custom--ast-default-block-right-padding)); }
}
@media (min-width: 921px) {
	.ast-separate-container .entry-content .wp-block-group.alignwide:not(.inherit-container-width) > :where(:not(.alignleft):not(.alignright)), .ast-plain-container .entry-content .wp-block-group.alignwide:not(.inherit-container-width) > :where(:not(.alignleft):not(.alignright)) { max-width: calc(var(--wp--custom--ast-content-width-size) + 80px); }
	.ast-plain-container.ast-right-sidebar .entry-content[data-ast-blocks-layout] .alignfull { margin-left: -60px; margin-right: -60px; }
}
@media (min-width: 544px) {
	.entry-content > .alignleft { margin-right: 20px; }
	.entry-content > .alignright { margin-left: 20px; }
}
@media (max-width: 544px) {
	.wp-block-columns .wp-block-column:not(:last-child) { margin-bottom: 20px; }
	.wp-block-latest-posts { margin: 0; }
}
@media (max-width: 600px) {
	.entry-content .wp-block-media-text .wp-block-media-text__content, .entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { padding: 8% 0 0; }
	.entry-content .wp-block-media-text.has-background .wp-block-media-text__content { padding: 8%; }
}
:root .has-ast-global-color-0-color { color: var(--ast-global-color-0); }
:root .has-ast-global-color-0-background-color { background-color: var(--ast-global-color-0); }
:root .has-ast-global-color-1-color { color: var(--ast-global-color-1); }
:root .has-ast-global-color-1-background-color { background-color: var(--ast-global-color-1); }
:root .has-ast-global-color-2-color { color: var(--ast-global-color-2); }
:root .has-ast-global-color-2-background-color { background-color: var(--ast-global-color-2); }
:root .has-ast-global-color-3-color { color: var(--ast-global-color-3); }
:root .has-ast-global-color-3-background-color { background-color: var(--ast-global-color-3); }
:root .has-ast-global-color-4-color { color: var(--ast-global-color-4); }
:root .has-ast-global-color-4-background-color { background-color: var(--ast-global-color-4); }
:root .has-ast-global-color-5-color { color: var(--ast-global-color-5); }
:root .has-ast-global-color-5-background-color { background-color: var(--ast-global-color-5); }
:root .has-ast-global-color-6-color { color: var(--ast-global-color-6); }
:root .has-ast-global-color-6-background-color { background-color: var(--ast-global-color-6); }
:root .has-ast-global-color-7-color { color: var(--ast-global-color-7); }
:root .has-ast-global-color-7-background-color { background-color: var(--ast-global-color-7); }
:root .has-ast-global-color-8-color { color: var(--ast-global-color-8); }
:root .has-ast-global-color-8-background-color { background-color: var(--ast-global-color-8); }

/* Artigos e listagens em caixas brancas (Astra: "Separate Container") */
.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single:not(.ast-related-post), .ast-separate-container .error-404, .ast-separate-container .no-results, .ast-separate-container .related-posts-title-wrapper, .ast-separate-container .ast-archive-description, .ast-separate-container .comments-area .comment-respond, .ast-separate-container .comments-area .ast-comment-list li, .ast-separate-container .comments-area .comments-title { background-color: var(--ast-global-color-5); background-image: none; }
.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single { margin: 0; padding: 3em; border-bottom: 1px solid var(--ast-border-color); }
.ast-separate-container .ast-article-single { border-bottom: 0; }
.ast-separate-container .ast-article-single .ast-article-single { padding: 0; }
.ast-separate-container .ast-article-inner { background-color: transparent; background-image: none; }
.ast-article-post { margin-bottom: 2.5em; }
.ast-article-post:last-child { margin-bottom: 0; border-bottom: 0; }
.ast-article-inner { width: 100%; overflow-wrap: break-word; }
@media (max-width: 544px) {
	.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .comments-title, .ast-separate-container .ast-archive-description { padding: 1.5em 1em; }
	.ast-separate-container #content .ast-container { padding-left: .54em; padding-right: .54em; }
}

/* Listagens (blog, categorias, busca) */
.ast-archive-description { margin-bottom: 2.5em; padding-bottom: 1.3333em; border-bottom: 1px solid var(--ast-border-color); }
.ast-separate-container .ast-archive-description { border-bottom: 0; margin-bottom: 2em; }
body.archive .ast-archive-description, body.blog .ast-archive-description, body.search .ast-archive-description { max-width: 1200px; width: 100%; text-align: left; padding: 3em; }
.ast-archive-description .ast-archive-title, .ast-archive-description .ast-archive-title * { color: var(--pv-heading); font-weight: 600; font-size: 32px; font-size: 2rem; margin-bottom: 0; line-height: 1.3; }
.ast-archive-description > *:not(:last-child) { margin-bottom: 10px; }
.ast-archive-description p { margin-bottom: 0; }
.archive .entry-title, .blog .entry-title, .search .entry-title { line-height: 1.3; }
.ast-blog-featured-section { margin-bottom: 1.5em; }
.post-content > .read-more { margin-top: 1.5em; display: block; margin-bottom: .8em; }
.read-more a { display: inline-block; }
.ast-excerpt-container > p:last-child { margin-bottom: 0; }
.ast-pagination { margin-top: 2em; text-align: center; }
.ast-pagination .page-numbers { display: inline-block; width: 2.33333em; height: 2.33333em; font-size: 16px; line-height: calc(2.33333em - 3px); font-weight: 500; color: var(--pv-link); }
.ast-pagination .page-numbers.current { color: #000000; border-color: var(--pv-theme); background-color: var(--pv-theme); }
.ast-pagination .prev.page-numbers, .ast-pagination .next.page-numbers { width: auto; padding: 0 1.5em; }
.search-form { position: relative; display: flex; max-width: 420px; }
.search-form label { flex: 1; }
.search-form .search-field { width: 100%; }
.ast-404-layout-1 { text-align: center; margin: 4em auto; }
.ast-404-layout-1 h1.page-title { color: var(--ast-global-color-2); margin-bottom: 0; }
.ast-404-layout-1 .page-header { margin-bottom: 1.5em; }
.error-404 .page-sub-title { font-size: 1.5rem; font-weight: inherit; }
.ast-404-search { margin-top: 1.5em; }
.ast-404-search .search-form { margin: 0 auto; max-width: 370px; }

/* Navegação entre artigos */
.site-main .post-navigation { margin: 0 0 1.5em; overflow: hidden; }
.single .post-navigation { margin: 0; padding: 2em 0 0; border-top: 1px solid var(--ast-single-post-border, var(--ast-border-color)); }
.ast-separate-container .post-navigation { border-top: 0; padding-left: var(--ast-post-nav-space, 3.33333em); padding-right: var(--ast-post-nav-space, 3.33333em); }
.post-navigation a { background: 0 0; font-size: 1.06666rem; font-size: 1rem; padding: 0 var(--ast-post-nav-space, 1.5em); height: 2.33333em; line-height: calc(2.33333em - 3px); }
.single .post-navigation a { margin: 2px; display: inline-block; }
.single .post-navigation a { line-height: 1em; height: inherit; }
.post-navigation .nav-previous { position: relative; text-align: left; }
.post-navigation .nav-next { grid-column-start: 2; text-align: right; }
.single .nav-links .nav-previous, .single .nav-links .nav-next { color: var(--pv-link); }
@media (max-width: 768px) { .single .post-navigation { padding-top: 1.5em; } }
@media (min-width: 421px) {
	.single .post-navigation .nav-links { display: flex; width: 100%; }
	.single .post-navigation .nav-links:not(:has(.nav-previous)) { justify-content: flex-end; }
	.single .post-navigation .nav-next, .single .post-navigation .nav-previous { width: 50%; }
}
@media (max-width: 420px) {
	.single .post-navigation .ast-left-arrow, .single .post-navigation .ast-right-arrow { display: none; }
	.single .post-navigation .nav-previous { margin-bottom: 1em; }
	.single .nav-links .nav-previous, .single .nav-links .nav-next { width: 100%; text-align: center; }
	.ast-separate-container .post-navigation { padding-left: 0; padding-right: 0; }
}

/* Artigos relacionados */
.ast-single-related-posts-container { border-top: 1px solid var(--ast-single-post-border, var(--ast-border-color)); padding-top: 2em; background-color: var(--ast-global-color-5); background-image: none; }
.ast-separate-container .ast-single-related-posts-container { border-top: 0; }
.site .ast-single-related-posts-container { padding: 2.5em; margin-top: 2em; }
.ast-related-posts-title-section { padding-bottom: 2em; }
.ast-related-posts-title { color: var(--ast-global-color-2); font-size: 26px; font-size: 1.625rem; line-height: 1.6em; text-align: left; }
.ast-related-posts-wrapper { display: grid; grid-column-gap: 25px; grid-row-gap: 25px; grid-template-columns: repeat(2, 1fr); }
.ast-related-posts-wrapper .ast-related-post, .ast-related-post-featured-section { padding: 0; margin: 0; width: 100%; position: relative; }
.ast-related-posts-inner-section { height: 100%; }
.ast-related-post-content .entry-header, .ast-related-post-content .entry-meta { margin: 1em auto 1em auto; padding: 0; }
.ast-related-post-content .entry-meta { margin-top: .5em; }
.ast-related-post-content .entry-header .ast-related-post-title, .ast-related-post-content .entry-header .ast-related-post-title a { color: var(--ast-global-color-2); font-weight: 500; font-size: 20px; font-size: 1.25rem; line-height: 1em; }
.ast-related-post-content .entry-meta, .ast-related-post-content .entry-meta * { font-size: 14px; font-size: .875rem; line-height: 1.6em; }
.ast-related-posts-inner-section .post-thumb-img-content { margin: 0; position: relative; }
.post-has-thumb + .entry-header, .post-has-thumb + .entry-content { margin-top: 1em; }
@media (max-width: 544px) {
	.ast-related-posts-title-section { padding-bottom: 1.5em; }
	.ast-single-related-posts-container .ast-related-posts-wrapper { grid-template-columns: 1fr; }
}

/* Comentários */
.site .comments-area { padding-bottom: 3em; }
.ast-separate-container .comments-area { margin-top: 2em; }
.ast-separate-container .comments-title { padding: 1.5em 2em; margin: 0; font-weight: 400; }
.ast-separate-container .comment-respond { padding: 3em; }
@media (max-width: 921px) { .ast-separate-container .comment-respond { padding: 2em 2.14em; } }
.comment-list { list-style: none; margin: 0; padding: 0; }
.ast-separate-container .comments-area .comment-list li.depth-1 { padding: 2em 3em; margin-bottom: 2em; }
.comment-list .children { list-style: none; margin-left: 2em; }
.comment-meta { margin-bottom: .5em; font-size: .875rem; }
.comment-author .avatar { border-radius: 50%; margin-right: .5em; vertical-align: middle; }
.comment-reply-title { font-size: 1.625rem; }
.comment-form p { margin-bottom: 1em; }
.comment-form input[type=text], .comment-form input[type=email], .comment-form input[type=url] { width: 100%; }

/* ---------- 7. Barra lateral ---------- */
#secondary { margin: 4em 0 2.5em; word-break: break-word; line-height: 2; }
#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea { font-size: 16px; font-size: 1rem; }
#secondary li { margin-bottom: .75em; line-height: 1.5em; }
#secondary li:last-child { margin-bottom: 0; }
#secondary .wp-block-group h2 { margin-bottom: .7em; }
#secondary h2 { font-size: 1.7rem; }
.ast-separate-container.ast-two-container #secondary .widget { background-color: var(--ast-global-color-5); background-image: none; padding: 2em; margin-bottom: 2em; }
@media (min-width: 993px) { .ast-right-sidebar #secondary { padding-left: 60px; } }
@media (max-width: 993px) { .ast-right-sidebar #secondary { padding-left: 30px; } }
@media (min-width: 922px) { .ast-sticky-sidebar .sidebar-main { top: 50px; position: -webkit-sticky; position: sticky; overflow-y: auto; } }
@media (max-width: 921px) {
	.ast-right-sidebar #secondary { padding-left: 0; }
	.ast-separate-container.ast-right-sidebar #secondary { padding-left: 1em; padding-right: 1em; }
	.ast-separate-container.ast-two-container #secondary { padding-left: 0; padding-right: 0; }
}
@media (max-width: 544px) {
	.ast-separate-container #secondary { padding-top: 0; }
	.ast-separate-container.ast-two-container #secondary .widget { margin-bottom: 1.5em; padding-left: 1em; padding-right: 1em; }
}
.widget { margin: 0 0 1.25em 0; }
.widget:last-child { margin-bottom: 0; }
.widget select { max-width: 100%; }
.widget ul { margin: 0; list-style-type: none; }
.widget-title { font-weight: 400; margin-bottom: 1em; line-height: 1.5; }
.widget-title, .widget .wp-block-heading { font-size: 22px; font-size: 1.375rem; color: var(--pv-heading); }
h1.widget-title, h2.widget-title, h3.widget-title { font-weight: 600; }
.no-widget-text { margin-bottom: 0; }

/* ---------- 8. Rodapé ---------- */
.site-footer-focus-item, .ast-footer-copyright, .ast-footer-social-wrap { width: 100%; }
.ast-builder-footer-grid-columns { grid-column-gap: 50px; }
.site-footer-section { justify-content: center; }
.site-footer-section > * { margin-bottom: 10px; }
.site-footer-section > :last-child { margin-bottom: 0; }
.site-above-footer-wrap, .site-below-footer-wrap { padding-top: 20px; padding-bottom: 20px; }
.ast-builder-grid-row-full .ast-builder-grid-row { grid-template-columns: 1fr; }
.ast-builder-grid-row-2-equal .ast-builder-grid-row { grid-template-columns: repeat(2, 1fr); }
.site-above-footer-wrap[data-section="section-above-footer-builder"] { background-color: var(--pv-footer-bg); background-image: none; min-height: 60px; display: grid; }
.site-above-footer-wrap[data-section="section-above-footer-builder"] .ast-builder-grid-row { max-width: 1200px; min-height: 60px; margin-left: auto; margin-right: auto; }
.site-above-footer-wrap[data-section="section-above-footer-builder"] .ast-builder-grid-row, .site-above-footer-wrap[data-section="section-above-footer-builder"] .site-footer-section { align-items: flex-start; }
.site-below-footer-wrap[data-section="section-below-footer-builder"] { background-color: var(--ast-global-color-5); background-image: none; min-height: 60px; border-style: solid; border-width: 0; border-top-width: 1px; border-top-color: var(--ast-global-color-subtle-background, var(--ast-global-color-6)); display: grid; }
.site-below-footer-wrap[data-section="section-below-footer-builder"] .ast-builder-grid-row { max-width: 1200px; min-height: 60px; margin-left: auto; margin-right: auto; }
.site-below-footer-wrap[data-section="section-below-footer-builder"] .ast-builder-grid-row, .site-below-footer-wrap[data-section="section-below-footer-builder"] .site-footer-section { align-items: center; }
@media (max-width: 921px) {
	.ast-footer-row-tablet-stack .site-footer-section { display: block; margin-bottom: 10px; }
	.ast-builder-grid-row-container.ast-builder-grid-row-tablet-2-equal .ast-builder-grid-row { grid-template-columns: repeat(2, 1fr); }
	.ast-builder-grid-row-container.ast-builder-grid-row-tablet-full .ast-builder-grid-row { grid-template-columns: 1fr; }
}
@media (max-width: 544px) {
	.ast-footer-row-mobile-stack .site-footer-section { display: block; margin-bottom: 10px; }
	.ast-builder-grid-row-container.ast-builder-grid-row-mobile-full .ast-builder-grid-row { grid-template-columns: 1fr; }
}
.footer-widget-area.widget-area.site-footer-focus-item { width: auto; }
.footer-widget-area[data-section^="sidebar-widgets-footer-widget-"].footer-widget-area-inner { text-align: left; }
.footer-widget-area[data-section^="section-fb-html-"] { display: block; }
.footer-widget-area[data-section^="section-fb-html-"] .ast-builder-html-element { text-align: center; }
.ast-builder-html-element img.alignnone { display: inline-block; }
.ast-builder-html-element p:first-child { margin-top: 0; }
.ast-builder-html-element p:last-child { margin-bottom: 0; }
.ast-builder-html-element .wp-block-site-title { box-sizing: border-box; }
.ast-builder-html-element .wp-block-site-title :where(a) { color: inherit; font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; letter-spacing: inherit; line-height: inherit; text-decoration: inherit; }
.ast-builder-layout-element[data-section="section-fb-social-icons-1"] { display: flex; }
[data-section="section-fb-social-icons-1"] .footer-social-inner-wrap { text-align: center; }
.ast-builder-social-element { line-height: 1; color: var(--ast-global-color-2); background: transparent; vertical-align: middle; transition: all .01s; margin-left: 6px; margin-right: 6px; justify-content: center; align-items: center; }
.ast-builder-social-element:hover { color: #0274be; }
.ast-builder-social-element .social-item-label { padding-left: 6px; }
.social-show-label-true .ast-builder-social-element { width: auto; padding: 0 .4em; }
.ast-footer-social-wrap .ast-builder-social-element:first-child { margin-left: 0; }
.ast-footer-social-wrap .ast-builder-social-element:last-child { margin-right: 0; }
.ast-footer-social-1-wrap .ast-builder-social-element svg { width: 18px; height: 18px; }
.ast-footer-copyright { text-align: center; }
.ast-footer-copyright p { margin-bottom: 0; }
.ast-footer-copyright.site-footer-focus-item { color: var(--ast-global-color-3); font-size: 16px; font-size: 1rem; }
.ast-footer-copyright.ast-builder-layout-element { display: flex; }
.site-footer a * { transition: all .2s linear; }

/* Voltar ao topo */
#ast-scroll-top { display: none; position: fixed; text-align: center; cursor: pointer; z-index: 99; width: 2.1em; height: 2.1em; line-height: 2.1; color: #ffffff; border-radius: 2px; outline: inherit; background-color: var(--pv-theme); font-size: 15px; padding: 0; border: 0; }
#ast-scroll-top:hover, #ast-scroll-top:focus { color: #ffffff; background-color: var(--pv-theme); }
#ast-scroll-top.is-visible { display: block; }
#ast-scroll-top .ast-icon.icon-arrow svg { margin-left: 0; vertical-align: middle; transform: translate(0, -20%) rotate(180deg); width: 1.6em; fill: currentColor; height: .6em; position: relative; }
@media (max-width: 921px) { #ast-scroll-top .ast-icon.icon-arrow svg { width: 1em; } }
.ast-scroll-to-top-right { right: 30px; bottom: 30px; }

/* ---------- 9. Carrossel de avaliações (substitui o Swipe Slider) ---------- */
.pv-carousel { position: relative; height: 350px; margin-left: auto; margin-right: auto; }
.pv-carousel__track { --pv-per: 1; --pv-gap: 15px; display: flex; gap: var(--pv-gap); height: 100%; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; overscroll-behavior-x: contain; cursor: grab; }
.pv-carousel__track::-webkit-scrollbar { display: none; }
.pv-carousel__track.is-dragging { scroll-snap-type: none; scroll-behavior: auto; cursor: grabbing; user-select: none; }
.pv-carousel__slide { flex: 0 0 calc((100% - (var(--pv-per) - 1) * var(--pv-gap)) / var(--pv-per)); height: 100%; margin: 0; scroll-snap-align: start; overflow: hidden; position: relative; }
.pv-carousel__slide img { width: 100%; height: 100%; object-fit: contain; object-position: center; pointer-events: none; -webkit-user-drag: none; }
@media (min-width: 481px) { .pv-carousel__track { --pv-per: 2; --pv-gap: 20px; } }
@media (min-width: 961px) { .pv-carousel__track { --pv-per: 3; --pv-gap: 30px; } }
.pv-carousel__btn { position: absolute; top: 50%; z-index: 10; width: 44px; height: 44px; margin-top: -22px; padding: 0; display: flex; align-items: center; justify-content: center; color: #1d0bbd; background: transparent; border: 0; cursor: pointer; }
.pv-carousel__btn:hover, .pv-carousel__btn:focus { color: #1d0bbd; background: transparent; }
.pv-carousel__btn svg { width: auto; height: 44px; fill: currentColor; }
.pv-carousel__btn--prev { left: 4px; }
.pv-carousel__btn--next { right: 4px; }
.pv-carousel__btn[disabled] { opacity: .35; cursor: auto; }
.pv-carousel__dots { position: absolute; left: 0; right: 0; bottom: 0; z-index: 10; display: flex; justify-content: center; gap: 8px; padding: 8px; }
.pv-carousel__dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: #333; opacity: .2; cursor: pointer; }
.pv-carousel__dot:hover, .pv-carousel__dot:focus { background: #333; }
.pv-carousel__dot[aria-current="true"] { opacity: 1; }
@media (prefers-reduced-motion: reduce) { .pv-carousel__track { scroll-behavior: auto; } }

/* Botão flutuante de WhatsApp (desligado por padrão no Personalizador) */
.pv-wa { position: fixed; left: 20px; bottom: 20px; z-index: 98; width: 56px; height: 56px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #25d366; color: #fff; box-shadow: 0 4px 14px rgba(0, 0, 0, .25); }
.pv-wa:hover, .pv-wa:focus { color: #fff; }
.pv-wa svg { width: 32px; height: 32px; fill: currentColor; }

/* ---------- 10. Modelo "Em branco" (painéis internos sem cabeçalho e rodapé) ---------- */
.pv-blank #primary { margin: 0; }
