/* =========================================================================
   Tema AWAKE — estilos
   Cores/tipografia/espaçamentos vêm do theme.json (variáveis --wp--preset--*).
   Aqui ficam: menu fixo, estilos de bloco do tema e o movimento ao rolar.
   Todo movimento é "extra": sem JS ou com "reduzir movimento", tudo aparece
   estático e legível.
   ========================================================================= */

:root {
	--awake-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--awake-header-h: 4rem;
	--awake-brand: var(--wp--preset--color--brand);
	--awake-brand-dark: var(--wp--preset--color--brand-dark);
	--awake-deep: var(--wp--preset--color--brand-deep);
	--awake-accent: var(--wp--preset--color--accent);
	--awake-accent-soft: var(--wp--preset--color--accent-soft);
	--awake-ink: var(--wp--preset--color--ink);
	--awake-muted: var(--wp--preset--color--muted);
	--awake-surface: var(--wp--preset--color--surface);
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 5rem;
}

body {
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

:where(a, button, input, textarea, select, summary):focus-visible {
	outline: 2px solid var(--awake-accent);
	outline-offset: 2px;
}

/* Âncoras das seções não ficam escondidas atrás do menu fixo. */
:where(section[id], [id].wp-block-group) {
	scroll-margin-top: 5rem;
}

/* ───────────────────────────── Menu fixo ─────────────────────────────── */

.awake-header {
	position: fixed;
	top: var(--wp-admin--admin-bar--height, 0px);
	left: 0;
	right: 0;
	z-index: 40;
	background: rgba(255, 255, 255, 0.88);
	-webkit-backdrop-filter: saturate(140%) blur(10px);
	backdrop-filter: saturate(140%) blur(10px);
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	transition: background 0.4s ease, border-color 0.4s ease;
}
.awake-header .wp-block-site-title a,
.awake-header .wp-block-navigation-item__content {
	text-decoration: none;
	transition: color 0.4s ease;
}
.awake-header .wp-block-site-title a {
	color: var(--awake-brand);
}
.awake-header .wp-block-site-tagline {
	color: var(--awake-muted);
	transition: color 0.4s ease;
}
.awake-header .wp-block-navigation-item__content:hover {
	color: var(--awake-accent);
}

/* Transparente sobre a foto do topo (só com JS, que devolve o fundo ao rolar). */
.js .has-hero .awake-header:not(.is-scrolled) {
	background: linear-gradient(to bottom, rgba(12, 38, 48, 0.55), rgba(12, 38, 48, 0));
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	border-color: transparent;
}
.js .has-hero .awake-header:not(.is-scrolled) :is(.wp-block-site-title a, .wp-block-site-tagline, .wp-block-navigation-item__content, .wp-block-navigation__responsive-container-open) {
	color: #fff;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
}
.js .has-hero .awake-header:not(.is-scrolled) .wp-block-site-tagline {
	color: rgba(255, 255, 255, 0.75);
}
.js .has-hero .awake-header:not(.is-scrolled) .wp-block-navigation-item__content:hover {
	color: var(--awake-accent-soft);
}

/* Menu aberto no celular: sempre fundo branco e texto escuro. */
.awake-header .wp-block-navigation__responsive-container.is-menu-open {
	background: #fff;
	color: var(--awake-ink);
}
.awake-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	color: var(--awake-ink) !important;
	text-shadow: none !important;
	font-size: 1.125rem;
}

@media (max-width: 599px) {
	.awake-header .wp-block-site-tagline {
		display: none;
	}
}

/* Marca: "AWAKE · Cognição e Neurocirurgia" (nome + descrição do site). */
.awake-marca {
	align-items: baseline;
}
.awake-header .wp-block-site-tagline {
	font-size: var(--wp--preset--font-size--base);
	margin: 0;
}
.awake-header .wp-block-site-tagline::before {
	content: '· ';
}

/* Blocos de topo encostados: menu fixo, conteúdo e rodapé sem vão entre si;
   seções em largura total encostadas umas nas outras. */
.wp-site-blocks > :is(main, footer),
.wp-block-post-content > .alignfull,
.wp-block-post-content > .alignfull + * {
	margin-block-start: 0;
}
.wp-block-post-content > .alignfull:last-child {
	margin-block-end: 0;
}

/* Páginas sem topo em foto: o conteúdo começa abaixo do menu fixo. */
body:not(.has-hero) .wp-site-blocks {
	padding-top: var(--awake-header-h);
}

/* ─────────────────────── Estilos de bloco do tema ───────────────────────── */

/* Parágrafo · Chamada (a pergunta curta acima do título da seção) */
.is-style-kicker {
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--awake-accent);
	margin-bottom: 0.5rem;
}
.is-style-kicker + :is(h1, h2, h3) {
	margin-top: 0;
}

/* Parágrafo · Destaque */
.is-style-lead {
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.65;
}

/* Separador · Filete curto (sob o título da seção) */
.wp-block-separator.is-style-curto {
	width: 4rem;
	max-width: 4rem;
	height: 1px;
	border: 0;
	background: color-mix(in srgb, var(--awake-accent) 40%, transparent);
	margin-left: 0;
	margin-right: auto;
	opacity: 1;
}
.wp-block-separator.is-style-curto.aligncenter {
	margin-left: auto;
}

/* Grupo/Coluna · Card */
.is-style-card {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.05);
	border-radius: 1rem;
	padding: 1.5rem;
	transition: transform 0.3s var(--awake-ease), box-shadow 0.3s var(--awake-ease);
}
.is-style-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--wp--preset--shadow--card);
}
.is-style-card > :first-child {
	margin-top: 0;
}
.is-style-card :is(h3, h4) {
	color: var(--awake-brand);
}

/* Grupo · Quadro em destaque ("Em resumo") */
.is-style-card-destaque {
	background: #fff;
	border: 1px solid color-mix(in srgb, var(--awake-accent) 15%, transparent);
	border-radius: 1rem;
	padding: 1.5rem 1.75rem;
	box-shadow: var(--wp--preset--shadow--suave);
}

/* Ícone de card (quadradinho turquesa) — usado nos padrões com bloco HTML */
.awake-icone {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--awake-accent) 10%, transparent);
	color: var(--awake-accent);
}
.awake-icone svg {
	width: 1.5rem;
	height: 1.5rem;
}

/* Lista · Com marcação ✓ */
.wp-block-list.is-style-check {
	list-style: none;
	padding-left: 0;
}
.wp-block-list.is-style-check li {
	position: relative;
	padding-left: 2rem;
	margin-top: 0.75rem;
}
.wp-block-list.is-style-check li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.15em;
	width: 1.25rem;
	height: 1.25rem;
	background: var(--awake-accent);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 10.5l3 3 7-7' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 10.5l3 3 7-7' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Botões sobre foto */
.wp-block-button.is-style-claro .wp-block-button__link {
	background: #fff;
	color: var(--awake-brand);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}
.wp-block-button.is-style-claro .wp-block-button__link:hover {
	background: rgba(255, 255, 255, 0.9);
	color: var(--awake-brand);
}
.wp-block-button.is-style-contorno-claro .wp-block-button__link {
	background: transparent;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.4);
}
.wp-block-button.is-style-contorno-claro .wp-block-button__link:hover {
	background: rgba(255, 255, 255, 0.1);
}
.wp-block-button .wp-block-button__link {
	transition: transform 0.2s ease, background-color 0.2s ease;
}
.wp-block-button .wp-block-button__link:hover {
	transform: translateY(-2px);
}

/* Imagem · Moldura com movimento */
.wp-block-image.is-style-moldura {
	--img-radius: 1rem;
	position: relative;
	overflow: hidden;
	border-radius: 1rem;
	box-shadow: var(--wp--preset--shadow--imagem);
	outline: 1px solid rgba(0, 0, 0, 0.05);
}
.wp-block-image.is-style-moldura img {
	display: block;
	width: 100%;
	border-radius: 0;
}

/* Capa · Topo da página (hero) */
.wp-block-cover.is-style-hero {
	min-height: 88vh;
	min-height: 88svh;
	color: #fff;
	isolation: isolate;
}
.wp-block-cover.is-style-hero .wp-block-cover__inner-container,
.wp-block-cover.is-style-hero.has-custom-content-position .wp-block-cover__inner-container {
	z-index: 3;
	width: 100% !important;
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto !important;
	padding-block: 6rem;
}
/* Texto do topo alinhado à esquerda, em linhas confortáveis. */
.wp-block-cover.is-style-hero .wp-block-cover__inner-container {
	position: static;
}
.wp-block-cover.is-style-hero .wp-block-cover__inner-container > * {
	position: relative;
	z-index: 3;
	margin-left: 0 !important;
	margin-right: auto !important;
	max-width: 42rem;
}
.wp-block-cover.is-style-hero .wp-block-cover__inner-container > :is(h1, h2) {
	color: #fff;
	max-width: 56rem;
}
.wp-block-cover.is-style-hero .wp-block-cover__inner-container > .wp-block-buttons {
	max-width: none;
}
.wp-block-cover.is-style-hero .is-style-kicker {
	color: rgba(255, 255, 255, 0.72);
	letter-spacing: 0.2em;
}
/* Véu inferior + auroras (manchas de luz desfocadas, decorativas) */
.wp-block-cover.is-style-hero::before,
.wp-block-cover.is-style-hero::after {
	content: '';
	position: absolute;
	z-index: 2;
	border-radius: 9999px;
	filter: blur(72px);
	pointer-events: none;
	display: block;
	min-height: 0;
}
.wp-block-cover.is-style-hero::before {
	width: 42rem;
	height: 42rem;
	left: -10rem;
	top: -12rem;
	background: radial-gradient(circle, var(--awake-accent-soft), transparent 70%);
	opacity: 0.45;
}
.wp-block-cover.is-style-hero::after {
	width: 38rem;
	height: 38rem;
	right: -12rem;
	top: 18%;
	background: radial-gradient(circle, var(--awake-accent), transparent 70%);
	opacity: 0.35;
}
.wp-block-cover.is-style-hero .wp-block-cover__background {
	z-index: 1;
}
.wp-block-cover.is-style-hero .wp-block-cover__background::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(12, 38, 48, 0.8), transparent 60%);
}

/* Indicador "role para ver mais" (link no padrão do topo) */
.wp-block-cover.is-style-hero .awake-scroll-cue,
.awake-scroll-cue {
	position: absolute;
	bottom: 1.5rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	display: none;
}
@media (min-width: 640px) {
	.wp-block-cover.is-style-hero .awake-scroll-cue,
	.awake-scroll-cue {
		display: block;
	}
}
.awake-scroll-cue span {
	display: block;
	width: 26px;
	height: 42px;
	border: 2px solid rgba(255, 255, 255, 0.6);
	border-radius: 9999px;
}
.awake-scroll-cue span::before {
	content: '';
	display: block;
	width: 4px;
	height: 8px;
	margin: 7px auto 0;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.9);
}

/* Capa · Faixa de foto (full-bleed, parallax) */
.wp-block-cover.is-style-faixa {
	min-height: clamp(300px, 46vh, 520px);
	overflow: hidden;
}
.wp-block-cover.is-style-faixa.faixa-baixa {
	min-height: clamp(220px, 34vh, 360px);
}
.wp-block-cover.is-style-faixa.faixa-alta {
	min-height: clamp(360px, 60vh, 640px);
}
.wp-block-cover.is-style-faixa .wp-block-cover__inner-container,
.wp-block-cover.is-style-faixa.has-custom-content-position .wp-block-cover__inner-container {
	width: 100% !important;
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto !important;
	padding-bottom: 1rem;
}
.wp-block-cover.is-style-faixa .wp-block-cover__inner-container > * {
	margin-left: 0 !important;
	max-width: none;
}
.wp-block-cover.is-style-faixa .wp-block-cover__inner-container p {
	color: rgba(255, 255, 255, 0.85);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	margin: 0;
}

/* ───────────────────────────── Blog ─────────────────────────────────────── */

.awake-post-card {
	height: 100%;
	display: flex;
	flex-direction: column;
}
.awake-post-card .wp-block-post-featured-image {
	margin: -1.5rem -1.5rem 0;
	overflow: hidden;
	border-radius: 1rem 1rem 0 0;
}
.awake-post-card .wp-block-post-featured-image img {
	transition: transform 0.6s var(--awake-ease);
}
.awake-post-card:hover .wp-block-post-featured-image img {
	transform: scale(1.04);
}
.awake-post-card .wp-block-post-title a {
	color: var(--awake-brand);
}
.awake-post-card .wp-block-post-title a:hover {
	color: var(--awake-accent);
}
.wp-block-post-template.is-layout-grid > li {
	height: 100%;
}
.wp-block-post-terms a {
	text-decoration: none;
}

.wp-block-query-pagination a {
	text-decoration: none;
}

/* Caixa de autor ao fim do artigo */
.awake-autor .wp-block-post-author__name {
	font-weight: 600;
	color: var(--awake-brand);
}
.awake-autor .wp-block-post-author__bio {
	font-size: var(--wp--preset--font-size--small);
	color: var(--awake-ink);
}

/* ────────────────────────── FAQ / detalhes ──────────────────────────────── */

.wp-block-details {
	border: 1px solid rgba(0, 0, 0, 0.06);
	border-radius: 0.75rem;
	background: #fff;
	padding: 1rem 1.25rem;
}
.wp-block-details + .wp-block-details {
	margin-top: 0.75rem;
}
.wp-block-details summary {
	cursor: pointer;
	font-weight: 600;
	color: var(--awake-brand);
}
.wp-block-details[open] summary {
	margin-bottom: 0.75rem;
}
/* Bloco de FAQ do Yoast */
.schema-faq-section {
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	padding-block: 1rem;
}
.schema-faq-question {
	display: block;
	font-weight: 600;
	color: var(--awake-brand);
}
.schema-faq-answer {
	margin: 0.5rem 0 0;
}

/* ──────────────────────── Formulários (Contact Form 7) ───────────────────── */

:where(.wpcf7, .awake-form) :is(input[type='text'], input[type='email'], input[type='tel'], select, textarea) {
	width: 100%;
	border: 1px solid rgba(0, 0, 0, 0.15);
	border-radius: 0.5rem;
	padding: 0.5rem 0.75rem;
	font: inherit;
	color: var(--awake-ink);
	background: #fff;
}
:where(.wpcf7, .awake-form) label {
	display: block;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
}
:where(.wpcf7, .awake-form) :is(input[type='submit'], button[type='submit']) {
	background: var(--awake-brand);
	color: #fff;
	border: 0;
	border-radius: 0.5rem;
	padding: 0.75rem 1.25rem;
	font: inherit;
	font-weight: 500;
	cursor: pointer;
}
:where(.wpcf7, .awake-form) :is(input[type='submit'], button[type='submit']):hover {
	background: var(--awake-brand-dark);
}
.wpcf7-list-item {
	margin-left: 0;
}

/* ─────────────────────────────── Rodapé ─────────────────────────────────── */

.awake-footer {
	color: rgba(255, 255, 255, 0.75);
}
.awake-footer .awake-footer__titulo,
.awake-footer strong {
	color: #fff;
	font-weight: 600;
}
.awake-footer .awake-footer__titulo {
	margin-bottom: 0.5rem;
}
.awake-footer a {
	color: rgba(255, 255, 255, 0.85);
}
.awake-footer a:hover {
	color: #fff;
}
.awake-footer__lista {
	list-style: none;
	padding-left: 0;
	margin-top: 0.5rem;
}
.awake-footer__lista li + li {
	margin-top: 0.25rem;
}
.awake-footer__base {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.6);
}

/* ===================== Movimento ao rolar (progressivo) ==================== */

/* Revelação: só oculta com .js-reveal (adicionada no <head> quando há JS e o
   visitante não pediu menos movimento). */
.js-reveal :is(.reveal, .reveal-fade, .reveal-scale) {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity 0.8s var(--awake-ease), transform 0.8s var(--awake-ease);
	transition-delay: var(--reveal-delay, 0ms);
}
.js-reveal .reveal-fade {
	transform: none;
}
.js-reveal .reveal-scale {
	transform: translateY(22px) scale(0.98);
}
.js-reveal :is(.reveal, .reveal-fade, .reveal-scale).is-visible {
	opacity: 1;
	transform: none;
}
/* Cards revelados: o hover volta a funcionar depois da entrada. */
.js-reveal .is-style-card.reveal-scale.is-visible:hover {
	transform: translateY(-4px);
}

/* Barra de progresso de leitura */
.scroll-progress {
	position: fixed;
	inset: 0 0 auto 0;
	height: 3px;
	transform: scaleX(0);
	transform-origin: 0 50%;
	background: linear-gradient(90deg, var(--awake-accent), var(--awake-brand));
	z-index: 60;
	pointer-events: none;
}

@media (prefers-reduced-motion: no-preference) {
	.js .wp-block-cover.is-style-hero::before {
		animation: awake-drift 22s ease-in-out infinite alternate;
	}
	.js .wp-block-cover.is-style-hero::after {
		animation: awake-drift 28s ease-in-out infinite alternate-reverse;
	}
	.js .awake-scroll-cue span::before {
		animation: awake-cue 1.8s ease-in-out infinite;
	}

	@supports (animation-timeline: scroll()) {
		.js .scroll-progress {
			animation: awake-progress linear both;
			animation-timeline: scroll(root);
		}
		/* Topo: o texto sobe e desvanece; a foto aproxima levemente. */
		.js .wp-block-cover.is-style-hero .wp-block-cover__inner-container > :not(.awake-scroll-cue) {
			animation: awake-hero-exit linear both;
			animation-timeline: scroll(root);
			animation-range: 0 70vh;
		}
		.js .wp-block-cover.is-style-hero .wp-block-cover__image-background {
			animation: awake-hero-img linear both;
			animation-timeline: scroll(root);
			animation-range: 0 92vh;
		}
	}

	@supports (animation-timeline: view()) {
		/* Imagem com moldura: a moldura "abre" ao entrar na tela e a foto
		   desliza devagar enquanto visível. */
		.js .wp-block-image.is-style-moldura {
			view-timeline-name: --awake-img;
			timeline-scope: --awake-img;
			animation: awake-unveil ease-out both;
			animation-timeline: --awake-img;
			animation-range: entry 0% entry 75%;
		}
		.js .wp-block-image.is-style-moldura img {
			animation: awake-pan linear both;
			animation-timeline: --awake-img;
			animation-range: cover 0% cover 100%;
		}
		/* Faixas: só o parallax vertical da foto; a direção alterna entre
		   faixas com a classe .faixa-inversa. */
		.js .wp-block-cover.is-style-faixa {
			view-timeline-name: --awake-faixa;
			timeline-scope: --awake-faixa;
		}
		.js .wp-block-cover.is-style-faixa .wp-block-cover__image-background {
			animation: awake-pan-faixa linear both;
			animation-timeline: --awake-faixa;
			animation-range: cover 0% cover 100%;
		}
		.js .wp-block-cover.is-style-faixa.faixa-inversa .wp-block-cover__image-background {
			animation-name: awake-pan-faixa-inversa;
		}
	}
}

@keyframes awake-progress {
	to { transform: scaleX(1); }
}
@keyframes awake-hero-exit {
	to { opacity: 0; transform: translateY(-44px); }
}
@keyframes awake-hero-img {
	to { transform: translateY(6%) scale(1.12); }
}
@keyframes awake-unveil {
	from {
		clip-path: inset(14% 8% 14% 8% round var(--img-radius, 0));
		opacity: 0.45;
	}
	to {
		clip-path: inset(0 0 0 0 round var(--img-radius, 0));
		opacity: 1;
	}
}
@keyframes awake-pan {
	from { transform: translateY(-5%) scale(1.12); }
	to { transform: translateY(5%) scale(1.12); }
}
@keyframes awake-pan-faixa {
	from { transform: translateY(-12%) scale(1.3); }
	to { transform: translateY(12%) scale(1.3); }
}
@keyframes awake-pan-faixa-inversa {
	from { transform: translateY(12%) scale(1.3); }
	to { transform: translateY(-12%) scale(1.3); }
}
@keyframes awake-drift {
	from { transform: translate3d(0, 0, 0) scale(1); }
	to { transform: translate3d(24px, -28px, 0) scale(1.08); }
}
@keyframes awake-cue {
	0%, 100% { transform: translateY(0); opacity: 1; }
	50% { transform: translateY(7px); opacity: 0.4; }
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

/* Movimento só roda com a classe .js (definida no <head> do site). O editor
   não tem essa classe, então lá tudo fica estático. */

/* ───────────────────────── Ajustes do artigo ─────────────────────────── */

.is-style-kicker a {
	color: inherit;
	text-decoration: none;
}
.is-style-kicker a:hover {
	color: var(--awake-brand);
}
.wp-block-post-author__byline {
	font-size: var(--wp--preset--font-size--x-small);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--awake-muted);
	margin-bottom: 0.25rem;
}
.wp-block-post-navigation-link a {
	text-decoration: none;
	display: inline-flex;
	flex-direction: column;
	gap: 0.15rem;
	max-width: 22rem;
}
.post-navigation-link-next a {
	text-align: right;
}
.post-navigation-link__label {
	font-size: var(--wp--preset--font-size--x-small);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--awake-muted);
}
.post-navigation-link__title {
	font-weight: 600;
}
.wp-block-search__input {
	border: 1px solid rgba(0, 0, 0, 0.15);
	border-radius: 0.5rem;
	padding: 0.5rem 0.75rem;
}

/* ─────────────────────────── Seções (padrões) ─────────────────────────── */

/* Card sobre fundo branco: levemente acinzentado. */
.is-style-card.awake-card-suave {
	background: var(--awake-surface);
}

/* Número da etapa (01, 02, 03) */
.awake-numero {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 9999px;
	background: color-mix(in srgb, var(--awake-brand) 10%, transparent);
	color: var(--awake-brand);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--small);
}

/* Card de profissional */
.awake-profissional-topo {
	gap: 1rem;
}
.wp-block-image.awake-avatar {
	flex: none;
	margin: 0;
}
.wp-block-image.awake-avatar img {
	width: 64px;
	height: 64px;
	border-radius: 9999px;
	object-fit: cover;
}
.awake-nome {
	font-weight: 600;
	color: var(--awake-ink);
	margin: 0;
}
.awake-identidade > * {
	margin-block: 0;
}
.awake-selo {
	color: var(--awake-accent);
}
.awake-profissional p.has-muted-color {
	line-height: 1.6;
}

/* Link "Ver publicação →" */
.awake-link-seta a {
	color: var(--awake-accent);
	font-weight: 500;
	text-decoration: none;
}
.awake-link-seta a:hover {
	text-decoration: underline;
}

/* Lista simples (canais de contato) */
.awake-lista-simples {
	list-style: none;
	padding-left: 0;
}
.awake-lista-simples li + li {
	margin-top: 0.5rem;
}

/* FAQ: caixa branca com perguntas separadas por linhas */
.awake-faq {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 1rem;
}
.awake-faq > .wp-block-details {
	border: 0;
	border-radius: 0;
	background: transparent;
	margin: 0;
	padding: 0 1.5rem;
}
.awake-faq > .wp-block-details + .wp-block-details {
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	margin: 0;
}
.awake-faq summary {
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding-block: 1rem;
	font-weight: 500;
	color: var(--awake-ink);
}
.awake-faq summary::-webkit-details-marker {
	display: none;
}
.awake-faq summary::after {
	content: '+';
	flex: none;
	color: var(--awake-accent);
	font-size: 1.25rem;
	line-height: 1;
	transition: transform 0.2s ease;
}
.awake-faq details[open] summary {
	margin-bottom: 0;
}
.awake-faq details[open] summary::after {
	transform: rotate(45deg);
}
.awake-faq details > :not(summary) {
	margin-top: 0;
	padding-bottom: 1.25rem;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.65;
}

/* Aviso visível só para quem edita (ex.: formulário não configurado) */
.awake-aviso-admin {
	border: 1px dashed var(--awake-accent);
	border-radius: 0.5rem;
	padding: 0.75rem 1rem;
	font-size: var(--wp--preset--font-size--small);
	color: var(--awake-muted);
}

/* Contact Form 7: espaçamento entre campos */
.wpcf7-form p {
	margin: 0 0 1rem;
}
.wpcf7-form .awake-form-dica {
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--awake-muted);
}
.wpcf7-acceptance label {
	display: flex;
	gap: 0.5rem;
	align-items: flex-start;
	font-weight: 400;
	font-size: var(--wp--preset--font-size--x-small);
}

/* Ícones dos cards (desenhados por máscara; cor = turquesa) */
.awake-icone::before {
	content: '';
	width: 1.5rem;
	height: 1.5rem;
	background: currentColor;
	-webkit-mask: var(--awake-icone) center / contain no-repeat;
	mask: var(--awake-icone) center / contain no-repeat;
}
.awake-icone--cerebro {
	--awake-icone: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22%3E%3Cpath d=%22M9 5a2.5 2.5 0 00-2.5 2.5A2.5 2.5 0 005 10a2.5 2.5 0 000 4 2.5 2.5 0 002 4 2 2 0 002-2V5zm6 0a2.5 2.5 0 012.5 2.5A2.5 2.5 0 0119 10a2.5 2.5 0 010 4 2.5 2.5 0 01-2 4 2 2 0 01-2-2V5z%22 stroke=%22black%22 stroke-width=%221.6%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E");
}
.awake-icone--alvo {
	--awake-icone: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228%22 stroke=%22black%22 stroke-width=%221.6%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%223.5%22 stroke=%22black%22 stroke-width=%221.6%22/%3E%3C/svg%3E");
}
.awake-icone--mapa {
	--awake-icone: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22%3E%3Cpath d=%22M9 4L3.5 6v14L9 18l6 2 5.5-2V4L15 6 9 4zm0 0v14m6-12v14%22 stroke=%22black%22 stroke-width=%221.6%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E");
}

/* Grades de cards responsivas em qualquer versão do WordPress:
   1 coluna no celular, 2 no tablet, e a contagem definida no bloco a partir
   de 1024px. */
@media (max-width: 599px) {
	.awake-grade.is-layout-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}
@media (min-width: 600px) and (max-width: 1023px) {
	.awake-grade.is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* ─────────────────────── Texto dos artigos ───────────────────────────── */

.single .wp-block-post-content > h2 {
	margin-top: 2.5rem;
	font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
}
.single .wp-block-post-content > h3 {
	margin-top: 2rem;
}
.single .wp-block-post-content :is(ul, ol):not(.is-style-check) li + li {
	margin-top: 0.35rem;
}
.single .wp-block-post-content .is-style-card-destaque {
	margin-block: 2rem;
}
.awake-autor-registro {
	margin: 0.15rem 0 0;
	font-size: var(--wp--preset--font-size--small);
	color: var(--awake-muted);
}
/* Fontes científicas ao fim do artigo */
.awake-fontes-bloco {
	margin-top: 2.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.awake-fontes {
	padding-left: 1.25rem;
	color: var(--awake-ink);
	line-height: 1.55;
}
.awake-fontes li {
	padding-left: 0.25rem;
	overflow-wrap: anywhere;
}
.awake-fontes li + li {
	margin-top: 0.5rem;
}
.wp-block-post-content blockquote p {
	font-size: var(--wp--preset--font-size--medium);
}
