.nbpsg-wrap{position:relative;width:100%;box-sizing:border-box;--nbpsg-gap:24px;--nbpsg-cols:5;--nbpsg-tablet-cols:3;--nbpsg-mobile-cols:2}
.nbpsg-wrap *{box-sizing:border-box}
.nbpsg-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px}
.nbpsg-heading{margin:0;font-size:24px;line-height:1.25;font-weight:700;color:#172b18}
.nbpsg-shop-link{font-size:15px;color:#00a950;text-decoration:none;white-space:nowrap}
/* Full-width product track. Arrows sit outside the track so they do not reduce card width. */
.nbpsg-slider .nbpsg-viewport{position:relative;width:100%;margin:0;overflow:hidden}
.nbpsg-grid .nbpsg-viewport{position:relative;width:100%;overflow:visible}
.nbpsg-track{display:flex;gap:var(--nbpsg-gap);will-change:transform;transition:transform .45s ease}
.nbpsg-grid .nbpsg-track{display:grid;grid-template-columns:repeat(var(--nbpsg-cols),minmax(0,1fr));transition:none;transform:none}
.nbpsg-card{min-width:0;background:#fff;border:1px solid #eee;border-radius:8px;padding:0 0 16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 3px rgba(0,0,0,.03)}
.nbpsg-slider .nbpsg-card{min-height:330px}
.nbpsg-grid .nbpsg-card{min-height:330px}
.nbpsg-slider .nbpsg-card{flex:0 0 calc((100% - (var(--nbpsg-cols) - 1)*var(--nbpsg-gap))/var(--nbpsg-cols))}
.nbpsg-image-link{display:block;width:100%;text-decoration:none}
/* Fixed image area. Image itself keeps its natural aspect ratio and is never cropped. */
.nbpsg-image-box{height:var(--nbpsg-img-height);width:100%;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;background:#fff;padding:12px!important}
.nbpsg-image-box img.nbpsg-img,
.nbpsg-image-box img.attachment-woocommerce_thumbnail,
.nbpsg-image-box img{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center center!important;display:block!important;margin:0 auto!important;padding:0!important;border:0!important;transform:none!important}
.nbpsg-title{font-size:15px;line-height:1.4;font-weight:500;margin:14px 14px 7px;text-align:left;min-height:42px}
.nbpsg-title a{color:inherit;text-decoration:none}
.nbpsg-price{font-size:16px;line-height:1.3;font-weight:700;margin:0 14px 14px;color:#e21b23}
.nbpsg-price del{opacity:.55;margin-right:4px}
.nbpsg-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;margin:0 14px;padding:8px 14px;border-radius:5px;background:#00ad50;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:600;transition:opacity .2s ease,transform .2s ease}
.nbpsg-button:hover{opacity:.9;transform:translateY(-1px)}
.nbpsg-cart-icon{width:17px;height:17px;display:block;fill:currentColor;flex:0 0 17px}
.nbpsg-arrow{position:absolute;top:50%;z-index:10;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#173d20;box-shadow:0 3px 14px rgba(0,0,0,.16);font-size:31px;line-height:38px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.nbpsg-prev{left:-58px}.nbpsg-next{right:-58px}.nbpsg-arrow:disabled{opacity:.35;cursor:default}
.nbpsg-dots{display:flex;justify-content:center;gap:7px;margin-top:16px}.nbpsg-dot{width:7px;height:7px;border:0;border-radius:50%;background:#c9c9c9;padding:0}.nbpsg-dot.active{background:#00a950;transform:scale(1.15)}
.nbpsg-notice{padding:15px;background:#fff4d6;border:1px solid #f0d68a}
@media (max-width:1024px){.nbpsg-wrap{--nbpsg-cols:var(--nbpsg-tablet-cols)}.nbpsg-grid .nbpsg-track{grid-template-columns:repeat(var(--nbpsg-tablet-cols),minmax(0,1fr))}.nbpsg-slider .nbpsg-card{flex-basis:calc((100% - (var(--nbpsg-tablet-cols) - 1)*var(--nbpsg-gap))/var(--nbpsg-tablet-cols))}.nbpsg-prev{left:-50px}.nbpsg-next{right:-50px}}
@media (max-width:767px){.nbpsg-wrap{--nbpsg-cols:var(--nbpsg-mobile-cols)}.nbpsg-grid .nbpsg-track{grid-template-columns:repeat(var(--nbpsg-mobile-cols),minmax(0,1fr))}.nbpsg-slider .nbpsg-card{flex-basis:calc((100% - (var(--nbpsg-mobile-cols) - 1)*var(--nbpsg-gap))/var(--nbpsg-mobile-cols))}.nbpsg-header{margin-bottom:14px}.nbpsg-heading{font-size:20px}.nbpsg-shop-link{font-size:13px}.nbpsg-image-box{height:var(--nbpsg-img-height);padding:8px!important}.nbpsg-title{font-size:14px;margin-left:10px;margin-right:10px}.nbpsg-price{margin-left:10px;margin-right:10px}.nbpsg-button{margin-left:10px;margin-right:10px}.nbpsg-prev{left:-42px}.nbpsg-next{right:-42px}.nbpsg-arrow{width:34px;height:34px;font-size:25px;line-height:31px}}
