:root{--tnps-teal:#0f8f86;--tnps-teal-dark:#08756e;--tnps-ink:#172126;--tnps-muted:#7d898d;--tnps-line:#edf1f0;--tnps-soft:#f7f9f8}.tnps-section{width:100%;margin:52px 0;color:var(--tnps-ink);font-family:inherit}.tnps-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.tnps-eyebrow{display:block;margin-bottom:8px;color:var(--tnps-teal);font-size:10px;font-weight:800;letter-spacing:.22em}.tnps-heading h2{margin:0;font-size:clamp(25px,2.5vw,36px);line-height:1.08;font-weight:750;letter-spacing:-.04em}.tnps-heading p{margin:9px 0 0;color:var(--tnps-muted);font-size:14px;line-height:1.55}.tnps-nav{display:flex;gap:9px}.tnps-arrow{width:42px;height:42px;border:1px solid rgb(15 143 134 / .18);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--tnps-ink);cursor:pointer;padding:0;box-shadow:0 8px 24px rgb(20 36 40 / .09);transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease}.tnps-arrow span{font-size:17px;line-height:1;transform:translateY(-1px)}.tnps-arrow:hover:not(:disabled){background:var(--tnps-teal);color:#fff;transform:translateY(-2px);box-shadow:0 12px 28px rgb(15 143 134 / .2)}.tnps-arrow:disabled{opacity:.32;cursor:default;box-shadow:none}.tnps-viewport{width:100%;overflow:hidden;padding:18px 8px 30px;margin:0 -8px}.tnps-track{display:flex;gap:28px;will-change:transform;transition:transform .58s cubic-bezier(.22,.72,.18,1)}.tnps-card{flex:0 0 calc((100% - 84px)/4);min-width:0;overflow:visible;border:0;border-radius:0;background:#fff0;box-shadow:none;transition:transform .32s ease}.tnps-card:hover{transform:translateY(-6px)}.tnps-card-media{position:relative;height:300px;overflow:hidden;border-radius:22px;background:linear-gradient(145deg,#f8faf9,#f1f5f4);box-shadow:0 13px 32px rgb(20 36 40 / .075);transition:box-shadow .32s ease,background .32s ease}.tnps-card:hover .tnps-card-media{box-shadow:0 21px 42px rgb(20 36 40 / .13);background:#f6f9f8}.tnps-product-link{display:block;width:100%;height:100%}.tnps-main-image{display:block;width:100%;height:100%;object-fit:contain;padding:20px;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.tnps-card:hover .tnps-main-image{transform:scale(1.065)}.tnps-sale-badge{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border-radius:999px;background:#fff;color:var(--tnps-teal);font-size:10px;font-weight:850;box-shadow:0 7px 18px rgb(20 36 40 / .09)}.tnps-quick-view{position:absolute;top:13px;right:13px;z-index:3;width:38px;height:38px;border-radius:50%;background:rgb(255 255 255 / .96);color:var(--tnps-ink);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 8px 20px rgb(20 36 40 / .11);transition:transform .22s ease,background .22s ease,color .22s ease}.tnps-quick-view:hover{transform:rotate(6deg) scale(1.05);background:var(--tnps-teal);color:#fff}.tnps-card-body{padding:16px 3px 0}.tnps-category{min-height:13px;margin-bottom:7px;color:var(--tnps-teal);font-size:9px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.tnps-product-title{display:-webkit-box;overflow:hidden;color:var(--tnps-ink);font-size:15px;font-weight:650;line-height:1.35;text-decoration:none;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:40px}.tnps-product-title:hover{color:var(--tnps-teal)}.tnps-rating{display:flex;align-items:center;gap:6px;margin-top:7px;min-height:16px}.tnps-stars{color:#d9a63a;font-size:11px;letter-spacing:1px}.tnps-review-count{color:#9aa4a7;font-size:10px}.tnps-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;margin-top:8px;min-height:27px}.tnps-price .amount{color:var(--tnps-ink);font-size:17px;font-weight:800}.tnps-price del .amount{color:#a7afb1;font-size:12px;font-weight:500}.tnps-price ins{text-decoration:none}.tnps-actions{margin-top:12px;opacity:0;transform:translateY(5px);transition:opacity .25s ease,transform .25s ease}.tnps-card:hover .tnps-actions{opacity:1;transform:translateY(0)}.tnps-add{width:100%;min-height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 15px;border-radius:10px;background:var(--tnps-ink);color:#fff!important;text-decoration:none!important;font-size:11px;font-weight:750;transition:.22s ease}.tnps-add:hover{background:var(--tnps-teal);box-shadow:0 9px 18px rgb(15 143 134 / .18)}.tnps-add-icon{width:23px;height:23px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgb(255 255 255 / .13);font-size:16px}.tnps-progress{height:2px;margin-top:0;overflow:hidden;border-radius:99px;background:#e9eeee}.tnps-progress-fill{display:block;width:12%;height:100%;border-radius:inherit;background:var(--tnps-teal);transition:width .45s ease}@media (max-width:1199px){.tnps-card{flex-basis:calc((100% - 56px)/3)}}@media (max-width:919px){.tnps-card{flex-basis:calc((100% - 28px)/2)}.tnps-card-media{height:270px}.tnps-actions{opacity:1;transform:none}}@media (max-width:619px){.tnps-section{margin:42px 0}.tnps-heading-row{gap:14px}.tnps-heading p{font-size:12px}.tnps-arrow{width:37px;height:37px}.tnps-track{gap:18px}.tnps-card{flex-basis:calc(82% - 9px)}.tnps-card-media{height:255px;border-radius:19px}.tnps-card-body{padding:14px 2px 0}.tnps-actions{opacity:1;transform:none}}@media (max-width:420px){.tnps-heading p{display:none}.tnps-heading h2{font-size:23px}.tnps-card-media{height:235px}}.tnps-card{border:1px solid #e5ecea;border-radius:24px;padding:10px 10px 14px;background:#fff;box-shadow:0 8px 25px rgb(20 36 40 / .045)}.tnps-card:hover{border-color:rgb(15 143 134 / .28);box-shadow:0 18px 38px rgb(20 36 40 / .10)}.tnps-card-media{border-radius:18px}.tnps-card-body{padding:15px 5px 0}.tnps-price .amount{color:var(--tnps-teal);font-size:18px;font-weight:850}.tnps-price del .amount{color:#a7afb1;font-size:12px}.tnps-price ins .amount{color:#d26a3d}@media (max-width:619px){.tnps-card{padding:8px 8px 12px;border-radius:21px}.tnps-card-media{border-radius:16px}}.tnps-heading p{color:var(--tnps-teal)}.tnps-add{background:#1469d8}.tnps-add:hover{background:#0f58ba;box-shadow:0 9px 18px rgb(20 105 216 / .20)}.tnps-variation-picker{margin-top:10px;display:flex;flex-direction:column;gap:9px}.tnps-option-group{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.tnps-option-label{flex:0 0 auto;color:#6f7b7e;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tnps-color-options,.tnps-size-options{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.tnps-color-swatch{width:24px;height:24px;padding:0;border:2px solid #fff;border-radius:50%;background:var(--tnps-swatch,#d9dedc);box-shadow:0 0 0 1px #d9e0de;cursor:pointer;position:relative;appearance:none;-webkit-appearance:none;transition:transform .18s ease,box-shadow .18s ease}.tnps-color-swatch span{display:block;width:100%;height:100%;border-radius:50%;background:var(--tnps-swatch,#d9dedc)}.tnps-color-swatch:hover,.tnps-color-swatch:focus,.tnps-color-swatch:focus-visible{outline:none!important;box-shadow:0 0 0 2px #fff,0 0 0 3px #fff!important;transform:scale(1.08)}.tnps-color-swatch.is-selected{box-shadow:0 0 0 2px #fff,0 0 0 3px var(--tnps-ink)!important}.tnps-color-swatch.is-unavailable,.tnps-size-option.is-unavailable{opacity:.28;cursor:not-allowed}.tnps-color-swatch.is-unavailable span{position:relative}.tnps-color-swatch.is-unavailable span:after{content:"";position:absolute;left:50%;top:50%;width:22px;height:1px;background:#fff;transform:translate(-50%,-50%) rotate(-45deg)}.tnps-size-option{min-width:34px;min-height:28px;padding:4px 9px;border:1px solid #e1e7e5;border-radius:8px;background:#fff;color:var(--tnps-ink);font-size:10px;font-weight:700;cursor:pointer;appearance:none;-webkit-appearance:none;transition:all .18s ease}.tnps-size-option:hover,.tnps-size-option:focus,.tnps-size-option:focus-visible{outline:none!important;border-color:var(--tnps-ink)}.tnps-size-option.is-selected{background:var(--tnps-ink);border-color:var(--tnps-ink);color:#fff}.tnps-variable-add{cursor:pointer}.tnps-variable-add.tnps-needs-selection{animation:tnps-shake .24s linear 2}.tnps-variable-add.loading{opacity:.7;pointer-events:none}.tnps-variable-add.added{background:var(--tnps-teal)!important}@keyframes tnps-shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}@media(max-width:619px){.tnps-variation-picker{gap:8px}.tnps-option-group{gap:7px}.tnps-color-swatch{width:23px;height:23px}}