/* Card de produto (inc/card.php, templates/content-product.php): modelo "Joalheria" (docs/marca/card-produto-joalheria.html,
   J1 final, escolha do dono em 02/10/2026). Sem borda; óculos de fundo recortado num arco claro. Os cards da mesma linha
   têm a mesma altura e o preço fica sempre na mesma altura (margin-top: auto). */

/* Grade das vitrines: 10px entre os cards, 4 colunas no computador e 2 no celular.
   Listagens do WooCommerce (loja, busca, relacionados). No widget Produtos do Elementor a grade vem do próprio widget. */
.woocommerce ul.products:has(.gd-card):not(.elementor-grid) {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin: 0 0 2rem;
	padding: 0;
}
.woocommerce ul.products:has(.gd-card)::before,
.woocommerce ul.products:has(.gd-card)::after { display: none; }
.woocommerce ul.products li.dd-card-item {
	min-width: 0;
	width: auto !important;
	max-width: none;
	margin: 0 !important;
	padding: 0;
	float: none !important;
	list-style: none;
	display: flex; /* o card estica até a altura da linha: botões alinhados */
}
.woocommerce ul.products li.dd-card-item > .gd-card { flex: 1; }

/* ===== Card "Joalheria" (dono, 02/10/2026; docs/marca/card-produto-joalheria.html, J1 final) ===== */
.gd-card { min-width: 0; position: relative; display: flex; flex-direction: column; height: 100%; background: transparent; text-align: center; }
.gd-card * { box-sizing: border-box; }
/* foto em fundo branco, sem o arco bege (dono, 02/10/2026: "sem essa coisa marrom"); formato mais baixo = card compacto */
.gd-card-arco { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #fff; }
/* símbolo da Mandala no meio, em cima */
.gd-card-simbolo { position: absolute; z-index: 2; top: 6px; left: 50%; width: 18px; height: 18px; transform: translateX(-50%); background: var(--pc-ameixa); opacity: .32;
	-webkit-mask: url("../favicon/favicon.svg") center / contain no-repeat; mask: url("../favicon/favicon.svg") center / contain no-repeat; }
.gd-card-foto { position: absolute; left: 8%; right: 8%; top: 55%; transform: translateY(-50%); transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.gd-card-img { display: block; width: 100%; height: auto; transition: opacity .6s ease; filter: drop-shadow(0 8px 8px rgba(20, 17, 14, .13)); }
.gd-card-img--2 { position: absolute; inset: 0; opacity: 0; }
.gd-card--duas:hover .gd-card-img:first-child, .gd-card--duas:focus-within .gd-card-img:first-child { opacity: 0; }
.gd-card--duas:hover .gd-card-img--2, .gd-card--duas:focus-within .gd-card-img--2 { opacity: 1; }
.gd-card:hover .gd-card-foto { transform: translateY(-55%); }
/* selo "Oferta" na base do arco */
.gd-card-oferta { position: absolute; z-index: 2; top: 6px; left: 6px; padding: 4px 8px; border-radius: 4px; background: var(--pc-ameixa); color: var(--gk-papel, #F6F2EC); font-size: 11px; font-weight: 500; letter-spacing: .08em; line-height: 1.2; }

.gd-card-info { min-width: 0; width: 100%; display: flex; flex: 1; flex-direction: column; align-items: center; padding: 4px 4px 4px; }
.gd-card .gd-card-titulo { /* o seletor longo vence o CSS de título do widget Produtos do Elementor */
	max-width: 100%; margin: 0; padding: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
	font-family: var(--gd-fonte-marca); font-size: 26px; font-weight: 500; line-height: 1.15; letter-spacing: 0; text-transform: none; }
/* Sem a linha de material (dono, 02/10/2026): nome numa linha só, então o divisor e o preço ficam na mesma altura em todos os cards. */
.gd-card-titulo a, .gd-card-titulo a:visited { color: var(--pc-ameixa); text-decoration: none; }
.gd-card-titulo a:hover { color: var(--pc-rosa-escuro); }
.gd-card-divisor { display: flex; align-items: center; gap: 8px; width: 46%; margin: 7px auto 8px; }
.gd-card-divisor::before, .gd-card-divisor::after { content: ""; flex: 1; height: 1px; background: #DED5C8; }
.gd-card-divisor i { width: 10px; height: 10px; background: var(--gk-taupe, #7D6A55); opacity: .6;
	-webkit-mask: url("../favicon/favicon.svg") center / contain no-repeat; mask: url("../favicon/favicon.svg") center / contain no-repeat; }
.gd-card-preco { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 0 8px; margin-top: auto; }
.gd-card-preco > * { white-space: nowrap; }
.gd-card-preco s { font-size: 12.5px; color: #6A6157; }
.gd-card-por { font-size: 15px; font-weight: 500; color: var(--pc-ameixa); letter-spacing: .02em; }
.gd-card-preco .woocommerce-Price-amount { color: inherit; }
.gd-card-parcela { margin: 3px 0 0; font-size: 12px; font-weight: 500; color: var(--pc-rosa-escuro); }
.gd-card-parcela .woocommerce-Price-amount { font-size: inherit; }
/* "Ver detalhes" como etiqueta Ginga: Jost maiúscula espaçada com fio fino embaixo */
.gd-card .gd-card-detalhes, .gd-card .gd-card-detalhes:visited { display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: auto; max-width: none; height: 32px; margin-top: 10px; padding: 0 14px; border: 1px solid #CFC4B6; border-radius: 6px; background: transparent; color: var(--gk-preto, #14110E); font: 400 13px/1 var(--gd-fonte); letter-spacing: 0.02em; text-transform: none; text-decoration: none; transition: background .2s, color .2s; }
.gd-card .gd-card-detalhes::after { content: ""; width: 12px; height: 9px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 10'%3E%3Cpath d='M0 5h12M8.5 1L12.5 5 8.5 9' fill='none' stroke='black' stroke-width='1.4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 10'%3E%3Cpath d='M0 5h12M8.5 1L12.5 5 8.5 9' fill='none' stroke='black' stroke-width='1.4'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .2s; }
.gd-card .gd-card-detalhes:hover, .gd-card .gd-card-detalhes:focus-visible { border-color: var(--gk-preto, #14110E); background: transparent; color: var(--gk-preto, #14110E); }
.gd-card .gd-card-detalhes:hover::after { transform: translateX(3px); }
.gd-card :focus-visible { outline: 2px solid var(--pc-rosa-escuro); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .gd-card-foto, .gd-card-img { transition: none; } }

@media (max-width: 989px) {
	.gd-card-arco { aspect-ratio: 16 / 10; }
	.gd-card-foto { left: 4%; right: 4%; }
	.gd-card-simbolo { top: 2px; width: 13px; height: 13px; }
	.gd-card-oferta { top: 2px; left: 2px; padding: 3px 6px; font-size: 10px; }
	.gd-card-info { padding: 6px 2px 2px; }
	.gd-card .gd-card-titulo { font-size: 21px; }
	.gd-card-divisor { width: 60%; margin: 6px auto 5px; }
	.gd-card-por { font-size: 15px; }
	.gd-card-preco s { font-size: 11.5px; }
}

@media (max-width: 767px) { .gd-card .gd-card-detalhes, .gd-card .gd-card-detalhes:visited { height: 30px; padding: 0 12px; font-size: 12.5px; } }
/* O widget Produtos do Elementor (loja/categorias) força 15px no título: o card manda (dono: títulos maiores). */
.elementor .woocommerce ul.products li.product .gd-card .gd-card-titulo, .elementor-widget-wc-archive-products .gd-card .gd-card-titulo { font-size: 26px !important; font-weight: 500 !important; }
@media (max-width: 989px) { .elementor .woocommerce ul.products li.product .gd-card .gd-card-titulo, .elementor-widget-wc-archive-products .gd-card .gd-card-titulo { font-size: 21px !important; } }
