/* Favoritos e vitrines Beckmann 2.2.0 */
.pb-favorite-button{
	position:relative!important;
	display:inline-grid!important;
	place-items:center!important;
	flex:0 0 44px!important;
	width:44px!important;
	height:44px!important;
	min-width:44px!important;
	min-height:44px!important;
	margin:0!important;
	padding:0!important;
	border:1px solid rgba(31,33,36,.24)!important;
	border-radius:50%!important;
	background:rgba(255,255,255,.97)!important;
	color:#1f2124!important;
	font:inherit!important;
	box-shadow:0 6px 18px rgba(20,22,24,.12)!important;
	cursor:pointer!important;
	transition:border-color .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease!important;
}
.pb-favorite-button:hover{
	border-color:#1f2124!important;
	background:#fff!important;
	box-shadow:0 9px 22px rgba(20,22,24,.18)!important;
	transform:translateY(-1px) scale(1.04)!important;
}
.pb-favorite-button:focus-visible{
	outline:2px solid #1f2124!important;
	outline-offset:3px!important;
}
.pb-favorite-button>span[aria-hidden]{
	display:block!important;
	color:inherit!important;
	font-size:22px!important;
	font-weight:400!important;
	line-height:1!important;
}
.pb-favorite-button.is-active{
	border-color:#1f2124!important;
	background:#1f2124!important;
	color:#70FFE2!important;
	box-shadow:0 7px 20px rgba(20,22,24,.2),0 0 0 2px rgba(112,255,226,.22)!important;
}
.pb-favorite-button.is-active:hover{background:#111315!important;color:#70FFE2!important}
.pb-favorite-button.is-loading{opacity:.55!important;pointer-events:none!important}
.pb-favorite-label{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	white-space:nowrap!important;
}

/* Cartões das lojas, categorias, buscas, blocos e vitrines da página inicial */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	position:relative!important;
	display:flex!important;
	flex-direction:column!important;
	height:100%!important;
	min-width:0!important;
	padding-bottom:24px!important;
	box-sizing:border-box!important;
}
.woocommerce ul.products li.product .astra-shop-summary-wrap,
.woocommerce-page ul.products li.product .astra-shop-summary-wrap{
	display:flex!important;
	flex:1 1 auto!important;
	flex-direction:column!important;
	min-width:0!important;
}
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product>a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product>a.woocommerce-LoopProduct-link{
	position:relative!important;
	display:block!important;
	overflow:hidden!important;
}
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{
	transition:transform .42s cubic-bezier(.2,.65,.3,1)!important;
	transform-origin:center center!important;
}
.woocommerce ul.products li.product:hover img,
.woocommerce-page ul.products li.product:hover img{transform:scale(1.035)!important}

/* Remove o atalho duplicado do Astra sobre a foto. */
.woocommerce ul.products li.product .ast-on-card-button,
.woocommerce-page ul.products li.product .ast-on-card-button{display:none!important}

.woocommerce ul.products li.product .pb-favorite-button--loop,
.woocommerce-page ul.products li.product .pb-favorite-button--loop{
	position:absolute!important;
	z-index:12!important;
	top:12px!important;
	right:12px!important;
	width:42px!important;
	height:42px!important;
	min-width:42px!important;
	min-height:42px!important;
	border:0!important;
	border-radius:0!important;
	background:transparent!important;
	color:#1f2124!important;
	box-shadow:none!important;
	transform:none!important;
}
.woocommerce ul.products li.product .pb-favorite-button--loop:hover,
.woocommerce-page ul.products li.product .pb-favorite-button--loop:hover{
	border:0!important;
	background:transparent!important;
	color:#1f2124!important;
	box-shadow:none!important;
	transform:scale(1.08)!important;
}
.woocommerce ul.products li.product .pb-favorite-button--loop.is-active,
.woocommerce ul.products li.product .pb-favorite-button--loop.is-active:hover,
.woocommerce-page ul.products li.product .pb-favorite-button--loop.is-active,
.woocommerce-page ul.products li.product .pb-favorite-button--loop.is-active:hover{
	border:0!important;
	background:transparent!important;
	color:#70FFE2!important;
	box-shadow:none!important;
}
@media(hover:hover) and (pointer:fine){
	.woocommerce ul.products li.product .pb-favorite-button--loop .pb-favorite-label,
	.woocommerce-page ul.products li.product .pb-favorite-button--loop .pb-favorite-label{
		top:50%!important;
		right:calc(100% + 8px)!important;
		display:block!important;
		width:max-content!important;
		max-width:180px!important;
		height:auto!important;
		padding:7px 9px!important;
		border-radius:2px!important;
		background:#1f2124!important;
		color:#fff!important;
		clip:auto!important;
		overflow:visible!important;
		font-family:Arial,sans-serif!important;
		font-size:8px!important;
		font-weight:700!important;
		line-height:1.25!important;
		letter-spacing:.04em!important;
		opacity:0!important;
		pointer-events:none!important;
		transform:translate(4px,-50%)!important;
		transition:opacity .18s ease,transform .18s ease!important;
	}
	.woocommerce ul.products li.product .pb-favorite-button--loop:hover .pb-favorite-label,
	.woocommerce ul.products li.product .pb-favorite-button--loop:focus-visible .pb-favorite-label,
	.woocommerce-page ul.products li.product .pb-favorite-button--loop:hover .pb-favorite-label,
	.woocommerce-page ul.products li.product .pb-favorite-button--loop:focus-visible .pb-favorite-label{
		opacity:1!important;
		transform:translate(0,-50%)!important;
	}
}

/* Duas linhas fixas para o nome; preço e compra sempre começam na mesma altura. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
	display:-webkit-box!important;
	height:2.8em!important;
	min-height:2.8em!important;
	max-height:2.8em!important;
	margin-bottom:0!important;
	overflow:hidden!important;
	line-height:1.4!important;
	-webkit-box-orient:vertical!important;
	-webkit-line-clamp:2!important;
}
.woocommerce ul.products li.product .pb-product-action-slot,
.woocommerce-page ul.products li.product .pb-product-action-slot{
	position:relative!important;
	display:block!important;
	flex:0 0 44px!important;
	width:100%!important;
	height:44px!important;
	min-height:44px!important;
	margin-top:8px!important;
	margin-bottom:0!important;
	overflow:hidden!important;
	box-sizing:border-box!important;
}
.woocommerce ul.products li.product .pb-product-action-slot>.price,
.woocommerce-page ul.products li.product .pb-product-action-slot>.price{
	display:flex!important;
	align-items:center!important;
	width:100%!important;
	height:44px!important;
	min-height:44px!important;
	margin:0!important;
	opacity:1!important;
	transition:opacity .18s ease!important;
}
.woocommerce ul.products li.product a.button:not(.pb-favorite-button):not(.ast-on-card-button),
.woocommerce-page ul.products li.product a.button:not(.pb-favorite-button):not(.ast-on-card-button){
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:100%!important;
	height:44px!important;
	min-height:44px!important;
	margin:0!important;
	padding:11px 14px!important;
	border:1px solid #25272a!important;
	border-radius:0!important;
	background:#25272a!important;
	color:#fff!important;
	box-sizing:border-box!important;
	font-size:10px!important;
	font-weight:700!important;
	line-height:1.2!important;
	letter-spacing:.08em!important;
	text-align:center!important;
	text-transform:uppercase!important;
}
.woocommerce ul.products li.product a.button:not(.pb-favorite-button):not(.ast-on-card-button):hover,
.woocommerce-page ul.products li.product a.button:not(.pb-favorite-button):not(.ast-on-card-button):hover{
	border-color:#111!important;
	background:#111!important;
	color:#fff!important;
}
@media(hover:hover) and (pointer:fine){
	.woocommerce ul.products li.product .pb-product-action-slot>a.button:not(.pb-favorite-button):not(.ast-on-card-button),
	.woocommerce-page ul.products li.product .pb-product-action-slot>a.button:not(.pb-favorite-button):not(.ast-on-card-button){
		position:absolute!important;
		inset:0!important;
		visibility:hidden!important;
		opacity:0!important;
		pointer-events:none!important;
		transform:translateY(5px)!important;
		transition:opacity .2s ease,transform .2s ease,visibility .2s ease,background-color .2s ease!important;
	}
	.woocommerce ul.products li.product:hover .pb-product-action-slot>a.button:not(.pb-favorite-button):not(.ast-on-card-button),
	.woocommerce ul.products li.product:focus-within .pb-product-action-slot>a.button:not(.pb-favorite-button):not(.ast-on-card-button),
	.woocommerce-page ul.products li.product:hover .pb-product-action-slot>a.button:not(.pb-favorite-button):not(.ast-on-card-button),
	.woocommerce-page ul.products li.product:focus-within .pb-product-action-slot>a.button:not(.pb-favorite-button):not(.ast-on-card-button){
		visibility:visible!important;
		opacity:1!important;
		pointer-events:auto!important;
		transform:translateY(0)!important;
	}
	.woocommerce ul.products li.product:hover .pb-product-action-slot>.price,
	.woocommerce ul.products li.product:focus-within .pb-product-action-slot>.price,
	.woocommerce-page ul.products li.product:hover .pb-product-action-slot>.price,
	.woocommerce-page ul.products li.product:focus-within .pb-product-action-slot>.price{
		opacity:0!important;
	}
}

/* Página individual: mantém a compra principal e apenas o coração. */
.single-product div.product form.cart{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important}
.single-product div.product form.cart .single_add_to_cart_button{
	order:1!important;
	flex:1 1 220px!important;
	min-height:46px!important;
	border:1px solid #25272a!important;
	border-radius:0!important;
	background:#25272a!important;
	color:#fff!important;
	font-size:11px!important;
	font-weight:700!important;
	letter-spacing:.08em!important;
	text-transform:uppercase!important;
}
.single-product div.product form.cart .pb-favorite-button--single{
	order:2!important;
	flex:0 0 46px!important;
	width:46px!important;
	height:46px!important;
	min-width:46px!important;
	min-height:46px!important;
	border:0!important;
	border-radius:0!important;
	background:transparent!important;
	color:#1f2124!important;
	box-shadow:none!important;
	transform:none!important;
}
.single-product div.product form.cart .pb-favorite-button--single:hover{
	border:0!important;
	background:transparent!important;
	color:#1f2124!important;
	box-shadow:none!important;
	transform:scale(1.08)!important;
}
.single-product div.product form.cart .pb-favorite-button--single.is-active,
.single-product div.product form.cart .pb-favorite-button--single.is-active:hover{
	border:0!important;
	background:transparent!important;
	color:#70FFE2!important;
	box-shadow:none!important;
}
.single-product div.product form.cart .pb-favorite-button--single>span[aria-hidden]{
	color:inherit!important;
	font-family:Arial,sans-serif!important;
	font-size:25px!important;
	font-weight:400!important;
	line-height:1!important;
}
.single-product div.product form.cart .quantity{order:0!important}
.single-product div.product form.cart .pb-single-quantity{
	order:0!important;
	display:grid!important;
	grid-template-columns:38px 42px 38px!important;
	align-items:stretch!important;
	flex:0 0 118px!important;
	width:118px!important;
	height:46px!important;
	margin:0!important;
	border:1px solid #d5d7d9!important;
	background:#fff!important;
	box-sizing:border-box!important;
	overflow:hidden!important;
}
.single-product div.product form.cart .pb-single-quantity__button,
.single-product div.product form.cart .pb-single-quantity__value{
	display:grid!important;
	place-items:center!important;
	width:100%!important;
	height:44px!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:0!important;
	background:#fff!important;
	color:#202124!important;
	font-family:Arial,sans-serif!important;
	font-size:14px!important;
	font-weight:400!important;
	line-height:1!important;
	box-shadow:none!important;
	box-sizing:border-box!important;
}
.single-product div.product form.cart .pb-single-quantity__value{
	border-right:1px solid #e0e2e4!important;
	border-left:1px solid #e0e2e4!important;
}
.single-product div.product form.cart .pb-single-quantity__button{
	cursor:pointer!important;
	transition:background-color .18s ease,color .18s ease!important;
}
.single-product div.product form.cart .pb-single-quantity__button:hover:not(:disabled){
	background:#f2f3f3!important;
	color:#111!important;
}
.single-product div.product form.cart .pb-single-quantity__button:disabled{
	background:#fafafa!important;
	color:#b9bdc1!important;
	cursor:not-allowed!important;
}

@media(max-width:620px){
	.woocommerce ul.products li.product .pb-favorite-button--loop,
	.woocommerce-page ul.products li.product .pb-favorite-button--loop{
		top:9px!important;
		right:9px!important;
		width:38px!important;
		height:38px!important;
		min-width:38px!important;
		min-height:38px!important;
	}
	.woocommerce ul.products li.product .pb-favorite-button--loop>span[aria-hidden],
	.woocommerce-page ul.products li.product .pb-favorite-button--loop>span[aria-hidden]{font-size:20px!important}
	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product{padding-bottom:20px!important}
	.woocommerce ul.products li.product .pb-product-action-slot,
	.woocommerce-page ul.products li.product .pb-product-action-slot{
		display:flex!important;
		flex:0 0 auto!important;
		flex-direction:column!important;
		height:auto!important;
		min-height:0!important;
		gap:8px!important;
		overflow:visible!important;
	}
	.woocommerce ul.products li.product .pb-product-action-slot>.price,
	.woocommerce-page ul.products li.product .pb-product-action-slot>.price{
		height:auto!important;
		min-height:22px!important;
	}
}

/* Favoritos 2.3.20 — consistência de toque e movimento */
.pb-favorite-button{touch-action:manipulation!important}
@media(pointer:coarse){.pb-favorite-button--loop,.pb-favorite-button--card{min-width:42px!important;min-height:42px!important}}
@media(prefers-reduced-motion:reduce){.pb-favorite-button,.pb-product-card{transition-duration:.01ms!important;animation-duration:.01ms!important}}
