:root{--pp-red:#F42A44;--pp-red-d:#D91C36;--pp-navy:#12141F;--pp-yellow:#F7AE2C;--pp-pink:#FFE6EA;--pp-cream:#FFF6E6;--pp-sun:#FFF0CF}
.pp-wrap{max-width:var(--page-width,1400px);margin:0 auto;padding-left:var(--page-margin,20px);padding-right:var(--page-margin,20px)}
.pp-sec{padding-top:44px;padding-bottom:44px}
.pp-h2{font-size:clamp(22px,2.6vw,32px);font-weight:800;margin:0 0 28px;text-align:center;color:var(--pp-navy)}
.pp-grid{display:grid;gap:20px;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr))}
.pp-grid[hidden]{display:none}
@media(max-width:749px){.pp-sec{padding-top:32px;padding-bottom:32px}.pp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pp-h2{margin-bottom:20px}}
.pp-card{text-align:center;display:block;color:inherit;text-decoration:none}
.pp-card__media{position:relative;background:#f5f5f7;border-radius:10px;overflow:hidden;aspect-ratio:1/1}
.pp-card__media img,.pp-card__media svg{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .35s,transform .5s}
.pp-card__media img+img{position:absolute;inset:0;opacity:0}
.pp-card:hover .pp-card__media img+img{opacity:1}
.pp-card:hover .pp-card__media img:only-of-type{transform:scale(1.04)}
.pp-badge{position:absolute;top:10px;left:10px;background:var(--pp-red);color:#fff;font-size:12px;font-weight:800;padding:3px 9px;border-radius:20px;z-index:2}
.pp-card__title{font-size:14px;font-weight:700;margin:12px 0 6px;line-height:1.35;color:var(--pp-navy)}
.pp-stars{color:var(--pp-yellow);font-size:14px;letter-spacing:1px;line-height:1}
.pp-stars span{color:#ddd}
.pp-stars small{color:#888;font-size:12px;letter-spacing:0;margin-left:4px}
.pp-price{color:var(--pp-red);font-weight:800;margin-top:6px;font-size:15px}
.pp-price s{color:#999;font-weight:400;margin-left:6px;font-size:13px}
.pp-btn{display:inline-block;background:var(--pp-red);color:#fff;padding:12px 30px;border-radius:30px;font-weight:700;text-decoration:none;font-size:14px;transition:background .2s}
.pp-btn:hover{background:var(--pp-red-d);color:#fff}
.pp-scroll{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.pp-scroll::-webkit-scrollbar{display:none}
.pp-scroll>*{scroll-snap-align:start;flex:0 0 auto}
