:root {
	--vlr-brand-font-display: "Montserrat", "Segoe UI", Arial, sans-serif;
	--vlr-brand-font-body: "Inter", "Segoe UI", Arial, sans-serif;
	--vlr-brand-font-ui: "Inter", "Segoe UI", Arial, sans-serif;
	--vlr-space-2: 8px;
	--vlr-space-3: 12px;
	--vlr-space-4: 16px;
	--vlr-space-5: 20px;
	--vlr-space-6: 24px;
	--vlr-space-7: 32px;
	--vlr-button-height: 48px;
	--vlr-button-padding-x: 24px;
	--vlr-button-padding-y: 14px;
}

/*
 Theme Name:   Velociraptor
 Theme URI:    https://generatepress.com
 Description:  Child theme do GeneratePress — Velociraptor (identificação do projeto ProPag).
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.3.3
 Text Domain:  velociraptor
*/

/* ========== Largura do contêiner (sincronizada com Personalizar > Layout > Largura do contêiner) ========== */
.velociraptor-container {
	max-width: var(--velociraptor-container-width, 1200px);
	margin-left: auto;
	margin-right: auto;
}

body,
p {
	font-family: var(--vlr-brand-font-body);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--vlr-brand-font-display);
}

h1,
h2,
h3 {
	hyphens: none;
	-webkit-hyphens: none;
	text-wrap: balance;
	overflow-wrap: normal;
	word-break: normal;
}

h1 {
	font-weight: 700;
	font-size: var(--h1-size, clamp(2.4rem, 3.5vw, 3.85rem));
	line-height: 1.08;
	letter-spacing: -0.03em;
}

h2 {
	font-weight: 600;
	font-size: var(--h2-size, clamp(1.85rem, 2.35vw, 2.55rem));
	line-height: 1.15;
	letter-spacing: -0.025em;
}

h3 {
	font-weight: 600;
	font-size: var(--h3-size, clamp(1.18rem, 1.2vw, 1.4rem));
	line-height: 1.35;
}

body,
p,
li {
	font-weight: 400;
	font-size: var(--body-size, 1rem);
	line-height: var(--line-height, 1.72);
}

button,
input,
select,
textarea,
label,
.button,
.wp-block-button__link,
.menu-toggle,
.main-navigation a,
.site-header a,
.site-info,
.footer-widgets,
.widget,
.wp-block-navigation,
.wp-block-navigation a,
.fluentform,
.fluentform label,
.fluentform input,
.fluentform select,
.fluentform textarea,
.fluentform button,
.ff-btn,
.ff-btn-submit {
	font-family: var(--vlr-brand-font-body);
}

.site-title,
.site-title a,
.entry-title,
.widget-title,
.wp-block-heading,
.gp-post-title,
.vlr-card-title,
.vlr-section-title,
.vlr-product-title,
.vlr-product-section-title,
.vlr-product-form-title,
.vlr-cta-title {
	font-family: var(--vlr-brand-font-display);
}

.vlr-card-title,
.vlr-product-card-title,
.vlr-home-blog-card .wp-block-post-title {
	font-size: var(--h3-size, 1.25rem);
	line-height: 1.35;
	font-weight: 600;
}

@media (max-width: 767px) {
	h1 {
		font-size: var(--h1-size-mobile, 30px);
	}

	h2 {
		font-size: var(--h2-size-mobile, 26px);
	}

	h3,
	.vlr-card-title,
	.vlr-product-card-title,
	.vlr-home-blog-card .wp-block-post-title {
		font-size: var(--h3-size-mobile, 19px);
	}
}

body {
	background: var(--vlr-color-bg);
	color: var(--vlr-color-ink);
}

.site-main section,
.wp-block-group,
.vlr-home-section,
.vlr-home-hero,
.vlr-home-logos-band,
.vlr-home-cta,
.vlr-product-section,
.vlr-product-hero,
.vlr-product-logo-band,
.vlr-product-cta {
	scroll-margin-top: 32px;
}

.vlr-home-section,
.vlr-product-section {
	padding-top: max(var(--vlr-section-space-desktop), 80px);
	padding-bottom: max(var(--vlr-section-space-desktop), 80px);
}

.vlr-home-hero,
.vlr-product-hero {
	padding-top: 80px;
	padding-bottom: 80px;
}

.vlr-home-logos-band,
.vlr-product-logo-band,
.vlr-product-cta {
	padding-top: 80px;
	padding-bottom: 80px;
}

/* Faixa neutra da CTA (respiro como referência; detalhe em product-pages + home.css). */
.vlr-home-section.vlr-home-cta {
	/* Respiro vertical simétrico: antes padding-bottom (72–112px) era maior que o top e criava
	   uma “faixa” creme muito larga *abaixo* do cartão escuro (não estava faltando fundo). */
	padding-block: clamp(48px, 6vw, 88px);
	/* Mesmo canvas que o corpo; --vlr-color-neutral hoje vem alinhado em design-system asset-loader. */
	background: var(--vlr-color-bg, var(--vlr-color-neutral, #F7F5F2));
	width: 100vw;
	margin-top: 0;
	margin-bottom: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

/*
 * Bloco CTA (full-bleed): o Gutenberg aplica margin-block. Com o fundo do artigo, fica
 * faixa clara em cima ou entre a CTA e o rodapé.
 */
.vlr-home-section.vlr-home-cta,
.vlr-site-cta--auto.vlr-home-cta,
article .alignfull.vlr-home-section.vlr-home-cta,
article .alignfull.vlr-home-cta,
.entry-content .alignfull.vlr-home-section.vlr-home-cta,
.entry-content .alignfull.vlr-home-cta {
	margin-block: 0 !important;
}

.wp-block-button__link,
button:not([class*="ff-btn"]),
input[type="submit"]:not([class*="ff-btn"]),
input[type="button"],
.button,
.vlr-btn-primary .wp-block-button__link,
.vlr-product-page .wp-block-button__link {
	min-height: var(--vlr-button-height);
	padding: var(--vlr-button-padding-y) var(--vlr-button-padding-x);
	border-radius: 4px !important;
	border: 0;
	background: #F78E2F;
	color: #F7F5F2 !important;
	font-weight: 600;
	font-size: 0.98rem;
	line-height: 1.2;
	box-shadow: none;
}

.wp-block-button.is-style-outline .wp-block-button__link,
.is-style-outline > .wp-block-button__link,
.vlr-btn-secondary .wp-block-button__link,
.vlr-product-page .is-style-outline > .wp-block-button__link,
.vlr-product-page .wp-block-button.is-style-outline > .wp-block-button__link {
	border: 2px solid #F78E2F !important;
	background: transparent !important;
	color: #F78E2F !important;
}

.wp-block-button__link:hover,
button:not([class*="ff-btn"]):hover,
input[type="submit"]:not([class*="ff-btn"]):hover,
input[type="button"]:hover,
.button:hover,
.vlr-btn-primary .wp-block-button__link:hover,
.vlr-product-page .wp-block-button__link:hover {
	background: #E6761F !important;
	color: #F7F5F2 !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.is-style-outline > .wp-block-button__link:hover,
.vlr-btn-secondary .wp-block-button__link:hover,
.vlr-product-page .is-style-outline > .wp-block-button__link:hover,
.vlr-product-page .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: #F78E2F !important;
	color: #F7F5F2 !important;
	border-color: #F78E2F !important;
}

.vlr-card,
.vlr-service-card,
.vlr-testimonial-card,
.vlr-process-card,
.vlr-stat-card,
.vlr-product-card,
.vlr-product-faq-card,
.vlr-product-mini-card,
.vlr-product-split-card {
	padding: 24px !important;
	border-radius: 4px !important;
	background: #F7F5F2;
}

/*
 * Cartão de formulário em páginas de produto/contato: visual em product-pages.css
 * (raio maior, vidro, padding); não usar o bloco genérico de cards acima.
 */

.vlr-section-head,
.vlr-product-section-head,
.vlr-product-faq-head {
	align-items: start !important;
	gap: var(--vlr-space-5);
}

.vlr-section-title,
.vlr-home-title,
.vlr-cta-title,
.vlr-product-title,
.vlr-product-section-title,
.vlr-product-form-title,
.vlr-product-cta-title {
	color: #111111;
	max-width: 22ch;
}

.vlr-section-text,
.vlr-home-lead,
.vlr-cta-text,
.vlr-product-lead,
.vlr-product-text,
.vlr-product-cta-text,
.entry-content p,
.widget p,
li {
	color: #4b4b4b;
	line-height: 1.72;
}

.wp-block-buttons,
.vlr-home-actions {
	gap: var(--vlr-space-3);
	align-items: center;
}

ol, ul {
	margin: 0 0 1.5em 1.2em;
}

/* Header B-2: compatível com Personalizar > Layout > Cabeçalho e Navegação primária.
   - Remove padding do .inside-header do GP para o .velociraptor-container controlar largura e gutters.
   - Remove max-width do .inside-header.grid-container para não comprimir o container (o .velociraptor-container define a largura). */
.site-header .inside-header {
	padding: 0;
}
.site-header .inside-header.grid-container {
	max-width: none;
}
/* Garante que o container ocupe toda a largura disponível do flex parent e não seja comprimido. */
.site-header .inside-header .velociraptor-container {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}
/* Drawer mobile: botões de seção (ex: "Para Você") não devem herdar CTA laranja global. */
.vlr-mobile-drawer .vlr-mobile-menu-button {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 0.75rem !important;
	background: transparent !important;
	color: var(--foreground, #0f172a) !important;
	border: none !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	padding: 8px 0 !important;
	min-height: 44px !important;
}
.vlr-mobile-drawer .vlr-mobile-menu-button:hover,
.vlr-mobile-drawer .vlr-mobile-menu-button:focus-visible {
	background: var(--muted, #f4f4f5) !important;
	color: var(--foreground, #0f172a) !important;
}
.vlr-mobile-drawer .vlr-mobile-menu-button[aria-expanded="true"] {
	background: var(--muted, #f4f4f5) !important;
}
.vlr-mobile-drawer .vlr-mobile-menu-button > span {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	line-height: 1.35 !important;
	text-decoration: underline !important;
	color: inherit !important;
	margin: 0 !important;
	padding: 0 !important;
}
.vlr-mobile-drawer .vlr-mobile-menu-button .vlr-mobile-menu-chevron {
	flex: 0 0 auto !important;
	align-self: center !important;
	margin-left: auto !important;
	color: inherit !important;
	stroke: currentColor !important;
	display: block !important;
	margin-top: 0 !important;
	margin-right: 0 !important;
	margin-bottom: 0 !important;
}
/* Mobile/tablet: respiro lateral (evita widgets + busca + menu colados na borda; alinha com footer-widgets). */
@media (max-width: 1023px) {
	.site-header .inside-header .velociraptor-container {
		padding-inline: 1rem;
	}
}

/* ========== Footer estilo B-2 Spirit ========== */

/* Footer widgets: container com padding horizontal (igual .container). */
.footer-widgets .velociraptor-container {
	margin-inline: auto;
	padding-inline: 1rem;
}

/* Logo do footer: máximo 200px de largura (também definido no template). */
.footer-widgets .velociraptor-footer-logo,
.footer-widgets .velociraptor-footer-logo img {
	max-width: 200px;
	width: auto;
	height: auto;
}

/* Listas do footer: sem marcador (::marker) e sem padding/margin de lista. */
.velociraptor-footer-social-list,
.velociraptor-footer-bar-menu,
.site-info .velociraptor-footer-bar-inner ul {
	list-style: none;
	padding-left: 0;
	margin: 0;
}
.velociraptor-footer-social-list li,
.velociraptor-footer-bar-menu li,
.site-info .velociraptor-footer-bar-inner ul li {
	list-style: none;
}

/* Home lead modal (form id 9): align visual with site forms/cards. */
#propag-lead-modal {
	padding: 20px;
}

#propag-lead-modal .propag-lead-modal__backdrop {
	background: rgba(15, 17, 19, 0.64) !important;
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
}

#propag-lead-modal .propag-lead-modal__dialog {
	width: min(560px, 94vw) !important;
	max-height: 88vh !important;
	overflow: auto !important;
	border-radius: 24px !important;
	padding: 24px 24px 20px !important;
	background:
		radial-gradient(circle at top right, rgba(250, 143, 36, 0.08), transparent 34%),
		linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(247,245,242,0.98) 100%) !important;
	border: 1px solid rgba(17, 17, 17, 0.06) !important;
	box-shadow: 0 22px 50px rgba(17, 20, 18, 0.16) !important;
}

#propag-lead-modal .propag-lead-modal__close {
	top: 12px !important;
	right: 14px !important;
	color: #4a4a4a !important;
	font-size: 1.4rem !important;
}

#propag-lead-modal h2 {
	margin: 0 0 12px !important;
	padding-right: 24px;
	font-family: var(--vlr-brand-font-display) !important;
	font-size: clamp(1.3rem, 1.9vw, 1.55rem) !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #111 !important;
}

#propag-lead-modal .ff-el-group {
	margin-bottom: 12px;
}

#propag-lead-modal .ff-el-input--label label {
	font-size: 0.9rem;
	font-weight: 700;
	color: #111;
	margin-bottom: 6px;
}

#propag-lead-modal input[type="text"],
#propag-lead-modal input[type="email"],
#propag-lead-modal input[type="tel"],
#propag-lead-modal select,
#propag-lead-modal textarea {
	min-height: 52px;
	border-radius: 14px;
	border: 1px solid rgba(18, 58, 63, 0.14);
	background: #fffdf9;
	padding: 12px 14px;
	box-shadow: none;
	font-size: 0.98rem;
}

#propag-lead-modal textarea {
	min-height: 120px;
}

#propag-lead-modal .ff-btn-submit,
#propag-lead-modal .ff-btn {
	min-height: 52px;
	border-radius: 4px !important;
	border: 0 !important;
	background: #F78E2F !important;
	color: #F7F5F2 !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	padding: 14px 24px !important;
	box-shadow: none !important;
}

#propag-lead-modal .ff-btn-submit:hover,
#propag-lead-modal .ff-btn:hover {
	background: #E6761F !important;
	color: #F7F5F2 !important;
}

@media (max-width: 767px) {
	#propag-lead-modal {
		padding: 12px;
	}

	#propag-lead-modal .propag-lead-modal__dialog {
		padding: 18px 16px 16px !important;
		border-radius: 16px !important;
	}
}
/* Ícones sociais: tamanho e espaçamento fixos. */
.velociraptor-footer-social-list svg {
	width: 1.25rem;
	height: 1.25rem;
	flex-shrink: 0;
	display: block;
}
.velociraptor-footer-social-list {
	gap: 1.5rem;
}
.velociraptor-footer-social-list li {
	line-height: 1;
}

/* ================= Overrides para carrossel Shadcn (não deixar regra global de botões sobrescrever) ================ */
button.shadcn-carousel-btn,
button.shadcn-carousel-dot {
	background-color: #ffffff !important;
	color: #111111 !important;
}

/* Barra site-info: mesma largura do header e footer-widgets (evita ficar comprimida).
   Remove padding e max-width do GP em .site-info e .inside-site-info.grid-container;
   só o .velociraptor-container controla a largura (igual ao header). */
.site-info {
	padding-left: 0;
	padding-right: 0;
}
.site-info .inside-site-info,
.site-info .inside-site-info.grid-container {
	width: 100%;
	max-width: none;
	padding: 0;
	box-sizing: border-box;
}
.site-info .velociraptor-container {
	width: 100%;
	box-sizing: border-box;
}
.site-info .velociraptor-footer-bar-inner {
	align-items: center;
	line-height: 1.5;
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.site-info .velociraptor-footer-bar-inner p {
	line-height: 1.5;
	margin: 0;
}
.site-info .velociraptor-footer-bar-inner ul li {
	line-height: 1.5;
	margin: 0;
}
.site-info .velociraptor-footer-bar-inner ul li a {
	text-decoration: none;
	white-space: nowrap;
}

/* Footer B2/modern: evita herdar body-size global alto (ex.: 18px via Personalizar). */
#footer-widgets .velociraptor-footer-about,
#footer-widgets .footer-widget-area,
#footer-widgets .footer-widget-area p,
#footer-widgets .footer-widget-area li,
#footer-widgets .footer-widget-area a {
	font-size: 0.95rem;
	line-height: 1.6;
}

#footer-widgets .footer-widget-area .widget-title,
#footer-widgets .footer-widget-area .vlr-footer-modern-widget-heading {
	font-size: 1.1rem;
	line-height: 1.3;
}

.site-info .velociraptor-footer-bar-inner,
.site-info .velociraptor-footer-bar-inner p,
.site-info .velociraptor-footer-bar-inner li,
.site-info .velociraptor-footer-bar-inner a {
	font-size: 0.95rem;
	line-height: 1.5;
}
@media (min-width: 768px) {
	.site-info .velociraptor-footer-bar-inner {
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		gap: 1.5rem;
	}
	.site-info .velociraptor-footer-bar-menu {
		flex-direction: row;
		align-items: center;
		gap: 1.5rem;
	}
}

/* ========== Header — menu principal (sem ::marker, espaçamento B2 Spirit) ========== */
/* Apenas list-style/margin para todos os ul do nav; NÃO aplicar display:flex aqui
   para não colocar submenus em linha */
.site-header nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
/* Menu principal: itens em LINHA (horizontal) */
.site-header .primary-menu,
.site-header nav .primary-menu {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}
/* Submenu desktop: lista em COLUNA (um item abaixo do outro) */
.site-header .vlr-submenu-list,
.site-header nav .vlr-submenu-list {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: 100% !important;
	gap: 0 !important;
}
.site-header .vlr-submenu-list li,
.site-header nav .vlr-submenu-list li {
	display: block !important;
	width: 100% !important;
}
/* Submenu shadcn: painel + texto à esquerda (alinha a asset-loader / GP). */
@media (min-width: 1024px) {
.site-header .primary-menu ul.absolute .vlr-submenu-panel,
.site-header nav .primary-menu ul.absolute .vlr-submenu-panel {
	text-align: left !important;
	background-color: var(--popover, #fff);
	color: var(--popover-foreground, #0a0a0a);
	border: 1px solid var(--border, #e4e4e7);
	box-shadow: 0 10px 15px -3px rgba(15, 23, 42, 0.1), 0 4px 6px -4px rgba(15, 23, 42, 0.08);
	border-radius: var(--radius, 0.375rem);
}
}
.site-header .primary-menu ul.absolute a.vlr-submenu-entry,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry {
	justify-content: flex-start !important;
	text-align: left !important;
}
.site-header .primary-menu ul.absolute a.vlr-submenu-entry .vlr-submenu-title,
.site-header .primary-menu ul.absolute a.vlr-submenu-entry .vlr-submenu-desc,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry .vlr-submenu-title,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry .vlr-submenu-desc {
	text-align: left !important;
}
@media (min-width: 1024px) {
.site-header .primary-menu ul.absolute a.vlr-submenu-entry:hover .vlr-submenu-desc,
.site-header .primary-menu ul.absolute a.vlr-submenu-entry:focus-visible .vlr-submenu-desc,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry:hover .vlr-submenu-desc,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry:focus-visible .vlr-submenu-desc {
	color: var(--muted-foreground, #71717a);
	opacity: 1;
}
.site-header .primary-menu ul.absolute a.vlr-submenu-entry:hover,
.site-header .primary-menu ul.absolute a.vlr-submenu-entry:focus-visible,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry:hover,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry:focus-visible {
	background: var(--muted, #f4f4f5) !important;
}
.site-header .primary-menu ul.absolute a.vlr-submenu-entry:hover .vlr-submenu-title,
.site-header .primary-menu ul.absolute a.vlr-submenu-entry:focus-visible .vlr-submenu-title,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry:hover .vlr-submenu-title,
.site-header nav .primary-menu ul.absolute a.vlr-submenu-entry:focus-visible .vlr-submenu-title {
	color: #F78E2F !important;
}
/* Item ativo no submenu permanece em laranja até mudar de página. */
.site-header .primary-menu ul.absolute li.current-menu-item > a.vlr-submenu-entry,
.site-header .primary-menu ul.absolute li.current_page_item > a.vlr-submenu-entry,
.site-header .primary-menu ul.absolute li.current-menu-ancestor > a.vlr-submenu-entry,
.site-header nav .primary-menu ul.absolute li.current-menu-item > a.vlr-submenu-entry,
.site-header nav .primary-menu ul.absolute li.current_page_item > a.vlr-submenu-entry,
.site-header nav .primary-menu ul.absolute li.current-menu-ancestor > a.vlr-submenu-entry {
	background: var(--muted, #f4f4f5) !important;
}
.site-header .primary-menu ul.absolute li.current-menu-item > a.vlr-submenu-entry .vlr-submenu-title,
.site-header .primary-menu ul.absolute li.current_page_item > a.vlr-submenu-entry .vlr-submenu-title,
.site-header .primary-menu ul.absolute li.current-menu-ancestor > a.vlr-submenu-entry .vlr-submenu-title,
.site-header nav .primary-menu ul.absolute li.current-menu-item > a.vlr-submenu-entry .vlr-submenu-title,
.site-header nav .primary-menu ul.absolute li.current_page_item > a.vlr-submenu-entry .vlr-submenu-title,
.site-header nav .primary-menu ul.absolute li.current-menu-ancestor > a.vlr-submenu-entry .vlr-submenu-title {
	color: #F78E2F !important;
}
}
/* Largura fixa do dropdown desktop (shadcn) ” especificidade maior que ul.absolute */
/* Submenu lista (1 coluna): 320px. 2/3 colunas têm classes vlr-submenu-w-2col / w-3col. */
.site-header .primary-menu ul.absolute.vlr-submenu-w-1col,
.site-header nav .primary-menu ul.absolute.vlr-submenu-w-1col {
	width: 320px !important;
	min-width: 320px !important;
	max-width: 320px !important;
}
.site-header .primary-menu ul.absolute.vlr-submenu-w-2col,
.site-header nav .primary-menu ul.absolute.vlr-submenu-w-2col {
	width: 496px !important;
	min-width: 496px !important;
	max-width: 496px !important;
}
.site-header .primary-menu ul.absolute.vlr-submenu-w-3col,
.site-header nav .primary-menu ul.absolute.vlr-submenu-w-3col {
	width: 720px !important;
	min-width: 720px !important;
	max-width: 720px !important;
}
/* Só o grid multi-coluna (ul.vlr-submenu-inner); não o ul.vlr-submenu-list da lista 1 col */
.site-header .vlr-submenu-panel ul.vlr-submenu-inner,
.site-header nav .vlr-submenu-panel ul.vlr-submenu-inner {
	display: flex !important;
	flex-direction: row !important;
}
.site-header .vlr-submenu-panel ul.vlr-submenu-inner > li.flex-1,
.site-header nav .vlr-submenu-panel ul.vlr-submenu-inner > li.flex-1 {
	flex: 1 1 0%;
	min-width: 0;
}
/* Título da coluna no submenu (shadcn) ” sempre visível, nunca colapsado */
.site-header .vlr-col-title,
.site-header nav .vlr-col-title {
	display: block !important;
	width: 100%;
	min-height: 2rem;
	visibility: visible !important;
	opacity: 1 !important;
	color: var(--muted-foreground, #71717a) !important;
	font-weight: 600;
	line-height: 1.25;
	box-sizing: border-box;
}
.site-header .vlr-col-title .vlr-col-title-text,
.site-header nav .vlr-col-title .vlr-col-title-text {
	display: inline-block;
	visibility: visible !important;
}
/* Ul do dropdown (container do submenu) e submenu aninhado: em coluna; largura 100% só quando sem classe de largura */
.site-header .primary-menu ul.absolute:not(.vlr-submenu-w-1col):not(.vlr-submenu-w-2col):not(.vlr-submenu-w-3col),
.site-header nav .primary-menu ul.absolute:not(.vlr-submenu-w-1col):not(.vlr-submenu-w-2col):not(.vlr-submenu-w-3col),
.site-header .submenu-nested {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: 100% !important;
}
.site-header .primary-menu ul.absolute > li,
.site-header .submenu-nested li {
	display: block !important;
	width: 100% !important;
}
.site-header nav ul li,
.site-header .primary-menu > li,
.site-header nav ul.sub-menu li {
	list-style: none;
}
/* Links do menu: padding igual ao B2 Spirit + sublinhado no hover */
.site-header .primary-menu > li > a,
.site-header nav .primary-menu > li > a {
	display: inline-flex;
	align-items: center;
	padding: 0.5rem 0.75rem;
	border-radius: calc(var(--radius, 0.375rem) - 2px);
	font-size: 0.875rem;
	font-weight: 500;
	text-decoration: none;
	transition: all 150ms ease;
	position: relative;
}
.site-header .primary-menu > li > a::before,
.site-header nav .primary-menu > li > a::before {
	content: "";
	position: absolute;
	inset-inline: 0;
	height: 1px;
	background: var(--vlr-header-menu-hover, var(--accent, currentColor));
	top: 100%;
	transform-origin: 100% 50%;
	transform: scale3d(0, 1, 1);
	transition: transform 0.3s;
}
.site-header .primary-menu > li > a:hover::before,
.site-header nav .primary-menu > li > a:hover::before {
	transform-origin: 0% 50%;
	transform: scale3d(1, 1, 1);
}
/* Botões de login e cadastro no header: sem underline. */
.site-header a.inline-flex {
	text-decoration: none;
}

/* Botão de cadastro no header: texto + ícone seta (estilo pill, flex, gap). */
.site-header .vlr-signup-button,
.site-header a.vlr-signup-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0.4285714286rem 0.7142857143rem 0.4285714286rem 1.1428571429rem;
	margin-left: 0.5rem;
	transition: background-color 0.4s ease-in-out, color 0.2s ease;
	color: var(--color-white, #ffffff) !important;
	text-decoration: none;
}
.site-header .vlr-signup-button .vlr-signup-button-icon {
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
	transition: transform 0.3s ease;
	transform-origin: center center;
}
.site-header .vlr-signup-button:hover .vlr-signup-button-icon,
.site-header .vlr-signup-button:focus-visible .vlr-signup-button-icon {
	/* Apenas gira no lugar (como o original), sem deslocar */
	transform: rotate(45deg);
}
@media (min-width: 1024px) {
	.site-header .vlr-signup-button,
	.site-header a.vlr-signup-button {
		display: inline-flex !important;
	}
}
@media (min-width: 1440px) {
	.site-header .vlr-signup-button,
	.site-header a.vlr-signup-button {
		min-width: 8rem;
	}
}

/* Texto "sobre" e ícones sociais: herdam cor do .footer-widgets (Personalizar > Cores > Footer Widgets > Texto). */
.footer-widgets .velociraptor-footer-about,
.footer-widgets .velociraptor-footer-social-list,
.footer-widgets .velociraptor-footer-social-list a {
	color: inherit;
}

/* Links no footer: sem underline por padrão; underline apenas no hover (exceto ícones sociais). */
.footer-widgets a {
	text-decoration: none;
}
.footer-widgets a:hover,
.footer-widgets a:focus {
	text-decoration: underline;
}
/* Ícones sociais: nunca exibir underline. */
.footer-widgets .velociraptor-footer-social-list a,
.footer-widgets .velociraptor-footer-social-list a:hover,
.footer-widgets .velociraptor-footer-social-list a:focus {
	text-decoration: none;
}

/* Footer B2 (ativo): alinhar títulos e garantir hover/ativo laranja nos links de produtos. */
.velociraptor-footer-b2 .footer-widget-area .widget-title,
.velociraptor-footer-b2 .footer-widget-area .vlr-footer-modern-widget-heading {
	white-space: nowrap;
	min-height: 2.4em;
}
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu a,
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu a:link,
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu a:visited {
	color: var(--vlr-footer-menu-link, #ffffff) !important;
	background: transparent !important;
}
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu a:hover,
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu a:focus,
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu a:focus-visible,
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu a:active {
	color: var(--vlr-footer-menu-hover, #F78E2F) !important;
	background: transparent !important;
	text-decoration: none !important;
}
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu .current-menu-item > a,
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu .current_page_item > a,
.velociraptor-footer-b2 .footer-widget-area .widget_nav_menu .menu .current-menu-ancestor > a {
	color: var(--vlr-footer-menu-active, var(--vlr-footer-menu-hover, #F78E2F)) !important;
	background: transparent !important;
}

/* Barra site-info: sem underline por padrão; underline apenas no hover. */
.site-info .velociraptor-footer-bar-inner a {
	text-decoration: none;
}
.site-info .velociraptor-footer-bar-inner a:hover,
.site-info .velociraptor-footer-bar-inner a:focus {
	text-decoration: underline;
}

/* ========== Formulário de comentários — estilo shadcn-ui (design limpo) ========== */
#commentform.vlr-comment-form {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem 1rem;
	margin-top: 1.5rem;
}
@media (min-width: 640px) {
	#commentform.vlr-comment-form {
		grid-template-columns: repeat(2, 1fr);
	}
	#commentform.vlr-comment-form .vlr-comment-field-author,
	#commentform.vlr-comment-form .vlr-comment-field-email {
		grid-column: span 1;
	}
}
#commentform.vlr-comment-form .vlr-comment-field-comment,
#commentform.vlr-comment-form .vlr-comment-field-url,
#commentform.vlr-comment-form .vlr-comment-field-cookies,
#commentform.vlr-comment-form .vlr-comment-submit-wrap {
	grid-column: 1 / -1;
}
.vlr-comment-title {
	margin-top: 0;
	margin-bottom: 1rem;
	font-size: 1.25rem;
	font-weight: 600;
	grid-column: 1 / -1;
}
.vlr-comment-field {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.vlr-comment-label {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.875rem;
	line-height: 1;
	font-weight: 500;
	color: var(--foreground, #0f172a);
}
.vlr-comment-field .vlr-required {
	color: var(--destructive, #dc2626);
}
/* Input (estilo shadcn) */
.vlr-comment-input {
	height: 2.25rem;
	width: 100%;
	min-width: 0;
	padding: 0.25rem 0.75rem;
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--foreground, #0f172a);
	background-color: transparent;
	border: 1px solid var(--input, #e2e8f0);
	border-radius: calc(var(--radius, 8px) - 2px);
	box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.05);
	transition: border-color, box-shadow 0.15s ease;
	outline: none;
}
.vlr-comment-input::placeholder {
	color: var(--muted-foreground, #64748b);
}
.vlr-comment-input:hover {
	border-color: var(--input, #e2e8f0);
}
.vlr-comment-input:focus-visible {
	border-color: var(--ring, #94a3b8);
	box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring, #94a3b8) 50%, transparent);
}
.vlr-comment-input:disabled {
	pointer-events: none;
	opacity: 0.5;
	cursor: not-allowed;
}
/* Textarea (estilo shadcn) */
.vlr-comment-textarea {
	width: 100%;
	min-height: 8rem;
	padding: 0.5rem 0.75rem;
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--foreground, #0f172a);
	background-color: transparent;
	border: 1px solid var(--input, #e2e8f0);
	border-radius: calc(var(--radius, 8px) - 2px);
	box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.05);
	transition: border-color, box-shadow 0.15s ease;
	outline: none;
	resize: vertical;
}
.vlr-comment-textarea::placeholder {
	color: var(--muted-foreground, #64748b);
}
.vlr-comment-textarea:focus-visible {
	border-color: var(--ring, #94a3b8);
	box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring, #94a3b8) 50%, transparent);
}
/* Checkbox cookies */
.vlr-comment-checkbox-wrap {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--foreground, #0f172a);
	cursor: pointer;
}
.vlr-comment-checkbox {
	width: 1rem;
	height: 1rem;
	margin-top: 0.125rem;
	accent-color: var(--primary, #0f172a);
}
/* Botão enviar: accent do GeneratePress (especificidade alta para não ser sobrescrito) */
.vlr-comment-submit-wrap {
	margin-top: 0.25rem;
}
#commentform.vlr-comment-form .vlr-comment-submit-wrap .vlr-comment-submit,
#commentform.vlr-comment-form button.vlr-comment-submit.submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	height: 2.5rem;
	padding: 0 1.5rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--base-3, #fff) !important;
	background-color: var(--accent, var(--primary, #0f172a)) !important;
	border: none !important;
	border-radius: calc(var(--radius, 8px) - 2px);
	cursor: pointer;
	transition: background-color 0.15s ease;
}
#commentform.vlr-comment-form .vlr-comment-submit-wrap .vlr-comment-submit:hover,
#commentform.vlr-comment-form .vlr-comment-submit-wrap .vlr-comment-submit:focus-visible,
#commentform.vlr-comment-form button.vlr-comment-submit.submit:hover,
#commentform.vlr-comment-form button.vlr-comment-submit.submit:focus-visible {
	background-color: color-mix(in oklab, var(--accent, var(--primary, #0f172a)) 85%, black) !important;
	outline: none;
}
#commentform.vlr-comment-form .vlr-comment-submit-wrap .vlr-comment-submit:focus-visible,
#commentform.vlr-comment-form button.vlr-comment-submit.submit:focus-visible {
	box-shadow: 0 0 0 3px color-mix(in oklab, var(--accent, var(--primary, #0f172a)) 50%, transparent);
}
#commentform.vlr-comment-form .vlr-comment-submit-wrap .vlr-comment-submit:disabled,
#commentform.vlr-comment-form button.vlr-comment-submit.submit:disabled {
	pointer-events: none;
	opacity: 0.5;
	cursor: not-allowed;
}

/* ========== Single post — header, meta, imagem destacada ========== */
.vlr-entry-header-inner {
	margin-bottom: 0;
}

/* Título do artigo: mesma escala que secções da home (--vlr-title-section), não H1 “hero” do GP */
body.single-post h1.entry-title.vlr-entry-title {
	font-family: var(--vlr-brand-font-display, inherit);
	font-weight: 700;
	letter-spacing: -0.02em;
	font-size: var(--vlr-title-section, clamp(1.9rem, 2.5vw, 2.65rem));
	line-height: 1.15;
	color: var(--vlr-color-ink, var(--foreground, #111));
}

@media (max-width: 640px) {
	body.single-post h1.entry-title.vlr-entry-title {
		font-size: clamp(1.55rem, 5.2vw, 1.95rem);
		line-height: 1.18;
	}
}

/* Badge da categoria (shadcn-ui) */
.vlr-entry-category {
	margin-bottom: 0.75rem;
}
.vlr-category-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	padding: 0.125rem 0.625rem;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.5;
	border-radius: calc(var(--radius, 0.375rem));
	background-color: var(--secondary);
	color: var(--secondary-foreground);
	text-decoration: none;
	transition: all 0.2s;
	border: 1px solid var(--border, #e4e4e7);
}
.vlr-category-badge:hover,
.vlr-category-badge:focus-visible {
	background-color: var(--primary);
	color: var(--primary-foreground);
	text-decoration: none;
}
.dark .vlr-category-badge {
	background-color: var(--secondary);
	color: #fff;
}
.dark .vlr-category-badge:hover,
.dark .vlr-category-badge:focus-visible {
	background-color: var(--primary);
	color: var(--primary-foreground);
	text-decoration: none;
}
.vlr-entry-subtitle {
	margin-top: 0.5rem;
	margin-bottom: 0;
	font-size: 1.125rem;
	line-height: 1.2;
}
@media (min-width: 768px) {
	.vlr-entry-subtitle {
		font-size: 1.25rem;
	}
}

.vlr-post-meta {
	margin-top: 0.75rem;
	margin-bottom: 1rem;
}
.vlr-post-meta-inner {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	font-size: 0.875rem;
}
.vlr-post-meta-avatar {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 9999px;
	overflow: hidden;
	border: 1px solid var(--border, #e2e8f0);
}
.vlr-post-meta-avatar-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.vlr-post-meta-text {
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
	line-height: 1;
}
.vlr-post-meta-label {
	color: var(--muted-foreground, #64748b);
}
.vlr-post-meta-author-link {
	font-weight: 600;
	text-decoration: none;
	color: inherit;
}
.vlr-post-meta-author-link:hover {
	text-decoration: underline;
}
.vlr-post-meta-dates {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.875rem;
	color: var(--muted-foreground);
}
.vlr-post-meta-sep {
	display: inline-block;
	margin: 0;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1;
	vertical-align: middle;
}

/* Separador após meta do autor (single post) */
.circle-wp-single-separator {
	height: 10px;
	width: 50%;
	max-width: 100%;
	margin-top: 1rem;
	margin-bottom: 1rem;
	position: relative;
}
@media (min-width: 768px) {
	.circle-wp-single-separator {
		width: 25%;
	}
}
/* Listagens (categoria, tag): separador mais estreito */
.vlr-archive-header .circle-wp-single-separator {
	width: 10%;
}
.circle-wp-single-separator-line {
	border-color: var(--primary) transparent transparent;
	border-style: solid;
	border-width: 6px 3px 0 0;
	display: inline-block;
	width: 85%;
	position: absolute;
	left: 0;
	top: 0;
}
.circle-wp-single-separator-ext {
	border-color: transparent transparent var(--accent, var(--primary));
	border-style: solid;
	border-width: 0 0 6px 3px;
	display: inline-block;
	width: 10%;
	position: absolute;
	right: 0;
	top: 0;
}

/* Single post: faixa após meta (autor/data/leitura) — mais discreta, alinhada ao corpo do artigo */
body.single-post .vlr-post-meta + .circle-wp-single-separator {
	width: 100%;
	max-width: 10rem;
	height: 8px;
	margin-top: 0.625rem;
	margin-bottom: 0.875rem;
}
body.single-post .vlr-post-meta + .circle-wp-single-separator .circle-wp-single-separator-line {
	border-width: 5px 2px 0 0;
	opacity: 0.85;
}
body.single-post .vlr-post-meta + .circle-wp-single-separator .circle-wp-single-separator-ext {
	border-width: 0 0 5px 2px;
	opacity: 0.75;
}

@media (max-width: 768px) {
	body.single-post .vlr-post-meta + .circle-wp-single-separator {
		max-width: min(14rem, 100%);
		height: 9px;
		margin-top: 0.75rem;
		margin-bottom: 1rem;
		margin-left: 0;
		margin-right: auto;
	}

	body.single-post .vlr-post-meta-inner {
		align-items: flex-start;
	}

	body.single-post .vlr-post-meta-dates {
		row-gap: 0.25rem;
	}
}
.vlr-featured-image-wrap {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}
.vlr-featured-image {
	margin: 0;
	width: 100%;
}
.vlr-featured-image-img {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	display: block;
	border-radius: calc(var(--radius, 8px));
	border: 1px solid var(--border, #e2e8f0);
}
.vlr-featured-image-caption {
	margin-top: 0.5rem;
	font-size: 0.875rem;
	color: var(--muted-foreground, #64748b);
	text-align: center;
}
.vlr-featured-image-source {
	font-style: italic;
}

/* ========== Single post — blockquote (conteúdo do post) ========== */
.entry-content blockquote,
.wp-block-quote:not(.is-style-large) blockquote,
.wp-block-quote blockquote {
	color: var(--primary);
	font-weight: 500;
	line-height: 1.2;
}
.entry-content blockquote cite,
.entry-content blockquote footer,
.wp-block-quote cite,
.wp-block-quote .wp-block-quote__citation,
.wp-block-quote footer {
	display: none;
}

/* ========== Share Bar (single post) — shadcn-ui ========== */
.vlr-share-bar {
	margin-top: 1rem;
	margin-bottom: 1.5rem;
	width: 100%;
}
.vlr-share-bar-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem;
}
.vlr-share-bar-group {
	position: relative;
}
/* Botões Google (Adicione-nos no / Leia no Google News) alinhados à direita da share bar */
.vlr-share-bar-inner .vlr-share-google-prefs {
	margin-left: auto;
}
.vlr-share-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	height: 2.25rem;
	padding: 0 0.75rem;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.5;
	border-radius: calc(var(--radius, 0.375rem));
	border: none;
	background: transparent;
	color: var(--vlr-share-bar-btn, var(--vlr-color-ink, #111111));
	cursor: pointer;
	transition: background-color 0.2s, color 0.2s;
	text-decoration: none;
}
.vlr-share-btn .vlr-share-icon {
	color: inherit;
}
.vlr-share-btn:hover {
	background-color: color-mix(in oklab, var(--vlr-share-bar-btn, var(--vlr-color-ink, #111)) 8%, transparent);
	color: var(--vlr-share-bar-btn, var(--vlr-color-ink, #111111));
}
.vlr-share-btn:active,
.vlr-share-btn[data-vlr-share-trigger][aria-expanded="true"] {
	color: var(--vlr-share-bar-active, var(--vlr-color-accent-strong, #e6761f));
}
.vlr-share-btn:focus-visible {
	outline: none;
	box-shadow: 0 0 0 2px color-mix(in oklab, var(--vlr-share-bar-active, var(--vlr-color-accent, #f78e2f)) 45%, transparent);
}
.vlr-share-icon {
	width: 1.25rem;
	height: 1.25rem;
	flex-shrink: 0;
}
.vlr-share-btn-text {
	white-space: nowrap;
}
@media (max-width: 767px) {
	.vlr-share-btn-text { display: none; }
}
.vlr-share-dropdown-wrap {
	position: relative;
}
.vlr-share-dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 50;
	margin-top: 0.25rem;
	min-width: 12rem;
	padding: 0.25rem;
	background: var(--popover, #fff);
	border: 1px solid var(--border, #e4e4e7);
	border-radius: calc(var(--radius, 0.375rem));
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
}
.vlr-share-dropdown-item {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	width: 100%;
	padding: 0.5rem 0.75rem;
	font-size: 0.875rem;
	border-radius: calc(var(--radius, 0.375rem) - 2px);
	background: transparent;
	border: none;
	color: var(--foreground, #0f172a);
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.15s;
	text-align: left;
}
.vlr-share-dropdown-icon {
	flex-shrink: 0;
	width: 1.125rem;
	height: 1.125rem;
}
.vlr-share-dropdown-item:hover {
	background-color: var(--secondary);
	color: var(--secondary-foreground);
}
.vlr-share-bar-sep {
	height: 1px;
	background: var(--border, #e4e4e7);
	margin-top: 1rem;
}

.vlr-share-like-btn .vlr-like-icon {
	transition: stroke 0.3s ease, color 0.2s ease;
}
.vlr-share-like-btn:active {
	color: var(--vlr-share-bar-active, var(--vlr-color-accent-strong, #e6761f));
}
.vlr-share-like-btn.vlr-share-liked .vlr-like-icon {
	stroke: var(--vlr-share-bar-active, var(--vlr-color-accent-strong, #e6761f));
	fill: none;
}
.vlr-share-like-btn.vlr-share-liked .vlr-like-count {
	color: var(--vlr-share-bar-active, var(--vlr-color-accent-strong, #e6761f));
}
.vlr-share-like-btn.vlr-share-liked {
	color: var(--vlr-share-bar-active, var(--vlr-color-accent-strong, #e6761f));
}
.vlr-share-like-btn.vlr-share-liked:hover {
	color: var(--vlr-share-bar-active, var(--vlr-color-accent-strong, #e6761f));
	background-color: color-mix(in oklab, var(--vlr-share-bar-active, var(--vlr-color-accent, #f78e2f)) 14%, transparent);
}
[id^="vlr-like-icon-"].like-animate {
	animation: vlr-like-bounce 0.3s ease;
	transform-origin: center;
}
@keyframes vlr-like-bounce {
	0% { transform: scale(1); }
	50% { transform: scale(1.2) rotate(5deg); }
	100% { transform: scale(1); }
}

/* ========== Post Footer (tags, disclaimer, Google News) — shadcn-ui ========== */
.vlr-post-footer {
	margin-top: 2rem;
	margin-bottom: 1rem;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}
.vlr-post-footer-disclaimer {
	border-left: 2px solid var(--muted, #f4f4f5);
	padding-left: 1rem;
}
.vlr-post-footer-disclaimer-text {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: var(--muted-foreground, #64748b);
	font-style: italic;
}
.vlr-post-footer-disclaimer-label {
	font-style: normal;
	font-weight: 600;
	color: var(--foreground, #0f172a);
}
.vlr-post-footer-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}
.vlr-post-footer-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.875rem;
}
/* Rótulo e tags: padrão shadcn-ui (--secondary, --secondary-foreground) */
.vlr-post-footer-tags-label {
	font-weight: 500;
	color: var(--foreground);
	margin-right: 0.25rem;
}
.vlr-post-footer-tag.btn-tag,
a.btn-tag,
.btn-tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 9999px;
	border: 1px solid transparent;
	padding: 0.25rem 0.75rem;
	font-weight: 600;
	transition: background-color 0.2s, color 0.2s, filter 0.2s;
	cursor: pointer;
	background-color: var(--secondary);
	color: var(--secondary-foreground);
	outline: none;
	text-decoration: none;
}
.vlr-post-footer-tag.btn-tag:hover,
.vlr-post-footer-tag.btn-tag:focus-visible,
a.btn-tag:hover,
a.btn-tag:focus-visible,
.btn-tag:hover,
.btn-tag:focus-visible {
	background-color: var(--primary);
	color: var(--primary-foreground);
	text-decoration: none;
}
.dark .vlr-post-footer-tag.btn-tag,
.dark a.btn-tag,
.dark .btn-tag {
	background-color: var(--secondary);
	color: #fff;
}
.dark .vlr-post-footer-tag.btn-tag:hover,
.dark .vlr-post-footer-tag.btn-tag:focus-visible,
.dark a.btn-tag:hover,
.dark a.btn-tag:focus-visible,
.dark .btn-tag:hover,
.dark .btn-tag:focus-visible {
	background-color: var(--primary);
	color: var(--primary-foreground);
	text-decoration: none;
}
.vlr-post-footer-gnews-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	height: 2.25rem;
	padding: 0 1rem;
	font-size: 0.875rem;
	font-weight: 500;
	border-radius: calc(var(--radius, 0.375rem));
	border: 1px solid var(--border, #e4e4e7);
	background: var(--background, #fff);
	color: var(--foreground, #0f172a);
	text-decoration: none;
	transition: background-color 0.2s, border-color 0.2s;
}
.vlr-post-footer-gnews-btn:hover {
	background: var(--accent, #f4f4f5);
	border-color: var(--input, #e4e4e7);
}
.vlr-post-footer-gnews-icon {
	width: 1.25rem;
	height: 1.25rem;
	flex-shrink: 0;
}

/* Ocultação visual segura: invisível na tela, legível para leitores de tela e SEO */
.vlr-visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* ========== Sidebar e seções: títulos com separador (widget, relacionados, inline) ========== */
.sidebar .widget-title::before,
.vlr-related-posts-title > h3.vlr-related-post-title::before,
.vlr-inline-related-title::before {
	content: "";
	display: block;
	width: 2rem;
	height: 0.25rem;
	background-color: var(--primary);
	border-radius: 9999px;
	flex-shrink: 0;
}
.sidebar .widget-title,
.vlr-related-posts-title > h3.vlr-related-post-title,
.vlr-inline-related-title {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 1.2rem;
	font-weight: 600;
	color: var(--accent-foreground, var(--foreground));
}
.sidebar .widget-title {
	margin: 1rem 0 0.75rem;
}
.sidebar .widget:first-child .widget-title {
	margin-top: 0;
}
.vlr-related-posts-title > h3.vlr-related-post-title {
	margin: 0 0 1.5rem;
}
.vlr-inline-related-title {
	margin: 0 0 0.75rem;
}

/* ========== Widget Posts Populares (24h / 48h / 7d) — layout tipo shadcn ========== */
.vlr-popular-posts-list {
	list-style: none;
	padding: 0;
	margin: 0;
}
.vlr-popular-posts-item {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin-bottom: 0.75rem !important;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid var(--border);
}
.vlr-popular-posts-item:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0;
	border-bottom: none;
}
.vlr-popular-posts-title-link,
.widget_vlr_popular_posts .vlr-popular-posts-title-link {
	display: block;
	font-size: 1.1rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--foreground);
	margin-bottom: 0;
}
.vlr-popular-posts-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin-top: 0.25rem;
	font-size: 0.875rem;
	color: var(--muted-foreground);
}
.widget_vlr_popular_posts a,
.vlr-popular-posts-list a {
	color: var(--foreground);
	text-decoration: none;
}
.widget_vlr_popular_posts a:hover,
.vlr-popular-posts-list a:hover {
	text-decoration: underline;
}
.vlr-popular-posts-item .vlr-popular-posts-thumb {
	width: 100px;
	height: 75px;
	object-fit: cover;
	border-radius: var(--radius, 0.375rem);
	flex-shrink: 0;
}

/* GeneratePress (.widget ul li em main.css): sem margem entre itens de lista nos widgets */
.widget ul li {
	margin-bottom: 0;
}

/* ========== Widget Posts recentes — mesma formatação de título e meta que Posts populares ========== */
.widget_recent_entries ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.widget_recent_entries li {
	margin-bottom: 0.75rem !important;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid var(--border);
}
.widget_recent_entries li:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0;
	border-bottom: none;
}
.widget_recent_entries li a {
	display: block;
	font-size: 1.1rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--foreground);
	margin-bottom: 0;
	text-decoration: none;
}
.widget_recent_entries li a:hover {
	text-decoration: underline;
}
.widget_recent_entries li .post-date {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.875rem;
	color: var(--muted-foreground);
}

/* ========== Página de arquivo (categoria, tag, autor, data) — estilo admin-theme ========== */
.vlr-archive-section {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.vlr-archive-breadcrumb .vlr-breadcrumb-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem 0.625rem;
	list-style: none;
	padding: 0;
	margin: 0;
	font-size: 0.875rem;
	color: var(--muted-foreground, #64748b);
}
.vlr-archive-breadcrumb .vlr-breadcrumb-item {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
}
.vlr-archive-breadcrumb a {
	color: inherit;
	text-decoration: none;
}
.vlr-archive-breadcrumb a:hover {
	color: var(--foreground, #0f172a);
}
.vlr-breadcrumb-sep {
	opacity: 0.6;
}

/* ========== Breadcrumb single (admin-theme-wp-v2 style: ícone casa + seta) ========== */
.vlr-breadcrumb-nav.mb-6 {
	margin-bottom: 1.5rem;
}
.vlr-breadcrumb-nav .vlr-breadcrumb-list-single {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem 0.625rem;
	list-style: none;
	padding: 0;
	margin: 0;
	font-size: 0.875rem;
	color: var(--contrast-2, var(--contrast-3, #71717a));
}
.vlr-breadcrumb-nav .vlr-breadcrumb-item-single {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
}
.vlr-breadcrumb-nav .vlr-breadcrumb-link,
.vlr-breadcrumb-nav a {
	color: inherit;
	text-decoration: none;
	transition: color 0.2s;
}
.vlr-breadcrumb-nav .vlr-breadcrumb-link:hover,
.vlr-breadcrumb-nav a:hover {
	color: var(--contrast, #222);
}
.vlr-breadcrumb-nav .vlr-breadcrumb-icon-home {
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
}
.vlr-breadcrumb-nav .vlr-breadcrumb-arrow {
	display: inline-flex;
	align-items: center;
	color: inherit;
	opacity: 0.7;
}
.vlr-breadcrumb-nav .vlr-breadcrumb-arrow svg {
	width: 0.875rem;
	height: 0.875rem;
}
/* Separador entre itens do breadcrumb single (ol contém apenas li; sem span no HTML) */
.vlr-breadcrumb-nav .vlr-breadcrumb-list-single li + li::before {
	content: '\203A';
	display: inline-flex;
	align-items: center;
	margin-right: 0.375rem;
	opacity: 0.7;
	color: inherit;
	font-size: 0.875rem;
}

.vlr-archive-title {
	margin-top: 0;
	margin-bottom: 0;
	color: var(--foreground, #0f172a);
	font-family: var(--vlr-brand-font-display, inherit);
	font-weight: 700;
	letter-spacing: -0.02em;
	font-size: clamp(1.5rem, 2vw, 1.875rem);
	line-height: 1.15;
	max-width: 28ch;
}
.vlr-archive-description {
	margin-top: 0;
	color: var(--muted-foreground, #64748b);
}
/* Cards em lista horizontal — full width */
.vlr-archive-posts {
	width: 100%;
	max-width: none;
}
.vlr-archive-card {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
	position: relative;
}
.vlr-archive-card:not(:last-child) {
	border-bottom: 1px solid var(--border, #e2e8f0);
	padding-bottom: 1.5rem;
}
.vlr-archive-card-inner {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}
/* Garantir que links fiquem clicáveis (acima de overlays/pseudo-elementos) */
.vlr-archive-card a {
	position: relative;
	z-index: 1;
	pointer-events: auto;
}
.vlr-archive-card-thumb-link,
.vlr-archive-card-thumb-placeholder {
	display: block;
	overflow: hidden;
	border-radius: calc(var(--radius, 8px) - 2px);
	text-decoration: none;
	color: inherit;
}
.vlr-archive-card-thumb-link:hover,
.vlr-archive-card-thumb-placeholder:hover {
	opacity: 0.9;
}
@media (min-width: 640px) {
	.vlr-archive-card-inner {
		flex-direction: row;
	}
	.vlr-archive-card-media {
		width: 260px;
		max-width: 260px;
		flex-shrink: 0;
	}
}
.vlr-archive-card-thumb {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	display: block;
}
.vlr-archive-card-thumb-placeholder {
	aspect-ratio: 16 / 9;
	background: var(--muted, #f1f5f9);
	min-height: 150px;
}
.vlr-archive-card-content {
	flex: 1;
	min-width: 0;
}
.vlr-archive-card-title {
	margin-top: 0;
	margin-bottom: 0;
	font-size: clamp(1.0625rem, 1.35vw, 1.1875rem);
	line-height: 1.3;
	font-weight: 600;
}
.vlr-archive-card-title a {
	text-decoration: none;
	color: inherit;
}
.vlr-archive-card-title a:hover {
	text-decoration: underline;
}
.vlr-archive-card-excerpt {
	margin-top: 0.75rem;
	margin-bottom: 0;
}
.vlr-archive-card-meta {
	margin-top: 0.75rem;
	display: flex;
	align-items: center;
	gap: 0.75rem;
}
.vlr-archive-card-meta-avatar {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 9999px;
	overflow: hidden;
	border: 1px solid var(--border, #e2e8f0);
}
.vlr-archive-card-meta-avatar-link {
	display: block;
	line-height: 0;
	width: 100%;
	height: 100%;
}
.vlr-archive-card-meta-avatar-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.vlr-archive-card-meta-text {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex-wrap: wrap;
}
.vlr-archive-card-meta-author {
	color: inherit;
	text-decoration: none;
}
.vlr-archive-card-meta-author:hover {
	text-decoration: underline;
	color: var(--foreground, #0f172a);
}
.vlr-archive-card-meta-sep {
	display: inline-block;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1;
	vertical-align: middle;
}
/* Paginação */
.vlr-archive-pagination {
	flex-wrap: wrap;
}
.vlr-pagination-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	font-size: 0.875rem;
	font-weight: 500;
	border: 1px solid var(--input, #e2e8f0);
	background: var(--background, #fff);
	border-radius: calc(var(--radius, 8px) - 2px);
	color: var(--foreground, #0f172a);
	text-decoration: none;
	transition: border-color, background-color, color 0.15s ease;
}
.vlr-pagination-btn:hover {
	background: var(--muted, #f1f5f9);
	color: var(--foreground, #0f172a);
}
.vlr-pagination-btn-active {
	background: var(--primary, #0f172a);
	color: var(--primary-foreground, #f8fafc);
	border-color: var(--primary, #0f172a);
}
.vlr-pagination-btn-disabled {
	opacity: 0.5;
	cursor: not-allowed;
	pointer-events: none;
}
.vlr-pagination-ellipsis {
	padding: 0 0.5rem;
	color: var(--muted-foreground, #64748b);
}

.vlr-archive-none {
	background: var(--card, #fff);
	border-color: var(--border, #e2e8f0);
}

/* ========== Single post: imagem destacada (abaixo do header) ========== */
.separate-containers .inside-article > .featured-image {
	margin-top: 2em;
	margin-bottom: 2em;
}

/* ========== Single: artigos relacionados ========== */
.vlr-related-posts .vlr-related-posts-wrap {
	padding-top: 2em;
	padding-bottom: 2em;
}
.vlr-related-posts-grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 769px) {
	.vlr-related-posts-grid {
		grid-template-columns: repeat(4, 1fr);
	}
}
@media (min-width: 481px) and (max-width: 768px) {
	.vlr-related-posts-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
.vlr-related-post-link {
	display: block;
	text-decoration: none;
	color: inherit;
}
.vlr-related-post-thumb {
	margin-bottom: 0.75rem;
	overflow: hidden;
	border-radius: 4px;
}
.vlr-related-post-thumb img,
.vlr-related-post-thumb-img {
	width: 100%;
	height: auto;
	display: block;
}
.vlr-related-post-link .vlr-related-post-title,
.vlr-related-posts-grid .vlr-related-post-title {
	display: block;
	font-size: 1.1rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--foreground);
	margin-bottom: 0;
}
.vlr-related-post-link:hover .vlr-related-post-title {
	text-decoration: underline;
}
/* Artigos relacionados inline (meio do post): 100×75px, responsivo */
.vlr-inline-related {
	margin: 2rem 0;
	padding: 1rem 0;
	border-top: 1px solid var(--border, #eaeaea);
	border-bottom: 1px solid var(--border, #eaeaea);
}
.vlr-inline-related-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr;
}
.vlr-inline-related-item {
	display: flex;
	gap: 0.75rem;
	align-items: center;
	text-decoration: none;
	color: inherit;
	min-width: 0;
}
/* Mesmo padrão de .vlr-popular-posts-thumb-link + .vlr-popular-posts-thumb */
.vlr-inline-related-thumb {
	flex-shrink: 0;
	display: block;
	line-height: 0;
	width: 100px;
	height: 75px;
	overflow: hidden;
	border-radius: calc(var(--radius, 8px) - 2px);
}
.vlr-inline-related-thumb-img {
	width: 100px;
	height: 75px;
	display: block;
	object-fit: cover;
	border-radius: calc(var(--radius, 8px) - 2px);
	box-sizing: border-box;
}
.vlr-inline-related-post-title {
	display: block;
	font-size: 1.1rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--foreground);
	margin-bottom: 0;
	flex: 1;
	min-width: 0;
}
.vlr-inline-related-item:hover .vlr-inline-related-post-title {
	text-decoration: underline;
}
@media (min-width: 480px) {
	.vlr-inline-related-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ========== Modal de busca GP com design shadcn-ui ========== */
/* Altura e posição do overlay: padrão do GeneratePress (25vh, flex-start) */
.gp-search-modal.gp-modal .gp-modal__overlay {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding-top: 25vh;
	padding-left: 1rem;
	padding-right: 1rem;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
}
.gp-search-modal.gp-modal .gp-modal__container {
	width: 100%;
	max-width: 500px;
	margin: 0;
}
/* Formulário do GP estilizado como popover shadcn */
.gp-search-modal .search-modal-form {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	background-color: var(--popover, #fff);
	color: var(--popover-foreground, #0a0a0a);
	border-radius: var(--radius, 0.375rem);
	border: 1px solid var(--border, #e4e4e7);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
	overflow: hidden;
}
.gp-search-modal .search-modal-fields {
	display: flex;
	align-items: center;
	flex: 1 1 0%;
	min-width: 0;
	border-bottom: 1px solid var(--border, #e4e4e7);
	padding-left: 0.75rem;
	padding-right: 0.5rem;
}
/* Ícone de busca (botão submit do GP) à esquerda — altura padrão GP 60px */
.gp-search-modal .search-modal-fields button[type="submit"] {
	order: -1;
	width: 60px;
	height: 60px;
	flex-shrink: 0;
	padding: 0;
	margin: 0;
	margin-right: 0.25rem;
	background: transparent;
	border: 0;
	color: var(--muted-foreground, #71717a);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gp-search-modal .search-modal-fields button[type="submit"]:hover {
	color: var(--popover-foreground, #0a0a0a);
}
.gp-search-modal .search-modal-fields button[type="submit"] .gp-icon svg,
.gp-search-modal .search-modal-fields button[type="submit"] svg {
	width: 1.25rem;
	height: 1.25rem;
}
/* Campo de busca: altura padrão do GP 60px */
.gp-search-modal .search-modal-form .search-field {
	flex: 1 1 0%;
	min-width: 0;
	height: 60px;
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	outline: none;
	font-size: 0.875rem;
	line-height: 1.5;
	color: inherit;
}
.gp-search-modal .search-modal-form .search-field::placeholder {
	color: var(--muted-foreground, #71717a);
}
/* Remove o X nativo do campo type="search" */
.gp-search-modal .search-modal-form .search-field::-webkit-search-cancel-button,
.gp-search-modal .search-modal-form .search-field::-webkit-search-decoration {
	-webkit-appearance: none;
	appearance: none;
}
.gp-search-modal .search-modal-form .search-field::-moz-search-cancel-button {
	display: none;
}

/* ========== Widget de busca (wp-block-search) — estilo shadcn-ui ========== */
.wp-block-search {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	width: 100%;
}
.wp-block-search__label {
	display: none;
}
.wp-block-search__inside-wrapper {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	width: 100%;
}
/* Input: padrão shadcn-ui (igual ao input_search do header) */
.wp-block-search__input {
	flex: 1 1 0%;
	min-width: 0;
	display: flex;
	height: 2.25rem;
	padding: 0.5rem 0.75rem;
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--foreground, #0f172a);
	background-color: transparent;
	border: 1px solid var(--input, #e4e4e7);
	border-radius: calc(var(--radius, 0.375rem));
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	transition: all 0.2s;
	outline: none;
}
.wp-block-search__input::placeholder {
	color: var(--muted-foreground, #71717a);
}
.wp-block-search__input:focus-visible {
	outline: none;
	box-shadow: 0 0 0 1px var(--ring, #3b82f6);
	border-color: var(--ring, #3b82f6);
}
.wp-block-search__input:disabled {
	cursor: not-allowed;
	opacity: 0.5;
}
/* Remove o X nativo do campo type="search" */
.wp-block-search__input::-webkit-search-cancel-button,
.wp-block-search__input::-webkit-search-decoration {
	-webkit-appearance: none;
	appearance: none;
}
.wp-block-search__input::-moz-search-cancel-button {
	display: none;
}
/* Botão: padrão shadcn-ui outline */
.wp-block-search__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	white-space: nowrap;
	height: 2.25rem;
	padding: 0.5rem 1rem;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.5;
	border-radius: calc(var(--radius, 0.375rem));
	border: 1px solid var(--border, #e4e4e7);
	background-color: var(--background, #ffffff);
	color: var(--foreground, #0f172a);
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	transition: all 0.2s;
	cursor: pointer;
	outline: none;
}
.wp-block-search__button:hover {
	background-color: var(--accent, #f4f4f5);
	color: var(--accent-foreground, #0f172a);
}
.wp-block-search__button:focus-visible {
	outline: none;
	box-shadow: 0 0 0 2px var(--ring, #3b82f6), 0 0 0 4px rgba(59, 130, 246, 0.1);
}
.wp-block-search__button:disabled {
	pointer-events: none;
	opacity: 0.5;
}
/* Variante: botão dentro do wrapper (button-inside) */
.wp-block-search__button-inside .wp-block-search__inside-wrapper {
	display: flex;
	align-items: center;
	border: 1px solid var(--input, #e4e4e7);
	border-radius: calc(var(--radius, 0.375rem));
	background-color: transparent;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	overflow: hidden;
	transition: all 0.2s;
}
.wp-block-search__button-inside .wp-block-search__inside-wrapper:focus-within {
	border-color: var(--ring, #3b82f6);
	box-shadow: 0 0 0 1px var(--ring, #3b82f6);
}
.wp-block-search__button-inside .wp-block-search__input {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding-left: 0.75rem;
	padding-right: 0.5rem;
}
.wp-block-search__button-inside .wp-block-search__input:focus-visible {
	box-shadow: none;
	border-color: transparent;
}
.wp-block-search__button-inside .wp-block-search__button {
	border: 0;
	border-left: 1px solid var(--border, #e4e4e7);
	border-radius: 0;
	box-shadow: none;
	margin: 0;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	background-color: transparent;
}
.wp-block-search__button-inside .wp-block-search__button:hover {
	background-color: var(--accent, #f4f4f5);
	color: var(--accent-foreground, #0f172a);
}

/* ========== GenerateBlocks — botão estilo AnimatedButton (Velociraptor) ==========
   Aplica a links do bloco Button do GB e a elementos com classe .vlr-animated-button.
   Efeito: pill com backdrop blur, borda, “orb” que expande no hover, seta à direita que gira.
   OBRIGATÓRIO para funcionar: no bloco, Avançado > Classes CSS adicionais = vlr-animated-button */
/* Força o estilo quando a classe vlr-animated-button está no link */
a.vlr-animated-button,
.gb-button-wrapper a.vlr-animated-button {
	position: relative !important;
	overflow: hidden !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 1.4285714286rem !important;
	width: max-content !important;
	padding: 0.5714285714rem 0.5714285714rem 0.5714285714rem 1.1428571429rem !important;
	border-radius: 2.8571428571rem !important;
	border: 1px solid hsla(0, 0%, 94%, 0.4) !important;
	background-color: hsla(0, 0%, 94%, 0.051) !important;
	-webkit-backdrop-filter: blur(40px);
	backdrop-filter: blur(40px);
	cursor: pointer !important;
	transition: all 0.25s ease-in-out !important;
	text-decoration: none !important;
	color: var(--vlr-animated-btn-text, #f0f0f0) !important;
	font-weight: 400 !important;
	font-size: 1rem !important;
	line-height: 140% !important;
	text-transform: uppercase !important;
	box-sizing: border-box !important;
}
.wp-block-generateblocks-button .gb-button,
.wp-block-generateblocks-button .gb-text,
.wp-block-generateblocks-button a,
.gb-button-wrapper .gb-button,
.gb-button-wrapper .gb-text,
.gb-button-wrapper a,
a.gb-button,
a.vlr-animated-button {
	position: relative;
	overflow: hidden !important;
	display: inline-flex !important;
	align-items: center;
	gap: 1.4285714286rem;
	width: max-content;
	padding: 0.5714285714rem 0.5714285714rem 0.5714285714rem 1.1428571429rem;
	border-radius: 2.8571428571rem;
	border: 1px solid hsla(0, 0%, 94%, 0.4);
	background-color: hsla(0, 0%, 94%, 0.051);
	-webkit-backdrop-filter: blur(40px);
	backdrop-filter: blur(40px);
	cursor: pointer;
	transition: all 0.25s ease-in-out, border-color 0.9s ease-in-out;
	text-decoration: none;
	color: var(--vlr-animated-btn-text, #f0f0f0);
	font-weight: 400;
	font-size: 1rem;
	line-height: 140%;
	text-transform: uppercase;
	box-sizing: border-box;
}
.wp-block-generateblocks-button .gb-button:focus,
.wp-block-generateblocks-button .gb-text:focus,
.wp-block-generateblocks-button a:focus,
.gb-button-wrapper .gb-button:focus,
.gb-button-wrapper .gb-text:focus,
.gb-button-wrapper a:focus,
a.gb-button:focus,
a.vlr-animated-button:focus {
	outline: none;
}
/* Orb que expande no hover a partir do círculo da seta (direita), não do centro */
.wp-block-generateblocks-button .gb-button::before,
.wp-block-generateblocks-button .gb-text::before,
.wp-block-generateblocks-button a::before,
.gb-button-wrapper .gb-button::before,
.gb-button-wrapper .gb-text::before,
.gb-button-wrapper a::before,
a.gb-button::before,
a.vlr-animated-button::before {
	content: "";
	position: absolute;
	left: auto;
	right: 1rem;
	top: 50%;
	width: 200px;
	height: 200px;
	margin-right: -100px;
	border-radius: 50%;
	background-color: var(--vlr-animated-btn-orb, var(--accent, #1246cc));
	transform: translateY(-50%) scale(0);
	transform-origin: 100% 50%;
	transition: transform 0.85s ease-in-out;
	z-index: -1;
}
.wp-block-generateblocks-button .gb-button:hover::before,
.wp-block-generateblocks-button .gb-text:hover::before,
.wp-block-generateblocks-button a:hover::before,
.gb-button-wrapper .gb-button:hover::before,
.gb-button-wrapper .gb-text:hover::before,
.gb-button-wrapper a:hover::before,
a.gb-button:hover::before,
a.vlr-animated-button:hover::before {
	transform: translateY(-50%) scale(2);
}
/* Texto e seta acima do orb (orb fica atrás com z-index: -1) */
.wp-block-generateblocks-button .gb-button,
.wp-block-generateblocks-button .gb-text,
.wp-block-generateblocks-button a,
.gb-button-wrapper .gb-button,
.gb-button-wrapper .gb-text,
.gb-button-wrapper a,
a.gb-button,
a.vlr-animated-button {
	position: relative;
	z-index: 0;
	isolation: isolate;
}
/* Seta à direita (mesma SVG do botão Cadastro) — círculo + ícone que gira 45deg no hover */
.wp-block-generateblocks-button .gb-button::after,
.wp-block-generateblocks-button .gb-text::after,
.wp-block-generateblocks-button a::after,
.gb-button-wrapper .gb-button::after,
.gb-button-wrapper .gb-text::after,
.gb-button-wrapper a::after,
a.gb-button::after,
a.vlr-animated-button::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background-color: var(--vlr-animated-btn-orb, var(--accent, #1246cc));
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M5.99151 5.34708C5.98616 5.76485 6.31947 6.09797 6.73749 6.09262L10.9016 6.04467L4.728 12.2146C4.42946 12.513 4.42328 12.995 4.71427 13.2859C5.00525 13.5767 5.48759 13.5705 5.78613 13.2721L11.9651 7.09675L11.9119 11.2531C11.9065 11.6709 12.2398 12.004 12.6579 11.9987C13.0759 11.9933 13.4178 11.6515 13.4232 11.2338L13.4999 5.24561C13.5053 4.82783 13.172 4.49471 12.754 4.50006L6.76228 4.57676C6.34955 4.5874 6.00216 4.93458 5.99151 5.34708Z' fill='%23fff'/%3E%3C/svg%3E");
	background-size: 1rem 1rem;
	background-position: center;
	background-repeat: no-repeat;
	transition: transform 0.3s ease-in-out;
	transform-origin: center center;
	z-index: 1;
}
.wp-block-generateblocks-button .gb-button:hover::after,
.wp-block-generateblocks-button .gb-text:hover::after,
.wp-block-generateblocks-button a:hover::after,
.gb-button-wrapper .gb-button:hover::after,
.gb-button-wrapper .gb-text:hover::after,
.gb-button-wrapper a:hover::after,
a.gb-button:hover::after,
a.vlr-animated-button:hover::after {
	transform: rotate(45deg);
}
/* Variante azul (borda azul, orb/seta azul) — adicione .vlr-animated-btn-blue na classe do bloco */
.vlr-animated-btn-blue .gb-button,
.vlr-animated-btn-blue a,
a.vlr-animated-btn-blue {
	border-color: var(--vlr-animated-btn-border, #1246cc);
}
.vlr-animated-btn-blue .gb-button::before,
.vlr-animated-btn-blue a::before,
a.vlr-animated-btn-blue::before,
.vlr-animated-btn-blue .gb-button::after,
.vlr-animated-btn-blue a::after,
a.vlr-animated-btn-blue::after {
	background-color: var(--vlr-animated-btn-border, #1246cc);
}
.vlr-animated-btn-blue .gb-button,
.vlr-animated-btn-blue a,
a.vlr-animated-btn-blue {
	color: rgba(19, 22, 32, 0.8);
}
.vlr-animated-btn-blue .gb-button::after,
.vlr-animated-btn-blue a::after,
a.vlr-animated-btn-blue::after {
	color: #f0f0f0;
}

/* Mobile: remove padding dos containers do GeneratePress */
@media (max-width: 768px) {
	.separate-containers .inside-article,
	.separate-containers .comments-area,
	.separate-containers .page-header,
	.separate-containers .paging-navigation,
	.one-container .site-content,
	.inside-page-header {
		padding: 0;
	}

	/* Single post: devolver respiro lateral ao bloco do artigo (título, meta, faixa, conteúdo). */
	body.single-post .separate-containers .inside-article,
	body.single-post.one-container .site-main .inside-article {
		padding-left: var(--vlr-gutter-mobile, 16px);
		padding-right: var(--vlr-gutter-mobile, 16px);
		padding-top: 0.75rem;
		padding-bottom: 0.75rem;
		box-sizing: border-box;
	}
}

/*
 * CTA final (fundo escuro): a regra global .vlr-cta-text / .vlr-cta-title em #4b4b4b e #111
 * quebra o contraste aqui — forçar texto claro em qualquer página.
 */
/* CTA vlr-home-cta: alinhada a .vlr-product-cta / .vlr-product-cta-box (páginas de produto). */
.vlr-home-cta .vlr-cta-title,
.entry-content .vlr-home-cta .vlr-cta-title,
article .vlr-home-cta .vlr-cta-title {
	color: var(--vlr-product-cta-title, #ffffff) !important;
	max-width: none;
	letter-spacing: -0.03em;
	font-weight: 700 !important;
	font-size: clamp(1.65rem, 2.25vw, 2.125rem) !important;
	line-height: 1.2 !important;
}

.vlr-home-cta .vlr-cta-text,
.entry-content .vlr-home-cta .vlr-cta-text,
article .vlr-home-cta .vlr-cta-text {
	color: var(--vlr-product-cta-text, #d6d6d6) !important;
	max-width: none !important;
}

.vlr-home-cta .vlr-section-kicker.is-light,
.entry-content .vlr-home-cta .vlr-section-kicker.is-light,
article .vlr-home-cta .vlr-section-kicker.is-light {
	color: rgba(255, 255, 255, 0.88) !important;
	opacity: 1;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	font-size: 0.7rem !important;
	font-weight: 600 !important;
}

/* Só o primário: antes .vlr-home-actions .wp-block-button__link pintava os dois botões de laranja. */
.vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link,
.vlr-home-cta .vlr-btn-primary .wp-block-button__link,
.entry-content .vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link,
.entry-content .vlr-home-cta .vlr-btn-primary .wp-block-button__link,
article .vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link,
article .vlr-home-cta .vlr-btn-primary .wp-block-button__link {
	background: #f58220 !important;
	color: #fff !important;
	border: none !important;
	border-radius: 10px !important;
	padding: 14px 28px !important;
	font-weight: 600 !important;
	min-height: 48px !important;
	box-shadow: none !important;
}

.vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link:hover,
.vlr-home-cta .vlr-btn-primary .wp-block-button__link:hover,
.entry-content .vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link:hover,
.entry-content .vlr-home-cta .vlr-btn-primary .wp-block-button__link:hover,
article .vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link:hover,
article .vlr-home-cta .vlr-btn-primary .wp-block-button__link:hover,
.vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link:focus-visible,
.vlr-home-cta .vlr-btn-primary .wp-block-button__link:focus-visible,
.entry-content .vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link:focus-visible,
.entry-content .vlr-home-cta .vlr-btn-primary .wp-block-button__link:focus-visible,
article .vlr-home-cta .vlr-home-actions .vlr-btn-primary .wp-block-button__link:focus-visible,
article .vlr-home-cta .vlr-btn-primary .wp-block-button__link:focus-visible {
	background: #ea7518 !important;
	color: #fff !important;
}

/* Secundário: contorno branco sobre o cartão escuro (referência visual). */
.vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link,
.vlr-home-cta .vlr-btn-secondary .wp-block-button__link,
.vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link,
.entry-content .vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link,
.entry-content .vlr-home-cta .vlr-btn-secondary .wp-block-button__link,
.entry-content .vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link,
article .vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link,
article .vlr-home-cta .vlr-btn-secondary .wp-block-button__link,
article .vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link,
.vlr-home-cta .is-style-outline--1 .wp-block-button__link,
.vlr-home-cta .wp-block-button.is-style-outline .wp-block-button__link,
.vlr-product-page .vlr-home-cta .wp-block-button.is-style-outline .wp-block-button__link,
.vlr-product-page .vlr-home-cta .wp-block-button.is-style-outline--1 .wp-block-button__link,
.vlr-product-page .vlr-home-cta .vlr-btn-secondary .wp-block-button__link,
.vlr-product-page .vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link {
	background: transparent !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, 0.92) !important;
	border-radius: 10px !important;
	padding: 13px 28px !important;
	font-weight: 600 !important;
	min-height: 48px !important;
	box-shadow: none !important;
}

.vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link:hover,
.vlr-home-cta .vlr-btn-secondary .wp-block-button__link:hover,
.vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link:hover,
.entry-content .vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link:hover,
.entry-content .vlr-home-cta .vlr-btn-secondary .wp-block-button__link:hover,
.entry-content .vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link:hover,
article .vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link:hover,
article .vlr-home-cta .vlr-btn-secondary .wp-block-button__link:hover,
article .vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link:hover,
.vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link:focus-visible,
.vlr-home-cta .vlr-btn-secondary .wp-block-button__link:focus-visible,
.vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link:focus-visible,
.entry-content .vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link:focus-visible,
.entry-content .vlr-home-cta .vlr-btn-secondary .wp-block-button__link:focus-visible,
.entry-content .vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link:focus-visible,
article .vlr-home-cta .vlr-home-actions .vlr-btn-secondary .wp-block-button__link:focus-visible,
article .vlr-home-cta .vlr-btn-secondary .wp-block-button__link:focus-visible,
article .vlr-home-cta .vlr-btn-secondary.is-light .wp-block-button__link:focus-visible,
.vlr-home-cta .is-style-outline--1 .wp-block-button__link:hover,
.vlr-home-cta .is-style-outline--1 .wp-block-button__link:focus-visible,
.vlr-home-cta .wp-block-button.is-style-outline .wp-block-button__link:hover,
.vlr-home-cta .wp-block-button.is-style-outline .wp-block-button__link:focus-visible,
.vlr-product-page .vlr-home-cta .wp-block-button.is-style-outline .wp-block-button__link:hover,
.vlr-product-page .vlr-home-cta .wp-block-button.is-style-outline .wp-block-button__link:focus-visible,
.vlr-product-page .vlr-home-cta .wp-block-button.is-style-outline--1 .wp-block-button__link:hover,
.vlr-product-page .vlr-home-cta .wp-block-button.is-style-outline--1 .wp-block-button__link:focus-visible {
	background: rgba(255, 255, 255, 0.08) !important;
	color: #fff !important;
	border-color: rgba(255, 255, 255, 1) !important;
}

/*
 * Cartão escuro / contacto: valores canónicos em home.css + product-pages.css.
 */

.vlr-about-page {
	background: var(--vlr-color-bg);
	color: var(--vlr-color-ink);
	overflow: clip;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

body.page-id-96 .site-content,
body.page-id-96 .content-area,
body.page-id-96 .site-main,
body.page-sobre-a-propag .site-content,
body.page-sobre-a-propag .content-area,
body.page-sobre-a-propag .site-main {
	background: transparent;
}

body.page-id-96.separate-containers.right-sidebar .site-main,
body.page-id-96.separate-containers .site-main,
body.page-sobre-a-propag.separate-containers.right-sidebar .site-main,
body.page-sobre-a-propag.separate-containers .site-main {
	margin: 0 !important;
}

body.page-id-96 .site.grid-container.container,
body.page-id-96 #page.site,
body.page-id-96 #content,
body.page-sobre-a-propag .site.grid-container.container,
body.page-sobre-a-propag #page.site,
body.page-sobre-a-propag #content {
	width: 100% !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.page-id-96 .content-area,
body.page-sobre-a-propag .content-area {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
}

body.page-id-96 .is-right-sidebar,
body.page-id-96 .right-sidebar,
body.page-id-96 #right-sidebar,
body.page-id-96 #left-sidebar,
body.page-sobre-a-propag .is-right-sidebar,
body.page-sobre-a-propag .right-sidebar,
body.page-sobre-a-propag #right-sidebar,
body.page-sobre-a-propag #left-sidebar {
	display: none !important;
}

body.page-id-96 .inside-article,
body.page-sobre-a-propag .inside-article {
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.page-id-96 .entry-header,
body.page-sobre-a-propag .entry-header {
	display: none !important;
}

body.page-id-96 .entry-content,
body.page-id-96 .entry-content > .alignfull,
body.page-id-96 .entry-content > .wp-block-group.alignfull,
body.page-sobre-a-propag .entry-content,
body.page-sobre-a-propag .entry-content > .alignfull,
body.page-sobre-a-propag .entry-content > .wp-block-group.alignfull {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.page-id-96 .entry-content .alignfull,
body.page-sobre-a-propag .entry-content .alignfull {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.page-id-96 .entry-content > .vlr-home-cta,
body.page-id-96 .entry-content > .wp-block-group.alignfull.vlr-home-cta,
body.page-sobre-a-propag .entry-content > .vlr-home-cta,
body.page-sobre-a-propag .entry-content > .wp-block-group.alignfull.vlr-home-cta {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.page-id-96 .entry-content > .vlr-home-cta > .wp-block-group__inner-container,
body.page-id-96 .entry-content > .wp-block-group.alignfull.vlr-home-cta > .wp-block-group__inner-container,
body.page-sobre-a-propag .entry-content > .vlr-home-cta > .wp-block-group__inner-container,
body.page-sobre-a-propag .entry-content > .wp-block-group.alignfull.vlr-home-cta > .wp-block-group__inner-container {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
}

body.page-id-96 .vlr-home-cta .vlr-home-shell,
body.page-sobre-a-propag .vlr-home-cta .vlr-home-shell {
	max-width: var(--vlr-container-max) !important;
	margin: 0 auto !important;
	padding-left: var(--vlr-gutter-desktop) !important;
	padding-right: var(--vlr-gutter-desktop) !important;
}

body.page-id-96 .vlr-about-page > .wp-block-group__inner-container,
body.page-sobre-a-propag .vlr-about-page > .wp-block-group__inner-container,
body.page-id-96 .vlr-about-page .vlr-about-hero > .wp-block-group__inner-container,
body.page-sobre-a-propag .vlr-about-page .vlr-about-hero > .wp-block-group__inner-container,
body.page-id-96 .vlr-about-page .vlr-about-section > .wp-block-group__inner-container,
body.page-sobre-a-propag .vlr-about-page .vlr-about-section > .wp-block-group__inner-container,
body.page-id-96 .vlr-about-page .wp-block-group__inner-container,
body.page-sobre-a-propag .vlr-about-page .wp-block-group__inner-container {
	max-width: none !important;
	padding: 0 !important;
}

.vlr-about-section {
	padding: 80px 0;
}

.vlr-about-shell {
	max-width: var(--vlr-container-max);
	margin: 0 auto;
	padding: 0 var(--vlr-gutter-desktop);
}

.vlr-about-page .wp-block-group__inner-container,
.vlr-about-page .wp-block-columns,
.vlr-about-page .wp-block-column {
	min-width: 0;
}

body.page-id-96 .vlr-about-page .wp-block-columns.is-layout-flex,
body.page-sobre-a-propag .vlr-about-page .wp-block-columns.is-layout-flex,
body.page-id-96 .vlr-about-page .wp-block-columns.wp-block-columns-is-layout-flex,
body.page-sobre-a-propag .vlr-about-page .wp-block-columns.wp-block-columns-is-layout-flex,
body.page-id-96 .vlr-about-page .wp-container-core-columns-is-layout-9d6595d7,
body.page-sobre-a-propag .vlr-about-page .wp-container-core-columns-is-layout-9d6595d7 {
	display: grid !important;
	flex-wrap: wrap !important;
	width: 100% !important;
}

body.page-id-96 .vlr-about-page .wp-block-column,
body.page-sobre-a-propag .vlr-about-page .wp-block-column {
	flex: initial !important;
	width: auto !important;
	max-width: none !important;
}

.vlr-about-shell > .wp-block-group__inner-container {
	width: 100%;
	max-width: none !important;
	padding: 0 !important;
}

/*
 * Página "Sobre a Propag" (slug no body): blocos .vlr-home-shell no mobile.
 * O safety rail do design-system zera padding em .vlr-home-shell — aqui repõe-se o gutter em toda a página.
 */
@media (max-width: 767px) {
	body.page-sobre-a-propag .vlr-about-page .vlr-home-shell,
	body.page-sobre-a-propag .vlr-home-shell {
		padding-left: var(--vlr-gutter-mobile) !important;
		padding-right: var(--vlr-gutter-mobile) !important;
		box-sizing: border-box !important;
	}
}

.vlr-about-hero {
	padding: 56px 0 32px;
	background:
		radial-gradient(circle at 78% 14%, rgba(250, 143, 36, 0.12), transparent 28%),
		radial-gradient(circle at 14% 18%, rgba(18, 58, 63, 0.06), transparent 24%),
		linear-gradient(135deg, #f7f5f2 0%, #f4ebdf 44%, #f7f5f2 100%);
}

.vlr-about-grid,
.vlr-about-values,
.vlr-about-highlights {
	display: grid !important;
	gap: 28px;
	width: 100%;
}

/* Missao / visao / valores: tres cartoes em linha. */
body.page-id-96 .vlr-about-page .wp-block-columns.vlr-about-values,
body.page-sobre-a-propag .vlr-about-page .wp-block-columns.vlr-about-values,
.vlr-about-page .wp-block-columns.vlr-about-values {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(16px, 2.2vw, 24px) !important;
	align-items: stretch !important;
	width: 100% !important;
}

body.page-id-96 .vlr-about-page .wp-block-columns.vlr-about-values > .wp-block-column,
body.page-sobre-a-propag .vlr-about-page .wp-block-columns.vlr-about-values > .wp-block-column,
.vlr-about-page .wp-block-columns.vlr-about-values > .wp-block-column {
	grid-column: unset !important;
	min-width: 0;
}

.vlr-about-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(460px, 1.12fr);
	gap: 56px;
	align-items: center;
}

.vlr-about-layout > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(460px, 1.12fr);
	gap: 56px;
	align-items: center;
}

.vlr-about-values-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	align-items: stretch;
}

body.page-id-96 .vlr-about-section .vlr-section-head,
body.page-sobre-a-propag .vlr-about-section .vlr-section-head {
	display: grid !important;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	gap: 28px;
	align-items: start !important;
}

body.page-id-96 .vlr-about-section .vlr-section-head > .wp-block-column,
body.page-sobre-a-propag .vlr-about-section .vlr-section-head > .wp-block-column {
	width: auto !important;
	flex-basis: auto !important;
	margin: 0 !important;
}

/*
 * «Nossa missão» e cartões abaixo: respiro horizontal único (título pode estar na 1.ª coluna e o texto na 2.ª).
 * Mesmo inset no cabeçalho e na grelha .vlr-about-values para alinhar blocos.
 */
.vlr-about-section .wp-block-columns.vlr-section-head {
	padding-inline: clamp(20px, 5vw, 28px);
	margin-bottom: clamp(22px, 4vw, 36px);
	box-sizing: border-box;
}

.vlr-about-section .wp-block-columns.vlr-section-head > .wp-block-column {
	padding-inline: 0;
	box-sizing: border-box;
}

.vlr-about-section .wp-block-columns.vlr-about-values {
	padding-inline: clamp(20px, 5vw, 28px);
	box-sizing: border-box;
}

/* «O que nos diferencia» — mesmo inset horizontal + cartões com respiro (antes só linhas hr). */
.vlr-about-section .wp-block-columns.vlr-about-highlights {
	padding-inline: clamp(20px, 5vw, 28px);
	box-sizing: border-box;
}

.vlr-about-section .vlr-about-highlight {
	padding: 22px 24px;
	border-radius: 22px;
	border: 1px solid rgba(17, 17, 17, 0.08);
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 12px 32px rgba(17, 20, 18, 0.06);
	border-top: none;
	margin-top: 14px;
	box-sizing: border-box;
}

.vlr-about-section .vlr-about-highlight:first-child {
	margin-top: 0;
}

.vlr-about-highlights-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
	gap: 40px;
	align-items: start;
}

.vlr-about-highlights-layout > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
	gap: 40px;
	align-items: start;
}

.vlr-about-stack > * + * {
	margin-top: 16px;
}

.vlr-about-stack > .wp-block-group__inner-container,
.vlr-about-highlights-stack > .wp-block-group__inner-container,
.vlr-about-image-wrap > .wp-block-group__inner-container {
	width: 100%;
}

.vlr-about-grid {
	grid-template-columns: minmax(0, 0.9fr) minmax(500px, 1.1fr);
	align-items: center;
	column-gap: 68px;
}

.vlr-about-values {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
}

.vlr-about-highlights {
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	align-items: start;
}

.vlr-about-page .wp-block-columns.vlr-about-grid > .wp-block-column,
.vlr-about-page .wp-block-columns.vlr-about-values > .wp-block-column,
.vlr-about-page .wp-block-columns.vlr-about-highlights > .wp-block-column {
	flex-basis: auto !important;
	width: auto !important;
	margin: 0 !important;
}

.vlr-about-kicker {
	margin: 0 0 14px;
	font-family: var(--vlr-brand-font-ui);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #23545a;
}

.vlr-about-title,
.vlr-about-section-title,
.vlr-about-card-title {
	margin: 0;
	font-family: var(--vlr-brand-font-display);
	color: var(--vlr-color-ink);
	letter-spacing: -0.03em;
	hyphens: none;
	-webkit-hyphens: none;
	text-wrap: balance;
}

.vlr-about-title {
	font-size: clamp(1.86rem, 2.35vw, 2.68rem);
	line-height: 1.06;
	max-width: 19.5ch;
	font-weight: 700;
}

.vlr-about-section-title {
	font-size: clamp(1.56rem, 1.62vw, 1.88rem);
	line-height: 1.06;
	max-width: 22ch;
	font-weight: 700;
}

.vlr-about-lead,
.vlr-about-copy,
.vlr-about-card-text,
.vlr-about-quote {
	margin: 0;
	font-family: var(--vlr-brand-font-body);
	color: #4e4a43;
	line-height: 1.7;
}

.vlr-about-lead {
	margin-top: 18px;
	font-size: 1.06rem;
	max-width: 54ch;
}

.vlr-about-copy {
	font-size: 0.98rem;
	max-width: 54ch;
}

.vlr-about-lead + .vlr-about-copy,
.vlr-about-copy + .vlr-about-copy {
	margin-top: 16px;
}

.vlr-about-actions {
	margin-top: 28px;
	gap: 12px;
}

.vlr-about-image-card,
.vlr-about-quote-card,
.vlr-about-card {
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(17, 17, 17, 0.08);
	border-radius: 28px;
	box-shadow: 0 22px 48px rgba(17, 20, 18, 0.08);
	overflow: hidden;
}

.vlr-about-image-card {
	padding: 14px;
	max-width: 1040px;
	justify-self: end;
	width: 100%;
}

.vlr-about-image-card img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 1.42 / 1;
	object-fit: cover;
	border-radius: 22px;
}

.vlr-about-image-caption {
	margin-top: 12px;
	font-size: 0.88rem;
	color: #5d584f;
}

.vlr-about-quote-card {
	padding: 30px;
}

.vlr-about-quote {
	font-size: 1.08rem;
	font-style: italic;
}

.vlr-about-card {
	padding: 24px;
	height: 100%;
}

.vlr-about-card-title {
	font-size: 1.18rem;
	line-height: 1.12;
}

.vlr-about-card-text {
	margin-top: 12px;
	font-size: 0.96rem;
}

.vlr-about-cards {
	margin-top: 8px;
}

.vlr-about-value-card {
	min-height: 100%;
}

.vlr-about-value-card .wp-block-group__inner-container {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.vlr-about-card-index {
	margin: 0 0 14px;
	color: var(--vlr-color-accent-strong);
}

.vlr-about-value-card .vlr-card-title {
	color: var(--vlr-home-green);
}

.vlr-about-value-card .vlr-card-text {
	margin-top: 10px;
}

.vlr-about-highlight {
	padding: 20px 0 0;
	border-top: 1px solid rgba(17, 17, 17, 0.08);
}

.vlr-about-highlight:first-child {
	padding-top: 0;
	border-top: 0;
}

.vlr-about-highlight strong {
	display: block;
	margin-bottom: 8px;
	font-family: var(--vlr-brand-font-ui);
	font-size: 1rem;
	font-weight: 700;
	color: var(--vlr-color-ink);
}

@media (max-width: 1024px) {
	.vlr-about-shell {
		padding: 0 var(--vlr-gutter-tablet);
	}

	.vlr-about-section {
		padding: 64px 0;
	}

	.vlr-about-grid,
	.vlr-about-highlights {
		grid-template-columns: minmax(0, 1fr);
	}

	.vlr-about-values {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(14px, 2vw, 20px);
	}

	.vlr-about-layout,
	.vlr-about-highlights-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.vlr-about-layout > .wp-block-group__inner-container,
	.vlr-about-highlights-layout > .wp-block-group__inner-container {
		grid-template-columns: minmax(0, 1fr);
	}

	.vlr-about-values-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(14px, 2vw, 20px);
	}

	body.page-id-96 .vlr-about-section .vlr-section-head,
	body.page-sobre-a-propag .vlr-about-section .vlr-section-head {
		grid-template-columns: minmax(0, 1fr);
	}

	.vlr-about-image-card {
		max-width: 100%;
		justify-self: stretch;
	}

}

@media (max-width: 767px) {
	.vlr-about-shell {
		padding: 0 var(--vlr-gutter-mobile);
	}

	.vlr-about-hero {
		padding: 44px 0 24px;
	}

	.vlr-about-section {
		padding: 48px 0;
	}

	.vlr-about-title,
	.vlr-about-section-title {
		max-width: none;
	}

	.vlr-about-grid,
	.vlr-about-highlights {
		grid-template-columns: minmax(0, 1fr);
		gap: 22px;
	}

	.vlr-about-values {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: clamp(12px, 3vw, 18px) !important;
	}

	.vlr-about-layout,
	.vlr-about-highlights-layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 22px;
	}

	.vlr-about-values-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: clamp(12px, 3vw, 18px) !important;
	}


	.vlr-about-layout > .wp-block-group__inner-container,
	.vlr-about-highlights-layout > .wp-block-group__inner-container {
		grid-template-columns: minmax(0, 1fr);
		gap: 22px;
	}

	.vlr-about-stack > * + * {
		margin-top: 14px;
	}

	.vlr-about-title {
		max-width: 100%;
		font-size: var(--vlr-title-mobile, clamp(2.28rem, 10vw, 3.2rem));
		line-height: var(--vlr-title-mobile-line-safe, clamp(1.2, 1.22, 1.45));
	}

	.vlr-about-section-title {
		max-width: 100%;
		font-size: clamp(1.72rem, 7vw, 2.12rem);
		line-height: 1.08;
	}

	.vlr-about-page .wp-block-columns {
		gap: 22px !important;
	}

	.vlr-about-image-card,
	.vlr-about-quote-card,
	.vlr-about-card {
		border-radius: 22px;
	}

	.vlr-about-image-card {
		padding: 12px;
	}

}


@media (max-width: 639px) {
	.vlr-about-values,
	.vlr-about-values-grid,
	body.page-id-96 .vlr-about-page .wp-block-columns.vlr-about-values,
	body.page-sobre-a-propag .vlr-about-page .wp-block-columns.vlr-about-values,
	body.page-id-96 .wp-block-columns.vlr-about-values,
	body.page-sobre-a-propag .wp-block-columns.vlr-about-values {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 18px !important;
	}

	body.page-id-96 .vlr-about-page .wp-block-columns.vlr-about-values > .wp-block-column,
	body.page-sobre-a-propag .vlr-about-page .wp-block-columns.vlr-about-values > .wp-block-column,
	body.page-id-96 .wp-block-columns.vlr-about-values > .wp-block-column,
	body.page-sobre-a-propag .wp-block-columns.vlr-about-values > .wp-block-column {
		grid-column: 1 / -1 !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

@media (max-width: 782px) {
	body.page-id-96 .vlr-about-hero,
	body.page-id-96 .vlr-about-section,
	body.page-sobre-a-propag .vlr-about-hero,
	body.page-sobre-a-propag .vlr-about-section {
		overflow: hidden;
	}

	body.page-id-96 .vlr-about-grid,
	body.page-id-96 .vlr-about-highlights,
	body.page-id-96 .wp-block-columns.vlr-about-grid,
	body.page-id-96 .wp-block-columns.vlr-about-highlights,
	body.page-sobre-a-propag .vlr-about-grid,
	body.page-sobre-a-propag .vlr-about-highlights,
	body.page-sobre-a-propag .wp-block-columns.vlr-about-grid,
	body.page-sobre-a-propag .wp-block-columns.vlr-about-highlights {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 20px !important;
	}

	body.page-id-96 .vlr-about-grid > .wp-block-column,
	body.page-id-96 .vlr-about-highlights > .wp-block-column,
	body.page-id-96 .wp-block-columns.vlr-about-grid > .wp-block-column,
	body.page-id-96 .wp-block-columns.vlr-about-highlights > .wp-block-column,
	body.page-sobre-a-propag .vlr-about-grid > .wp-block-column,
	body.page-sobre-a-propag .vlr-about-highlights > .wp-block-column,
	body.page-sobre-a-propag .wp-block-columns.vlr-about-grid > .wp-block-column,
	body.page-sobre-a-propag .wp-block-columns.vlr-about-highlights > .wp-block-column {
		grid-column: 1 / -1 !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.page-id-96 .vlr-about-shell,
	body.page-id-96 .vlr-about-shell > .wp-block-group__inner-container,
	body.page-sobre-a-propag .vlr-about-shell,
	body.page-sobre-a-propag .vlr-about-shell > .wp-block-group__inner-container {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.page-id-96 .vlr-about-title,
	body.page-id-96 .vlr-about-section-title,
	body.page-sobre-a-propag .vlr-about-title,
	body.page-sobre-a-propag .vlr-about-section-title {
		max-width: none !important;
		width: 100% !important;
	}

	body.page-id-96 .vlr-about-title,
	body.page-sobre-a-propag .vlr-about-title {
		font-size: var(--vlr-title-mobile, clamp(2.28rem, 10vw, 3.2rem));
		line-height: var(--vlr-title-mobile-line-safe, clamp(1.2, 1.22, 1.45));
	}

	body.page-id-96 .vlr-about-image-card,
	body.page-sobre-a-propag .vlr-about-image-card {
		padding: 14px;
	}
}

/*
 * Sobre — Equipe Propag: mesma largura útil que .vlr-about-shell (secções «Nossa missão», «O que nos diferencia», etc.).
 * Antes: min(..., 100vw−2gutter) + inner mais largo — ficava mais estreito que o resto da página.
 */
.equipe-section .equipe-shell.vlr-home-shell {
	max-width: var(--vlr-container-max) !important;
	width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--vlr-gutter-desktop) !important;
	padding-right: var(--vlr-gutter-desktop) !important;
	box-sizing: border-box !important;
}

/* Mesmo ritmo horizontal que .vlr-section-head / .vlr-about-values (clamp 20–28px). */
.equipe-section .equipe-shell.vlr-home-shell > .wp-block-group__inner-container {
	padding-left: clamp(20px, 5vw, 28px) !important;
	padding-right: clamp(20px, 5vw, 28px) !important;
	box-sizing: border-box !important;
}

.equipe-grid > .wp-block-group__inner-container {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr));
	gap: 24px !important;
	align-items: stretch;
	width: 100%;
	box-sizing: border-box;
}

.equipe-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	height: 100%;
	box-sizing: border-box;
}

.equipe-card > .wp-block-group__inner-container {
	display: flex;
	flex-direction: column;
	gap: 12px;
	flex: 1;
	min-height: 0;
	padding-inline: clamp(4px, 1.5vw, 10px);
	box-sizing: border-box;
}

.equipe-foto {
	margin: 0 !important;
}

.equipe-foto img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 14px;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.equipe-nome {
	margin: 0 !important;
}

.equipe-cargo {
	margin: 0 !important;
}

@media (max-width: 1024px) {
	.equipe-section .equipe-shell.vlr-home-shell {
		padding-left: var(--vlr-gutter-tablet) !important;
		padding-right: var(--vlr-gutter-tablet) !important;
	}
}

@media (max-width: 767px) {
	.equipe-section .equipe-shell.vlr-home-shell {
		padding-left: var(--vlr-gutter-mobile) !important;
		padding-right: var(--vlr-gutter-mobile) !important;
	}
}

/* Seção "Para Quem Atendemos": cards com identidade ProPag */
.vlr-home-audience-card {
	background: #ffffff !important;
	border-radius: 12px !important;
	border: 1px solid #e8e4de !important;
	border-top: 3px solid #F78E2F !important;
	box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
	padding: 18px clamp(20px, 2.2vw, 28px) 22px !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
	position: relative;
}
.vlr-home-audience-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.10) !important;
}
.vlr-home-audience-card .vlr-card-title {
	font-size: 1.1rem !important;
	font-weight: 700;
	color: #111111 !important;
	line-height: 1.35;
	margin-top: 0 !important;
	margin-bottom: 8px;
	text-align: left !important;
}
.vlr-home-audience-card .vlr-card-text,
.vlr-home-audience-card .vlr-card-text p,
.vlr-home-audience-card .vlr-card-text a {
	color: #4b4b4b !important;
	font-size: 0.95rem;
	line-height: 1.65;
	text-align: left !important;
}
.vlr-home-audience-card .vlr-card-text a {
	text-decoration: none;
}

/* Blog Query Loop: grid de 3 colunas alinhado ao design dos cards */
.vlr-home-blog-query > .wp-block-post-template {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
@media (max-width: 768px) {
	.vlr-home-blog-query > .wp-block-post-template {
		grid-template-columns: 1fr;
	}
}
.vlr-home-blog-card .vlr-card-image,
.vlr-home-blog-card .vlr-home-blog-card-img {
	margin-bottom: 16px;
	border-radius: 20px;
	overflow: hidden;
}
.vlr-home-blog-card .vlr-home-blog-card-img img,
.vlr-home-blog-card .wp-block-post-featured-image img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 20px;
	display: block;
}
.vlr-home-blog-card .wp-block-post-terms {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6b7280;
	margin-bottom: 8px;
}
.vlr-home-blog-card .wp-block-post-terms a {
	color: inherit;
	text-decoration: none;
}
.vlr-home-blog-card .wp-block-post-title {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--vlr-color-green, #123a3f);
	margin-bottom: 8px;
	line-height: 1.35;
}
.vlr-home-blog-card .wp-block-post-title a {
	color: inherit;
	text-decoration: none;
}
.vlr-home-blog-card .wp-block-post-excerpt p {
	color: #4b4b4b;
	font-size: 0.95rem;
	line-height: 1.6;
	margin-bottom: 12px;
}
.vlr-home-blog-card .wp-block-post-excerpt__more-link {
	color: var(--ph-accent, #F78E2F);
	font-weight: 600;
	text-decoration: none;
	font-size: 0.95rem;
}
.vlr-home-blog-card .wp-block-post-excerpt__more-link:hover {
	text-decoration: underline;
}

/* Depoimentos: autor com avatar circular editável via Gutenberg */
.vlr-testimonial-author-row {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 16px;
}
.vlr-testimonial-avatar {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	margin: 0 !important;
}
.vlr-testimonial-avatar img {
	width: 40px !important;
	height: 40px !important;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}
.vlr-testimonial-author {
	font-weight: 600;
	font-size: 0.875rem;
	color: #111;
	margin: 0 !important;
}

/*
 * Plano de saúde + Seguro auto: sem faixa creme+branco antes do rodapé (canvas branco como no Consórcio).
 * Estão aqui para aplicar ainda que o ID da página fique fora da lista de product asset-loader.
 */
body.vlr-page-no-bottom-faixa {
	--vlr-color-bg: #ffffff;
	--vlr-product-bg: #ffffff;
	--vlr-color-neutral: #ffffff;
	--vlr-color-surface: #ffffff;
	--vlr-color-band: #ffffff;
	--vlr-home-band: #ffffff;
	--vlr-product-neutral: #ffffff;
	background: #fff !important;
}
/* Faixas creme/gradiente (logos, FAQ is-plain) — fallbacks de product-pages; !important. */
body.vlr-page-no-bottom-faixa .vlr-home-logos-band,
body.vlr-page-no-bottom-faixa .vlr-product-section.is-plain,
body.vlr-page-no-bottom-faixa .vlr-product-logo-band {
	background: #fff !important;
	background-image: none !important;
}
body.vlr-page-no-bottom-faixa .separate-containers .inside-article,
body.vlr-page-no-bottom-faixa .one-container .site-content .inside-article {
	background: #fff !important;
	box-shadow: none !important;
}
body.vlr-page-no-bottom-faixa .separate-containers .site-content,
body.vlr-page-no-bottom-faixa .one-container .site-content {
	margin-bottom: 0 !important;
}
body.vlr-page-no-bottom-faixa .site-content {
	padding-bottom: 0 !important;
}
body.vlr-page-no-bottom-faixa .entry-content,
body.vlr-page-no-bottom-faixa .vlr-product-page {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	background: #fff !important;
	background-color: #fff !important;
}
/* CTA final: respiro + fundo branco (faixa nítida antes do rodapé). */
body.vlr-page-no-bottom-faixa .vlr-product-page .vlr-home-section.vlr-home-cta,
body.vlr-page-no-bottom-faixa .entry-content .vlr-product-page .vlr-home-section.vlr-home-cta,
body.vlr-page-no-bottom-faixa .vlr-product-page .alignfull.vlr-home-section.vlr-home-cta {
	padding-top: clamp(48px, 6vw, 88px) !important;
	padding-bottom: clamp(48px, 6vw, 88px) !important;
	background: #fff !important;
	background-color: #fff !important;
}
body.vlr-page-no-bottom-faixa .vlr-product-page .vlr-product-section:last-child,
body.vlr-page-no-bottom-faixa .entry-content .vlr-product-page .vlr-product-section:last-child {
	margin-bottom: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
}
body.vlr-page-no-bottom-faixa .site-footer,
body.vlr-page-no-bottom-faixa .vlr-footer-modern,
body.vlr-page-no-bottom-faixa .site-info,
body.vlr-page-no-bottom-faixa .vlr-footer-modern-site-info,
body.vlr-page-no-bottom-faixa .footer-bar,
body.vlr-page-no-bottom-faixa .inside-site-info {
	border-top: none !important;
	box-shadow: none !important;
}
/* GeneratePress: envoltório, fundo contínuo #fff entre conteúdo e rodapé. */
body.vlr-page-no-bottom-faixa #page,
body.vlr-page-no-bottom-faixa .site,
body.vlr-page-no-bottom-faixa .site-content,
body.vlr-page-no-bottom-faixa .site-content.grid-container,
body.vlr-page-no-bottom-faixa .site-content.main-grid,
body.vlr-page-no-bottom-faixa .site-main,
body.vlr-page-no-bottom-faixa #primary,
body.vlr-page-no-bottom-faixa .content-area,
body.vlr-page-no-bottom-faixa .inside-article,
body.vlr-page-no-bottom-faixa .hentry {
	margin-bottom: 0 !important;
}
body.vlr-page-no-bottom-faixa #page,
body.vlr-page-no-bottom-faixa .site,
body.vlr-page-no-bottom-faixa .site-content,
body.vlr-page-no-bottom-faixa .site-main,
body.vlr-page-no-bottom-faixa .content-area {
	background: #fff !important;
	background-color: #fff !important;
}
body.vlr-page-no-bottom-faixa #page,
body.vlr-page-no-bottom-faixa .site {
	padding-bottom: 0 !important;
}

/*
 * Responsivo global (hardening)
 * - Evita overflow horizontal acidental.
 * - Melhora legibilidade/toque em mobile sem alterar desktop.
 */
html,
body {
	max-width: 100%;
	overflow-x: clip;
}

img,
svg,
video,
canvas,
iframe {
	max-width: 100%;
	height: auto;
}

.entry-content table {
	width: 100%;
}

@media (max-width: 1024px) {
	/* Dropdown desktop não pode sair da viewport em notebook menor */
	.site-header .primary-menu ul.absolute.vlr-submenu-w-2col,
	.site-header nav .primary-menu ul.absolute.vlr-submenu-w-2col {
		width: min(496px, calc(100vw - 40px)) !important;
		min-width: min(496px, calc(100vw - 40px)) !important;
		max-width: min(496px, calc(100vw - 40px)) !important;
	}
	.site-header .primary-menu ul.absolute.vlr-submenu-w-3col,
	.site-header nav .primary-menu ul.absolute.vlr-submenu-w-3col {
		width: min(720px, calc(100vw - 40px)) !important;
		min-width: min(720px, calc(100vw - 40px)) !important;
		max-width: min(720px, calc(100vw - 40px)) !important;
	}
}

@media (max-width: 767px) {
	/* Full-bleed sem "salto" lateral em iOS/Android */
	.vlr-product-hero,
	.vlr-product-section,
	.vlr-product-logo-band,
	.vlr-product-cta {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* Menus e CTAs com área de toque mais confortável */
	.vlr-mobile-menu-items > li > a,
	.vlr-mobile-menu-button,
	.vlr-mobile-submenu-link,
	.wp-block-button__link {
		min-height: 44px;
	}

	/* Logos/marquee: reduzir min-width para não estourar viewport */
	.vlr-logo-item,
	.vlr-home-logos-track .vlr-logo-item {
		min-width: clamp(96px, 30vw, 140px) !important;
	}

	/* Tabelas longas viram container com scroll horizontal local */
	.entry-content table,
	.wp-block-table table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* Ajustes finos: Blog/Arquivo/Contato (segunda passada responsiva). */
@media (max-width: 1024px) {
	.vlr-archive-card-inner {
		gap: 1rem;
	}
	.vlr-archive-title {
		max-width: none;
	}
	.vlr-home-blog-query > .wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
	}
}

@media (max-width: 767px) {
	/* Blog/Arquivo: cards e metadados mais compactos */
	.vlr-archive-card {
		margin-top: 1rem;
		margin-bottom: 1rem;
	}
	.vlr-archive-card:not(:last-child) {
		padding-bottom: 1rem;
	}
	.vlr-archive-card-meta {
		flex-wrap: wrap;
		row-gap: 0.35rem;
	}
	.vlr-home-blog-query > .wp-block-post-template {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	/* Contato/Produto: CTA e formulário sem apertos laterais */
	.vlr-product-form-card,
	.vlr-home-cta .vlr-cta-box,
	.vlr-product-cta-box {
		padding-left: clamp(14px, 4vw, 20px) !important;
		padding-right: clamp(14px, 4vw, 20px) !important;
	}
	.vlr-home-cta .vlr-home-actions {
		width: 100%;
	}
	.vlr-home-cta .vlr-home-actions .wp-block-button {
		width: 100%;
	}
}

