/* Quick-add panel + cart drawer. Measured from the Release demo: 600px right panel, 36px side padding. */
.relw-drawers{position:relative;z-index:2100}
.relw-dr{position:fixed;inset:0;visibility:hidden;font-family:var(--relw-font);color:rgb(17,17,17)}
.relw-dr.is-open{visibility:visible}
.relw-dr__overlay{position:absolute;inset:0;background:rgba(0,0,0,.5);opacity:0;transition:opacity .3s}
.relw-dr.is-open .relw-dr__overlay{opacity:1}
.relw-dr__panel{position:absolute;top:0;right:0;bottom:0;width:600px;max-width:100%;display:flex;flex-direction:column;background:#fff;transform:translateX(100%);transition:transform .3s cubic-bezier(0,0,.24,1);overflow:hidden}
.relw-dr.is-open .relw-dr__panel{transform:none}
.relw-dr button{font-family:inherit}
.relw-dr .relw-dr__close,.relw-dr .relw-dr__close:hover,.relw-dr .relw-dr__close:focus{position:absolute;top:24px;right:40px;width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:none;border:0;color:inherit;cursor:pointer;z-index:2}
.relw-dr__close svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1}
.relw-dr__scroll{flex:1;overflow-y:auto;overflow-x:hidden}
.relw-dr__title{margin:0;padding:24px 36px 0;font-size:27px;line-height:36px;font-weight:600;letter-spacing:-.04em}

/* quick add */
.relw-qa__strip{display:flex;gap:8px;margin-top:28px;padding:0 0 0 36px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.relw-qa__strip::-webkit-scrollbar{display:none}
.relw-qa__slide{flex:0 0 258px;height:344px;scroll-snap-align:start;background:rgb(238,238,238)}
.relw-qa__slide img{width:100%;height:100%;object-fit:cover;display:block}
.relw-qa__body{padding:24px 36px 36px}
.relw-qa__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.relw-qa__name{font-size:16px;line-height:20px;font-weight:600;color:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.relw-qa__badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.relw-qa__badge{padding:5px 8px;font-size:10px;line-height:12.5px;font-weight:500;letter-spacing:1.4px;text-transform:uppercase;color:#fff;background:rgb(94,90,89);border-radius:4px}
.relw-qa__price{margin-top:8px;font-size:14px;line-height:21px}
.relw-qa__price .relw-pc__was{margin-right:4px;text-decoration:line-through}
.relw-qa__price .relw-pc__sale{color:rgb(194,81,81)}
.relw-qa__opt{margin-top:32px}
.relw-qa__label{font-size:10px;line-height:12.5px;letter-spacing:1.4px;text-transform:uppercase;color:rgba(17,17,17,.6)}
.relw-qa__label b{margin-left:6px;font-weight:700;color:rgb(17,17,17)}
.relw-qa__vals{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.relw-dr .relw-qa__size,.relw-dr .relw-qa__size:hover,.relw-dr .relw-qa__size:focus{min-width:32px;height:28px;padding:0 8px;font-size:10px;line-height:1;letter-spacing:1px;text-transform:uppercase;color:rgb(17,17,17);background:#fff;border:1px solid rgb(235,235,235);border-radius:2px;cursor:pointer;position:relative}
.relw-dr .relw-qa__size.is-active{border-color:rgb(17,17,17)}
.relw-dr .relw-qa__size.is-out{color:rgba(17,17,17,.35);cursor:not-allowed;overflow:hidden}
.relw-qa__size.is-out::after{content:"";position:absolute;left:-2px;right:-2px;top:50%;height:1px;background:rgba(17,17,17,.35);transform:rotate(-30deg)}
.relw-dr .relw-qa__sw,.relw-dr .relw-qa__sw:hover,.relw-dr .relw-qa__sw:focus{width:24px;height:24px;padding:0;border-radius:50%;border:1px solid rgba(17,17,17,.2);background:var(--sw,#ccc);cursor:pointer;box-shadow:none}
.relw-dr .relw-qa__sw.is-active{box-shadow:0 0 0 2px #fff,0 0 0 3px rgb(17,17,17)}
.relw-qa__sw.is-out{opacity:.35}
.relw-qa__actions{margin-top:32px;display:flex;flex-direction:column;gap:8px}
.relw-dr .relw-btn{display:block;width:100%;height:46px;padding:0 24px;line-height:44px;text-align:center}
.relw-dr .relw-btn[disabled]{opacity:.5;cursor:not-allowed}
.relw-dr .relw-btn--filled{background:rgb(17,17,17);color:#fff;border-color:rgb(17,17,17)}
.relw-dr .relw-btn:not(.relw-btn--filled){background:#fff;color:rgb(17,17,17);border:1px solid rgb(17,17,17)}
.relw-qa__msg{margin-top:12px;font-size:12px;line-height:18px;color:rgb(194,81,81)}

/* cart drawer */
.relw-cd__info{display:flex;align-items:center;justify-content:center;gap:8px;height:42px;font-size:12px;line-height:18px;font-weight:600;letter-spacing:-.02em;border-bottom:1px solid rgb(235,235,235)}
.relw-cd__head{display:flex;align-items:flex-start;padding:20px 36px 0}
.relw-cd__title{margin:0;font-size:40px;line-height:48px;font-weight:400;letter-spacing:-.04em}
.relw-cd__title sup{margin-left:6px;font-size:21px;line-height:21px;letter-spacing:-.04em;vertical-align:top;position:relative;top:6px}
.relw-cd .relw-dr__close{top:60px}
.relw-cd__ship{margin:18px 36px 0;padding-bottom:10px;border-bottom:1px solid rgb(235,235,235);position:relative;font-size:12px;line-height:18px}
.relw-cd__ship i{position:absolute;left:0;bottom:-1px;height:1px;background:rgb(17,17,17);transition:width .4s}
.relw-cd__items{padding:0 36px}
.relw-cd__item{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid rgb(235,235,235)}
.relw-cd__item:last-child{border-bottom:0}
.relw-cd__img{flex:0 0 100px;height:133px;background:rgb(238,238,238)}
.relw-cd__img img{width:100%;height:100%;object-fit:cover;display:block}
.relw-cd__info2{flex:1;min-width:0;position:relative}
.relw-cd__name{display:block;max-width:calc(100% - 90px);font-size:12px;line-height:18px;font-weight:600;letter-spacing:.48px;text-transform:uppercase;color:inherit;text-decoration:none}
.relw-cd__line{position:absolute;right:0;top:0;font-size:12px;line-height:18px}
.relw-cd__unit{margin-top:12px;font-size:12px;line-height:18px}
.relw-cd__opts{margin-top:8px;font-size:12px;line-height:18px;color:rgba(17,17,17,.7)}
.relw-cd__opts span+span::before{content:"\2022";margin:0 10px}
.relw-cd__ctrl{display:flex;align-items:center;gap:12px;margin-top:18px}
.relw-cd__qty{display:inline-flex;align-items:center;height:32px;border:1px solid rgb(235,235,235);border-radius:8px}
.relw-dr .relw-cd__qty button,.relw-dr .relw-cd__qty button:hover{width:28px;height:30px;padding:0;background:none;border:0;color:inherit;cursor:pointer;font-size:16px;line-height:1}
.relw-cd__qty span{min-width:22px;text-align:center;font-size:12px}
.relw-dr .relw-cd__rm,.relw-dr .relw-cd__rm:hover{padding:0;width:24px;height:24px;background:none;border:0;color:inherit;cursor:pointer}
.relw-cd__rm svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.2}
.relw-cd__empty{padding:64px 36px;text-align:center;font-size:14px}
.relw-cd__foot{border-top:1px solid rgb(235,235,235);padding:24px 36px 36px}
.relw-cd__sub{display:flex;justify-content:space-between;align-items:baseline}
.relw-cd__sub strong{font-size:28px;line-height:34px;font-weight:400;letter-spacing:-.04em}
.relw-cd__sub b{font-size:20px;line-height:24px;font-weight:600}
.relw-cd__note{margin-top:4px;font-size:12px;line-height:18px}
.relw-cd__btns{display:flex;gap:10px;margin-top:20px}
.relw-cd__btns .relw-btn{flex:1}
@media (max-width:749px){
  .relw-dr__panel{width:100%}
  .relw-dr .relw-dr__close{right:12px}
  .relw-dr__title{padding:24px 16px 0;font-size:22px}
  .relw-qa__strip{padding-left:16px}.relw-qa__slide{flex-basis:200px;height:267px}
  .relw-qa__body{padding:20px 16px 24px}
  .relw-cd__head,.relw-cd__items,.relw-cd__foot{padding-left:16px;padding-right:16px}
  .relw-cd__ship{margin-left:16px;margin-right:16px}
  .relw-cd__title{font-size:32px;line-height:40px}
}
@media (prefers-reduced-motion:reduce){.relw-dr__panel,.relw-dr__overlay{transition:none}}

/* drag the image strip with the mouse */
.relw-qa__strip{cursor:grab;user-select:none;-webkit-user-select:none}
.relw-qa__strip.is-dragging{cursor:grabbing;scroll-snap-type:none}
.relw-qa__slide img{-webkit-user-drag:none;pointer-events:none}
/* thin progress line while the cart is updating */
.relw-cd__bar{position:absolute;top:0;left:0;height:2px;width:100%;background:linear-gradient(90deg,transparent,rgb(17,17,17),transparent);transform:translateX(-100%);opacity:0;z-index:3}
.relw-cd.is-loading .relw-cd__bar{opacity:1;animation:relwBar 1s linear infinite}
.relw-cd.is-loading .relw-dr__scroll{opacity:.6;pointer-events:none}
@keyframes relwBar{to{transform:translateX(100%)}}

/* Cart drawer close button: keep it in place on hover/focus (the generic rule has higher specificity). */
.relw-dr.relw-cd .relw-dr__close,.relw-dr.relw-cd .relw-dr__close:hover,.relw-dr.relw-cd .relw-dr__close:focus,.relw-dr.relw-cd .relw-dr__close:active{top:60px;right:40px;transform:none;background:none;color:inherit}
.relw-dr.relw-qa .relw-dr__close,.relw-dr.relw-qa .relw-dr__close:hover,.relw-dr.relw-qa .relw-dr__close:focus,.relw-dr.relw-qa .relw-dr__close:active{top:24px;right:40px;transform:none;background:none;color:inherit}
@media (max-width:749px){.relw-dr.relw-cd .relw-dr__close,.relw-dr.relw-cd .relw-dr__close:hover,.relw-dr.relw-qa .relw-dr__close,.relw-dr.relw-qa .relw-dr__close:hover{right:12px}}
