.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:16px 32px;font-family:var(--font-body);font-size:.8125rem;font-weight:var(--fw-medium);letter-spacing:var(--ls-uppercase);text-transform:uppercase;line-height:1;text-decoration:none;border:none;border-radius:0;cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--color-charcoal);color:var(--color-white)}.btn-primary:hover{background-color:var(--color-black)}.btn-secondary{background-color:transparent;color:var(--color-charcoal);border:2px solid var(--color-charcoal)}.btn-secondary:hover{background-color:var(--color-charcoal);color:var(--color-white)}.btn-outline{background-color:transparent;color:var(--color-charcoal);border:1px solid var(--color-charcoal)}.btn-outline:hover{background-color:var(--color-charcoal);color:var(--color-white)}.btn-ghost{background:none;color:var(--color-charcoal);padding:8px 0;border-bottom:1px solid transparent;letter-spacing:var(--ls-uppercase)}.btn-ghost:hover{border-bottom-color:var(--color-charcoal)}.btn-gold{background-color:var(--color-gold-accent);color:var(--color-charcoal)}.btn-gold:hover{background-color:#b89a6f}.btn-white{background-color:var(--color-white);color:var(--color-charcoal)}.btn-white:hover{background-color:var(--color-soft-beige)}.btn-sm{padding:10px 20px;font-size:.75rem}.btn-lg{padding:20px 48px;font-size:.875rem}.btn-full{width:100%}.btn:disabled,.btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none}.btn svg{width:16px;height:16px;flex-shrink:0}.btn--primary{background-color:var(--color-charcoal);color:var(--color-white)}.btn--primary:hover{background-color:var(--color-black)}.btn--secondary{background-color:transparent;color:var(--color-charcoal);border:2px solid var(--color-charcoal)}.btn--secondary:hover{background-color:var(--color-charcoal);color:var(--color-white)}.btn--outline{background-color:transparent;color:var(--color-white);border:2px solid var(--color-white)}.btn--outline:hover{background-color:var(--color-white);color:var(--color-charcoal)}.btn--gold{background-color:var(--color-gold-accent);color:var(--color-charcoal)}.btn--gold:hover{background-color:#b89a6f}.btn--sm{padding:10px 20px;font-size:.75rem}.btn--lg{padding:20px 48px;font-size:.875rem}.product-card{position:relative;background-color:var(--color-white);transition:box-shadow var(--transition-base)}.product-card:hover{box-shadow:var(--shadow-hover)}.product-card__media,.product-card__image-wrapper{position:relative;aspect-ratio:3 / 4;overflow:hidden;background:var(--color-soft-beige)}.product-card__image-wrapper img{width:100%;height:100%;object-fit:cover}.product-card--placeholder{background:var(--color-white)}.product-card__image{width:100%;height:100%;object-fit:cover;transition:opacity var(--transition-base)}.product-card__image--secondary{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.product-card:hover .product-card__image--primary{opacity:0}.product-card:hover .product-card__image--secondary{opacity:1}.product-card__overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:var(--space-4);background:linear-gradient(to top,rgba(46,46,46,.4),transparent 50%);opacity:0;transition:opacity var(--transition-base)}.product-card:hover .product-card__overlay{opacity:1}.product-card__overlay .btn{transform:translateY(10px);transition:all var(--transition-base)}.product-card:hover .product-card__overlay .btn{transform:translateY(0)}.product-card__info{padding:var(--space-4)}.product-card__vendor{font-size:.6875rem;text-transform:uppercase;letter-spacing:var(--ls-uppercase);color:var(--color-warm-taupe);margin-bottom:var(--space-1)}.product-card__title{font-family:var(--font-heading);font-size:1.125rem;font-weight:var(--fw-medium);line-height:var(--lh-tight);margin-bottom:var(--space-2)}.product-card__title a{text-decoration:none}.product-card__title a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.product-card__price{font-size:.9375rem;font-weight:var(--fw-medium)}.product-card__swatches{display:flex;gap:var(--space-1);margin-top:var(--space-2)}.category-card{position:relative;overflow:hidden;aspect-ratio:4 / 5}.category-card__image{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.category-card:hover .category-card__image{transform:scale(1.05)}.category-card__content,.category-card__overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-6);background:linear-gradient(to top,rgba(46,46,46,.6),transparent 60%)}.category-card__image-wrapper{width:100%;height:100%;overflow:hidden}.category-card__placeholder{width:100%;height:100%;background:var(--color-soft-beige)}.category-card__title{font-family:var(--font-heading);font-size:1.75rem;font-weight:var(--fw-semibold);color:var(--color-white);line-height:var(--lh-heading)}.category-card__count{font-size:.8125rem;color:#fffc;margin-top:var(--space-1)}.style-card{position:relative;overflow:hidden;aspect-ratio:1 / 1}.style-card__image{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.style-card:hover .style-card__image{transform:scale(1.05)}.style-card__content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#2e2e2e4d;transition:background var(--transition-base)}.style-card:hover .style-card__content{background:#2e2e2e73}.style-card__title{font-family:var(--font-heading);font-size:2rem;font-weight:var(--fw-semibold);color:var(--color-white);letter-spacing:var(--ls-heading)}.review-card{padding:var(--space-8);background-color:var(--color-white)}.review-card__stars{display:flex;gap:2px;margin-bottom:var(--space-4)}.review-card__quote{font-family:var(--font-heading);font-size:1.25rem;font-style:italic;line-height:1.5;margin-bottom:var(--space-6)}.review-card__author{font-size:.8125rem;font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:var(--ls-uppercase)}.review-card__product{font-size:.8125rem;color:var(--color-warm-taupe);margin-top:var(--space-1)}.trust-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:.8125rem;font-weight:var(--fw-medium);letter-spacing:.02em;color:var(--color-charcoal);white-space:nowrap}.trust-badge svg{width:20px;height:20px;flex-shrink:0;color:var(--color-gold-accent)}.form-group{margin-bottom:var(--space-6)}.form-label{display:block;font-size:.8125rem;font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:var(--ls-uppercase);margin-bottom:var(--space-2)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-3) 0;font-size:1rem;color:var(--color-charcoal);background:transparent;border:none;border-bottom:1px solid var(--color-stone-grey);border-radius:0;transition:border-color var(--transition-base);-webkit-appearance:none;appearance:none}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-bottom-color:var(--color-charcoal)}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-stone-grey)}.form-textarea{min-height:120px;resize:vertical}.form-select{background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%232E2E2E' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;padding-right:24px}.form-boxed{padding:var(--space-3) var(--space-4);border:1px solid var(--color-stone-grey)}.form-boxed:focus{border-color:var(--color-charcoal)}.form-error{border-bottom-color:var(--color-error)}.form-error-message{font-size:.8125rem;color:var(--color-error);margin-top:var(--space-1)}.badge{display:inline-block;padding:4px 12px;font-size:.6875rem;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-uppercase);line-height:1.4;border-radius:var(--radius-pill)}.badge-new{background-color:var(--color-charcoal);color:var(--color-white)}.badge-bestseller{background-color:var(--color-gold-accent);color:var(--color-charcoal)}.badge-custom{background-color:var(--color-muted-olive);color:var(--color-white)}.badge-sale{background-color:var(--color-error);color:var(--color-white)}.badge-outline{background:transparent;border:1px solid var(--color-stone-grey);color:var(--color-charcoal)}.product-card__badges{position:absolute;top:var(--space-3);left:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);z-index:2}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:#2e2e2e80;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.modal-overlay.is-active{opacity:1;visibility:visible}.modal{position:relative;width:90%;max-width:640px;max-height:90vh;overflow-y:auto;background-color:var(--color-white);padding:var(--space-8);animation:scaleIn .3s ease}.modal__close{position:absolute;top:var(--space-4);right:var(--space-4);width:40px;height:40px;display:flex;align-items:center;justify-content:center}.modal__close svg{width:20px;height:20px}.spinner{display:inline-block;width:24px;height:24px;border:2px solid var(--color-soft-beige);border-top-color:var(--color-gold-accent);border-radius:50%;animation:spin .7s linear infinite}.spinner-lg{width:40px;height:40px;border-width:3px}.spinner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#f7f5f2cc;z-index:10}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-4) 0;font-size:.8125rem;color:var(--color-stone-grey)}.breadcrumbs a{color:var(--color-warm-taupe);transition:color var(--transition-fast)}.breadcrumbs a:hover{color:var(--color-charcoal)}.breadcrumbs__separator{font-size:.625rem;opacity:.5}.breadcrumbs__current{color:var(--color-charcoal)}.star-rating{display:inline-flex;gap:2px}.star-rating svg{width:16px;height:16px}.star-rating__filled{color:var(--color-gold-accent)}.star-rating__empty{color:var(--color-soft-beige)}.star-rating-lg svg{width:20px;height:20px}.swatch-colour{display:inline-block;width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color var(--transition-fast);position:relative}.swatch-colour:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:1px solid transparent;transition:border-color var(--transition-fast)}.swatch-colour:hover:after,.swatch-colour.is-active:after{border-color:var(--color-charcoal)}.swatch-colour-sm{width:16px;height:16px}.swatch-fabric{display:inline-block;width:48px;height:48px;border:1px solid var(--color-soft-beige);cursor:pointer;overflow:hidden;transition:border-color var(--transition-fast)}.swatch-fabric:hover,.swatch-fabric.is-active{border-color:var(--color-charcoal);border-width:2px}.swatch-fabric img{width:100%;height:100%;object-fit:cover}.swatch-fabric-lg{width:64px;height:64px}.price{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap}.price__regular{font-size:1.125rem;font-weight:var(--fw-medium)}.price__sale{font-size:1.125rem;font-weight:var(--fw-medium);color:var(--color-error)}.price__compare{font-size:.9375rem;color:var(--color-stone-grey);text-decoration:line-through}.price__from{font-size:.8125rem;color:var(--color-warm-taupe);font-weight:var(--fw-regular)}.price-lg .price__regular,.price-lg .price__sale{font-size:1.5rem}.price-lg .price__compare{font-size:1.125rem}.sticky-atc{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-sticky);background-color:var(--color-white);box-shadow:0 -2px 12px #2e2e2e1a;transform:translateY(100%);transition:transform var(--transition-base);padding:var(--space-3) var(--container-padding)}.sticky-atc.is-visible{transform:translateY(0)}.sticky-atc__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);max-width:var(--container-max);margin:0 auto}.sticky-atc__info{display:flex;align-items:center;gap:var(--space-3);min-width:0}.sticky-atc__image{width:48px;height:48px;object-fit:cover;flex-shrink:0}.sticky-atc__title{font-family:var(--font-heading);font-size:1rem;font-weight:var(--fw-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sticky-atc__price{font-weight:var(--fw-medium);white-space:nowrap}.sticky-atc__actions{flex-shrink:0}@media(max-width:767px){.sticky-atc__title{display:none}}.quantity-selector{display:inline-flex;align-items:center;border:1px solid var(--color-stone-grey)}.quantity-selector__btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;font-size:1.125rem;transition:background-color var(--transition-fast)}.quantity-selector__btn:hover{background-color:var(--color-soft-beige)}.quantity-selector__input{width:48px;height:40px;text-align:center;font-size:.875rem;font-weight:var(--fw-medium);border:none;border-left:1px solid var(--color-stone-grey);border-right:1px solid var(--color-stone-grey);background:transparent;-moz-appearance:textfield}.quantity-selector__input::-webkit-inner-spin-button,.quantity-selector__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.toast{position:fixed;top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);padding:var(--space-4) var(--space-6);background-color:var(--color-charcoal);color:var(--color-white);font-size:.875rem;font-weight:var(--fw-medium);box-shadow:var(--shadow-lg);transform:translate(120%);transition:transform var(--transition-base)}.toast.is-visible{transform:translate(0)}.toast-success{background-color:var(--color-success)}.toast-error{background-color:var(--color-error)}
/*# sourceMappingURL=/cdn/shop/t/22/assets/components.css.map */
