/* PP Products (WooCommerce) — peptide product cards */
.pn-products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.pn-product-card {
    background: #bfe6c2;
    border-radius: 14px;
    padding: 26px 12px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
}

.pn-product-thumb {
    display: block;
    margin-bottom: 18px;
}

.pn-product-thumb img {
    width: 100%;
    height: 260px;
    object-fit: contain;
    margin: 0 auto;
    display: block;
}

.pn-product-title {
	font-family: "Parkinsans", sans-serif;
	font-size: 20px;
	font-weight: 600;
	color: #000;
	line-height: 26px;
}

.pn-product-title a {
    color: inherit;
    text-decoration: none;
}

.pn-product-excerpt {
    font-family: "Jost", sans-serif;
    font-size: 18px;
    line-height: 24px;
    color: #1B4332;
    margin-bottom: 18px;
}

.pn-product-excerpt p {
    margin: 0;
}

.pn-product-foot {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
	padding: 0 5px;
}

.pn-product-price {
	font-family: "Parkinsans", sans-serif;
	font-size: 36px;
	font-weight: 600;
	color: #0F2919;
	line-height: 45px;
}

.pn-product-price del {
    font-size: 18px;
    opacity: 0.6;
    margin-right: 6px;
}

.pn-product-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #C6A662;
	color: #14331f;
	font-family: "Oxanium", sans-serif;
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
	padding: 7px 10px;
	border-radius: 6px;
	transition: opacity 0.2s ease;
	line-height: 19px;
}

.pn-product-btn:hover {
    opacity: 0.85;
    color: #14331f; /* same as base — the shine sweep is the only hover cue */
}

.pn-product-btn svg,
.pn-product-btn .pn-cart-icon,
.pn-cart-icon {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
}

.pn-product-btn.loading {
    opacity: 0.6;
}

/* No ✓ glyph on the button: anything added to the label changes its width and
   wraps the price/button row. The header cart count is the "added" feedback. */

@media (max-width: 991px) {
    .pn-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 575px) {
    .pn-products { grid-template-columns: 1fr; }
}
