/*
Theme Name: Apis Coworking
Theme URI: https://www.apiscoworking.com.br/
Author: Apis Coworking
Description: Tema de blocos da Apis Coworking. Substitui o Salient/WPBakery, usa o editor nativo do WordPress e funciona em PHP 8.3.
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
Version: 1.4.5
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: apis
*/

/* Ajustes que o theme.json não cobre. */

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--wp--preset--color--mel);
	outline-offset: 2px;
}

/* Recorte hexagonal (estilo "Hexágono" no bloco Imagem e Capa). */
.is-style-hexagono img,
.wp-block-cover.is-style-hexagono {
	clip-path: polygon(25% 3%, 75% 3%, 100% 50%, 75% 97%, 25% 97%, 0% 50%);
	aspect-ratio: 1.155 / 1;
	object-fit: cover;
}

/* Cabeçalho fixo: sempre visível ao rolar a página.
   A fixação fica no <header> do WordPress, que envolve o cabeçalho;
   no grupo interno ela não funcionaria, porque o pai tem a mesma altura. */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 100;
}
.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) {
	.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 46px; }
}
@media (max-width: 600px) {
	/* No celular a barra do admin rola junto com a página. */
	.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 0; }
}
.apis-header {
	background: rgba(255, 255, 255, 0.965);
	border-bottom: 1px solid var(--wp--preset--color--linha);
}
/* Menu do cabeçalho no estilo do site original (Salient, estado com barra branca),
   medido no site em produção: Lato 400, 17px, maiúsculas, cinza #676767,
   28px entre itens; amarelo-mel + sublinhado animado ao passar o mouse e na página atual. */
.apis-header .wp-block-navigation {
	font-family: var(--wp--preset--font-family--lato);
	font-size: 17px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: normal;
	color: #676767;
}
.apis-header .wp-block-navigation .wp-block-navigation__container { gap: 28px; }
.apis-header .wp-block-navigation a,
.apis-header .wp-block-navigation__responsive-container-open,
.apis-header .wp-block-navigation__responsive-container-close {
	color: #676767;
	text-decoration: none;
}
.apis-header .wp-block-navigation .wp-block-navigation-item__content {
	position: relative;
	padding: 6px 0;
	transition: color 0.2s ease;
}
.apis-header .wp-block-navigation .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: var(--wp--preset--color--mel);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s ease;
}
.apis-header .wp-block-navigation a:hover,
.apis-header .wp-block-navigation a:focus-visible,
.apis-header .wp-block-navigation a[aria-current="page"] {
	color: var(--wp--preset--color--mel);
	text-decoration: none;
}
.apis-header .wp-block-navigation a:hover::after,
.apis-header .wp-block-navigation a:focus-visible::after,
.apis-header .wp-block-navigation a[aria-current="page"]::after { transform: scaleX(1); }
/* Menu aberto no celular: mesma fonte, maior para o toque, sem sublinhado. */
.apis-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 18px; }
.apis-header .wp-block-navigation__responsive-container.is-menu-open { font-size: 20px; }
.apis-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::after { display: none; }

/* Telas médias (tablet, celular deitado): menu em uma linha só, mais compacto. */
@media (min-width: 600px) and (max-width: 1100px) {
	header .apis-header .wp-block-navigation .wp-block-navigation__container { gap: 16px; flex-wrap: nowrap; }
	header .apis-header .wp-block-navigation .wp-block-navigation-item__content { font-size: 14px; white-space: nowrap; }
	header .apis-header .apis-header-social { gap: 10px; flex-wrap: nowrap; }
	header .apis-header .wp-block-site-logo img { width: 120px !important; height: auto; }
}
/* Telas baixas (celular deitado): cabeçalho mais fino para sobrar espaço ao conteúdo. */
@media (orientation: landscape) and (max-height: 520px) {
	header .apis-header { padding-top: 0.4rem !important; padding-bottom: 0.4rem !important; }
	header .apis-header .wp-block-site-logo img { width: 100px !important; }
}

/* Âncoras (#secao) não ficam escondidas atrás do cabeçalho. */
html { scroll-padding-top: 110px; }

/* Ícones das redes sociais no cabeçalho (no lugar do botão), cinza como no original,
   amarelo-mel ao passar o mouse. */
.apis-header .apis-header-social { gap: 14px; }
.apis-header .apis-header-social .wp-social-link { color: #888888 !important; transition: color 0.2s ease; }
.apis-header .apis-header-social .wp-social-link:hover,
.apis-header .apis-header-social .wp-social-link:focus-within { color: var(--wp--preset--color--mel) !important; }
.apis-header .apis-header-social .wp-social-link svg { width: 20px; height: 20px; }


/* Faixa de depoimentos: rolagem horizontal no celular. */
@media (max-width: 781px) {
	.apis-depoimentos.wp-block-columns {
		flex-wrap: nowrap !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		padding-bottom: 0.5rem;
	}
	.apis-depoimentos > .wp-block-column {
		flex: 0 0 86% !important;
		scroll-snap-align: start;
	}
	.apis-depoimentos .wp-block-quote {
		margin: 0;
		padding-right: 0;
	}
}

/* Ícones das comodidades (página Espaços). */
.apis-icone { margin-bottom: 0; }
.apis-icone img { width: 48px; height: 48px; }

/* Nada passa da largura da tela (evita rolagem lateral no celular). */
html, body { overflow-x: clip; }
.wpcf7, .wpcf7 form { max-width: 100%; }

/* Formulários (Contact Form 7, Mailchimp, RD Station) herdando o visual do tema. */
.wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.wpcf7 textarea,
.yikes-easy-mc-form input[type="text"],
.yikes-easy-mc-form input[type="email"],
.wpcf7 select {
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
	padding: 0.75rem 1rem;
	border: 1px solid var(--wp--preset--color--linha);
	border-radius: 6px;
	background: var(--wp--preset--color--branco);
	font: inherit;
	color: var(--wp--preset--color--grafite);
}
.wpcf7 input[type="submit"],
.yikes-easy-mc-form button[type="submit"] {
	background: var(--wp--preset--color--mel);
	color: var(--wp--preset--color--grafite);
	border: 0;
	border-radius: 6px;
	padding: 0.8rem 1.6rem;
	font-weight: 700;
	cursor: pointer;
}
.wpcf7 input[type="submit"]:hover,
.yikes-easy-mc-form button[type="submit"]:hover {
	background: var(--wp--preset--color--mel-escuro);
}

/* ---------- Carrossel (estilos "Carrossel" e "Carrossel 3 por vez") ---------- */

.apis-carrossel { position: relative; }

.wp-block-columns.is-style-carrossel,
.wp-block-columns.is-style-carrossel-3,
.wp-block-gallery.is-style-carrossel {
	flex-wrap: nowrap !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.is-style-carrossel::-webkit-scrollbar,
.is-style-carrossel-3::-webkit-scrollbar { display: none; }

/* 1 por vez */
.wp-block-columns.is-style-carrossel { gap: 0 !important; }
.wp-block-columns.is-style-carrossel > .wp-block-column,
.wp-block-gallery.is-style-carrossel > .wp-block-image {
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100%;
	margin: 0 !important;
	scroll-snap-align: start;
}
.wp-block-columns.is-style-carrossel > .wp-block-column > .wp-block-cover {
	min-height: clamp(420px, 70vh, 640px) !important;
}
/* Celular: o carrossel de capas (slides do topo) segue o formato paisagem das fotos,
   em vez de uma faixa alta que corta as laterais. */
@media (max-width: 781px) {
	.wp-block-columns.is-style-carrossel > .wp-block-column > .wp-block-cover {
		/* Mesma proporção das fotos (1100x540): a imagem aparece inteira, sem corte. */
		min-height: 0 !important;
		aspect-ratio: 55 / 27 !important;
		padding: 0.75rem 3rem 1.75rem !important;
	}
	.wp-block-columns.is-style-carrossel .wp-block-cover h1,
	.wp-block-columns.is-style-carrossel .wp-block-cover h2 { font-size: 1.375rem !important; line-height: 1.15; }
	.wp-block-columns.is-style-carrossel .wp-block-cover p { font-size: 0.875rem !important; margin-top: 0.25rem !important; line-height: 1.35; }
	.apis-carrossel .apis-carrossel__seta { width: 32px; height: 32px; font-size: 20px; }
}
/* Celular deitado (paisagem): foto inteira na largura da tela, texto afastado das setas. */
@media (orientation: landscape) and (max-height: 520px) {
	.wp-block-columns.is-style-carrossel > .wp-block-column > .wp-block-cover {
		min-height: 0 !important;
		aspect-ratio: 55 / 27 !important;
		padding-left: 4.5rem !important;
		padding-right: 4.5rem !important;
	}
}
.wp-block-gallery.is-style-carrossel { gap: 0 !important; }
.wp-block-gallery.is-style-carrossel > .wp-block-image img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 2 / 1;
	max-height: 75vh;
	object-fit: cover;
}

/* 3 por vez (2 em telas médias, 1 no celular) */
.wp-block-columns.is-style-carrossel-3 > .wp-block-column {
	flex: 0 0 calc((100% - 2 * var(--apis-gap, 2rem)) / 3) !important;
	scroll-snap-align: start;
}
.wp-block-columns.is-style-carrossel-3 { --apis-gap: var(--wp--preset--spacing--50); }
@media (max-width: 1024px) {
	.wp-block-columns.is-style-carrossel-3 > .wp-block-column {
		flex-basis: calc((100% - var(--apis-gap, 2rem)) / 2) !important;
	}
}
@media (max-width: 781px) {
	.wp-block-columns.is-style-carrossel-3 > .wp-block-column { flex-basis: 100% !important; }
}

/* Setas */
.apis-carrossel__seta {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 50%;
	background: var(--wp--preset--color--branco);
	color: var(--wp--preset--color--grafite);
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
	display: flex;
	align-items: center;
	justify-content: center;
}
.apis-carrossel__seta:hover { background: var(--wp--preset--color--mel); }
.apis-carrossel__seta--anterior { left: 12px; }
.apis-carrossel__seta--proximo { right: 12px; }
/* Carrosséis de vários itens: setas abaixo, ao lado dos indicadores. */
.apis-carrossel:not(.apis-carrossel--um) {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	row-gap: 1.25rem;
}
.apis-carrossel:not(.apis-carrossel--um) > .wp-block-columns { grid-column: 1 / -1; grid-row: 1; }
.apis-carrossel:not(.apis-carrossel--um) .apis-carrossel__seta {
	position: static;
	transform: none;
	grid-row: 2;
}
.apis-carrossel:not(.apis-carrossel--um) .apis-carrossel__seta--anterior { grid-column: 1; }
.apis-carrossel:not(.apis-carrossel--um) .apis-carrossel__seta--proximo { grid-column: 3; }
.apis-carrossel:not(.apis-carrossel--um) .apis-carrossel__pontos { grid-column: 2; grid-row: 2; margin: 0; }
@media (max-width: 600px) {
	.apis-carrossel__seta { width: 38px; height: 38px; font-size: 24px; }
}

/* Indicadores */
.apis-carrossel__pontos {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 1rem;
}
.apis-carrossel--um .apis-carrossel__pontos {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 18px;
	margin: 0;
	z-index: 2;
}
.apis-carrossel__ponto {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 2px solid var(--wp--preset--color--grafite);
	border-radius: 50%;
	background: transparent;
	cursor: pointer;
}
.apis-carrossel--um .apis-carrossel__ponto { border-color: var(--wp--preset--color--branco); }
.apis-carrossel__ponto[aria-current="true"] {
	background: var(--wp--preset--color--mel);
	border-color: var(--wp--preset--color--mel);
}

@media (prefers-reduced-motion: reduce) {
	* { scroll-behavior: auto !important; transition: none !important; }
}

/* Cartões da Home (Coworking, Salas, Atendimento, Multiuso): como no site original,
   ao passar o mouse o fundo fica amarelo-mel com um brilho, e o cartão inteiro é clicável.
   Texto em grafite (e não branco) para ficar legível sobre o amarelo. */
.apis-card {
	position: relative;
	transition: background-color 0.45s cubic-bezier(0.25, 1, 0.2, 1), box-shadow 0.45s cubic-bezier(0.25, 1, 0.2, 1), transform 0.45s cubic-bezier(0.25, 1, 0.2, 1);
}
.apis-card h3 a { color: inherit; text-decoration: none; }
.apis-card h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.apis-card:hover,
.apis-card:focus-within {
	background-color: var(--wp--preset--color--mel) !important;
	color: var(--wp--preset--color--grafite);
	box-shadow: 0 18px 50px rgba(249, 178, 21, 0.45);
	transform: translateY(-4px);
}
.apis-card:focus-within h3 a { outline: none; }
.apis-card:has(a:focus-visible) { outline: 3px solid var(--wp--preset--color--grafite); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
	.apis-card { transition: none; }
	.apis-card:hover, .apis-card:focus-within { transform: none; }
}


/* Fotos dos depoimentos: sempre 56px redondas, em qualquer tela
   (algumas fotos originais são maiores e não quadradas). */
.wp-block-columns.is-style-carrossel-3 .wp-block-image.is-style-rounded { flex: 0 0 56px; width: 56px; margin: 0; }
.wp-block-columns.is-style-carrossel-3 .wp-block-image.is-style-rounded img {
	width: 56px !important;
	height: 56px !important;
	max-width: none;
	object-fit: cover;
	border-radius: 50%;
}


/* Rodapé igual ao site original: fundo cinza-chumbo, títulos cinza em maiúsculas
   espaçadas, textos brancos em Lato fina, ícones redondos amarelos e faixa de
   copyright mais escura. */
.apis-rodape {
	background-color: #434343;
	color: #ffffff;
	font-family: var(--wp--preset--font-family--lato);
	font-size: 20px;
	font-weight: 300;
	line-height: 30px;
}
.apis-rodape p { margin: 0 0 0.75rem; }
.apis-rodape a { color: #ffffff; text-decoration: none; transition: color 0.2s ease; }
.apis-rodape a:hover,
.apis-rodape a:focus-visible { color: var(--wp--preset--color--mel); }
.apis-rodape .apis-rodape__titulo {
	color: #777777;
	font-size: 20px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin: 0 0 12px;
}
.apis-rodape .apis-rodape__titulo:not(:first-child) { margin-top: 1.75rem; }
.apis-rodape .apis-rodape__lista { list-style: none; margin: 0; padding: 0; }
.apis-rodape .apis-rodape__lista li { padding-bottom: 4px; }
.apis-rodape .apis-rodape__tel { font-size: 24px; }
.apis-rodape .apis-rodape__tel strong { font-weight: 700; }
.apis-rodape .apis-rodape__logo { margin: 0; }
.apis-rodape .apis-rodape__social .wp-social-link { transition: background-color 0.2s ease; }
.apis-rodape .apis-rodape__social .wp-social-link:hover { background-color: #ffffff !important; transform: none; }
.apis-rodape-copy {
	background-color: #1f1f1f;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
	color: #ffffff;
	font-size: 12px;
	font-weight: 300;
	line-height: 22px;
}
.apis-rodape-copy p { margin: 0; }
.wp-site-blocks > footer.wp-block-template-part { margin-block-start: 0; }
.apis-rodape-copy a { color: #ffffff; text-decoration: none; }
.apis-rodape-copy a:hover, .apis-rodape-copy a:focus-visible { color: var(--wp--preset--color--mel); }
.apis-rodape .apis-rodape__social .wp-social-link a { padding: 10px; }
.apis-rodape .apis-rodape__social .wp-social-link svg { width: 23px; height: 23px; }


/* Página Espaços: cada comodidade em um cartão branco, como no site original
   (ícone amarelo no topo, título e descrição centralizados em cinza #676767). */
.wp-block-columns:has(> .wp-block-column > .apis-icone) {
	gap: 24px !important;
	margin-bottom: 24px;
}
.wp-block-column:has(> .apis-icone) {
	background: #ffffff;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06), 0 1px 1px rgba(0, 0, 0, 0.1);
	padding: 32px 18px 28px;
	text-align: center;
	color: #676767;
}
.wp-block-column:has(> .apis-icone) > .apis-icone { margin: 0 auto 24px; }
.wp-block-column:has(> .apis-icone) > .apis-icone img { width: 44px !important; height: 44px !important; }
.wp-block-column:has(> .apis-icone) > :is(h1, h2, h3, h4, h5, h6) {
	color: #676767;
	font-size: 24px !important;
	font-weight: 400;
	line-height: 30px;
	margin: 0 0 7px !important;
}
.wp-block-column:has(> .apis-icone) > p {
	color: #676767;
	font-size: 20px;
	font-weight: 300;
	line-height: 30px;
	margin: 0;
}

/* Campos da newsletter legíveis sobre a foto escura. */
.yikes-easy-mc-form input[type="text"],
.yikes-easy-mc-form input[type="email"] { background-color: #ffffff; color: var(--wp--preset--color--grafite); }

/* Página Espaços: textos de cada sala no estilo do site original. */
.apis-sala > .wp-block-gallery { margin-bottom: 28px; }
.apis-sala > h3:first-of-type {
	color: #444444;
	font-size: 30px;
	font-weight: 400;
	line-height: 40px;
	text-transform: uppercase;
	margin: 0 0 8px;
}
.apis-sala > p,
.apis-sala .wp-block-details p,
.apis-sala .wp-block-details li {
	color: rgba(10, 10, 10, 0.6);
	font-size: 20px;
	font-weight: 300;
	line-height: 30px;
}
.apis-sala .wp-block-details {
	margin: 1.25rem 0;
	border: 1px solid rgba(0, 0, 0, 0.07);
	background: #f8f8f8;
}
.apis-sala .wp-block-details > summary {
	color: #444444;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 1px;
	line-height: 14px;
	text-transform: uppercase;
	padding: 14px 16px;
	cursor: pointer;
}
.apis-sala .wp-block-details[open] > summary { border-bottom: 1px solid rgba(0, 0, 0, 0.07); }
.apis-sala .wp-block-details > :not(summary) { padding: 0 16px; }
.apis-sala .wp-block-details > :last-child { padding-bottom: 14px; }
/* Preço, "Opções de Contratação" e o texto da contratação. */
.apis-sala > .wp-block-details ~ p {
	color: #444444;
	font-size: 15px;
	font-weight: 400;
	line-height: 25px;
	margin: 0 0 7px;
}
.apis-sala > h3:not(:first-of-type) {
	color: #444444;
	font-size: 20px;
	font-weight: 400;
	line-height: 50px;
	text-transform: none;
	margin: 0;
}
.apis-sala > .wp-block-spacer { height: 14px !important; }

/* Botão "Entre em contato pelo WhatsApp": contorno escuro como no original;
   ao passar o mouse fica amarelo-mel e sobe um pouco. */
.apis-botao-whats .wp-block-button__link {
	background: transparent !important;
	color: #000000 !important;
	border: 2px solid rgba(0, 0, 0, 0.75);
	border-radius: 4px;
	padding: 13px 22px;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 2px;
	line-height: 20px;
	transition: background-color 0.25s ease, border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.apis-botao-whats .wp-block-button__link:hover,
.apis-botao-whats .wp-block-button__link:focus-visible {
	background: var(--wp--preset--color--mel) !important;
	border-color: var(--wp--preset--color--mel);
	color: var(--wp--preset--color--grafite) !important;
	transform: translateY(-3px);
	box-shadow: 0 20px 38px rgba(0, 0, 0, 0.16);
}
@media (prefers-reduced-motion: reduce) {
	.apis-botao-whats .wp-block-button__link:hover { transform: none; }
}

/* Estilo do site original (Salient) para páginas de texto, como "Sobre":
   use a classe apis-original no grupo da seção e apis-cabecalho-original na capa. */
.apis-cabecalho-original h1 {
	font-size: 34px !important;
	font-weight: 400;
	line-height: 1.2;
}
.apis-original--cinza { background-color: #f9f9f9; }
.apis-original h2 {
	color: #444444;
	font-size: 32px;
	font-weight: 400;
	line-height: 36px;
}
.apis-original h3,
.apis-original h4 {
	color: #444444;
	font-size: 28px;
	font-weight: 400;
	line-height: 34px;
	margin-bottom: 0.5rem;
}
.apis-original p,
.apis-original li {
	color: #676767;
	font-size: 20px;
	font-weight: 300;
	line-height: 30px;
}
.apis-original h4 + p { color: rgba(10, 10, 10, 0.65); }
.apis-original ul { padding-left: 1.2em; }
.apis-original strong, .apis-original b { font-weight: 700; }
.apis-original .wp-block-image img { border-radius: 0; }
.apis-original > h2 { text-align: left; max-width: var(--wp--style--global--wide-size) !important; }
/* Capa clara como no original: a foto aparece sem a camada escura. */
.apis-cabecalho-original .wp-block-cover__background { opacity: 0.15 !important; }
.apis-cabecalho-original h1 { text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35); }

/* Página de Artigos (blog) no estilo do site original. */
.apis-blog-banner .apis-blog-banner__titulo {
	color: #ffffff;
	font-size: 34px;
	font-weight: 400;
	line-height: 1.2;
	margin: 0;
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
}
.apis-blog-banner .apis-blog-banner__sub {
	color: #ffffff;
	font-size: 24px;
	font-weight: 300;
	line-height: 1.4;
	margin-top: 0.5rem;
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
}
.apis-blog-lista { display: flex; flex-direction: column; gap: 50px; }
.apis-blog-post { gap: 23px !important; }
.apis-blog-data { flex: 0 0 72px; color: #676767; text-transform: uppercase; }
.apis-blog-data__mes { font-size: 17px; font-weight: 700; line-height: 14px; margin: 0; }
.apis-blog-data__dia { font-size: 30px; font-weight: 700; line-height: 29px; margin: 4px 0 0; }
.apis-blog-conteudo { flex: 1 1 auto; min-width: 0; }
.apis-blog-conteudo .wp-block-post-featured-image { margin: 0 0 24px; }
.apis-blog-conteudo .wp-block-post-featured-image img { width: 100%; height: auto; border-radius: 0; }
.apis-blog-titulo { font-size: 38px !important; font-weight: 400; line-height: 42px; margin: 0 0 2px; }
.apis-blog-titulo a { color: var(--wp--preset--color--mel); text-decoration: none; }
.apis-blog-titulo a:hover, .apis-blog-titulo a:focus-visible { color: var(--wp--preset--color--mel-escuro); }
.apis-blog-meta { gap: 4px !important; color: #888888; font-size: 11px; font-weight: 300; line-height: 30px; }
.apis-blog-meta p, .apis-blog-meta > * { margin: 0; font-size: 11px; }
.apis-blog-meta a { color: #888888; text-decoration: none; }
.apis-blog-meta a:hover { color: var(--wp--preset--color--mel); }
.apis-blog-resumo .wp-block-post-excerpt__excerpt {
	color: #676767;
	font-size: 20px;
	font-weight: 300;
	line-height: 30px;
	margin: 0.5rem 0 0;
}
/* Botão "Leia mais": caixinha escura como no original, amarela ao passar o mouse. */
.apis-blog-resumo .wp-block-post-excerpt__more-text { margin: 25px 0 0; }
.apis-blog-resumo .wp-block-post-excerpt__more-link {
	display: inline-block;
	background: #333333;
	color: #ffffff;
	font-size: 11px;
	font-weight: 300;
	line-height: 18px;
	padding: 6px 10px;
	text-decoration: none;
	transition: background-color 0.45s cubic-bezier(0.25, 1, 0.33, 1), color 0.45s ease;
}
.apis-blog-resumo .wp-block-post-excerpt__more-link:hover,
.apis-blog-resumo .wp-block-post-excerpt__more-link:focus-visible {
	background: var(--wp--preset--color--mel);
	color: var(--wp--preset--color--grafite);
}
.apis-blog-paginas { margin-top: 50px; font-size: 18px; }
.apis-blog-paginas a { color: #676767; }
/* Coluna lateral */
.apis-blog-lateral .apis-blog-lateral__titulo {
	color: #999999;
	font-size: 20px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin: 0 0 16px;
}
.apis-blog-lateral .apis-blog-lateral__titulo:not(:first-child) { margin-top: 48px; }
.apis-blog-recentes { padding: 0; list-style: none; }
.apis-blog-recentes li { margin-bottom: 12px; }
.apis-blog-recentes a {
	color: var(--wp--preset--color--mel);
	font-size: 20px;
	font-weight: 300;
	line-height: 30px;
	text-decoration: none;
}
.apis-blog-recentes a:hover { color: var(--wp--preset--color--mel-escuro); }
.apis-blog-lateral .yikes-easy-mc-form input[type="text"],
.apis-blog-lateral .yikes-easy-mc-form input[type="email"] { border: 1px solid #e0e0e0; }
@media (max-width: 600px) {
	.apis-blog-data { flex-basis: 48px; }
	.apis-blog-titulo { font-size: 28px !important; line-height: 34px; }
}

/* Newsletter (Contact Form 7 + RD Station), no lugar do antigo formulário do Mailchimp. */
.apis-news label { display: block; margin-bottom: 14px; font-weight: 700; }
.apis-news input[type="text"],
.apis-news input[type="email"] {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin-top: 6px;
	padding: 12px 14px;
	background: #ffffff;
	color: var(--wp--preset--color--grafite);
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	font: inherit;
	font-weight: 400;
}
.apis-news .wpcf7-recaptcha { margin: 6px 0 14px; }
.apis-news input[type="submit"] {
	width: 100%;
	padding: 14px;
	background: var(--wp--preset--color--mel);
	color: #ffffff;
	border: 0;
	border-radius: 4px;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}
.apis-news input[type="submit"]:hover,
.apis-news input[type="submit"]:focus-visible { background: var(--wp--preset--color--mel-escuro); }
.apis-news .wpcf7-spinner { display: block; margin: 8px auto 0; }
.apis-blog-lateral .apis-news label { color: #676767; font-weight: 400; }

/* Página Contato no estilo do site original. */
.apis-contato.apis-original { background-color: #f7f7f7 !important; }
.apis-contato p a[href^="tel"] { color: var(--wp--preset--color--mel); font-size: 24px; font-weight: 300; text-decoration: none; }
.apis-contato p a[href^="tel"]:hover { color: var(--wp--preset--color--mel-escuro); }
.apis-contato .wp-block-columns:has(> .wp-block-column > .wp-block-image) { gap: 18px !important; justify-content: flex-start; }
.apis-contato .wp-block-columns:has(> .wp-block-column > .wp-block-image) > .wp-block-column { flex: 0 0 auto !important; }
.apis-original.apis-contato .wpcf7 label { color: #676767; font-size: 20px; font-weight: 400; line-height: 26px; }
.apis-original.apis-contato .wpcf7 input[type="text"],
.apis-original.apis-contato .wpcf7 input[type="email"],
.apis-original.apis-contato .wpcf7 input[type="tel"],
.apis-original.apis-contato .wpcf7 select,
.apis-original.apis-contato .wpcf7 textarea {
	background: transparent;
	border: 1px solid #cccccc;
	border-radius: 0;
	color: #555555;
	font-size: 16px;
	line-height: 22px;
	padding: 16px;
	margin-top: 6px;
}
.apis-original.apis-contato .wpcf7 input[type="text"],
.apis-original.apis-contato .wpcf7 input[type="email"],
.apis-original.apis-contato .wpcf7 input[type="tel"],
.apis-original.apis-contato .wpcf7 select { min-height: 56px; }
.apis-original.apis-contato .wpcf7 textarea { min-height: 254px; }
.apis-original.apis-contato .wpcf7 input:focus,
.apis-original.apis-contato .wpcf7 select:focus,
.apis-original.apis-contato .wpcf7 textarea:focus { border-color: var(--wp--preset--color--mel); outline: none; box-shadow: 0 0 0 2px rgba(249, 178, 21, 0.35); }
.apis-original.apis-contato .wpcf7 .wpcf7-list-item-label { color: #676767; font-size: 18px; font-weight: 300; }
.apis-original.apis-contato .wpcf7 input[type="submit"] {
	width: auto;
	background: var(--wp--preset--color--mel);
	color: #ffffff;
	border: 0;
	border-radius: 4px;
	font-size: 18px;
	font-weight: 400;
	padding: 15px 22px;
	cursor: pointer;
}
.apis-original.apis-contato .wpcf7 input[type="submit"]:hover,
.apis-original.apis-contato .wpcf7 input[type="submit"]:focus-visible { background: var(--wp--preset--color--mel-escuro); }
/* Link "Comentário" na linha de informações de cada artigo (como no original). */
.apis-blog-meta .apis-blog-comentarios,
.apis-blog-meta .apis-blog-comentarios a { color: #888888; font-size: 11px; font-weight: 300; text-decoration: none; }
.apis-blog-meta .apis-blog-comentarios a:hover { color: var(--wp--preset--color--mel); }
/* Comentários no fim de cada artigo. */
.apis-comentarios .comment-form input:not([type="submit"]):not([type="checkbox"]),
.apis-comentarios .comment-form textarea { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid #cccccc; font: inherit; }
.apis-comentarios .comment-form input[type="submit"] { background: var(--wp--preset--color--mel); color: #ffffff; border: 0; border-radius: 4px; padding: 14px 22px; font: inherit; cursor: pointer; }
.apis-comentarios .comment-form input[type="submit"]:hover { background: var(--wp--preset--color--mel-escuro); }

/* Home no computador: cabeçalho transparente sobre o primeiro carrossel, como no site
   original. Ao rolar, volta ao fundo branco com sombra. No celular fica sempre branco. */
.apis-header .wp-block-site-logo a { position: relative; display: inline-block; }
.apis-logo-branco { display: none; }
@media (min-width: 1000px) {
	body.apis-home-transparente .wp-site-blocks > header.wp-block-template-part {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
	}
	body.admin-bar.apis-home-transparente .wp-site-blocks > header.wp-block-template-part { top: 32px; }
	body.apis-home-transparente .wp-site-blocks > header.wp-block-template-part + * { margin-top: 0; }
	body.apis-home-transparente .apis-header {
		transition: background-color 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
		box-shadow: 0 3px 45px rgba(0, 0, 0, 0.15);
	}
	body.apis-home-transparente.apis-topo .apis-header {
		background-color: transparent !important;
		border-bottom-color: transparent !important;
		box-shadow: none;
	}
	body.apis-home-transparente.apis-topo .apis-header .wp-block-navigation a,
	body.apis-home-transparente.apis-topo .apis-header .wp-block-navigation .wp-block-navigation-item__content,
	body.apis-home-transparente.apis-topo .apis-header .apis-header-social .wp-social-link,
	body.apis-home-transparente.apis-topo .apis-header .wp-block-navigation__responsive-container-open { color: #ffffff !important; }
	body.apis-home-transparente .apis-logo-branco {
		display: block;
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: contain;
		object-position: left center;
		opacity: 0;
		transition: opacity 0.3s ease;
		pointer-events: none;
	}
	body.apis-home-transparente .wp-block-site-logo img.custom-logo { transition: opacity 0.3s ease; }
	body.apis-home-transparente.apis-topo .apis-logo-branco { opacity: 1; }
	body.apis-home-transparente.apis-topo .wp-block-site-logo img.custom-logo { opacity: 0; }
}

/* "Infraestrutura" das salas (Espaços): igual ao "toggle" do site original. Fechado: faixa
   cinza-clara com um "+" redondo; aberto: faixa amarela, texto branco e "−". */
.apis-sala .wp-block-details { border: 0; background: transparent; margin: 1.25rem 0; }
.apis-sala .wp-block-details > summary {
	position: relative;
	list-style: none;
	display: block;
	background: rgba(0, 0, 0, 0.043);
	color: #888888;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 14px;
	padding: 14px 14px 16px 43px;
	text-transform: uppercase;
	border-bottom: 0 !important;
	transition: background-color 0.2s ease, color 0.2s ease;
}
.apis-sala .wp-block-details > summary::-webkit-details-marker { display: none; }
.apis-sala .wp-block-details > summary::before {
	content: "+";
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #888888;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 16px;
	text-align: center;
}
.apis-sala .wp-block-details > summary:hover { color: #444444; }
.apis-sala .wp-block-details[open] > summary { background: var(--wp--preset--color--mel); color: #ffffff; }
.apis-sala .wp-block-details[open] > summary::before { content: "\2212"; background: #ffffff; color: var(--wp--preset--color--mel); }
.apis-sala .wp-block-details > :not(summary) { background: #ffffff; padding: 10px 14px; margin: 0; }
.apis-sala .wp-block-details > :last-child { padding-bottom: 14px; }
.apis-sala .wp-block-details ul { padding-left: 1.6em; }

/* Banners do topo da Home: sem botão; o banner inteiro leva à página (como no original). */
.apis-slide-link { cursor: pointer; }
.apis-slide-link :is(h1, h2) a { color: inherit; text-decoration: none; }
.apis-slide-link :is(h1, h2) a:focus-visible { outline: 3px solid var(--wp--preset--color--mel); outline-offset: 4px; }

/* Botão "Fale com a Apis" (Home) como no original: amarelo, texto branco espaçado. */
.apis-botao-original .wp-block-button__link {
	background-color: var(--wp--preset--color--mel);
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 2px;
	padding: 15px 42px;
	border-radius: 4px;
	transition: background-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.apis-botao-original .wp-block-button__link:hover,
.apis-botao-original .wp-block-button__link:focus-visible {
	background-color: var(--wp--preset--color--mel-escuro);
	color: #ffffff !important;
	transform: translateY(-3px);
	box-shadow: 0 20px 38px rgba(0, 0, 0, 0.16);
}
@media (prefers-reduced-motion: reduce) {
	.apis-botao-original .wp-block-button__link:hover { transform: none; }
}
