/* The shop, product pages, bag and checkout in the Spice Club theme (loaded after globals.css and spice.css). */

.spice-store{font-family:var(--body);color:var(--ink)}
.spice-store .frame--page{margin:16px;padding:0;overflow:visible;background:var(--wine);border-radius:var(--radius-xl)}
.spice-store .frame--page .nav{position:relative}
.spice-store .frame--page .mobile-menu{top:80px}
.store-card{display:block;background:var(--paper);margin:0 16px;border-radius:var(--radius-xl);overflow:hidden;padding:clamp(28px,4vw,56px) 0 clamp(40px,6vw,80px)}
.spice-store .site-foot{margin-top:16px}
.spice-store .page-width{width:min(1240px,100% - clamp(32px,6vw,96px));margin-inline:auto;padding:0;max-width:none}
.spice-store h1,.spice-store h2,.spice-store h3,.spice-store h4{font-family:var(--display);letter-spacing:-.025em;color:var(--ink)}

/* Bag button in the nav */
.nav-cart{display:inline-flex}
.nav-bag{display:inline-flex;align-items:center;gap:8px;background:var(--sun);color:var(--ink);border:0;border-radius:999px;padding:9px 16px;font:700 14px var(--display);cursor:pointer}
.nav-bag__count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--ink);color:#fff;font-size:12px}

/* Buttons */
.spice-store .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:1.5px solid var(--red);background:var(--red);color:#fff;font:700 15px var(--display);letter-spacing:0;text-transform:none;padding:15px 26px;min-height:0;transition:transform .2s ease,background .2s ease;cursor:pointer}
.spice-store .button:hover:not(:disabled){transform:translateY(-2px);background:#AE0D27}
.spice-store .button--secondary{background:var(--ink);border-color:var(--ink)}
.spice-store .button--secondary:hover:not(:disabled){background:#000}
.spice-store .button:disabled{opacity:.5;cursor:not-allowed}
.spice-store .button--full{width:100%}

/* Product page */
.spice-store .product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start;padding:0}
.product__stage{border-radius:var(--radius-lg);overflow:hidden;background:var(--cream);aspect-ratio:4/5}
.product__stage img{width:100%;height:100%;object-fit:cover;display:block}
.product__thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.product__thumbs button{width:76px;aspect-ratio:4/5;padding:0;border:2px solid transparent;border-radius:14px;overflow:hidden;background:var(--cream);cursor:pointer}
.product__thumbs button.is-active{border-color:var(--red)}
.product__thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.spice-store .product__details{position:sticky;top:24px}
.spice-store .product__title{font-size:clamp(34px,4.4vw,56px);line-height:.98;letter-spacing:-.04em;margin:0 0 12px;text-transform:none}
.spice-store .product__price{font:700 22px var(--display);color:var(--red);margin:0 0 22px;display:flex;align-items:baseline;gap:12px}
.product__compare{font-size:16px;color:#9a8a8d;font-weight:400}
.product__option{border:0;padding:0;margin:0 0 18px}
.product__option legend{font:700 13px var(--display);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:10px;padding:0}
.product__option legend b{letter-spacing:0;text-transform:none;font-family:var(--body);font-weight:400;color:#5c4a4d}
.product__choices{display:flex;flex-wrap:wrap;gap:8px}
.choice{min-width:52px;padding:10px 16px;border-radius:999px;border:1.5px solid #E7DEDF;background:#fff;color:var(--ink);font:700 14px var(--display);cursor:pointer;transition:border-color .2s,background .2s}
.choice:hover{border-color:var(--ink)}
.choice.is-active{border-color:var(--ink);background:var(--ink);color:#fff}
.choice--swatch{min-width:0;width:42px;height:42px;padding:4px;display:grid;place-items:center}
.choice--swatch.is-active{background:#fff;border-color:var(--red);box-shadow:0 0 0 2px var(--red) inset}
.choice__dot{width:100%;height:100%;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px rgb(0 0 0 / .12)}
.spice-store .product__buy{display:grid;gap:10px;margin:22px 0 26px}
.spice-store .quantity{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #E7DEDF;border-radius:999px;padding:4px;width:max-content;background:#fff}
.spice-store .quantity button{width:36px;height:36px;border-radius:50%;border:0;background:transparent;font-size:18px;cursor:pointer;color:var(--ink)}
.spice-store .quantity button:hover{background:#F4F1F0}
.spice-store .quantity span{min-width:24px;text-align:center;font:700 15px var(--display)}
.spice-store .rte{font-size:16px;line-height:1.7;color:#3a2a2d}
.spice-store .rte ul{padding-left:20px;margin:12px 0}
.spice-store .rte li{margin:4px 0}

/* Badges under the product */
.spice-store .badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:clamp(32px,5vw,56px)}
.spice-store .badges .badge{background:#F4F1F0;border-radius:var(--radius-md);padding:22px 18px;text-align:center;font-size:14px;white-space:pre-line;color:var(--ink);border:0;position:static;width:auto;height:auto;box-shadow:none}
.spice-store .badges .badge svg{color:var(--red)}

/* Related products and the shop grid */
.spice-store .section{padding:clamp(40px,6vw,72px) 0 0}
.spice-store .section-resource-list__header h4,.spice-store .section-resource-list__header h2{font-size:clamp(26px,3vw,38px);text-transform:none;letter-spacing:-.03em;margin:0 0 22px}
.spice-store .resource-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.spice-store .product-card{border-radius:var(--radius-lg);overflow:hidden;background:#F4F1F0;border:0}
.spice-store .product-card__media{aspect-ratio:4/5;background:var(--cream);overflow:hidden}
.spice-store .product-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.spice-store .product-card:hover .product-card__media img{transform:scale(1.04)}
.spice-store .product-card__info{padding:16px 18px 20px}
.spice-store .product-card__title{font:700 18px var(--display);color:var(--ink);letter-spacing:-.01em}
.spice-store .product-card__price{color:var(--red);font:700 16px var(--display)}
.spice-store .product-card__quick-add{border-radius:999px}

/* Bag drawer */
.spice-store .drawer{border-radius:var(--radius-lg) 0 0 var(--radius-lg);font-family:var(--body)}
.spice-store .drawer__header h2{font-family:var(--display)}
.spice-store .cart-line img{border-radius:12px;object-fit:cover}
.cart-line__variant{font-size:13px;color:#7a6a6d;margin-top:2px}

/* Checkout */
.spice-store .checkout{background:transparent}
.spice-store .checkout__main{width:min(1100px,100% - clamp(32px,6vw,96px));margin-inline:auto;padding:0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);min-height:0}
.spice-store .checkout__heading{font-size:22px;margin:0 0 14px}
.spice-store .checkout__form section{margin-bottom:28px}
.spice-store .field input{border:1.5px solid #E7DEDF;border-radius:14px;background:#FBF8F7;padding:13px 16px;font:16px var(--body);color:var(--ink)}
.spice-store .field input:focus{border-color:var(--red);background:#fff;outline:none}
.spice-store .field label{font:700 13px var(--display);color:var(--ink)}
.spice-store .checkout__summary{background:#F4F1F0;border-radius:var(--radius-lg);border:0;padding:24px}
.spice-store .checkout__summary-inner{position:static;padding:0;max-width:none}
.spice-store .checkout__thumb img{border-radius:12px;object-fit:cover}
.spice-store .checkout__qty{background:var(--ink)}

@media (max-width:900px){
  .spice-store .product,.spice-store .checkout__main{grid-template-columns:1fr}
  .spice-store .product__details{position:static}
}
@media (max-width:640px){
  .spice-store .frame--page,.store-card{margin-left:8px;margin-right:8px}
  .spice-store .frame--page{margin-top:8px;border-radius:28px}
  .nav-bag{padding:8px 12px}
}
.spice-store .product__gallery{background:none;padding:0}
.spice-store .checkout__summary{align-self:start}
.spice-store .field{margin-bottom:14px}
.spice-store .checkout__row{gap:12px}
