.product-carousel{width:100%}.product-carousel__header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.product-carousel__header--nav-only{justify-content:flex-end}.product-carousel__title{color:var(--foreground);font-size:1.5rem;font-weight:700}.product-carousel__nav{gap:.5rem;display:flex}.product-carousel__nav-btn{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:9999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;transition:transform .25s,background .25s,box-shadow .25s;display:flex}.product-carousel__nav-btn:hover:not(:disabled){background:#f1fafc;background:lab(97.7619% -2.90415 -1.9249);transform:scale(1.08);box-shadow:0 4px 14px #0000001a}.product-carousel__nav-btn:disabled{opacity:.35;cursor:not-allowed}.product-carousel__viewport{overflow:hidden}.product-carousel__track{touch-action:pan-y pinch-zoom;margin-left:-1rem;display:flex}.product-carousel__slide{flex:0 0 100%;min-width:0;padding-left:1rem}@media (min-width:640px){.product-carousel__slide{flex:0 0 50%}}@media (min-width:768px){.product-carousel__slide{flex:0 0 33.333%}}@media (min-width:1024px){.product-carousel__slide{flex:0 0 25%}}.product-carousel__card{border:1px solid var(--border);background:#fff;border-radius:1rem;flex-direction:column;height:100%;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s;display:flex;overflow:hidden}.product-carousel__card:hover{transform:translateY(-8px);box-shadow:0 20px 40px -16px #0000002e}.product-carousel__image-wrap{aspect-ratio:1;background:linear-gradient(135deg,#e7f9fd,#d3f8ef);background:linear-gradient(135deg,lab(96.6829% -5.79178 -3.83765),lab(94.7023% -13.6417 -.123644));position:relative;overflow:hidden}.product-carousel__image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.product-carousel__card:hover .product-carousel__image-wrap img{transform:scale(1.08)}.product-carousel__badge{background:var(--destructive);color:#fff;border-radius:9999px;padding:.25rem .65rem;font-size:.75rem;font-weight:700;animation:2s ease-in-out infinite animPulseSoft;position:absolute;top:.75rem;right:.75rem}.product-carousel__body{flex-direction:column;flex:1;padding:1rem;display:flex}.product-carousel__dots{justify-content:center;gap:.4rem;margin-top:1.25rem;display:flex}.product-carousel__dot{background:var(--border);cursor:pointer;border:none;border-radius:9999px;width:.4rem;height:.4rem;padding:0;transition:width .35s,background .35s}.product-carousel__dot--active{background:var(--primary);width:1.25rem}
