.gpw-products-wrapper { padding: 20px 0; }
.gpw-section-header { margin-bottom: 25px; }
.gpw-section-title {
    display: inline-block; padding: 8px 20px;
    font-size: 16px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 1px;
    border-left: 4px solid #333;
}
.gpw-products-grid { display: flex; flex-wrap: wrap; margin: 0 -10px; }
.gpw-product-item { padding: 10px; box-sizing: border-box; }
.gpw-col-2 { width: 50%; }
.gpw-col-3 { width: 33.333%; }
.gpw-col-4 { width: 25%; }
.gpw-col-5 { width: 20%; }
.gpw-col-6 { width: 16.666%; }
.gpw-product-inner {
    background: #fff; border: 1px solid #eee;
    border-radius: 8px; overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.gpw-product-inner:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}
.gpw-product-link { text-decoration: none; color: inherit; display: block; }
.gpw-product-image { position: relative; overflow: hidden; }
.gpw-product-image img {
    width: 100%; height: auto; display: block;
    transition: transform 0.4s ease;
}
.gpw-product-inner:hover .gpw-product-image img { transform: scale(1.05); }
.gpw-sale-badge {
    position: absolute; top: 10px; left: 10px;
    background: #e74c3c; color: #fff;
    padding: 4px 10px; font-size: 12px; font-weight: 600; border-radius: 3px;
}
.gpw-product-info { padding: 15px; text-align: center; }
.gpw-product-category {
    display: block; font-size: 12px; margin-bottom: 5px;
    text-transform: uppercase; letter-spacing: 0.5px;
}
.gpw-product-title {
    font-size: 14px; font-weight: 600; margin: 0 0 8px; line-height: 1.4;
    display: -webkit-box; -webkit-line-clamp: 2;
    -webkit-box-orient: vertical; overflow: hidden;
}
.gpw-product-price { font-size: 16px; font-weight: 700; color: #333; }
.gpw-product-price del { color: #999; font-weight: 400; font-size: 14px; }
.gpw-product-price ins { text-decoration: none; color: #e74c3c; }
.gpw-buttons-wrap {
    text-align: center; margin-top: 30px;
    display: flex; align-items: center; justify-content: center; gap: 15px;
}
.gpw-load-more-btn {
    display: inline-block; padding: 12px 35px;
    font-size: 14px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 1px;
    border: none; border-radius: 4px; cursor: pointer;
    transition: opacity 0.3s ease, transform 0.2s ease;
}
.gpw-load-more-btn:hover { opacity: 0.85; transform: translateY(-2px); }
.gpw-load-more-btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
.gpw-view-more-link {
    display: inline-block; padding: 12px 35px;
    font-size: 14px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 1px;
    border: 2px solid #333; border-radius: 4px;
    color: #333; text-decoration: none; transition: all 0.3s ease;
}
.gpw-view-more-link:hover { background: #333; color: #fff; }
.gpw-loading-spinner { font-size: 14px; color: #999; }
.gpw-no-products { width: 100%; text-align: center; padding: 40px; color: #999; font-size: 16px; }
@media (max-width: 1024px) { .gpw-col-5, .gpw-col-6 { width: 25%; } }
@media (max-width: 768px) { .gpw-col-2,.gpw-col-3,.gpw-col-4,.gpw-col-5,.gpw-col-6 { width: 50%; } }
@media (max-width: 480px) {
    .gpw-col-2,.gpw-col-3,.gpw-col-4,.gpw-col-5,.gpw-col-6 { width: 100%; }
    .gpw-buttons-wrap { flex-direction: column; }
}