/*
 * FoiBem Blog — estilos do tema filho.
 *
 * Atenção: o ColorMag define html { font-size: 62.5% }, então 1rem = 10px.
 * Todos os tokens de marca ficam em :root e podem ser ajustados em um só lugar.
 *
 * Sumário
 * 1. Fontes e tokens
 * 2. Base
 * 3. Componentes (botões, rótulos, ícones, busca)
 * 4. Cabeçalho
 * 5. Home
 * 6. Cartões e listagens
 * 7. Matéria, páginas e conteúdo do editor
 * 8. Comentários
 * 9. 404 e paginação
 * 10. Rodapé
 */

/* 1. Fontes e tokens ------------------------------------------------------ */

@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../fonts/inter-latin-wght-normal.woff2") format("woff2-variations"), url("../fonts/inter-latin-wght-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Poppins";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("../fonts/poppins-latin-600-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Poppins";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../fonts/poppins-latin-700-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	/* Cores da marca */
	--fb-blue: #2864f6;
	--fb-blue-dark: #1a4fd6;
	--fb-blue-deep: #1d56e8;
	--fb-teal: #00b8aa;
	--fb-teal-text: #007f75; /* turquesa com contraste AA para textos pequenos */
	--fb-yellow: #ffd329;
	--fb-yellow-dark: #f2c200;
	--fb-ink: #08132f;
	--fb-muted: #4a5672;
	--fb-soft: #eff8ff;
	--fb-soft-2: #e6f1fd;
	--fb-border: #e5edf5;
	--fb-white: #fff;
	--fb-overlay: rgba(8, 19, 47, 0.78);

	/* Tipografia */
	--fb-font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	--fb-font-head: "Poppins", "Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
	--fb-text-xs: 1.2rem;
	--fb-text-sm: 1.4rem;
	--fb-text-md: 1.6rem;
	--fb-text-lg: 1.8rem;
	--fb-title-sm: 1.9rem;
	--fb-title-md: clamp(2.4rem, 1.6rem + 1.6vw, 3.2rem);
	--fb-title-lg: clamp(2.8rem, 1.8rem + 2.4vw, 4rem);
	--fb-title-xl: clamp(3.4rem, 2rem + 3.6vw, 5.4rem);

	/* Espaçamentos */
	--fb-space-1: 0.4rem;
	--fb-space-2: 0.8rem;
	--fb-space-3: 1.2rem;
	--fb-space-4: 1.6rem;
	--fb-space-5: 2.4rem;
	--fb-space-6: 3.2rem;
	--fb-space-7: 4.8rem;
	--fb-space-8: 6.4rem;
	--fb-section: clamp(4rem, 2.4rem + 3vw, 6.4rem);
	--fb-gutter: 1.6rem;
	--fb-container: 118rem;
	--fb-reading: 76rem;

	/* Raios e sombras */
	--fb-radius-sm: 0.8rem;
	--fb-radius: 1.2rem;
	--fb-radius-lg: 1.6rem;
	--fb-radius-pill: 999px;
	--fb-shadow: 0 1px 2px rgba(8, 19, 47, 0.04), 0 6px 18px rgba(8, 19, 47, 0.06);
	--fb-shadow-hover: 0 2px 4px rgba(8, 19, 47, 0.06), 0 14px 30px rgba(8, 19, 47, 0.1);
	--fb-focus: 0 0 0 3px var(--fb-white), 0 0 0 5px var(--fb-blue);
	--fb-transition: 160ms ease;
}

@media (min-width: 768px) {
	:root {
		--fb-gutter: 2.4rem;
	}
}

/* 2. Base ----------------------------------------------------------------- */

body.foibem-blog {
	background: var(--fb-white);
	color: var(--fb-ink);
	font-family: var(--fb-font-body);
	font-size: var(--fb-text-md);
	line-height: 1.6;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

.foibem-blog #page {
	overflow-x: clip;
	background: var(--fb-white);
}

body.foibem-blog :is(h1, h2, h3, h4, h5, h6) {
	color: var(--fb-ink);
	font-family: var(--fb-font-head);
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

:where(.foibem-blog) a {
	color: var(--fb-blue);
	transition: color var(--fb-transition);
}

:where(.foibem-blog) a:where(:hover) {
	color: var(--fb-blue-dark);
}

.foibem-blog :focus-visible {
	outline: none;
	box-shadow: var(--fb-focus);
	border-radius: 4px;
}

:where(.foibem-blog) img {
	max-width: 100%;
	height: auto;
}

.fb-container {
	box-sizing: border-box;
	width: 100%;
	max-width: calc(var(--fb-container) + 2 * var(--fb-gutter));
	margin-inline: auto;
	padding-inline: var(--fb-gutter);
}

.foibem-blog .cm-container {
	box-sizing: border-box;
	max-width: calc(var(--fb-container) + 2 * var(--fb-gutter));
	padding-inline: var(--fb-gutter);
}

.foibem-blog #cm-content {
	padding-block: var(--fb-space-7) var(--fb-section);
	background: var(--fb-white);
}

.fb-home #cm-content {
	padding: 0;
}

.fb-home #cm-content > .cm-container {
	max-width: none;
	padding: 0;
}

.foibem-blog .skip-link:focus {
	background: var(--fb-white);
	color: var(--fb-ink);
	z-index: 100000;
}

/* 3. Componentes ---------------------------------------------------------- */

.fb-icon {
	flex: none;
	width: 2rem;
	height: 2rem;
}

.fb-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--fb-space-2);
	min-height: 4.4rem;
	padding: 0 var(--fb-space-5);
	border: 2px solid var(--fb-blue);
	border-radius: var(--fb-radius-pill);
	background: var(--fb-blue);
	color: var(--fb-white);
	font-family: var(--fb-font-body);
	font-size: var(--fb-text-sm);
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: background var(--fb-transition), color var(--fb-transition), border-color var(--fb-transition);
}

.foibem-blog .fb-button:hover {
	background: var(--fb-blue-dark);
	border-color: var(--fb-blue-dark);
	color: var(--fb-white);
}

.foibem-blog .fb-button--outline {
	background: transparent;
	color: var(--fb-blue);
}

.foibem-blog .fb-button--outline:hover {
	background: var(--fb-blue);
	color: var(--fb-white);
}

.foibem-blog .fb-button--yellow {
	background: var(--fb-yellow);
	border-color: var(--fb-yellow);
	color: var(--fb-ink);
	border-radius: var(--fb-radius-sm);
}

.foibem-blog .fb-button--yellow:hover {
	background: var(--fb-yellow-dark);
	border-color: var(--fb-yellow-dark);
	color: var(--fb-ink);
}

.fb-icon-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4.4rem;
	height: 4.4rem;
	padding: 0;
	border: 0;
	border-radius: var(--fb-radius-pill);
	background: transparent;
	color: var(--fb-ink);
	cursor: pointer;
}

.fb-icon-button:hover {
	background: var(--fb-soft);
	color: var(--fb-blue);
}

.fb-eyebrow,
.fb-kicker {
	display: inline-block;
	margin: 0;
	color: var(--fb-teal-text);
	font-family: var(--fb-font-body);
	font-size: 1.15rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.4;
	text-transform: uppercase;
	text-decoration: none;
}

.foibem-blog a.fb-kicker:hover {
	color: var(--fb-blue);
}

.fb-link-arrow {
	display: inline-flex;
	align-items: center;
	gap: var(--fb-space-2);
	font-size: var(--fb-text-md);
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.fb-link-arrow .fb-icon {
	transition: transform var(--fb-transition);
}

.fb-link-arrow:hover .fb-icon {
	transform: translateX(3px);
}

/* Formulário de busca */
.fb-search-form {
	display: flex;
	gap: var(--fb-space-2);
	width: 100%;
	max-width: 64rem;
}

.foibem-blog .fb-search-form__input {
	flex: 1;
	min-width: 0;
	min-height: 4.8rem;
	margin: 0;
	padding: 0 var(--fb-space-4);
	border: 1px solid var(--fb-border);
	border-radius: var(--fb-radius-pill);
	background: var(--fb-white);
	color: var(--fb-ink);
	font-family: var(--fb-font-body);
	font-size: var(--fb-text-md);
}

.foibem-blog .fb-search-form__input:focus {
	border-color: var(--fb-blue);
	outline: none;
	box-shadow: 0 0 0 3px rgba(40, 100, 246, 0.2);
}

.fb-search-form__submit {
	min-height: 4.8rem;
}

@media (max-width: 479px) {
	.fb-search-form__submit span {
		position: absolute !important;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(1px, 1px, 1px, 1px);
		white-space: nowrap;
	}

	.fb-search-form__submit {
		padding: 0 var(--fb-space-4);
	}
}

/* 4. Cabeçalho ------------------------------------------------------------ */

.fb-header {
	position: relative;
	z-index: 50;
	background: var(--fb-white);
	border-bottom: 1px solid var(--fb-border);
}

.fb-header__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 var(--fb-space-2);
	min-height: 7.2rem;
}

.fb-brand {
	display: inline-flex;
	align-items: center;
	gap: var(--fb-space-3);
	flex: none;
	margin-right: auto;
	color: var(--fb-muted);
	text-decoration: none;
}

.foibem-blog .fb-brand__logo {
	display: block;
	width: auto;
	height: 3.2rem;
}

.fb-brand__label {
	padding-left: var(--fb-space-3);
	border-left: 1px solid #d5dfeb;
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
	font-weight: 500;
	line-height: 2.4rem;
}

.foibem-blog .fb-brand:hover .fb-brand__label {
	color: var(--fb-ink);
}

/* Sem JavaScript, os botões não funcionam: menu e busca ficam abertos. */
.fb-header__toggle,
.fb-header__search-toggle {
	display: none;
}

.fb-js .fb-header__search-toggle {
	display: inline-flex;
}

.fb-header__toggle .fb-when-open,
.is-menu-open .fb-header__toggle .fb-when-closed {
	display: none;
}

.is-menu-open .fb-header__toggle .fb-when-open {
	display: block;
}

.fb-nav__list {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.fb-nav__list li {
	position: relative;
	margin: 0;
}

.fb-nav__list a {
	display: block;
	color: var(--fb-ink);
	font-size: var(--fb-text-sm);
	font-weight: 500;
	text-decoration: none;
}

.foibem-blog .fb-nav__list a:hover,
.foibem-blog .fb-nav__list .current-menu-item > a,
.foibem-blog .fb-nav__list .current-menu-ancestor > a,
.foibem-blog .fb-nav__list .current-post-ancestor > a,
.foibem-blog .fb-nav__list .current-category-ancestor > a {
	color: var(--fb-blue);
}

.fb-nav__list .sub-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.foibem-blog .fb-header__cta {
	min-height: 4rem;
	padding: 0 var(--fb-space-4);
	border-width: 1.5px;
	white-space: nowrap;
}

.fb-header__cta .fb-icon {
	width: 1.6rem;
	height: 1.6rem;
}

.fb-search-panel {
	padding-block: var(--fb-space-4);
	border-top: 1px solid var(--fb-border);
	background: var(--fb-soft);
}

.fb-js .fb-search-panel {
	display: none;
}

.fb-js .is-search-open .fb-search-panel {
	display: block;
}

/* Celular e tablet: painel recolhível abaixo da barra */
@media (max-width: 1179px) {
	.fb-js .fb-header__toggle {
		display: inline-flex;
	}

	.foibem-blog .fb-brand__logo {
		height: 2.8rem;
	}

	.fb-header__panel {
		flex-basis: 100%;
		padding-block: 0 var(--fb-space-5);
	}

	.fb-js .fb-header__panel {
		display: none;
	}

	.fb-js .is-menu-open .fb-header__panel {
		display: block;
	}

	.fb-nav__list {
		flex-direction: column;
	}

	.fb-nav__list a {
		padding: var(--fb-space-3) 0;
		border-bottom: 1px solid var(--fb-border);
		font-size: var(--fb-text-md);
	}

	.fb-nav__list .sub-menu a {
		padding-left: var(--fb-space-4);
	}

	.fb-header__cta-wrap {
		margin-top: var(--fb-space-4);
	}
}

@media (max-width: 359px) {
	.fb-brand__label {
		display: none;
	}
}

/* Desktop: marca | menu | busca | CTA */
@media (min-width: 1180px) {
	.fb-header__inner {
		flex-wrap: nowrap;
		gap: var(--fb-space-4);
	}

	.fb-brand {
		margin-right: 0;
	}

	.fb-header__panel {
		display: contents;
	}

	.fb-nav {
		order: 2;
		flex: 1;
		display: flex;
		justify-content: center;
	}

	.fb-header__search-toggle {
		order: 3;
	}

	.fb-header__cta-wrap {
		order: 4;
	}

	.fb-nav__list {
		gap: 0.4rem clamp(1.6rem, 2vw, 2.8rem);
	}

	.fb-nav__list > li > a {
		padding: 2.4rem 0;
	}

	.fb-nav__list .sub-menu {
		position: absolute;
		top: 100%;
		left: -1.6rem;
		z-index: 20;
		min-width: 22rem;
		padding: var(--fb-space-2) 0;
		border: 1px solid var(--fb-border);
		border-radius: var(--fb-radius);
		background: var(--fb-white);
		box-shadow: var(--fb-shadow-hover);
		opacity: 0;
		visibility: hidden;
		transform: translateY(4px);
		transition: opacity var(--fb-transition), transform var(--fb-transition), visibility var(--fb-transition);
	}

	.fb-nav__list li:hover > .sub-menu,
	.fb-nav__list li:focus-within > .sub-menu {
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	.fb-nav__list .sub-menu a {
		padding: var(--fb-space-2) var(--fb-space-4);
	}
}

/* 5. Home ----------------------------------------------------------------- */

.fb-home {
	background: var(--fb-white);
}

/* Introdução */
.fb-intro {
	padding-top: clamp(2.8rem, 1.6rem + 2.4vw, 4rem);
	padding-bottom: var(--fb-space-5);
	background: linear-gradient(180deg, #f3f9ff 0%, #f7fbff 100%);
}

.fb-intro .fb-eyebrow {
	margin-bottom: var(--fb-space-3);
}

.foibem-blog .fb-intro__title {
	margin: 0 0 var(--fb-space-3);
	font-size: var(--fb-title-xl);
	letter-spacing: -0.035em;
	line-height: 1.05;
}

.fb-intro__text {
	max-width: 62rem;
	margin: 0;
	color: var(--fb-muted);
	font-size: clamp(1.6rem, 1.4rem + 0.5vw, 2rem);
	line-height: 1.5;
}

/* Destaques */
.fb-featured {
	padding-bottom: var(--fb-space-5);
	background: #f7fbff;
}

.fb-intro + .fb-featured {
	padding-top: var(--fb-space-3);
}

.fb-featured__grid {
	display: grid;
	gap: var(--fb-space-4);
}

.fb-feature {
	position: relative;
	overflow: hidden;
	border-radius: var(--fb-radius);
	background: var(--fb-white);
	box-shadow: var(--fb-shadow);
	transition: box-shadow var(--fb-transition), transform var(--fb-transition);
}

.fb-feature:hover,
.fb-feature:focus-within {
	box-shadow: var(--fb-shadow-hover);
}

.fb-feature__media {
	position: relative;
	overflow: hidden;
	background: var(--fb-soft-2);
}

.fb-feature__media img,
.fb-card__media img,
.fb-story__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 400ms ease;
}

.fb-feature:hover .fb-feature__media img,
.fb-card:hover .fb-card__media img,
.fb-story:hover .fb-story__media img {
	transform: scale(1.03);
}

@media (prefers-reduced-motion: reduce) {
	.fb-feature__media img,
	.fb-card__media img,
	.fb-story__media img,
	.fb-link-arrow .fb-icon {
		transition: none;
	}

	.fb-feature:hover .fb-feature__media img,
	.fb-card:hover .fb-card__media img,
	.fb-story:hover .fb-story__media img {
		transform: none;
	}
}

/* Link que cobre o cartão inteiro, mantendo um único link por cartão */
.fb-card__link {
	color: inherit;
	text-decoration: none;
}

.fb-card__link::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.foibem-blog .fb-card__link:hover {
	color: inherit;
}

.fb-card__link:focus-visible {
	box-shadow: none;
}

.fb-card__link:focus-visible::after {
	border-radius: inherit;
	box-shadow: inset 0 0 0 3px var(--fb-blue);
}

.fb-feature,
.fb-card,
.fb-story {
	isolation: isolate;
}

/* Alternativa para posts sem imagem destacada */
.fb-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 100%;
	background:
		radial-gradient(circle at 80% 20%, rgba(0, 184, 170, 0.25), transparent 45%),
		radial-gradient(circle at 15% 85%, rgba(255, 211, 41, 0.3), transparent 40%),
		linear-gradient(135deg, #e6f1fd 0%, #d6e6ff 100%);
}

.fb-card__placeholder img {
	width: 25%;
	max-width: 8rem;
	height: auto !important;
	object-fit: contain !important;
	opacity: 0.9;
}

/* Principal */
.fb-feature--main .fb-feature__media {
	aspect-ratio: 4 / 3;
}

.fb-feature--main .fb-feature__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(8, 19, 47, 0) 30%, rgba(8, 19, 47, 0.55) 60%, var(--fb-overlay) 100%);
	pointer-events: none;
}

.fb-feature__overlay {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	padding: var(--fb-space-5);
	color: var(--fb-white);
	pointer-events: none;
}

.fb-feature__overlay .fb-card__link {
	pointer-events: auto;
}

.fb-feature__overlay .fb-kicker {
	color: var(--fb-white);
}

.fb-feature__overlay .fb-kicker::after {
	content: "";
	display: block;
	width: 3.2rem;
	height: 3px;
	margin-top: var(--fb-space-2);
	border-radius: 3px;
	background: var(--fb-teal);
}

.foibem-blog .fb-feature--main .fb-feature__title {
	max-width: 22ch;
	margin: var(--fb-space-3) 0 var(--fb-space-3);
	color: var(--fb-white);
	font-size: clamp(2.4rem, 1.4rem + 2.4vw, 3.8rem);
	letter-spacing: -0.025em;
	line-height: 1.1;
	text-wrap: balance;
}

.fb-feature--main .fb-card__meta {
	color: rgba(255, 255, 255, 0.92);
}

/* Laterais */
.fb-featured__side {
	display: grid;
	gap: var(--fb-space-4);
}

.fb-feature--side {
	display: grid;
	grid-template-columns: 1fr;
	border: 1px solid var(--fb-border);
}

.fb-feature--side .fb-feature__media {
	aspect-ratio: 16 / 10;
}

.fb-feature__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: var(--fb-space-2);
	padding: var(--fb-space-4) var(--fb-space-5) var(--fb-space-5);
}

.fb-feature--side .fb-kicker {
	color: var(--fb-blue);
}

.foibem-blog .fb-feature--side .fb-feature__title {
	margin: 0;
	font-size: clamp(1.9rem, 1.6rem + 0.5vw, 2.2rem);
	letter-spacing: -0.02em;
	line-height: 1.2;
	text-wrap: balance;
}

.fb-feature--side .fb-card__meta {
	margin-top: var(--fb-space-3);
}

/* Tablet: laterais lado a lado, com imagem no topo */
@media (min-width: 640px) and (max-width: 1179px) {
	.fb-featured--count-3 .fb-featured__side {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 640px) {
	.fb-feature--main .fb-feature__media {
		aspect-ratio: 16 / 10;
	}

	.fb-feature__overlay {
		padding: var(--fb-space-6);
	}
}

@media (min-width: 1180px) {
	.fb-featured__grid {
		grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
	}

	.fb-feature--side {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.fb-feature--side .fb-feature__media {
		aspect-ratio: auto;
		min-height: 18rem;
	}

	.fb-featured--count-1 .fb-featured__grid {
		grid-template-columns: 1fr;
	}

	.fb-featured--count-1 .fb-feature--main .fb-feature__media {
		aspect-ratio: 21 / 9;
	}

	.fb-feature--main .fb-feature__media {
		aspect-ratio: auto;
		height: 100%;
		min-height: 38rem;
	}

	.fb-featured__side {
		grid-template-rows: repeat(2, minmax(0, 1fr));
	}

	.fb-featured--count-2 .fb-featured__side {
		grid-template-rows: 1fr;
	}

	.fb-featured--count-2 .fb-feature--side {
		grid-template-columns: 1fr;
	}

	.fb-featured--count-2 .fb-feature--side .fb-feature__media {
		min-height: 22rem;
	}
}

/* Atalhos */
.fb-shortcuts {
	padding-block: var(--fb-space-4) var(--fb-space-2);
	background: linear-gradient(180deg, #f7fbff 0%, var(--fb-white) 100%);
}

.fb-shortcuts__box {
	display: flex;
	flex-direction: column;
	gap: var(--fb-space-4);
	padding: var(--fb-space-5);
	border-radius: var(--fb-radius-lg);
	background: var(--fb-soft-2);
}

.foibem-blog .fb-shortcuts__title {
	flex: none;
	margin: 0;
	font-size: clamp(1.8rem, 1.6rem + 0.4vw, 2rem);
	letter-spacing: -0.02em;
}

.fb-shortcuts__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
	gap: var(--fb-space-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.fb-shortcuts__list li {
	margin: 0;
}

.fb-shortcut {
	display: flex;
	align-items: center;
	gap: var(--fb-space-3);
	min-height: 5.2rem;
	padding: var(--fb-space-2) var(--fb-space-4);
	border-radius: var(--fb-radius);
	background: var(--fb-white);
	color: var(--fb-ink);
	font-size: var(--fb-text-sm);
	font-weight: 500;
	text-decoration: none;
	transition: background var(--fb-transition), color var(--fb-transition);
}

.foibem-blog .fb-shortcut:hover {
	color: var(--fb-blue);
}

.fb-shortcut__icon {
	width: 2.8rem;
	height: 2.8rem;
	color: var(--fb-blue);
}

.fb-shortcut__label {
	flex: 1;
}

.fb-shortcut__arrow {
	width: 1.6rem;
	height: 1.6rem;
	color: var(--fb-blue);
	transition: transform var(--fb-transition);
}

.fb-shortcut:hover .fb-shortcut__arrow {
	transform: translateX(3px);
}

@media (min-width: 1180px) {
	.fb-shortcuts__box {
		flex-direction: row;
		align-items: center;
		gap: var(--fb-space-5);
		padding: var(--fb-space-4) var(--fb-space-5);
	}

	.foibem-blog .fb-shortcuts__title {
		max-width: 26rem;
		padding-right: var(--fb-space-5);
	}

	.fb-shortcuts__list {
		flex: 1;
		display: flex;
		gap: 0;
	}

	.fb-shortcuts__list li {
		flex: 1;
		border-left: 1px solid #cfe0f5;
	}

	.fb-shortcut {
		justify-content: center;
		background: transparent;
	}

	.fb-shortcut__label {
		flex: none;
	}
}

/* Seções com título */
.fb-section {
	padding-block: var(--fb-section) 0;
}

.fb-section__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--fb-space-3) var(--fb-space-5);
	margin-bottom: var(--fb-space-5);
}

.foibem-blog .fb-section__title {
	margin: 0 0 var(--fb-space-1);
	font-size: var(--fb-title-lg);
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.fb-section__text {
	margin: 0;
	color: var(--fb-muted);
	font-size: var(--fb-text-lg);
}

.fb-grid {
	display: grid;
	gap: var(--fb-space-5);
}

@media (min-width: 640px) {
	.fb-grid--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.fb-grid--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Ferramentas */
.fb-tools {
	margin-top: var(--fb-section);
	padding-block: var(--fb-space-6);
	background: var(--fb-soft-2);
}

.fb-tools__inner {
	display: grid;
	gap: var(--fb-space-5);
	align-items: center;
}

.fb-tools__intro {
	display: flex;
	align-items: center;
	gap: var(--fb-space-4);
}

.fb-tools__badge {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 6rem;
	height: 6rem;
	border-radius: var(--fb-radius);
	background: var(--fb-blue);
	color: var(--fb-white);
}

.fb-tools__badge .fb-icon {
	width: 3rem;
	height: 3rem;
}

.foibem-blog .fb-tools__title {
	margin: 0 0 var(--fb-space-1);
	font-size: clamp(2.2rem, 1.8rem + 0.6vw, 2.6rem);
	letter-spacing: -0.03em;
}

.fb-tools__text {
	margin: 0;
	color: var(--fb-muted);
}

.fb-tools__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
	gap: var(--fb-space-3);
	margin: 0;
	padding: 0;
	list-style: none;
}

.fb-tools__list li {
	margin: 0;
}

.fb-tool {
	position: relative;
	display: grid;
	grid-template-columns: 1fr auto;
	align-content: space-between;
	gap: var(--fb-space-3);
	height: 100%;
	min-height: 9.6rem;
	box-sizing: border-box;
	padding: var(--fb-space-4) var(--fb-space-5);
	border: 1px solid var(--fb-border);
	border-radius: var(--fb-radius);
	background: var(--fb-white);
	color: var(--fb-ink);
	font-size: var(--fb-text-sm);
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
	transition: box-shadow var(--fb-transition), border-color var(--fb-transition);
}

.foibem-blog .fb-tool:hover {
	border-color: #cbdcf2;
	box-shadow: var(--fb-shadow);
	color: var(--fb-ink);
}

.fb-tool__icon {
	grid-column: 1 / -1;
	width: 2.8rem;
	height: 2.8rem;
	color: var(--fb-blue);
}

.fb-tool__arrow {
	align-self: end;
	width: 1.8rem;
	height: 1.8rem;
	color: var(--fb-blue);
}

@media (min-width: 1024px) {
	.fb-tools__inner {
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	}
}

/* Histórias + newsletter */
.fb-stories-row {
	padding-bottom: var(--fb-space-2);
}

.fb-tools + .fb-stories-row {
	padding-top: var(--fb-space-6);
}

.fb-stories-row__grid {
	display: grid;
	gap: var(--fb-space-6);
	align-items: stretch;
}

@media (min-width: 1024px) {
	.fb-stories-row--split .fb-stories-row__grid {
		grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	}
}

.foibem-blog .fb-stories__title {
	margin: 0 0 var(--fb-space-4);
	font-size: clamp(2rem, 1.6rem + 0.6vw, 2.4rem);
	letter-spacing: -0.02em;
}

.fb-story {
	position: relative;
	display: grid;
	gap: var(--fb-space-4);
}

.fb-story__media {
	overflow: hidden;
	aspect-ratio: 16 / 10;
	border-radius: var(--fb-radius);
	background: var(--fb-soft-2);
}

.fb-story__body {
	display: flex;
	flex-direction: column;
	gap: var(--fb-space-2);
}

.fb-story .fb-kicker {
	color: var(--fb-blue);
}

.foibem-blog .fb-story__heading {
	margin: 0;
	font-size: clamp(1.9rem, 1.6rem + 0.4vw, 2.1rem);
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.fb-story__excerpt {
	margin: 0;
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
	line-height: 1.55;
}

@media (min-width: 640px) {
	.fb-story {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		align-items: center;
	}

	.fb-stories-row:not(.fb-stories-row--split) .fb-story {
		grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
		gap: var(--fb-space-6);
	}

	.fb-story__media {
		aspect-ratio: 4 / 3;
	}
}

/* Newsletter */
.fb-newsletter {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	padding: var(--fb-space-6) var(--fb-space-5);
	border-radius: var(--fb-radius-lg);
	background:
		radial-gradient(circle at 105% -10%, rgba(255, 255, 255, 0.16) 0 22%, transparent 22.2%),
		radial-gradient(circle at 105% -10%, rgba(255, 255, 255, 0.08) 0 34%, transparent 34.2%),
		var(--fb-blue-deep);
	color: var(--fb-white);
}

.fb-newsletter__smile {
	position: absolute;
	top: var(--fb-space-5);
	right: var(--fb-space-4);
	width: clamp(5.6rem, 4rem + 4vw, 8.8rem);
	color: var(--fb-yellow);
}

.foibem-blog .fb-newsletter__title {
	max-width: 14ch;
	padding-right: 7.2rem;
	margin: 0 0 var(--fb-space-3);
	color: var(--fb-white);
	font-size: clamp(2.6rem, 1.8rem + 1.4vw, 3.2rem);
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.fb-newsletter__text {
	max-width: 42ch;
	margin: 0 0 var(--fb-space-5);
	color: rgba(255, 255, 255, 0.92);
	font-size: var(--fb-text-md);
}

.fb-newsletter__fields {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fb-space-2);
}

.foibem-blog .fb-newsletter__input {
	flex: 1 1 20rem;
	min-width: 0;
	min-height: 4.8rem;
	margin: 0;
	padding: 0 var(--fb-space-4);
	border: 1px solid transparent;
	border-radius: var(--fb-radius-sm);
	background: var(--fb-white);
	color: var(--fb-ink);
	font-family: var(--fb-font-body);
	font-size: var(--fb-text-md);
}

.fb-newsletter__input::placeholder {
	color: #66708a;
}

.fb-newsletter__input:focus {
	outline: none;
	box-shadow: 0 0 0 3px var(--fb-yellow);
}

.fb-newsletter .fb-button--yellow {
	flex: 0 0 auto;
	min-height: 4.8rem;
}

.fb-newsletter :focus-visible {
	box-shadow: 0 0 0 3px var(--fb-yellow);
}

.fb-newsletter__consent {
	display: flex;
	align-items: flex-start;
	gap: var(--fb-space-2);
	margin: var(--fb-space-3) 0 0;
	font-size: var(--fb-text-xs);
	line-height: 1.5;
}

.fb-newsletter__consent input {
	flex: none;
	width: 1.8rem;
	height: 1.8rem;
	margin: 0.1rem 0 0;
	accent-color: var(--fb-yellow);
}

.foibem-blog .fb-newsletter__consent a,
.foibem-blog .fb-newsletter__embed a {
	color: var(--fb-white);
	text-decoration: underline;
}

/* Formulários de plugins dentro do painel */
.fb-newsletter__embed input[type="email"],
.fb-newsletter__embed input[type="text"] {
	box-sizing: border-box;
	width: 100%;
	min-height: 4.8rem;
	padding: 0 var(--fb-space-4);
	border: 0;
	border-radius: var(--fb-radius-sm);
	color: var(--fb-ink);
	font-size: var(--fb-text-md);
}

.fb-newsletter__embed input[type="submit"],
.fb-newsletter__embed button {
	min-height: 4.8rem;
	padding: 0 var(--fb-space-5);
	border: 0;
	border-radius: var(--fb-radius-sm);
	background: var(--fb-yellow);
	color: var(--fb-ink);
	font-weight: 600;
	cursor: pointer;
}

.fb-newsletter__embed label,
.fb-newsletter__embed p {
	color: var(--fb-white);
}

/* 6. Cartões e listagens -------------------------------------------------- */

.fb-card {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--fb-border);
	border-radius: var(--fb-radius);
	background: var(--fb-white);
	box-shadow: var(--fb-shadow);
	transition: box-shadow var(--fb-transition);
}

.fb-card:hover,
.fb-card:focus-within {
	box-shadow: var(--fb-shadow-hover);
}

.fb-card__media {
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: var(--fb-soft-2);
}

.fb-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: var(--fb-space-2);
	padding: var(--fb-space-4) var(--fb-space-5) var(--fb-space-5);
}

.fb-card .fb-kicker {
	font-size: 1.05rem;
}

.foibem-blog .fb-card__title {
	margin: 0;
	font-size: var(--fb-title-sm);
	letter-spacing: -0.02em;
	line-height: 1.25;
	text-wrap: balance;
}

.fb-card__excerpt {
	margin: 0;
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
	line-height: 1.55;
}

.fb-card__meta {
	display: inline-flex;
	align-items: center;
	gap: var(--fb-space-3);
	margin-top: auto;
	padding-top: var(--fb-space-2);
	color: var(--fb-muted);
	font-size: var(--fb-text-xs);
}

.fb-card__arrow {
	width: 1.4rem;
	height: 1.4rem;
}

/* Listagens do ColorMag (arquivos, busca, página de posts) */
.foibem-blog.archive .cm-posts,
.foibem-blog.blog .cm-posts,
.foibem-blog.search .article-container {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 30rem), 1fr));
	gap: var(--fb-space-5);
	margin: 0;
}

.foibem-blog.archive .cm-posts::before,
.foibem-blog.archive .cm-posts::after,
.foibem-blog.blog .cm-posts::before,
.foibem-blog.blog .cm-posts::after {
	content: none;
}

.foibem-blog.search .cm-posts {
	display: block;
}

.foibem-blog .cm-posts > .fb-card,
.foibem-blog .article-container > .fb-card {
	width: auto;
	margin: 0;
	padding: 0;
}

/* O ColorMag estende o primeiro post por toda a linha nesse layout. */
.foibem-blog .cm-posts.cm-layout-2-style-1 > .fb-card:first-child {
	grid-column: auto;
}

.fb-archive-header,
.foibem-blog .cm-page-header {
	margin: 0 0 var(--fb-space-6);
	padding: 0 0 var(--fb-space-5);
	border-bottom: 1px solid var(--fb-border);
}

.foibem-blog .cm-page-header .cm-page-title,
.foibem-blog .fb-archive-header__title {
	margin: var(--fb-space-2) 0 0;
	padding: 0;
	border: 0;
	color: var(--fb-ink);
	font-size: var(--fb-title-lg);
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.foibem-blog .cm-page-header .cm-page-title span {
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
}

.fb-archive-header__text {
	max-width: 70ch;
	margin-top: var(--fb-space-3);
	color: var(--fb-muted);
	font-size: var(--fb-text-lg);
}

.fb-archive-header__text p:last-child {
	margin-bottom: 0;
}

/* Sem resultados */
.foibem-blog .no-results .cm-page-title,
.foibem-blog .no-results h1 {
	font-size: var(--fb-title-md);
}

.foibem-blog .no-results .search-form {
	margin-top: var(--fb-space-4);
}

/* 7. Matéria, páginas e conteúdo do editor -------------------------------- */

.fb-single {
	max-width: var(--fb-reading);
	margin-inline: auto;
}

/* O ColorMag aplica sombra e overflow: hidden em .cm-posts .post. */
.foibem-blog .cm-posts .fb-single {
	overflow: visible;
	border-radius: 0;
	box-shadow: none;
}

.fb-single__header {
	margin-bottom: var(--fb-space-5);
}

.fb-single__cats {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fb-space-2) var(--fb-space-4);
	margin: 0 0 var(--fb-space-3);
}

.foibem-blog .fb-single__title {
	margin: 0 0 var(--fb-space-4);
	font-size: var(--fb-title-lg);
	letter-spacing: -0.03em;
	line-height: 1.1;
	text-wrap: balance;
}

.fb-single__lead {
	margin: 0 0 var(--fb-space-4);
	color: var(--fb-muted);
	font-size: clamp(1.8rem, 1.6rem + 0.4vw, 2rem);
	line-height: 1.5;
}

.fb-single__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--fb-space-2);
	margin: 0;
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
}

.fb-single__meta a {
	color: var(--fb-ink);
	font-weight: 600;
	text-decoration: none;
}

.fb-single__reading {
	display: inline-flex;
	align-items: center;
	gap: var(--fb-space-1);
}

.fb-single__reading .fb-icon {
	width: 1.6rem;
	height: 1.6rem;
}

.fb-single__media {
	margin: 0 0 var(--fb-space-6);
}

@media (min-width: 1100px) {
	.fb-single__media {
		margin-inline: calc((var(--fb-reading) - 104rem) / 2);
	}
}

.fb-single__media img {
	display: block;
	width: 100%;
	border-radius: var(--fb-radius-lg);
}

.fb-single__media figcaption {
	margin-top: var(--fb-space-2);
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
	text-align: center;
}

/* Conteúdo do editor (matérias e páginas) */
.fb-single__content,
.foibem-blog .cm-entry-summary {
	color: var(--fb-ink);
	font-size: var(--fb-text-lg);
	line-height: 1.75;
}

.fb-single__content > * + *,
.foibem-blog .cm-entry-summary > * + * {
	margin-top: 1.4em;
}

.fb-single__content p,
.foibem-blog .cm-entry-summary p {
	margin-bottom: 0;
}

.fb-single__content h2,
.foibem-blog .cm-entry-summary h2 {
	margin-top: 1.8em;
	font-size: clamp(2.4rem, 2rem + 0.8vw, 2.8rem);
}

.fb-single__content h3,
.foibem-blog .cm-entry-summary h3 {
	margin-top: 1.6em;
	font-size: clamp(2rem, 1.8rem + 0.4vw, 2.2rem);
}

.fb-single__content h4,
.foibem-blog .cm-entry-summary h4 {
	font-size: 1.9rem;
}

.fb-single__content a,
.foibem-blog .cm-entry-summary a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}

.fb-single__content ul,
.fb-single__content ol,
.foibem-blog .cm-entry-summary ul,
.foibem-blog .cm-entry-summary ol {
	padding-left: 1.4em;
}

.fb-single__content li + li,
.foibem-blog .cm-entry-summary li + li {
	margin-top: 0.4em;
}

.fb-single__content blockquote,
.foibem-blog .cm-entry-summary blockquote {
	margin-inline: 0;
	padding: var(--fb-space-2) 0 var(--fb-space-2) var(--fb-space-5);
	border-left: 4px solid var(--fb-teal);
	border-radius: 0;
	background: none;
	color: var(--fb-ink);
	font-size: 1.1em;
	font-style: normal;
}

.fb-single__content blockquote p,
.foibem-blog .cm-entry-summary blockquote p {
	font-family: var(--fb-font-head);
	font-weight: 600;
	line-height: 1.5;
}

.fb-single__content blockquote p::before,
.foibem-blog .cm-entry-summary blockquote p::before {
	content: none;
}

.fb-single__content blockquote cite,
.foibem-blog .cm-entry-summary blockquote cite {
	display: block;
	margin-top: var(--fb-space-2);
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
	font-style: normal;
}

.fb-single__content .wp-block-pullquote {
	border-top: 4px solid var(--fb-blue);
	border-bottom: 4px solid var(--fb-blue);
}

.fb-single__content figure,
.foibem-blog .cm-entry-summary figure {
	margin-inline: 0;
}

.fb-single__content img,
.foibem-blog .cm-entry-summary img {
	border-radius: var(--fb-radius-sm);
}

.fb-single__content figcaption,
.foibem-blog .cm-entry-summary figcaption {
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
	text-align: center;
}

.fb-single__content table,
.foibem-blog .cm-entry-summary table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--fb-text-md);
}

.fb-single__content .wp-block-table,
.foibem-blog .cm-entry-summary .wp-block-table {
	overflow-x: auto;
}

.fb-single__content th,
.fb-single__content td,
.foibem-blog .cm-entry-summary th,
.foibem-blog .cm-entry-summary td {
	padding: var(--fb-space-2) var(--fb-space-3);
	border: 1px solid var(--fb-border);
	text-align: left;
}

.fb-single__content th,
.foibem-blog .cm-entry-summary th {
	background: var(--fb-soft);
	font-weight: 600;
	text-transform: none;
}

.fb-single__content pre,
.fb-single__content code {
	border-radius: var(--fb-radius-sm);
	background: var(--fb-soft);
	font-size: 0.9em;
}

.fb-single__content pre {
	overflow-x: auto;
	padding: var(--fb-space-4);
}

.fb-single__content iframe,
.fb-single__content video,
.fb-single__content embed {
	max-width: 100%;
}

.fb-single__content .wp-block-embed__wrapper iframe {
	width: 100%;
}

.fb-single__content .wp-block-button__link,
.foibem-blog .cm-entry-summary .wp-block-button__link {
	border-radius: var(--fb-radius-pill);
	text-decoration: none;
}

.fb-single__content hr,
.foibem-blog .cm-entry-summary hr {
	border: 0;
	border-top: 1px solid var(--fb-border);
}

.fb-single__content .alignleft {
	float: left;
	margin: 0.4em 1.6em 1em 0;
}

.fb-single__content .alignright {
	float: right;
	margin: 0.4em 0 1em 1.6em;
}

.fb-single__content .aligncenter {
	margin-inline: auto;
}

@media (min-width: 1100px) {
	.fb-single__content .alignwide {
		margin-inline: calc((var(--fb-reading) - 104rem) / 2);
	}
}

.fb-single__content .alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-inline: calc(50% - 50vw);
}

.fb-page-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fb-space-2);
	align-items: center;
	font-size: var(--fb-text-md);
}

.fb-page-links a,
.fb-page-links > span:not(:first-child) {
	display: inline-flex;
	min-width: 3.6rem;
	min-height: 3.6rem;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--fb-border);
	border-radius: var(--fb-radius-sm);
	text-decoration: none;
}

.fb-single__footer {
	margin-top: var(--fb-space-6);
	padding-top: var(--fb-space-5);
	border-top: 1px solid var(--fb-border);
}

.fb-single__tags {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fb-space-2);
	margin: 0;
}

.fb-single__tags a {
	padding: var(--fb-space-1) var(--fb-space-3);
	border-radius: var(--fb-radius-pill);
	background: var(--fb-soft);
	color: var(--fb-ink);
	font-size: var(--fb-text-sm);
	text-decoration: none;
}

.foibem-blog .fb-single__tags a:hover {
	background: var(--fb-soft-2);
	color: var(--fb-blue);
}

.fb-edit-link {
	margin-top: var(--fb-space-4);
	font-size: var(--fb-text-sm);
}

/* Navegação, autor e relacionados do ColorMag dentro da coluna de leitura */
.foibem-blog.single .cm-posts ~ *,
.foibem-blog.single #comments {
	max-width: var(--fb-reading);
	margin-inline: auto;
}

.foibem-blog.single .cm-primary > ul.default-wp-page,
.foibem-blog.single .cm-primary > .post-navigation,
.foibem-blog.single .cm-primary > nav {
	max-width: var(--fb-reading);
	margin-inline: auto;
}

.foibem-blog .default-wp-page,
.foibem-blog .post-navigation .nav-links {
	display: flex;
	justify-content: space-between;
	gap: var(--fb-space-4);
	margin: var(--fb-space-6) auto 0;
	padding: var(--fb-space-5) 0 0;
	border-top: 1px solid var(--fb-border);
	list-style: none;
}

.foibem-blog .default-wp-page li {
	max-width: 48%;
	margin: 0;
}

.foibem-blog .default-wp-page a,
.foibem-blog .post-navigation a {
	color: var(--fb-ink);
	font-family: var(--fb-font-head);
	font-weight: 600;
	text-decoration: none;
}

.foibem-blog .default-wp-page a:hover,
.foibem-blog .post-navigation a:hover {
	color: var(--fb-blue);
}

.foibem-blog .default-wp-page .next {
	margin-left: auto;
	text-align: right;
}

.foibem-blog .cm-author-box,
.foibem-blog .author-box {
	margin-top: var(--fb-space-6);
	padding: var(--fb-space-5);
	border: 1px solid var(--fb-border);
	border-radius: var(--fb-radius);
	background: var(--fb-soft);
}

.foibem-blog .related-posts-wrapper,
.foibem-blog .cm-related-posts {
	margin-top: var(--fb-space-6);
}

/* Páginas institucionais */
.foibem-blog.page:not(.fb-home) .cm-primary article {
	max-width: var(--fb-reading);
	margin-inline: auto;
}

.foibem-blog.page .cm-entry-title {
	margin: 0 0 var(--fb-space-5);
	font-size: var(--fb-title-lg);
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.foibem-blog.page .cm-featured-image img {
	border-radius: var(--fb-radius-lg);
}

/* Páginas montadas com o Elementor usam a largura total do conteúdo. */
.foibem-blog.elementor-page:not(.fb-home) .cm-primary article {
	max-width: none;
}

/* 8. Comentários ---------------------------------------------------------- */

.foibem-blog .comments-area {
	margin-top: var(--fb-space-7);
	padding-top: var(--fb-space-6);
	border-top: 1px solid var(--fb-border);
}

.foibem-blog .comments-title,
.foibem-blog .comment-reply-title {
	margin: 0 0 var(--fb-space-5);
	font-size: var(--fb-title-md);
	letter-spacing: -0.02em;
}

.foibem-blog .comment-list,
.foibem-blog .comment-list .children {
	margin: 0;
	padding: 0;
	list-style: none;
}

.foibem-blog .comment-list .children {
	margin-left: var(--fb-space-5);
	padding-left: var(--fb-space-4);
	border-left: 2px solid var(--fb-border);
}

.foibem-blog .comment-list .comment-body,
.foibem-blog .comment-list article {
	margin-bottom: var(--fb-space-4);
	padding: var(--fb-space-4) var(--fb-space-5);
	border: 1px solid var(--fb-border);
	border-radius: var(--fb-radius);
	background: var(--fb-white);
}

.foibem-blog .comment-list .avatar {
	border-radius: 50%;
}

.foibem-blog .comment-meta,
.foibem-blog .comment-metadata {
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
}

.foibem-blog .comment-author .fn,
.foibem-blog .comment-author cite {
	color: var(--fb-ink);
	font-style: normal;
	font-weight: 600;
}

.foibem-blog .comment-content {
	font-size: var(--fb-text-md);
}

.foibem-blog .comment-awaiting-moderation {
	display: inline-block;
	padding: var(--fb-space-1) var(--fb-space-3);
	border-radius: var(--fb-radius-pill);
	background: #fff6cf;
	color: var(--fb-ink);
	font-size: var(--fb-text-sm);
}

.foibem-blog .reply a,
.foibem-blog .comment-reply-link {
	font-size: var(--fb-text-sm);
	font-weight: 600;
	text-decoration: none;
}

.foibem-blog .comment-respond {
	margin-top: var(--fb-space-6);
	padding: var(--fb-space-5);
	border-radius: var(--fb-radius-lg);
	background: var(--fb-soft);
}

.foibem-blog .comment-form label {
	display: block;
	margin-bottom: var(--fb-space-1);
	color: var(--fb-ink);
	font-size: var(--fb-text-sm);
	font-weight: 600;
}

.foibem-blog .comment-form input[type="text"],
.foibem-blog .comment-form input[type="email"],
.foibem-blog .comment-form input[type="url"],
.foibem-blog .comment-form textarea {
	box-sizing: border-box;
	width: 100%;
	padding: var(--fb-space-3) var(--fb-space-4);
	border: 1px solid #cfdcec;
	border-radius: var(--fb-radius-sm);
	background: var(--fb-white);
	color: var(--fb-ink);
	font-family: var(--fb-font-body);
	font-size: var(--fb-text-md);
}

.foibem-blog .comment-form input:focus,
.foibem-blog .comment-form textarea:focus {
	border-color: var(--fb-blue);
	outline: none;
	box-shadow: 0 0 0 3px rgba(40, 100, 246, 0.2);
}

.foibem-blog .comment-form-cookies-consent {
	display: flex;
	gap: var(--fb-space-2);
	align-items: flex-start;
}

.foibem-blog .comment-form-cookies-consent label {
	font-weight: 400;
}

.foibem-blog .comment-form .submit,
.foibem-blog .comment-form input[type="submit"] {
	min-height: 4.4rem;
	padding: 0 var(--fb-space-5);
	border: 0;
	border-radius: var(--fb-radius-pill);
	background: var(--fb-blue);
	color: var(--fb-white);
	font-family: var(--fb-font-body);
	font-size: var(--fb-text-sm);
	font-weight: 600;
	cursor: pointer;
}

.foibem-blog .comment-form .submit:hover {
	background: var(--fb-blue-dark);
}

.foibem-blog .no-comments {
	color: var(--fb-muted);
}

/* 9. 404 e paginação ------------------------------------------------------ */

.fb-404 {
	max-width: 64rem;
	margin: var(--fb-space-6) auto;
	text-align: center;
}

.foibem-blog .fb-404__title {
	margin: var(--fb-space-3) 0;
	font-size: var(--fb-title-lg);
	letter-spacing: -0.03em;
}

.fb-404__text {
	margin: 0 0 var(--fb-space-5);
	color: var(--fb-muted);
	font-size: var(--fb-text-lg);
}

.fb-404 .fb-search-form {
	margin: 0 auto var(--fb-space-5);
}

.foibem-blog .pagination,
.foibem-blog .navigation.pagination,
.foibem-blog .default-wp-page {
	margin-top: var(--fb-space-6);
}

.foibem-blog .pagination .nav-links,
.foibem-blog .page-numbers:not(.dots) {
	font-size: var(--fb-text-md);
}

.foibem-blog .pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fb-space-2);
	justify-content: center;
}

.foibem-blog .page-numbers {
	display: inline-flex;
	min-width: 4.4rem;
	min-height: 4.4rem;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 0 var(--fb-space-3);
	border: 1px solid var(--fb-border);
	border-radius: var(--fb-radius-sm);
	background: var(--fb-white);
	color: var(--fb-ink);
	text-decoration: none;
}

.foibem-blog .page-numbers.current,
.foibem-blog a.page-numbers:hover {
	border-color: var(--fb-blue);
	background: var(--fb-blue);
	color: var(--fb-white);
}

.foibem-blog .page-numbers.dots {
	border: 0;
	background: none;
}

/* Botão "voltar ao topo" do ColorMag */
.foibem-blog #scroll-up {
	border-radius: var(--fb-radius-pill);
	background: var(--fb-blue);
}

/* 10. Rodapé -------------------------------------------------------------- */

.fb-footer {
	margin-top: var(--fb-section);
	padding-block: var(--fb-space-5);
	border-top: 1px solid var(--fb-border);
	background: var(--fb-white);
}

body.fb-home .fb-footer {
	margin-top: var(--fb-space-6);
}

.fb-footer__inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--fb-space-4);
}

.fb-footer .fb-brand__logo {
	height: 2.6rem;
}

.fb-footer__list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fb-space-2) var(--fb-space-5);
	margin: 0;
	padding: 0;
	list-style: none;
}

.fb-footer__list li {
	margin: 0;
}

.fb-footer__list a {
	display: inline-block;
	padding-block: var(--fb-space-1);
	color: var(--fb-muted);
	font-size: var(--fb-text-sm);
	text-decoration: none;
}

.foibem-blog .fb-footer__list a:hover {
	color: var(--fb-blue);
}

.fb-footer__copy {
	margin: 0;
	color: var(--fb-muted);
	font-size: var(--fb-text-xs);
}

@media (min-width: 1024px) {
	.fb-footer__inner {
		display: grid;
		grid-template-columns: auto 1fr auto;
		align-items: center;
		gap: var(--fb-space-6);
	}

	.fb-footer__nav {
		justify-self: center;
	}
}

/* Texto apenas para leitores de tela (redefinido para não depender do pai) */
.foibem-blog .screen-reader-text:not(:focus) {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
