/* Página de produto "Joalheria" (02/10/2026), na linha da página da Blox e conversando com o card de produto
   (assets/css/card.css): sem cartões nem bordas. Galeria com as miniaturas em coluna à esquerda (no celular, em
   fileira embaixo) e a foto grande em fundo branco puro (sem o degradê areia, pedido do dono 02/10/2026); painel de
   compra limpo, com o topo igual ao da Blox: stories, nome em Cormorant Garamond, prova social, preço com o selo "R$ X OFF",
   Pix, parcelas e "Mais formas de pagamento"; depois o botão largo marrom de cantos 4px, 3 garantias e a
   calculadora de frete.
   Estrutura no Elementor ("Página de produto", docs/elementor/paginas.php): coluna .dd-pd-galeria-col ([dd_galeria])
   e coluna .dd-compra com o container .dd-pd-painel. Shortcodes e campos em inc/produto.php.
   No celular, a barra fixa .dd-pd-barra (produto.js) aparece quando o botão principal sai da tela. */
.dd-pd-ic { width: 20px; height: 20px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.dd-pd-ic--estrela { fill: currentColor; stroke: none; }
/* ---------- Colunas ---------- */
/* A coluna de compra não gruda (elementor-loja.css): com os acordeões ela é mais alta que a galeria.
   Quem acompanha a rolagem é a galeria, abaixo do cabeçalho em ilha. */
.dd-compra.e-con, .dd-compra { position: relative !important; top: auto; }
@media (min-width: 990px) {
	.dd-pd-galeria-col.e-con { position: sticky !important; top: 112px; }
}
/* ---------- Galeria ---------- */
.dd-galeria {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
	font-family: var(--gd-fonte);
	color: var(--pc-ameixa);
}
.dd-galeria:not(:has(.dd-galeria-minis)) { grid-template-columns: minmax(0, 1fr); }
.dd-galeria * { box-sizing: border-box; }
.dd-galeria-foto {
	position: relative;
	grid-column: -2;
	grid-row: 1;
	aspect-ratio: 1;
	display: grid;
	place-items: center;
	overflow: hidden;
	border-radius: 8px;
	/* fundo branco puro (pedido do dono, 02/10/2026: sem o degradê areia) */
	background: #fff;
}
/* símbolo da Mandala pequeno na base da foto, como no arco do card */
.dd-galeria-foto::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 18px;
	width: 22px;
	height: 22px;
	margin-left: -11px;
	background: #CEC6BB;
	-webkit-mask: url("../favicon/favicon.svg") center / contain no-repeat;
	mask: url("../favicon/favicon.svg") center / contain no-repeat;
	pointer-events: none;
}
.dd-galeria-foto .dd-galeria-img { width: 100%; height: 100%; padding: 7%; object-fit: contain; border-radius: 0; background: transparent; -webkit-user-drag: none; }
.dd-galeria-selos { position: absolute; top: 16px; left: 16px; z-index: 2; display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
.dd-selo { display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px; border-radius: 4px; font-size: 12px; font-weight: 500; letter-spacing: 0.02em; line-height: 1; }
.dd-selo--frete { background: #fff; color: var(--pc-ameixa); }
.dd-selo .dd-pd-ic { width: 14px; height: 14px; }
.dd-galeria-lupa, .dd-galeria-lupa:visited {
	position: absolute;
	right: 14px;
	top: 14px;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	color: var(--pc-ameixa);
	box-shadow: 0 4px 14px -8px rgba(20, 17, 14, 0.45);
	transition: background-color 0.2s, color 0.2s;
}
.dd-galeria-lupa .dd-pd-ic { width: 18px; height: 18px; }
.dd-galeria-lupa:hover { background: var(--pc-ameixa); color: #fff; }
/* Setas: só o ícone, sem fundo; e arraste para o lado (pedido do dono, 30/09/2026). */
.dd-galeria-seta {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	margin: -22px 0 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: none !important;
	box-shadow: none;
	color: var(--pc-ameixa);
	opacity: 0.7;
	cursor: pointer;
	transition: opacity 0.2s, transform 0.2s;
}
.dd-galeria-seta svg { width: 26px; height: 26px; }
.dd-galeria-seta svg path { stroke-width: 1.8; }
.dd-galeria-seta:hover, .dd-galeria-seta:focus-visible { opacity: 1; color: var(--pc-ameixa); }
.dd-galeria-seta--ant { left: 6px; }
.dd-galeria-seta--ant svg { transform: rotate(180deg); }
.dd-galeria-seta--prox { right: 6px; }
.dd-galeria-seta--prox:hover { transform: translateX(2px); }
.dd-galeria-seta--ant:hover { transform: translateX(-2px); }
.dd-galeria-foto--arrasta { touch-action: pan-y; cursor: grab; -webkit-user-select: none; user-select: none; }
.dd-galeria-foto--arrasta:active { cursor: grabbing; }
.dd-galeria-entra-dir { animation: dd-galeria-dir 0.28s ease-out; }
.dd-galeria-entra-esq { animation: dd-galeria-esq 0.28s ease-out; }
@keyframes dd-galeria-dir { from { opacity: 0.2; transform: translateX(36px); } to { opacity: 1; transform: none; } }
@keyframes dd-galeria-esq { from { opacity: 0.2; transform: translateX(-36px); } to { opacity: 1; transform: none; } }
/* Miniaturas em coluna à esquerda (no computador) */
.dd-galeria-minis { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; }
.dd-galeria-mini {
	position: relative;
	display: grid;
	place-items: center;
	flex: none;
	width: 84px;
	height: 84px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 6px;
	background: #fff;
	box-shadow: none;
	cursor: pointer;
	overflow: hidden;
	opacity: 0.6;
	transition: opacity 0.2s, box-shadow 0.2s;
}
.dd-galeria .dd-galeria-mini img { width: 100%; height: 100%; max-width: none; max-height: none; padding: 6px; object-fit: contain; border-radius: 0; background: transparent; }
.dd-galeria-mini:hover, .dd-galeria-mini:focus-visible { opacity: 1; background: #fff; }
.dd-galeria-mini[aria-selected="true"] { opacity: 1; box-shadow: inset 0 0 0 1px var(--pc-ameixa); }
.dd-galeria :focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 3px; }
/* ---------- Painel de compra (sem cartão) ---------- */
.dd-pd-painel.e-con, .dd-pd-painel { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none; font-family: var(--gd-fonte); color: var(--pc-ameixa); }
.dd-pd-painel > .elementor-element { width: 100%; }
.dd-pd-painel > .elementor-element > .elementor-widget-container { margin: 0; }
.dd-pd-painel .elementor-widget-shortcode:has(.elementor-shortcode:empty) { display: none; }
/* Âncora #dd-comprar (dobras de venda rolam até o topo do painel) */
.dd-pd-ancora { display: block; height: 0; scroll-margin-top: 120px; }
/* Stories [dd_pd_stories]: círculos de 56px com anel em degradê caramelo → marrom e respiro branco */
.dd-pd-stories { list-style: none; display: flex; flex-wrap: wrap; gap: 16px; margin: 0 0 16px; padding: 0; }
.dd-pd-stories li { margin: 0; padding: 0; }
.dd-pd-stories *, .dd-pd-prova * { box-sizing: border-box; }
.dd-pd-painel button.dd-pd-story, .dd-pd-painel button.dd-pd-story:hover, .dd-pd-painel button.dd-pd-story:focus { display: block; width: 58px; height: 58px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: none; box-shadow: none; cursor: pointer; }
.dd-pd-story-anel { box-sizing: border-box; display: block; width: 100%; height: 100%; padding: 2px; border: 2.5px solid transparent; border-radius: 50%; background: linear-gradient(#fff, #fff) padding-box, linear-gradient(160deg, #F77737 0%, #F0516A 30%, #DD2A7B 58%, #B72BA6 100%) border-box; /* anel do Instagram (ref2.png) feito com borda: fica igual em volta toda mesmo em posição fracionada */ transition: transform 0.2s; }
.dd-pd-story:hover .dd-pd-story-anel { transform: scale(1.04); }
.dd-pd-painel .dd-pd-story-anel img, .dd-pd-story-play { display: block; width: 100%; height: 100%; max-width: none; border: 0 !important; border-radius: 50% !important; background: #fff; object-fit: cover; }
.dd-pd-painel .dd-pd-stories--exemplo .dd-pd-story-anel img { padding: 3px; object-fit: contain; }
.dd-pd-story-play { display: grid; place-items: center; background: #E9E1D6; color: var(--pc-ameixa); }
.dd-pd-story-play svg { width: 20px; height: 20px; fill: currentColor; }
.dd-pd-painel button.dd-pd-story:focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 3px; }
/* Sem capa: o 1º quadro do vídeo no círculo */
.dd-pd-painel .dd-pd-story-anel video { display: block; width: 100%; height: 100%; max-width: none; border: 0 !important; border-radius: 50% !important; background: #E9E1D6; object-fit: cover; pointer-events: none; }
.dd-pd-stories li.dd-pd-stories-exemplo { align-self: center; padding: 2px 6px; border: 1px dashed #7D6A55; border-radius: 3px; font-size: 10px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: #6F5D49; }
/* Visualizador de stories em tela cheia (assets/js/produto.js) */
html.dd-st-on { overflow: hidden; }
.dd-st { position: fixed; inset: 0; z-index: 100000; display: grid; place-items: center; background: rgba(20, 17, 14, 0.94); font-family: var(--gd-fonte); -webkit-user-select: none; user-select: none; }
.dd-st[hidden] { display: none; }
.dd-st-palco { position: relative; height: min(calc(100dvh - 40px), 860px); aspect-ratio: 9 / 16; max-width: 100vw; overflow: hidden; border-radius: 10px; background: #000; animation: dd-st-entra 0.22s ease-out; }
@keyframes dd-st-entra { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: none; } }
.dd-st-midia { position: absolute; inset: 0; display: grid; place-items: center; }
.dd-st-midia video, .dd-st-midia img { width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: 0; }
.dd-st-midia img.is-foto { object-fit: contain; background: #fff; }
.dd-st-topo { position: absolute; top: 0; left: 0; right: 0; z-index: 3; padding: 10px 10px 28px; background: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0)); }
.dd-st-barras { display: flex; gap: 4px; }
.dd-st-barras span { flex: 1; height: 2.5px; overflow: hidden; border-radius: 2px; background: rgba(255, 255, 255, 0.38); }
.dd-st-barras i { display: block; width: 0; height: 100%; background: #fff; }
.dd-st-cab { display: flex; align-items: center; gap: 10px; margin-top: 10px; color: #fff; }
.dd-st-avatar { display: grid; place-items: center; flex: none; width: 34px; height: 34px; border-radius: 50%; background: #fff; }
.dd-st-avatar img { width: 22px; height: 22px; }
.dd-st-nomes { display: grid; flex: 1; min-width: 0; line-height: 1.2; }
.dd-st-nomes b { font-size: 14px; font-weight: 500; }
.dd-st-nomes span { overflow: hidden; font-size: 12.5px; opacity: 0.85; text-overflow: ellipsis; white-space: nowrap; }
.dd-st button.dd-st-botao, .dd-st button.dd-st-botao:hover, .dd-st button.dd-st-botao:focus { display: grid; place-items: center; flex: none; width: 40px; height: 40px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; box-shadow: none; color: #fff; cursor: pointer; }
.dd-st button.dd-st-botao[hidden] { display: none; }
.dd-st-botao svg, .dd-st-botao .dd-pd-ic { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.dd-st button.dd-st-zona, .dd-st button.dd-st-zona:hover, .dd-st button.dd-st-zona:focus { position: absolute; top: 90px; bottom: 84px; z-index: 2; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: none; }
.dd-st-ant { left: 0; width: 35%; }
.dd-st-prox { right: 0; width: 65%; }
.dd-st-rodape { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; padding: 28px 14px calc(14px + env(safe-area-inset-bottom, 0px)); background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5)); }
.dd-st button.dd-st-comprar, .dd-st button.dd-st-comprar:focus { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; height: 50px; margin: 0; padding: 0 16px; border: 0; border-radius: 4px; background: #fff; box-shadow: none; color: var(--pc-ameixa); font: 500 15px var(--gd-fonte); cursor: pointer; }
.dd-st button.dd-st-comprar:hover { background: #E9E1D6; color: var(--pc-ameixa); }
.dd-st-comprar .dd-pd-ic { width: 18px; height: 18px; }
.dd-st :is(button):focus-visible { outline: 2px solid #C9B79C; outline-offset: 2px; }
.dd-st.is-pausado .dd-st-topo, .dd-st.is-pausado .dd-st-rodape { opacity: 0; transition: opacity 0.2s; }
@media (max-width: 600px) {
	.dd-st { background: #000; }
	.dd-st-palco { width: 100vw; height: 100dvh; aspect-ratio: auto; border-radius: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.dd-st-palco { animation: none; }
	.dd-st.is-pausado .dd-st-topo, .dd-st.is-pausado .dd-st-rodape { transition: none; }
	.dd-pd-story-anel { transition: none; }
}
/* Prova social [dd_pd_prova]: avatares com iniciais + estrelas + "4,9/5 | 12 avaliações" */
.dd-pd-prova, .dd-pd-prova:visited { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 14px 0 0; font-family: var(--gd-fonte); font-size: 14px; line-height: 1.2; color: var(--pc-ameixa); text-decoration: none; }
a.dd-pd-prova:hover .dd-pd-prova-texto b { text-decoration: underline; text-underline-offset: 3px; }
.dd-pd-prova-avatares { display: inline-flex; }
.dd-pd-painel .dd-pd-prova-avatares img { display: block; width: 26px; height: 26px; max-width: none; margin-left: -7px; border: 2px solid #fff !important; border-radius: 50% !important; object-fit: cover; }
.dd-pd-painel .dd-pd-prova-avatares img:first-child { margin-left: 0; }
.dd-pd-prova-estrelas { font-family: Arial, Helvetica, sans-serif; font-size: 13px; letter-spacing: 1px; line-height: 1; color: #000; }
.dd-pd-prova-vazias { color: #D9D9D9; }
.dd-pd-prova-texto b { font-weight: 500; color: #000; }
/* Nome: Cormorant Garamond 34px, sem negrito (a fonte só tem um peso) */
.dd-pd-painel .elementor-widget-woocommerce-product-title { margin: 0; }
.dd-pd-painel .elementor-widget-woocommerce-product-title .product_title, .dd-pd-painel .elementor-widget-woocommerce-product-title .elementor-heading-title {
	margin: 0;
	font-family: var(--gd-fonte-marca);
	font-size: 36px;
	font-weight: 400;
	line-height: 1.12;
	letter-spacing: 0;
	color: var(--pc-ameixa);
}
.dd-pd-material { margin: 6px 0 0; font-size: 15px; line-height: 1.45; color: #6A6157; }
/* Preço: por grande, "de" riscado ao lado, selo marrom em reais; Pix e cartão embaixo (inc/precos.php) */
.dd-pd-painel .elementor-widget-woocommerce-product-price { margin-top: 20px; }
.dd-pd-painel .elementor-widget-woocommerce-product-price .price { display: flex; flex-wrap: wrap; align-items: center; gap: 0 14px; margin: 0; font-family: var(--gd-fonte); font-size: 26px; font-weight: 500; line-height: 1; color: var(--pc-ameixa); }
.dd-pd-painel .dd-preco-principal { display: flex; flex: 0 0 100%; align-items: center; flex-wrap: wrap; gap: 4px 12px; }
.dd-pd-painel .dd-preco-principal ins { order: 1; text-decoration: none; font-weight: 500; }
.dd-pd-painel .dd-preco-principal .woocommerce-Price-amount { color: inherit; }
.dd-pd-painel .dd-preco-principal del { order: 2; margin: 0; font-size: 22px; font-weight: 400; color: #979086; text-decoration-thickness: 1.5px; }
.dd-pd-painel .dd-preco-principal del .woocommerce-Price-amount { font-size: inherit; font-weight: inherit; color: #979086; }
.dd-pd-painel .dd-preco-off {
	order: 3;
	display: inline-flex;
	align-items: center;
	height: 24px;
	padding: 0 9px;
	border-radius: 3px;
	background: var(--pc-ameixa);
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1;
	white-space: nowrap;
}
.dd-pd-painel .dd-apartir { font-size: 13px; font-weight: 600; color: #6A6157; }
.dd-pd-painel .price .dd-pix, .dd-pd-painel .price .dd-parcela { display: flex; flex: 0 0 100%; align-items: center; gap: 6px; margin-top: 12px; font-size: 14px; line-height: 1.3; }
.dd-pd-painel .price .dd-parcela--pdp { margin-top: 8px; font-size: 14px; }
.dd-pd-painel .price .dd-pix { font-weight: 500; color: var(--pc-ameixa); }
.dd-pd-painel .price .dd-pix .woocommerce-Price-amount { font-size: inherit; color: inherit; }
.dd-pd-painel .price .dd-parcela { font-weight: 400; color: #6A6157; }
.dd-pd-painel .price .dd-pix .dd-pd-ic, .dd-pd-painel .price .dd-parcela .dd-pd-ic { width: 18px; height: 18px; }
/* Símbolo do Pix (assets/icones/pix-logo.svg, cheio) na cor da marca Pix. */
.dd-pd-painel .price .dd-pix .dd-pd-ic { width: 16px; height: 16px; fill: #32BCAD; stroke: none; color: #32BCAD; }
.dd-pd-painel .price .dd-parcela .dd-pd-ic { color: var(--pc-ameixa); }
/* 4 características em quadradinhos areia [dd_pd_atributos] (fora do modelo desde 02/10/2026) */
.dd-pd-atributos { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 24px 0 0; padding: 0; }
.dd-pd-atributos li {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 92px;
	margin: 0;
	padding: 14px 8px 12px;
	border-radius: 8px;
	background: #E9E1D6;
	text-align: center;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--pc-ameixa);
}
.dd-pd-atributos .dd-pd-ic { width: 26px; height: 26px; color: var(--pc-rosa-escuro); }
/* "Mais formas de pagamento" [dd_pd_pagamento] */
.dd-pd-pag { margin-top: 16px; font-family: var(--gd-fonte); }
.dd-pd-painel button.dd-pd-pag-abrir, .dd-pd-painel button.dd-pd-pag-abrir:hover, .dd-pd-painel button.dd-pd-pag-abrir:focus { display: inline-flex; align-items: center; gap: 8px; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: var(--pc-ameixa); font: 400 14px/1.3 var(--gd-fonte); cursor: pointer; }
.dd-pd-pag-abrir > span { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: #979086; }
.dd-pd-pag-abrir:hover > span { text-decoration-color: currentColor; }
.dd-pd-pag-abrir .dd-pd-ic--cartao { width: 20px; height: 20px; color: var(--pc-ameixa); }
.dd-pd-pag-seta { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.2s; }
.dd-pd-pag-abrir[aria-expanded="true"] .dd-pd-pag-seta { transform: rotate(180deg); }
.dd-pd-painel button.dd-pd-pag-abrir:focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 3px; }
.dd-pd-pag-painel { display: grid; gap: 16px; margin-top: 12px; padding: 16px; border: 1px solid #DED5C8; border-radius: 10px; font-size: 13.5px; color: #6A6157; }
.dd-pd-pag-painel[hidden] { display: none; }
.dd-pd-pag-bloco + .dd-pd-pag-bloco { padding-top: 14px; border-top: 1px solid #EBE8E3; }
.dd-pd-pag-titulo { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; font-size: 14px; font-weight: 500; color: var(--pc-ameixa); }
.dd-pd-pag-titulo .dd-pd-ic { width: 18px; height: 18px; }
.dd-pd-pag-titulo .dd-pd-ic--pix-logo { width: 16px; height: 16px; fill: #32BCAD; stroke: none; }
.dd-pd-pag-linha { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; margin: 0; }
.dd-pd-pag-linha strong, .dd-pd-pag-linha .woocommerce-Price-amount { font-size: 15px; font-weight: 500; color: var(--pc-ameixa); }
.dd-pd-pag-tabela, .dd-pd-pag-tabela tbody, .dd-pd-pag-tabela tr, .dd-pd-pag-tabela th, .dd-pd-pag-tabela td { border: 0 !important; background: none !important; }
.dd-pd-pag-tabela { width: 100%; margin: 0; border-collapse: collapse; font-size: 13.5px; }
.dd-pd-pag-tabela tbody { display: grid; grid-template-rows: repeat(6, auto); grid-auto-flow: column; column-gap: 28px; }
.dd-pd-pag-tabela tr { display: grid; grid-template-columns: 34px 1fr auto; align-items: baseline; padding: 5px 0; border-bottom: 1px solid #EBE8E3 !important; }
.dd-pd-pag-tabela th, .dd-pd-pag-tabela td { padding: 0; text-align: left; font-weight: 400; color: #6A6157; }
.dd-pd-pag-tabela th { font-weight: 500; color: var(--pc-ameixa); }
.dd-pd-pag-tabela td:nth-child(2), .dd-pd-pag-tabela td .woocommerce-Price-amount { color: var(--pc-ameixa); font-weight: 600; }
.dd-pd-pag-tabela td:last-child { font-size: 12px; text-align: right; }
.dd-pd-pag-nota { margin: 10px 0 0; font-size: 12px; line-height: 1.45; }
.dd-pd-pag-outros { margin: 0; padding-left: 1.1em; }
/* Calculadora de frete [dd_pd_entrega]: no fim do painel, depois das garantias */
.dd-pd-entrega { display: grid; gap: 14px; margin-top: 2px; padding: 16px; border: 1px solid #DED5C8; border-radius: 10px; font-family: var(--gd-fonte); }
.dd-pd-entrega-topo { display: flex; align-items: center; gap: 12px; }
.dd-pd-entrega-topo .dd-pd-ic { width: 26px; height: 26px; color: var(--pc-rosa-escuro); }
.dd-pd-entrega-topo p { display: grid; flex: 1; gap: 2px; min-width: 0; margin: 0; }
.dd-pd-painel button.dd-pd-frete-abrir, .dd-pd-painel button.dd-pd-frete-abrir:hover, .dd-pd-painel button.dd-pd-frete-abrir:focus { display: inline-flex; flex: none; align-items: center; gap: 6px; margin: 0; padding: 8px 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: var(--pc-ameixa); font: 500 13.5px/1.2 var(--gd-fonte); cursor: pointer; }
.dd-pd-frete-abrir > span { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: #979086; }
.dd-pd-frete-abrir:hover > span { text-decoration-color: currentColor; }
.dd-pd-entrega-topo .dd-pd-frete-abrir .dd-pd-ic { width: 18px; height: 18px; color: var(--pc-ameixa); }
.dd-pd-frete-abrir[aria-expanded="true"] { visibility: hidden; }
.dd-pd-painel button.dd-pd-frete-abrir:focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 3px; }
.dd-pd-frete-corpo { display: grid; gap: 12px; overflow: hidden; }
.dd-pd-frete-corpo[hidden] { display: none; }
.dd-pd-entrega-topo strong { font-size: 14.5px; font-weight: 500; color: var(--pc-ameixa); }
.dd-pd-entrega-topo span { font-size: 13.5px; line-height: 1.4; color: #6A6157; }
.dd-pd-frete-form { display: flex; gap: 8px; margin: 0; }
.dd-pd-painel .dd-pd-cep:has(input[aria-invalid="true"]) { border-color: #B3261E; }


.dd-pd-frete-resultado:empty { display: none; }
.dd-pd-frete-resultado { font-size: 13.5px; line-height: 1.5; color: #6A6157; }
.dd-pd-frete-aviso, .dd-pd-frete-local { margin: 0; }
.dd-pd-frete-local { margin-bottom: 6px; font-weight: 600; color: var(--pc-ameixa); }
.dd-pd-frete-aviso a { color: var(--pc-ameixa); font-weight: 500; text-decoration: underline; text-underline-offset: 2px; }
.dd-pd-frete-opcoes { list-style: none; margin: 0; padding: 0; }
.dd-pd-frete-opcoes li { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 0; padding: 8px 0; border-top: 1px solid #EBE8E3; }
.dd-pd-frete-opcoes li:first-child { border-top: 0; padding-top: 0; }
.dd-pd-frete-nome { display: grid; gap: 1px; }
.dd-pd-frete-nome b { font-weight: 600; color: var(--pc-ameixa); }
.dd-pd-frete-nome small { font-size: 12.5px; }
.dd-pd-frete-opcoes strong { white-space: nowrap; color: var(--pc-ameixa); }
.dd-pd-frete-opcoes strong.is-gratis { color: #6F5D49; }
/* ---------- Formulário de compra ---------- */
.dd-pd-painel .elementor-widget-woocommerce-product-add-to-cart { margin-top: 18px; }
/* (!important: vence a coluna que elementor-loja.css dá ao formulário em .dd-compra) */
.dd-compra .dd-pd-painel form.cart, .dd-compra .dd-pd-painel form.cart .woocommerce-variation-add-to-cart { display: flex; flex-direction: row !important; flex-wrap: wrap !important; align-items: center; gap: 10px; width: 100%; margin: 0; }
.dd-compra .dd-pd-painel form.cart::before, .dd-compra .dd-pd-painel form.cart::after { display: none !important; content: none !important; }
.dd-pd-painel form.cart > :is(.dd-qtd, table.variations, .single_variation_wrap, .containerCalculator, .woocommerce-variation, .reset_variations) { width: 100%; flex: 0 0 100%; }
.dd-pd-painel .elementor-widget-woocommerce-product-add-to-cart .stock { display: none; }
.dd-pd-painel form.cart .woocommerce-variation-description:empty, .dd-pd-painel form.cart .woocommerce-variation-availability:empty { display: none; }
.dd-pd-painel form.cart .single_variation_wrap { margin: 0; }
/* Produto simples: a quantidade some (vai 1; o campo continua no formulário) */
.dd-pd-painel form.cart:not(.variations_form) .quantity { display: none !important; }
/* Botão largo, marrom, cantos de joalheria */
.dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button, .dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button.alt {
	flex: 1 1 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
	height: 54px;
	margin: 0 !important;
	padding: 0 24px;
	border: 0;
	border-radius: var(--gk-raio, 6px);
	background: var(--pc-ameixa);
	color: #fff;
	font-family: var(--gd-fonte);
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.02em;
	text-transform: none;
	white-space: nowrap;
	transition: background-color 0.2s;
}
.dd-compra .dd-pd-painel form.cart:not(.variations_form) button.single_add_to_cart_button { flex-basis: 100%; }
.dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button:hover { background: var(--pc-rosa-escuro); color: #fff; }
.dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button:focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 3px; }
.dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button.disabled, .dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button:disabled { opacity: 0.5; }
.dd-pd-painel .single_add_to_cart_button .dd-pd-sacola { display: grid; place-items: center; flex: none; color: inherit; }
.dd-pd-painel .single_add_to_cart_button .dd-pd-sacola .dd-pd-ic { width: 18px; height: 18px; }
.dd-pd-painel .single_add_to_cart_button.loading .dd-pd-sacola { opacity: 0.6; }
.dd-pd-painel .single_add_to_cart_button.added .dd-pd-texto::after { content: " \2713"; }
.dd-pd-painel form.cart .added_to_cart { display: none; }
/* Quantidade (só nos produtos com variação): caixa de cantos 4px ao lado do botão */
.dd-pd-painel .quantity { display: inline-flex !important; align-items: center; height: 54px; padding: 0 4px; margin: 0 !important; border: 1px solid #DED5C8; border-radius: 6px; background: #fff; flex: none; }
.dd-pd-painel .quantity .qty, .dd-pd-painel .quantity input.qty { width: 32px; height: 40px; padding: 0; border: 0; background: transparent; box-shadow: none; text-align: center; font: 500 16px var(--gd-fonte); color: var(--pc-ameixa); -moz-appearance: textfield; appearance: textfield; }
.dd-pd-painel .quantity .qty::-webkit-outer-spin-button, .dd-pd-painel .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.dd-compra .dd-pd-painel .cart .quantity button.dd-pd-qtd-botao { display: grid; place-items: center; width: 34px; height: 34px; margin: 0 !important; padding: 0; border: 0; border-radius: 3px; background: transparent; box-shadow: none; color: var(--pc-ameixa); cursor: pointer; }
.dd-compra .dd-pd-painel .cart .quantity button.dd-pd-qtd-botao:hover:not(:disabled) { background: #E9E1D6; }
.dd-compra .dd-pd-painel .cart .quantity button.dd-pd-qtd-botao:disabled { opacity: 0.3; cursor: default; }
.dd-pd-painel .dd-pd-qtd-botao .dd-pd-ic { width: 16px; height: 16px; }
/* Variações que não são kits: select do WooCommerce arrumado */
.dd-pd-painel table.variations { margin: 0 0 12px; }
.dd-pd-painel table.variations th.label { padding: 0 0 6px; font-size: 13px; font-weight: 500; }
.dd-pd-painel table.variations select { width: 100%; height: 46px; padding: 0 14px; border: 1px solid #DED5C8; border-radius: 6px; background: #fff; font: 600 14px var(--gd-fonte); color: var(--pc-ameixa); }
.dd-pd-painel .reset_variations { font-size: 12px; color: #6A6157; }
/* ---------- 3 garantias [dd_beneficios_rapidos]: ícone em cima, texto embaixo ---------- */
.dd-pd-checks { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 22px 0 0; padding: 0 0 22px; }
.dd-pd-checks li { display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; padding: 0; text-align: center; font-size: 12.5px; font-weight: 600; line-height: 1.25; color: var(--pc-ameixa); }
.dd-pd-checks .dd-pd-ic { width: 26px; height: 26px; color: var(--pc-rosa-escuro); }
/* ---------- CEP ---------- */
/* A calculadora do Melhor Envio (se o plugin for ligado) fica escondida: a cotação do painel ([dd_pd_entrega],
   /wp-json/mandala/v1/frete) já roda os métodos dele. */
.dd-pd-painel .containerCalculator, .dd-compra .containerCalculator { display: none !important; }
.dd-pd-painel .dd-pd-frete { display: flex; gap: 8px; }
.dd-pd-painel .dd-pd-cep { flex: 1; display: flex; align-items: center; gap: 8px; height: 46px; min-width: 0; padding: 0 14px; border: 1px solid #DED5C8; border-radius: 6px; background: #fff; color: #6A6157; }
.dd-pd-painel .dd-pd-cep:focus-within { border-color: var(--pc-ameixa); }
.dd-pd-painel .dd-pd-cep .dd-pd-ic { width: 18px; height: 18px; }
.dd-pd-painel .dd-pd-cep input { flex: 1; width: 100% !important; min-width: 0; height: 44px; padding: 0 !important; border: 0 !important; border-radius: 0; background: transparent; box-shadow: none; font: 600 14px var(--gd-fonte); color: var(--pc-ameixa); outline: none; }
.dd-pd-painel .dd-pd-cep-botao, .dd-pd-painel .dd-pd-cep-botao:focus { flex: none; height: 46px; padding: 0 18px; border: 0; border-radius: 6px; background: var(--pc-ameixa); color: #fff; font: 500 13.5px var(--gd-fonte); cursor: pointer; }
.dd-pd-painel .dd-pd-cep-botao:hover { background: var(--pc-rosa-escuro); color: #fff; }
.dd-pd-painel .dd-pd-cep-botao:disabled { opacity: 0.6; cursor: wait; }
.dd-pd-painel .dd-pd-cep-botao:focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 2px; }
/* ---------- Acordeões de linhas finas com ícone [dd_acordeoes] (fora do modelo desde 02/10/2026) ---------- */
.dd-pd-acordeoes { font-family: var(--gd-fonte); color: var(--pc-ameixa); border-bottom: 1px solid #DED5C8; }
.dd-pd-item { margin: 0; padding: 0; border: 0; border-top: 1px solid #DED5C8; }
.dd-pd-pergunta { display: flex; align-items: center; gap: 14px; padding: 17px 2px; list-style: none; cursor: pointer; }
.dd-pd-pergunta::-webkit-details-marker { display: none; }
.dd-pd-pergunta::marker { content: ""; }
.dd-pd-pergunta .dd-pd-ic { width: 22px; height: 22px; color: var(--pc-rosa-escuro); }
.dd-pd-q { flex: 1; font-size: 15px; font-weight: 600; }
.dd-pd-pergunta:hover .dd-pd-q { color: var(--pc-rosa-escuro); }
.dd-pd-sinal { position: relative; flex: none; width: 14px; height: 14px; }
.dd-pd-sinal::before, .dd-pd-sinal::after { content: ""; position: absolute; left: 0; top: 50%; width: 14px; height: 1.5px; margin-top: -0.75px; border-radius: 1px; background: var(--pc-ameixa); transition: transform 0.25s; }
.dd-pd-sinal::after { transform: rotate(90deg); }
.dd-pd-item[open] .dd-pd-sinal::after { transform: rotate(0deg); }
.dd-pd-r { overflow: hidden; }
.dd-pd-r-texto { padding: 0 28px 20px 38px; color: #6A6157; font-size: 14.5px; line-height: 1.6; }
.dd-pd-r-texto p { margin: 0 0 10px; }
.dd-pd-r-texto p:last-child { margin-bottom: 0; }
.dd-pd-r-texto ul, .dd-pd-r-texto ol { margin: 0 0 10px; padding-left: 1.2em; }
.dd-pd-r-texto li::marker { color: var(--pc-rosa-escuro); }
.dd-pd-r-texto strong { color: var(--pc-ameixa); }
.dd-pd-r-texto a { color: var(--pc-ameixa); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.dd-pd-r-texto a:hover { color: var(--pc-rosa-escuro); }
.dd-pd-r-texto img { max-width: 100%; height: auto; border-radius: 4px; }
.dd-pd-pergunta:focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 2px; border-radius: 2px; }
/* Seção de avaliações sem avaliação ([dd_avaliacoes_produto] devolve só a marca .dd-pa-fora): o container some. */
.e-con:has(> .e-con-inner > .elementor-widget-shortcode .dd-pa-fora), .e-con:has(> .elementor-widget-shortcode .dd-pa-fora) { display: none !important; }
/* ---------- Barra fixa de compra (celular) ---------- */
.dd-pd-barra {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 79;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid #DED5C8;
	background: #fff;
	box-shadow: 0 -10px 24px -18px rgba(20, 17, 14, 0.45);
	font-family: var(--gd-fonte);
	color: var(--pc-ameixa);
	transform: translateY(110%);
	visibility: hidden;
	transition: transform 0.3s ease, visibility 0s linear 0.3s;
}
.dd-pd-barra.is-visivel { transform: none; visibility: visible; transition: transform 0.3s ease, visibility 0s; }
.dd-pd-barra-foto { flex: none; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 6px; background: #fff; overflow: hidden; }
.dd-pd-barra-foto img { width: 100%; height: 100%; padding: 3px; object-fit: contain; }
.dd-pd-barra-info { flex: 1; min-width: 0; display: grid; gap: 2px; }
.dd-pd-barra-nome { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-family: var(--gd-fonte-marca); font-size: 16px; line-height: 1.2; }
.dd-pd-barra-preco { display: flex; align-items: baseline; gap: 6px; font-size: 15px; line-height: 1.2; }
.dd-pd-barra-preco strong { font-weight: 500; }
.dd-pd-barra-preco del { font-size: 12px; color: #979086; }
.dd-pd-barra-preco .woocommerce-Price-amount { color: inherit; }
.dd-pd-barra .dd-pd-barra-botao, .dd-pd-barra .dd-pd-barra-botao:focus {
	flex: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 46px;
	padding: 0 18px;
	border: 0;
	border-radius: var(--gk-raio, 6px);
	background: var(--pc-ameixa);
	color: #fff;
	font: 500 14.5px/1 var(--gd-fonte);
	cursor: pointer;
	transition: background-color 0.2s;
}
.dd-pd-barra .dd-pd-barra-botao:hover { background: var(--pc-rosa-escuro); color: #fff; }
.dd-pd-barra .dd-pd-barra-botao:focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 2px; }
.dd-pd-barra-botao .dd-pd-ic { width: 18px; height: 18px; }
@media (min-width: 990px) {
	.dd-pd-barra { display: none; }
}
@media (max-width: 989px) {
	/* espaço no fim da página para a barra não cobrir o rodapé */
	body.single-product { padding-bottom: 72px; }
}
@media (prefers-reduced-motion: reduce) {
	.dd-pd-barra, .dd-pd-barra.is-visivel { transition: none; }
	.dd-pd-sinal::before, .dd-pd-sinal::after, .dd-galeria-mini, .dd-galeria-seta, .dd-qtd-item label { transition: none; }
	.dd-galeria-entra-dir, .dd-galeria-entra-esq { animation: none; }
}
/* ---------- Tablet e celular ---------- */
@media (max-width: 989px) {
	.dd-pd-galeria-col.e-con { position: relative !important; top: auto; }
	/* miniaturas em fileira embaixo da foto */
	.dd-galeria { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	.dd-galeria-foto { grid-column: 1; }
	.dd-galeria-minis { grid-column: 1; grid-row: 2; flex-direction: row; gap: 8px; overflow-x: auto; scrollbar-width: none; }
	.dd-galeria-minis::-webkit-scrollbar { display: none; }
	.dd-galeria-mini { width: 68px; height: 68px; }
}
@media (max-width: 767px) {
	/* foto de ponta a ponta; o painel e as miniaturas com 16px de respiro */
	.dd-galeria-foto { border-radius: 0; aspect-ratio: 1 / 0.92; }
	.dd-galeria-foto::after { bottom: 12px; width: 18px; height: 18px; margin-left: -9px; }
	.dd-galeria-selos { top: 12px; left: 12px; }
	.dd-galeria-lupa, .dd-galeria-lupa:visited { top: 12px; right: 12px; width: 36px; height: 36px; }
	.dd-galeria-minis { padding: 0 16px; }
	.dd-galeria-mini { width: 60px; height: 60px; }
	.dd-pd-painel.e-con, .dd-pd-painel { padding: 4px 16px 0 !important; }
	.dd-pd-painel .elementor-widget-woocommerce-product-title .product_title, .dd-pd-painel .elementor-widget-woocommerce-product-title .elementor-heading-title { font-size: 28px; }
	.dd-pd-material { font-size: 14.5px; }
	.dd-pd-painel .elementor-widget-woocommerce-product-price .price { font-size: 24px; }
	.dd-pd-painel .dd-preco-principal del { font-size: 19px; }
	.dd-pd-stories { gap: 12px; margin-bottom: 14px; }
	.dd-pd-painel button.dd-pd-story, .dd-pd-painel button.dd-pd-story:hover, .dd-pd-painel button.dd-pd-story:focus { width: 54px; height: 54px; }
	.dd-pd-prova, .dd-pd-prova:visited { font-size: 13px; }
	.dd-pd-pag-tabela tbody { grid-template-rows: none; grid-auto-flow: row; grid-template-columns: 1fr 1fr; column-gap: 18px; }
	.dd-pd-painel .price .dd-pix, .dd-pd-painel .price .dd-parcela { flex: 0 0 100%; font-size: 13.5px; }
	.dd-pd-painel .price .dd-parcela { margin-top: 6px; font-size: 13.5px; }
	.dd-pd-atributos { gap: 6px; margin-top: 20px; }
	.dd-pd-atributos li { min-height: 84px; padding: 12px 4px 10px; font-size: 11.5px; }
	.dd-pd-atributos .dd-pd-ic { width: 24px; height: 24px; }
	.dd-pd-checks { gap: 4px; }
	.dd-pd-checks li { font-size: 11.5px; }
	.dd-pd-checks .dd-pd-ic { width: 24px; height: 24px; }
	.dd-pd-r-texto { padding-right: 8px; }
}
/* ---------- Kits "Leve 1/2/3" (quantidade.js, atributo pa_quantidade): herdado da Pump Cream; a Mandala não usa hoje ---------- */
/* Kits "1 / 2 / 3 potes" (quantidade.js) em cards: bolinha, nome + brinde + preço por unidade, preço à direita.
   O escolhido ganha a borda ameixa, o fundo papel e a tampa rosa. */
.dd-pd-painel .dd-qtd-titulo { margin: 0 0 2px; padding: 0; font-size: 13px; font-weight: 600; color: var(--pc-ameixa); }
.dd-pd-painel .dd-qtd-item { position: relative; }
.dd-pd-painel .dd-qtd-item label {
	position: relative;
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 68px;
	padding: 14px 18px;
	border: 1.5px solid #DED5C8;
	border-radius: 10px;
	background: #fff;
	color: var(--pc-ameixa);
	cursor: pointer;
	transition: border-color 0.2s, background-color 0.2s;
}
.dd-pd-painel .dd-qtd-item label:hover { border-color: #D0C6B9; }
.dd-pd-painel .dd-qtd-item input:checked + label { border-color: var(--pc-ameixa); background: var(--pc-papel); }
/* a tampa do pote */
.dd-pd-painel .dd-qtd-item input:focus-visible + label { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 3px; }
.dd-pd-painel .dd-qtd-item input:disabled + label { opacity: 0.5; cursor: not-allowed; }
.dd-pd-painel .dd-qtd-nome { font-size: 15.5px; font-weight: 600; }
.dd-pd-painel .dd-qtd-preco s { font-size: 12.5px; font-weight: 600; color: #979086; }
.dd-pd-painel .dd-qtd-preco strong { font-size: 18px; font-weight: 600; color: var(--pc-ameixa); }
.dd-pd-painel .dd-qtd-esgotado { font-size: 12px; font-weight: 600; color: var(--pc-rosa-escuro); }
.dd-pd-painel .dd-preco-escolhido { margin: 0; }
/* O base.css antigo punha os cards em grade com áreas nomeadas: aqui cada peça volta ao fluxo normal. */
.dd-pd-painel .dd-qtd-item label > *, .dd-pd-painel .dd-qtd-info > *, .dd-pd-painel .dd-qtd-preco > * { grid-area: auto; justify-self: auto; }
.dd-pd-painel .dd-qtd-selo {
	position: absolute;
	top: -11px;
	display: inline-flex;
	align-items: center;
	height: 22px;
	padding: 0 10px;
	border-radius: 999px;
	background: var(--pc-ameixa);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.02em;
	left: auto;
	right: 16px;
	width: auto;
}
/* Selo do kit ("Menor preço por unidade") como faixa rosa no topo, dentro do card (pedido de 29/09/2026). */
.dd-pd-painel .dd-qtd-item label:has(.dd-qtd-selo) { flex-wrap: wrap; row-gap: 0; padding-top: 0; border-color: var(--pc-rosa); overflow: hidden; }
.dd-pd-painel .dd-qtd-item label .dd-qtd-selo {
	position: static;
	order: -1;
	flex: 0 0 calc(100% + 36px);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 30px;
	margin: 0 -18px 12px;
	padding: 0 12px;
	border-radius: 0;
	background: var(--pc-rosa);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}
.dd-pd-painel .dd-qtd-item label .dd-qtd-selo::before { content: "\2605"; font-size: 13px; }
.dd-pd-painel .dd-qtd-item input:checked + label:has(.dd-qtd-selo) { border-color: var(--pc-rosa); box-shadow: 0 0 0 1px var(--pc-rosa); }
.dd-pd-painel .dd-qtd-item input:checked + label:has(.dd-qtd-selo)::before { display: none; }
@media (max-width: 767px) {
	.dd-pd-painel .dd-qtd-item label .dd-qtd-selo { flex-basis: calc(100% + 28px); margin: 0 -14px 10px; }
}
/* Preço do topo redesenhado pelo quantidade.js (kits): mesmas regras do preço fixo. */
.dd-pd-painel .dd-preco-escolhido .dd-preco-principal {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 2px 10px;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.1;
	color: var(--pc-ameixa);
}
.dd-pd-painel .dd-preco-escolhido .dd-preco-principal del { order: 0; flex: 0 0 100%; font-size: 15px; font-weight: 600; color: #979086; line-height: 1.3; }
.dd-pd-painel .dd-preco-escolhido .dd-preco-principal ins { order: 1; text-decoration: none; font-weight: 600; }
.dd-pd-painel .dd-preco-escolhido .dd-preco-off {
	order: 2;
	align-self: center;
	display: inline-flex;
	align-items: center;
	height: 26px;
	padding: 0 11px;
	border-radius: 999px;
	background: var(--pc-rosa);
	color: #fff;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1;
}
.dd-pd-painel .dd-preco-escolhido .dd-pix, .dd-pd-painel .dd-preco-escolhido .dd-parcela { display: flex; align-items: center; gap: 8px; }
.dd-pd-painel .dd-preco-escolhido .dd-pix { margin-top: 12px; font-size: 14px; font-weight: 600; color: #2E7D5B; }
.dd-pd-painel .dd-preco-escolhido .dd-parcela { margin-top: 6px; font-size: 14px; color: #6A6157; }
.dd-pd-painel .dd-preco-escolhido .dd-pd-ic { width: 18px; height: 18px; flex: none; }
.dd-pd-painel .dd-preco-escolhido .dd-pix .dd-pd-ic { width: 17px; height: 17px; fill: #32BCAD; stroke: none; }
.dd-pd-painel .dd-preco-escolhido .dd-parcela .dd-pd-ic { color: var(--pc-ameixa); }
@media (max-width: 767px) {
	.dd-pd-painel .dd-preco-escolhido .dd-preco-principal { font-size: 26px; }
}
.dd-pd-painel .dd-qtd { display: grid; margin: 0 0 6px; padding: 0; border: 0; min-width: 0; gap: 8px; }
.dd-pd-painel .dd-qtd-item label { gap: 12px; min-height: 56px; padding: 10px 16px; border-radius: 10px; }
.dd-pd-painel .dd-qtd-item input:checked + label::before {
	content: "";
	position: absolute;
	left: 28px;
	top: -4px;
	width: 26px;
	height: 6px;
	border-radius: 3px;
	background: var(--pc-rosa);
	display: none;
}
/* sem a "tampa" em cima do kit escolhido */
.dd-pd-painel .dd-qtd-radio {
	flex: none;
	border: 1.5px solid #CCC3B8;
	border-radius: 50%;
	background: #fff;
	transition: border-color 0.2s, box-shadow 0.2s;
	width: 18px;
	height: 18px;
}
.dd-pd-painel .dd-qtd-item input:checked + label .dd-qtd-radio { border-color: var(--pc-ameixa); box-shadow: inset 0 0 0 5px var(--pc-ameixa); background: #fff; }
.dd-pd-painel .dd-qtd-info { flex: 1; min-width: 0; display: grid; gap: 0; }
.dd-pd-painel .dd-qtd-linha { display: flex; align-items: baseline; flex-wrap: wrap; gap: 0 6px; }
.dd-pd-painel .dd-qtd-nome { font-size: 14.5px; }
.dd-pd-painel .dd-qtd-estrela { color: var(--pc-rosa); font-size: 13px; }
.dd-pd-painel .dd-qtd-cada { color: #6A6157; font-size: 12px; }
.dd-pd-painel .dd-qtd-brinde { font-weight: 600; color: var(--pc-rosa-escuro); line-height: 1.35; font-size: 12px; }
.dd-pd-painel .dd-qtd-preco { flex: none; text-align: right; justify-items: end; display: flex; align-items: center; gap: 10px; }
.dd-pd-painel .dd-qtd-preco strong { font-size: 15.5px; white-space: nowrap; }
.dd-pd-painel .dd-qtd-economia {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: var(--pc-rosa);
	color: #fff;
	font-weight: 600;
	height: 20px;
	margin-top: 0;
	padding: 0 8px;
	font-size: 10.5px;
}
@media (max-width: 767px) {
	.dd-pd-painel .dd-qtd-item label { min-height: 54px; padding: 9px 12px; gap: 10px; }
	.dd-pd-painel .dd-qtd-preco { flex-direction: column; align-items: flex-end; gap: 2px; }
}
/* ---------- Nota ao lado do nome: estrelas + "4,8 · 12 avaliações" ([dd_nota_produto]) ---------- */
.dd-pa-topo, .dd-pa-topo:visited {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 2px 0 4px;
	font: 400 13.5px var(--gd-fonte);
	color: #6A6157;
	text-decoration: none;
}
.dd-pa-topo b { color: var(--pc-ameixa); font-weight: 600; }
.dd-pa-topo:hover span:last-child { text-decoration: underline; text-underline-offset: 3px; }
.dd-pa-estrelas { display: inline-flex; gap: 2px; line-height: 0; vertical-align: middle; }
.dd-pa-estrelas .fa-av-estrela { width: 16px; height: 16px; fill: #D7CBBB; }
.dd-pa-estrelas .fa-av-estrela.is-cheia { fill: var(--pc-rosa); }
/* ---------- Avaliações (modelo C: o mesmo desenho do FAQ) [dd_avaliacoes_produto] ---------- */
.dd-pa { font-family: var(--gd-fonte); color: var(--pc-ameixa); scroll-margin-top: 110px; }
.dd-pa-grade { display: grid; grid-template-columns: 380px minmax(0, 1fr); gap: 64px; align-items: start; }
.dd-pa-esq { position: sticky; top: 112px; }
.admin-bar .dd-pa-esq { top: 144px; }
.dd-pa .dd-secao-titulo { margin: 0; }
.dd-pa .dd-secao-descricao { margin: 10px 0 0; }
.dd-pa-caixa { margin-top: 24px; padding: 26px; border-radius: 22px; background: var(--pc-ameixa); color: var(--pc-papel); }
.dd-pa-media { display: flex; align-items: center; gap: 16px; }
.dd-pa-media > span:last-child { display: grid; gap: 4px; }
.dd-pa-media small { font-size: 13px; color: #DAD4CC; }
.dd-pa-nota {
	font-family: var(--gd-fonte-marca);
	font-variation-settings: normal;
	font-size: 64px;
	font-weight: 500;
	line-height: 1;
	color: #fff;
}
.dd-pa-caixa .fa-av-estrela { fill: rgba(255, 255, 255, 0.18); }
.dd-pa-caixa .fa-av-estrela.is-cheia { fill: var(--pc-rosa); }
.dd-pa-barras { display: grid; gap: 7px; margin: 18px 0 0; padding: 0; list-style: none; }
.dd-pa-barras li { display: grid; grid-template-columns: 30px 1fr 28px; align-items: center; gap: 10px; font-size: 13px; color: #DAD4CC; }
.dd-pa-barras li span:last-child { text-align: right; }
.dd-pa-barras i { display: block; height: 6px; border-radius: 3px; background: rgba(255, 255, 255, 0.14); overflow: hidden; }
.dd-pa-barras i::before { content: ""; display: block; width: var(--p); height: 100%; border-radius: 3px; background: var(--pc-rosa); }
.dd-pa-botao {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 50px;
	padding: 0 26px;
	border: 0;
	border-radius: var(--gk-raio, 6px);
	font: 600 15px var(--gd-fonte);
	cursor: pointer;
	transition: background-color 0.2s, color 0.2s;
}
.dd-pa .dd-pa-botao--rosa, .dd-pa .dd-pa-botao--rosa:focus { background: var(--pc-rosa); color: #fff; }
.dd-pa .dd-pa-botao--rosa:hover { background: var(--pc-rosa-escuro); color: #fff; }
.dd-pa .dd-pa-botao--ameixa, .dd-pa .dd-pa-botao--ameixa:focus { background: var(--pc-ameixa); color: var(--pc-papel); }
.dd-pa .dd-pa-botao--ameixa:hover { background: var(--pc-rosa-escuro); color: #fff; }
.dd-pa-caixa .dd-pa-botao { width: 100%; margin-top: 22px; }
.dd-pa-aviso { margin: 14px 0 0; font-size: 13px; color: #DAD4CC; }
.dd-pa-obrigado { margin: 0 0 14px; padding: 14px 20px; border-radius: 10px; background: var(--pc-blush); font-weight: 500; font-size: 14.5px; }
/* Lista: cartão branco de borda fina, itens separados por linha fina */
.dd-pa-lista { padding: 4px 28px; border: 1px solid #DED5C8; border-radius: 22px; background: #fff; }
.dd-pa-item { display: grid; gap: 10px; padding: 22px 0; }
.dd-pa-item[hidden] { display: none; }
.dd-pa-item + .dd-pa-item { border-top: 1px solid #DED5C8; }
.dd-pa-item-cab { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.dd-pa-autor { display: flex; align-items: center; gap: 12px; min-width: 0; }
.dd-pa-autor strong { display: block; font-size: 14.5px; font-weight: 600; }
.dd-pa-autor small { font-size: 12.5px; color: #6A6157; }
.dd-pa-verificada { color: #2E7D5B; font-weight: 500; }
.dd-pa-avatar {
	display: grid;
	place-items: center;
	flex: none;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--pc-blush);
	color: var(--pc-rosa-escuro);
	font-weight: 600;
	font-size: 14px;
}
.dd-pa-item-nota { flex: none; line-height: 0; }
.dd-pa-texto { font-size: 15px; line-height: 1.6; color: #2F2A24; }
.dd-pa-texto p { margin: 0 0 8px; }
.dd-pa-texto p:last-child { margin-bottom: 0; }
.dd-pa .dd-pa-mais, .dd-pa .dd-pa-mais:focus {
	display: block;
	width: 100%;
	padding: 18px 0 20px;
	border: 0;
	border-top: 1px solid #DED5C8;
	border-radius: 0;
	background: none;
	font: 600 14px var(--gd-fonte);
	color: var(--pc-ameixa);
	cursor: pointer;
}
.dd-pa .dd-pa-mais:hover { background: none; color: var(--pc-rosa-escuro); }
/* Formulário: estrelas rosa, campos em cápsula */
.dd-pa-form {
	display: grid;
	gap: 16px;
	margin: 0 0 16px;
	padding: 26px;
	border: 1px solid #DED5C8;
	border-radius: 22px;
	background: #fff;
	text-align: left;
}
.dd-pa-form[hidden] { display: none; }
.dd-pa-form-titulo { margin: 0; font-family: var(--gd-fonte-marca); font-variation-settings: normal; font-size: 22px; font-weight: 500; }
.dd-pa-form label, .dd-pa-escolher legend { display: block; margin: 0 0 6px; padding: 0; font-size: 13px; font-weight: 600; color: var(--pc-ameixa); }
.dd-pa-escolher { margin: 0; padding: 0; border: 0; }
.dd-pa-escolher-estrelas { display: inline-flex; flex-direction: row-reverse; gap: 4px; }
.dd-pa-escolher-estrelas input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.dd-pa-form .dd-pa-escolher-estrelas label { margin: 0; line-height: 0; cursor: pointer; }
.dd-pa-escolher-estrelas svg { width: 32px; height: 32px; fill: none; stroke: var(--pc-rosa); stroke-width: 1.6; stroke-linejoin: round; transition: fill 0.15s; }
.dd-pa-escolher-estrelas input:checked ~ label svg, .dd-pa-escolher-estrelas label:hover svg, .dd-pa-escolher-estrelas label:hover ~ label svg { fill: var(--pc-rosa); }
.dd-pa-escolher-estrelas input:focus-visible + label { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 2px; border-radius: 6px; }
.dd-pa-campo { margin: 0; }
.dd-pa .dd-pa-form input[type="text"], .dd-pa .dd-pa-form input[type="email"], .dd-pa .dd-pa-form textarea {
	width: 100%;
	height: 50px;
	padding: 0 20px;
	border: 1px solid #DED8CF !important;
	border-radius: var(--gk-raio, 6px) !important;
	background: #fff;
	box-shadow: none;
	font: 400 15px var(--gd-fonte);
	color: var(--pc-ameixa);
}
.dd-pa .dd-pa-form textarea { height: 110px; padding: 14px 20px; border-radius: 10px !important; resize: vertical; }
.dd-pa .dd-pa-form input:focus, .dd-pa .dd-pa-form textarea:focus { border-color: var(--pc-ameixa) !important; outline: none; }
.dd-pa-linha2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.dd-pa-enviar { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.dd-pa-enviar small { font-size: 12.5px; color: #6A6157; }
/* Sem avaliação: só o convite */
.dd-pa-convite { max-width: 640px; margin: 0 auto; text-align: center; }
.dd-pa-convite-estrelas .fa-av-estrela { width: 26px; height: 26px; }
.dd-pa-convite .dd-secao-titulo { margin-top: 12px; }
.dd-pa-convite .dd-pa-botao { margin-top: 24px; }
.dd-pa-convite .dd-pa-form { margin-top: 24px; }
.dd-pa-convite .dd-pa-aviso { color: #6A6157; }
.dd-pa-convite .dd-pa-obrigado { margin: 20px 0 0; }
@media (max-width: 989px) {
	.dd-pa-grade { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.dd-pa-esq { position: static; text-align: center; }
	.dd-pa-caixa { max-width: 520px; margin-left: auto; margin-right: auto; text-align: left; }
}
@media (max-width: 767px) {
	.dd-pa-caixa { padding: 22px; }
	.dd-pa-nota { font-size: 54px; }
	.dd-pa-lista { padding: 2px 20px; border-radius: 10px; }
	.dd-pa-item { padding: 18px 0; }
	.dd-pa-texto { font-size: 14.5px; }
	.dd-pa-form { padding: 20px; border-radius: 10px; }
	.dd-pa-linha2 { grid-template-columns: 1fr; }
}
/* ---------- Dobras de venda do produto [dd_pd_vendas] (inc/produto-vendas.php) ---------- */
.dd-pv {
	display: grid;
	gap: 72px;
	max-width: 1230px;
	width: 100%;
	margin: 0 auto;
	padding: 64px 15px 72px;
	font-family: var(--gd-fonte);
	color: var(--pc-ameixa);
}
.dd-pv--apos-landing { padding-top: 72px; }
.dd-pv .dd-secao-titulo { margin: 0; text-align: center; }
.dd-pv-cards { list-style: none; margin: 32px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.dd-pv-card {
	position: relative;
	display: grid;
	justify-items: center;
	gap: 8px;
	margin: 0;
	padding: 28px 22px 26px;
	border: 1px solid #DED5C8;
	border-radius: 22px;
	background: #fff;
	text-align: center;
}
.dd-pv-card::before {
	content: "";
	position: absolute;
	left: 50%;
	top: -4px;
	width: 30px;
	height: 6px;
	border-radius: 3px;
	background: var(--pc-rosa);
	transform: translateX(-50%);
}
.dd-pv-card strong { font-family: var(--gd-fonte-marca); font-variation-settings: normal; font-size: 20px; font-weight: 500; line-height: 1.2; }
.dd-pv-card span:not(.dd-pv-circ) { font-size: 14.5px; line-height: 1.5; color: #6A6157; }
.dd-pv-circ {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--pc-blush);
	color: var(--pc-rosa-escuro);
	margin-bottom: 4px;
}
.dd-pv-circ .dd-pd-ic { width: 24px; height: 24px; }
.dd-pv-ativos-grade { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 56px; align-items: center; }
.dd-pv-ativos .dd-secao-titulo { text-align: left; }
.dd-pv-foto { aspect-ratio: 1; display: grid; place-items: center; border-radius: 8px; background: var(--pc-blush); overflow: hidden; }
.dd-pv-foto img { width: 76%; height: 76%; object-fit: contain; mix-blend-mode: multiply; }
.dd-pv-lista { list-style: none; margin: 26px 0 0; padding: 0; display: grid; }
.dd-pv-lista li { display: flex; gap: 18px; align-items: flex-start; margin: 0; padding: 16px 0; }
.dd-pv-lista li + li { border-top: 1px solid #DED5C8; }
.dd-pv-num {
	flex: none;
	font-family: var(--gd-fonte-marca);
	font-variation-settings: normal;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.2;
	color: var(--pc-rosa);
	min-width: 30px;
}
.dd-pv-lista strong { display: block; font-size: 16px; font-weight: 600; }
.dd-pv-lista small { display: block; margin-top: 2px; font-size: 14.5px; line-height: 1.5; color: #6A6157; }
.dd-pv-etapas {
	list-style: none;
	margin: 32px 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
	counter-reset: none;
}
.dd-pv-etapas li { display: grid; gap: 12px; margin: 0; padding: 24px; border-radius: 22px; background: var(--pc-papel); border: 1px solid #DED5C8; }
.dd-pv-etapa-num {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--pc-ameixa);
	color: #fff;
	font-weight: 600;
	font-size: 16px;
}
.dd-pv-etapas p { margin: 0; font-size: 15px; line-height: 1.55; }
.dd-pv-garantia {
	display: flex;
	align-items: center;
	gap: 24px;
	max-width: 860px;
	width: 100%;
	margin: 0 auto;
	padding: 26px 32px;
	border-radius: 10px;
	background: var(--pc-ameixa);
	color: var(--pc-papel);
}
.dd-pv-selo {
	flex: none;
	display: grid;
	place-items: center;
	align-content: center;
	width: 84px;
	height: 84px;
	border-radius: 50%;
	border: 2px dashed rgba(255, 255, 255, 0.45);
	background: var(--pc-rosa);
	color: #fff;
	line-height: 1;
}
.dd-pv-selo b { font-family: var(--gd-fonte-marca); font-size: 34px; }
.dd-pv-selo small { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; }
.dd-pv-garantia h3 { margin: 0 0 4px; font-family: var(--gd-fonte-marca); font-variation-settings: normal; font-size: 24px; color: #fff; }
.dd-pv-garantia p { margin: 0; font-size: 15px; line-height: 1.55; color: #EAE6E1; }
.dd-pv-garantia a, .dd-pv-garantia a:visited { color: #fff; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.dd-pv-perguntas { max-width: 860px; width: 100%; margin: 28px auto 0; padding: 4px 26px; border: 1px solid #DED5C8; border-radius: 22px; background: #fff; }
.dd-pv-aviso { max-width: 860px; margin: -40px auto 0; font-size: 12.5px; line-height: 1.5; color: #6A6157; text-align: center; }
@media (max-width: 989px) {
	.dd-pv { gap: 56px; padding: 48px 15px 56px; }
	.dd-pv-ativos-grade { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.dd-pv-ativos .dd-secao-titulo { text-align: center; }
	.dd-pv-foto { max-width: 420px; width: 100%; margin: 0 auto; }
}
@media (max-width: 767px) {
	.dd-pv { gap: 48px; padding: 40px 10px 48px; }
	.dd-pv-cards { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; margin-top: 24px; }
	.dd-pv-card { padding: 20px 12px 18px; border-radius: 10px; }
	.dd-pv-card strong { font-size: 16.5px; }
	.dd-pv-card span:not(.dd-pv-circ) { font-size: 13px; }
	.dd-pv-circ { width: 40px; height: 40px; }
	.dd-pv-etapas { grid-template-columns: minmax(0, 1fr); gap: 10px; margin-top: 24px; }
	.dd-pv-etapas li { grid-template-columns: 40px 1fr; align-items: center; padding: 16px 18px; }
	.dd-pv-garantia { flex-direction: column; text-align: center; padding: 26px 22px; gap: 14px; }
	.dd-pv-perguntas { padding: 2px 18px; border-radius: 10px; }
	.dd-pv-aviso { margin-top: -28px; }
	.dd-pd-painel .dd-qtd-item label { gap: 12px; padding: 12px 14px; }
	.dd-pd-painel .dd-qtd-nome { font-size: 14.5px; }
	.dd-pd-painel .dd-qtd-preco strong { font-size: 16.5px; }
}

/* ===== Coleção Ginga (02/10/2026): botão de compra preto, cantos 3px, Jost maiúscula espaçada, hover taupe. ===== */
.dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button, .dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button.alt {
	border-radius: var(--gk-raio, 6px);
	font-family: var(--gd-fonte);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.01em;
	text-transform: none;
}
.dd-compra .dd-pd-painel form.cart button.single_add_to_cart_button:hover { background: var(--gk-taupe, #7D6A55); }
