/**
 * Avenue Connection — ponte entre os blocos nativos convertidos e o visual legado.
 *
 * Os blocos Carbon convertidos em blocos core (texto com CTA, sumário
 * executivo, imagem do post, vídeo, acordeão, big number) recebem aqui o mesmo
 * visual que tinham no tema legado (assets/legacy/styles/blocks-v3.css).
 * Valores copiados do CSS legado; ao redesenhar, trocar pelos tokens do theme.json.
 */

/* ==========================================================================
   Corpo do post
   Layout do tema pai: post-content "constrained" (texto 600px, wide 1200px,
   recuo lateral --avenue-gutter). Tipografia igual à do legado, com tokens do pai.
   ========================================================================== */

/* Recuo lateral: 24px até 768px, como o legado. Acima disso vale o do pai. */
@media (max-width: 768px) {
	:root { --avenue-gutter: 24px; }
}

.connection-portal .wp-site-blocks > * { margin-block-start: 0; }

.connection-portal .wp-block-post-content :where(p, li):not(section *),
.is-style-connection-conteudo :where(p, li) {
	font-size: var(--wp--preset--font-size--subtitle) !important;
	line-height: 24px;
	font-weight: 400;
	color: var(--wp--preset--color--secondary);
	-webkit-font-smoothing: antialiased;
}
.connection-portal .wp-block-post-content :where(p):not(section *):not(:empty),
.is-style-connection-conteudo :where(p):not(:empty) { padding: 8px 0; margin: 0; }
.connection-portal .wp-block-post-content :where(p:empty) { margin: 0; }
.connection-portal .wp-block-post-content :where(li):not(section *),
.is-style-connection-conteudo :where(li) { padding: 8px 0 !important; }
.connection-portal .wp-block-post-content :where(ul):not(section *) { list-style: initial; padding-left: 16px; }
.connection-portal .wp-block-post-content :where(ul ul) { list-style: revert; }
.connection-portal .wp-block-post-content :where(a) { color: var(--wp--preset--color--primary); }
.connection-portal .wp-block-post-content :where(em) { font-style: italic; }
.connection-portal .wp-block-post-content :where(.wp-block-heading) {
	font-weight: 500;
	color: var(--wp--preset--color--primary);
	padding: 8px 0;
	margin: 0;
}
.connection-portal .wp-block-post-content :where(h1.wp-block-heading) { font-size: 32px; line-height: 40px; }
.connection-portal .wp-block-post-content :where(h2.wp-block-heading) { font-size: 30px; line-height: 38px; }
.connection-portal .wp-block-post-content :where(h3.wp-block-heading) { font-size: 24px; line-height: 32px; }
.connection-portal .wp-block-post-content :where(h4.wp-block-heading) { font-size: 20px; line-height: 28px; }
.connection-portal .wp-block-post-content :where(.has-medium-font-size, .has-large-font-size, .has-x-large-font-size) { line-height: 120% !important; }

/* Grupo "Conteúdo Connection (980px)" (antigo "Container Personalizado"):
   grupo wide de 1200px; texto limitado a 980px, alinhado à esquerda. */
.is-style-connection-conteudo { padding-top: 32px; padding-bottom: 32px; }
.is-style-connection-conteudo :where(p, li, .wp-block-heading) { max-width: 980px; }
.is-style-connection-conteudo > * { margin-block-start: 0; margin-block-end: 0; }
@media (max-width: 768px) {
	.is-style-connection-conteudo { padding-top: 24px; padding-bottom: 24px; }
}

/* Texto com CTA (antigo .text-cta): grupo externo wide + caixa de 640px. */
.connection-text-cta-wrap { padding: 0; }
.connection-text-cta {
	border: 1px solid #CBD4D8;
	border-radius: 4px;
	max-width: 640px;
	padding: 16px 32px;
	margin: 32px 0 !important;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
}
.is-style-connection-conteudo .connection-text-cta p,
.connection-text-cta p { font-size: 16px !important; line-height: 20px; font-weight: 400; color: #45565C; padding: 0; margin: 0; }
.connection-text-cta .wp-block-buttons { margin: 0; flex-shrink: 0; }
.connection-text-cta .wp-block-button__link {
	display: flex;
	align-items: center;
	gap: 8px;
	background-color: #47E57F;
	color: #002820;
	border-radius: 32px;
	font-size: 16px;
	line-height: 20px;
	font-weight: 500;
	padding: 16px 32px;
	text-decoration: none;
	white-space: nowrap;
	transition: 0.3s;
}
.connection-text-cta .wp-block-button__link:hover { background-color: #228B5F; }

/* Sumário executivo (antigo .block-summary-executive). */
.connection-summary-executive { padding: 64px 0; max-width: 980px; }
.connection-summary-executive > h2 { font-weight: 500; font-size: 24px !important; line-height: 32px; padding-bottom: 20px; color: #002820; }
.connection-summary-executive > h3 { font-weight: 500; font-size: 24px !important; line-height: 32px; color: #002820; max-width: 568px; box-shadow: 0 4px 4px 0 #0000000A; padding: 32px 32px 0; }
.connection-summary-executive > h4 { font-weight: 500; font-size: 20px !important; line-height: 24px; padding: 0 32px; }
.connection-summary-executive p { font-weight: 400; font-size: 16px !important; line-height: 20px; color: #45565C; }
.connection-summary-executive .wp-block-social-links { display: flex; gap: 32px; padding: 0 32px 32px; }

/* Imagem do post (antigo .block-image). */
.wp-block-post-content .wp-block-image { padding: 32px 0; margin: 0; }
.wp-block-post-content .wp-block-image img { border-radius: 4px; height: auto; max-width: 100%; object-fit: cover; }

/* Vídeo (antigo .block__video-full): embed responsivo. */
.wp-block-post-content .wp-block-embed-youtube { padding: 32px 0; margin: 0; max-width: 1200px; }

/* Acordeão (antigo .block-accordion). */
.connection-accordion { padding: 64px 32px; background-color: #002218; color: #fff; }
.connection-accordion > h2 { font-weight: 500; font-size: 32px !important; line-height: 40px; color: #fff; }
.connection-accordion > p { color: #fff !important; font-size: 16px !important; }
.connection-accordion .wp-block-details { border-top: 1px solid #45565C; padding: 40px 0; }
.connection-accordion .wp-block-details:last-child { border-bottom: 1px solid #45565C; }
.connection-accordion .wp-block-details summary { font-weight: 500; font-size: 32px; line-height: 40px; cursor: pointer; }
.connection-accordion .wp-block-details p,
.connection-accordion .wp-block-details li { color: #fff !important; }

/* Big number (antigo .big-number). */
.connection-big-number { padding: 64px 0; }
.connection-big-number > h2 { font-size: 24px !important; line-height: 32px; font-weight: 500; margin-bottom: 20px; }
.connection-big-number > p { font-size: 16px !important; color: #45565C; max-width: 640px; margin-bottom: 80px; }
.connection-big-number .wp-block-column h3 { font-size: 92px !important; font-weight: 400; line-height: 100%; color: #002820; }

/* Listagens (Query Loop com connection/card-post). */
.connection-portal .wp-block-post-template.avenue-grid { list-style: none; padding: 0; margin: 0; }
.connection-portal .wp-block-post-template.avenue-grid > li { margin: 0; display: contents; } /* os cartões .item-post viram os itens do grid legado */
.connection-portal .wp-block-post-template.avenue-grid .item-post { display: flex; flex-direction: column; gap: 16px; max-width: 270px; }
.connection-portal .page-template--weekly .wp-block-post-template.avenue-grid .item-post,
.connection-portal .author .wp-block-post-template.avenue-grid .item-post { max-width: unset; flex: 0 0 calc((100% - 80px) / 3); }
.connection-portal .wp-block-query-pagination { justify-content: center; margin: 40px 0 80px; gap: 8px; }

@media (max-width: 768px) {
	.connection-portal .wp-block-post-template.avenue-grid .item-post { max-width: 100%; }
	.connection-text-cta { flex-direction: column; padding: 24px 32px; margin: 16px 0 !important; }
	/* Dentro de um container o legado somava o recuo do container (24px) ao da seção. */
	.is-style-connection-conteudo .connection-text-cta { margin: 16px 24px !important; }
	.connection-text-cta .wp-block-buttons,
	.connection-text-cta .wp-block-button,
	.connection-text-cta .wp-block-button__link { width: 100%; justify-content: center; }
	.connection-text-cta .wp-block-button__link { font-size: 14px; line-height: 18px; }
	.wp-block-post-content .wp-block-image { padding: 32px 24px; }
	.connection-summary-executive,
	.connection-big-number { padding: 32px 24px; }
}

/* Cabeçalho de listagem e grid ficavam no mesmo .page-template no legado. */
.connection-portal .connection-archive-heading.page-template { padding-bottom: 0; }
