/**
 * WooCommerce — Roehampton template chrome.
 */

.site-main--commerce {
  padding-bottom: 80px;
  min-height: 70vh;
}

.woo-wrap,
.woo-shop {
  padding-bottom: 60px;
}

/* Loop — kill Woo float/% widths that break first-row counts */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 23px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  float: none !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after,
ul.products::before,
ul.products::after {
  display: none !important;
  content: none !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  float: none !important;
  clear: none !important;
  position: relative;
}

.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last,
.woocommerce-page ul.products li.product.first,
.woocommerce-page ul.products li.product.last {
  clear: none !important;
  margin: 0 !important;
}

.woocommerce-result-count {
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 18px;
}

.woo-toolbar {
  margin-bottom: 28px;
}

.woo-toolbar .woocommerce-ordering {
  margin: 0;
}

.woo-toolbar select {
  min-width: 180px;
}

/* Match homepage gold ATC buttons on shop / related loops */
.product-card-premium .card-bottom {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 18px 0 0;
  padding: 0;
  border: 0;
}

.product-card-premium .card-bottom .button,
.product-card-premium .card-bottom a.button,
.product-card-premium .card-bottom .add_to_cart_button {
  width: 100%;
  min-height: 45px;
  height: auto;
  background: #c5a473 !important;
  color: #1b1417 !important;
  border: 1px solid #c5a473 !important;
  font: 600 8px/1.5 Inter, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  padding: 12px 15px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

.product-card-premium .card-bottom .button > span,
.product-card-premium .card-bottom .add_to_cart_button > span {
  font-size: 19px;
  font-weight: 400;
  line-height: 1;
}

.product-card-premium .card-bottom .button:hover,
.product-card-premium .card-bottom .add_to_cart_button:hover {
  background: #dfc69e !important;
  border-color: #dfc69e !important;
  color: #1b1417 !important;
}

/* After ATC — one label + one check, no Woo “View cart” dump */
.product-card-premium .card-bottom .add_to_cart_button.added,
.product-card-premium .card-bottom a.button.added {
  background: transparent !important;
  border-color: #c5a473 !important;
  color: #c5a473 !important;
  pointer-events: none;
}

.product-card-premium .card-bottom .add_to_cart_button.added:hover,
.product-card-premium .card-bottom a.button.added:hover {
  background: transparent !important;
  border-color: #c5a473 !important;
  color: #c5a473 !important;
}

.product-card-premium .card-bottom .add_to_cart_button.added::after,
.product-card-premium .card-bottom a.button.added::after,
.woocommerce a.button.added::after,
.woocommerce button.button.added::after {
  content: none !important;
  display: none !important;
}

.product-card-premium .card-bottom a.added_to_cart,
.woocommerce a.added_to_cart {
  display: none !important;
}

ul.products li.product.product-card-premium {
  display: flex;
  flex-direction: column;
  background: #1a1317;
  border: 1px solid #ffffff12;
  border-radius: 15px;
  overflow: hidden;
}

ul.products li.product.product-card-premium .card-information {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 22px 18px 16px;
}

ul.products li.product.product-card-premium .card-price-row {
  margin-top: auto;
}

/* Shop / related cards — force art to fill like homepage */
.woocommerce ul.products li.product.product-card-premium .product-art {
  position: relative !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 355px !important;
  overflow: hidden;
}

.woocommerce ul.products li.product.product-card-premium .product-art.card-scene img,
.woocommerce ul.products li.product.product-card-premium .product-art.contain img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  border-radius: 0 !important;
}

.woocommerce ul.products li.product.product-card-premium .product-art.contain img {
  object-fit: contain !important;
  padding: 18px;
  opacity: 1;
}

.woocommerce .related ul.products,
.woocommerce .upsells ul.products,
.woo-pdp-related ul.products {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* Single product */
.woo-pdp {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 48px 7%;
  align-items: start;
  padding-top: 140px;
  padding-bottom: 40px;
  width: 100%;
  margin: 0;
  float: none !important;
}

.woo-pdp:before,
.woo-pdp:after {
  display: none !important;
  content: none !important;
}

.woo-pdp-gallery {
  width: 100% !important;
  float: none !important;
  background: linear-gradient(165deg, #24161d 0%, #151013 55%, #100d0e 100%);
  border: 1px solid #ffffff14;
  border-radius: 18px;
  padding: 18px;
  min-height: 620px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.woo-pdp-gallery-stage {
  position: relative;
  flex: 1 1 auto;
  min-height: 520px;
  height: clamp(520px, 58vh, 680px);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: radial-gradient(ellipse at 50% 60%, #632b3b28 0%, #151013 62%);
  overflow: hidden;
}

.woo-pdp-main-image {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 10px;
}

.woo-pdp-thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(84px, 1fr));
  gap: 10px;
}

.woo-pdp-thumb {
  width: 100%;
  aspect-ratio: 1;
  height: auto;
  min-height: 84px;
  padding: 0;
  border: 1px solid #ffffff22;
  border-radius: 10px;
  background: #1b1417;
  overflow: hidden;
  cursor: pointer;
  box-shadow: none !important;
}

.woo-pdp-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0 !important;
}

.woo-pdp-thumb:hover,
.woo-pdp-thumb.is-active {
  border-color: var(--gold);
}

.woo-pdp-summary {
  width: 100% !important;
  float: none !important;
  padding-top: 12px;
}

.woo-pdp-summary .product_title {
  font-size: clamp(36px, 4vw, 52px);
  margin: 0 0 12px;
  letter-spacing: -0.04em;
}

.woo-pdp-summary .price {
  color: var(--gold);
  font-size: 16px;
  margin: 0 0 18px;
}

.woo-pdp-summary .woocommerce-product-details__short-description p {
  font-size: 14px;
  line-height: 1.8;
  margin: 0 0 22px;
}

.woo-pdp-summary .cart {
  display: flex;
  gap: 14px;
  align-items: center;
  margin: 22px 0;
  flex-wrap: wrap;
}

.woo-pdp-summary .quantity .qty {
  width: 64px;
  text-align: center;
}

.woo-pdp-summary .single_add_to_cart_button,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce #place_order,
.wc-proceed-to-checkout .checkout-button {
  min-height: 52px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  padding: 16px 25px;
  border: 1px solid var(--gold);
  background: var(--gold) !important;
  color: #1a1114 !important;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 600;
  border-radius: 0;
  box-shadow: none !important;
}

.woo-pdp-summary .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce #place_order:hover,
.wc-proceed-to-checkout .checkout-button:hover {
  background: #dac198 !important;
  box-shadow: none !important;
}

.woo-pdp-summary .product_meta {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
  font-size: 11px;
  letter-spacing: 0.04em;
  color: var(--muted);
}

.woo-pdp-summary .product_meta a {
  color: var(--text);
}

.woo-pdp-details {
  grid-column: 1 / -1;
  margin-top: 8px;
  padding-top: 8px;
}

.woo-pdp-related {
  padding: 10px 0 80px;
}

/* Product tabs — premium segmented panel */
.woocommerce .woocommerce-tabs,
.woo-pdp-details .woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs {
  clear: both;
  margin: 0;
  padding: 0;
  background: #1a1317;
  border: 1px solid #ffffff14;
  border-radius: 16px;
  overflow: hidden;
}

.woocommerce .woocommerce-tabs ul.tabs,
.woo-pdp-details .woocommerce-tabs ul.tabs,
.woocommerce div.product .woocommerce-tabs ul.tabs {
  list-style: none !important;
  padding: 10px 12px 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  border: 0 !important;
  border-bottom: 1px solid #ffffff14 !important;
  background: #151013 !important;
}

.woocommerce .woocommerce-tabs ul.tabs::before,
.woocommerce .woocommerce-tabs ul.tabs::after,
.woo-pdp-details .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
  display: none !important;
  content: none !important;
}

.woocommerce .woocommerce-tabs ul.tabs li,
.woo-pdp-details .woocommerce-tabs ul.tabs li,
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  list-style: none !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  float: none !important;
  position: relative;
}

.woocommerce .woocommerce-tabs ul.tabs li::before,
.woocommerce .woocommerce-tabs ul.tabs li::after,
.woocommerce .woocommerce-tabs ul.tabs li::marker,
.woocommerce .woocommerce-tabs ul.tabs li.active::before,
.woocommerce .woocommerce-tabs ul.tabs li.active::after,
.woo-pdp-details .woocommerce-tabs ul.tabs li::before,
.woo-pdp-details .woocommerce-tabs ul.tabs li::after {
  display: none !important;
  content: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.woocommerce .woocommerce-tabs ul.tabs li a,
.woo-pdp-details .woocommerce-tabs ul.tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 18px !important;
  margin: 0 0 -1px !important;
  font-size: 10px !important;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #bdafa8 !important;
  border: 1px solid transparent !important;
  border-bottom: 0 !important;
  border-radius: 10px 10px 0 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.woocommerce .woocommerce-tabs ul.tabs li.active a,
.woocommerce .woocommerce-tabs ul.tabs li.active a:hover,
.woocommerce .woocommerce-tabs ul.tabs li a:hover,
.woocommerce .woocommerce-tabs ul.tabs li[aria-selected="true"] a,
.woo-pdp-details .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: #1a1114 !important;
  background: #c5a473 !important;
  border-color: #c5a473 !important;
  box-shadow: none !important;
}

.woocommerce .woocommerce-tabs .panel,
.woo-pdp-details .woocommerce-tabs .panel,
.woocommerce div.product .woocommerce-tabs .panel {
  margin: 0 !important;
  padding: 30px 28px 34px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.woocommerce .woocommerce-tabs .panel > h2:first-child,
.woo-pdp-details .woocommerce-tabs .panel > h2:first-child {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.woocommerce .woocommerce-tabs .panel p,
.woo-pdp-details .woocommerce-tabs .panel p {
  font-size: 14px;
  line-height: 1.85;
  max-width: 68ch;
  margin: 0 0 1em;
}

/* Reviews */
.woocommerce #reviews {
  max-width: 720px;
}

.woocommerce #reviews #comments {
  margin-bottom: 28px;
}

.woocommerce #reviews .woocommerce-noreviews {
  color: var(--muted);
  font-size: 14px;
}

.woocommerce #review_form_wrapper {
  margin-top: 10px;
  padding: 24px;
  background: #151013;
  border: 1px solid #ffffff14;
  border-radius: 12px;
}

.woocommerce #review_form #respond {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
}

.woocommerce #review_form #respond .comment-reply-title {
  font-size: 20px;
  margin: 0 0 8px;
}

.woocommerce #review_form #respond .comment-notes {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 18px;
}

.woocommerce #review_form #respond .comment-form-rating,
.woocommerce #review_form #respond .comment-form-comment,
.woocommerce #review_form #respond .comment-form-author,
.woocommerce #review_form #respond .comment-form-email {
  margin: 0 0 16px;
}

.woocommerce #review_form #respond label {
  display: block;
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 8px;
}

.woocommerce #review_form #respond textarea,
.woocommerce #review_form #respond input[type="text"],
.woocommerce #review_form #respond input[type="email"] {
  width: 100%;
  max-width: 100%;
  background: #1b1417 !important;
  border: 1px solid #ffffff22 !important;
  color: var(--text) !important;
  border-radius: 0 !important;
  padding: 12px 14px;
  min-height: 48px;
  box-shadow: none !important;
}

.woocommerce #review_form #respond textarea {
  min-height: 140px;
  resize: vertical;
}

.woocommerce #review_form #respond .stars a {
  color: var(--gold);
}

.woocommerce #review_form #respond .form-submit input[type="submit"],
.woocommerce #review_form #respond .form-submit .submit {
  min-height: 48px;
  padding: 12px 22px !important;
  background: var(--gold) !important;
  color: #1a1114 !important;
  border: 1px solid var(--gold) !important;
  border-radius: 0 !important;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 600;
  box-shadow: none !important;
  width: auto !important;
}

.woocommerce #review_form #respond .form-submit input[type="submit"]:hover {
  background: #dac198 !important;
}

.related.products > h2,
.upsells.products > h2 {
  font-size: clamp(28px, 3vw, 40px);
  margin: 10px 0 28px;
}

/* Cart */
.woocommerce-cart-form.cart-layout {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 6%;
  padding-bottom: 100px;
  align-items: start;
}

.woo-cart-items {
  min-width: 0;
}

.cart-item {
  display: grid;
  grid-template-columns: 110px 1fr auto;
  gap: 22px;
  align-items: center;
  padding: 22px 0;
  border-bottom: 1px solid var(--border);
}

.cart-item img {
  width: 110px;
  height: 130px;
  object-fit: cover;
  background: var(--panel);
  display: block;
}

.cart-item h3 {
  font-size: 18px;
  margin: 0 0 8px;
  font-weight: 500;
}

.cart-item h3 a {
  color: inherit;
  text-decoration: none;
}

.cart-item .remove,
.woocommerce a.remove {
  display: inline-block !important;
  margin-top: 10px !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  text-decoration: none !important;
  border: 0 !important;
  background: none !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  line-height: 1.4 !important;
  border-radius: 0 !important;
  font-weight: 500 !important;
}

.cart-item .remove:hover,
.woocommerce a.remove:hover {
  color: var(--gold) !important;
  background: none !important;
}

/* Quantity stepper — no glow */
.cart-item .quantity,
.woocommerce .quantity {
  display: inline-flex !important;
  align-items: stretch;
  justify-content: flex-end;
  gap: 0;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  border: 1px solid #ffffff30;
  background: #1b1417;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden;
}

.cart-item .quantity .qty,
.cart-item .quantity input.qty,
.woocommerce .quantity .qty {
  width: 48px !important;
  max-width: 48px !important;
  min-width: 40px !important;
  min-height: 42px;
  text-align: center;
  background: transparent !important;
  border: 0 !important;
  border-left: 1px solid #ffffff22 !important;
  border-right: 1px solid #ffffff22 !important;
  color: var(--text) !important;
  padding: 8px 4px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  appearance: textfield;
  -moz-appearance: textfield;
}

.cart-item .quantity .qty::-webkit-outer-spin-button,
.cart-item .quantity .qty::-webkit-inner-spin-button,
.woocommerce .quantity .qty::-webkit-outer-spin-button,
.woocommerce .quantity .qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cart-item .quantity .plus,
.cart-item .quantity .minus,
.woocommerce .quantity .plus,
.woocommerce .quantity .minus {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 40px;
  min-height: 42px;
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--text) !important;
  font-size: 16px;
  line-height: 1;
  box-shadow: none !important;
  cursor: pointer;
}

.cart-item .quantity .plus:hover,
.cart-item .quantity .minus:hover,
.woocommerce .quantity .plus:hover,
.woocommerce .quantity .minus:hover {
  background: #c5a47322 !important;
  color: var(--gold) !important;
  box-shadow: none !important;
}

.woo-cart-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}

/* Update bag — gold outline secondary CTA */
.woo-cart-actions button[name="update_cart"],
.woo-cart-actions .button[name="update_cart"] {
  min-height: 48px;
  padding: 13px 26px !important;
  background: transparent !important;
  border: 1px solid var(--gold) !important;
  color: var(--gold) !important;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 600;
  border-radius: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

.woo-cart-actions button[name="update_cart"]:hover:not(:disabled),
.woo-cart-actions .button[name="update_cart"]:hover:not(:disabled) {
  background: var(--gold) !important;
  color: #1a1114 !important;
  border-color: var(--gold) !important;
  box-shadow: none !important;
}

.woo-cart-actions button[name="update_cart"]:disabled {
  opacity: 1 !important;
  cursor: not-allowed;
  border-color: #ffffff28 !important;
  color: #8a7e78 !important;
  background: #ffffff08 !important;
}

.cart-item-subtotal {
  font-size: 13px;
  color: var(--gold);
}

/* Cart / checkout summary — fill the column (kill Woo 48% float) */
.woo-cart-summary,
.cart-collaterals {
  width: 100% !important;
  float: none !important;
  min-width: 0;
}

.woo-cart-summary .cart_totals,
.cart-collaterals .cart_totals,
.summary-box,
.woo-checkout-summary {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  background: var(--panel);
  border: 1px solid var(--border);
  padding: 28px 26px;
  box-sizing: border-box;
}

.summary-box .checkout-button,
.wc-proceed-to-checkout .checkout-button {
  width: 100%;
  margin-top: 24px;
  text-align: center;
}

.cart_totals h2,
.woo-checkout-summary > h2 {
  font-size: 22px;
  margin: 0 0 18px;
}

.cart_totals table,
.woocommerce-checkout-review-order-table {
  width: 100% !important;
  border: 0;
}

.cart_totals th,
.cart_totals td,
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  border: 0;
  padding: 12px 0;
  font-size: 13px;
  color: var(--text);
  background: transparent !important;
}

.cart_totals .order-total th,
.cart_totals .order-total td,
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td {
  border-top: 1px solid var(--border);
  padding-top: 18px;
  font-weight: 600;
  color: var(--gold);
}

.summary-line--total {
  font-weight: 600;
  color: var(--text);
  border-top: 1px solid var(--border);
  margin-top: 8px;
  padding-top: 18px;
}

/* Coupon panel — only inside order summary */
.woo-coupon-panel {
  margin: 0 0 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--border);
}

.woo-coupon-label {
  display: block;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 12px;
}

.woo-coupon-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: stretch;
}

.woo-coupon-row .input-text {
  background: #1b1417 !important;
  border: 1px solid #ffffff30 !important;
  color: var(--text) !important;
  padding: 12px !important;
  border-radius: 0 !important;
  width: 100%;
  min-height: 44px;
}

.woo-coupon-row .button {
  background: transparent !important;
  border: 1px solid var(--gold) !important;
  color: var(--gold) !important;
  padding: 12px 16px !important;
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  white-space: nowrap;
  min-height: 44px;
}

.woo-coupon-row .button:hover {
  background: var(--gold) !important;
  color: #1a1114 !important;
}

/*
 * Kill the default Woo “Have a coupon? Click here…” strip that renders
 * above the checkout form (outside .woo-checkout-summary).
 */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon:not(.woo-checkout-summary form.checkout_coupon),
.site-main--commerce > .woocommerce-form-coupon-toggle,
.site-main--commerce > form.checkout_coupon,
.woocommerce > .woocommerce-form-coupon-toggle,
.woo-wrap > .woocommerce-form-coupon-toggle {
  display: none !important;
}

.woo-checkout-summary .woo-coupon-panel,
.woo-checkout-summary form.checkout_coupon {
  display: block !important;
}

/* Icons / arrows — avoid broken glyph fonts */
.roe-ico,
.card-explore,
.card-price-row a .roe-ico {
  font-family: Georgia, "Times New Roman", serif;
  font-style: normal;
  line-height: 1;
}

/* Checkout */
.woo-checkout {
  display: grid;
  grid-template-columns: 1.2fr 0.9fr;
  gap: 6%;
  padding-bottom: 100px;
  align-items: start;
}

.woo-checkout-customer,
.woo-checkout-summary {
  min-width: 0;
  width: 100%;
}

.woo-checkout-customer #customer_details {
  display: grid;
  gap: 28px;
}

.woo-checkout .col2-set,
.woo-checkout .col-1,
.woo-checkout .col-2 {
  width: 100% !important;
  float: none !important;
}

#order_review_heading {
  display: block;
}

.woocommerce form .form-row {
  margin-bottom: 16px;
}

.woocommerce form .form-row label {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .select2-selection {
  background: #1b1417 !important;
  border: 1px solid #ffffff30 !important;
  color: var(--text) !important;
  border-radius: 0 !important;
  padding: 13px !important;
  width: 100%;
}

.select2-dropdown {
  background: #1b1417;
  border-color: #ffffff30;
  color: var(--text);
}

.woocommerce-checkout #payment {
  background: transparent;
  border-radius: 0;
}

.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 1px solid var(--border);
  padding: 0 0 16px;
}

.woocommerce-checkout #payment div.form-row {
  padding: 0;
}

/* Account */
.woo-account {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 48px;
  padding-bottom: 100px;
}

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

.woocommerce-MyAccount-navigation a {
  display: block;
  font-size: 12px;
  color: var(--muted);
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
}

.woocommerce-MyAccount-navigation .is-active a,
.woocommerce-MyAccount-navigation a:hover {
  color: var(--gold);
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  font-size: 28px;
  margin-bottom: 18px;
}

.woocommerce table.shop_table {
  border: 1px solid var(--border);
  background: var(--panel);
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  border-color: var(--border);
  color: var(--text);
  padding: 14px;
  font-size: 13px;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  background: var(--panel);
  border-top: 0;
  border-left: 2px solid var(--gold);
  color: var(--text);
}

.woocommerce-error {
  border-left-color: #c45c5c;
}

/* Thank you */
.woocommerce-order-overview {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 24px;
}

.woocommerce-order-overview li {
  border-top: 1px solid var(--border);
  padding-top: 16px;
}

.woocommerce-order-overview .eyebrow {
  margin-bottom: 8px;
}

@media (max-width: 1100px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .woocommerce .related ul.products,
  .woocommerce .upsells ul.products,
  .woo-pdp-related ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .woocommerce .related ul.products,
  .woocommerce .upsells ul.products,
  .woo-pdp-related ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .woo-pdp,
  .woocommerce-cart-form.cart-layout,
  .woo-checkout,
  .woo-account {
    grid-template-columns: 1fr;
  }
  .woo-pdp {
    padding-top: 120px;
    gap: 28px;
    grid-template-columns: 1fr !important;
  }
  .woo-pdp-gallery {
    min-height: 0;
    padding: 14px;
  }
  .woo-pdp-gallery-stage {
    height: clamp(440px, 56vh, 560px);
    min-height: 440px;
  }
  .woo-pdp-main-image {
    min-height: 440px;
  }
  .cart-item {
    grid-template-columns: 90px 1fr auto;
    gap: 14px;
  }
  .cart-item .quantity {
    justify-content: flex-end;
  }
}

@media (max-width: 600px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }
}
