/* Shared card layout: no absolute-positioned or hover-only purchase controls. */
.product-card { display: flex; flex-direction: column; height: 100%; min-width: 0; }
.product-card .product-thumb { flex: 0 0 auto; width: auto; margin: 0; }
.product-card .product-thumb > img { width: 100%; aspect-ratio: 1; height: auto; object-fit: contain; }
.product-card .product-card-body { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
.product-card .product-category { min-height: 2.6em; line-height: 1.3; overflow-wrap: anywhere; }
.product-card .product-title { min-height: 2.8em; line-height: 1.4; overflow-wrap: anywhere; }
.product-card .product-price { margin-top: auto; padding-top: 8px; }
.product-card .card-actions {
    position: static; inset: auto; transform: none; opacity: 1; visibility: visible;
    display: block; width: 100%; margin: 0; padding: 8px; background: transparent;
}
.product-card .card-actions-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 6px; }
.product-card .card-actions .card-actions-row > .product-button {
    display: flex; align-items: center; justify-content: center;
    position: static; float: none; width: 100%; min-width: 0; height: auto; min-height: 40px;
    margin: 0; padding: 8px 3px; border: 1px solid var(--shop-accent); border-radius: 5px;
    background: #fff; color: var(--shop-accent); font-size: 12px; font-weight: 600;
    line-height: 1.2; text-align: center; white-space: normal; overflow-wrap: anywhere;
    box-shadow: none; transform: none;
}
.product-card .card-actions .card-actions-row > .product-button:last-child { background: var(--shop-accent); color: #fff; }
.product-card .card-actions .card-actions-row > .product-button:hover,
.product-card .card-actions .card-actions-row > .product-button:active { background: var(--shop-accent-hover); border-color: var(--shop-accent-hover); color: #fff; }
.product-card .card-actions .card-actions-row > .product-button:focus-visible { outline: 2px solid var(--shop-accent); outline-offset: 2px; }
.product-card .card-compare-link { display: block; width: fit-content; margin: 6px auto 0; padding: 2px 4px; color: var(--shop-accent); font-size: 12px; text-decoration: underline; }
.product-card .product-price,
.product-detail-page .product-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; line-height: 1.4; min-width: 0; }
.product-card .product-price { min-height: 3.4em; font-size: 15px; }
.product-card .price-current,
.product-detail-page .price-current { color: var(--shop-accent); font-weight: 700; overflow-wrap: anywhere; }
.product-card .product-price .price-old,
.product-detail-page .product-price .price-old { color: #62676d; font-size: .85em; font-weight: 400; text-decoration: line-through; }
.product-detail-page .product-price.price-area { font-size: clamp(22px, 3vw, 30px); margin: 12px 0; }
.product-card .product-badge2,
.product-detail-page .product-badge.ppp-t { background: var(--shop-accent) !important; color: #fff !important; }
.product-card .product-badge:empty { display: none; }
.owl-carousel:has(.product-card) .owl-stage { display: flex; }
.owl-carousel:has(.product-card) .owl-item { float: none; flex-shrink: 0; }
.owl-carousel .slider-item { height: 100%; }
.product-card.product-list { flex-direction: row; }
.product-card.product-list .product-thumb { flex: 0 0 30%; }
.product-card.product-list .product-card-inner { flex: 1; min-width: 0; }
@media (max-width: 575.98px) {
    .product-card .product-card-body { padding: 10px 8px; }
    .product-card .card-actions { padding: 6px; }
    .product-card .card-actions-row { gap: 4px; }
    .product-card .card-actions .card-actions-row > .product-button { font-size: 11px; min-height: 40px; }
    .product-card .product-price { font-size: 14px; }
    .product-card.product-list .product-thumb { flex-basis: 40%; }
}

.product-card {
    
    height: auto;
    
}
