.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button {
  min-height: 2.875rem;
  padding: 0.9rem 1.6rem;
  border: 1px solid transparent;
  border-radius: var(--peek-radius-pill);
  background: var(--peek-gradient-brand);
  color: var(--peek-color-accent-contrast);
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
  transition: transform var(--peek-transition), background-color var(--peek-transition), box-shadow var(--peek-transition);
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce-page a.button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page input.button:hover {
  background: var(--peek-gradient-brand-hover);
  color: var(--peek-color-accent-contrast);
  transform: translateY(-1px);
  box-shadow: var(--peek-shadow-sm);
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
  background: var(--peek-gradient-brand);
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover {
  background: var(--peek-gradient-brand-hover);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  margin-bottom: var(--peek-space-5);
  padding: var(--peek-space-4);
  border-radius: var(--peek-radius-md);
  border: 1px solid var(--peek-color-border);
  background: transparent;
  box-shadow: none;
}

.woocommerce-message {
  border-left: 4px solid var(--peek-color-success);
}

.woocommerce-info {
  border-left: 4px solid var(--peek-color-accent);
}

.woocommerce-error {
  border-left: 4px solid var(--peek-color-danger);
}

.woocommerce-checkout .woocommerce-info::before,
.woocommerce-checkout .woocommerce-info::after {
  content: none !important;
  display: none !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle {
  margin-bottom: var(--peek-space-5) !important;
}

.woocommerce-checkout .woocommerce-info {
  display: block !important;
  background: transparent !important;
  border: 1px solid color-mix(in srgb, var(--peek-color-accent) 24%, white) !important;
  border-left-width: 1px !important;
  border-radius: var(--peek-radius-xl) !important;
  box-shadow: none !important;
  padding: 1.75rem 2rem !important;
  color: var(--peek-color-text-soft) !important;
  font-size: 1rem !important;
  line-height: 1.6 !important;
}

.woocommerce-checkout .woocommerce-info .showcoupon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 0.625rem !important;
  padding: 0.75rem 1.125rem !important;
  border-radius: var(--peek-radius-pill) !important;
  background: transparent !important;
  border: 1px solid var(--peek-color-border) !important;
  color: var(--peek-color-heading) !important;
  text-decoration: none !important;
  font-size: 0.8125rem;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row input.input-text,
.woocommerce-page form .form-row textarea,
.woocommerce-page form .form-row select {
  min-height: 3.25rem;
  padding: 0.95rem 1rem;
  border: 1px solid var(--peek-color-border);
  border-radius: calc(var(--peek-radius-md) + 0.1rem);
  background: rgba(255, 255, 255, 0.96);
  color: var(--peek-color-heading);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
  transition: border-color var(--peek-transition), box-shadow var(--peek-transition), background-color var(--peek-transition), transform var(--peek-transition);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce-page form .form-row input.input-text:focus,
.woocommerce-page form .form-row textarea:focus,
.woocommerce-page form .form-row select:focus {
  border-color: var(--peek-color-accent);
  box-shadow: var(--peek-shadow-focus);
  background: #fff;
}

.woocommerce form .form-row textarea,
.woocommerce-page form .form-row textarea {
  min-height: 8.5rem;
  resize: vertical;
}

.woocommerce form .form-row input.input-text::placeholder,
.woocommerce form .form-row textarea::placeholder,
.woocommerce-page form .form-row input.input-text::placeholder,
.woocommerce-page form .form-row textarea::placeholder {
  color: color-mix(in srgb, var(--peek-color-text-soft) 78%, white);
}

.woocommerce form .form-row,
.woocommerce-page form .form-row {
  margin-bottom: var(--peek-space-4);
}

.woocommerce-Price-amount,
.price {
  color: var(--peek-color-heading);
  font-weight: 600;
}

.onsale {
  min-width: 0;
  min-height: 0;
  padding: 0.4rem 0.7rem;
  border: 1px solid color-mix(in srgb, var(--peek-color-accent) 22%, white);
  border-radius: var(--peek-radius-pill);
  background: transparent;
  color: var(--peek-color-accent-strong);
  box-shadow: none;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  padding: var(--peek-space-4);
  background: transparent;
  border: 1px solid var(--peek-color-border);
  border-radius: calc(var(--peek-radius-lg) + 0.15rem);
  box-shadow: none;
  transition: transform var(--peek-transition), box-shadow var(--peek-transition);
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
  transform: translateY(-2px);
  box-shadow: none;
}

.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img {
  border-radius: var(--peek-radius-md);
  margin-bottom: var(--peek-space-4);
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del {
  color: var(--peek-color-text-soft);
  opacity: 0.72;
}

.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins {
  background: transparent;
  color: var(--peek-color-heading);
}

.single-product div.product .product_meta,
.single-product div.product .woocommerce-product-details__short-description {
  color: var(--peek-color-text-soft);
}

.single-product div.product .summary,
.woocommerce-cart-form,
.cart-collaterals,
.woocommerce-account .woocommerce,
.woocommerce-checkout .col2-set,
.woocommerce-checkout-review-order {
  padding: var(--peek-space-5);
  background: transparent;
  border: 1px solid var(--peek-color-border);
  border-radius: var(--peek-radius-lg);
  box-shadow: none;
}

.peek-loop-packaging-note {
  margin: calc(var(--peek-space-2) * -1) 0 var(--peek-space-3);
  color: var(--peek-color-text-soft);
  font-size: 0.77rem;
  line-height: 1.45;
}

.shop_table,
.woocommerce table.shop_table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--peek-color-border);
  border-radius: var(--peek-radius-lg);
  overflow: hidden;
  background: transparent;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  padding: var(--peek-space-3) var(--peek-space-4);
  border-color: var(--peek-color-border);
}

.woocommerce table.shop_table thead th {
  background: transparent;
  color: var(--peek-color-heading);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.woocommerce .quantity .qty {
  min-height: 2.75rem;
  border-radius: var(--peek-radius-md);
  border: 1px solid var(--peek-color-border);
}

.woocommerce form .form-row label {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--peek-color-heading);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.woocommerce form .form-row .optional,
.woocommerce-page form .form-row .optional {
  color: var(--peek-color-text-soft);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.woocommerce form .form-row .required,
.woocommerce-page form .form-row .required {
  color: var(--peek-color-accent);
  font-weight: 700;
}

.woocommerce .select2-container .select2-selection--single,
.woocommerce-page .select2-container .select2-selection--single {
  min-height: 3.25rem;
  border: 1px solid var(--peek-color-border);
  border-radius: calc(var(--peek-radius-md) + 0.1rem);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce-page .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding-left: 1rem;
  padding-right: 2.5rem;
  color: var(--peek-color-heading);
  line-height: 3.15rem;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow,
.woocommerce-page .select2-container--default .select2-selection--single .select2-selection__arrow {
  right: 0.7rem;
  height: 100%;
}

.woocommerce .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-page .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce .select2-container--default.select2-container--open .select2-selection--single,
.woocommerce-page .select2-container--default.select2-container--open .select2-selection--single {
  border-color: var(--peek-color-accent);
  box-shadow: var(--peek-shadow-focus);
  background: #fff;
}

.woocommerce .select2-dropdown,
.woocommerce-page .select2-dropdown {
  border: 1px solid var(--peek-color-border);
  border-radius: var(--peek-radius-md);
  box-shadow: var(--peek-shadow-md);
  overflow: hidden;
}

.woocommerce .select2-search--dropdown .select2-search__field,
.woocommerce-page .select2-search--dropdown .select2-search__field {
  min-height: 2.75rem;
  border: 1px solid var(--peek-color-border);
  border-radius: var(--peek-radius-md);
}

.woocommerce .quantity .qty,
.woocommerce-cart-form .quantity .qty,
.single-product div.product form.cart .quantity .qty {
  min-height: 3.15rem;
  padding-inline: 0.9rem;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--peek-color-border);
  border-radius: var(--peek-radius-pill);
  color: var(--peek-color-heading);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.woocommerce .quantity .qty:focus,
.woocommerce-cart-form .quantity .qty:focus,
.single-product div.product form.cart .quantity .qty:focus {
  border-color: var(--peek-color-accent);
  box-shadow: var(--peek-shadow-focus);
  background: #fff;
}

.woocommerce form .show-password-input,
.woocommerce-page form .show-password-input {
  color: var(--peek-color-text-soft);
}

.woocommerce form .show-password-input:hover,
.woocommerce form .show-password-input:focus-visible,
.woocommerce-page form .show-password-input:hover,
.woocommerce-page form .show-password-input:focus-visible {
  color: var(--peek-color-heading);
}

.woocommerce .woocommerce-invalid input.input-text,
.woocommerce .woocommerce-invalid select,
.woocommerce .woocommerce-invalid textarea,
.woocommerce-page .woocommerce-invalid input.input-text,
.woocommerce-page .woocommerce-invalid select,
.woocommerce-page .woocommerce-invalid textarea {
  border-color: color-mix(in srgb, var(--peek-color-danger) 78%, white);
  background: color-mix(in srgb, var(--peek-color-danger) 6%, white);
}

.woocommerce .woocommerce-validated input.input-text,
.woocommerce .woocommerce-validated select,
.woocommerce .woocommerce-validated textarea,
.woocommerce-page .woocommerce-validated input.input-text,
.woocommerce-page .woocommerce-validated select,
.woocommerce-page .woocommerce-validated textarea {
  border-color: color-mix(in srgb, var(--peek-color-success) 45%, white);
}
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: block;
  padding: var(--peek-space-3) var(--peek-space-4);
  margin-bottom: var(--peek-space-2);
  background: var(--peek-color-surface-muted);
  border: 1px solid transparent;
  border-radius: var(--peek-radius-md);
  text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
  border-color: var(--peek-color-border-strong);
  background: var(--peek-color-accent-soft);
}

.related.products,
.up-sells,
.cross-sells {
  margin-top: var(--peek-space-7);
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout-review-order-table,
#order_review_heading {
  margin-bottom: var(--peek-space-4);
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout-review-order {
  background: transparent;
}

.woocommerce-checkout-payment,
.woocommerce-checkout-review-order-table,
.cart_totals table {
  background: transparent;
  border-radius: var(--peek-radius-lg);
}

.woocommerce-checkout-payment {
  padding: var(--peek-space-4);
}

@media (min-width: 48rem) {
  .single-product div.product .summary,
  .woocommerce-cart-form,
  .cart-collaterals,
  .woocommerce-account .woocommerce,
  .woocommerce-checkout .col2-set,
  .woocommerce-checkout-review-order {
    padding: var(--peek-space-6);
  }
}

/* WooCommerce refinement */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  transition: transform var(--peek-transition), box-shadow var(--peek-transition), border-color var(--peek-transition);
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
  border-color: var(--peek-color-border-strong);
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product a.woocommerce-LoopProduct-link {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  color: inherit;
  text-decoration: none;
}

.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(236, 222, 218, 0.5);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  min-height: 3.4em;
  line-height: 1.45;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
  margin-top: auto;
}

.woocommerce-pagination ul.page-numbers {
  border: 0;
}

.woocommerce-pagination ul.page-numbers li {
  border-right: 0;
}

.woocommerce-pagination .page-numbers li .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.65rem;
  min-height: 2.65rem;
  margin: 0 0.15rem;
  border: 1px solid var(--peek-color-border);
  border-radius: 999px;
}

.woocommerce-pagination .page-numbers li .page-numbers.current {
  border-color: var(--peek-color-border-strong);
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout-review-order,
.woocommerce-cart-form,
.woocommerce-cart .cart_totals {
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 18px 36px rgba(49, 28, 34, 0.04);
  backdrop-filter: blur(8px);
}
