/**
 * Estilos do shortcode [ag_product_summary_block]
 * Carregado só em single product (ver functions.php theme_enqueue_styles).
 */

.single-product .ag-product-summary-block {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.single-product .ag-product-summary-title {
	margin: 0 0 18px !important;
	color: #2f3d4d !important;
	font-size: clamp(1.2rem, 1.55vw, 1.75rem) !important;
	font-weight: 700 !important;
	line-height: 1.12 !important;
	text-transform: uppercase !important;
}

.single-product .ag-product-summary-meta {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: 0;
}

.single-product .ag-product-summary-meta .ag-product-meta-line,
.single-product .ag-product-summary-cats-tags .ag-product-meta-line {
	margin: 0 0 8px;
	line-height: 1.5;
	font-size: 15px;
	color: #777;
}

.single-product .ag-product-summary-meta .ag-product-meta-line:last-child,
.single-product .ag-product-summary-cats-tags .ag-product-meta-line:last-child {
	margin-bottom: 0;
}

.single-product .ag-product-summary-meta .ag-product-meta-line {
	display: flex;
	align-items: flex-start;
}

.single-product .ag-product-summary-block .ag-product-meta-line strong {
	color: #888;
	font-weight: normal;
}

.single-product .ag-product-summary-meta .ag-product-meta-line strong {
	width: 140px;
	flex-shrink: 0;
}

.single-product .ag-product-summary-block .ag-product-summary-price {
	margin: 0 0 4px;
}

.single-product .ag-product-summary-block .ag-product-summary-price--above-atc {
	margin: 0 0 14px;
}

/* Preço em destaque — azul vivo, negrito, sans (referência tipo 46.13€) */
.single-product .ag-product-summary-block .ag-product-summary-price .price,
.single-product .summary .ag-product-summary-price .price,
.single-product .summary .elementor-widget-woocommerce-product-price .price,
.single-product .summary p.price {
	margin: 0;
	line-height: 1.2;
	letter-spacing: 0;
}

/* Forçar o estilo diretamente na classe do valor para evitar que o tema sobreponha */
.single-product .ag-product-summary-block .ag-product-summary-price .price .woocommerce-Price-amount,
.single-product .summary .ag-product-summary-price .price .woocommerce-Price-amount,
.single-product .summary .elementor-widget-woocommerce-product-price .price .woocommerce-Price-amount,
.single-product .summary p.price .woocommerce-Price-amount,
.single-product .summary .woocommerce-Price-amount.amount,
.ag-product-summary-price .woocommerce-Price-amount.amount {
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
	font-size: clamp(1.45rem, 1.85vw, 1.85rem) !important;
	font-weight: 700 !important;
	color: #1f7eb6 !important;
	line-height: 1.2 !important;
}

.single-product .summary .elementor-widget-woocommerce-product-price {
	margin-bottom: 14px !important;
}

/* Preço riscado (antigo) */
.single-product .ag-product-summary-block .ag-product-summary-price .price del .woocommerce-Price-amount,
.single-product .summary .ag-product-summary-price .price del .woocommerce-Price-amount,
.single-product .summary .elementor-widget-woocommerce-product-price .price del .woocommerce-Price-amount,
.single-product .summary p.price del .woocommerce-Price-amount,
.single-product .summary del .woocommerce-Price-amount.amount,
.ag-product-summary-price del .woocommerce-Price-amount.amount {
	font-size: 0.58em !important;
	font-weight: 600 !important;
	color: #94a3b8 !important;
	opacity: 1;
}

/* Preço novo (ins) */
.single-product .ag-product-summary-block .ag-product-summary-price .price ins .woocommerce-Price-amount,
.single-product .summary .ag-product-summary-price .price ins .woocommerce-Price-amount,
.single-product .summary .elementor-widget-woocommerce-product-price .price ins .woocommerce-Price-amount,
.single-product .summary p.price ins .woocommerce-Price-amount,
.single-product .summary ins .woocommerce-Price-amount.amount,
.ag-product-summary-price ins .woocommerce-Price-amount.amount {
	text-decoration: none;
	color: #1f7eb6 !important;
	font-weight: 700 !important;
}

.single-product .ag-product-summary-price--above-atc + .ag-product-primary-action-wrap {
	margin-top: 0;
}

.single-product .ag-product-summary-block .ag-stock-status.out-of-stock {
	color: #f27474;
}

.single-product .ag-product-summary-block .ag-stock-status.in-stock {
	color: #77a464;
}

.single-product .ag-product-summary-block .ag-product-meta-line a {
	color: #5bc0de;
	text-decoration: none;
}

.single-product .ag-product-summary-block .ag-product-meta-line a:hover {
	color: #31b0d5;
}

.single-product .ag-product-summary-divider {
	display: block !important;
	width: 100%;
	height: 0;
	margin: 16px 0;
	border-bottom: 1px solid #d9e0e6 !important;
}

.single-product .ag-product-summary-description {
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
}

.single-product .ag-product-primary-action-wrap {
	margin: 10px 0 0;
}

.single-product .ag-product-summary-block .ag-product-quote-button {
	margin: 0;
}

.single-product .ag-product-summary-block .ag-product-primary-action {
	margin: 0;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap > [data-ag-ou-hidden],
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap > .ag-ou-separator {
	display: none !important;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap form.cart,
.single-product .summary form.cart:not(.variations_form) {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin: 0;
}

.single-product .ag-product-add-to-cart-wrap form.cart,
.single-product .ag-product-add-to-cart-wrap form.cart > .quantity,
.single-product .ag-product-add-to-cart-wrap form.cart > button.single_add_to_cart_button,
.single-product .ag-product-add-to-cart-wrap form.cart > button.add_to_cart_button.single_add_to_cart_button.button.alt,
.single-product .ag-product-add-to-cart-wrap form.cart > button.et-single-buy-now.single_add_to_cart_button.button.alt {
	flex: 0 0 auto !important;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap form.cart > .text-center.et-or-wrapper,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap form.cart > .clear,
.single-product .summary form.cart:not(.variations_form) > .text-center.et-or-wrapper,
.single-product .summary form.cart:not(.variations_form) > .clear {
	display: none !important;
}

.single-product .ag-product-add-to-cart-wrap form.cart > .text-center.et-or-wrapper,
.single-product .ag-product-add-to-cart-wrap form.cart > .clear {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap .quantity,
.single-product .summary form.cart:not(.variations_form) .quantity {
	margin: 0 !important;
	display: inline-flex;
	align-items: stretch;
	align-self: center;
	min-height: 40px;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap .quantity .qty,
.single-product .summary form.cart:not(.variations_form) .quantity .qty {
	min-height: 40px;
	height: 40px;
	box-sizing: border-box;
	vertical-align: middle;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap form.cart .quantity .minus,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap form.cart .quantity .plus,
.single-product .summary form.cart:not(.variations_form) .quantity .minus,
.single-product .summary form.cart:not(.variations_form) .quantity .plus {
	align-self: stretch;
	min-height: 40px;
}

.single-product .summary form.cart:not(.variations_form) .single_add_to_cart_button,
.single-product .summary form.cart:not(.variations_form) button.single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 170px;
	min-height: 40px;
	height: 40px;
	padding: 0 20px;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 6px !important;
	background: linear-gradient(180deg, #4aa6c7 0%, #3c94b6 100%) !important;
	color: #fff !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.4px !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
	align-self: center;
	box-sizing: border-box;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap .single_add_to_cart_button,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap button.single_add_to_cart_button,
.single-product .ag-product-summary-block .ag-product-primary-action .add-request-quote-button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 170px;
	min-height: 40px;
	height: 40px;
	padding: 0 20px;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 6px !important;
	background: linear-gradient(180deg, #4aa6c7 0%, #3c94b6 100%) !important;
	color: #fff !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.4px !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
	align-self: center;
	box-sizing: border-box;
	width: auto !important;
	flex: 0 0 auto !important;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap .single_add_to_cart_button:hover,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap button.single_add_to_cart_button:hover,
.single-product .ag-product-summary-block .ag-product-primary-action .add-request-quote-button.button:hover {
	background: linear-gradient(180deg, #3c94b6 0%, #317f9e 100%) !important;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12) !important;
	transform: translateY(-1px);
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.et-single-buy-now:not(.add-request-quote-button),
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap button.et-single-buy-now:not(.add-request-quote-button),
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.buy_now_button,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.single_buy_now_button,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap > a.button.checkout {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 170px;
	min-height: 40px;
	height: 40px;
	padding: 0 20px;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 6px !important;
	background: linear-gradient(180deg, #4aa6c7 0%, #3c94b6 100%) !important;
	color: #fff !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.4px !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
	align-self: center;
	box-sizing: border-box;
	width: auto !important;
	flex: 0 0 auto !important;
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.et-single-buy-now:not(.add-request-quote-button):hover,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap button.et-single-buy-now:not(.add-request-quote-button):hover,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.buy_now_button:hover,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.single_buy_now_button:hover,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap > a.button.checkout:hover {
	background: linear-gradient(180deg, #3c94b6 0%, #317f9e 100%) !important;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12) !important;
	transform: translateY(-1px);
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.et-single-buy-now:not(.add-request-quote-button):active,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap button.et-single-buy-now:not(.add-request-quote-button):active,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.buy_now_button:active,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap a.single_buy_now_button:active,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap > a.button.checkout:active {
	background: linear-gradient(180deg, #317f9e 0%, #296d88 100%) !important;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
	transform: translateY(0);
}

.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap .single_add_to_cart_button:active,
.single-product .ag-product-summary-block .ag-product-add-to-cart-wrap button.single_add_to_cart_button:active,
.single-product .ag-product-summary-block .ag-product-primary-action .add-request-quote-button.button:active {
	background: linear-gradient(180deg, #317f9e 0%, #296d88 100%) !important;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
	transform: translateY(0);
}

.single-product .ag-product-summary-cats-tags {
	margin: 0;
}

.single-product .ag-product-summary-block .ag-product-short-description.ag-product-summary-description,
.single-product .ag-product-summary-block .ag-product-short-description.ag-product-summary-description p {
	color: #888 !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

.single-product .ag-product-summary-block .ag-product-short-description.ag-product-summary-description p {
	margin: 0 0 10px;
}

.single-product .ag-product-summary-block .ag-product-short-description.ag-product-summary-description p:last-child {
	margin-bottom: 0;
}

/* Com preço no produto principal: esconder orçamento apenas no bloco principal/summary. */
.single-product.ag-product-has-price .summary .yith-ywraq-add-to-quote,
.single-product.ag-product-has-price .summary .ywraq-before-add-to-quote,
.single-product.ag-product-has-price .summary p.ywraq-link,
.single-product.ag-product-has-price .summary a.add-request-quote-button,
.single-product.ag-product-has-price .summary .elementor-widget-yith-ywraq-request-quote,
.single-product.ag-product-has-price .ag-product-summary-block .yith-ywraq-add-to-quote,
.single-product.ag-product-has-price .ag-product-summary-block .ywraq-before-add-to-quote,
.single-product.ag-product-has-price .ag-product-summary-block p.ywraq-link,
.single-product.ag-product-has-price .ag-product-summary-block a.add-request-quote-button,
.single-product.ag-product-has-price .ag-product-summary-block .elementor-widget-yith-ywraq-request-quote {
	display: none !important;
}

.single-product .summary form.cart:not(.variations_form) .single_add_to_cart_button:hover,
.single-product .summary form.cart:not(.variations_form) button.single_add_to_cart_button:hover {
	background: linear-gradient(180deg, #3c94b6 0%, #317f9e 100%) !important;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12) !important;
	transform: translateY(-1px);
}

.single-product .summary form.cart:not(.variations_form) .single_add_to_cart_button:active,
.single-product .summary form.cart:not(.variations_form) button.single_add_to_cart_button:active {
	background: linear-gradient(180deg, #317f9e 0%, #296d88 100%) !important;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
	transform: translateY(0);
}

/* Adicionar + Comprar agora na mesma linha; esconder divisor «OU» */
.single-product div.product .summary .woocommerce-product-add-to-cart,
.single-product div.product .woocommerce-product-add-to-cart {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px;
}

.single-product .woocommerce-product-add-to-cart > .elementor-widget-button,
.single-product .woocommerce-product-add-to-cart > .elementor-widget,
.single-product [data-ag-buy-now-row] > .elementor-widget-button,
.single-product [data-ag-buy-now-row] > .elementor-widget {
	flex: 0 0 auto;
	margin: 0 !important;
	max-width: 100%;
}

.single-product .woocommerce-product-add-to-cart > .elementor-widget-button .elementor-widget-container,
.single-product [data-ag-buy-now-row] > .elementor-widget-button .elementor-widget-container {
	margin: 0;
}

.single-product .woocommerce-product-add-to-cart form.cart {
	margin-bottom: 0;
}

/* Botão «Comprar agora» — mesmo visual que «Adicionar ao carrinho» (gradiente BOTÕES GRID) */
.single-product .woocommerce-product-add-to-cart .single_buy_now_button,
.single-product .woocommerce-product-add-to-cart a.buy_now_button,
.single-product .woocommerce-product-add-to-cart a.et-single-buy-now:not(.add-request-quote-button),
.single-product .woocommerce-product-add-to-cart button.et-single-buy-now:not(.add-request-quote-button),
.single-product .woocommerce-product-add-to-cart .single_add_to_cart_button + a.button,
.single-product [data-ag-buy-now-row] a.elementor-button-link,
.single-product [data-ag-buy-now-row] a.elementor-button,
.single-product [data-ag-buy-now-row] button.elementor-button,
.single-product [data-ag-buy-now-row] .elementor-widget-button .elementor-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 170px;
	min-height: 40px;
	height: 40px;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 6px !important;
	background: linear-gradient(180deg, #4aa6c7 0%, #3c94b6 100%) !important;
	color: #fff !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.4px !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
	margin: 0 !important;
	align-self: center;
}

.single-product [data-ag-buy-now-row] a.elementor-button-link .elementor-button-icon,
.single-product [data-ag-buy-now-row] a.elementor-button .elementor-button-icon,
.single-product [data-ag-buy-now-row] .elementor-button .elementor-button-icon {
	color: #fff !important;
	fill: currentColor !important;
}

.single-product .woocommerce-product-add-to-cart .single_buy_now_button:hover,
.single-product .woocommerce-product-add-to-cart a.buy_now_button:hover,
.single-product .woocommerce-product-add-to-cart a.et-single-buy-now:not(.add-request-quote-button):hover,
.single-product .woocommerce-product-add-to-cart button.et-single-buy-now:not(.add-request-quote-button):hover,
.single-product .woocommerce-product-add-to-cart .single_add_to_cart_button + a.button:hover,
.single-product [data-ag-buy-now-row] a.elementor-button-link:hover,
.single-product [data-ag-buy-now-row] a.elementor-button:hover,
.single-product [data-ag-buy-now-row] button.elementor-button:hover,
.single-product [data-ag-buy-now-row] .elementor-widget-button .elementor-button:hover {
	background: linear-gradient(180deg, #3c94b6 0%, #317f9e 100%) !important;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.single-product .woocommerce-product-add-to-cart .single_buy_now_button:active,
.single-product .woocommerce-product-add-to-cart a.buy_now_button:active,
.single-product .woocommerce-product-add-to-cart a.et-single-buy-now:not(.add-request-quote-button):active,
.single-product .woocommerce-product-add-to-cart button.et-single-buy-now:not(.add-request-quote-button):active,
.single-product .woocommerce-product-add-to-cart .single_add_to_cart_button + a.button:active,
.single-product [data-ag-buy-now-row] a.elementor-button-link:active,
.single-product [data-ag-buy-now-row] a.elementor-button:active,
.single-product [data-ag-buy-now-row] button.elementor-button:active,
.single-product [data-ag-buy-now-row] .elementor-widget-button .elementor-button:active {
	background: linear-gradient(180deg, #317f9e 0%, #296d88 100%) !important;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
	transform: translateY(0);
}

/* Elementor: divisor «OU» – esconder com vários seletores */
.single-product .summary .elementor-widget-woocommerce-product-add-to-cart + .elementor-widget-divider,
.single-product .summary .elementor-widget-divider[data-ag-ou-hidden] {
	display: none !important;
}

/* CSS :has() para containers Elementor que tenham ambos os widgets */
.single-product .elementor-element:has(.elementor-widget-woocommerce-product-add-to-cart):has(.elementor-widget-button) {
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px !important;
}

.single-product .elementor-element:has(.elementor-widget-woocommerce-product-add-to-cart):has(.elementor-widget-button) > .elementor-widget-divider {
	display: none !important;
}

/* Contentor marcado pelo JS */
.single-product [data-ag-buy-now-row] {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px !important;
}

.single-product [data-ag-buy-now-row] > .elementor-widget-divider {
	display: none !important;
}

/* -----------------------------------------------------------------
   Produtos relacionados / upsells (single): sobrepõe botão circular do XStore
   — alinha ao bloco «BOTÕES GRID» (style.css): gradiente, cantos 6px, tipografia.
   ----------------------------------------------------------------- */
body.single-product section.related.products ul.products li.product form.cart,
body.single-product section.upsells.products ul.products li.product form.cart,
body.single-product .related.products ul.products li.product form.cart,
body.single-product .upsells.products ul.products li.product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-bottom: 0 !important;
	margin-top: 0 !important;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	order: 100;
}

/* Empurra CTA+quantidade para o fundo quando form.cart é o único bloco de acção no .etheme-product-grid-content */
body.single-product section.related.products ul.products li.product .etheme-product-grid-content:not(:has(.yith-ywraq-add-to-quote)):not(:has(> a.add_to_cart_button)):not(:has(> .ajax_add_to_cart)):not(:has(> .etheme-product-grid-button)):not(:has(.product-footer)) > form.cart,
body.single-product section.upsells.products ul.products li.product .etheme-product-grid-content:not(:has(.yith-ywraq-add-to-quote)):not(:has(> a.add_to_cart_button)):not(:has(> .ajax_add_to_cart)):not(:has(> .etheme-product-grid-button)):not(:has(.product-footer)) > form.cart,
body.single-product .related.products ul.products li.product .etheme-product-grid-content:not(:has(.yith-ywraq-add-to-quote)):not(:has(> a.add_to_cart_button)):not(:has(> .ajax_add_to_cart)):not(:has(> .etheme-product-grid-button)):not(:has(.product-footer)) > form.cart,
body.single-product .upsells.products ul.products li.product .etheme-product-grid-content:not(:has(.yith-ywraq-add-to-quote)):not(:has(> a.add_to_cart_button)):not(:has(> .ajax_add_to_cart)):not(:has(> .etheme-product-grid-button)):not(:has(.product-footer)) > form.cart {
	margin-top: auto !important;
}

/* Título com altura mínima de 2 linhas (como na archive) — alinha CTAs entre cartões */
body.single-product section.related.products ul.products li.product h2.woocommerce-loop-product__title,
body.single-product section.upsells.products ul.products li.product h2.woocommerce-loop-product__title,
body.single-product .related.products ul.products li.product h2.woocommerce-loop-product__title,
body.single-product .upsells.products ul.products li.product h2.woocommerce-loop-product__title {
	min-height: calc(1.15em * 2);
}

body.single-product .related.products ul.products li.product .single_add_to_cart_button,
body.single-product .upsells.products ul.products li.product .single_add_to_cart_button,
body.single-product .related.products ul.products li.product button.single_add_to_cart_button,
body.single-product .upsells.products ul.products li.product button.single_add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: auto !important;
	min-width: min(100%, 148px);
	max-width: 100%;
	min-height: 32px;
	height: 32px !important;
	padding: 0 14px !important;
	border: none !important;
	border-radius: 6px !important;
	background: linear-gradient(180deg, #4aa6c7 0%, #3c94b6 100%) !important;
	color: #ffffff !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.4px !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
}

body.single-product .related.products ul.products li.product .single_add_to_cart_button:hover,
body.single-product .upsells.products ul.products li.product .single_add_to_cart_button:hover,
body.single-product .related.products ul.products li.product button.single_add_to_cart_button:hover,
body.single-product .upsells.products ul.products li.product button.single_add_to_cart_button:hover {
	background: linear-gradient(180deg, #3c94b6 0%, #317f9e 100%) !important;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
}

body.single-product .related.products ul.products li.product .single_add_to_cart_button:active,
body.single-product .upsells.products ul.products li.product .single_add_to_cart_button:active,
body.single-product .related.products ul.products li.product button.single_add_to_cart_button:active,
body.single-product .upsells.products ul.products li.product button.single_add_to_cart_button:active {
	background: linear-gradient(180deg, #317f9e 0%, #296d88 100%) !important;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
	transform: translateY(0);
}

/* Loop relacionados: link «Adicionar» (ajax) quando não há form.cart com .single_add_to_cart_button */
body.single-product .related.products ul.products li.product a.add_to_cart_button,
body.single-product .upsells.products ul.products li.product a.add_to_cart_button,
body.single-product .related.products ul.products li.product a.ajax_add_to_cart,
body.single-product .upsells.products ul.products li.product a.ajax_add_to_cart {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: auto !important;
	min-width: min(100%, 148px);
	max-width: 100%;
	min-height: 32px;
	height: 32px !important;
	padding: 0 14px !important;
	border: none !important;
	border-radius: 6px !important;
	background: linear-gradient(180deg, #4aa6c7 0%, #3c94b6 100%) !important;
	color: #ffffff !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.4px !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
}

body.single-product .related.products ul.products li.product a.add_to_cart_button:hover,
body.single-product .upsells.products ul.products li.product a.add_to_cart_button:hover,
body.single-product .related.products ul.products li.product a.ajax_add_to_cart:hover,
body.single-product .upsells.products ul.products li.product a.ajax_add_to_cart:hover {
	background: linear-gradient(180deg, #3c94b6 0%, #317f9e 100%) !important;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
}

body.single-product .related.products ul.products li.product a.add_to_cart_button:active,
body.single-product .upsells.products ul.products li.product a.add_to_cart_button:active,
body.single-product .related.products ul.products li.product a.ajax_add_to_cart:active,
body.single-product .upsells.products ul.products li.product a.ajax_add_to_cart:active {
	background: linear-gradient(180deg, #317f9e 0%, #296d88 100%) !important;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
	transform: translateY(0);
}
