/* ==========================================================================
   Entre o Verbo e o Véu — estilos complementares ao theme.json
   Mobile-first. Mistério no topo (escuro), luz e leitura no restante (creme).
   ========================================================================== */

:root {
	--vv-noite: var(--wp--preset--color--noite);
	--vv-creme: var(--wp--preset--color--creme);
	--vv-papel: var(--wp--preset--color--papel);
	--vv-areia: var(--wp--preset--color--areia);
	--vv-bronze: var(--wp--preset--color--bronze);
	--vv-bronze-escuro: var(--wp--preset--color--bronze-escuro);
	--vv-dourado: var(--wp--preset--color--dourado-claro);
	--vv-tinta: var(--wp--preset--color--tinta);
	--vv-cinza: var(--wp--preset--color--cinza-quente);
	--vv-serif: var(--wp--preset--font-family--serif);
	--vv-sans: var(--wp--preset--font-family--sans);
	--vv-raio: 3px;
	--vv-trans: 180ms ease;
}

/* Base ------------------------------------------------------------------ */
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: hidden; }
::selection { background: var(--vv-dourado); color: var(--vv-tinta); }
img { height: auto; max-width: 100%; }
:where(a, button, input, summary, [tabindex]):focus-visible { outline: 2px solid var(--vv-bronze); outline-offset: 3px; }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
.vv-arrow { display: inline-block; vertical-align: middle; margin-left: .35em; transition: transform var(--vv-trans); }
a:hover .vv-arrow, button:hover .vv-arrow { transform: translateX(3px); }

/* Tipografia utilitária ----------------------------------------------- */
.is-style-sobretitulo,
.vv-rotulo,
.wp-block-post-terms {
	font-family: var(--vv-sans);
	font-size: .72rem !important;
	font-weight: 500;
	letter-spacing: .2em;
	text-transform: uppercase;
	line-height: 1.6;
	color: var(--vv-bronze-escuro);
	margin-bottom: .25rem;
}
.vv-rotulo { display: block; }
.has-noite-background-color .is-style-sobretitulo,
.is-dark .is-style-sobretitulo,
.vv-hero .is-style-sobretitulo { color: var(--vv-dourado); }

.is-style-secao,
.vv-titulo-secao {
	font-family: var(--vv-serif);
	font-size: clamp(1.6rem, 3vw, 2.1rem) !important;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: .04em;
	margin: 0;
}
.vv-titulo-pagina { font-size: clamp(2.5rem, 6vw, 4rem); margin-block: .25rem .75rem; }
.vv-intro { font-size: 1.15rem; color: var(--vv-cinza); max-width: 42rem; }
.vv-subsecao { font-size: 1.5rem; margin: 0; }
.vv-link-secao { margin: 0; font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; }
.vv-link-secao a { text-decoration: none; color: var(--vv-tinta); border-bottom: 1px solid var(--vv-bronze); padding-bottom: 2px; }
.vv-link-secao a::after { content: " →"; }
.vv-secao-topo { margin-bottom: var(--wp--preset--spacing--30); gap: .75rem 2rem; }
.vv-cabecalho-secao { margin-bottom: var(--wp--preset--spacing--40); }

/* Botões ---------------------------------------------------------------- */
.wp-element-button, .wp-block-button__link { transition: background var(--vv-trans), color var(--vv-trans), border-color var(--vv-trans); }
.wp-block-button.is-style-contorno .wp-block-button__link {
	background: transparent; color: var(--vv-bronze-escuro); border: 1px solid var(--vv-bronze);
}
.wp-block-button.is-style-contorno .wp-block-button__link:hover { background: var(--vv-bronze); color: #fff; }
.wp-block-button.is-style-contorno-claro .wp-block-button__link {
	background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.7);
}
.wp-block-button.is-style-contorno-claro .wp-block-button__link:hover { background: #fff; color: var(--vv-tinta); }
.vv-botao-contorno {
	display: inline-flex; align-items: center; margin-top: 1.25rem;
	border: 1px solid rgba(255,255,255,.75); border-radius: 999px; padding: .75em 1.6em;
	font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; color: #fff;
}
.vv-botao-claro {
	font: 500 .72rem/1.4 var(--vv-sans); letter-spacing: .16em; text-transform: uppercase;
	background: var(--vv-creme); color: var(--vv-tinta); border: 0; border-radius: 999px;
	padding: .85em 1.8em; cursor: pointer;
}
.vv-botao-claro:hover { background: #fff; }

/* Cabeçalho -------------------------------------------------------------- */
.vv-header-part { position: relative; z-index: 20; }
.vv-com-hero .vv-header-part { position: absolute; inset: 0 0 auto 0; }
.vv-com-hero .vv-header { background: linear-gradient(180deg, rgba(10,8,6,.6), rgba(10,8,6,0)) !important; }
.admin-bar.vv-com-hero .vv-header-part { top: 32px; }
@media (max-width: 782px) { .admin-bar.vv-com-hero .vv-header-part { top: 46px; } }

.vv-header__barra { gap: 1rem; }
.vv-marca { gap: .1rem !important; }
.vv-marca__nome, .vv-marca__nome a {
	font-family: var(--vv-serif); font-size: clamp(1.05rem, 2.4vw, 1.4rem); font-weight: 500;
	text-transform: uppercase; letter-spacing: .06em; line-height: 1.1; color: inherit; text-decoration: none; margin: 0;
}
.vv-marca__lema {
	margin: 0; font-size: .58rem; letter-spacing: .38em; text-transform: uppercase; color: var(--vv-dourado); opacity: .85;
}
.vv-header .wp-block-navigation a { text-decoration: none; }
.vv-header .wp-block-navigation-item__content { padding-block: .25rem; border-bottom: 1px solid transparent; }
.vv-header .wp-block-navigation-item__content:hover { color: var(--vv-dourado); }
.vv-header .wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,
.vv-header .wp-block-navigation [aria-current="page"] { border-bottom-color: var(--vv-dourado); }
.vv-header .vv-nav-destaque > .wp-block-navigation-item__content {
	border: 1px solid var(--vv-bronze); border-radius: 999px; padding: .55em 1.3em;
	font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; background: var(--vv-bronze); color: #fff;
}
.vv-header .vv-nav-destaque > .wp-block-navigation-item__content:hover { background: var(--vv-bronze-escuro); color: #fff; }
.vv-header .wp-block-navigation__responsive-container-open,
.vv-busca-topo .wp-block-search__button { color: var(--vv-creme); background: transparent; border: 0; }
.vv-busca-topo .wp-block-search__button svg { fill: currentColor; }
.vv-busca-topo.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper { border: 0; }
.vv-busca-topo .wp-block-search__input { background: var(--vv-creme); color: var(--vv-tinta); border-radius: 999px; }

/* Menu no celular (overlay) */
.vv-header .wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem clamp(1rem, 5vw, 2.5rem); }
.vv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem; gap: 1.1rem; }
.vv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-family: var(--vv-serif); font-size: 1.9rem; letter-spacing: .01em;
}
.vv-header .wp-block-navigation__responsive-container.is-menu-open .vv-nav-destaque > .wp-block-navigation-item__content {
	font-family: var(--vv-sans); font-size: .8rem; margin-top: 1rem;
}
@media (max-width: 599px) {
	.vv-busca-topo { display: none; } /* a busca fica na página de Conteúdos no celular */
}

/* Hero ------------------------------------------------------------------- */
.vv-hero { color: #fff; min-height: min(92vh, 58rem) !important; padding-inline: var(--wp--style--root--padding-left) !important; }
.vv-hero .wp-block-cover__inner-container { width: 100% !important; max-width: 1200px; margin-inline: auto !important; }
.vv-secao-meditacao { padding-inline: var(--wp--style--root--padding-left) !important; }
.vv-secao-meditacao .wp-block-cover__inner-container { width: 100%; max-width: 1200px; margin-inline: auto; }
.vv-hero .wp-block-cover__image-background { object-position: 65% 50%; }
.vv-hero .wp-block-cover__background {
	opacity: 1 !important;
	background: linear-gradient(180deg, rgba(14,11,9,.55) 0%, rgba(14,11,9,.35) 35%, rgba(14,11,9,.9) 100%) !important;
}
@media (min-width: 782px) {
	.vv-hero .wp-block-cover__background {
		background: linear-gradient(90deg, rgba(14,11,9,.9) 0%, rgba(14,11,9,.6) 42%, rgba(14,11,9,.08) 78%), linear-gradient(0deg, rgba(14,11,9,.5), transparent 30%) !important;
	}
}
.vv-hero__sobretitulo { max-width: 30rem; position: relative; padding-top: 1.25rem; }
.vv-hero__sobretitulo::before { content: ""; position: absolute; top: 0; left: 0; width: 3rem; height: 1px; background: var(--vv-dourado); }
.vv-hero__titulo {
	font-size: var(--wp--preset--font-size--display) !important; font-weight: 400; text-transform: uppercase;
	letter-spacing: .015em; line-height: 1.02; margin-block: .75rem 1.25rem; color: #fff;
	text-wrap: balance;
}
.vv-hero__subtitulo { font-size: clamp(1rem, 1.6vw, 1.15rem); color: rgba(255,255,255,.88); max-width: 34rem; }

/* Três caminhos ---------------------------------------------------------- */
.vv-caminhos__colunas { margin: 0; }
.vv-caminho { text-align: center; padding: 1.75rem 1.5rem; border-top: 1px solid var(--vv-areia); }
.vv-caminho:first-child { border-top: 0; }
@media (min-width: 782px) {
	.vv-caminho { border-top: 0; border-left: 1px solid var(--vv-areia); padding: .5rem 2.5rem; }
	.vv-caminho:first-child { border-left: 0; }
}
.vv-caminho__numero { font-family: var(--vv-serif); font-style: italic; font-size: 1.4rem; color: var(--vv-bronze); margin: 0 0 .25rem; }
.vv-caminho__titulo { font-size: clamp(1.8rem, 3vw, 2.25rem); margin: 0 0 .5rem; }
.vv-caminho__titulo a { color: var(--vv-tinta); text-decoration: none; }
.vv-caminho p { color: var(--vv-cinza); max-width: 22rem; margin-inline: auto; }
.vv-caminho__link { margin-top: 1rem !important; font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; }
.vv-caminho__link a { text-decoration: none; color: var(--vv-bronze-escuro); }
.vv-caminho__link a::after { content: " →"; }

/* Destaques -------------------------------------------------------------- */
.vv-destaques { display: grid; gap: 1.5rem; }
@media (min-width: 960px) { .vv-destaques { grid-template-columns: 1.55fr 1fr; gap: 2.5rem; align-items: stretch; } }
.vv-destaque-principal__link {
	position: relative; display: block; overflow: hidden; border-radius: var(--vv-raio);
	color: #fff; text-decoration: none; background: var(--vv-noite); min-height: 26rem; height: 100%;
}
.vv-destaque-principal__img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; transition: transform 600ms ease; }
.vv-destaque-principal__link:hover .vv-destaque-principal__img { transform: scale(1.03); }
.vv-destaque-principal__link::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(0deg, rgba(14,11,9,.92) 0%, rgba(14,11,9,.45) 55%, rgba(14,11,9,.1) 100%);
}
@media (min-width: 782px) {
	.vv-destaque-principal__link::after { background: linear-gradient(90deg, rgba(14,11,9,.9) 0%, rgba(14,11,9,.55) 45%, rgba(14,11,9,0) 80%); }
}
.vv-destaque-principal__corpo { position: relative; z-index: 1; padding: clamp(1.5rem, 4vw, 2.75rem); max-width: 30rem; display: flex; flex-direction: column; justify-content: flex-end; min-height: 26rem; height: 100%; box-sizing: border-box; }
.vv-selo {
	align-self: flex-start; font-size: .68rem; letter-spacing: .2em; text-transform: uppercase;
	border: 1px solid rgba(255,255,255,.6); border-radius: 999px; padding: .3em .9em; margin-bottom: 1rem;
}
.vv-destaque-principal__titulo { font-size: clamp(2rem, 4vw, 2.75rem); color: #fff; margin: 0 0 .75rem; font-weight: 400; }
.vv-destaque-principal__resumo { color: rgba(255,255,255,.85); margin: 0; }
.vv-thumb-vazia { display: block; aspect-ratio: 3 / 2; background: linear-gradient(135deg, var(--vv-areia), var(--vv-papel)); }

.vv-destaques-lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.vv-destaques-lista li { border-bottom: 1px solid var(--vv-areia); }
.vv-destaques-lista li:first-child { border-top: 1px solid var(--vv-areia); }
@media (min-width: 960px) { .vv-destaques-lista li:first-child { border-top: 0; } }
.vv-item-lista {
	display: grid; grid-template-columns: 7.5rem 1fr auto; gap: 1.1rem; align-items: center;
	padding: 1.1rem 0; color: var(--vv-tinta); text-decoration: none;
}
.vv-item-lista__img, .vv-item-lista .vv-thumb-vazia { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--vv-raio); }
.vv-item-lista__titulo { font-family: var(--vv-serif); font-size: 1.3rem; line-height: 1.2; display: block; }
.vv-item-lista:hover .vv-item-lista__titulo { color: var(--vv-bronze-escuro); }
.vv-item-lista .vv-arrow { color: var(--vv-bronze); }

/* Meditação (faixa da Home) --------------------------------------------- */
.vv-secao-meditacao { color: var(--vv-creme); }
.vv-meditacao-faixa { display: grid; gap: 2rem; align-items: center; }
@media (min-width: 960px) { .vv-meditacao-faixa { grid-template-columns: 1fr 15rem 1.35fr; gap: 3rem; } }
.vv-meditacao-faixa__intro p { color: rgba(245,239,230,.82); max-width: 22rem; }
.vv-meditacao-faixa .vv-titulo-secao { color: var(--vv-creme); margin-bottom: 1rem; }
.vv-meditacao-faixa__capa { position: relative; display: block; border-radius: var(--vv-raio); overflow: hidden; }
.vv-meditacao-faixa__capa img, .vv-meditacao-faixa__capa .vv-thumb-vazia { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; }
.vv-meditacao-faixa__duracao {
	position: absolute; right: .6rem; bottom: .6rem; background: rgba(14,11,9,.75); color: var(--vv-creme);
	font-size: .72rem; padding: .2em .6em; border-radius: 3px;
}
.vv-meditacao-faixa__titulo { font-size: clamp(1.7rem, 3vw, 2.2rem); margin: 0 0 .35rem; }
.vv-meditacao-faixa__titulo a { color: var(--vv-creme); text-decoration: none; }
.vv-meditacao-faixa__desc { color: rgba(245,239,230,.78); margin: 0 0 1.25rem; }

/* Player ----------------------------------------------------------------- */
.vv-player { color: var(--vv-creme); }
.vv-player audio { width: 100%; }
.vv-player__ui { display: flex; align-items: center; gap: 1rem; }
.vv-player__ui[hidden] { display: none; }
.vv-player__play {
	flex: none; width: 3.25rem; height: 3.25rem; border-radius: 50%; border: 1px solid rgba(245,239,230,.7);
	background: transparent; color: var(--vv-creme); display: grid; place-items: center; cursor: pointer;
	transition: background var(--vv-trans), color var(--vv-trans);
}
.vv-player__play:hover { background: var(--vv-creme); color: var(--vv-tinta); }
.vv-player .vv-i-pause, .vv-player.is-tocando .vv-i-play { display: none; }
.vv-player.is-tocando .vv-i-pause { display: block; }
.vv-player__trilha { flex: 1; }
.vv-player__trilha input[type="range"] {
	-webkit-appearance: none; appearance: none; width: 100%; height: 2px; margin: .6rem 0; cursor: pointer;
	background: linear-gradient(90deg, var(--vv-dourado) var(--vv-progresso, 0%), rgba(245,239,230,.28) var(--vv-progresso, 0%));
}
.vv-player__trilha input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 12px; height: 12px; border-radius: 50%; background: var(--vv-creme); }
.vv-player__trilha input[type="range"]::-moz-range-thumb { width: 12px; height: 12px; border: 0; border-radius: 50%; background: var(--vv-creme); }
.vv-player__tempos { display: flex; justify-content: space-between; font-size: .75rem; color: rgba(245,239,230,.7); font-variant-numeric: tabular-nums; }
.vv-player__acoes { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.75rem; margin-top: 1.25rem; }
.vv-player__acoes [hidden] { display: none; }
.vv-link-download {
	display: inline-flex; align-items: center; gap: .45rem; color: var(--vv-creme); text-decoration: none;
	font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; border-bottom: 1px solid rgba(245,239,230,.5); padding-bottom: 2px;
}
.vv-link-download:hover { color: var(--vv-dourado); }

/* Sobre ------------------------------------------------------------------ */
.vv-sobre { gap: clamp(2rem, 5vw, 4.5rem); }
.vv-sobre .wp-block-media-text__media img { border-radius: 999px 999px var(--vv-raio) var(--vv-raio); aspect-ratio: 4 / 5; object-fit: cover; }
.vv-sobre .wp-block-media-text__content { padding: 0 !important; }
.vv-sobre__nome { font-size: clamp(2.4rem, 5vw, 3.5rem); margin: .25rem 0 1rem; font-weight: 400; }
@media (max-width: 600px) { .vv-sobre .wp-block-media-text__media { margin-bottom: 2rem; } }
.wp-block-image.is-style-arco img { border-radius: 999px 999px var(--vv-raio) var(--vv-raio); }

/* Cards (materiais, atendimentos, meditações) ---------------------------- */
.vv-cards { display: grid; gap: 2rem 1.5rem; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); }
.vv-cards.wp-block-post-template { gap: 2.5rem 1.5rem; }
.vv-card { height: 100%; }
.vv-card__link { display: flex; flex-direction: column; height: 100%; color: var(--vv-tinta); text-decoration: none; }
.vv-card__img { display: block; overflow: hidden; border-radius: var(--vv-raio); margin-bottom: 1rem; background: var(--vv-areia); }
.vv-card__img img, .vv-card__img .vv-thumb-vazia { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; transition: transform 500ms ease; }
.vv-card--meditacao .vv-card__img img, .vv-card--meditacao .vv-card__img .vv-thumb-vazia { aspect-ratio: 3 / 2; }
.vv-card__link:hover .vv-card__img img { transform: scale(1.03); }
.vv-card__titulo { font-size: 1.45rem; margin: 0 0 .4rem; line-height: 1.15; }
.vv-card__resumo { font-size: .95rem; color: var(--vv-cinza); margin: 0 0 1rem; }
.vv-card__rodape { margin-top: auto; display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding-top: .75rem; border-top: 1px solid var(--vv-areia); }
.vv-card__preco { font-family: var(--vv-serif); font-size: 1.2rem; }
.vv-card__mais { font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; color: var(--vv-bronze-escuro); margin-left: auto; }

/* Lista de artigos ------------------------------------------------------- */
.vv-grade-artigos { display: grid; gap: 2.5rem 2rem; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); }
.vv-grade-artigos.wp-block-post-template { gap: 3rem 2rem; }
.vv-artigo-card a { text-decoration: none; color: var(--vv-tinta); }
.vv-artigo-card__img, .vv-artigo-card .wp-block-post-featured-image { display: block; overflow: hidden; border-radius: var(--vv-raio); margin: 0 0 1rem; }
.vv-artigo-card__img img, .vv-artigo-card .wp-block-post-featured-image img, .vv-artigo-card .vv-thumb-vazia { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; display: block; transition: transform 500ms ease; }
.vv-artigo-card a:hover img { transform: scale(1.03); }
.vv-artigo-card__titulo, .vv-artigo-card .wp-block-post-title { font-size: 1.55rem !important; line-height: 1.15; margin: .2rem 0 .5rem; }
.vv-artigo-card .wp-block-post-title a:hover { color: var(--vv-bronze-escuro); }
.vv-artigo-card__resumo, .vv-artigo-card .wp-block-post-excerpt { font-size: .98rem; color: var(--vv-cinza); }
.vv-artigo-card .wp-block-post-excerpt__more-text { display: none; }
.vv-artigo-card .wp-block-post-terms { margin-bottom: 0; }

.wp-block-query-pagination { margin-top: var(--wp--preset--spacing--50); gap: .5rem; font-size: .9rem; }
.wp-block-query-pagination a { text-decoration: none; color: var(--vv-tinta); }
.wp-block-query-pagination .page-numbers { padding: .35em .75em; border-radius: 999px; }
.wp-block-query-pagination .page-numbers.current { background: var(--vv-tinta); color: var(--vv-creme); }

/* Filtros: temas e busca ------------------------------------------------- */
.vv-filtros { gap: 1rem 2rem; margin-bottom: var(--wp--preset--spacing--40); padding-bottom: 1.5rem; border-bottom: 1px solid var(--vv-areia); }
.vv-temas ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.vv-temas a {
	display: inline-block; padding: .45em 1.1em; border: 1px solid var(--vv-areia); border-radius: 999px;
	font-size: .85rem; color: var(--vv-tinta); text-decoration: none; background: var(--vv-papel);
}
.vv-temas a:hover { border-color: var(--vv-bronze); }
.vv-temas a[aria-current="page"] { background: var(--vv-tinta); border-color: var(--vv-tinta); color: var(--vv-creme); }
.vv-busca { min-width: min(100%, 20rem); }
.vv-busca .wp-block-search__inside-wrapper { border: 1px solid var(--vv-areia); border-radius: 999px; background: #fff; padding: 3px; }
.vv-busca .wp-block-search__input { border: 0; background: transparent; padding-inline: 1rem; font: inherit; }
.vv-busca .wp-block-search__button { border-radius: 999px; background: var(--vv-tinta); color: var(--vv-creme); border: 0; margin: 0; }
.vv-busca .wp-block-search__button svg { fill: currentColor; }

/* Trilha (breadcrumbs) --------------------------------------------------- */
.vv-trilha { font-size: .82rem; color: var(--vv-cinza); margin-bottom: 1.25rem; }
.vv-trilha a { color: inherit; text-decoration: none; }
.vv-trilha a:hover { color: var(--vv-bronze-escuro); }
.is-dark .vv-trilha, .vv-meditacao-topo .vv-trilha { color: rgba(245,239,230,.7); }

/* Artigo ----------------------------------------------------------------- */
.vv-artigo__cabecalho { margin-bottom: var(--wp--preset--spacing--40); }
.vv-artigo__titulo { font-size: clamp(2.4rem, 5.5vw, 3.6rem) !important; font-weight: 400; margin-block: .35rem 1rem; text-wrap: balance; }
.vv-artigo__linha-fina { font-family: var(--vv-serif); font-style: italic; font-size: clamp(1.25rem, 2.4vw, 1.5rem); line-height: 1.4; color: var(--vv-cinza); }
.vv-artigo__linha-fina .wp-block-post-excerpt__more-text { display: none; }
.vv-artigo__meta { font-size: .88rem; color: var(--vv-cinza); margin-top: 1rem; }
.vv-artigo__meta p { margin: 0; }
.vv-artigo__meta > * + *::before { content: "·"; margin-right: .5rem; color: var(--vv-bronze); }
.vv-artigo__capa img { border-radius: var(--vv-raio); }
.vv-artigo__corpo { font-size: clamp(1.06rem, 1.3vw, 1.15rem); line-height: 1.8; }
.vv-artigo__corpo > p:first-of-type::first-letter {
	font-family: var(--vv-serif); float: left; font-size: 3.9em; line-height: .82; margin: .06em .12em 0 0; color: var(--vv-bronze-escuro);
}
.vv-artigo__corpo h2 { margin-top: 2.75em; scroll-margin-top: 2rem; }
.vv-artigo__corpo h3 { margin-top: 2em; scroll-margin-top: 2rem; }
.vv-artigo__corpo a { text-decoration-color: var(--vv-bronze); text-underline-offset: 3px; }
.vv-artigo__corpo figure figcaption { text-align: center; }
.vv-artigo .wp-block-separator { margin-block: var(--wp--preset--spacing--40); }

.vv-indice { margin-block: var(--wp--preset--spacing--30); border-left: 2px solid var(--vv-bronze); background: var(--vv-papel); padding: 1rem 1.5rem; }
.vv-indice summary { cursor: pointer; font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--vv-bronze-escuro); font-weight: 500; }
.vv-indice ol { margin: .75rem 0 0; padding-left: 1.2rem; font-size: .98rem; }
.vv-indice li { margin: .3rem 0; }
.vv-indice ul { margin: .25rem 0 .25rem .25rem; padding-left: 1rem; list-style: circle; font-size: .92rem; }
.vv-indice a { color: var(--vv-tinta); text-decoration: none; }
.vv-indice a:hover { color: var(--vv-bronze-escuro); }

.vv-video { margin-block: var(--wp--preset--spacing--30); }
.vv-video__fachada, .vv-video iframe {
	position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; padding: 0; cursor: pointer;
	background: var(--vv-noite); border-radius: var(--vv-raio); overflow: hidden;
}
.vv-video__fachada img { width: 100%; height: 100%; object-fit: cover; opacity: .85; transition: opacity var(--vv-trans); }
.vv-video__fachada:hover img { opacity: 1; }
.vv-video__play {
	position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 4.5rem; height: 4.5rem; border-radius: 50%;
	display: grid; place-items: center; color: #fff; background: rgba(14,11,9,.55); border: 1px solid rgba(255,255,255,.8);
}
.vv-video figcaption { font-size: .82rem; color: var(--vv-cinza); margin-top: .5rem; }

.vv-cta {
	display: grid; gap: 1.5rem; align-items: center; margin-block: var(--wp--preset--spacing--40);
	background: var(--vv-papel); border: 1px solid var(--vv-areia); border-radius: var(--vv-raio); padding: clamp(1.25rem, 3vw, 2rem);
}
@media (min-width: 600px) { .vv-cta { grid-template-columns: 9rem 1fr; } }
.vv-cta__img img, .vv-cta__img .vv-thumb-vazia { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--vv-raio); display: block; }
.vv-cta__titulo { font-family: var(--vv-serif); font-size: 1.6rem; line-height: 1.2; margin: .1rem 0 .5rem; }
.vv-cta p { margin-block: 0 .75rem; }

.vv-autora { margin-block: var(--wp--preset--spacing--30); }
.vv-autora__foto img { border-radius: 50%; }
.vv-autora p { margin: 0; }
.vv-autora__nome { font-family: var(--vv-serif); font-size: 1.4rem; }
.vv-autora__nome a { color: var(--vv-tinta); text-decoration: none; }

.vv-relacionados { margin-top: var(--wp--preset--spacing--50); }
.vv-relacionados .vv-titulo-secao { margin-bottom: var(--wp--preset--spacing--30); }

.vv-fontes { font-size: .92rem; color: var(--vv-cinza); border-top: 1px solid var(--vv-areia); margin-top: var(--wp--preset--spacing--40); }
.vv-fontes h2 { font-size: 1.1rem !important; font-family: var(--vv-sans); letter-spacing: .16em; text-transform: uppercase; }

/* FAQ e depoimentos */
.vv-faq, .vv-depoimentos { margin-top: var(--wp--preset--spacing--50) !important; }
.vv-faq .wp-block-details summary::marker { color: var(--vv-bronze); }
.vv-faq .wp-block-details { border-bottom: 1px solid var(--vv-areia); padding: 1rem 0; }
.vv-faq .wp-block-details summary { font-family: var(--vv-serif); font-size: 1.3rem; cursor: pointer; list-style-position: outside; }
.vv-faq .wp-block-details[open] summary { color: var(--vv-bronze-escuro); }
.vv-depoimentos .wp-block-quote { margin-block: 1.5rem; }
.vv-depoimentos cite { font-family: var(--vv-sans); font-style: normal; font-size: .82rem; letter-spacing: .12em; text-transform: uppercase; color: var(--vv-cinza); }

/* Páginas de venda (materiais e atendimentos) ----------------------------- */
.vv-venda__img img { border-radius: var(--vv-raio); }
.vv-venda__titulo { font-size: clamp(2.3rem, 5vw, 3.4rem) !important; font-weight: 400; margin-block: .25rem 1rem; }
.vv-compra { margin-top: 1.75rem; }
.vv-compra__preco { font-family: var(--vv-serif); font-size: 2rem; margin: 0 0 .75rem; }
.vv-compra__nota { font-size: .8rem; color: var(--vv-cinza); margin-top: .75rem; }
.vv-compra--final { text-align: center; padding: var(--wp--preset--spacing--40) 0; border-top: 1px solid var(--vv-areia); margin-top: var(--wp--preset--spacing--50); }
.vv-compra--final .wp-block-buttons { justify-content: center; }
.vv-detalhes { display: grid; gap: 1rem; margin: 1.5rem 0 0; }
.vv-detalhes > div { border-top: 1px solid var(--vv-areia); padding-top: .9rem; }
.vv-detalhes dt { font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; color: var(--vv-bronze-escuro); margin-bottom: .25rem; }
.vv-detalhes dd { margin: 0; }

/* Página de meditação ---------------------------------------------------- */
.vv-meditacao-topo { color: var(--vv-creme); padding-top: clamp(3rem, 8vh, 5rem) !important; padding-bottom: var(--wp--preset--spacing--50) !important; }
.vv-meditacao-topo__titulo { font-size: clamp(2.4rem, 6vw, 3.8rem) !important; color: #fff; font-weight: 400; margin-block: .25rem .75rem; }
.vv-meditacao-topo__desc { color: rgba(245,239,230,.85); font-size: 1.15rem; }
.vv-meditacao-topo__desc .wp-block-post-excerpt__more-text { display: none; }
.vv-meditacao-topo .vv-player-bloco { margin-top: 1.75rem; }

/* Cartas do Véu ---------------------------------------------------------- */
.vv-cartas { display: grid; gap: 1.25rem 3rem; align-items: center; }
@media (min-width: 900px) { .vv-cartas--faixa { grid-template-columns: 1fr 1.1fr; } }
.vv-cartas__titulo { font-size: clamp(1.5rem, 3vw, 2rem) !important; text-transform: uppercase; letter-spacing: .04em; margin: 0 0 .25rem; }
.vv-cartas__texto p { margin: 0; color: var(--vv-cinza); }
.vv-cartas__form { display: flex; flex-wrap: wrap; gap: .6rem; }
.vv-cartas__form input[type="email"], .vv-cartas__form input[type="text"] {
	flex: 1 1 14rem; min-width: 0; font: inherit; padding: .85rem 1.1rem; border: 1px solid var(--vv-areia);
	border-radius: var(--vv-raio); background: #fff; color: var(--vv-tinta);
}
.vv-cartas__form button { flex: 0 0 auto; border: 0; cursor: pointer; border-radius: var(--vv-raio) !important; }
.vv-cartas__aviso { flex-basis: 100%; font-size: .78rem; color: var(--vv-cinza); margin: .25rem 0 0; }
.vv-cartas__form--breve p { margin: 0; font-style: italic; color: var(--vv-cinza); }
/* Formulário do Hostinger Reach dentro do quadro das Cartas, com o visual do site */
.vv-cartas__form--reach { display: block; }
.vv-cartas__form--reach .hostinger-reach-block-subscription-form-wrapper,
.vv-cartas__form--reach .hostinger-reach-block-subscription-form { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; max-width: none !important; width: 100%; }
.vv-cartas__form--reach .hostinger-reach-block-form-fields { display: flex !important; flex-wrap: wrap; gap: .6rem; align-items: stretch; flex-direction: row !important; }
.vv-cartas__form--reach .hostinger-reach-block-form-field { flex: 1 1 14rem; margin: 0 !important; min-width: 0; }
.vv-cartas__form--reach label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.vv-cartas__form--reach input[type="email"] {
	width: 100%; box-sizing: border-box; font: inherit; padding: .85rem 1.1rem !important; border: 1px solid var(--vv-areia) !important;
	border-radius: var(--vv-raio) !important; background: #fff !important; color: var(--vv-tinta); height: auto !important; margin: 0 !important;
}
.vv-cartas__form--reach .hostinger-reach-block-submit { flex: 0 0 auto; width: auto !important; margin: 0 !important; }
.vv-cartas__form--reach .reach-subscription-message { gap: .5rem; align-items: center; margin-top: .75rem; color: var(--vv-tinta); font-size: .95rem; }
.vv-cartas__form--reach .vv-cartas__aviso a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.vv-cartas--caixa { background: var(--vv-papel); border: 1px solid var(--vv-areia); border-radius: var(--vv-raio); padding: clamp(1.25rem, 3vw, 2rem); margin-block: var(--wp--preset--spacing--40); }
.vv-faixa-cartas { border-top: 1px solid var(--vv-areia); }

/* Rodapé ----------------------------------------------------------------- */
.vv-footer a { color: var(--vv-areia); text-decoration: none; }
.vv-footer a:hover { color: #fff; }
.vv-footer .vv-marca__nome, .vv-footer .vv-marca__nome a { color: var(--vv-creme); font-size: 1.35rem; }
.vv-footer__titulo { font-family: var(--vv-sans) !important; font-size: .72rem !important; letter-spacing: .2em; text-transform: uppercase; color: var(--vv-dourado); font-weight: 500; margin: 0 0 1rem; }
.vv-footer__lista, .vv-footer .wp-block-categories { list-style: none; padding: 0; margin: 0; font-size: .95rem; }
.vv-footer__lista li, .vv-footer .wp-block-categories li { margin: .4rem 0; }
.vv-footer__base { font-size: .82rem; opacity: .8; gap: .5rem 2rem; }
.vv-footer__base p { margin: 0; }
.vv-footer .wp-block-separator { margin-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--20); opacity: 1; }
.vv-redes { list-style: none; margin: 1.25rem 0 0; padding: 0; display: flex; gap: .6rem; }
.vv-redes a { display: grid; place-items: center; width: 2.4rem; height: 2.4rem; border: 1px solid #4a3f35; border-radius: 50%; color: var(--vv-areia); }
.vv-redes a:hover { border-color: var(--vv-dourado); color: var(--vv-dourado); }

/* Landing pages de produtos ------------------------------------------------ */
.vv-compra__parcelas { margin: -.5rem 0 .9rem; font-size: .95rem; opacity: .8; }
.vv-lp-hero, .vv-lp-secao { padding-block: var(--wp--preset--spacing--50) !important; }
.vv-lp-hero { padding-block: clamp(3rem, 8vw, 6rem) !important; background-image: radial-gradient(ellipse at 75% 45%, rgba(168,115,63,.28), transparent 60%); }
.vv-lp-hero__colunas { gap: clamp(2rem, 5vw, 4rem) !important; }
.vv-lp-hero__titulo { font-size: clamp(2.6rem, 5.5vw, 4.2rem) !important; font-weight: 400; color: #fff; margin: .4rem 0 1rem; text-wrap: balance; }
.vv-lp-tese { font-family: var(--vv-serif); font-size: clamp(1.45rem, 2.6vw, 1.9rem); line-height: 1.3; color: var(--vv-dourado); margin-bottom: 1.25rem; }
.vv-lp-tese em { color: #fff; }
.vv-lp-hero__texto { color: rgba(245,239,230,.85); font-size: 1.08rem; max-width: 34rem; }
.vv-lp-micro { font-size: .78rem; letter-spacing: .08em; color: rgba(245,239,230,.65); margin-top: 1rem; }
.vv-lp-mockup img { filter: drop-shadow(0 30px 40px rgba(0,0,0,.45)); max-height: 34rem; width: auto; margin-inline: auto; display: block; }
.vv-lp-grande { font-size: clamp(2.2rem, 5vw, 3.4rem) !important; font-weight: 400; }
.vv-lp-destaque { font-family: var(--vv-serif); font-size: clamp(1.35rem, 2.4vw, 1.7rem); line-height: 1.35; margin-top: 2rem !important; }
.vv-lp-palavras {
	font-family: var(--vv-serif); font-style: italic; font-size: clamp(1.3rem, 2.8vw, 1.9rem); color: var(--vv-bronze-escuro);
	border-block: 1px solid var(--vv-areia); padding: 1.25rem 0; margin-block: 1.5rem !important;
}
.vv-lp-check { list-style: none; padding: 0; margin: 2rem auto 0; max-width: 36rem; display: grid; gap: .85rem; }
.vv-lp-check li { position: relative; padding-left: 2rem; }
.vv-lp-check li::before { content: "✓"; position: absolute; left: 0; top: .05em; color: var(--vv-bronze); font-weight: 600; }
.vv-lp-check--claro li::before { color: var(--vv-dourado); }
.vv-lp-check--claro { margin: 1.25rem 0; max-width: none; gap: .5rem; font-size: .98rem; }
@media (min-width: 700px) { .vv-lp-check--duas { grid-template-columns: 1fr 1fr; max-width: none; gap: 1rem 2.5rem; } }

.vv-lp-codigos { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 1rem !important; margin-block: 2.5rem !important; }
.vv-lp-codigo { flex: 0 1 calc(25% - .75rem); min-width: 13rem; border: 1px solid rgba(232,207,166,.22); border-radius: var(--vv-raio); padding: 1.75rem 1.5rem; text-align: center; }
@media (max-width: 700px) { .vv-lp-codigo { max-width: none; min-width: calc(50% - .5rem); flex-basis: calc(50% - .5rem); padding: 1.25rem .75rem; } }
.vv-lp-codigo__hebraico { font-family: "SBL Hebrew", "Times New Roman", serif; font-size: 2rem; color: var(--vv-dourado); margin: 0 0 .5rem; line-height: 1.2; }
.vv-lp-codigo h3 { font-size: 1.6rem !important; color: #fff; margin: 0 0 .35rem; }
.vv-lp-codigo h3 span { display: block; font-family: var(--vv-sans); font-size: .7rem; letter-spacing: .22em; text-transform: uppercase; color: var(--vv-dourado); margin-top: .35rem; }
.vv-lp-codigo p:last-child { margin: 0; color: rgba(245,239,230,.75); font-size: .95rem; }
.vv-lp-codigos-secao .vv-lp-destaque { color: #fff; }
.vv-lp-codigo p.vv-lp-codigo__frase { font-family: var(--vv-serif); font-style: italic; font-size: 1.05rem; line-height: 1.35; color: var(--vv-dourado); margin-top: .9rem; padding-top: .9rem; border-top: 1px solid rgba(232,207,166,.2); }
.vv-lp-intro { font-family: var(--vv-serif); font-style: italic; font-size: clamp(1.2rem, 2.2vw, 1.45rem); color: var(--vv-bronze-escuro); }
.vv-lp-item__bonus { font-size: .68rem !important; letter-spacing: .18em; text-transform: uppercase; color: var(--vv-bronze-escuro) !important; font-weight: 500; margin: 0 0 .3rem !important; }
.vv-lp-virada { padding-block: var(--wp--preset--spacing--40) !important; }
.vv-lp-virada .vv-lp-destaque { color: #fff; font-size: clamp(1.6rem, 3.2vw, 2.2rem); margin-top: 0 !important; }
.vv-lp-nota { font-size: .92rem; color: rgba(245,239,230,.7); max-width: 34rem; margin-inline: auto !important; }

.vv-lp-passos { margin-top: 2.5rem !important; gap: 2rem !important; }
.vv-lp-passos .wp-block-column { text-align: center; }
.vv-lp-passos__num { font-family: var(--vv-serif); font-size: 4.5rem; line-height: 1; color: var(--vv-bronze); margin: 0; }
.vv-lp-passos h3 { font-size: 1.4rem !important; margin: .25rem 0 .5rem; }
.vv-lp-passos p:last-child { color: var(--vv-cinza); max-width: 18rem; margin-inline: auto; }

.vv-lp-itens { margin-top: 2.5rem !important; gap: 2rem 1.5rem !important; }
.vv-lp-item { background: #fff; border: 1px solid var(--vv-areia); border-radius: var(--vv-raio); padding: 1.25rem; display: flex; flex-direction: column; }
.vv-lp-item .wp-block-image { margin: 0 0 1rem; background: var(--vv-creme); border-radius: 2px; aspect-ratio: 4 / 5; display: grid; place-items: center; overflow: hidden; }
.vv-lp-item .wp-block-image img { max-height: 100%; width: auto; object-fit: contain; }
.vv-lp-item h3 { font-size: 1.3rem !important; margin: 0 0 .35rem; line-height: 1.2; }
.vv-lp-item p { font-size: .92rem; color: var(--vv-cinza); margin: 0; }
.vv-lp-item--texto { justify-content: flex-end; background: var(--vv-noite); border-color: var(--vv-noite); }
.vv-lp-item--texto h3 { color: #fff; }
.vv-lp-item--texto p { color: rgba(245,239,230,.75); }
.vv-lp-item__selo { font-family: var(--vv-serif) !important; font-size: 5rem !important; line-height: 1; color: var(--vv-dourado) !important; margin: auto 0 1rem !important; }
@media (min-width: 900px) { .vv-lp-item--principal { grid-column: span 2; grid-row: span 2; } }

.vv-lp-depoimentos { margin-top: 2rem !important; }
.vv-lp-depoimentos .wp-block-quote { background: #fff; border: 1px solid var(--vv-areia); border-left: 2px solid var(--vv-bronze); padding: 1.5rem; margin: 0; font-size: 1.2rem; }

.vv-lp-oferta__titulo { font-size: clamp(2rem, 4vw, 2.8rem) !important; font-weight: 400; color: #fff; }
.vv-lp-oferta .vv-compra__preco { color: #fff; font-size: 2.6rem; }
.vv-lp-oferta .vv-compra__nota, .vv-lp-oferta .vv-compra__parcelas { color: rgba(245,239,230,.75); }
.vv-lp-garantia { text-align: center; border: 1px solid var(--vv-areia); background: var(--vv-papel); border-radius: var(--vv-raio); padding: 2rem; }
.vv-lp-garantia__selo { display: inline-grid; place-items: center; width: 5.5rem; height: 5.5rem; border-radius: 50%; border: 1px solid var(--vv-bronze); font-family: var(--vv-serif); font-size: 1.3rem; color: var(--vv-bronze-escuro); margin: 0 auto .5rem; }
.vv-lp-garantia h3 { margin-top: 0; }
html { scroll-behavior: smooth; }

/* Publicidade (quando ativa) --------------------------------------------- */
.vv-anuncio { margin-block: 2rem; text-align: center; min-height: 120px; }
.vv-anuncio__rotulo { display: block; font-size: .65rem; letter-spacing: .2em; text-transform: uppercase; color: var(--vv-cinza); margin-bottom: .35rem; }

/* Avisos exibidos apenas para quem edita --------------------------------- */
.vv-aviso-editor { border: 1px dashed var(--vv-bronze); background: #fff8ec; color: var(--vv-tinta); padding: .75rem 1rem; font-size: .85rem; border-radius: var(--vv-raio); }

/* 404 -------------------------------------------------------------------- */
.vv-404 .vv-busca { margin: 2rem auto; max-width: 28rem; }

/* Movimento reduzido ------------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* ==========================================================================
   Atualização editorial (v2)
   ========================================================================== */
.vv-hero__titulo {
	font-size: clamp(2.3rem, 4.6vw, 3.9rem) !important; text-transform: none !important;
	letter-spacing: -.005em !important; line-height: 1.08 !important; font-weight: 400 !important;
}
.vv-hero__subtitulo--2 { font-size: .98rem !important; color: rgba(255,255,255,.72) !important; }
.vv-hero__texto { max-width: 680px; }

.vv-caminho__frase { font-family: var(--vv-serif); font-style: italic; font-size: 1.2rem; color: var(--vv-bronze-escuro) !important; margin: -.25rem auto .6rem !important; }
.vv-secao-sub { margin-top: -.75rem !important; margin-bottom: var(--wp--preset--spacing--30) !important; }

.vv-cartas__subtitulo { font-family: var(--vv-serif); font-style: italic; font-size: 1.3rem; color: var(--vv-bronze-escuro) !important; margin: .1rem 0 .4rem !important; }

/* Cards grandes (ex.: 2 atendimentos na Home) */
.vv-cards--grande { grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 1.5rem; }
.vv-card--grande .vv-card__link {
	background: var(--vv-noite); color: var(--vv-creme); border-radius: var(--vv-raio);
	padding: clamp(1.75rem, 4vw, 2.75rem); position: relative; overflow: hidden;
	background-image: radial-gradient(ellipse at 100% 0%, rgba(168,115,63,.28), transparent 60%);
}
.vv-card--grande .vv-card__img { margin: -1rem -1rem 1.5rem; }
.vv-card--grande .vv-rotulo { color: var(--vv-dourado); }
.vv-card--grande .vv-card__titulo { font-size: clamp(2rem, 3.6vw, 2.6rem); color: #fff; font-weight: 400; margin-bottom: .35rem; }
.vv-card__sub { font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--vv-bronze-escuro); margin: 0 0 .9rem; }
.vv-card--grande .vv-card__sub { color: var(--vv-dourado); }
.vv-card--grande .vv-card__resumo { color: rgba(245,239,230,.82); font-size: 1.02rem; max-width: 34rem; margin-bottom: 1.75rem; }
.vv-card--grande .vv-card__rodape { border-top-color: rgba(232,207,166,.22); padding-top: 1.1rem; align-items: center; flex-wrap: wrap; }
.vv-card--grande .vv-card__preco { font-size: 1.6rem; color: #fff; }
.vv-card--grande .vv-card__preco small { font-family: var(--vv-sans); font-size: .8rem; color: rgba(245,239,230,.7); margin-left: .35rem; }
.vv-card--grande .vv-card__mais { color: var(--vv-noite); background: var(--vv-dourado); border-radius: 999px; padding: .7em 1.4em; }
.vv-card--grande .vv-card__link:hover .vv-card__mais { background: #fff; }

/* O que você recebe (v3): só a capa do produto; demais itens tipográficos */
.vv-lp-itens { grid-template-columns: repeat(3, 1fr) !important; }
@media (max-width: 900px) { .vv-lp-itens { grid-template-columns: 1fr 1fr !important; } }
@media (max-width: 600px) { .vv-lp-itens { grid-template-columns: 1fr !important; } }
.vv-lp-item--texto { background: #fff; border-color: var(--vv-areia); justify-content: flex-start; padding: 1.75rem 1.5rem; }
.vv-lp-item--texto h3 { color: var(--vv-tinta); }
.vv-lp-item--texto p { color: var(--vv-cinza); }
.vv-lp-item__num { font-family: var(--vv-serif) !important; font-size: 2.6rem !important; line-height: 1 !important; color: var(--vv-bronze) !important; margin: 0 0 1.1rem !important; font-style: italic; }
.vv-lp-item--principal {
	background: var(--vv-noite); border-color: var(--vv-noite); color: var(--vv-creme);
	display: grid; grid-template-columns: 1fr; gap: 1.5rem; align-items: center; padding: 2rem;
	background-image: radial-gradient(ellipse at 30% 40%, rgba(168,115,63,.3), transparent 65%);
}
@media (min-width: 901px) { .vv-lp-item--principal { grid-column: span 2; grid-row: span 2; grid-template-columns: 1fr 1.1fr; padding: 2.5rem; } }
@media (min-width: 601px) and (max-width: 900px) { .vv-lp-item--principal { grid-column: span 2; } }
.vv-lp-item--principal .wp-block-image { background: transparent !important; aspect-ratio: auto !important; margin: 0 !important; }
.vv-lp-item--principal .wp-block-image img { max-height: 24rem; }
.vv-lp-item--principal h3 { color: #fff; font-size: clamp(1.6rem, 2.6vw, 2.1rem) !important; font-weight: 400; }
.vv-lp-item--principal p { color: rgba(245,239,230,.82); font-size: 1rem; }
.vv-lp-item--principal .vv-lp-item__bonus { color: var(--vv-dourado) !important; }

/* Páginas de atendimento ---------------------------------------------------- */
.vv-atendimento-hero { padding-block: clamp(3.5rem, 9vw, 6.5rem) !important; }
.vv-atendimento-hero .vv-trilha { color: rgba(245,239,230,.6); }
.vv-atendimento-hero .vv-lp-hero__texto { max-width: 40rem; }
.vv-lp-hero__texto-bloco .wp-block-buttons { margin-top: 1.75rem; }
.vv-lp-centro { max-width: 40rem; margin-inline: auto !important; }
.vv-lp-intro--claro { color: var(--vv-dourado) !important; }
.vv-lp-rotulo { font-size: .7rem; letter-spacing: .22em; text-transform: uppercase; color: var(--vv-dourado); margin-top: 2rem !important; margin-bottom: .5rem !important; }
.vv-lp-check--centro { max-width: 30rem; }
.vv-compra--centro { text-align: center; margin-top: 0; }
.vv-compra--centro .wp-block-buttons { justify-content: center; }
.vv-lp-oferta .vv-compra__preco { margin-bottom: .25rem; }

.vv-lp-grade { gap: 1.25rem !important; margin-top: 2.25rem !important; }
.vv-lp-cartao { background: #fff; border: 1px solid var(--vv-areia); border-radius: var(--vv-raio); padding: 1.6rem 1.5rem; }
.vv-lp-cartao h3 { font-size: 1.35rem !important; line-height: 1.2; margin: 0 0 .5rem; }
.vv-lp-cartao p { margin: 0; color: var(--vv-cinza); font-size: .98rem; }
.vv-lp-cartao p:only-of-type:not(.vv-lp-cartao__num), .vv-lp-cartao .vv-lp-cartao__num + p { color: var(--vv-tinta); }
.vv-lp-cartao__num { font-family: var(--vv-serif) !important; font-style: italic; font-size: 2rem !important; line-height: 1; color: var(--vv-bronze) !important; margin: 0 0 .9rem !important; }
.vv-lp-cartao--escuro { background: transparent; border-color: rgba(232,207,166,.22); }

.vv-lp-citacao { border: 0 !important; padding: 0 !important; text-align: center; margin: 3rem auto 0 !important; max-width: 40rem; }
.vv-lp-citacao p { font-size: clamp(1.4rem, 2.6vw, 1.8rem); color: var(--vv-bronze-escuro); }
.vv-lp-citacao cite { display: block; margin-top: .75rem; font-family: var(--vv-sans); font-style: normal; font-size: .75rem; letter-spacing: .2em; text-transform: uppercase; color: var(--vv-cinza); }

.vv-lp-plano { border: 1px solid rgba(232,207,166,.3); border-radius: var(--vv-raio); padding: clamp(1.75rem, 4vw, 2.75rem); margin-top: 2.5rem !important; background: rgba(255,255,255,.02); }
.vv-lp-plano h3 { color: #fff; font-size: 1.6rem !important; margin: .25rem 0 0; }
.vv-lp-plano .vv-lp-check--claro { max-width: 32rem; margin-inline: auto; }
.vv-card__preco { white-space: nowrap; }
/* Grades equilibradas: 4 itens em linha; 5–6 itens em 3 colunas */
.vv-lp-grade { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.vv-lp-grade:has(> :nth-child(4):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
@media (max-width: 960px) { .vv-lp-grade, .vv-lp-grade:has(> :nth-child(4):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 600px) { .vv-lp-grade, .vv-lp-grade:has(> :nth-child(4):last-child) { grid-template-columns: 1fr !important; } }

/* Capa tipográfica (itens sem imagem) */
.vv-capa {
	position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 1rem;
	aspect-ratio: 4 / 5; width: 100%; box-sizing: border-box; padding: 1.4rem 1.25rem; overflow: hidden;
	background: var(--vv-noite); color: var(--vv-creme); border-radius: var(--vv-raio);
	background-image: radial-gradient(ellipse at 50% 30%, rgba(168,115,63,.35), transparent 65%);
	box-shadow: inset 0 0 0 1px rgba(232,207,166,.18), inset 0 0 0 6px var(--vv-noite), inset 0 0 0 7px rgba(232,207,166,.14);
}
.vv-card--meditacao .vv-capa, .vv-artigo-card .vv-capa, .vv-item-lista .vv-capa { aspect-ratio: 3 / 2; }
.vv-capa__rotulo { font-size: .62rem; letter-spacing: .24em; text-transform: uppercase; color: var(--vv-dourado); }
.vv-capa__titulo { font-family: var(--vv-serif); font-size: clamp(1.25rem, 2.2vw, 1.7rem); line-height: 1.15; color: #fff; text-wrap: balance; }
.vv-capa__marca { font-size: .55rem; letter-spacing: .3em; text-transform: uppercase; color: rgba(245,239,230,.55); }
.vv-capa-figura .vv-capa { max-width: 26rem; margin-inline: auto; }
.vv-capa-figura .vv-capa__titulo { font-size: clamp(1.8rem, 3.4vw, 2.6rem); }
.vv-item-lista .vv-capa { padding: .5rem; } .vv-item-lista .vv-capa__rotulo, .vv-item-lista .vv-capa__marca { display: none; } .vv-item-lista .vv-capa__titulo { font-size: .8rem; }

/* Três caminhos com imagem em arco (referência aprovada) */
.vv-caminho__img { margin: 0 auto 1.25rem !important; max-width: 13rem; }
.vv-caminho__img img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; border-radius: 999px 999px var(--vv-raio) var(--vv-raio) !important; }
.vv-player__breve { font-family: var(--vv-serif); font-style: italic; font-size: 1.15rem; color: var(--vv-dourado); margin: 0; }
.vv-card__link { box-sizing: border-box; }

/* Gavetas (temas) na página Conteúdos */
.vv-gavetas { margin-bottom: var(--wp--preset--spacing--50); }
.vv-gavetas .vv-titulo-secao { margin-bottom: var(--wp--preset--spacing--30); }
.vv-gavetas__lista { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 960px) { .vv-gavetas__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .vv-gavetas__lista { grid-template-columns: 1fr; } }
.vv-gaveta a {
	display: flex; flex-direction: column; height: 100%; box-sizing: border-box; text-decoration: none; color: var(--vv-tinta);
	background: var(--vv-papel); border: 1px solid var(--vv-areia); border-top: 2px solid var(--vv-bronze); border-radius: var(--vv-raio);
	padding: 1.6rem 1.5rem 1.4rem; transition: border-color var(--vv-trans), transform var(--vv-trans);
}
.vv-gaveta a:hover { border-color: var(--vv-bronze); transform: translateY(-2px); }
.vv-gaveta__titulo { font-size: 1.55rem !important; line-height: 1.15; margin: 0 0 .6rem; font-weight: 500; }
.vv-gaveta__desc { font-size: .95rem; color: var(--vv-cinza); margin: 0 0 1.25rem; }
.vv-gaveta__mais { margin-top: auto; font-size: .7rem; letter-spacing: .18em; text-transform: uppercase; color: var(--vv-bronze-escuro); }
.vv-titulo-recentes { margin-bottom: var(--wp--preset--spacing--20) !important; }

/* Menu suspenso de Conteúdos (temas) */
.vv-header .wp-block-navigation .wp-block-navigation__submenu-container {
	background: var(--vv-noite) !important; color: var(--vv-creme) !important; border: 1px solid rgba(232,207,166,.2) !important;
	border-radius: var(--vv-raio); padding: .5rem 0; min-width: 16rem !important; box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.vv-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: .55rem 1.2rem !important; font-size: .92rem; border-bottom: 0 !important;
}
.vv-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: var(--vv-dourado); background: rgba(255,255,255,.04); }
.vv-header .wp-block-navigation .wp-block-navigation__submenu-container li:first-child .wp-block-navigation-item__content {
	font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; color: var(--vv-dourado); border-bottom: 1px solid rgba(232,207,166,.15) !important; margin-bottom: .25rem;
}
.vv-header .wp-block-navigation__submenu-icon { color: inherit; }
.vv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	border: 0 !important; box-shadow: none; padding: .25rem 0 0 1rem; background: transparent !important;
}
.vv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font-family: var(--vv-sans); font-size: 1rem !important; padding: .3rem 0 !important;
}

/* Ajuste da Joyce: títulos com letras mais juntas e nenhum sublinhado */
.is-style-secao, .vv-titulo-secao, .vv-cartas__titulo { letter-spacing: .005em !important; }
.vv-hero__titulo { letter-spacing: -.01em !important; }
a, a:hover, a:focus, .wp-block-navigation a, h1 a, h2 a, h3 a, h4 a, .vv-link-secao a { text-decoration: none !important; }
.vv-link-secao a { border-bottom: 0 !important; }
.vv-artigo__corpo a, .wp-block-post-content p a, .wp-block-post-content li a { color: var(--vv-bronze-escuro); font-weight: 500; }

/* Cabeçalho (e o menu suspenso) sempre acima do conteúdo da página */
header.vv-header-part, .vv-header-part { position: relative; z-index: 100 !important; }
.vv-com-hero .vv-header-part { position: absolute; }
.vv-header, .vv-header .wp-block-navigation { position: relative; z-index: 100; }
.vv-header .wp-block-navigation__submenu-container { z-index: 200 !important; }

/* Maiúsculas em serifa mais juntas (pedido da Joyce) */
.is-style-secao, .vv-titulo-secao, .vv-cartas__titulo, .vv-meditacao-faixa .vv-titulo-secao { letter-spacing: -.035em !important; word-spacing: .04em; }
.vv-marca__nome, .vv-marca__nome a { letter-spacing: .01em !important; }


/* ==========================================================================
   Fonte única: Jost também nos títulos (pedido da Joyce, 30/09)
   ========================================================================== */
:root { --vv-serif: Jost, system-ui, -apple-system, "Segoe UI", sans-serif; }
h1, h2, h3, h4, .wp-block-heading, .wp-block-post-title { font-weight: 400; letter-spacing: -.005em; }
/* Sem itálico falso: as frases que eram em serifa itálica ficam leves e em bronze */
.vv-caminho__numero, .vv-artigo__linha-fina, .vv-lp-palavras, .vv-lp-codigo p.vv-lp-codigo__frase, .vv-lp-intro,
.vv-caminho__frase, .vv-cartas__subtitulo, .vv-lp-item__num, .vv-lp-cartao__num, .vv-player__breve, .vv-lp-tese em,
.wp-block-quote, .wp-block-pullquote, .vv-lp-citacao p, .vv-cartas__form--breve p { font-style: normal !important; font-weight: 300; }
/* Maiúsculas elegantes: espaçadas como na referência */
.is-style-secao, .vv-titulo-secao, .vv-cartas__titulo, .vv-meditacao-faixa .vv-titulo-secao { letter-spacing: .08em !important; font-weight: 400 !important; word-spacing: normal; font-size: clamp(1.35rem, 2.4vw, 1.75rem) !important; }
.vv-marca__nome, .vv-marca__nome a { letter-spacing: .14em !important; font-weight: 400 !important; font-size: clamp(.95rem, 1.8vw, 1.15rem) !important; }
/* Tamanhos ajustados para a Jost (maior que a serifa no mesmo tamanho) */
.vv-hero__titulo { font-size: clamp(2rem, 3.8vw, 3.2rem) !important; font-weight: 300 !important; line-height: 1.15 !important; letter-spacing: -.01em !important; }
.vv-titulo-pagina, .vv-artigo__titulo, .vv-venda__titulo, .vv-meditacao-topo__titulo, .vv-lp-hero__titulo { font-size: clamp(2rem, 4.2vw, 3rem) !important; font-weight: 300 !important; line-height: 1.15; }
.vv-lp-grande, .vv-sobre__nome, .vv-lp-oferta__titulo { font-size: clamp(1.8rem, 3.4vw, 2.5rem) !important; font-weight: 300 !important; }
.vv-caminho__titulo { font-size: clamp(1.4rem, 2.2vw, 1.7rem) !important; }
.vv-destaque-principal__titulo { font-size: clamp(1.6rem, 3vw, 2.1rem) !important; font-weight: 300 !important; }
.vv-item-lista__titulo { font-size: 1.08rem !important; line-height: 1.35 !important; }
.vv-card__titulo, .vv-artigo-card__titulo, .vv-artigo-card .wp-block-post-title, .vv-gaveta__titulo { font-size: 1.2rem !important; line-height: 1.3 !important; }
.vv-card--grande .vv-card__titulo { font-size: clamp(1.6rem, 2.8vw, 2rem) !important; font-weight: 300; }
.vv-meditacao-faixa__titulo, .vv-cta__titulo { font-size: 1.5rem !important; }
.vv-lp-tese { font-size: clamp(1.2rem, 2vw, 1.5rem) !important; font-weight: 300; }
.vv-lp-destaque { font-size: clamp(1.15rem, 2vw, 1.4rem) !important; font-weight: 300; }
.vv-artigo__corpo h2 { font-size: 1.6rem; font-weight: 400; }
.vv-artigo__corpo h3 { font-size: 1.25rem; font-weight: 500; }
.vv-artigo__corpo > p:first-of-type::first-letter { font-weight: 300; font-size: 3.4em; }
.vv-capa__titulo { font-weight: 300; font-size: clamp(1.1rem, 1.8vw, 1.4rem); }
.vv-caminho__numero, .vv-lp-item__num, .vv-lp-cartao__num, .vv-lp-passos__num { font-weight: 200 !important; }
.vv-compra__preco, .vv-card__preco { font-weight: 400; }
.vv-lp-codigo h3 { font-size: 1.3rem !important; }
.vv-faq .wp-block-details summary { font-size: 1.1rem; }
a:hover, a:focus { text-decoration: none !important; }

/* Exceção: só o título grande da Home na serifa (Cormorant Garamond) */
@font-face { font-family: "Cormorant Garamond"; src: url("../fonts/cormorant-garamond.woff2") format("woff2"); font-weight: 300 700; font-style: normal; font-display: swap; }
.vv-hero__titulo { font-family: "Cormorant Garamond", Georgia, serif !important; font-weight: 400 !important; font-size: clamp(2.5rem, 4.8vw, 4rem) !important; line-height: 1.08 !important; letter-spacing: -.005em !important; }

/* ===== Artigos de estudo (ex.: Salmo 91) ===== */
.vv-ref { font-size: .72em; letter-spacing: .06em; color: var(--vv-bronze); white-space: nowrap; vertical-align: .08em; opacity: .85; }
a.vv-ref:hover { color: var(--vv-bronze-escuro); opacity: 1; }
.vv-nota-texto { font-size: .82rem; color: var(--vv-cinza); font-style: italic; }
.vv-versiculos { padding-left: 1.6rem; }
.vv-versiculos li { margin-bottom: .55rem; padding-left: .3rem; font-style: italic; }
.vv-versiculos li::marker { color: var(--vv-bronze); font-size: .8em; }
.vv-hebraico { font-size: 1.15rem; text-align: center; margin: 1.5rem 0 !important; }
.vv-hebraico [lang="he"] { font-size: 1.6rem; display: block; color: var(--vv-bronze-escuro); line-height: 1.5; }
.vv-destaque-texto { border-left: 2px solid var(--vv-bronze); padding-left: 1.2rem; }
.vv-assinatura { text-align: right; font-style: italic; color: var(--vv-bronze-escuro); }
.vv-fontes-det { margin-top: var(--wp--preset--spacing--50) !important; border-top: 1px solid var(--vv-areia); padding-top: 1rem; font-size: .82rem; color: var(--vv-cinza); }
.vv-fontes-det summary { cursor: pointer; font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; color: var(--vv-cinza); }
.vv-fontes-det summary::marker { color: var(--vv-bronze); }
.vv-fontes-det[open] summary { margin-bottom: .75rem; }
.vv-fontes-det ul { padding-left: 1.1rem; }
.vv-fontes-det li { margin-bottom: .5rem; line-height: 1.5; }
.vv-fontes-det a { color: var(--vv-bronze-escuro); }

/* Imagens editoriais no corpo do artigo: respiro amplo, nunca cortadas nem mais largas que a tela */
.vv-artigo__corpo .vv-figura { margin-block: var(--wp--preset--spacing--50) !important; max-width: 100%; }
.vv-artigo__corpo .vv-figura img { display: block; width: 100%; height: auto; max-width: 100%; object-fit: contain; border-radius: var(--vv-raio); }
.vv-artigo__corpo .vv-figura--diagrama { max-width: min(100%, 560px); margin-inline: auto !important; }
.vv-artigo__corpo .vv-figura--diagrama img { border-radius: 0; }
.vv-artigo__corpo .vv-figura figcaption { margin-top: .9rem; font-size: .85rem; line-height: 1.5; font-style: italic; color: var(--vv-cinza); text-wrap: balance; }
.vv-artigo__capa img { height: auto; max-width: 100%; }
@media (max-width: 600px) { .vv-artigo__corpo .vv-figura { margin-block: var(--wp--preset--spacing--40) !important; } }
.vv-artigo__corpo .vv-figura, .vv-artigo__corpo .vv-levar, .vv-artigo__corpo .vv-faq { clear: both; }

/* Vídeo no topo da meditação (enquanto não há áudio próprio) */
.vv-meditacao-topo .vv-video--meditacao { margin: 1.5rem 0 0 !important; max-width: 760px; }
.vv-meditacao-topo .vv-video--meditacao figcaption { color: rgba(245,239,230,.75); }
.vv-meditacao-topo .vv-video--meditacao figcaption a { color: #e8cfa6; }
/* Vídeo compacto no meio do texto (classe vv-video--compacto no bloco): centralizado, texto segue abaixo */
.vv-artigo__corpo .vv-video--compacto { width: min(100%, 460px); margin: var(--wp--preset--spacing--50) auto !important; }
.vv-artigo__corpo .vv-video--compacto figcaption { text-align: center; }

/* Orações: tradicional (cartão em papel, centralizada) e autoral (fio lateral, alinhada à esquerda, assinada) */
.vv-artigo__corpo .vv-oracao {
	margin-block: var(--wp--preset--spacing--40) !important; padding: clamp(1.75rem, 5vw, 3rem) clamp(1.25rem, 5vw, 3rem);
	background: var(--vv-papel); border: 1px solid var(--vv-areia); border-radius: var(--vv-raio); text-align: center;
}
.vv-artigo__corpo .vv-oracao > * { margin-block: 0 !important; }
.vv-artigo__corpo .vv-oracao > * + * { margin-top: 1.25rem !important; }
.vv-artigo__corpo .vv-oracao h2 { font-size: .78rem !important; font-family: var(--vv-sans); font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--vv-bronze-escuro); }
.vv-oracao__texto { font-size: clamp(1.15rem, 2.4vw, 1.3rem); line-height: 1.9; color: var(--vv-tinta); }
.vv-artigo__corpo .vv-oracao--autoral { background: transparent; border: 0; border-left: 2px solid var(--vv-bronze); border-radius: 0; text-align: left; padding: .25rem 0 .25rem clamp(1.25rem, 4vw, 2rem); }
.vv-oracao--autoral p { font-style: italic; }
.vv-oracao--autoral .vv-assinatura { font-style: normal; text-align: left; font-size: .9rem; letter-spacing: .02em; }
.vv-latim { font-size: .95rem; line-height: 1.8; font-style: italic; color: var(--vv-cinza); padding-left: 1.2rem; border-left: 1px solid var(--vv-areia); }
.vv-link-futuro a, .vv-link-interno a { font-weight: 500; }
.vv-artigo__corpo .vv-link-interno { margin-top: -.75rem !important; font-size: .98rem; }
/* Oração longa: texto à esquerda dentro do cartão (título continua centralizado) */
.vv-oracao--longa .vv-oracao__texto { text-align: left; font-size: clamp(1.06rem, 2vw, 1.18rem); line-height: 1.85; }
.vv-oracao--longa .vv-assinatura { text-align: left; }
/* Frase-chave dentro da oração e instrução entre parênteses */
.vv-oracao__destaque { display: inline-block; margin-block: .35em; color: var(--vv-bronze-escuro); font-weight: 500; }
.vv-oracao__instrucao { color: var(--vv-cinza); font-size: .88em; }
/* Frase da oração em destaque no texto corrido */
.vv-artigo__corpo .vv-frase-oracao {
	margin-block: var(--wp--preset--spacing--40) !important; padding: 1.6rem 1rem; text-align: center; text-wrap: balance;
	font-size: clamp(1.3rem, 3vw, 1.65rem); line-height: 1.45; color: var(--vv-bronze-escuro);
	border-top: 1px solid var(--vv-areia); border-bottom: 1px solid var(--vv-areia);
}
/* Botão discreto para baixar a oração (PDF) dentro do cartão */
.vv-artigo__corpo .vv-oracao .wp-block-buttons { margin-top: 1.75rem !important; }
.vv-oracao .vv-oracao__baixar .wp-block-button__link {
	background: transparent; color: var(--vv-bronze-escuro); border: 1px solid var(--vv-bronze); border-radius: 999px;
	padding: .7em 1.6em; font-size: .72rem; letter-spacing: .16em; text-transform: uppercase;
}
.vv-oracao .vv-oracao__baixar .wp-block-button__link:hover { background: var(--vv-bronze); color: #fff; }

/* Bloco "para levar com você" (arte para baixar) */
.vv-levar { display: grid; grid-template-columns: 150px 1fr; gap: 1.75rem; align-items: center; background: var(--wp--preset--color--papel); border: 1px solid var(--vv-areia); border-radius: var(--wp--custom--raio); padding: 1.5rem; margin-top: var(--wp--preset--spacing--50) !important; }
.vv-levar > * { margin: 0 !important; }
.vv-levar .wp-block-image img { width: 100%; height: auto; border-radius: 6px; box-shadow: 0 6px 20px rgba(20, 17, 14, .18); }
.vv-levar__texto > * { margin: 0 !important; }
.vv-levar__texto > * + * { margin-top: .75rem !important; }
.vv-levar__titulo { font-size: 1.35rem; line-height: 1.2; color: var(--wp--preset--color--tinta); }
.vv-levar__texto p:not(.vv-levar__titulo) { font-size: .95rem; color: var(--vv-cinza); }
@media (max-width: 600px) { .vv-levar { grid-template-columns: 96px 1fr; gap: 1rem; padding: 1.1rem; } }

/* Subtítulo discreto das fontes (conta como subtítulo para leitura/SEO) */
.wp-block-post-content h2.vv-fontes-titulo { font-family: var(--vv-sans); font-size: .72rem !important; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--vv-cinza); line-height: 1.4; margin-top: var(--wp--preset--spacing--50) !important; padding-top: 1rem; border-top: 1px solid var(--vv-areia); }
.vv-fontes-titulo + .vv-fontes-det { margin-top: .4rem !important; border-top: 0; padding-top: 0; }
.vv-fontes-titulo + .vv-fontes-det summary { text-transform: none; letter-spacing: .02em; font-size: .8rem; }


/* ==========================================================================
   Artigos: Source Serif 4 nos títulos + Source Sans 3 no texto, mais juntinho
   (pedido da Joyce, 07/10 — visual do artigo "Eu Sou" feito no Claude).
   Só vale dentro de .vv-artigo; cabeçalho, rodapé e demais páginas seguem em Jost.
   ========================================================================== */
@font-face { font-family: "Source Serif 4"; src: url("../fonts/source-serif-4.woff2") format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Serif 4"; src: url("../fonts/source-serif-4-italic.woff2") format("woff2"); font-weight: 200 900; font-style: italic; font-display: swap; }
@font-face { font-family: "Source Sans 3"; src: url("../fonts/source-sans-3.woff2") format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Sans 3"; src: url("../fonts/source-sans-3-italic.woff2") format("woff2"); font-weight: 200 900; font-style: italic; font-display: swap; }

.vv-artigo {
	--vv-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
	--vv-sans: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	--wp--preset--font-family--serif: var(--vv-serif);
	--wp--preset--font-family--sans: var(--vv-sans);
	font-family: var(--vv-sans);
}
.vv-artigo .wp-block-quote, .vv-artigo .wp-block-pullquote { font-weight: 400; letter-spacing: -.015em; }
.vv-artigo h1, .vv-artigo h2, .vv-artigo h3, .vv-artigo h4, .vv-artigo .wp-block-post-title { font-family: var(--vv-serif); font-weight: 400; }
.vv-artigo .vv-artigo__titulo { font-size: clamp(2rem, 4vw, 2.6rem) !important; font-weight: 400 !important; line-height: 1.08; letter-spacing: -.028em; }
.vv-artigo__corpo h2 { letter-spacing: -.022em; line-height: 1.18; margin-top: 2em; margin-bottom: .5em; }
.vv-artigo__corpo h3 { letter-spacing: -.018em; line-height: 1.2; margin-top: 1.6em; margin-bottom: .45em; }
.vv-artigo__corpo { font-size: clamp(1.06rem, 1.25vw, 1.12rem); line-height: 1.48; letter-spacing: -.012em; word-spacing: -.02em; }
.vv-artigo__corpo > p + p, .vv-artigo__corpo > p + ul, .vv-artigo__corpo > p + ol { margin-block-start: .6em; }
.vv-artigo__corpo > p:first-of-type::first-letter { font-weight: 400; }
.vv-artigo .vv-artigo__linha-fina { font-weight: 400; letter-spacing: -.01em; }
.vv-artigo .vv-faq .wp-block-details summary { letter-spacing: -.015em; }

/* Artigos: texto justificado e capa na largura do texto (pedido da Joyce, 07/10) */
.vv-artigo__corpo > p:not([class*="has-text-align"]):not(.vv-nota-texto),
.vv-artigo__corpo .vv-faq details p { text-align: justify; text-justify: inter-word; hyphens: auto; -webkit-hyphens: auto; }
.vv-artigo .vv-artigo__capa.alignwide { max-width: var(--wp--style--global--content-size, 720px) !important; margin-inline: auto !important; }

/* Perguntas frequentes recolhidas, no mesmo estilo das fontes (07/10) */
.vv-faq > h2.vv-faq-titulo { margin-top: 0 !important; }
.vv-faq .vv-faq-det { font-size: inherit; color: inherit; }
.vv-faq .vv-faq-det details.wp-block-details { border-bottom: 1px solid var(--vv-areia); padding: 1rem 0; }
.vv-faq .vv-faq-det details.wp-block-details > summary { font-family: var(--vv-serif); font-size: 1.1rem; text-transform: none; letter-spacing: -.015em; color: var(--vv-tinta); margin-bottom: 0; }
.vv-faq .vv-faq-det details.wp-block-details[open] > summary { color: var(--vv-bronze-escuro); margin-bottom: .6rem; }
.vv-faq .vv-faq-det details.wp-block-details p { font-size: 1rem; color: var(--vv-tinta); }
.vv-faq > details.vv-faq-det { border-bottom: 0; padding: 0; }
.vv-faq > details.vv-faq-det > summary { font-family: var(--vv-sans); color: var(--vv-cinza); list-style-position: inside; }
