/*
Theme Name: Dicas Aleatóricas
Theme URI: https://dicasaleatoricas.com
Description: Tema filho do Hello Elementor para o portal Dicas Aleatóricas. Adiciona sidebar e modelos de blog (arquivo, categoria, busca e post).
Author: Dicas Aleatóricas
Template: hello-elementor
Version: 1.0.0
Text Domain: dicas-aleatoricas
*/

/* ==========================================================
   1. Tokens da marca
   As cores e fontes "oficiais" ficam no Kit do Elementor
   (Elementor > Configurações do site). Estes tokens repetem
   os mesmos valores para as partes que o Elementor não monta:
   blog, categorias, busca, posts e sidebar.
   ========================================================== */
:root {
	--da-roxo: var(--e-global-color-primary, #51008F);
	--da-violeta: var(--e-global-color-secondary, #8000D7);
	--da-grafite: var(--e-global-color-text, #17131D);
	--da-amarelo: var(--e-global-color-accent, #FFCA55);
	--da-lilas: #CDA7FF;
	--da-branco: #FFFFFF;
	--da-cinza-fundo: #F6F4FA;
	--da-cinza-texto: #6B6577;

	--da-cat-achadinhos: #D33372;
	--da-cat-cupons: #FFB000;
	--da-cat-guias: #8000D7;
	--da-cat-seguranca: #D93632;
	--da-cat-vender: #008655;
	--da-cat-reviews: #1A77C9;
	--da-cat-casa: #FF7A00;
	--da-cat-tech: #00B8D4;

	--da-fonte-impacto: "Anton", "Bebas Neue", Impact, sans-serif;
	--da-fonte-titulo: "Montserrat", system-ui, sans-serif;
	--da-fonte-texto: "Inter", system-ui, sans-serif;

	--da-raio-card: 14px;
	--da-raio-img: 12px;
	--da-sombra-card: 0 6px 24px rgba(81, 0, 143, 0.08);
	--da-sombra-hover: 0 12px 32px rgba(81, 0, 143, 0.14);
	--da-largura: 1240px;
	--da-gap: 24px;
}

/* ==========================================================
   2. Botões: efeito de elevação no hover
   ========================================================== */
.elementor-button,
.wp-block-button__link,
.da-btn {
	transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.elementor-button:hover,
.wp-block-button__link:hover,
.da-btn:hover {
	transform: translateY(-2px);
	box-shadow: var(--da-sombra-hover);
}

.elementor-button:focus-visible,
.wp-block-button__link:focus-visible,
.da-btn:focus-visible,
a:focus-visible {
	outline: 3px solid var(--da-violeta);
	outline-offset: 3px;
}

/* Botão secundário (gradiente roxo). No Elementor, coloque a classe
   "da-btn-secundario" em Avançado > Classes CSS do widget Botão. */
.da-btn-secundario .elementor-button,
.da-btn--secundario {
	background: linear-gradient(135deg, var(--da-violeta), var(--da-roxo));
	color: var(--da-branco);
}

/* ==========================================================
   3. Badges de categoria
   Use a classe "da-badge da-badge--<categoria>".
   ========================================================== */
.da-badge {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--da-violeta);
	color: var(--da-branco);
	font-family: var(--da-fonte-texto);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.8px;
	line-height: 1.4;
	text-transform: uppercase;
	text-decoration: none;
}

.da-badge--achadinhos { background: var(--da-cat-achadinhos); }
.da-badge--cupons-promocoes { background: var(--da-cat-cupons); color: var(--da-grafite); }
.da-badge--guias-de-compra { background: var(--da-cat-guias); }
.da-badge--seguranca-nas-compras { background: var(--da-cat-seguranca); }
.da-badge--venda-nos-marketplaces { background: var(--da-cat-vender); }
.da-badge--reviews { background: var(--da-cat-reviews); }
.da-badge--casa-organizacao { background: var(--da-cat-casa); color: var(--da-grafite); }
.da-badge--tech-gadgets { background: var(--da-cat-tech); color: var(--da-grafite); }

/* ==========================================================
   4. Cards de matéria
   No Elementor, coloque a classe "da-card" no container do card.
   ========================================================== */
.da-card {
	background: var(--da-branco);
	border-radius: var(--da-raio-card);
	box-shadow: var(--da-sombra-card);
	overflow: hidden;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.da-card:hover {
	box-shadow: var(--da-sombra-hover);
}

.da-card img {
	border-radius: var(--da-raio-img);
	transition: transform 0.35s ease;
}

.da-card .elementor-widget-image,
.da-card__media {
	overflow: hidden;
	border-radius: var(--da-raio-img);
}

.da-card:hover img {
	transform: scale(1.05);
}

.da-card a {
	color: inherit;
	text-decoration: none;
}

.da-card a:hover {
	color: var(--da-violeta);
}

.da-meta,
.da-meta a {
	color: var(--da-cinza-texto);
	font-family: var(--da-fonte-texto);
	font-size: 13px;
	font-weight: 500;
}

/* ==========================================================
   5. Espaços de publicidade (placeholders)
   ========================================================== */
.da-ad {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-inline: auto;
	max-width: 100%;
	border: 2px dashed var(--da-lilas);
	border-radius: var(--da-raio-img);
	background: var(--da-cinza-fundo);
	color: var(--da-cinza-texto);
	font-family: var(--da-fonte-texto);
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.da-ad--300x250 { width: 300px; height: 250px; }

/* Na sidebar da home, o anúncio ocupa a mesma largura das outras caixas. */
.da-sidebar .da-ad--300x250 { width: 100%; }
.da-sidebar .elementor-widget-html { align-self: stretch; width: 100%; }
.da-ad--728x90 { width: 728px; height: 90px; }
.da-ad--970x90 { width: 970px; height: 90px; }

@media (max-width: 767px) {
	.da-ad--728x90,
	.da-ad--970x90 { width: 320px; height: 100px; }
}

/* ==========================================================
   6. Formulários: o Kit deixa os campos em pílula; a caixa de
   mensagem fica com cantos arredondados normais.
   ========================================================== */
.elementor-kit-6 textarea,
textarea {
	border-radius: 16px;
}

/* ==========================================================
   7. Caixas dos posts (editor de blocos)
   Resumo rápido, Dica de ouro e chamada para o Instagram.
   ========================================================== */
.da-box {
	margin: 32px 0;
	padding: 20px 24px;
	border-radius: var(--da-raio-card);
	background: var(--da-cinza-fundo);
	border-left: 5px solid var(--da-violeta);
}

.da-box > * + * {
	margin-top: 8px;
}

.da-box .da-box__title {
	margin: 0 0 8px;
	color: var(--da-roxo);
	font-family: var(--da-fonte-titulo);
	font-size: 18px;
	font-weight: 800;
}

.da-box ul {
	margin: 0;
	padding-left: 20px;
}

.da-box li + li {
	margin-top: 6px;
}

.da-box--dica {
	background: #FFF6DE;
	border-left-color: var(--da-amarelo);
}

.da-box--cta {
	border-left: 0;
	background: linear-gradient(135deg, var(--da-violeta), var(--da-roxo));
	color: var(--da-branco);
}

.da-box--cta .da-box__title,
.da-box--cta p {
	color: var(--da-branco);
}

.da-box--cta .wp-block-button__link,
.da-btn-afiliado .wp-block-button__link {
	padding: 14px 28px;
	border-radius: 999px;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	font-family: var(--da-fonte-texto);
	font-weight: 700;
	text-decoration: none;
}

.da-aviso-afiliado {
	margin-top: 32px;
	padding-top: 16px;
	border-top: 1px solid var(--da-lilas);
	color: var(--da-cinza-texto);
	font-size: 14px;
}

/* Nota de método no topo das análises (categoria Reviews) */
.da-metodo {
	padding: 12px 16px;
	border-left: 4px solid var(--da-cat-reviews);
	border-radius: 8px;
	background: #EEF5FD;
	color: var(--da-cinza-texto);
	font-size: 14px;
}

.da-tabela table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
}

.da-tabela th {
	background: var(--da-roxo);
	color: var(--da-branco);
	text-align: left;
}

.da-tabela th,
.da-tabela td {
	padding: 10px 12px;
	border: 1px solid #E7E1F2;
	vertical-align: top;
}

.da-tabela tbody tr:nth-child(even) {
	background: var(--da-cinza-fundo);
}

@media (max-width: 767px) {
	.da-tabela {
		overflow-x: auto;
	}

	.da-tabela table {
		min-width: 560px;
	}
}

/* ==========================================================================
   8. Cabeçalho (Elementor Header & Footer Builder)
   A barra superior sai da tela ao rolar; a barra roxa fica fixa.
   ========================================================================== */

body.ehf-header #masthead {
	position: sticky;
	top: calc(-1 * var(--da-topbar-altura));
	z-index: 990;
	transition: box-shadow 0.2s ease;
}

:root {
	--da-topbar-altura: 36px;
}

body.ehf-header.admin-bar #masthead {
	top: calc(32px - var(--da-topbar-altura));
}

@media (max-width: 782px) {
	body.ehf-header.admin-bar #masthead {
		top: calc(46px - var(--da-topbar-altura));
	}
}

@media (max-width: 600px) {
	body.ehf-header.admin-bar #masthead {
		top: calc(-1 * var(--da-topbar-altura));
	}
}

body.ehf-header.da-rolou #masthead {
	box-shadow: 0 6px 24px rgba(23, 19, 29, 0.22);
}

.da-topbar {
	height: var(--da-topbar-altura);
}

.da-topbar__data {
	color: rgba(255, 255, 255, 0.85);
	font-family: var(--da-fonte-texto);
	font-size: 13px;
	white-space: nowrap;
}

.da-topbar a:hover,
.da-topbar a:focus-visible {
	color: var(--da-amarelo) !important;
}

.da-logo img {
	display: block;
}

.da-menu .hfe-nav-menu__toggle {
	cursor: pointer;
}

.da-mainbar .hfe-search-form__container {
	z-index: 995;
}

.da-header__acoes.e-con {
	--width: auto;
	width: auto;
	flex: 0 0 auto;
}

.da-mainbar .hfe-search-layout-icon .hfe-search-form__input {
	border-color: transparent !important;
	background-color: transparent !important;
	text-transform: none;
}

.da-mainbar .hfe-search-layout-icon .hfe-input-focus .hfe-search-form__input {
	border-color: var(--da-lilas) !important;
	background-color: #FFFFFF !important;
}

.da-mainbar .hfe-search-icon-toggle i {
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 50%;
}

.da-mainbar .hfe-input-focus .hfe-search-icon-toggle i {
	border-color: transparent;
}

/* Tablet e celular: logo a esquerda; busca e menu-sanduiche a direita. */
@media (max-width: 1024px) {
	.da-mainbar .da-menu {
		flex: 0 0 auto !important;
		width: auto !important;
		position: static;
	}

	.da-header__acoes.e-con {
		margin-left: auto;
	}

	.da-mainbar.e-con {
		position: relative;
	}

	.da-mainbar > .e-con-inner,
	.da-mainbar .da-menu .elementor-widget-container,
	.da-mainbar .da-menu .hfe-nav-menu {
		position: static;
	}

	.da-mainbar .da-menu nav.hfe-nav-menu__layout-horizontal {
		position: absolute;
		top: 100%;
		left: 0 !important;
		right: 0;
		width: 100% !important;
	}
}

.da-btn-loja .elementor-button {
	white-space: nowrap;
}

/* Menu aberto no tablet/celular: lista branca abaixo da barra roxa. */
@media (max-width: 1024px) {
	.da-menu nav.hfe-dropdown {
		box-shadow: 0 12px 24px rgba(23, 19, 29, 0.18);
	}
}

/* ==========================================================================
   9. Rodapé e botão "voltar ao topo"
   ========================================================================== */

.da-footer a {
	transition: color 0.2s ease;
}

.da-footer .hfe-nav-menu a.hfe-menu-item {
	padding-left: 0 !important;
	font-size: 15px;
	line-height: 1.4;
	text-transform: none;
}

.da-footer .da-footer__titulo .elementor-heading-title {
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.da-footer p {
	margin: 0;
}

.da-footer__base .elementor-heading-title,
.da-footer__base .hfe-copyright-wrapper {
	text-transform: none;
	letter-spacing: 0;
}

@media (max-width: 767px) {
	.da-footer__base .hfe-copyright-wrapper,
	.da-footer__base .elementor-heading-title {
		text-align: center;
	}
}

.da-topo {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 980;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	box-shadow: var(--da-sombra-card);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
}

body.da-rolou-muito .da-topo {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.da-topo:hover,
.da-topo:focus-visible {
	background: #F5B935;
	color: var(--da-grafite);
}

.da-topo svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}
/* ==========================================================================
   10. Home: cards curados, seções, abas, sidebar e newsletter
   Os cards são containers do Elementor com as classes abaixo.
   Modelos prontos: Templates > Card vertical / horizontal / destaque overlay.
   ========================================================================== */

/* Badge de categoria em widget Título: classes "da-tag da-tag--<slug>" */
.da-tag {
	width: auto !important;
	align-self: flex-start;
}

.da-tag .elementor-heading-title {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--da-violeta);
	color: var(--da-branco) !important;
	line-height: 1.4;
}

.da-tag .elementor-heading-title a,
.da-tag .elementor-heading-title a:hover {
	color: inherit;
}

.da-tag--achadinhos .elementor-heading-title { background: var(--da-cat-achadinhos); }
.da-tag--cupons-promocoes .elementor-heading-title { background: var(--da-cat-cupons); color: var(--da-grafite) !important; }
.da-tag--guias-de-compra .elementor-heading-title { background: var(--da-cat-guias); }
.da-tag--seguranca-nas-compras .elementor-heading-title { background: var(--da-cat-seguranca); }
.da-tag--venda-nos-marketplaces .elementor-heading-title { background: var(--da-cat-vender); }
.da-tag--reviews .elementor-heading-title { background: var(--da-cat-reviews); }
.da-tag--casa-organizacao .elementor-heading-title { background: var(--da-cat-casa); color: var(--da-grafite) !important; }
.da-tag--tech-gadgets .elementor-heading-title { background: var(--da-cat-tech); color: var(--da-grafite) !important; }

/* Os títulos dos cards não herdam a caixa alta dos H1/H2 do Kit. */
.da-card__titulo.elementor-widget-heading .elementor-heading-title,
.da-emalta__titulo.elementor-widget-heading .elementor-heading-title {
	text-transform: none;
	letter-spacing: 0;
}

/* Título de seção com bolinha amarela e link "Ver todos" */
.da-secao__titulo .elementor-heading-title::before {
	content: "";
	display: inline-block;
	width: 0.42em;
	height: 0.42em;
	margin-right: 0.35em;
	border-radius: 50%;
	background: var(--da-amarelo);
	vertical-align: 0.14em;
}

.da-ver-todos .elementor-heading-title a:hover {
	text-decoration: underline;
}

/* Peças comuns dos cards */
.da-card__corpo p,
.da-meta p,
.da-card__linha-fina p,
.da-banner p,
.da-news p {
	margin: 0;
}

.da-card__img img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.da-card--vertical .da-card__img,
.da-card--vertical .da-card__img img {
	border-radius: 0;
}

.da-card--vertical .da-card__corpo {
	flex-grow: 1;
}

.da-card--horizontal .da-card__img--mini {
	flex: 0 0 36%;
	max-width: 36%;
}

.da-card--horizontal .da-card__img--mini img {
	aspect-ratio: 4 / 3;
}

.da-card--horizontal .da-card__corpo {
	flex: 1 1 auto;
	min-width: 0;
}

.da-card--horizontal .da-num {
	flex: 0 0 auto;
	width: 30px !important;
}

.da-num .elementor-heading-title {
	font-size: 42px;
	line-height: 1;
	text-align: center;
}

.da-card--overlay {
	border-radius: var(--da-raio-card);
	overflow: hidden;
	box-shadow: var(--da-sombra-card);
}

.da-card--overlay .da-card__titulo--overlay .elementor-heading-title {
	font-size: 34px;
	line-height: 1.18;
}

.da-card--overlay a:hover {
	color: var(--da-amarelo);
}

@media (max-width: 767px) {
	.da-card--overlay .da-card__titulo--overlay .elementor-heading-title {
		font-size: 24px;
	}
}

/* 1. Em alta */
.da-emalta__img {
	flex: 0 0 80px;
	width: 80px !important;
}

/* Argola degradê no estilo dos stories do Instagram, com um respiro claro entre ela e a foto. */
.da-emalta__img img {
	box-sizing: border-box;
	width: 80px;
	height: 80px;
	padding: 3px;
	border: 3px solid transparent;
	border-radius: 50%;
	background:
		linear-gradient(var(--e-global-color-dacinzf, #F6F4FA), var(--e-global-color-dacinzf, #F6F4FA)) padding-box,
		linear-gradient(45deg, #FEDA75, #FA7E1E, #D62976, #962FBF) border-box;
	object-fit: cover;
}

.da-emalta .da-secao__titulo .elementor-heading-title {
	font-size: 22px;
}

.da-emalta__titulo .elementor-heading-title {
	display: -webkit-box;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.3;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.da-emalta__titulo .elementor-heading-title a {
	color: var(--da-grafite);
}

.da-emalta__titulo .elementor-heading-title a:hover {
	color: var(--da-violeta);
}

/* No celular, "Em alta" vira uma faixa que rola para o lado. */
@media (max-width: 767px) {
	.da-emalta__grid.e-con {
		display: flex !important;
		gap: 16px;
		overflow-x: auto;
		padding-bottom: 8px;
		scroll-snap-type: x mandatory;
	}

	.da-emalta__item.e-con {
		flex: 0 0 82%;
		scroll-snap-align: start;
	}
}

/* 3. Banner de marca */
.da-banner {
	border-radius: 16px;
	overflow: hidden;
}

.da-banner__img img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 16px;
	box-shadow: 0 16px 40px rgba(23, 19, 29, 0.3);
}

.da-btn-contorno .elementor-button {
	border: 2px solid rgba(255, 255, 255, 0.75);
	background: transparent !important;
	color: var(--da-branco) !important;
}

.da-btn-contorno .elementor-button:hover {
	background: rgba(255, 255, 255, 0.12) !important;
}

/* 5. Abas "O que há de novo" */
.da-abas .e-n-tab-title {
	border: 2px solid var(--da-lilas);
	background: var(--da-branco) !important;
}

.da-abas .e-n-tab-title[aria-selected="true"],
.da-abas .e-n-tab-title:hover {
	border-color: var(--da-roxo);
}

.da-abas .e-n-tab-title[aria-selected="true"] {
	background: var(--da-roxo) !important;
}

/* Cada aba: destaque grande e lista numerada com a mesma altura,
   linha de 3 cards embaixo e o link "Ver tudo" alinhado à direita. */
.da-aba__destaque {
	align-self: stretch;
}

/* A foto do destaque cresce para a coluna ficar da altura da lista. */
.da-aba__destaque .da-card__img {
	position: relative;
	flex: 1 1 auto;
	min-height: 400px;
	overflow: hidden;
}

.da-aba__destaque .da-card__img img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	aspect-ratio: auto;
	object-fit: cover;
}

.da-card--vertical.da-aba__destaque .da-card__corpo {
	flex-grow: 0;
}

@media (max-width: 1024px) {
	.da-aba__destaque .da-card__img {
		min-height: 260px;
	}
}

@media (max-width: 767px) {
	.da-aba__destaque .da-card__img {
		min-height: 200px;
	}
}

.da-lista-num .da-card--lista {
	flex: 1 1 0;
	padding: 14px 0;
	border-bottom: 1px solid #EFE8F8;
}

.da-lista-num .da-card--lista:first-child {
	padding-top: 0;
}

.da-lista-num .da-card--lista:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.da-card--lista .da-num {
	flex: 0 0 28px;
	width: 28px !important;
}

.da-card--lista .da-num .elementor-heading-title {
	font-size: 34px;
}

.da-card--lista .da-card__img--mini {
	flex: 0 0 112px;
	max-width: 112px;
}

.da-card--lista .da-card__img--mini img {
	aspect-ratio: 4 / 3;
	border-radius: var(--da-raio-img);
}

.da-card--lista .da-card__corpo {
	flex: 1 1 auto;
	min-width: 0;
}

.da-card--lista .da-card__titulo .elementor-heading-title,
.da-card--mini .da-card__titulo .elementor-heading-title {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.da-card--mini .da-meta {
	margin-top: auto;
}

.da-aba__ver-todos {
	align-self: flex-end;
}

/* Sidebar da home */
.da-sidebar__box {
	border: 1px solid #EFE8F8;
	border-radius: var(--da-raio-card);
	background: var(--da-branco);
}

.da-sidebar__box--loja {
	border: 0;
	background: linear-gradient(135deg, var(--da-cat-casa), var(--da-cat-seguranca));
}

.da-social-btn--instagram .elementor-button {
	background: linear-gradient(45deg, #F58529, #DD2A7B 55%, #8134AF);
	color: var(--da-branco);
}

.da-sidebar .search-form {
	display: flex;
	gap: 8px;
}

.da-sidebar .search-form label {
	flex: 1 1 auto;
}

.da-sidebar .search-field {
	width: 100%;
	border-radius: 999px;
}

.da-sidebar .search-submit {
	border: 0;
	border-radius: 999px;
	background: var(--da-violeta);
	color: var(--da-branco);
	font-weight: 600;
	cursor: pointer;
}

/* Os widgets do WordPress mostram um título padrão; a home já tem o seu. */
.da-cats h5,
.da-recentes h5 {
	display: none;
}

.da-cats ul {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.da-cats li a {
	display: inline-block;
	padding: 5px 11px;
	border-radius: 999px;
	background: var(--da-cinza-fundo);
	color: var(--da-grafite);
	font-family: var(--da-fonte-texto);
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.da-cats .cat-item-19 a { background: var(--da-cat-achadinhos); color: var(--da-branco); }
.da-cats .cat-item-20 a { background: var(--da-cat-cupons); }
.da-cats .cat-item-21 a { background: var(--da-cat-guias); color: var(--da-branco); }
.da-cats .cat-item-22 a { background: var(--da-cat-seguranca); color: var(--da-branco); }
.da-cats .cat-item-23 a { background: var(--da-cat-vender); color: var(--da-branco); }
.da-cats .cat-item-24 a { background: var(--da-cat-reviews); color: var(--da-branco); }
.da-cats .cat-item-25 a { background: var(--da-cat-casa); }
.da-cats .cat-item-26 a { background: var(--da-cat-tech); }

.da-cats li a:hover {
	filter: brightness(0.92);
}

/* 6. Caixas de categoria (widget Caixa de ícone) */
.da-catbox {
	--da-cor: var(--da-violeta);
	padding: 22px 16px;
	border-radius: var(--da-raio-card);
	background: var(--da-branco);
	box-shadow: var(--da-sombra-card);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.da-catbox:hover {
	transform: translateY(-3px);
	box-shadow: var(--da-sombra-hover);
}

.da-catbox .elementor-icon {
	background-color: var(--da-cor) !important;
	color: var(--da-branco) !important;
	fill: var(--da-branco) !important;
	font-size: 26px !important;
}

.da-catbox .elementor-icon-box-title a {
	color: var(--da-grafite);
}

.da-catbox .elementor-icon-box-description {
	color: var(--da-cinza-texto);
}

.da-catbox--achadinhos { --da-cor: var(--da-cat-achadinhos); }
.da-catbox--cupons-promocoes { --da-cor: var(--da-cat-cupons); }
.da-catbox--guias-de-compra { --da-cor: var(--da-cat-guias); }
.da-catbox--seguranca-nas-compras { --da-cor: var(--da-cat-seguranca); }
.da-catbox--venda-nos-marketplaces { --da-cor: var(--da-cat-vender); }
.da-catbox--reviews { --da-cor: var(--da-cat-reviews); }
.da-catbox--casa-organizacao { --da-cor: var(--da-cat-casa); }
.da-catbox--tech-gadgets { --da-cor: var(--da-cat-tech); }

/* 9. Newsletter (Contact Form 7) */
.da-news {
	border-radius: 16px;
	overflow: hidden;
}

.da-news__icone {
	flex: 0 0 auto;
}

.da-news .wpcf7-form p {
	margin: 0 0 10px;
}

.da-news-form p {
	display: contents;
}

.da-news-form br {
	display: none;
}

.da-news-form {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.da-news-form .wpcf7-form-control-wrap {
	flex: 1 1 240px;
}

.da-news-form input[type="email"] {
	width: 100%;
	padding: 14px 22px;
	border: 0;
	border-radius: 999px;
}

.da-news-form .wpcf7-submit {
	padding: 14px 28px;
	border: 0;
	border-radius: 999px;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	font-family: var(--da-fonte-texto);
	font-weight: 700;
	cursor: pointer;
}

.da-news-form .wpcf7-submit:hover {
	background: #F5B935;
}

.da-news-aceite {
	margin-top: 8px;
}

.da-news-aceite,
.da-news-aceite label {
	color: rgba(255, 255, 255, 0.88);
	font-size: 13px;
}

.da-news .wpcf7-response-output {
	margin: 10px 0 0 !important;
	border-radius: 12px;
	color: var(--da-branco);
}

.da-news .wpcf7-not-valid-tip {
	color: var(--da-amarelo);
}

.da-news .wpcf7-spinner {
	position: absolute;
}

/* 10. Últimas do blog (widget Posts recentes) */
.da-recentes ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.da-recentes li {
	padding: 14px 18px;
	border-radius: 12px;
	background: var(--da-branco);
	box-shadow: var(--da-sombra-card);
}

.da-recentes li a {
	display: block;
	color: var(--da-grafite);
	font-family: var(--da-fonte-titulo);
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none;
}

.da-recentes li a:hover {
	color: var(--da-violeta);
}

.da-recentes .post-date {
	display: block;
	margin-top: 6px;
	color: var(--da-cinza-texto);
	font-size: 13px;
}

@media (max-width: 767px) {
	.da-recentes ul {
		grid-template-columns: 1fr;
	}
}

/* ==========================================================================
   11. Páginas de categoria (category.php + inc/categoria.php)
   Mesmo visual dos destaques da home, montado em PHP com os posts mais
   recentes de cada categoria. Os títulos levam ".da-arq" na frente para
   vencer a tipografia de H1/H2/H3 do Kit do Elementor.
   ========================================================================== */
/* O Hello Elementor limita a largura do <main>; aqui a faixa lilás vai de ponta a ponta. */
body .site-main.da-arq {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 72px;
}

.da-arq__largura {
	box-sizing: border-box;
	width: 100%;
	max-width: calc(var(--da-largura) + 40px);
	margin: 0 auto;
	padding: 0 20px;
}

.da-arq__topo {
	padding: 28px 0 36px;
	background: var(--da-cinza-fundo);
}

.da-arq__trilha {
	color: var(--da-cinza-texto);
	font: 500 13px/1.4 var(--da-fonte-texto);
}

.da-arq__trilha a {
	color: var(--da-violeta);
	text-decoration: none;
}

.da-arq__trilha a:hover {
	text-decoration: underline;
}

.da-arq .da-arq__titulo {
	margin: 6px 0 6px;
	color: var(--da-roxo);
	font-family: var(--da-fonte-impacto);
	font-size: 48px;
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: 0;
	text-transform: uppercase;
}

.da-arq__desc {
	max-width: 720px;
	color: var(--da-cinza-texto);
	font-family: var(--da-fonte-texto);
	font-size: 16px;
	line-height: 1.6;
}

.da-arq__desc p {
	margin: 0;
}

/* Título de seção com bolinha amarela (igual ao "Em alta" da home) */
.da-arq .da-a-secao {
	margin: 32px 0 20px;
	color: var(--da-roxo);
	font-family: var(--da-fonte-impacto);
	font-size: 30px;
	font-weight: 400;
	line-height: 1.15;
	letter-spacing: 0;
	text-transform: uppercase;
}

.da-arq .da-a-secao::before {
	content: "";
	display: inline-block;
	width: 0.42em;
	height: 0.42em;
	margin-right: 0.35em;
	border-radius: 50%;
	background: var(--da-amarelo);
	vertical-align: 0.14em;
}

/* Badge de categoria */
.da-arq a.da-a-tag {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--da-violeta);
	color: var(--da-branco);
	font: 700 11px/1.4 var(--da-fonte-texto);
	letter-spacing: 0.8px;
	text-decoration: none;
	text-transform: uppercase;
}

.da-arq a.da-a-tag--achadinhos { background: var(--da-cat-achadinhos); }
.da-arq a.da-a-tag--cupons-promocoes { background: var(--da-cat-cupons); color: var(--da-grafite); }
.da-arq a.da-a-tag--guias-de-compra { background: var(--da-cat-guias); }
.da-arq a.da-a-tag--seguranca-nas-compras { background: var(--da-cat-seguranca); }
.da-arq a.da-a-tag--venda-nos-marketplaces { background: var(--da-cat-vender); }
.da-arq a.da-a-tag--reviews { background: var(--da-cat-reviews); }
.da-arq a.da-a-tag--casa-organizacao { background: var(--da-cat-casa); color: var(--da-grafite); }
.da-arq a.da-a-tag--tech-gadgets { background: var(--da-cat-tech); color: var(--da-grafite); }

.da-a-meta {
	margin: 0;
	color: var(--da-cinza-texto);
	font: 500 13px/1.4 var(--da-fonte-texto);
}

.da-a-card__corpo {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	min-width: 0;
}

/* Em alta */
.da-a-emalta {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.da-a-emalta__item {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.da-a-emalta__item .da-a-card__corpo {
	gap: 5px;
}

.da-a-emalta__img {
	flex: 0 0 80px;
}

.da-a-emalta__img img {
	display: block;
	box-sizing: border-box;
	width: 80px;
	height: 80px;
	padding: 3px;
	border: 3px solid transparent;
	border-radius: 50%;
	background:
		linear-gradient(var(--da-cinza-fundo), var(--da-cinza-fundo)) padding-box,
		linear-gradient(45deg, #FEDA75, #FA7E1E, #D62976, #962FBF) border-box;
	object-fit: cover;
}

.da-arq .da-a-emalta__titulo {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	font: 700 16px/1.3 var(--da-fonte-titulo);
	letter-spacing: 0;
	text-transform: none;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.da-arq .da-a-emalta__titulo a,
.da-arq .da-a-card__titulo a {
	color: var(--da-grafite);
	text-decoration: none;
}

.da-arq .da-a-emalta__titulo a:hover,
.da-arq .da-a-card__titulo a:hover {
	color: var(--da-violeta);
}

/* Matéria principal + 3 cards ao lado */
.da-arq__destaques {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: 24px;
	padding-top: 36px;
}

.da-arq__destaques--sozinho {
	grid-template-columns: minmax(0, 1fr);
}

.da-a-hero {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	gap: 12px;
	isolation: isolate;
	min-height: 480px;
	overflow: hidden;
	padding: 28px;
	border-radius: var(--da-raio-card);
	background: var(--da-grafite);
	box-shadow: var(--da-sombra-card);
}

.da-a-hero__img {
	position: absolute;
	inset: 0;
	z-index: -2;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.da-a-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(0deg, rgba(23, 19, 29, 0.92) 0%, rgba(23, 19, 29, 0.6) 45%, rgba(23, 19, 29, 0.05) 100%);
}

.da-arq .da-a-hero__titulo {
	margin: 0;
	color: var(--da-branco);
	font: 800 34px/1.18 var(--da-fonte-titulo);
	letter-spacing: 0;
	text-transform: none;
}

.da-arq .da-a-hero__titulo a {
	color: inherit;
	text-decoration: none;
}

.da-arq .da-a-hero__titulo a:hover {
	color: var(--da-amarelo);
}

.da-a-hero__resumo {
	margin: 0;
	color: rgba(255, 255, 255, 0.9);
	font-family: var(--da-fonte-texto);
	font-size: 17px;
	line-height: 1.7;
}

.da-a-hero .da-a-meta {
	color: rgba(255, 255, 255, 0.85);
}

.da-arq a.da-a-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 4px;
	padding: 14px 28px;
	border-radius: 999px;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	font: 600 15px/1 var(--da-fonte-texto);
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.da-arq a.da-a-btn:hover {
	transform: translateY(-2px);
	box-shadow: var(--da-sombra-hover);
}

.da-a-lado {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Cards */
.da-a-card {
	overflow: hidden;
	border-radius: var(--da-raio-card);
	background: var(--da-branco);
	box-shadow: var(--da-sombra-card);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.da-a-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--da-sombra-hover);
}

.da-a-card__img img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.da-a-card--h {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px;
}

/* Com 3 cards, a coluna acompanha a altura da matéria principal.
   Só no desktop: no tablet e no celular a coluna fica embaixo, sem altura fixa,
   e os cards precisam da altura do próprio conteúdo. */
@media (min-width: 1025px) {
	.da-a-lado:has(> :nth-child(3)) .da-a-card--h {
		flex: 1 1 0;
	}
}

.da-a-card--h .da-a-card__img {
	flex: 0 0 36%;
	max-width: 36%;
}

.da-a-card--h .da-a-card__img img {
	aspect-ratio: 4 / 3;
	border-radius: var(--da-raio-img);
}

.da-arq .da-a-card__titulo {
	margin: 0;
	font: 700 16px/1.35 var(--da-fonte-titulo);
	letter-spacing: 0;
	text-transform: none;
}

.da-a-card--v {
	display: flex;
	flex-direction: column;
}

.da-a-card--v .da-a-card__corpo {
	flex-grow: 1;
	padding: 18px 20px 20px;
}

.da-arq .da-a-card--v .da-a-card__titulo {
	font-size: 19px;
}

.da-a-card__resumo {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	color: var(--da-cinza-texto);
	font-family: var(--da-fonte-texto);
	font-size: 15px;
	line-height: 1.55;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.da-a-card--v .da-a-meta {
	margin-top: auto;
}

/* Lista "Mais em" */
/* O espaço antes do rodapé fica no <main> (vale com ou sem a lista). */
.da-arq__lista {
	padding-top: 16px;
}

.da-arq__lista--sidebar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 32px;
}

.da-a-grade {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.da-arq__lista--sidebar .da-a-grade {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.da-arq__vazio {
	margin: 32px 0 0;
	color: var(--da-cinza-texto);
}

.da-arq .pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 36px;
}

.da-arq .pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 14px;
	border: 2px solid var(--da-lilas);
	border-radius: 999px;
	color: var(--da-roxo);
	font: 600 15px/1 var(--da-fonte-texto);
	text-decoration: none;
}

.da-arq .pagination .page-numbers.current,
.da-arq .pagination a.page-numbers:hover {
	border-color: var(--da-roxo);
	background: var(--da-roxo);
	color: var(--da-branco);
}

@media (max-width: 1024px) {
	.da-a-emalta {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.da-arq__destaques,
	.da-arq__lista--sidebar {
		grid-template-columns: minmax(0, 1fr);
	}

	.da-a-grade {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	body .site-main.da-arq {
		padding-bottom: 48px;
	}

	.da-arq__largura {
		padding: 0 16px;
	}

	.da-arq .da-arq__titulo {
		font-size: 36px;
	}

	.da-arq .da-a-secao {
		font-size: 24px;
	}

	/* Em alta vira uma faixa que rola para o lado, como na home. */
	.da-a-emalta {
		display: flex;
		gap: 16px;
		overflow-x: auto;
		padding-bottom: 8px;
		scroll-snap-type: x mandatory;
	}

	.da-a-emalta__item {
		flex: 0 0 82%;
		scroll-snap-align: start;
	}

	.da-a-hero {
		min-height: 400px;
		padding: 20px;
	}

	.da-arq .da-a-hero__titulo {
		font-size: 24px;
	}

	.da-a-hero__resumo {
		display: none;
	}

	.da-a-grade,
	.da-arq__lista--sidebar .da-a-grade {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   12. Blog, arquivos, busca, 404 e post (home.php, archive.php, search.php,
   404.php, single.php + inc/arquivo.php). Reaproveitam as peças da seção 11.
   ========================================================================== */

/* Atalhos de categoria */
.da-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.da-arq a.da-chip {
	display: inline-block;
	padding: 7px 14px;
	border-radius: 999px;
	background: var(--da-violeta);
	color: var(--da-branco);
	font: 600 14px/1.3 var(--da-fonte-texto);
	text-decoration: none;
	transition: transform 0.2s ease, filter 0.2s ease;
}

.da-arq a.da-chip:hover {
	transform: translateY(-2px);
	filter: brightness(0.94);
}

.da-arq a.da-chip--achadinhos { background: var(--da-cat-achadinhos); }
.da-arq a.da-chip--cupons-promocoes { background: var(--da-cat-cupons); color: var(--da-grafite); }
.da-arq a.da-chip--guias-de-compra { background: var(--da-cat-guias); }
.da-arq a.da-chip--seguranca-nas-compras { background: var(--da-cat-seguranca); }
.da-arq a.da-chip--venda-nos-marketplaces { background: var(--da-cat-vender); }
.da-arq a.da-chip--reviews { background: var(--da-cat-reviews); }
.da-arq a.da-chip--casa-organizacao { background: var(--da-cat-casa); color: var(--da-grafite); }
.da-arq a.da-chip--tech-gadgets { background: var(--da-cat-tech); color: var(--da-grafite); }

/* Campo de busca (topo da busca e 404) */
.da-busca {
	display: flex;
	gap: 8px;
	max-width: 560px;
	margin-top: 20px;
}

.da-busca input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	padding: 12px 20px;
	border: 2px solid var(--da-lilas);
	border-radius: 999px;
	background: var(--da-branco);
	font: 400 16px/1.3 var(--da-fonte-texto);
}

.da-busca input[type="search"]:focus {
	border-color: var(--da-violeta);
	outline: none;
}

.da-busca button {
	flex: 0 0 auto;
	padding: 12px 24px;
	border: 0;
	border-radius: 999px;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	font: 700 15px/1 var(--da-fonte-texto);
	cursor: pointer;
}

.da-busca button:hover {
	background: #F5B935;
}

/* 404: o número grande fica entre a trilha e o título */
.da-404 .da-arq__topo .da-arq__largura {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.da-404 .da-arq__trilha {
	order: -2;
}

.da-404 .da-busca {
	width: 100%;
}

.da-404__codigo {
	order: -1;
	margin: 12px 0 0;
	color: var(--da-violeta);
	font: 400 96px/1 var(--da-fonte-impacto);
}

.da-404 .da-arq__lista {
	padding-top: 8px;
}

/* Sidebar do blog (Aparência > Widgets > Sidebar do Blog) */
.da-arq__sidebar {
	display: flex;
	flex-direction: column;
	gap: 24px;
	min-width: 0;
}

.da-arq__lista--sidebar .da-arq__sidebar {
	padding-top: 32px;
}

.da-widget {
	padding: 20px;
	border: 1px solid #EFE8F8;
	border-radius: var(--da-raio-card);
	background: var(--da-branco);
}

.da-widget:has(.da-ad),
.da-widget:has(.da-loja) {
	padding: 0;
	border: 0;
	background: transparent;
}

.da-arq .da-widget h2,
.da-arq .da-widget .da-widget__title {
	margin: 0 0 14px;
	color: var(--da-roxo);
	font: 400 22px/1.15 var(--da-fonte-impacto);
	letter-spacing: 0;
	text-transform: uppercase;
}

.da-arq .da-widget h2::before {
	content: "";
	display: inline-block;
	width: 0.42em;
	height: 0.42em;
	margin-right: 0.35em;
	border-radius: 50%;
	background: var(--da-amarelo);
	vertical-align: 0.14em;
}

.da-widget .wp-block-group {
	margin: 0;
}

/* Pesquisa */
.da-widget .wp-block-search__inside-wrapper {
	display: flex;
	gap: 8px;
}

.da-widget .wp-block-search__input {
	min-width: 0;
	padding: 10px 16px;
	border: 2px solid var(--da-lilas);
	border-radius: 999px;
	font: 400 15px/1.3 var(--da-fonte-texto);
}

.da-widget .wp-block-search__button {
	margin: 0;
	padding: 10px 18px;
	border: 0;
	border-radius: 999px;
	background: var(--da-violeta);
	color: var(--da-branco);
	font: 600 14px/1 var(--da-fonte-texto);
	cursor: pointer;
}

/* Siga a gente */
.da-siga {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.da-arq a.da-siga__btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 48px;
	padding: 10px 18px;
	border-radius: 12px;
	background: linear-gradient(45deg, #F58529, #DD2A7B 55%, #8134AF);
	color: var(--da-branco);
	font: 700 15px/1.2 var(--da-fonte-texto);
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.da-arq a.da-siga__btn:hover {
	transform: translateY(-2px);
	box-shadow: var(--da-sombra-hover);
}

.da-siga__btn small {
	font-weight: 500;
	font-size: 13px;
	opacity: 0.9;
}

/* Posts recentes (bloco com miniatura) */
.da-widget .wp-block-latest-posts {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0;
	padding: 0;
}

.da-widget .wp-block-latest-posts li {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	column-gap: 12px;
	align-items: center;
	margin: 0;
}

.da-widget .wp-block-latest-posts__featured-image {
	grid-row: span 2;
	float: none !important;
	margin: 0 !important;
}

.da-widget .wp-block-latest-posts__featured-image img {
	display: block;
	width: 72px;
	height: 72px;
	border-radius: 10px;
	object-fit: cover;
}

.da-arq .da-widget .wp-block-latest-posts__post-title {
	display: -webkit-box;
	overflow: hidden;
	color: var(--da-grafite);
	font: 700 14px/1.35 var(--da-fonte-titulo);
	text-decoration: none;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.da-arq .da-widget .wp-block-latest-posts__post-title:hover {
	color: var(--da-violeta);
}

.da-widget .wp-block-latest-posts__post-date {
	color: var(--da-cinza-texto);
	font: 500 12px/1.4 var(--da-fonte-texto);
}

/* Categorias e nuvem de tags como etiquetas */
.da-widget .wp-block-categories,
.da-widget .wp-block-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.da-arq .da-widget .wp-block-categories a,
.da-arq .da-widget .wp-block-tag-cloud a {
	display: inline-block;
	margin: 0;
	padding: 5px 11px;
	border-radius: 999px;
	background: var(--da-cinza-fundo);
	color: var(--da-grafite);
	font: 600 13px/1.3 var(--da-fonte-texto) !important;
	text-decoration: none;
}

.da-arq .da-widget .wp-block-categories a:hover,
.da-arq .da-widget .wp-block-tag-cloud a:hover {
	filter: brightness(0.92);
}

.da-arq .da-widget .cat-item-19 a { background: var(--da-cat-achadinhos); color: var(--da-branco); }
.da-arq .da-widget .cat-item-20 a { background: var(--da-cat-cupons); }
.da-arq .da-widget .cat-item-21 a { background: var(--da-cat-guias); color: var(--da-branco); }
.da-arq .da-widget .cat-item-22 a { background: var(--da-cat-seguranca); color: var(--da-branco); }
.da-arq .da-widget .cat-item-23 a { background: var(--da-cat-vender); color: var(--da-branco); }
.da-arq .da-widget .cat-item-24 a { background: var(--da-cat-reviews); color: var(--da-branco); }
.da-arq .da-widget .cat-item-25 a { background: var(--da-cat-casa); }
.da-arq .da-widget .cat-item-26 a { background: var(--da-cat-tech); }

.da-arq .da-widget .wp-block-tag-cloud a:hover {
	background: var(--da-lilas);
}

/* Publicidade e loja na sidebar */
.da-arq__sidebar .da-ad--300x250 {
	width: 100%;
}

.da-loja {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	padding: 22px;
	border-radius: var(--da-raio-card);
	background: linear-gradient(135deg, var(--da-cat-casa), var(--da-cat-seguranca));
	color: var(--da-branco);
}

.da-arq .da-loja .da-loja__titulo {
	margin: 0;
	color: var(--da-branco);
	font: 800 20px/1.2 var(--da-fonte-titulo);
	text-transform: none;
}

.da-arq .da-loja .da-loja__titulo::before {
	content: none;
}

.da-loja p {
	margin: 0;
	font: 400 14px/1.5 var(--da-fonte-texto);
}

.da-arq a.da-loja__btn {
	padding: 12px 22px;
	border-radius: 999px;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	font: 700 14px/1 var(--da-fonte-texto);
	text-decoration: none;
}

/* ---------- Post ---------- */
.da-post .da-post__cabeca {
	padding-bottom: 120px;
}

.da-post__intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
	max-width: 900px;
	margin-top: 16px;
}

.da-arq .da-post__titulo {
	margin: 0;
	color: var(--da-grafite);
	font: 800 44px/1.15 var(--da-fonte-titulo);
	letter-spacing: -0.01em;
	text-transform: none;
}

.da-post__linha-fina {
	margin: 0;
	color: var(--da-cinza-texto);
	font: 400 19px/1.55 var(--da-fonte-texto);
}

.da-post__meta strong {
	color: var(--da-grafite);
	font-weight: 600;
}

.da-post__capa {
	margin-top: -96px;
	margin-bottom: 0;
}

.da-post__capa img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 620px;
	aspect-ratio: 16 / 9;
	border-radius: 16px;
	box-shadow: var(--da-sombra-card);
	object-fit: cover;
}

.da-post__capa figcaption {
	margin-top: 8px;
	color: var(--da-cinza-texto);
	font: 400 13px/1.4 var(--da-fonte-texto);
	text-align: right;
}

.da-post__corpo {
	padding-top: 40px;
}

.da-post__corpo--sidebar {
	display: grid;
	grid-template-columns: minmax(0, 760px) 320px;
	justify-content: space-between;
	gap: 56px;
}

.da-post__corpo:not(.da-post__corpo--sidebar) .da-post__coluna {
	max-width: 760px;
	margin: 0 auto;
}

.da-post__corpo .da-arq__sidebar {
	padding-top: 0;
}

/* Texto do post */
.da-post__conteudo {
	color: var(--da-grafite);
	font: 400 17px/1.7 var(--da-fonte-texto);
}

.da-post__conteudo > :first-child {
	margin-top: 0;
}

.da-post__conteudo p,
.da-post__conteudo ul,
.da-post__conteudo ol {
	margin: 0 0 1.2em;
}

.da-post__conteudo ul,
.da-post__conteudo ol {
	padding-left: 1.4em;
}

.da-post__conteudo li + li {
	margin-top: 0.4em;
}

.da-arq .da-post__conteudo h2 {
	margin: 1.8em 0 0.6em;
	color: var(--da-roxo);
	font: 800 28px/1.25 var(--da-fonte-titulo);
	letter-spacing: -0.01em;
	text-transform: none;
}

.da-arq .da-post__conteudo h3 {
	margin: 1.5em 0 0.5em;
	color: var(--da-grafite);
	font: 700 22px/1.3 var(--da-fonte-titulo);
	letter-spacing: 0;
	text-transform: none;
}

.da-arq .da-post__conteudo .da-box .da-box__title {
	margin: 0 0 8px;
	font-size: 18px;
}

.da-arq .da-post__conteudo .da-box--cta .da-box__title {
	color: var(--da-branco);
}

.da-post__conteudo a:not(.wp-block-button__link) {
	color: var(--da-violeta);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.da-post__conteudo a:not(.wp-block-button__link):hover {
	color: var(--da-roxo);
}

.da-post__conteudo figure {
	margin: 2em 0;
}

.da-post__conteudo img {
	height: auto;
	border-radius: var(--da-raio-img);
}

.da-post__conteudo figcaption {
	margin-top: 8px;
	color: var(--da-cinza-texto);
	font-size: 13px;
	text-align: center;
}

.da-post__conteudo blockquote {
	margin: 1.6em 0;
	padding: 4px 0 4px 20px;
	border-left: 4px solid var(--da-amarelo);
	font-style: italic;
}

/* Tags, autor e anterior/próximo */
.da-post__tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 36px;
	font: 600 14px/1.3 var(--da-fonte-texto);
}

.da-arq .da-post__tags a {
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--da-cinza-fundo);
	color: var(--da-roxo);
	text-decoration: none;
}

.da-arq .da-post__tags a:hover {
	background: var(--da-lilas);
}

.da-autor {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	margin-top: 32px;
	padding: 24px;
	border-radius: var(--da-raio-card);
	background: var(--da-cinza-fundo);
}

.da-autor__foto {
	flex: 0 0 72px;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: var(--da-branco);
}

.da-autor__texto p {
	margin: 0 0 6px;
	color: var(--da-cinza-texto);
	font: 400 15px/1.55 var(--da-fonte-texto);
}

.da-autor .da-autor__nome {
	color: var(--da-grafite);
	font: 800 18px/1.3 var(--da-fonte-titulo);
}

.da-arq a.da-autor__link {
	color: var(--da-violeta);
	font: 700 14px/1.3 var(--da-fonte-texto);
	text-decoration: none;
}

.da-arq a.da-autor__link:hover {
	text-decoration: underline;
}

.da-post__nav {
	margin-top: 32px;
}

.da-post__nav .nav-links {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.da-post__nav .nav-next {
	grid-column: 2;
	text-align: right;
}

.da-arq .da-post__nav a {
	display: flex;
	flex-direction: column;
	gap: 6px;
	height: 100%;
	padding: 18px 20px;
	border: 2px solid #EFE8F8;
	border-radius: var(--da-raio-card);
	color: var(--da-grafite);
	text-decoration: none;
	transition: border-color 0.2s ease;
}

.da-arq .da-post__nav a:hover {
	border-color: var(--da-violeta);
}

.da-post__nav-rotulo {
	color: var(--da-violeta);
	font: 700 13px/1.3 var(--da-fonte-texto);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.da-post__nav-titulo {
	font: 700 16px/1.35 var(--da-fonte-titulo);
}

.da-post__relacionados {
	padding-top: 32px;
}

/* Comentários (comments.php do Hello Elementor) */
.da-post__comentarios {
	max-width: 760px;
	margin-top: 40px;
	font-family: var(--da-fonte-texto);
}

.da-arq .da-post__comentarios h2,
.da-arq .da-post__comentarios h3 {
	color: var(--da-roxo);
	font: 400 26px/1.2 var(--da-fonte-impacto);
	letter-spacing: 0;
	text-transform: uppercase;
}

.da-post__comentarios input[type="text"],
.da-post__comentarios input[type="email"],
.da-post__comentarios input[type="url"],
.da-post__comentarios textarea {
	width: 100%;
	padding: 12px 16px;
	border: 2px solid var(--da-lilas);
	border-radius: 12px;
	font: 400 15px/1.4 var(--da-fonte-texto);
}

.da-post__comentarios .form-submit input[type="submit"] {
	padding: 14px 28px;
	border: 0;
	border-radius: 999px;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	font: 700 15px/1 var(--da-fonte-texto);
	cursor: pointer;
}

@media (max-width: 1024px) {
	.da-post__corpo--sidebar {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px;
	}

	.da-arq__lista--sidebar .da-arq__sidebar {
		padding-top: 0;
	}
}

@media (max-width: 767px) {
	.da-404__codigo {
		font-size: 72px;
	}

	.da-post .da-post__cabeca {
		padding-bottom: 72px;
	}

	.da-post__capa {
		margin-top: -56px;
	}

	.da-post__capa img {
		border-radius: 12px;
	}

	.da-arq .da-post__titulo {
		font-size: 30px;
	}

	.da-post__linha-fina {
		font-size: 17px;
	}

	.da-post__conteudo {
		font-size: 16px;
	}

	.da-arq .da-post__conteudo h2 {
		font-size: 24px;
	}

	.da-arq .da-post__conteudo h3 {
		font-size: 19px;
	}

	.da-post__nav .nav-links {
		grid-template-columns: minmax(0, 1fr);
	}

	.da-post__nav .nav-next {
		grid-column: 1;
	}

	.da-autor {
		flex-direction: column;
	}
}

/* ==========================================================================
   13. Páginas institucionais (Elementor): Sobre, Contato, Anuncie e textos legais
   Classes colocadas em Avançado > Classes CSS dos widgets e containers.
   ========================================================================== */
.da-pg-trilha p {
	margin: 0;
	color: var(--da-cinza-texto);
	font: 500 13px/1.4 var(--da-fonte-texto);
}

.da-pg-trilha a {
	color: var(--da-violeta);
	text-decoration: none;
}

.da-pg-trilha a:hover {
	text-decoration: underline;
}

.da-pg-sub {
	max-width: 760px;
}

.da-pg-sub p {
	margin: 0;
	font-size: 18px;
	line-height: 1.6;
}

/* Texto corrido (Editor de texto com a classe "da-texto") */
.da-texto p,
.da-texto ul,
.da-texto ol {
	margin: 0 0 1.1em;
}

.da-texto > .elementor-widget-container > :last-child,
.da-texto > :last-child {
	margin-bottom: 0;
}

.da-texto ul,
.da-texto ol {
	padding-left: 1.4em;
}

.da-texto li + li {
	margin-top: 0.4em;
}

.da-texto a {
	color: var(--da-violeta);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.da-texto a:hover {
	color: var(--da-roxo);
}

.da-texto h2 {
	margin: 1.8em 0 0.6em;
	color: var(--da-roxo);
	font: 800 24px/1.3 var(--da-fonte-titulo);
	letter-spacing: 0;
	text-transform: none;
}

.da-texto--legal p,
.da-texto--legal li {
	font-size: 17px;
	line-height: 1.7;
}

.da-texto--legal p:first-child {
	font-size: 19px;
	line-height: 1.6;
}

.da-texto--nota p {
	color: var(--da-cinza-texto);
	font-size: 15px;
	line-height: 1.6;
}

/* Cards */
.da-pg-card {
	border: 1px solid #EFE8F8;
	border-radius: var(--da-raio-card);
	box-shadow: var(--da-sombra-card);
}

.da-pg-card--roxo {
	border: 0;
}

.da-pg-card .elementor-widget-button {
	align-self: flex-start;
}

.da-pg-h3 .elementor-heading-title {
	text-transform: none;
	letter-spacing: 0;
}

.da-pg-img img {
	width: 100%;
	aspect-ratio: 4 / 3;
	border-radius: 16px;
	box-shadow: var(--da-sombra-card);
	object-fit: cover;
}

/* Caixas com ícone */
.da-ibox {
	height: 100%;
	padding: 26px 24px;
	border-radius: var(--da-raio-card);
	background: var(--da-branco);
	box-shadow: var(--da-sombra-card);
}

.da-ibox .elementor-icon {
	font-size: 22px !important;
	padding: 0.8em !important;
}

.da-ibox .elementor-icon-box-title {
	margin: 4px 0 8px;
	text-transform: none;
	letter-spacing: 0;
}

.da-ibox .elementor-icon-box-description {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
}

/* Números (widget Contador) */
.da-pg-numero {
	padding: 28px 16px;
	border-radius: var(--da-raio-card);
	background: var(--da-cinza-fundo);
}

.da-pg-numero .elementor-counter-number-wrapper {
	font-size: 56px;
	line-height: 1;
}

/* Lista com ícones (Anuncie) */
.da-pg-lista .elementor-icon-list-text {
	font-size: 16px;
}

/* Chamada final */
.da-pg-cta .elementor-heading-title {
	text-align: center;
}

.da-pg-cta__texto {
	max-width: 620px;
}

.da-pg-cta__texto p {
	margin: 0;
	font-size: 17px;
	text-align: center;
}

/* Formulário de contato (Contact Form 7, formulário "Contato") */
.da-form {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.da-form p {
	margin: 0;
}

.da-form br {
	display: none;
}

.da-form label {
	display: flex;
	flex-direction: column;
	gap: 6px;
	color: var(--da-grafite);
	font: 600 14px/1.3 var(--da-fonte-texto);
}

.da-form input[type="text"],
.da-form input[type="email"],
.da-form select,
.da-form textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 12px 18px;
	border: 2px solid var(--da-lilas);
	background: var(--da-branco);
	color: var(--da-grafite);
	font: 400 16px/1.4 var(--da-fonte-texto);
}

.da-form input[type="text"],
.da-form input[type="email"],
.da-form select {
	border-radius: 999px;
}

.da-form textarea {
	height: 160px;
	border-radius: 16px;
	resize: vertical;
}

.da-form input:focus,
.da-form select:focus,
.da-form textarea:focus {
	border-color: var(--da-violeta);
	outline: none;
}

.da-form__aceite,
.da-form__aceite label {
	display: inline;
	color: var(--da-cinza-texto);
	font: 400 14px/1.5 var(--da-fonte-texto);
}

.da-form__aceite a {
	color: var(--da-violeta);
}

.da-form .wpcf7-submit {
	align-self: flex-start;
	padding: 14px 28px;
	border: 0;
	border-radius: 999px;
	background: var(--da-amarelo);
	color: var(--da-grafite);
	font: 700 15px/1 var(--da-fonte-texto);
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.da-form .wpcf7-submit:hover {
	transform: translateY(-2px);
	box-shadow: var(--da-sombra-hover);
}

.da-form-contato .wpcf7-response-output {
	margin: 14px 0 0 !important;
	border-radius: 12px;
}

@media (max-width: 767px) {
	.da-pg-sub p {
		font-size: 16px;
	}

	.da-pg-numero .elementor-counter-number-wrapper {
		font-size: 44px;
	}
}

/* ==========================================================================
   14. Compartilhar (inc/compartilhar.php): ícones no topo do post e
   barra completa no fim do texto, com cores de cada rede.
   ========================================================================== */
.da-share {
	--da-share-cor: var(--da-violeta);
}

.da-share__lista {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.da-arq .da-share__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 40px;
	height: 40px;
	padding: 0 12px;
	border: 0;
	border-radius: 999px;
	background: var(--da-share-cor);
	color: var(--da-branco);
	font: 600 14px/1 var(--da-fonte-texto);
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.da-arq .da-share__btn:hover {
	color: var(--da-branco);
	transform: translateY(-2px);
	box-shadow: var(--da-sombra-hover);
	filter: brightness(1.06);
}

.da-share__btn svg {
	width: 16px;
	height: 16px;
	fill: currentColor;
}

.da-share__btn--whatsapp { --da-share-cor: #178440; }
.da-share__btn--facebook { --da-share-cor: #1671E5; }
.da-share__btn--x { --da-share-cor: #000000; }
.da-share__btn--telegram { --da-share-cor: #1A7CAB; }
.da-share__btn--threads { --da-share-cor: #101010; }
.da-share__btn--pinterest { --da-share-cor: #E60023; }
.da-share__btn--linkedin { --da-share-cor: #0A66C2; }
.da-share__btn--email { --da-share-cor: var(--da-cinza-texto); }
.da-share__btn--copiar { --da-share-cor: var(--da-roxo); }
.da-share__btn--mais { --da-share-cor: var(--da-amarelo); }

.da-arq .da-share__btn--mais,
.da-arq .da-share__btn--mais:hover {
	color: var(--da-grafite);
}

/* Topo do post: só ícones, pequenos */
.da-share--topo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.da-share__rotulo {
	color: var(--da-cinza-texto);
	font: 600 13px/1 var(--da-fonte-texto);
}

.da-share--topo .da-share__btn {
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	font-size: 13px;
}

.da-share--topo .da-share__btn:not(.da-share__btn--copiar):not(.da-share__btn--mais) {
	width: 36px;
	padding: 0;
}

/* Fim do post: caixa com nomes das redes */
.da-share--fim {
	margin-top: 36px;
	padding: 24px;
	border: 2px solid #EFE8F8;
	border-radius: var(--da-raio-card);
}

.da-share__titulo {
	margin: 0 0 14px;
	color: var(--da-roxo);
	font: 800 19px/1.3 var(--da-fonte-titulo);
}

.da-share__dica {
	margin: 14px 0 0;
	color: var(--da-cinza-texto);
	font: 400 14px/1.5 var(--da-fonte-texto);
}

.da-share__aviso {
	margin: 0;
	color: #00804F;
	font: 600 14px/1.4 var(--da-fonte-texto);
}

.da-share__aviso:not(:empty) {
	margin-top: 10px;
}

@media (max-width: 767px) {
	.da-share--fim {
		padding: 20px 16px;
	}

	.da-share--fim .da-share__btn {
		padding: 0 12px;
		font-size: 13px;
	}
}

/* ==========================================================================
   15. Acessibilidade (Fase 8)
   As cores de categoria acima foram escurecidas um pouco para o texto branco
   dos selos passar no contraste mínimo (WCAG AA, 4,5:1).
   ========================================================================== */

/* Links da trilha sublinhados: não dependem só da cor para aparecer. */
.da-arq__trilha a,
.da-pg-trilha a {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Cor de fundo por baixo do degradê dos botões (o Kit usa amarelo como padrão). */
.elementor-widget.da-btn-secundario .elementor-button,
.da-btn--secundario {
	background-color: var(--da-roxo);
}

.elementor-widget.da-social-btn--instagram .elementor-button {
	background-color: #C1356F;
}
