.product-upsell{background:rgb(var(--color-background));color:rgb(var(--color-foreground))}
.product-upsell--inline{margin-top:2rem;padding-top:2rem;border-top:.1rem solid rgba(var(--color-foreground),.12)}
.product-upsell__heading{margin:0;font-size:1.8rem;line-height:1.4}
.product-upsell__lead{margin:.4rem 0 1.2rem;color:rgba(var(--color-foreground),.68);font-size:1.2rem}
.product-upsell__bundle{display:flex;gap:1.6rem;margin:0;padding:.2rem .1rem 1rem;overflow:visible}
.product-upsell__bundle-item{position:relative;display:grid;grid-template-rows:auto 1fr;flex:1 1 0;min-width:0;container-type:inline-size}
.product-upsell__bundle-item+.product-upsell__bundle-item:before{content:'+';position:absolute;top:50cqi;left:-.8rem;transform:translate(-50%,-50%);font-size:1.8rem;line-height:1;color:rgba(var(--color-foreground),.55)}
.product-upsell__image-link{display:block;aspect-ratio:1/1;overflow:hidden;border-radius:.8rem;background:rgba(var(--color-foreground),.04)}
.product-upsell__image{width:100%;height:100%;object-fit:cover}
.product-upsell__content{padding:.8rem 0 0}
.product-upsell__eyebrow{margin:0 0 .3rem;color:rgba(var(--color-foreground),.62);font-size:1.1rem}
.product-upsell__title{display:-webkit-box;margin:0 0 .4rem;overflow:hidden;font-size:1.25rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.product-upsell__title a{color:inherit;text-decoration:none}
.product-upsell__description{display:-webkit-box;margin:0 0 .5rem;overflow:hidden;color:rgba(var(--color-foreground),.7);font-size:1.1rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.product-upsell__price{margin:0;font-size:1.2rem;font-weight:600}
.product-upsell__check{position:absolute;z-index:1;top:.6rem;right:.6rem;display:grid;width:2.6rem;height:2.6rem;place-items:center;border-radius:50%;background:rgb(var(--color-background));box-shadow:0 0 0 .1rem rgba(var(--color-foreground),.35);cursor:pointer}
.product-upsell__check input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.product-upsell__check-icon{display:grid;width:100%;height:100%;place-items:center;border-radius:50%;background:rgb(var(--color-background));transition:background-color .15s ease,box-shadow .15s ease,transform .15s ease}
.product-upsell__check-icon:before{content:'+';grid-area:1/1;color:rgba(var(--color-foreground),.78);font-size:2rem;font-weight:400;line-height:1;opacity:1;transition:opacity .15s ease,transform .15s ease}
.product-upsell__check-icon:after{content:'';grid-area:1/1;width:.55rem;height:1rem;margin-top:-.2rem;border:solid rgb(var(--color-button-text));border-width:0 .2rem .2rem 0;opacity:0;transform:rotate(45deg) scale(.7);transition:opacity .15s ease,transform .15s ease}
.product-upsell__check input:checked+.product-upsell__check-icon{background:rgb(var(--color-button))}
.product-upsell__check input:checked+.product-upsell__check-icon:before{opacity:0;transform:scale(.7)}
.product-upsell__check input:checked+.product-upsell__check-icon:after{opacity:1;transform:rotate(45deg) scale(1)}
.product-upsell__check input:focus-visible+.product-upsell__check-icon{box-shadow:0 0 0 .2rem rgb(var(--color-background)),0 0 0 .4rem rgba(var(--color-button),.65)}
.product-upsell__summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.8rem 0 0;padding:1.2rem 0 1rem;border-top:.1rem solid rgba(var(--color-foreground),.12);font-size:1.25rem;line-height:1.5}
.product-upsell__total{font-size:1.55rem;font-weight:700}
.product-upsell__bundle-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:4.4rem;margin:0;padding:1rem 1.5rem;overflow:hidden;border:0;background:#a00000;box-shadow:none;color:#fff;font-size:1.3rem;line-height:1.5}
.product-upsell__bundle-button:before,.product-upsell__bundle-button:after{display:none!important}
.product-upsell__bundle-button.loading>span{opacity:0}
.product-upsell__error{margin:.8rem 0 0;color:rgb(var(--color-error));font-size:1.2rem}
@media screen and (min-width:750px){.product-upsell__bundle{gap:2.4rem}.product-upsell__bundle-item{grid-template-columns:9.5rem 1fr;grid-template-rows:auto;gap:1rem}.product-upsell__bundle-item+.product-upsell__bundle-item:before{top:4.75rem;left:-1.2rem}.product-upsell__content{padding:0}.product-upsell__title{font-size:1.3rem}.product-upsell__description{font-size:1.15rem}.product-upsell__image-link{align-self:start}.product-upsell__check{right:auto;left:6.3rem}}
