/* brands.css */
.tax-product_brand .brand-description{overflow:hidden;zoom:1}.tax-product_brand .brand-description img.brand-thumbnail{width:25%;float:right}.tax-product_brand .brand-description .text{width:72%;float:left}.widget_brand_description img{box-sizing:border-box;width:100%;max-width:none;height:auto;margin:0 0 1em}ul.brand-thumbnails{margin-left:0;margin-bottom:0;clear:both;list-style:none}ul.brand-thumbnails:before{clear:both;content:"";display:table}ul.brand-thumbnails:after{clear:both;content:"";display:table}ul.brand-thumbnails li{float:left;margin:0 3.8% 1em 0;padding:0;position:relative;width:22.05%}ul.brand-thumbnails.fluid-columns li{width:auto}ul.brand-thumbnails:not(.fluid-columns) li.first{clear:both}ul.brand-thumbnails:not(.fluid-columns) li.last{margin-right:0}ul.brand-thumbnails.columns-1 li{width:100%;margin-right:0}ul.brand-thumbnails.columns-2 li{width:48%}ul.brand-thumbnails.columns-3 li{width:30.75%}ul.brand-thumbnails.columns-5 li{width:16.95%}ul.brand-thumbnails.columns-6 li{width:13.5%}.brand-thumbnails li img{box-sizing:border-box;width:100%;max-width:none;height:auto;margin:0}@media screen and (max-width:768px){ul.brand-thumbnails:not(.fluid-columns) li{width:48%!important}ul.brand-thumbnails:not(.fluid-columns) li.first{clear:none}ul.brand-thumbnails:not(.fluid-columns) li.last{margin-right:3.8%}ul.brand-thumbnails:not(.fluid-columns) li:nth-of-type(odd){clear:both}ul.brand-thumbnails:not(.fluid-columns) li:nth-of-type(even){margin-right:0}}.brand-thumbnails-description li{text-align:center}.brand-thumbnails-description li .term-thumbnail img{display:inline}.brand-thumbnails-description li .term-description{margin-top:1em;text-align:left}#brands_a_z h3:target{text-decoration:underline}ul.brands_index{list-style:none outside;overflow:hidden;zoom:1}ul.brands_index li{float:left;margin:0 2px 2px 0}ul.brands_index li a,ul.brands_index li span{border:1px solid #ccc;padding:6px;line-height:1em;float:left;text-decoration:none}ul.brands_index li span{border-color:#eee;color:#ddd}ul.brands_index li a:hover{border-width:2px;padding:5px;text-decoration:none}ul.brands_index li a.active{border-width:2px;padding:5px}div#brands_a_z a.top{border:1px solid #ccc;padding:4px;line-height:1em;float:right;text-decoration:none;font-size:.8em}
/* tema.css */
/**
 * Base do tema. Só tokens (--wp--preset--* / --wp--custom--*): nenhuma cor fixa.
 * Os tokens vêm do theme.json, com as cores do cliente injetadas do banco.
 */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

/* Página curta (entrar, 404, carrinho vazio): o conteúdo cresce e o rodapé fica no fim da tela. */
body {
	display: flex;
	flex-direction: column;
	min-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
	min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px)); /* A barra do WP (logado) empurra o html. */
	margin: 0;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--text);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body.cdw-trava-rolagem {
	overflow: hidden;
}

img,
svg {
	max-width: 100%;
}

[hidden] {
	display: none !important;
}

:focus-visible {
	outline: 2px solid var(--wp--preset--color--focus);
	outline-offset: 2px;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.cdw-pular {
	position: absolute;
	top: var(--wp--preset--spacing--space-8);
	left: var(--wp--preset--spacing--space-8);
	z-index: calc(var(--wp--custom--z-index--modal) + 1);
	padding: var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-16);
	border-radius: var(--wp--custom--radius--control);
	background: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand-contrast);
	font-weight: var(--wp--custom--weight--bold);
	text-decoration: none;
	transform: translateY(-200%);
}

.cdw-pular:focus {
	transform: none;
}

.cdw-conteudo {
	flex: 1 0 auto;
}

.cdw-conteudo:focus {
	outline: none;
}

.cdw-container {
	width: 100%;
	max-width: var(--wp--custom--layout--container-max);
	margin-inline: auto;
	padding-inline: var(--wp--custom--layout--container-x);
}

.cdw-pagina {
	padding-block: var(--wp--preset--spacing--space-48);
}

.cdw-pagina__titulo {
	margin: 0 0 var(--wp--preset--spacing--space-24);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--heading-lg);
	font-weight: var(--wp--custom--weight--heavy);
	line-height: var(--wp--custom--line-height--heading-lg);
	letter-spacing: -0.01em;
}

/* Ícone (Fundamentos/Ícone): altura = font-size de quem usa (igual ao glyph do Figma). */
.cdw-icone {
	display: block;
	flex-shrink: 0;
	width: auto;
	height: 1em;
	overflow: visible;
}

/* Botão (Fundamentos/Botão · type=simple) */
.cdw-botao {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--space-8);
	min-height: 50px;
	padding: var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-24);
	border: 0;
	border-radius: var(--wp--custom--radius--control);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: 1.5;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition:
		background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		box-shadow var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-botao .cdw-icone {
	font-size: 16px;
}

.cdw-botao--brand {
	background: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand-contrast);
}

.cdw-botao--brand:hover {
	background: var(--wp--preset--color--brand-hover);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25);
}

/* Botão na cor de destaque (Sua Loja › Identidade › Cor de destaque). Ex.: "Confira" da faixa de campanha. */
.cdw-botao--destaque {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--accent-contrast);
}

.cdw-botao--destaque:hover {
	background: color-mix(in srgb, var(--wp--preset--color--accent) 90%, #000);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25);
}

/* Fundamentos/Botão · color=white (sobre foto ou fundo escuro) */
.cdw-botao--branco {
	border: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--ink);
}

.cdw-botao--branco:hover {
	background: var(--wp--preset--color--surface-hover);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25);
}

/* Fundamentos/Botão · ink ("Escrever avaliação") */
.cdw-botao--ink {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--surface);
}

.cdw-botao--ink:hover {
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25);
}

/* Fundamentos/Botão · contorno (Filtrar / Ordenar do catálogo) */
.cdw-botao--contorno {
	border: 1px solid var(--wp--preset--color--ink);
	background: transparent;
	color: var(--wp--preset--color--ink);
}

.cdw-botao--contorno:hover {
	background: var(--wp--preset--color--surface-hover);
}

/* Botão do WhatsApp: o verde do WhatsApp (custom.marcas.whatsapp), igual ao botão flutuante, ao
   ícone dos cards e ao da seção Atendimento. Texto branco (whatsappTexto), decisão do usuário em
   27/10/2026 — o contraste fica em 2:1, abaixo do WCAG (ver PENDENCIAS.md H3). */
.cdw-botao--whatsapp {
	background: var(--wp--custom--marcas--whatsapp);
	color: var(--wp--custom--marcas--whatsapp-texto);
}

.cdw-botao--whatsapp:hover {
	background: var(--wp--custom--marcas--whatsapp-hover);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25);
}

/* Fundamentos/Botão · color=success (confirmações) */
.cdw-botao--success {
	background: var(--wp--preset--color--success);
	color: var(--wp--preset--color--surface);
}

.cdw-botao--success:hover {
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25);
	filter: brightness(0.92);
}

/* ---------- Seção padrão da home ----------
 * Mesmas medidas em todas as seções com título (Figma):
 * desktop padding 48/24 · gap 24 · título Heading Medium 24/1.2 (600) · "Ver todos" Label 16 brand-text + seta 12.
 * mobile (< 782px) padding 32/16.
 */
.cdw-secao__conteiner {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-24);
	max-width: var(--wp--custom--layout--container-max);
	margin: 0 auto;
	padding: var(--wp--preset--spacing--space-48) var(--wp--preset--spacing--space-24);
}

.cdw-secao__cabecalho {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-secao__titulo {
	min-width: 0;
	margin: 0;
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--display);
	/* Figma: font-size/heading-md = 24. */
	font-size: 1.5rem;
	font-weight: var(--wp--custom--weight--heavy);
	line-height: 1.2;
}

.cdw-secao__link {
	display: inline-flex;
	flex-shrink: 0;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	padding: 12px 0;
	color: var(--wp--preset--color--brand-text);
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: 1.5;
	text-decoration: none;
	white-space: nowrap;
}

.cdw-secao__link .cdw-icone {
	width: 15px;
	font-size: 12px;
}

.cdw-secao__link:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}

/* Linha que vira rolagem lateral no celular (vídeos, avaliações, blog, Instagram). */
@media (max-width: 781px) {
	.cdw-secao__conteiner {
		padding: var(--wp--preset--spacing--space-32) var(--wp--preset--spacing--space-16);
	}

	/* :is(ul, ol, div) sobe a especificidade: as listas das seções (.cdw-videos__lista etc.) zeram
	   margin e padding e, sem isso, a fileira parava 16 px antes da borda (Figma: vai até a borda). */
	:is(ul, ol, div).cdw-rolagem {
		display: flex;
		margin-inline: calc(-1 * var(--wp--preset--spacing--space-16));
		padding-inline: var(--wp--preset--spacing--space-16);
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: var(--wp--preset--spacing--space-16);
		scrollbar-width: none;
	}

	.cdw-rolagem::-webkit-scrollbar {
		display: none;
	}

	.cdw-rolagem > * {
		flex-shrink: 0;
		scroll-snap-align: start;
	}
}

/* Produto/Breadcrumb (catálogo e página de produto): Caption 14 ink-muted, itens separados por "·". */
.cdw-migalhas {
	display: flex;
	flex-wrap: wrap;
	gap: 0 var(--wp--preset--spacing--space-8);
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1.5;
}

.cdw-migalhas a {
	color: inherit;
	text-decoration: none;
}

.cdw-migalhas a:hover {
	color: var(--wp--preset--color--brand-text);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Produto/Avaliação: cinco estrelas de 16, gap 4; cheias em accent. */
.cdw-estrelas {
	display: flex;
	gap: var(--wp--preset--spacing--space-4);
	color: var(--wp--preset--color--line);
	font-size: 16px;
}

.cdw-estrelas .is-cheia {
	color: var(--wp--preset--color--accent);
}

/* Campo de texto (Formulário/Campo de texto · Tipo=Linha) */
.cdw-campo {
	width: 100%;
	height: 48px;
	padding: 0 var(--wp--preset--spacing--space-16);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--control);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--ink);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.5;
	appearance: none;
}

.cdw-campo::placeholder {
	color: var(--wp--preset--color--ink-muted);
	opacity: 1;
}

.cdw-campo:focus {
	outline: none;
	border: 2px solid var(--wp--preset--color--focus);
	padding: 0 calc(var(--wp--preset--spacing--space-16) - 1px);
}

/* Aviso de seção sem conteúdo (só administradores veem). */
.cdw-banner-vazio {
	padding: var(--wp--preset--spacing--space-16) var(--wp--preset--spacing--space-24);
	border-bottom: 1px dashed var(--wp--preset--color--line-strong);
	background: var(--wp--preset--color--surface-alt);
	text-align: center;
}

.cdw-banner-vazio a {
	color: var(--wp--preset--color--brand-text);
	font-weight: var(--wp--custom--weight--bold);
}

/* Telas largas: SEM escala, de propósito.
   O Figma desenha a Home em 1200 px ("Tela=Desktop", 276:16522) e o site fica 1:1 com ele em qualquer tela
   (conteúdo centralizado, faixas cheias). Em 02/10/2026 testamos ampliar com `html { zoom }` em degraus
   (1,05x a 1,5x em monitores de 1600 a 3000 px); o usuário preferiu o tamanho do Figma e o bloco foi removido.
   Se um dia quiser ampliar de novo, o caminho é esse (ver a mensagem #14 a #17 do LEIA_ME.md). */

/* Página não encontrada (404.php). Sem Figma próprio: título como Contato/Sobre (40 px, 32 no celular),
   busca com o campo e o botão padrão, atalhos em botões de contorno e categorias em etiquetas. */
.cdw-404 {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-16);
	align-items: flex-start;
	padding-block: var(--wp--preset--spacing--space-64) var(--wp--preset--spacing--space-96);
}

/* Alinhado à esquerda da grade (como o logo), com a largura de leitura limitada. */
.cdw-404 > * {
	max-width: 720px;
}

.cdw-404__codigo {
	margin: 0;
	color: var(--wp--preset--color--brand-text);
	font-size: var(--wp--preset--font-size--overline);
	font-weight: var(--wp--custom--weight--bold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.cdw-404__titulo {
	margin: 0;
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--display);
	font-size: 2.5rem;
	font-weight: var(--wp--custom--weight--heavy);
	letter-spacing: -0.02em;
	line-height: 1.1;
	text-wrap: balance;
}

.cdw-404__texto {
	max-width: 60ch;
	margin: 0;
	color: var(--wp--preset--color--ink-muted);
	line-height: 1.5;
}

.cdw-404__busca {
	display: flex;
	gap: var(--wp--preset--spacing--space-8);
	width: 100%;
	margin-top: var(--wp--preset--spacing--space-16);
}

.cdw-404__busca .cdw-campo {
	flex: 1 1 auto;
	min-width: 0;
	height: 50px;
	border-radius: var(--wp--custom--radius--control);
}

.cdw-404__atalhos {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-404__categorias {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-16);
	margin-top: var(--wp--preset--spacing--space-24);
}

.cdw-404__subtitulo {
	margin: 0;
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--heading-sm);
	font-weight: var(--wp--custom--weight--heavy);
	line-height: 1.3;
}

.cdw-404__categorias ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--space-8);
	margin: 0;
	padding: 0;
	list-style: none;
}

.cdw-404__categorias a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0 var(--wp--preset--spacing--space-16);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--control);
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--label);
	text-decoration: none;
}

.cdw-404__categorias a:hover {
	border-color: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand-text);
}

@media (max-width: 782px) {
	.cdw-404 {
		padding-block: var(--wp--preset--spacing--space-32) var(--wp--preset--spacing--space-64);
	}

	.cdw-404__titulo {
		font-size: 2rem;
	}

	.cdw-404__busca .cdw-botao {
		padding-inline: var(--wp--preset--spacing--space-16);
	}

	.cdw-404__atalhos .cdw-botao {
		flex: 1 1 auto;
	}
}

/* Tracinho embaixo dos títulos das seções: só aparece quando a loja define a cor
   "titulo-detalhe" no arquivo de cores (o PHP escreve também a altura e o espaço). */
.cdw-secao__titulo,
.cdw-vitrine__titulo,
.cdw-categorias__titulo {
	position: relative;
	padding-bottom: var(--wp--custom--faixa--titulo-detalhe-espaco, 0);
}

.cdw-secao__titulo::after,
.cdw-vitrine__titulo::after,
.cdw-categorias__titulo::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 48px;
	height: var(--wp--custom--faixa--titulo-detalhe-altura, 0);
	border-radius: 2px;
	background: var(--wp--custom--faixa--titulo-detalhe, transparent);
}

.cdw-categorias--centro .cdw-categorias__titulo::after {
	left: 50%;
	transform: translateX(-50%);
}

/* cabecalho.css */
/**
 * Cabeçalho — Figma "linha-principal" (node 128:1367).
 *
 * Medidas do Dev Mode:
 *   linha       padding 16/24 · borda inferior 1px line · fundo surface
 *   logo-e-menu gap 40 · logo 210×70
 *   menu        gap 4 · item padding 8/16 · Label 16/1.5 (500) · chevron 16
 *   item hover  fundo brand-subtle · texto brand · pill · chevron-up
 *   ações       gap 20 · ícone 20px em caixa 25×25 · carrinho 32×32
 *   contador    left 14 · top -2 · min 18×18 · padding 1/5 · 11px · brand / brand-contrast
 *
 * Só tokens: as cores mudam pelo painel Sua Loja.
 */

/* ---------- Estrutura ---------- */

.cdw-cabecalho {
	position: relative;
	z-index: var(--wp--custom--z-index--header);
	background: var(--wp--preset--color--surface);
}

.cdw-cabecalho--fixo {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
}

/* Até 600 px a barra do WordPress rola com a página (não fica fixa): sem desconto no topo. */
@media (max-width: 600px) {
	.cdw-cabecalho--fixo {
		top: 0;
	}
}

.cdw-cabecalho__linha {
	background: var(--wp--preset--color--surface);
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.cdw-cabecalho__conteudo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--space-24);
	width: 100%;
	max-width: var(--wp--custom--layout--container-max);
	margin-inline: auto;
	padding: var(--wp--preset--spacing--space-16) var(--wp--preset--spacing--space-24);
}

.cdw-cabecalho__logo-e-menu {
	display: flex;
	align-items: center;
	gap: 40px;
	min-width: 0;
}

/* ---------- Logo (Fundamentos/Logo do cliente · 210×70) ---------- */

.cdw-cabecalho__logo {
	display: flex;
	flex-shrink: 0;
	width: 210px;
	height: 70px;
}

.cdw-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	/* Figma: pt 21 / pb 24 → arte 1,5px acima do centro. */
	padding-bottom: 3px;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.cdw-logo__img {
	display: block;
	width: auto;
	height: auto;
	max-width: 210px;
	max-height: 46px;
	object-fit: contain;
}

.cdw-logo__img--padrao {
	width: 198px;
	height: 29px;
}

.cdw-logo__texto {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--heading-sm);
	font-weight: var(--wp--custom--weight--heavy);
	line-height: var(--wp--custom--line-height--heading-sm);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ---------- Menu (Menu/Item) ---------- */

.cdw-nav--desktop {
	min-width: 0;
}

.cdw-menu,
.cdw-submenu__lista,
.cdw-submenu__sublista,
.cdw-gaveta__atalhos {
	margin: 0;
	padding: 0;
	list-style: none;
}

.cdw-nav--desktop .cdw-menu {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-4);
	white-space: nowrap;
}

.cdw-menu__item {
	position: relative;
}

.cdw-menu__link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--space-4);
	margin: 0;
	padding: var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-16);
	border: 0;
	border-radius: var(--wp--custom--radius--full);
	background: transparent;
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--text);
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: 1.5;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition:
		background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-menu__chevron {
	font-size: 16px;
	transition: transform var(--wp--custom--motion--duracao-padrao) var(--wp--custom--motion--ease-padrao);
}

/* Estado hover/aberto (Menu/Item · color=ink · hover=true).
 * Texto em brand-text (= brand quando a cor passa 4,5:1; com o azul padrão é
 * idêntico ao Figma). Com uma cor clara de cliente, o texto continua legível. */
.cdw-menu__link:hover,
.cdw-menu__item.is-aberto > .cdw-menu__link,
.cdw-menu__link[aria-current="page"],
.cdw-menu__item.is-atual > .cdw-menu__link {
	background: var(--wp--preset--color--brand-subtle);
	color: var(--wp--preset--color--brand-text);
}

.cdw-menu__item.is-aberto > .cdw-menu__link .cdw-menu__chevron {
	transform: rotate(180deg);
}

@media (hover: hover) {
	.cdw-nav--desktop .cdw-menu__item--pai:hover > .cdw-menu__link {
		background: var(--wp--preset--color--brand-subtle);
		color: var(--wp--preset--color--brand-text);
	}

	.cdw-nav--desktop .cdw-menu__item--pai:hover > .cdw-menu__link .cdw-menu__chevron {
		transform: rotate(180deg);
	}
}

/* ---------- Submenu (desktop): mesmo padrão da lista do Formulário/Select ---------- */

.cdw-nav--desktop .cdw-submenu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: var(--wp--custom--z-index--dropdown);
	/* Ponte invisível entre o item e o painel: o hover não se perde. */
	padding-top: var(--wp--preset--spacing--space-8);
	visibility: hidden;
	opacity: 0;
	transform: translateY(-4px);
	transition:
		opacity var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		visibility 0s linear var(--wp--custom--motion--duracao-rapida);
}

.cdw-nav--desktop .cdw-menu__item:nth-last-child(-n+2) > .cdw-submenu {
	left: auto;
	right: 0;
}

.cdw-nav--desktop .cdw-menu__item.is-aberto > .cdw-submenu {
	visibility: visible;
	opacity: 1;
	transform: none;
	transition-delay: 0s;
}

@media (hover: hover) {
	.cdw-nav--desktop .cdw-menu__item--pai:hover > .cdw-submenu {
		visibility: visible;
		opacity: 1;
		transform: none;
		transition-delay: 0s;
	}
}

.cdw-nav--desktop .cdw-submenu__painel {
	min-width: 240px;
	padding: var(--wp--preset--spacing--space-8);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--preset--shadow--float);
}

.cdw-submenu__ver-tudo,
.cdw-submenu__link,
.cdw-submenu__sublink {
	display: block;
	padding: 12px var(--wp--preset--spacing--space-16);
	border-radius: var(--wp--custom--radius--full);
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.5;
	text-decoration: none;
	white-space: nowrap;
	transition:
		background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-submenu__ver-tudo {
	color: var(--wp--preset--color--brand-text);
	font-weight: var(--wp--custom--weight--bold);
}

a.cdw-submenu__ver-tudo:hover,
a.cdw-submenu__link:hover,
a.cdw-submenu__sublink:hover,
.cdw-submenu [aria-current="page"] {
	background: var(--wp--preset--color--brand-subtle);
	color: var(--wp--preset--color--brand-text);
}

/* Terceiro nível: o painel vira colunas (grupo = título + links). */
.cdw-nav--desktop .cdw-submenu__lista:has(.cdw-submenu__sublista) {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(180px, auto);
	gap: var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-24);
}

.cdw-submenu__item--grupo > .cdw-submenu__link,
.cdw-nav--desktop .cdw-submenu__lista:has(.cdw-submenu__sublista) > .cdw-submenu__item > .cdw-submenu__link {
	font-weight: var(--wp--custom--weight--bold);
}

.cdw-submenu__link--titulo {
	cursor: default;
}

.cdw-submenu__sublink {
	padding-block: 6px;
	color: var(--wp--preset--color--ink-muted);
}

/* ---------- Ações (ícones) ---------- */

.cdw-cabecalho__acoes {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	gap: 20px;
}

.cdw-cabecalho__acao {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 25px;
	height: 25px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--ink);
	font-size: 20px;
	text-decoration: none;
	cursor: pointer;
	transition: color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-cabecalho__acao:hover,
.cdw-cabecalho__acao[aria-expanded="true"] {
	color: var(--wp--preset--color--brand-text);
}

.cdw-cabecalho__abrir-gaveta {
	display: none;
}

/* Header/Carrinho */
.cdw-carrinho {
	position: relative;
	display: block;
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
	transition: color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-carrinho:hover {
	color: var(--wp--preset--color--brand-text);
}

.cdw-carrinho__icone {
	position: absolute;
	/* Figma: caixa 25×25 em top 4; glyph de 20px centralizado nela. */
	top: 6.5px;
	left: 0;
	font-size: 20px;
}

.cdw-carrinho__contador {
	position: absolute;
	top: -2px;
	left: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	min-height: 18px;
	padding: 1px 5px;
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand-contrast);
	font-size: 11px;
	font-weight: var(--wp--custom--weight--regular);
	line-height: 1.5;
	white-space: nowrap;
}

/* A busca (campo no lugar do menu + sugestões) vive em assets/css/busca.css. */

/* ---------- Gaveta (menu no celular / menu que não cabe) ---------- */

.cdw-gaveta {
	position: fixed;
	inset: 0;
	z-index: var(--wp--custom--z-index--modal);
}

/* A gaveta vive dentro do cabeçalho (z-index 100). Com ela aberta, o cabeçalho sobe acima da
   barra do WordPress (#wpadminbar, 99999) para a gaveta não ficar com o topo escondido. */
.cdw-cabecalho:has(.cdw-gaveta.is-aberta) {
	z-index: 100000;
}

.cdw-gaveta__fundo {
	position: absolute;
	inset: 0;
	background: color-mix(in srgb, var(--wp--preset--color--ink) 40%, transparent);
	opacity: 0;
	transition: opacity var(--wp--custom--motion--duracao-padrao) var(--wp--custom--motion--ease-padrao);
}

.cdw-gaveta__painel {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	width: min(360px, 88vw);
	overflow-y: auto;
	overscroll-behavior: contain;
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--preset--shadow--float);
	transform: translateX(-100%);
	transition: transform var(--wp--custom--motion--duracao-padrao) var(--wp--custom--motion--ease-padrao);
}

.cdw-gaveta.is-aberta .cdw-gaveta__fundo {
	opacity: 1;
}

.cdw-gaveta.is-aberta .cdw-gaveta__painel {
	transform: none;
}

.cdw-gaveta__topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--space-16);
	padding: var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-16);
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.cdw-logo--gaveta {
	justify-content: flex-start;
	width: auto;
	height: 56px;
	padding-bottom: 0;
}

.cdw-logo--gaveta .cdw-logo__img {
	max-width: 180px;
	max-height: 32px;
}

.cdw-nav--gaveta {
	padding: var(--wp--preset--spacing--space-8);
}

.cdw-nav--gaveta .cdw-menu__link {
	justify-content: space-between;
	width: 100%;
	min-height: 48px;
	padding: 12px var(--wp--preset--spacing--space-16);
	text-align: left;
}

.cdw-nav--gaveta .cdw-submenu {
	display: none;
	padding: 0 0 var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-16);
}

.cdw-nav--gaveta .cdw-menu__item.is-aberto > .cdw-submenu {
	display: block;
}

.cdw-nav--gaveta .cdw-submenu__ver-tudo,
.cdw-nav--gaveta .cdw-submenu__link,
.cdw-nav--gaveta .cdw-submenu__sublink {
	white-space: normal;
}

.cdw-nav--gaveta .cdw-submenu__sublista {
	padding-left: var(--wp--preset--spacing--space-16);
}

.cdw-gaveta__voltar {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 12px var(--wp--preset--spacing--space-16);
	border: 0;
	border-radius: var(--wp--custom--radius--full);
	background: transparent;
	color: var(--wp--preset--color--ink);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	text-align: left;
	cursor: pointer;
}

.cdw-gaveta__voltar .cdw-icone {
	font-size: 16px;
}

.cdw-gaveta__voltar:hover {
	background: var(--wp--preset--color--brand-subtle);
	color: var(--wp--preset--color--brand-text);
}

.cdw-gaveta__atalhos {
	margin-top: auto;
	padding: var(--wp--preset--spacing--space-8);
	border-top: 1px solid var(--wp--preset--color--line);
}

.cdw-gaveta__atalho {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 48px;
	padding: 12px var(--wp--preset--spacing--space-16);
	border-radius: var(--wp--custom--radius--full);
	color: var(--wp--preset--color--ink);
	font-weight: var(--wp--custom--weight--bold);
	text-decoration: none;
}

.cdw-gaveta__atalho:hover {
	background: var(--wp--preset--color--brand-subtle);
	color: var(--wp--preset--color--brand-text);
}

.cdw-gaveta__atalho .cdw-icone {
	font-size: 20px;
}

.cdw-menu__vazio {
	margin: 0;
	font-size: var(--wp--preset--font-size--caption);
}

.cdw-menu__vazio a {
	color: var(--wp--preset--color--brand-text);
}

/* ---------- Modo compacto ----------
 * Celular (< 782px, breakpoint "tablet") OU quando o menu do cliente não cabe
 * na largura (o JS mede e adiciona .is-compacto). */

.cdw-cabecalho.is-compacto .cdw-cabecalho__conteudo {
	padding: 12px var(--wp--preset--spacing--space-16);
}

.cdw-cabecalho.is-compacto .cdw-cabecalho__logo-e-menu {
	gap: 12px;
}

.cdw-cabecalho.is-compacto .cdw-nav--desktop,
.cdw-cabecalho.is-compacto .cdw-cabecalho__acao--desktop {
	display: none;
}

.cdw-cabecalho.is-compacto .cdw-cabecalho__abrir-gaveta {
	display: flex;
}

/* Celular: a caixa visual continua o ícone; a área de toque passa de 25/32 para 44. */
.cdw-cabecalho.is-compacto .cdw-cabecalho__acao,
.cdw-cabecalho.is-compacto .cdw-carrinho {
	width: 44px;
	height: 44px;
}

.cdw-cabecalho.is-compacto .cdw-carrinho__icone {
	top: 12px;
	left: 9.5px;
}

.cdw-cabecalho.is-compacto .cdw-carrinho__contador {
	top: 3.5px;
	left: 23.5px;
}

.cdw-cabecalho.is-compacto .cdw-cabecalho__logo {
	width: auto;
	height: 48px;
}

.cdw-cabecalho.is-compacto .cdw-logo {
	padding-bottom: 0;
}

.cdw-cabecalho.is-compacto .cdw-logo__img {
	max-width: 160px;
	max-height: 28px;
}

.cdw-cabecalho.is-compacto .cdw-logo__img--padrao {
	width: 160px;
	height: auto;
}

@media (prefers-reduced-motion: reduce) {
	.cdw-cabecalho *,
	.cdw-gaveta * {
		transition-duration: 0s !important;
	}
}

/* newsletter.css */
/**
 * Global/Newsletter — Figma 132:1644.
 *
 * Faixa brand-subtle de ponta a ponta · padding 64/24 · duas metades (mín. 300), gap 32/64
 *   título Heading Large 32/1.1 (600, −1%) · subtítulo Body 16 ink-muted, gap 8
 *   campo de 56 px (padding 16, raio radius-control, borda line) + botão brand de 50 px, gap 8
 *   aviso de privacidade Caption 14 ink-muted com link sublinhado, 4 px abaixo.
 * Quebra sozinha em telas estreitas (flex-wrap); no celular o campo ocupa a linha e o botão fica embaixo.
 */

.cdw-newsletter {
	/* --wp--custom--faixa--*: cores da faixa pelo arquivo de cores (Sua Loja › Cores › Avançado). Sem elas, o padrão. */
	background: var(--wp--custom--faixa--newsletter-fundo, var(--wp--preset--color--brand-subtle));
}

.cdw-newsletter__conteiner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--space-32) var(--wp--preset--spacing--space-64);
	max-width: var(--wp--custom--layout--container-max);
	margin: 0 auto;
	padding: var(--wp--preset--spacing--space-64) var(--wp--preset--spacing--space-24);
}

.cdw-newsletter__oferta,
.cdw-newsletter__form {
	display: flex;
	flex: 1 0 0;
	flex-direction: column;
	min-width: min(300px, 100%);
}

.cdw-newsletter__oferta {
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-newsletter__form {
	gap: var(--wp--preset--spacing--space-4);
	margin: 0;
}

.cdw-newsletter__titulo {
	margin: 0;
	color: var(--wp--custom--faixa--newsletter-texto, var(--wp--preset--color--ink));
	font-family: var(--wp--preset--font-family--display);
	/* Figma: Heading Large = 32/1.1, −1%. */
	font-size: 2rem;
	font-weight: var(--wp--custom--weight--heavy);
	line-height: 1.1;
	letter-spacing: -0.01em;
}

.cdw-newsletter__subtitulo,
.cdw-newsletter__aviso,
.cdw-newsletter__retorno {
	margin: 0;
	/* ink, não ink-muted: o fundo desta faixa é a cor da marca clareada e muda de loja para loja;
	   com o texto secundário o contraste ficava abaixo de 4,5:1 em várias cores de marca. */
	color: var(--wp--custom--faixa--newsletter-texto, var(--wp--preset--color--ink));
	line-height: 1.5;
}

.cdw-newsletter__subtitulo {
	font-size: var(--wp--preset--font-size--body);
}

.cdw-newsletter__linha {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-newsletter__campo {
	flex: 1 0 0;
	min-width: min(220px, 100%);
	height: 56px;
}

.cdw-newsletter__isca {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.cdw-newsletter__aviso {
	font-size: var(--wp--preset--font-size--caption);
}

.cdw-newsletter__aviso a {
	color: inherit;
	text-decoration: underline;
	text-underline-position: from-font;
}

.cdw-newsletter__retorno {
	margin-top: var(--wp--preset--spacing--space-8);
	padding: var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-16);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--success);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: var(--wp--custom--weight--bold);
}

.cdw-newsletter__retorno.is-erro {
	color: var(--wp--preset--color--error);
}

.cdw-newsletter__form.is-enviando .cdw-botao {
	opacity: 0.6;
	pointer-events: none;
}

/* Mobile (Figma 276:18551): mesmas medidas do desktop — padding 64/24, título 32 e botão do tamanho
   do texto, alinhado à esquerda embaixo do campo. */
@media (max-width: 781px) {
	.cdw-newsletter__campo {
		flex-basis: 100%;
	}
}

/* Botão da newsletter: cor própria pelo arquivo de cores (o hover é calculado pelo PHP). Sem ela, o botão da marca. */
.cdw-newsletter .cdw-botao--brand {
	background: var(--wp--custom--faixa--newsletter-botao, var(--wp--preset--color--brand));
	color: var(--wp--custom--faixa--newsletter-botao-texto, var(--wp--preset--color--brand-contrast));
}

.cdw-newsletter .cdw-botao--brand:hover {
	background: var(--wp--custom--faixa--newsletter-botao-hover, var(--wp--preset--color--brand-hover));
}

/* popup-boas-vindas.css */
/* Pop-up de boas-vindas: cupom de desconto na primeira compra (inc/sua-loja/popup-boas-vindas.php). */

.cdw-popup-bv {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}

.cdw-popup-bv[hidden] {
	display: none;
}

.cdw-popup-bv__fundo {
	position: absolute;
	inset: 0;
	background: rgba(23, 32, 51, 0.55);
}

.cdw-popup-bv__caixa {
	position: relative;
	width: 100%;
	max-width: 420px;
	background: var(--wp--preset--color--surface, #fff);
	color: var(--wp--preset--color--ink, #172033);
	border-radius: 16px;
	padding: 32px 28px 24px;
	box-shadow: 0 24px 60px rgba(23, 32, 51, 0.25);
	animation: cdw-popup-bv-entrar 0.25s ease-out;
}

@keyframes cdw-popup-bv-entrar {
	from {
		opacity: 0;
		transform: translateY(12px) scale(0.98);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

.cdw-popup-bv__fechar {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--ink, #172033);
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.cdw-popup-bv__fechar .cdw-icone {
	font-size: 20px;
}

.cdw-popup-bv__fechar:hover {
	background: var(--wp--preset--color--surface-hover, #f1f2f3);
}

.cdw-popup-bv__titulo {
	margin: 0 0 8px;
	padding-right: 36px;
	font-size: var(--wp--preset--font-size--heading-md, 22px);
	line-height: 1.2;
}

.cdw-popup-bv__texto {
	margin: 0 0 20px;
	color: var(--wp--preset--color--ink-muted, #667085);
}

.cdw-popup-bv__linha {
	margin: 0 0 10px;
}

.cdw-popup-bv__form .cdw-campo {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	border: 1px solid var(--wp--preset--color--line, #e4e7ec);
	border-radius: 10px;
	font-size: 15px;
}

.cdw-popup-bv__isca {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.cdw-popup-bv__botao {
	width: 100%;
	margin-top: 4px;
	padding: 13px;
	border-radius: 10px;
	font-weight: 600;
	cursor: pointer;
}

.cdw-popup-bv__erro {
	margin: 10px 0 0;
	color: var(--wp--preset--color--error, #ba3a3a);
	font-size: 13px;
}

.cdw-popup-bv__erro[hidden] {
	display: none;
}

.cdw-popup-bv__aviso {
	margin: 14px 0 0;
	font-size: 12px;
	color: var(--wp--preset--color--ink-muted, #667085);
}

.cdw-popup-bv__aviso a {
	color: inherit;
}

.cdw-popup-bv__cupom {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 18px 0 10px;
	padding: 14px 16px;
	border: 1.5px dashed var(--wp--preset--color--brand, #366cf5);
	border-radius: 10px;
	background: var(--wp--preset--color--brand-subtle, rgba(54, 108, 245, 0.08));
}

.cdw-popup-bv__cupom[hidden] {
	display: none;
}

.cdw-popup-bv__cupom-codigo {
	flex: 1;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.04em;
}

.cdw-popup-bv__copiar {
	flex-shrink: 0;
	padding: 8px 12px;
	border-radius: 8px;
	font-size: 13px;
	cursor: pointer;
}

.cdw-popup-bv__validade {
	margin: 0;
	font-size: 13px;
	color: var(--wp--preset--color--ink-muted, #667085);
}

@media (max-width: 480px) {
	.cdw-popup-bv__caixa {
		padding: 26px 20px 20px;
	}
}

/* rodape.css */
/**
 * Global/Rodapé — Figma 61:458.
 *
 * Tokens próprios (theme.json › custom.rodape): bg, line, text, textMuted. Trocar os
 * quatro muda o rodapé inteiro (ex.: rodapé escuro) sem tocar neste arquivo.
 *
 * Medidas: borda de cima 1px · padding 64 / container-x · blocos com gap 48
 *   colunas: flex-wrap, gap 40/32 · marca mín. 280 (gap 16) · links mín. 160 (gap 8) · contato mín. 220 (gap 16)
 *   título de coluna: Overline 12 maiúsculo (+8%) · links Caption 14 com área de toque (padding 10 0)
 *   redes: ícone 20 em área de 44, gap 8 · contato: ícone 16 brand-text + Caption 14
 *   faixa pagamento/envio/segurança: borda de cima, padding-top 32, gap 32/48, blocos mín. 220 (gap 16)
 *   pagamento 43,75×30, gap 8 · envio: ícone 20 + Caption 14 · selo 109×44, borda 1px, raio 7
 *   aviso legal: Caption 14 text-muted, largura toda
 *   base: borda de cima, padding-top 24 · texto Caption 14 · links legais sublinhados, gap 4/16 · crédito 207×17.
 * As colunas quebram sozinhas em telas estreitas (flex-wrap).
 */

.cdw-rodape {
	border-top: 1px solid var(--wp--custom--rodape--line);
	background: var(--wp--custom--rodape--bg);
	color: var(--wp--custom--rodape--text-muted);
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1.5;
}

.cdw-rodape__conteiner {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-48);
	max-width: var(--wp--custom--layout--container-max);
	margin: 0 auto;
	padding: var(--wp--preset--spacing--space-64) var(--wp--preset--spacing--space-24);
}

.cdw-rodape ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.cdw-rodape a {
	color: inherit;
	text-decoration: none;
}

.cdw-rodape a:hover {
	color: var(--wp--custom--rodape--text);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ---------- Colunas ---------- */

.cdw-rodape__colunas {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 40px var(--wp--preset--spacing--space-32);
}

.cdw-rodape__marca {
	display: flex;
	flex: 1 0 0;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--space-16);
	min-width: min(280px, 100%);
}

.cdw-rodape__logo {
	/* Figma: caixa do logo 210×70, arte centralizada (mesma do cabeçalho). */
	width: 210px;
	max-width: 100%;
	height: 70px;
}

.cdw-rodape__logo .cdw-logo__texto {
	color: var(--wp--custom--rodape--text);
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.25rem;
	font-weight: var(--wp--custom--weight--heavy);
}

.cdw-rodape__descricao {
	margin: 0;
}

.cdw-rodape__redes {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-rodape__rede {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	color: var(--wp--custom--rodape--text) !important;
	font-size: 20px;
}

.cdw-rodape__rede:hover {
	color: var(--wp--preset--color--brand-text) !important;
}

.cdw-rodape__coluna {
	display: flex;
	flex: 1 0 0;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-8);
	min-width: min(160px, 100%);
}

.cdw-rodape__coluna--contato {
	gap: var(--wp--preset--spacing--space-16);
	min-width: min(220px, 100%);
}

.cdw-rodape__titulo {
	margin: 0;
	color: var(--wp--custom--rodape--text);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--overline);
	font-weight: var(--wp--custom--weight--regular);
	line-height: 1.5;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.cdw-rodape__links {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-rodape__links a {
	display: block;
	padding: 10px 0;
}

.cdw-rodape__contatos {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-16);
}

/* Figma: ícone 20×20 centralizado na altura do texto (no endereço de 2 linhas fica no meio). */
.cdw-rodape__contato {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-4);
	overflow-wrap: anywhere;
}

.cdw-rodape__contato .cdw-icone {
	flex-shrink: 0;
	width: 20px;
	color: var(--wp--preset--color--brand-text);
	font-size: 16px;
}

/* ---------- Pagamento · envio · segurança ---------- */

.cdw-rodape__faixa {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--space-32) var(--wp--preset--spacing--space-48);
	padding-top: var(--wp--preset--spacing--space-32);
	border-top: 1px solid var(--wp--custom--rodape--line);
}

.cdw-rodape__bloco {
	display: flex;
	flex: 1 0 0;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-16);
	min-width: min(220px, 100%);
}

.cdw-rodape__pagamentos,
.cdw-rodape__selos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-rodape__pagamentos img {
	display: block;
	width: 43.75px;
	height: 30px;
}

.cdw-rodape__envios {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px var(--wp--preset--spacing--space-16);
}

/* Figma: selo de 25 px de altura (ícone numa caixa 25×25, texto centralizado). */
.cdw-rodape__envio {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	min-height: 25px;
	color: var(--wp--custom--rodape--text);
}

.cdw-rodape__envio .cdw-icone {
	width: 25px;
	font-size: 20px;
}

/* Figma (selo/…): 109,22×43,82 · padding 5,232/10,464 · borda 0,654 #D0D5DD (CINZA/300, não é token
   do tema) · raio 7,396 · arte 88,29×33,36 com raio 8,681, alinhada no topo à esquerda. */
.cdw-rodape__selo {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 109.22px;
	height: 43.82px;
	padding: 5.232px 10.464px;
	border: 0.654px solid #d0d5dd;
	border-radius: 7.396px;
	background: var(--wp--preset--color--surface);
}

.cdw-rodape__selo img {
	display: block;
	flex-shrink: 0;
	width: 88.29px;
	max-width: none;
	height: 33.36px;
	border-radius: 8.681px;
	object-fit: cover;
}

/* Figma: só o "Site protegido" (arte mais larga, 3,4:1) fica inteiro dentro da caixa. */
.cdw-rodape__selo img[src*="site-protegido"] {
	object-fit: contain;
}

/* ---------- Base ---------- */

.cdw-rodape__base {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px var(--wp--preset--spacing--space-16);
	padding-top: var(--wp--preset--spacing--space-24);
	border-top: 1px solid var(--wp--custom--rodape--line);
}

.cdw-rodape__legal {
	display: flex;
	flex: 1 0 0;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--space-4) var(--wp--preset--spacing--space-16);
	min-width: min(340px, 100%);
}

.cdw-rodape__razao {
	min-width: min(280px, 100%);
	margin: 0;
}

/* Figma "links legais": Política de privacidade · Trocas e devoluções, sublinhados. */
.cdw-rodape__legais {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--space-4) var(--wp--preset--spacing--space-8);
}

.cdw-rodape__legais li + li::before {
	content: "·";
	margin-right: var(--wp--preset--spacing--space-8);
}

.cdw-rodape .cdw-rodape__legais a {
	display: inline-block;
	padding-block: 10px; /* Área de toque de 41 px, como os links das colunas. */
	text-decoration: underline;
	text-underline-offset: 3px;
}

.cdw-rodape__aviso {
	margin: 0;
}

.cdw-rodape__credito {
	display: block;
	flex-shrink: 0;
	border-radius: var(--wp--custom--radius--sm);
}

.cdw-rodape__credito img {
	display: block;
	/* Figma: 207,35×17,44. */
	width: 207.35px;
	height: 17.44px;
}

.cdw-rodape__credito:focus-visible {
	outline: 2px solid var(--wp--preset--color--focus);
	outline-offset: 4px;
}

/* Mobile (Figma 276:18562): mesmas medidas do desktop — padding 64/24 e blocos com gap 48.
   A área de toque dos links cresce por cima do vão, sem mover o texto. */
@media (max-width: 781px) {
	.cdw-rodape__links a,
	.cdw-rodape .cdw-rodape__legais a,
	.cdw-rodape__contato a,
	.cdw-rodape__credito {
		position: relative;
	}

	.cdw-rodape__links a::after,
	.cdw-rodape .cdw-rodape__legais a::after,
	.cdw-rodape__contato a::after,
	.cdw-rodape__credito::after {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 100%;
		height: 44px;
		transform: translate(-50%, -50%);
	}

	/* Os legais ficam lado a lado, com um vão de 20 px: o clique ocupa esse vão. */
	.cdw-rodape .cdw-rodape__legais a::after {
		width: calc(100% + 20px);
	}
}

/* whatsapp-flutuante.css */
/**
 * Botão flutuante do WhatsApp (inc/sua-loja/whatsapp-flutuante.php).
 * Distância das bordas e tamanho são do tema (24px e 56px; 44px e 12px no celular). Saíram do
 * painel em 27/10/2026: em pixel o lojista desencaixava o botão das barras fixas. As variáveis
 * (--cdw-whats-flut-dist e --cdw-whats-flut-tam,
 * em px); o ícone acompanha o tamanho do botão (metade do diâmetro). O resto é fixo aqui.
 */

.cdw-whats-flut {
	position: fixed;
	z-index: 9000;
	bottom: var(--cdw-whats-flut-dist, 24px);
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--cdw-whats-flut-tam, 56px);
	height: var(--cdw-whats-flut-tam, 56px);
	border-radius: var(--wp--custom--radius--full, 999px);
	background: var(--wp--custom--marcas--whatsapp, #25d366);
	color: var(--wp--custom--marcas--whatsapp-contraste, #fff) !important;
	box-shadow: 0 6px 16px rgba(23, 32, 51, 0.24);
	text-decoration: none !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease, visibility 0s linear 0s;
}

/* Com uma gaveta, painel ou janela aberta o botão some: ele ficava por cima da gaveta de filtros
   e cobria o "Limpar filtros" (revisão mobile de 27/10/2026). Vale para:
   - gavetas que travam a rolagem (filtros do catálogo, menu do celular): body.cdw-trava-rolagem;
   - janelas (ordenar, foto ampliada, avaliar): dialog[open];
   - resumo aberto na finalização (celular), sugestões da busca, CATEGORIAS e painéis do topo
     (a prévia do carrinho fica de fora: ela abre só com o mouse). */
body.cdw-trava-rolagem .cdw-whats-flut,
body:has(dialog[open], .cdw-ck__lateral.is-aberto, .cdw-busca-painel:not([hidden]), [data-cdw-categorias]:not([hidden]), .cdw-util__painel:not([hidden]):not(.cdw-previa)) .cdw-whats-flut {
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.15s ease, visibility 0s linear 0.15s;
}

.cdw-whats-flut--direita {
	right: var(--cdw-whats-flut-dist, 24px);
}

.cdw-whats-flut--esquerda {
	left: var(--cdw-whats-flut-dist, 24px);
}

.cdw-whats-flut:hover,
.cdw-whats-flut:focus-visible {
	transform: scale(1.06);
	box-shadow: 0 8px 20px rgba(23, 32, 51, 0.32);
}

.cdw-whats-flut__icone {
	width: calc(var(--cdw-whats-flut-tam, 56px) * 0.5);
	height: calc(var(--cdw-whats-flut-tam, 56px) * 0.5);
}

/* Não sobrepõe o pop-up de boas-vindas nem o editor de blocos. */
body.wp-admin .cdw-whats-flut {
	display: none;
}

/* Celular com barra fixa no rodapé (compra da página do produto: 74 px; total do carrinho: 72 px):
   o botão sobe para 12 px acima dela — antes ficava por cima do "Comprar". */
@media (max-width: 781px) {
	body.cdw-tem-barra {
		--cdw-whats-flut-barra: 74px;
	}

	body:has(.cdw-pc-barra) {
		--cdw-whats-flut-barra: 72px;
	}

	body.cdw-tem-barra .cdw-whats-flut,
	body:has(.cdw-pc-barra) .cdw-whats-flut {
		bottom: calc(var(--cdw-whats-flut-barra) + 12px);
	}

	/* Menor e mais no canto: não cobre a faixa de vantagens nem os selos do rodapé.
	   A subida acima das barras de compra/carrinho continua na regra de cima (mais específica). */
	.cdw-whats-flut {
		width: 44px;
		height: 44px;
		bottom: 12px;
		transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease, bottom 0.2s ease, visibility 0s linear 0s;
	}

	.cdw-whats-flut--direita {
		right: 12px;
	}

	.cdw-whats-flut--esquerda {
		left: 12px;
	}

	.cdw-whats-flut__icone {
		width: 22px;
		height: 22px;
	}
}

/* cookies.css */
/**
 * Aviso de cookies — barra fixa no rodapé do site (inc/cookies.php, assets/js/cookies.js).
 */

.cdw-cookies {
	position: fixed;
	right: 16px;
	bottom: 16px;
	left: 16px;
	z-index: 9999;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	max-width: 760px;
	margin-inline: auto;
	padding: 18px 20px;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 14px;
	background: var(--wp--preset--color--surface);
	box-shadow: 0 10px 30px rgba(23, 32, 51, 0.14);
}

.cdw-cookies__texto {
	flex: 1 1 320px;
	margin: 0;
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1.5;
}

.cdw-cookies__texto a {
	color: var(--wp--preset--color--brand-text);
	font-weight: 600;
	text-decoration: underline;
}

.cdw-cookies__ok {
	flex: none;
	white-space: nowrap;
}

@media (max-width: 480px) {
	.cdw-cookies {
		right: 10px;
		bottom: 10px;
		left: 10px;
		padding: 16px;
	}

	.cdw-cookies__ok {
		width: 100%;
		text-align: center;
	}
}

/* cabecalho-utilidades.css */
/**
 * Cabeçalho: menus de utilidades (os dois cabeçalhos) e estrutura de duas linhas.
 * Figma: "Utilidades · exemplos" 144:2140 · Header/Cabeçalho "Duas linhas" 128:1333 (tablet 162:4848, mobile 150:2816)
 *        · "Menu · organização" 148:3024 (painel CATEGORIAS).
 *
 * Medidas do Dev Mode:
 *   Header/Utilidade   ícone 20 em caixa 25 + rótulo 14/1.5 + seta 8 · gap 8 · utilidades a 24
 *   painel             320 de largura · padding 24 · raio card · sombra float · 12 abaixo do gatilho
 *   contato            círculo 36 brand-subtle com ícone 14 brand · rótulo 12 ink-muted · valor 16 ink · linhas a 16
 *   conta              saudação 20/1.3 (600) · texto 14 ink-muted · botões 48 a 12 · links 16 com ícone 14 ink-muted
 *   prévia do carrinho foto 64 raio 8 · nome 14 · detalhe 12 ink-muted · preço 16 (500)
 *   linha principal    padding 16/24 · gap 32 · busca 48 de altura, fundo surface-alt, borda 1 line
 *   linha do menu      57 de altura · padding 8/24 · menu centralizado, gap 8 · CATEGORIAS Label 16 (500) + barras 20
 *   CATEGORIAS         organização do Figma Menu aberto · Painel 130:1376 (colunas · destaque · "Navegue por tudo"),
 *                      com estilo próprio: cartões de categoria com foto, destaque com selo, rodapé leve
 *
 * Só tokens: as cores mudam pelo painel Sua Loja.
 */

/* ---------- Utilidade: gatilho + painel ---------- */

.cdw-util {
	position: relative;
	display: flex;
	align-items: center;
}

.cdw-util__gatilho--rotulo {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--ink);
	font: inherit;
	font-size: var(--wp--preset--font-size--caption);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-util__gatilho--rotulo > .cdw-icone:first-child {
	flex: none;
	width: 25px;
	font-size: 20px;
}

.cdw-util__gatilho--rotulo .cdw-util__seta {
	font-size: 8px;
	transition: transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-util__gatilho--rotulo:hover,
.cdw-util__gatilho[aria-expanded="true"] {
	color: var(--wp--preset--color--brand-text);
}

.cdw-util__gatilho[aria-expanded="true"] .cdw-util__seta {
	transform: rotate(180deg);
}

.cdw-util__gatilho:focus-visible,
.cdw-categorias-gatilho:focus-visible {
	outline: 2px solid var(--wp--preset--color--focus);
	outline-offset: 4px;
	border-radius: var(--wp--custom--radius--sm);
}

.cdw-util__rotulo {
	max-width: 160px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cdw-util__painel {
	position: absolute;
	top: calc(100% + 12px);
	right: 0;
	z-index: var(--wp--custom--z-index--dropdown);
	width: 320px;
	max-width: calc(100vw - 32px);
	max-height: calc(100vh - 140px);
	padding: var(--wp--preset--spacing--space-24);
	overflow-y: auto;
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--preset--shadow--float);
	color: var(--wp--preset--color--ink);
	text-align: left;
	white-space: normal;
}

.cdw-util__painel[hidden],
.cdw-previa[hidden],
.cdw-catmenu[hidden] {
	display: none;
}

.cdw-util__titulo {
	margin: 0 0 var(--wp--preset--spacing--space-16);
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-util__contatos,
.cdw-util__links,
.cdw-previa__itens {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cdw-util__contatos {
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-util__contato {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.cdw-util__contato-icone {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--brand-subtle);
	color: var(--wp--preset--color--brand-text);
	font-size: 14px;
}

.cdw-util__contato-texto {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.cdw-util__contato-rotulo {
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--overline);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-util__contato-valor {
	overflow-wrap: anywhere;
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
}

a.cdw-util__contato:hover .cdw-util__contato-valor,
.cdw-util__link:hover,
.cdw-previa__nome:hover {
	color: var(--wp--preset--color--brand-text);
}

.cdw-util__saudacao {
	margin: 0 0 var(--wp--preset--spacing--space-4);
	font-size: var(--wp--preset--font-size--heading-sm);
	font-weight: var(--wp--custom--weight--heavy);
	line-height: var(--wp--custom--line-height--heading-sm);
}

.cdw-util__texto {
	margin: 0 0 var(--wp--preset--spacing--space-16);
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--caption);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-util__painel .cdw-util__botao {
	display: flex;
	width: 100%;
	margin-top: 12px;
}

.cdw-util__links {
	gap: var(--wp--preset--spacing--space-4);
	margin-top: var(--wp--preset--spacing--space-16);
	padding-top: var(--wp--preset--spacing--space-8);
	border-top: 1px solid var(--wp--preset--color--line);
}

/* Quem já entrou não tem os botões acima: a lista começa logo depois da saudação. */
.cdw-util__saudacao + .cdw-util__links {
	margin-top: 12px;
}

.cdw-util__link {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: var(--wp--preset--spacing--space-8) 0;
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
}

.cdw-util__link .cdw-icone {
	flex: none;
	width: 20px;
	color: var(--wp--preset--color--ink-muted);
	font-size: 14px;
}

/* Atendimento (Figma 144:2210): divisor e os links de dúvida, ícone ink-muted a 16 do texto. */
.cdw-util__contatos + .cdw-util__links--ajuda {
	margin-top: var(--wp--preset--spacing--space-16);
}

.cdw-util__titulo + .cdw-util__links--ajuda {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.cdw-util__links--ajuda .cdw-util__link {
	gap: var(--wp--preset--spacing--space-16);
}

/* ---------- Prévia do carrinho (abre com o mouse; no toque o ícone vai direto para o carrinho) ---------- */

.cdw-util--carrinho .cdw-previa {
	display: none;
	width: 340px;
}

@media (hover: hover) and (min-width: 782px) {
	/* Ao tirar o mouse, a prévia espera 0,6 s e some em 0,2 s (antes sumia na hora). */
	.cdw-util--carrinho .cdw-previa:not([hidden]) {
		display: block;
		visibility: hidden;
		opacity: 0;
		transition: opacity 0.2s ease 0.6s, visibility 0s linear 0.8s;
	}

	.cdw-util--carrinho:hover .cdw-previa:not([hidden]),
	.cdw-util--carrinho:focus-within .cdw-previa:not([hidden]) {
		visibility: visible;
		opacity: 1;
		transition-delay: 0s;
	}

	/* Ponte invisível entre o ícone e o painel: o mouse não "cai" no caminho. */
	.cdw-util--carrinho .cdw-previa::before {
		content: "";
		position: absolute;
		right: 0;
		bottom: 100%;
		left: 0;
		height: 12px;
	}
}

.cdw-previa__itens {
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-previa__item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.cdw-previa__foto {
	flex: none;
	width: 64px;
	height: 64px;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface-alt);
}

.cdw-previa__foto img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cdw-previa__dados {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.cdw-previa__nome {
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--caption);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
}

.cdw-previa__detalhe,
.cdw-previa__mais {
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--overline);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-previa__mais {
	margin: var(--wp--preset--spacing--space-8) 0 0;
}

.cdw-previa__preco {
	font-size: var(--wp--preset--font-size--body);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
}

/* Frete grátis na prévia: a mesma barra do carrinho (cdw_carrinho_frete_gratis_html()). */
.cdw-previa .cdw-pc-frete {
	margin-top: var(--wp--preset--spacing--space-16);
}

/* Produto/Frete grátis progressivo: 760×72, padding 16, gap 8, trilho de 8. */
.cdw-pc-frete {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-8);
	padding: var(--wp--preset--spacing--space-16);
	border-radius: 36px;
	background: var(--wp--preset--color--surface-alt);
}

.cdw-pc-frete__linha {
	display: flex;
	margin: 0;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: 1.5;
}

.cdw-pc-frete__linha .cdw-icone {
	margin-inline: 2px;
	color: var(--wp--preset--color--brand);
	font-size: 16px;
}

.cdw-pc-frete__trilho {
	height: 8px;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--line);
}

.cdw-pc-frete__trilho span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--wp--preset--color--brand);
	transition: width var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

/* Frete conquistado: o cartão pulsa (anel na cor da marca), o ícone bate e um brilho varre o trilho. */
.cdw-pc-frete__trilho span {
	position: relative;
}

@media (prefers-reduced-motion: no-preference) {
	.cdw-pc-frete.is-completo {
		animation: cdw-pc-frete-pulso 1.8s ease-out infinite;
	}

	.cdw-pc-frete.is-completo .cdw-icone {
		animation: cdw-pc-frete-bate 1.8s ease-in-out infinite;
	}

	.cdw-pc-frete.is-completo .cdw-pc-frete__trilho span::after {
		content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--wp--preset--color--surface) 70%, transparent), transparent);
		animation: cdw-pc-frete-varre 2.2s ease-in-out infinite;
	}
}

@keyframes cdw-pc-frete-pulso {
	0% {
		box-shadow: 0 0 0 0 color-mix(in srgb, var(--wp--preset--color--brand) 40%, transparent);
	}

	70%,
	100% {
		box-shadow: 0 0 0 14px color-mix(in srgb, var(--wp--preset--color--brand) 0%, transparent);
	}
}

@keyframes cdw-pc-frete-bate {
	0%,
	60%,
	100% {
		transform: scale(1);
	}

	30% {
		transform: scale(1.3);
	}
}

@keyframes cdw-pc-frete-varre {
	0%,
	15% {
		transform: translateX(-100%);
	}

	85%,
	100% {
		transform: translateX(100%);
	}
}

.cdw-previa__subtotal {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--space-16);
	margin: var(--wp--preset--spacing--space-16) 0 0;
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-previa__subtotal strong {
	color: var(--wp--preset--color--ink);
	font-weight: var(--wp--custom--weight--bold);
}

/* Carrinho vazio — Figma Header/Menu de utilidades · Tipo=Carrinho vazio (717:3204):
   360 de largura, padding 24, gap 16, tudo centralizado · ícone 24 ink-muted num círculo de 64
   surface-alt · título Label 16 ink · frase Caption 14 ink-muted (gap 8) · botão brand largura toda. */
.cdw-util--carrinho .cdw-previa--vazia {
	width: 360px;
	text-align: center;
}

@media (hover: hover) and (min-width: 782px) {
	.cdw-util--carrinho .cdw-previa--vazia:not([hidden]) {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: var(--wp--preset--spacing--space-16);
	}
}

.cdw-previa__vazio-icone {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--surface-alt);
	color: var(--wp--preset--color--ink-muted);
	font-size: 24px;
}

.cdw-previa__vazio-titulo,
.cdw-previa__vazio-texto {
	width: 100%;
	margin: 0;
	line-height: var(--wp--custom--line-height--body);
}

.cdw-previa__vazio-titulo {
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
}

/* Título e frase ficam a 8 um do outro (o resto do painel tem gap 16). */
.cdw-previa__vazio-texto {
	margin-top: calc(var(--wp--preset--spacing--space-8) - var(--wp--preset--spacing--space-16));
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--caption);
}

.cdw-previa--vazia .cdw-util__botao {
	margin-top: 0;
}

/* ---------- Estrutura de duas linhas ---------- */

.cdw-cabecalho--duas-linhas .cdw-cabecalho__conteudo {
	gap: var(--wp--preset--spacing--space-32);
}

.cdw-cabecalho--duas-linhas .cdw-cabecalho__logo-e-menu {
	flex: none;
}

.cdw-cabecalho--duas-linhas .cdw-cabecalho__acoes {
	flex: none;
	gap: var(--wp--preset--spacing--space-24);
}

.cdw-utilidades {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-24);
}

.cdw-cabecalho__conta-compacta {
	display: none;
}

/* Busca sempre visível: o campo ocupa o espaço entre o logo e as utilidades. */
.cdw-busca-caixa {
	position: relative;
	flex: 1;
	min-width: 0;
}

.cdw-cabecalho--duas-linhas .cdw-busca {
	position: static;
	display: flex;
	background: transparent;
}

.cdw-cabecalho--duas-linhas .cdw-busca__fechar {
	display: none;
}

.cdw-cabecalho--duas-linhas .cdw-busca__campo {
	padding: 0 17px;
	border: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--surface-alt);
	transition: background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-cabecalho--duas-linhas .cdw-busca__campo:focus-within {
	padding: 0 var(--wp--preset--spacing--space-16);
	border: 2px solid var(--wp--preset--color--focus);
	background: var(--wp--preset--color--surface);
}

/* Busca/Sugestões · Tipo=Compacto: 560 de largura, raio 24, sombra float, 5 abaixo do campo,
   alinhado à borda esquerda do campo (antes saía 76 px para a esquerda). */
.cdw-cabecalho--duas-linhas .cdw-busca-painel {
	top: calc(100% + 5px);
	right: auto;
	left: 0;
	z-index: var(--wp--custom--z-index--dropdown);
	width: 560px;
	max-width: calc(100vw - 32px);
	border-radius: var(--wp--custom--radius--container);
	box-shadow: var(--wp--preset--shadow--float);
}

.cdw-cabecalho--duas-linhas .cdw-busca-painel__corpo {
	flex-direction: column;
	align-items: stretch;
	gap: var(--wp--preset--spacing--space-24);
	padding: var(--wp--preset--spacing--space-24);
}

.cdw-cabecalho--duas-linhas .cdw-busca-painel__termos {
	flex: none;
}

.cdw-cabecalho--duas-linhas .cdw-busca-painel__bloco--recentes {
	display: none;
}

.cdw-cabecalho--duas-linhas .cdw-busca-painel__termos:not(:has(.cdw-busca-painel__chips)) {
	display: none;
}

/* Linha do menu */
.cdw-cabecalho__linha--menu {
	position: relative;
	/* --wp--custom--faixa--menu-*: cores da linha pelo arquivo de cores (Sua Loja › Cores › Avançado). Sem elas, o padrão. */
	background: var(--wp--custom--faixa--menu-fundo, var(--wp--preset--color--surface));
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item > .cdw-menu__link,
.cdw-cabecalho__linha--menu .cdw-categorias-gatilho {
	color: var(--wp--custom--faixa--menu-texto, var(--wp--preset--color--ink));
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item > .cdw-menu__link:hover,
.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item.is-aberto > .cdw-menu__link,
.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item > .cdw-menu__link[aria-current="page"],
.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item.is-atual > .cdw-menu__link {
	background: var(--wp--custom--faixa--menu-hover-fundo, var(--wp--preset--color--brand-subtle));
	color: var(--wp--custom--faixa--menu-hover-texto, var(--wp--preset--color--brand-text));
}

@media (hover: hover) {
	.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu__item--pai:hover > .cdw-menu__link {
		background: var(--wp--custom--faixa--menu-hover-fundo, var(--wp--preset--color--brand-subtle));
		color: var(--wp--custom--faixa--menu-hover-texto, var(--wp--preset--color--brand-text));
	}
}

.cdw-cabecalho__menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--space-8);
	width: 100%;
	max-width: var(--wp--custom--layout--container-max);
	margin-inline: auto;
	padding: var(--wp--preset--spacing--space-8) var(--wp--preset--spacing--space-24);
}

.cdw-cabecalho--duas-linhas .cdw-nav--desktop .cdw-menu {
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-categorias-gatilho {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	min-height: 40px;
	margin: 0;
	padding: 0 var(--wp--preset--spacing--space-16);
	border: 0;
	border-radius: var(--wp--custom--radius--full);
	background: transparent;
	color: var(--wp--preset--color--ink);
	font: inherit;
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
	text-transform: uppercase;
	cursor: pointer;
	transition:
		background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-categorias-gatilho .cdw-icone {
	width: 25px;
	font-size: 20px;
}

.cdw-categorias-gatilho:hover,
.cdw-categorias-gatilho[aria-expanded="true"] {
	background: var(--wp--preset--color--surface-alt);
}

.cdw-cabecalho__linha--menu .cdw-categorias-gatilho:hover,
.cdw-cabecalho__linha--menu .cdw-categorias-gatilho[aria-expanded="true"] {
	background: var(--wp--custom--faixa--menu-hover-fundo, var(--wp--preset--color--surface-alt));
	color: var(--wp--custom--faixa--menu-hover-texto, var(--wp--preset--color--ink));
}

/* Painel CATEGORIAS — Figma Menu aberto · Painel (130:1376): colunas de categorias, destaque de
   produto à direita e "Navegue por tudo". Dois desenhos (Sua Loja › Topo do site):
   .cdw-catmenu--lista (padrão, igual ao Figma; regras no bloco "estilo lista" mais abaixo) e
   .cdw-catmenu--fotos (cada categoria é um cartão com foto, nome e quantidade; o destaque é um cartão
   com selo; o rodapé é uma linha leve). As regras sem modificador valem para os dois. */
.cdw-catmenu {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: var(--wp--custom--z-index--dropdown);
	max-height: calc(100vh - 200px);
	overflow-y: auto;
	border-top: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--surface);
	box-shadow: 0 24px 48px -24px rgba(0, 0, 0, 0.25);
	animation: cdw-catmenu-entra var(--wp--custom--motion--duracao-padrao) var(--wp--custom--motion--ease-padrao);
}

@keyframes cdw-catmenu-entra {
	from {
		opacity: 0;
		transform: translateY(-6px);
	}
}

.cdw-catmenu__corpo {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--space-32);
	width: 100%;
	max-width: var(--wp--custom--layout--container-max);
	margin-inline: auto;
	padding: var(--wp--preset--spacing--space-32);
}

/* ---------- Colunas (uma por categoria) ---------- */

.cdw-catmenu__colunas {
	display: grid;
	flex: 1 1 0;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	align-items: start;
	gap: var(--wp--preset--spacing--space-32) var(--wp--preset--spacing--space-24);
	min-width: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cdw-catmenu__coluna {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-width: 0;
}

.cdw-catmenu__cat {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-4);
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.cdw-catmenu__cat-foto {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	margin-bottom: var(--wp--preset--spacing--space-8);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface-alt);
}

.cdw-catmenu__cat-foto img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--wp--custom--motion--duracao-lenta) var(--wp--custom--motion--ease-padrao);
}

/* Categoria sem foto: a inicial, grande e na cor da marca. */
.cdw-catmenu__cat-inicial {
	color: var(--wp--preset--color--brand-text);
	font-family: var(--wp--preset--font-family--display);
	font-size: 2rem;
	font-weight: var(--wp--custom--weight--heavy);
	line-height: 1;
}

.cdw-catmenu__cat-nome {
	overflow: hidden;
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
	text-overflow: ellipsis;
	white-space: nowrap;
	transition: color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-catmenu__cat-total {
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--caption);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-catmenu__cat:hover .cdw-catmenu__cat-foto img {
	transform: scale(1.05);
}

.cdw-catmenu__cat:hover .cdw-catmenu__cat-nome {
	color: var(--wp--preset--color--brand-text);
}

.cdw-catmenu__filhas {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-8);
	margin: 0;
	padding: 0;
	list-style: none;
}

.cdw-catmenu__link {
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
	transition: color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-catmenu__link:hover {
	color: var(--wp--preset--color--ink);
}

.cdw-catmenu__tudo {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 6px;
	color: var(--wp--preset--color--brand-text);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
}

.cdw-catmenu__tudo .cdw-icone {
	width: 12px;
	font-size: 12px;
	transition: transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-catmenu__tudo:hover .cdw-icone {
	transform: translateX(3px);
}

/* ---------- Destaque de produto ---------- */

.cdw-catmenu__destaque {
	display: flex;
	flex: 0 0 264px;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-4);
	min-width: 0;
	padding: var(--wp--preset--spacing--space-16);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface-alt);
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.cdw-catmenu__destaque-foto {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 1 / 1;
	margin-bottom: var(--wp--preset--spacing--space-8);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface);
}

.cdw-catmenu__destaque-foto img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--wp--custom--motion--duracao-lenta) var(--wp--custom--motion--ease-padrao);
}

/* Selo no canto (mesmo desenho do Produto/Tag dos cards: Overline 12 maiúsculo, pill). */
.cdw-catmenu__destaque-selo {
	position: absolute;
	top: var(--wp--preset--spacing--space-8);
	left: var(--wp--preset--spacing--space-8);
	padding: var(--wp--preset--spacing--space-4) 10px;
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--accent-contrast);
	font-size: var(--wp--preset--font-size--overline);
	line-height: 1.5;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.cdw-catmenu__destaque-nome {
	display: -webkit-box;
	overflow: hidden;
	font-size: var(--wp--preset--font-size--caption);
	line-height: var(--wp--custom--line-height--body);
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}

.cdw-catmenu__destaque-preco {
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-catmenu__destaque-preco del {
	margin-right: var(--wp--preset--spacing--space-4);
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: var(--wp--custom--weight--regular);
}

.cdw-catmenu__destaque-preco ins {
	text-decoration: none;
}

.cdw-catmenu__destaque-ver {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: var(--wp--preset--spacing--space-8);
	color: var(--wp--preset--color--brand-text);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-catmenu__destaque-ver .cdw-icone {
	width: 12px;
	font-size: 12px;
	transition: transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-catmenu__destaque:hover .cdw-catmenu__destaque-foto img {
	transform: scale(1.04);
}

.cdw-catmenu__destaque:hover .cdw-catmenu__destaque-ver .cdw-icone {
	transform: translateX(3px);
}

/* ---------- Rodapé do painel ---------- */

.cdw-catmenu__rodape {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--space-16);
	/* Mesma largura do conteúdo (container menos o padding de 32 de cada lado): a linha começa junto com as colunas. */
	width: calc(100% - 2 * var(--wp--preset--spacing--space-32));
	max-width: calc(var(--wp--custom--layout--container-max) - 2 * var(--wp--preset--spacing--space-32));
	margin-inline: auto;
	padding: var(--wp--preset--spacing--space-16) 0;
	border-top: 1px solid var(--wp--preset--color--line);
}

.cdw-catmenu__rodape-texto {
	margin: 0;
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--caption);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-catmenu__faixa {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	padding: 10px 20px;
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--surface);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
	transition: background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-catmenu__faixa:hover {
	background: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand-contrast);
}

.cdw-catmenu__faixa .cdw-icone {
	width: 14px;
	font-size: 14px;
}

/* ---------- Painel CATEGORIAS · estilo "lista" (padrão) ----------
 * Figma Menu · organização (148:3024) › Menu aberto · Painel (130:1376):
 *   corpo padding 32, gap 32 · colunas flex 1, gap 32 · em cada coluna gap 16:
 *     nome Overline 12 ink-muted maiúsculo (+0,96) · "Ver tudo em…" Label 16 brand-text · subcategorias Body 16 ink
 *   destaque 240 de largura, gap 8: foto 1:1 raio card · nome Caption 14 ink · preço Label 16 ink
 *   faixa ink de ponta a ponta, padding 16/32, conteúdo à direita: "Navegue por tudo" Label 16 surface + seta 20 */

.cdw-catmenu--lista .cdw-catmenu__colunas {
	/* 180: cabe "Ver tudo em Decoração" numa linha; sem espaço, a coluna desce para a linha de baixo. */
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: var(--wp--preset--spacing--space-32);
}

.cdw-catmenu--lista .cdw-catmenu__coluna {
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-catmenu__nome {
	margin: 0;
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--overline);
	line-height: var(--wp--custom--line-height--body);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.cdw-catmenu--lista .cdw-catmenu__filhas {
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-catmenu--lista .cdw-catmenu__link {
	display: inline-block;
	color: var(--wp--preset--color--ink);
}

.cdw-catmenu--lista .cdw-catmenu__link:hover {
	color: var(--wp--preset--color--brand-text);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.cdw-catmenu__link--tudo,
.cdw-catmenu--lista .cdw-catmenu__link--tudo {
	color: var(--wp--preset--color--brand-text);
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
}

.cdw-catmenu--lista .cdw-catmenu__link:focus-visible,
.cdw-catmenu--lista .cdw-catmenu__destaque:focus-visible,
.cdw-catmenu--lista .cdw-catmenu__faixa:focus-visible {
	outline: 2px solid var(--wp--preset--color--focus);
	outline-offset: 2px;
	border-radius: var(--wp--custom--radius--sm);
}

.cdw-catmenu--lista .cdw-catmenu__destaque {
	flex: 0 0 240px;
	gap: var(--wp--preset--spacing--space-8);
	padding: 0;
	background: transparent;
}

.cdw-catmenu--lista .cdw-catmenu__destaque-foto {
	margin-bottom: 0;
	background: var(--wp--preset--color--surface-alt);
}

.cdw-catmenu--lista .cdw-catmenu__destaque-selo,
.cdw-catmenu--lista .cdw-catmenu__destaque-ver {
	display: none;
}

.cdw-catmenu--lista .cdw-catmenu__rodape {
	justify-content: flex-end;
	width: 100%;
	max-width: none;
	padding: 0;
	border-top: 0;
	background: var(--wp--preset--color--ink);
}

.cdw-catmenu--lista .cdw-catmenu__faixa {
	gap: var(--wp--preset--spacing--space-8);
	padding: var(--wp--preset--spacing--space-16) var(--wp--preset--spacing--space-32);
	border-radius: 0;
	background: transparent;
	color: var(--wp--preset--color--surface);
	font-size: var(--wp--preset--font-size--label);
}

.cdw-catmenu--lista .cdw-catmenu__faixa:hover {
	background: transparent;
	color: var(--wp--preset--color--surface);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.cdw-catmenu--lista .cdw-catmenu__faixa .cdw-icone {
	width: 20px;
	font-size: 20px;
	transition: transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-catmenu--lista .cdw-catmenu__faixa:hover .cdw-icone {
	transform: translateX(3px);
}

/* Faixa alinhada à direita do conteúdo (mesmo container das colunas), mas com o fundo de ponta a ponta. */
@media (min-width: 1200px) {
	.cdw-catmenu--lista .cdw-catmenu__faixa {
		margin-right: max(0px, calc((100% - var(--wp--custom--layout--container-max)) / 2));
	}
}

@media (max-width: 1199px) {
	.cdw-catmenu__destaque {
		flex-basis: 232px;
	}
}

/* Tela estreita: o destaque e a frase do rodapé saem para as colunas caberem. */
@media (max-width: 959px) {
	.cdw-catmenu__destaque,
	.cdw-catmenu__rodape-texto {
		display: none;
	}

	.cdw-catmenu__rodape {
		justify-content: flex-end;
	}
}

@media (prefers-reduced-motion: reduce) {
	.cdw-catmenu {
		animation: none;
	}

	.cdw-catmenu__cat-foto img,
	.cdw-catmenu__destaque-foto img,
	.cdw-catmenu__tudo .cdw-icone,
	.cdw-catmenu__faixa .cdw-icone,
	.cdw-catmenu__destaque-ver .cdw-icone {
		transition: none;
	}
}

/* ---------- Telas estreitas ---------- */

/* Tablet (Figma 162:4848): saem os textos; ficam conta e carrinho. */
@media (max-width: 1099px) {
	.cdw-cabecalho--duas-linhas .cdw-util--some-estreito {
		display: none;
	}

	.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo .cdw-util__rotulo,
	.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo .cdw-util__seta {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.cdw-cabecalho--duas-linhas .cdw-cabecalho__conteudo {
		gap: var(--wp--preset--spacing--space-24);
	}

	.cdw-cabecalho--duas-linhas .cdw-busca-painel {
		left: 0;
	}

	.cdw-cabecalho__menu {
		justify-content: flex-start;
	}

	.cdw-cabecalho--duas-linhas .cdw-nav--desktop .cdw-menu {
		justify-content: flex-start;
	}
}

/* Celular (Figma 150:2816): ☰ logo · conta · carrinho; a busca desce para a linha de baixo. */
.cdw-cabecalho--duas-linhas.is-compacto .cdw-cabecalho__conteudo {
	flex-wrap: wrap;
	gap: 12px var(--wp--preset--spacing--space-16);
}

.cdw-cabecalho--duas-linhas.is-compacto .cdw-busca-caixa {
	flex: 1 0 100%;
	order: 3;
}

.cdw-cabecalho--duas-linhas.is-compacto .cdw-busca {
	right: auto;
	left: auto;
}

.cdw-cabecalho--duas-linhas.is-compacto .cdw-utilidades,
.cdw-cabecalho--duas-linhas.is-compacto .cdw-cabecalho__linha--menu {
	display: none;
}

.cdw-cabecalho--duas-linhas.is-compacto .cdw-cabecalho__conta-compacta {
	display: flex;
}

.cdw-cabecalho--duas-linhas.is-compacto .cdw-busca-painel {
	top: calc(100% + 12px);
	right: calc(var(--wp--preset--spacing--space-16) * -1);
	left: calc(var(--wp--preset--spacing--space-16) * -1);
	width: auto;
	max-width: none;
	border-radius: 0;
	box-shadow: var(--wp--preset--shadow--card);
}

/* ---------- Cabeçalho fixo recolhido (assets/js/cabecalho.js) ----------
   Rolando para baixo some a linha de baixo: menu + CATEGORIAS no computador e no tablet (160 → 103 px),
   a busca no celular. Rolando para cima ela volta com um fade curto. */
.cdw-cabecalho--duas-linhas.is-recolhido .cdw-cabecalho__linha--menu,
.cdw-cabecalho--duas-linhas.is-compacto.is-recolhido .cdw-busca-caixa {
	display: none;
}

.cdw-cabecalho--duas-linhas.is-voltou .cdw-cabecalho__linha--menu,
.cdw-cabecalho--duas-linhas.is-compacto.is-voltou .cdw-busca-caixa {
	animation: cdw-cabecalho-volta var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

@keyframes cdw-cabecalho-volta {
	from {
		opacity: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.cdw-util *,
	.cdw-categorias-gatilho {
		transition-duration: 0s !important;
	}

	.cdw-cabecalho--duas-linhas.is-voltou .cdw-cabecalho__linha--menu,
	.cdw-cabecalho--duas-linhas.is-compacto.is-voltou .cdw-busca-caixa {
		animation: none;
	}
}

/* busca.css */
/**
 * Busca do cabeçalho com sugestões — Figma "Busca · exemplos" (140:1848) e "Header mobile · exemplos" (150:3011).
 *
 * Medidas do Dev Mode:
 *   Busca/Campo            altura 48 · pílula · borda 2 focus · padding 0/16 · gap 8 · lupa 20 · texto 16/1.5
 *   desktop                campo começa depois do logo (24 + 210 + 40) · "Fechar" (xmark 20 + Label 16) a 32 do campo
 *   mobile                 campo ocupa a linha (padding 16, gap 16) · "Cancelar" Label 16 brand, área de toque 48
 *   Busca/Sugestões Largo  corpo padding 32, gap 32 · coluna de termos 360, blocos a 24 · sombra card
 *   Busca/Sugestões Mobile corpo padding 24, gap 24 · sem "recentes"
 *   título do bloco        Overline 12/1.5 maiúsculo ink-muted · 16 até o conteúdo
 *   Busca/Termo            pílula 42 de altura · borda 1 line · padding 8/16 · 16/1.5 · gap 8
 *   recente                relógio 20 em caixa 25 + termo 16 · gap 8 · linhas a 16
 *   Busca/Produto sugerido foto 64 raio 8 · gap 16 · nome Label 16 (500) · preço 16 ink-muted · itens a 8
 *   ver todos              fundo surface-alt · padding 16/32 · à direita · Label 16 brand + seta 20 ink
 *
 * Só tokens: as cores mudam pelo painel Sua Loja.
 */

/* ---------- Campo na linha do cabeçalho ---------- */

.cdw-cabecalho__conteudo {
	position: relative;
}

.cdw-busca {
	position: absolute;
	top: 0;
	bottom: 0;
	/* padding da linha + logo + distância logo→menu */
	left: calc(var(--wp--preset--spacing--space-24) + 210px + 40px);
	right: var(--wp--preset--spacing--space-24);
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-32);
	margin: 0;
	background: var(--wp--preset--color--surface);
}

.cdw-busca[hidden],
.cdw-busca-painel[hidden],
.cdw-busca-painel [hidden] {
	display: none;
}

/* O menu e os ícones continuam ocupando o lugar (o cabeçalho não muda de altura), só saem de cena. */
.cdw-cabecalho.is-buscando .cdw-nav--desktop,
.cdw-cabecalho.is-buscando .cdw-cabecalho__acoes {
	visibility: hidden;
}

.cdw-busca__campo {
	display: flex;
	flex: 1;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	min-width: 0;
	height: 48px;
	padding: 0 var(--wp--preset--spacing--space-16);
	border: 2px solid var(--wp--preset--color--focus);
	border-radius: var(--wp--custom--radius--control);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--ink);
	cursor: text;
}

.cdw-busca__campo .cdw-icone {
	flex: none;
	width: 25px;
	font-size: 20px;
}

.cdw-busca__campo input {
	flex: 1;
	min-width: 0;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	outline: 0;
	background: transparent;
	box-shadow: none;
	color: inherit;
	font: inherit;
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
	-webkit-appearance: none;
	appearance: none;
}

.cdw-busca__campo input::placeholder {
	color: var(--wp--preset--color--ink-muted);
	opacity: 1;
}

.cdw-busca__fechar {
	display: flex;
	flex: none;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	min-height: 48px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--ink);
	font: inherit;
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
	cursor: pointer;
	transition: color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-busca__fechar:hover {
	color: var(--wp--preset--color--brand-text);
}

.cdw-busca__fechar .cdw-icone {
	width: 25px;
	font-size: 20px;
}

.cdw-busca__fechar-mobile {
	display: none;
}

/* ---------- Painel de sugestões ---------- */

.cdw-busca-painel {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	max-height: calc(100vh - 140px);
	max-height: calc(100dvh - 140px);
	overflow-y: auto;
	overscroll-behavior: contain;
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--preset--shadow--card);
}

.cdw-busca-painel__corpo {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--space-32);
	width: 100%;
	max-width: var(--wp--custom--layout--container-max);
	margin-inline: auto;
	padding: var(--wp--preset--spacing--space-32);
}

.cdw-busca-painel__termos {
	display: flex;
	flex: 0 0 360px;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-24);
	min-width: 0;
}

/* Sem populares e sem recentes, a coluna some e os produtos ocupam a largura toda. */
.cdw-busca-painel__termos:not(:has(.cdw-busca-painel__bloco:not([hidden]))) {
	display: none;
}

.cdw-busca-painel__bloco {
	min-width: 0;
}

.cdw-busca-painel__bloco--produtos {
	flex: 1;
}

.cdw-busca-painel__cabeca {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-busca-painel .cdw-busca-painel__titulo {
	margin: 0 0 var(--wp--preset--spacing--space-16);
	color: var(--wp--preset--color--ink-muted);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--overline);
	font-weight: var(--wp--custom--weight--regular);
	line-height: var(--wp--custom--line-height--body);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.cdw-busca-painel__limpar {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--ink-muted);
	font: inherit;
	font-size: var(--wp--preset--font-size--overline);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: underline;
	cursor: pointer;
}

.cdw-busca-painel__limpar:hover {
	color: var(--wp--preset--color--ink);
}

.cdw-busca-painel__chips,
.cdw-busca-painel__recentes,
.cdw-busca-painel__produtos {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cdw-busca-painel__chips {
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--space-8);
}

.cdw-busca__termo {
	display: block;
	padding: 8px var(--wp--preset--spacing--space-16);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--full);
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
	transition:
		border-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-busca__termo:hover {
	border-color: var(--wp--preset--color--line-strong);
	background: var(--wp--preset--color--surface-hover);
}

.cdw-busca-painel__recentes {
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-busca__recente {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-8);
	max-width: 100%;
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
	text-decoration: none;
}

.cdw-busca__recente .cdw-icone {
	flex: none;
	width: 25px;
	font-size: 20px;
}

.cdw-busca__recente span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cdw-busca__recente:hover {
	color: var(--wp--preset--color--brand-text);
}

.cdw-busca-painel__produtos {
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-8);
	transition: opacity var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-busca-painel.is-carregando .cdw-busca-painel__produtos {
	opacity: 0.5;
}

.cdw-busca__produto {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--space-16);
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.cdw-busca__produto-foto {
	flex: none;
	width: 64px;
	height: 64px;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--surface-alt);
}

.cdw-busca__produto-foto img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cdw-busca__produto-dados {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-4);
	min-width: 0;
}

.cdw-busca__produto-nome {
	overflow: hidden;
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
	text-overflow: ellipsis;
	white-space: nowrap;
	transition: color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-busca__produto:hover .cdw-busca__produto-nome {
	color: var(--wp--preset--color--brand-text);
}

.cdw-busca__produto-preco {
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-busca__produto-preco del {
	margin-right: var(--wp--preset--spacing--space-8);
	font-size: var(--wp--preset--font-size--caption);
}

.cdw-busca__produto-preco ins {
	text-decoration: none;
}

.cdw-busca-painel__vazio {
	margin: 0;
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
}

.cdw-busca-painel__rodape {
	background: var(--wp--preset--color--surface-alt);
}

.cdw-busca-painel__todos {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--wp--preset--spacing--space-8);
	width: 100%;
	max-width: var(--wp--custom--layout--container-max);
	margin-inline: auto;
	min-height: 57px;
	padding: var(--wp--preset--spacing--space-16) var(--wp--preset--spacing--space-32);
	color: var(--wp--preset--color--brand-text);
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--weight--bold);
	line-height: var(--wp--custom--line-height--body);
	text-align: right;
	text-decoration: none;
}

.cdw-busca-painel__todos:hover span {
	text-decoration: underline;
}

.cdw-busca-painel__todos .cdw-icone {
	flex: none;
	width: 25px;
	color: var(--wp--preset--color--ink);
	font-size: 20px;
}

.cdw-busca__termo:focus-visible,
.cdw-busca__recente:focus-visible,
.cdw-busca__produto:focus-visible,
.cdw-busca__fechar:focus-visible,
.cdw-busca-painel__limpar:focus-visible,
.cdw-busca-painel__todos:focus-visible {
	outline: 2px solid var(--wp--preset--color--focus);
	outline-offset: 2px;
}

/* ---------- Cabeçalho compacto: o campo ocupa a linha inteira ---------- */

.cdw-cabecalho.is-compacto .cdw-busca {
	right: var(--wp--preset--spacing--space-16);
	left: var(--wp--preset--spacing--space-16);
	gap: var(--wp--preset--spacing--space-16);
}

.cdw-cabecalho.is-compacto.is-buscando .cdw-cabecalho__logo-e-menu {
	visibility: hidden;
}

/* ---------- Celular ---------- */

@media (max-width: 781px) {
	.cdw-busca__fechar {
		color: var(--wp--preset--color--brand-text);
	}

	.cdw-busca__fechar .cdw-icone,
	.cdw-busca__fechar-desktop {
		display: none;
	}

	.cdw-busca__fechar-mobile {
		display: inline;
	}

	.cdw-busca-painel {
		max-height: calc(100vh - 80px);
		max-height: calc(100dvh - 80px);
	}

	.cdw-busca-painel__corpo {
		flex-direction: column;
		align-items: stretch;
		gap: var(--wp--preset--spacing--space-24);
		padding: var(--wp--preset--spacing--space-24);
	}

	.cdw-busca-painel__termos {
		flex: none;
	}

	.cdw-busca-painel__bloco--recentes {
		display: none;
	}

	/* No celular a coluna só existe se houver populares (recentes não aparecem aqui). */
	.cdw-busca-painel__termos:not(:has(.cdw-busca-painel__chips)) {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.cdw-busca *,
	.cdw-busca-painel * {
		transition-duration: 0s !important;
	}
}

/* favoritos.css */
/**
 * Favoritos — coração do card de produto (Figma Card/Produto 217:2222 › imagem › topo › favorito).
 *
 * Medidas do Dev Mode:
 *   favorito  área de toque 44×44, a 4 px do canto superior direito da foto
 *   círculo   36×36 · surface · pílula
 *   ícone     coração 16 (contorno) ink · marcado: coração cheio na cor da marca
 *   desktop   aparece com o mouse sobre o card (ou quando já está marcado); no toque, sempre visível
 *
 * Só tokens: as cores mudam pelo painel Sua Loja.
 */

.cdw-favorito {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--ink);
	font-size: 16px;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}

.cdw-favorito__circulo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--surface);
	transition:
		transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-favorito:hover .cdw-favorito__circulo {
	background: var(--wp--preset--color--surface-hover);
}

.cdw-favorito:active .cdw-favorito__circulo {
	transform: scale(0.92);
}

.cdw-favorito:focus-visible {
	outline: 0;
}

.cdw-favorito:focus-visible .cdw-favorito__circulo {
	outline: 2px solid var(--wp--preset--color--focus);
	outline-offset: 2px;
}

.cdw-favorito__cheio,
.cdw-favorito[aria-pressed="true"] .cdw-favorito__vazio {
	display: none;
}

.cdw-favorito[aria-pressed="true"] .cdw-favorito__cheio {
	display: block;
	color: var(--wp--preset--color--brand);
}

.cdw-favorito.is-pulsando .cdw-favorito__circulo {
	animation: cdw-favorito-pulso var(--wp--custom--motion--duracao-lenta) var(--wp--custom--motion--ease-elastica);
}

@keyframes cdw-favorito-pulso {
	0% {
		transform: scale(1);
	}

	40% {
		transform: scale(1.18);
	}

	100% {
		transform: scale(1);
	}
}

/* No card: canto superior direito da foto. */
.cdw-produto__favorito {
	position: absolute;
	top: var(--wp--preset--spacing--space-4);
	right: var(--wp--preset--spacing--space-4);
	z-index: 1;
}

/* Com mouse (desktop), o coração só aparece ao passar no card, ao focar ou se já estiver marcado. */
@media (hover: hover) and (min-width: 782px) {
	.cdw-produto__favorito {
		opacity: 0;
		transition: opacity var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
	}

	.cdw-produto:hover .cdw-produto__favorito,
	.cdw-produto:focus-within .cdw-produto__favorito,
	.cdw-produto__favorito[aria-pressed="true"] {
		opacity: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.cdw-favorito,
	.cdw-favorito__circulo {
		transition-duration: 0s !important;
		animation: none !important;
	}
}

/* kgepel.css */
/**
 * Kgepel Papéis — visual da loja (mu-plugin kgepel-visual, só desta loja; não faz parte do tema).
 * Mesmo CSS do protótipo prototipo-kgepel/css/kgepel.css, mais a fonte Lato.
 * As cores gerais (botões, links, textos) estão em Sua Loja › Identidade › Cores.
 */

@font-face {
	font-family: Lato;
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("https://dev.kgepel.com.br/wp-content/mu-plugins/kgepel-visual/css/../fonts/lato-latin-400-normal.woff2") format("woff2");
}

@font-face {
	font-family: Lato;
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("https://dev.kgepel.com.br/wp-content/mu-plugins/kgepel-visual/css/../fonts/lato-latin-700-normal.woff2") format("woff2");
}

@font-face {
	font-family: Lato;
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url("https://dev.kgepel.com.br/wp-content/mu-plugins/kgepel-visual/css/../fonts/lato-latin-900-normal.woff2") format("woff2");
}

/* html:root ganha do :root que o WordPress escreve com a fonte e os pesos do tema. */
html:root {
	--wp--preset--font-family--display: Lato, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--wp--preset--font-family--text: Lato, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	/* Lato tem 400, 700 e 900: rótulos em 700 e títulos em 900. */
	--wp--custom--weight--bold: 700;
	--wp--custom--weight--heavy: 900;
}

/**
 * Kgepel Papéis — topbar e cabeçalho do protótipo (carregado depois do CSS do tema).
 *
 *   Topbar ........ verde escuro: cidade e telefone, avisos que se revezam, links rápidos.
 *   Linha principal branca: logo, busca com o botão "Buscar" verde, atalhos com ícone e duas
 *                   linhas separados por fios finos.
 *   Linha do menu . verde; "Todos os papéis" em laranja; "Outlet" é um carimbo pêssego.
 *
 * Cores do logo: verde #0B5E30 · verde escuro #08401F · laranja #EE7F00. Fonte: Lato.
 * Contraste (WCAG AA): branco sobre #08401F = 11,9:1 · branco sobre #0B5E30 = 7,9:1 ·
 * #FFD29A sobre #08401F = 8,5:1 · #FFD29A sobre #0B5E30 = 5,6:1 · #1B1B1F sobre #EE7F00 = 6,3:1.
 */

/* ---------- Topbar verde ---------- */

.kg-topbar {
	position: relative;
	background: #08401F;
	color: #FFFFFF;
	font-size: 0.8125rem;
	line-height: 1.4;
}

.kg-topbar__conteiner {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: var(--wp--preset--spacing--space-16);
	max-width: var(--wp--custom--layout--container-max);
	min-height: 38px;
	margin: 0 auto;
	padding: 6px var(--wp--preset--spacing--space-24) 8px;
}

.kg-topbar__lado {
	display: flex;
	align-items: center;
	gap: 20px;
	margin: 0;
}

.kg-topbar__lado--dir {
	justify-content: flex-end;
}

.kg-topbar__item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #FFFFFF;
	text-decoration: none;
	white-space: nowrap;
}

.kg-topbar__item .cdw-icone {
	color: #FFD29A;
}

.kg-topbar__item:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.kg-topbar__item--destaque {
	font-weight: 900;
}

.kg-topbar__avisos {
	display: grid;
	justify-items: center;
	text-align: center;
}

.kg-topbar__aviso {
	grid-area: 1 / 1;
	margin: 0;
	opacity: 0;
	transform: translateY(6px);
	transition:
		opacity var(--wp--custom--motion--duracao-padrao) var(--wp--custom--motion--ease-padrao),
		transform var(--wp--custom--motion--duracao-padrao) var(--wp--custom--motion--ease-padrao);
	pointer-events: none;
	white-space: nowrap;
}

.kg-topbar__aviso.is-ativo {
	opacity: 1;
	transform: none;
	pointer-events: auto;
}

.kg-topbar__aviso strong {
	color: #FFD29A;
	font-weight: 900;
}

.kg-topbar__aviso a {
	color: #FFFFFF;
	font-weight: 700;
	text-underline-offset: 3px;
}

@media (max-width: 1100px) {
	.kg-topbar__conteiner {
		grid-template-columns: 1fr auto;
	}

	.kg-topbar__lado--esq,
	.kg-topbar__lado--dir .kg-topbar__item:not(.kg-topbar__item--destaque) {
		display: none;
	}

	.kg-topbar__avisos {
		justify-items: start;
		text-align: left;
	}
}

@media (max-width: 781px) {
	.kg-topbar__conteiner {
		grid-template-columns: 1fr;
		min-height: 34px;
		padding: 6px var(--wp--preset--spacing--space-16) 8px;
	}

	.kg-topbar__lado--dir {
		display: none;
	}

	.kg-topbar__avisos {
		justify-items: center;
		text-align: center;
	}

	.kg-topbar__aviso {
		white-space: normal;
	}
}

@media (prefers-reduced-motion: reduce) {
	.kg-topbar__aviso {
		transition: none;
	}
}

/* ---------- Linha principal ---------- */

.cdw-cabecalho {
	box-shadow: 0 1px 0 #E6E0CF, 0 8px 20px rgba(8, 64, 31, 0.06);
}

.cdw-cabecalho--duas-linhas:not(.is-compacto) .cdw-cabecalho__conteudo {
	padding-block: 20px;
}

.cdw-logo__img {
	max-width: 200px;
	max-height: 66px;
}

.cdw-cabecalho.is-compacto .cdw-logo__img {
	max-height: 44px;
}

.cdw-logo--gaveta .cdw-logo__img {
	max-height: 44px;
}

/* Busca: campo branco com fio verde e o botão "Buscar" verde encaixado na ponta. */
.cdw-cabecalho--duas-linhas .cdw-busca {
	gap: 0;
}

.cdw-cabecalho--duas-linhas .cdw-busca__campo,
.cdw-cabecalho--duas-linhas .cdw-busca__campo:focus-within {
	height: 50px;
	padding: 0 118px 0 18px;
	border: 1.5px solid #CFC8B3;
	border-radius: 10px;
	background: #FFFFFF;
}

.cdw-cabecalho--duas-linhas .cdw-busca__campo:hover {
	border-color: #0B5E30;
}

.cdw-cabecalho--duas-linhas .cdw-busca__campo:focus-within {
	border-color: #0B5E30;
	box-shadow: 0 0 0 3px rgba(11, 94, 48, 0.15);
}

.cdw-cabecalho--duas-linhas .cdw-busca__campo > .cdw-icone {
	display: none;
}

.kg-busca__enviar {
	display: flex;
	flex: none;
	align-items: center;
	gap: 8px;
	height: 40px;
	margin: 0 0 0 -110px;
	padding: 0 16px;
	border: 0;
	border-radius: 7px;
	background: #0B5E30;
	color: #FFFFFF;
	font: inherit;
	font-size: 0.875rem;
	font-weight: 900;
	cursor: pointer;
	transition: background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.kg-busca__enviar .cdw-icone {
	font-size: 15px;
}

.kg-busca__enviar:hover {
	background: #08401F;
}

.kg-busca__enviar:focus-visible {
	outline: 2px solid #0B5E30;
	outline-offset: 2px;
}

/* Atalhos: ícone verde solto + duas linhas, separados por fios finos. */
.cdw-cabecalho--duas-linhas .cdw-utilidades {
	gap: 0;
}

.cdw-cabecalho--duas-linhas .cdw-utilidades > *,
.kg-orcamento {
	position: relative;
	padding-inline: 18px;
}

.cdw-cabecalho--duas-linhas .cdw-utilidades > * + *::before,
.kg-orcamento::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	height: 30px;
	border-left: 1px solid #E6E0CF;
	transform: translateY(-50%);
}

.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo,
.kg-orcamento {
	gap: 10px;
	color: #1B1B1F;
	font-size: 0.875rem;
	font-weight: 900;
	line-height: 1.2;
}

.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo > .cdw-icone:first-child,
.kg-orcamento > .cdw-icone {
	flex: none;
	width: 24px;
	color: #0B5E30;
	font-size: 22px;
}

.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo:hover,
.cdw-cabecalho--duas-linhas .cdw-util__gatilho[aria-expanded="true"],
.kg-orcamento:hover {
	color: #0B5E30;
}

.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo .cdw-util__rotulo,
.kg-orcamento__texto {
	display: block;
	text-align: left;
}

.kg-util__sub {
	display: block;
	color: var(--wp--preset--color--ink-muted);
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.3;
}

.kg-orcamento {
	display: inline-flex;
	flex: none;
	align-items: center;
	margin-right: 6px;
	text-decoration: none;
	white-space: nowrap;
}

.kg-orcamento:focus-visible {
	outline: 2px solid #0B5E30;
	outline-offset: 3px;
	border-radius: 6px;
}

/* Carrinho: um quadrado verde de cantos suaves; o contador é uma etiqueta laranja. */
.cdw-cabecalho .cdw-carrinho {
	width: 46px;
	height: 46px;
	border-radius: 10px;
	background: #0B5E30;
	color: #FFFFFF;
	transition: background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-cabecalho .cdw-carrinho:hover {
	background: #08401F;
	color: #FFFFFF;
}

.cdw-cabecalho .cdw-carrinho__icone,
.cdw-cabecalho.is-compacto .cdw-carrinho__icone {
	top: 50%;
	left: 50%;
	color: #FFFFFF;
	transform: translate(-50%, -50%);
}

.cdw-cabecalho .cdw-carrinho__contador,
.cdw-cabecalho.is-compacto .cdw-carrinho__contador {
	top: -6px;
	right: -6px;
	left: auto;
	border: 2px solid #FFFFFF;
	background: #EE7F00;
	color: #1B1B1F;
	font-weight: 900;
}

.cdw-cabecalho.is-compacto .cdw-carrinho {
	width: 44px;
	height: 44px;
}

@media (max-width: 1099px) {
	.kg-orcamento {
		display: none;
	}

	.kg-busca__rotulo {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.kg-busca__enviar {
		width: 40px;
		margin-left: -45px;
		padding: 0;
		justify-content: center;
	}

	.cdw-cabecalho--duas-linhas .cdw-busca__campo,
	.cdw-cabecalho--duas-linhas .cdw-busca__campo:focus-within {
		padding-right: 52px;
	}
}

/* ---------- Linha do menu verde ---------- */

.cdw-cabecalho__linha--menu {
	background: #0B5E30;
}

.cdw-cabecalho__menu {
	gap: 4px;
	padding-block: 6px;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu {
	gap: 2px;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item > .cdw-menu__link {
	gap: 10px;
	padding: 10px 14px;
	border-radius: 8px;
	background: transparent;
	color: #FFFFFF;
	font-weight: 700;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item > .cdw-menu__link:hover,
.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item.is-aberto > .cdw-menu__link,
.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item.is-atual > .cdw-menu__link,
.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item > .cdw-menu__link[aria-current="page"] {
	background: rgba(255, 255, 255, 0.14);
	color: #FFFFFF;
}

@media (hover: hover) {
	.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu__item--pai:hover > .cdw-menu__link {
		background: rgba(255, 255, 255, 0.14);
		color: #FFFFFF;
	}
}

/* "Todos os papéis": bloco laranja (texto escuro: branco sobre o laranja não dá leitura). */
.cdw-cabecalho__linha--menu .cdw-categorias-gatilho {
	margin-right: 10px;
	padding: 0 18px;
	border-radius: 8px;
	background: #EE7F00;
	color: #1B1B1F;
	font-weight: 900;
	letter-spacing: 0.02em;
	text-transform: none;
}

.cdw-cabecalho__linha--menu .cdw-categorias-gatilho:hover,
.cdw-cabecalho__linha--menu .cdw-categorias-gatilho[aria-expanded="true"] {
	background: #FF9526;
	color: #1B1B1F;
}

/* "Outlet": carimbo pêssego, torto, com borda dupla. */
.kg-menu__outlet {
	margin-left: 10px;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .kg-menu__outlet > .cdw-menu__link,
.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .kg-menu__outlet > .cdw-menu__link:hover {
	padding: 6px 8px;
	background: transparent;
}

.kg-carimbo {
	display: inline-block;
	padding: 3px 12px;
	border: 2px solid #FFD29A;
	border-radius: 4px;
	outline: 1px solid #FFD29A;
	outline-offset: 2px;
	color: #FFD29A;
	font-size: 0.8125rem;
	font-weight: 900;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	transform: rotate(-4deg);
	transition: transform var(--wp--custom--motion--duracao-padrao) var(--wp--custom--motion--ease-elastica);
}

.cdw-menu__link:hover .kg-carimbo {
	transform: rotate(0deg) scale(1.05);
}

.cdw-cabecalho__linha--menu :focus-visible {
	outline-color: #FFFFFF;
}

@media (prefers-reduced-motion: reduce) {
	.kg-carimbo,
	.kg-busca__enviar,
	.cdw-cabecalho .cdw-carrinho {
		transition: none;
	}
}

/* ---------- Detalhes da home ---------- */

/* Preço por folha. */
.kg-unidade {
	color: var(--wp--preset--color--ink-muted);
	font-size: 0.8125rem;
	font-weight: 400;
}

/* Banner largo (arte com texto): só a imagem, clicável. */
.kg-largo__link {
	display: block;
}

/* Títulos das seções com um tracinho laranja, como o "Papéis" do logo. */
.cdw-vitrine__titulo,
.cdw-categorias__titulo,
.cdw-secao__titulo {
	position: relative;
	padding-bottom: 10px;
}

.cdw-vitrine__titulo::after,
.cdw-categorias__titulo::after,
.cdw-secao__titulo::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 48px;
	height: 4px;
	border-radius: 2px;
	background: #EE7F00;
}

.cdw-categorias--centro .cdw-categorias__titulo::after {
	left: 50%;
	transform: translateX(-50%);
}

/* Fotos dos produtos são quadradas e com fundo claro: sem recorte. */
.cdw-categoria__img {
	object-fit: cover;
}

/* ---------- Rodapé exclusivo ----------
 *
 *   Topo ......... cartão branco de chamadas (com a fita das cores do símbolo em cima) (corte sob medida,
 *                  loja física, horário) com o botão "Pedir orçamento" em laranja.
 *   Corpo ........ verde escuro com o símbolo do logo em marca-d'água no canto, logo em branco,
 *                  títulos em pêssego, links brancos com sublinhado laranja, redes em círculo.
 *   Base ......... faixa mais escura com CNPJ, políticas e o crédito da CDW em branco.
 *
 * Contraste (WCAG AA): branco sobre #08401F = 11,9:1 · #D7E5DC sobre #08401F = 9,2:1 ·
 * #FFD29A sobre #08401F = 8,5:1 · #1B1B1F sobre #EE7F00 = 6,3:1.
 */

.kg-rodape {
	--wp--custom--rodape--bg: #08401F;
	--wp--custom--rodape--line: rgba(255, 255, 255, 0.14);
	--wp--custom--rodape--text: #FFFFFF;
	--wp--custom--rodape--text-muted: #D7E5DC;
	position: relative;
	overflow: hidden;
	border-top: 0;
	isolation: isolate;
}

/* Símbolo do logo, grande e bem apagado, no canto de baixo. */
.kg-rodape__marca-dagua {
	position: absolute;
	right: -90px;
	bottom: -110px;
	z-index: -1;
	width: 460px;
	height: auto;
	max-width: none;
	border-radius: 48px;
	opacity: 0.07;
	transform: rotate(-12deg);
	pointer-events: none;
}

/* Topo: o cartão fica metade sobre a newsletter (mesmo fundo dela), metade sobre o verde. */
.kg-rodape__topo {
	background:
		linear-gradient(to bottom, var(--wp--preset--color--brand-subtle) 0 50%, transparent 50%),
		linear-gradient(to bottom, var(--wp--preset--color--surface) 0 50%, transparent 50%);
}

.kg-rodape__cta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
	align-items: center;
	gap: var(--wp--preset--spacing--space-24);
	width: calc(100% - 2 * var(--wp--preset--spacing--space-24));
	max-width: calc(var(--wp--custom--layout--container-max) - 2 * var(--wp--preset--spacing--space-24));
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	padding: calc(var(--wp--preset--spacing--space-24) + 5px) var(--wp--preset--spacing--space-32) var(--wp--preset--spacing--space-24);
	border-radius: 16px;
	background: var(--wp--preset--color--surface);
	box-shadow: 0 18px 40px rgba(8, 64, 31, 0.25);
	color: var(--wp--preset--color--ink);
}

.kg-rodape__cta-item {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--space-16);
}

.kg-rodape__cta-icone {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: rgba(11, 94, 48, 0.08);
	color: #0B5E30;
	font-size: 20px;
}

.kg-rodape__cta-titulo {
	margin: 0;
	color: var(--wp--preset--color--ink);
	font-size: 0.9375rem;
	font-weight: 900;
	line-height: 1.3;
}

.kg-rodape__cta-texto {
	margin: 4px 0 0;
	color: var(--wp--preset--color--ink-muted);
	font-size: 0.875rem;
	line-height: 1.45;
}

.cdw-rodape .kg-rodape__cta-botao {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 50px;
	padding: 0 24px;
	border-radius: 999px;
	background: #EE7F00;
	color: #1B1B1F;
	font-size: 1rem;
	font-weight: 900;
	white-space: nowrap;
	transition: background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.cdw-rodape .kg-rodape__cta-botao:hover {
	background: #FF9526;
	color: #1B1B1F;
	text-decoration: none;
}

.kg-rodape__cta-botao .cdw-icone {
	font-size: 20px;
}

/* Fita com as cores do símbolo do logo no alto do cartão. */
.kg-rodape__cta::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 5px;
	background: linear-gradient(90deg, #E30613 0 25%, #EE7F00 25% 50%, #1B8BC6 50% 75%, #23265A 75% 100%);
}

/* Corpo. */
.kg-rodape .cdw-rodape__conteiner {
	padding-top: var(--wp--preset--spacing--space-48);
}

/* Logo para fundo escuro (Sua Loja › Identidade): texto branco e símbolo laranja, sem filtro. */
.kg-rodape .cdw-rodape__logo .cdw-logo__img {
	max-height: 64px;
}

.kg-rodape .cdw-rodape__descricao {
	max-width: 300px;
}

.kg-rodape .cdw-rodape__titulo {
	color: #FFD29A;
	font-weight: 900;
	letter-spacing: 0.12em;
}

.kg-rodape .cdw-rodape__links a {
	display: inline-block;
	transition: transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.kg-rodape a:hover {
	color: #FFFFFF;
	text-decoration-color: #EE7F00;
	text-decoration-thickness: 2px;
}

.kg-rodape .cdw-rodape__links a:hover {
	transform: translateX(3px);
}

.kg-rodape .cdw-rodape__contato .cdw-icone,
.kg-rodape .cdw-rodape__envio .cdw-icone {
	color: #EE7F00;
}

/* Redes: círculos com borda; ao passar o mouse, laranja. */
.kg-rodape .cdw-rodape__rede {
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 50%;
	font-size: 18px;
	transition:
		background-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao),
		border-color var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.kg-rodape .cdw-rodape__rede:hover {
	border-color: #EE7F00;
	background: #EE7F00;
	color: #1B1B1F !important;
	text-decoration: none;
}

/* Pagamentos e selos em "cartõezinhos" brancos. */
.kg-rodape .cdw-rodape__pagamentos img {
	padding: 2px;
	border-radius: 6px;
	background: #FFFFFF;
}

/* Base mais escura, de ponta a ponta. */
.kg-rodape .cdw-rodape__base {
	position: relative;
	padding-bottom: var(--wp--preset--spacing--space-24);
	border-top: 0;
}

.kg-rodape .cdw-rodape__base::before {
	content: "";
	position: absolute;
	top: 0;
	right: -100vw;
	bottom: calc(var(--wp--preset--spacing--space-64) * -1);
	left: -100vw;
	z-index: -1;
	background: #062F17;
}

.kg-rodape .cdw-rodape__credito img {
	filter: brightness(0) invert(1);
	opacity: 0.85;
}

.kg-rodape .cdw-rodape__credito:hover img {
	opacity: 1;
}

/* Tablet: o cartão de chamadas vira 2 × 2 (o botão ocupa a linha de baixo). */
@media (max-width: 1100px) {
	.kg-rodape__cta {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.cdw-rodape .kg-rodape__cta-botao {
		grid-column: 1 / -1;
		justify-self: start;
	}
}

/* Celular: tudo em coluna, botão na largura toda. */
@media (max-width: 781px) {
	.kg-rodape__cta {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--space-16);
		width: calc(100% - 2 * var(--wp--preset--spacing--space-16));
		padding: calc(var(--wp--preset--spacing--space-24) + 5px) var(--wp--preset--spacing--space-16) var(--wp--preset--spacing--space-24);
	}

	.cdw-rodape .kg-rodape__cta-botao {
		justify-content: center;
		justify-self: stretch;
	}

	.kg-rodape__marca-dagua {
		right: -120px;
		bottom: -80px;
		width: 340px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.kg-rodape .cdw-rodape__links a,
	.kg-rodape .cdw-rodape__rede,
	.cdw-rodape .kg-rodape__cta-botao {
		transition: none;
	}

	.kg-rodape .cdw-rodape__links a:hover {
		transform: none;
	}
}

/* =====================================================================
   Corte de papel (plugin corte-de-papel) — campos na ficha do produto.
   O plugin põe estilos fixos nos próprios campos (float, largura, cinza);
   por isso as regras de posição e tamanho vão com !important.
   ===================================================================== */

.cdw-pp-form #_personalizar,
.cdw-pp-form #div1 {
	flex: 0 0 100%;
	max-width: 100%;
}

.cdw-pp-form select#_personalizar {
	width: 100% !important;
	height: 48px;
	padding: 0 40px 0 14px;
	border: 1px solid #CFC8B3;
	border-radius: 10px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230B5E30' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;
	-webkit-appearance: none;
	appearance: none;
	font: inherit;
	font-weight: 700;
	color: #1B1B1F;
	cursor: pointer;
}

.cdw-pp-form select#_personalizar:focus-visible {
	outline: 2px solid #0B5E30;
	outline-offset: 2px;
}

.cdw-pp-form div#div1 {
	box-sizing: border-box;
	width: 100% !important;
	margin: -4px 0 0;
	padding: 20px;
	background: #F3F8F4;
	border: 1px solid rgba(11, 94, 48, 0.18);
	border-radius: 12px;
	font-size: 15px;
}

.cdw-pp-form div#div1::after {
	display: block;
	clear: both;
	content: "";
}

.cdw-pp-form div#div1 > p:first-child {
	margin: 0 0 16px !important;
	color: #5E6470;
	font-size: 14px !important;
	line-height: 1.5 !important;
}

.cdw-pp-form div#div1 .line,
.cdw-pp-form div#div1 > br {
	display: none !important;
}

/* "Selecione abaixo padrões pré definidos" + botões A4 / A3 / 30,5x30,5 */
.cdw-pp-form div#div1 > div {
	margin-bottom: 6px;
}

.cdw-pp-form div#div1 small {
	display: block;
	margin-bottom: 8px;
	color: #0B5E30;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.cdw-pp-form div#div1 button.btnprefolhas {
	display: inline-flex !important;
	align-items: center;
	min-height: 38px;
	margin: 0 8px 8px 0 !important;
	padding: 0 16px !important;
	background: #fff !important;
	border: 1.5px solid #0B5E30 !important;
	border-radius: 999px !important;
	color: #0B5E30 !important;
	font: inherit;
	font-size: 14px !important;
	font-weight: 700;
	line-height: 1 !important;
	cursor: pointer;
	transition: background-color 0.15s, color 0.15s;
}

.cdw-pp-form div#div1 button.btnprefolhas:hover,
.cdw-pp-form div#div1 button.btnprefolhas:focus-visible {
	background: #0B5E30 !important;
	color: #fff !important;
}

/* Altura | Largura | Pedaços lado a lado, com rótulo em cima */
.cdw-pp-form div#div1 p:has(> #_altura),
.cdw-pp-form div#div1 p:has(> #_largura),
.cdw-pp-form div#div1 p:has(> #_folhas) {
	display: block !important;
	float: left !important;
	box-sizing: border-box;
	width: calc((100% - 24px) / 3) !important;
	margin: 8px 12px 0 0 !important;
	padding: 0 !important;
}

.cdw-pp-form div#div1 p:has(> #_folhas) {
	margin-right: 0 !important;
}

.cdw-pp-form div#div1 p:has(> #_altura)::before,
.cdw-pp-form div#div1 p:has(> #_largura)::before,
.cdw-pp-form div#div1 p:has(> #_folhas)::before {
	display: block;
	margin-bottom: 6px;
	color: #1B1B1F;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
}

.cdw-pp-form div#div1 p:has(> #_altura)::before { content: "Altura (cm)"; }
.cdw-pp-form div#div1 p:has(> #_largura)::before { content: "Largura (cm)"; }
.cdw-pp-form div#div1 p:has(> #_folhas)::before { content: "Folhas"; }

.cdw-pp-form div#div1 input#_altura,
.cdw-pp-form div#div1 input#_largura,
.cdw-pp-form div#div1 input#_folhas {
	display: block !important;
	float: none !important;
	box-sizing: border-box !important;
	width: 100% !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 12px !important;
	background: #fff !important;
	border: 1px solid #CFC8B3 !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	color: #1B1B1F;
	font: inherit;
	font-size: 16px !important; /* 16 px: o iPhone não dá zoom ao tocar */
}

.cdw-pp-form div#div1 input#_altura::placeholder,
.cdw-pp-form div#div1 input#_largura::placeholder,
.cdw-pp-form div#div1 input#_folhas::placeholder {
	color: #A29C8C;
	font-size: 14px;
}

.cdw-pp-form div#div1 input#_altura:focus,
.cdw-pp-form div#div1 input#_largura:focus,
.cdw-pp-form div#div1 input#_folhas:focus {
	border-color: #0B5E30 !important;
	outline: 2px solid rgba(11, 94, 48, 0.25);
	outline-offset: 0;
}

/* Botão GERAR PREÇO */
/* padding (e não margin): depois dos campos flutuantes o margin-top some no "clear". */
.cdw-pp-form div#div1 p:has(> #btn_preco_personal) {
	display: block !important;
	clear: both;
	margin: 0 !important;
	padding: 20px 0 0 !important;
}

.cdw-pp-form div#div1 input#btn_preco_personal {
	display: block !important;
	float: none !important;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	background: #EE7F00 !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	color: #1B1B1F !important;
	font: inherit;
	font-size: 15px !important;
	font-weight: 900 !important;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	cursor: pointer;
	transition: filter 0.15s;
}

.cdw-pp-form div#div1 input#btn_preco_personal:hover {
	filter: brightness(0.94);
}

.cdw-pp-form div#div1 input#btn_preco_personal:focus-visible {
	outline: 2px solid #0B5E30;
	outline-offset: 3px;
}

/* Preço calculado e aviso de quantidade máxima */
.cdw-pp-form div#div1 #div_preco {
	margin-top: 14px;
	color: #0B5E30;
	font-size: 22px;
	font-weight: 900;
}

.cdw-pp-form div#div1 #div_qty_folhas {
	margin-top: 6px;
	color: #5E6470 !important;
	font-size: 13px !important;
}

/* Celular: os três campos continuam lado a lado, mais justos */
@media (max-width: 480px) {
	.cdw-pp-form div#div1 {
		padding: 16px;
	}

	.cdw-pp-form div#div1 p:has(> #_altura),
	.cdw-pp-form div#div1 p:has(> #_largura),
	.cdw-pp-form div#div1 p:has(> #_folhas) {
		width: calc((100% - 16px) / 3) !important;
		margin-right: 8px !important;
	}

	.cdw-pp-form div#div1 p:has(> #_folhas) {
		margin-right: 0 !important;
	}

	.cdw-pp-form div#div1 input#_altura,
	.cdw-pp-form div#div1 input#_largura,
	.cdw-pp-form div#div1 input#_folhas {
		padding: 0 8px !important;
	}
}

/* =====================================================================
   Cabeçalho — revisão (atendimento, "Tipos de papéis", barra numa linha, celular)
   ===================================================================== */

/* Atendimento no formato do antigo "Peça orçamento": ícone do WhatsApp, duas linhas, sem setinha. */
.cdw-cabecalho--duas-linhas .kg-atendimento .cdw-util__seta {
	display: none;
}

.cdw-cabecalho--duas-linhas .kg-atendimento .cdw-util__gatilho--rotulo > .cdw-icone:first-child {
	font-size: 24px;
}

/* Barra verde de ponta a ponta (não segue o grid da página), centralizada e sempre numa linha só. */
.cdw-cabecalho__linha--menu .cdw-cabecalho__menu,
.cdw-cabecalho--duas-linhas .cdw-cabecalho__linha--menu .cdw-cabecalho__menu {
	flex-wrap: nowrap;
	justify-content: center;
	max-width: none;
	padding-inline: clamp(16px, 2.5vw, 40px);
}

.cdw-cabecalho__linha--menu .cdw-categorias-gatilho {
	flex: none;
	white-space: nowrap;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop {
	flex: 0 1 auto;
	min-width: 0;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu,
.cdw-cabecalho--duas-linhas .cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu {
	flex-wrap: nowrap;
	justify-content: center;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item {
	flex: none;
}

.cdw-cabecalho__linha--menu .cdw-nav--desktop .cdw-menu > .cdw-menu__item > .cdw-menu__link {
	white-space: nowrap;
}

/* O que não cabe na largura sai da barra (assets: js/kgepel-cabecalho.js); está no painel. */
.cdw-cabecalho__linha--menu .cdw-menu > .kg-menu-fora {
	display: none;
}

/* Painel "Tipos de papéis": todas as categorias em colunas, sem buracos entre as alturas. */
.cdw-catmenu--lista .cdw-catmenu__colunas {
	display: block;
	columns: 5 190px;
	column-gap: 32px;
}

.cdw-catmenu--lista .cdw-catmenu__coluna {
	display: flex;
	width: 100%;
	margin-bottom: 28px;
	break-inside: avoid;
	page-break-inside: avoid;
}

.cdw-catmenu--lista .cdw-catmenu__nome {
	color: #0B5E30;
	font-weight: 900;
}

.cdw-catmenu--lista .cdw-catmenu__filhas {
	gap: 10px;
}

.cdw-catmenu--lista .cdw-catmenu__link {
	font-size: 0.9375rem;
}

/* Abaixo de ~1200 px: só os ícones na linha do meio. */
@media (max-width: 1199px) {
	.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo .cdw-util__rotulo,
	.cdw-cabecalho--duas-linhas .cdw-util__gatilho--rotulo .cdw-util__seta {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.cdw-cabecalho--duas-linhas .cdw-utilidades > * {
		padding-inline: 12px;
	}

	.kg-busca__rotulo {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.kg-busca__enviar {
		width: 40px;
		margin-left: -45px;
		padding: 0;
		justify-content: center;
	}

	.cdw-cabecalho--duas-linhas .cdw-busca__campo,
	.cdw-cabecalho--duas-linhas .cdw-busca__campo:focus-within {
		padding-right: 52px;
	}
}

/* O atendimento fica também no tablet (o tema o escondia abaixo de 1100 px). */
@media (max-width: 1099px) {
	.cdw-cabecalho--duas-linhas .kg-atendimento.cdw-util--atendimento {
		display: block;
	}
}

/* Celular: ☰ · logo · busca · carrinho; a busca vira uma linha inteira embaixo; categorias na gaveta. */
.kg-busca-abrir {
	display: none;
}

.cdw-cabecalho.is-compacto .kg-busca-abrir {
	display: flex;
	color: #0B5E30;
}

.cdw-cabecalho.is-compacto .cdw-cabecalho__conta-compacta {
	display: none;
}

.cdw-cabecalho--duas-linhas.is-compacto.is-recolhido.kg-busca-visivel .cdw-busca-caixa {
	display: block;
}

.cdw-cabecalho.is-compacto .cdw-busca-caixa {
	width: 100%;
}

/* Painel "Tipos de papéis": categorias-mães fechadas; clicar abre "Ver tudo" + subcategorias. */
.cdw-catmenu--lista .cdw-catmenu__coluna.kg-cat {
	gap: 0;
	margin-bottom: 0;
	border-bottom: 1px solid #E6E0CF;
}

.kg-cat__pai {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	padding: 13px 4px;
	border: 0;
	background: none;
	color: #0B5E30;
	font: inherit;
	font-size: 0.8125rem;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 1.3;
	text-align: left;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
}

.kg-cat__pai:hover {
	color: #EE7F00;
}

.kg-cat__pai:focus-visible {
	outline: 2px solid #0B5E30;
	outline-offset: 2px;
	border-radius: 4px;
}

.kg-cat__seta {
	flex: none;
	transition: transform var(--wp--custom--motion--duracao-rapida) var(--wp--custom--motion--ease-padrao);
}

.kg-cat__pai[aria-expanded="true"] .kg-cat__seta {
	transform: rotate(180deg);
}

.cdw-catmenu--lista .kg-cat .cdw-catmenu__filhas {
	gap: 10px;
	padding: 2px 4px 16px;
}

.cdw-catmenu--lista .kg-cat.is-aberta {
	background: #F3F8F4;
	border-radius: 8px;
	border-bottom-color: transparent;
}

.cdw-catmenu--lista .kg-cat.is-aberta .kg-cat__pai,
.cdw-catmenu--lista .kg-cat.is-aberta .cdw-catmenu__filhas {
	padding-inline: 12px;
}

.cdw-catmenu--lista .kg-cat .cdw-catmenu__link--tudo {
	font-weight: 900;
}

@media (prefers-reduced-motion: reduce) {
	.kg-cat__seta {
		transition: none;
	}
}

