/* RSD Commerce v1: approved First Class Forward design vocabulary.
 * All selectors are scoped to WooCommerce views; editorial pages remain unchanged.
 */
body.rsd-commerce {
  --rsd-shop-ink: var(--rsd-ink, #171a19);
  --rsd-shop-cream: var(--rsd-cream, #f5f0e8);
  --rsd-shop-paper: var(--rsd-paper, #eae0d2);
  --rsd-shop-oxblood: var(--rsd-oxblood, #542d35);
  --rsd-shop-gold: #b48a67;
  --rsd-shop-rule: rgba(23,26,25,.17);
  background: var(--rsd-shop-cream);
  color: var(--rsd-shop-ink);
}
.rsd-commerce #tm-main, .rsd-commerce .tm-main, .rsd-commerce .uk-section-default {
  background: var(--rsd-shop-cream) !important;
}
.rsd-commerce #tm-main > .uk-container { max-width: 1376px; }
.rsd-commerce #main.site-main { margin: 0 auto; min-width: 0; }
.rsd-commerce .woocommerce-breadcrumb {
  font: 700 10px/1.8 'Manrope',sans-serif;
  letter-spacing: .18em; text-transform: uppercase;
  color: #77746e; margin: 0 0 33px;
}
.rsd-commerce .woocommerce-breadcrumb a { color: inherit; border-bottom: 1px solid transparent; text-decoration: none; }
.rsd-commerce .woocommerce-breadcrumb a:hover { border-color: currentColor; }
.rsd-commerce :is(h1,h2,h3,.woocommerce-products-header__title,.product_title) {
  font-family: 'Cormorant Garamond',Georgia,serif;
  font-weight: 500; letter-spacing: -.035em;
  color: var(--rsd-shop-ink);
}
.rsd-commerce .woocommerce-products-header__title,
.rsd-commerce .entry-title,
.rsd-commerce .product_title {
  font-size: clamp(48px,6vw,91px); line-height: .99;
  margin: 0 0 36px;
}
.rsd-commerce .rsd-commerce-kicker {
  font: 700 10px/1.5 'Manrope',sans-serif; text-transform: uppercase;
  letter-spacing: .22em; color: var(--rsd-shop-gold);
  margin: 0 0 18px;
}
.rsd-commerce .rsd-commerce-kicker:before {
  content: ''; display: inline-block; vertical-align: middle;
  width: 26px; height: 1px; margin-right: 12px; background: currentColor;
}
.rsd-commerce .rsd-commerce-hero {
  background: var(--rsd-shop-ink); color: #efe7dc;
  border: 1px solid rgba(255,255,255,.07);
  padding: clamp(40px,6vw,87px) clamp(30px,7vw,112px);
  position: relative; margin: 16px 0 48px; isolation: isolate;
  overflow: hidden;
}
.rsd-commerce .rsd-commerce-hero:after {
  content: 'RSD / EST. IN PURPOSE'; position: absolute; right: -18px;
  bottom: 5px; font: 600 clamp(40px,10vw,145px)/1 'Cormorant Garamond',serif;
  color: rgba(244,230,211,.07); white-space: nowrap; pointer-events: none;
}
.rsd-commerce .rsd-commerce-hero h2 {
  font-size: clamp(47px,6vw,100px); line-height: .89;
  letter-spacing: -.045em; color: #f4ece2;
  max-width: 690px; margin: 0 0 24px;
}
.rsd-commerce .rsd-commerce-hero h2 em {
  display: block; font-weight: 400; color: #c39b73;
}
.rsd-commerce .rsd-commerce-hero-copy {
  color: #d6ccbd; font: 600 11px/2 'Manrope',sans-serif;
  text-transform: uppercase; letter-spacing: .22em; margin: 0;
}
.rsd-commerce :is(.woocommerce-result-count,.woocommerce-ordering) {
  color: #615e59; font: 600 11px/2 'Manrope',sans-serif;
  letter-spacing: .06em; margin: 0 0 29px;
}
.rsd-commerce .woocommerce-ordering select,
.rsd-commerce :is(select,input:not([type=checkbox]):not([type=radio]),textarea) {
  background: #fffaf3; color: var(--rsd-shop-ink);
  border: 1px solid var(--rsd-shop-rule); border-radius: 0;
  min-height: 48px; padding: 10px 15px;
  font: 500 13px/1.5 'Manrope',sans-serif;
  max-width: 100%; box-sizing: border-box;
}
.rsd-commerce :is(input,select,textarea,button,a):focus-visible {
  outline: 2px solid var(--rsd-shop-gold) !important;
  outline-offset: 3px;
}
.rsd-commerce .woocommerce ul.products, .rsd-commerce ul.products {
  display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 46px 23px; clear: both; margin: 23px 0 64px;
  padding: 0; list-style: none;
}
.rsd-commerce .woocommerce ul.products:before,.rsd-commerce ul.products:before,
.rsd-commerce .woocommerce ul.products:after,.rsd-commerce ul.products:after { display: none !important; }
.rsd-commerce .woocommerce ul.products li.product,.rsd-commerce ul.products li.product {
  width: auto !important; float: none !important; margin: 0 !important;
  padding: 0 !important; min-width: 0;
  display: flex; flex-direction: column;
}
.rsd-commerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: block; text-decoration: none; color: inherit;
}
.rsd-commerce ul.products li.product img,
.rsd-commerce ul.products li.product .attachment-woocommerce_thumbnail {
  width: 100% !important; height: auto !important;
  aspect-ratio: 4 / 5; object-fit: contain; object-position: center;
  background: #e7dfd4; display: block; margin: 0 0 19px !important;
  transition: transform .42s cubic-bezier(.2,.7,.2,1),filter .42s ease;
}
.rsd-commerce ul.products li.product a:hover img {
  transform: translateY(-3px); filter: contrast(1.04);
}
.rsd-commerce ul.products li.product .woocommerce-loop-product__title {
  font: 500 clamp(21px,2vw,30px)/1.13 'Cormorant Garamond',Georgia,serif !important;
  letter-spacing: -.02em; padding: 0 !important; margin: 0 0 11px !important;
  color: var(--rsd-shop-ink) !important;
}
.rsd-commerce :is(.woocommerce ul.products li.product .price,ul.products li.product .price) {
  color: var(--rsd-shop-ink) !important; font: 650 13px/1.6 'Manrope',sans-serif;
  letter-spacing: .035em; margin: 0 0 17px !important;
}
.rsd-commerce :is(.price del,del .woocommerce-Price-amount) { opacity: .52; font-size: .88em; }
.rsd-commerce .price ins { text-decoration: none; color: var(--rsd-shop-oxblood); }
.rsd-commerce .woocommerce span.onsale,.rsd-commerce span.onsale {
  background: var(--rsd-shop-oxblood); color: white; border-radius: 0;
  min-height: auto; line-height: 1.2; padding: 10px 13px; top: 11px; left: 11px;
  font: 700 9px/1.4 'Manrope',sans-serif; letter-spacing: .15em; text-transform: uppercase;
}
.rsd-commerce :is(.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
  .woocommerce #respond input#submit,.wc-block-components-button,.wp-block-button__link) {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 47px; padding: 13px 23px; background: var(--rsd-shop-ink) !important;
  border: 1px solid var(--rsd-shop-ink) !important; border-radius: 0 !important;
  color: #f9f2e9 !important; box-shadow: none !important;
  font: 700 10px/1.5 'Manrope',sans-serif !important;
  letter-spacing: .14em; text-transform: uppercase; text-decoration: none !important;
  transition: background-color .2s ease,border-color .2s ease,transform .2s ease,color .2s ease;
}
.rsd-commerce :is(.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
  .wc-block-components-button,.wp-block-button__link):hover {
  background: var(--rsd-shop-oxblood) !important;
  border-color: var(--rsd-shop-oxblood) !important;
  transform: translateY(-1px);
}
.rsd-commerce :is(.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
  .wc-block-components-button):disabled {
  opacity: .46; cursor: not-allowed; transform: none !important;
}
.rsd-commerce ul.products li.product > a.button { margin-top: auto; align-self: flex-start; }
.rsd-commerce .woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; gap: 9px; }
.rsd-commerce .woocommerce nav.woocommerce-pagination ul li { border: 0; }
.rsd-commerce .woocommerce nav.woocommerce-pagination ul li a,
.rsd-commerce .woocommerce nav.woocommerce-pagination ul li span {
  padding: 12px 18px; border: 1px solid var(--rsd-shop-rule);
}
.rsd-commerce.single-product .woocommerce div.product,
.rsd-commerce.single-product div.product {
  display: grid; grid-template-columns: minmax(0,1.07fr) minmax(0,.93fr);
  align-items: start; column-gap: clamp(32px,5vw,95px);
  row-gap: 45px; margin-top: 15px;
}
.rsd-commerce.single-product div.product .woocommerce-product-gallery {
  grid-column: 1; width: 100% !important; max-width: 100%;
  float: none !important; margin: 0 !important; min-width: 0;
}
.rsd-commerce.single-product div.product .woocommerce-product-gallery img {
  width: 100%; height: auto; object-fit: contain;
  background: #e5dbcf;
}
.rsd-commerce.single-product div.product .summary {
  grid-column: 2; float: none !important; width: 100% !important;
  margin: 0 !important; min-width: 0; padding-top: 22px;
}
.rsd-commerce.single-product .summary .product_title { margin: 0 0 21px; }
.rsd-commerce.single-product .summary > .price {
  font: 650 24px/1.3 'Manrope',sans-serif; color: var(--rsd-shop-oxblood);
  margin: 0 0 23px;
}
.rsd-commerce.single-product .woocommerce-product-details__short-description {
  font: 400 14px/1.9 'Manrope',sans-serif; color: #5d5b56;
  border-top: 1px solid var(--rsd-shop-rule);
  padding-top: 21px; margin: 18px 0 28px;
}
.rsd-commerce.single-product .variations { width: 100%; border: 0; margin: 0 0 20px; }
.rsd-commerce.single-product .variations :is(td,th) {
  border: 0 !important; padding: 0 0 17px !important;
  display: block; width: 100%; text-align: left;
}
.rsd-commerce.single-product .variations label {
  font: 700 10px/1.9 'Manrope',sans-serif;
  letter-spacing: .18em; text-transform: uppercase;
}
.rsd-commerce.single-product .variations select { width: 100%; min-height: 54px; }
.rsd-commerce.single-product .reset_variations {
  color: #817263; font-size: 11px; text-decoration: underline; margin: 10px 0;
}
.rsd-commerce.single-product .single_variation_wrap .woocommerce-variation-price {
  margin: 5px 0 18px;
  font: 650 20px/1.5 'Manrope',sans-serif;
}
.rsd-commerce.single-product .quantity input.qty {
  width: 74px; text-align: center; height: 53px; margin-right: 13px;
}
.rsd-commerce.single-product .woocommerce-variation-add-to-cart { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.rsd-commerce.single-product .product_meta {
  border-top: 1px solid var(--rsd-shop-rule); margin-top: 34px; padding-top: 19px;
  font: 650 10px/2 'Manrope',sans-serif; letter-spacing: .06em;
  color: #6c6860;
}
.rsd-commerce.single-product :is(.woocommerce-tabs,.related.products,.up-sells) { grid-column: 1 / -1; min-width: 0; }
.rsd-commerce.single-product .woocommerce-tabs {
  margin: 35px 0 20px; border-top: 1px solid var(--rsd-shop-rule); padding-top: 30px;
}
.rsd-commerce.single-product .woocommerce-tabs ul.tabs {
  display: flex; gap: 28px; padding: 0; border: 0; background: none;
}
.rsd-commerce.single-product .woocommerce-tabs ul.tabs li {
  background: none; border: 0; padding: 0; margin: 0;
  text-transform: uppercase; font: 700 10px/1.7 'Manrope',sans-serif;
  letter-spacing: .17em;
}
.rsd-commerce.single-product .woocommerce-tabs ul.tabs li a { color: inherit; padding: 12px 0; }
.rsd-commerce.single-product .woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--rsd-shop-oxblood); }
.rsd-commerce.single-product .related.products { margin-top: 12px; }
.rsd-commerce.single-product .related.products h2 { font-size: clamp(33px,4vw,58px); }
.rsd-commerce .woocommerce-error,.rsd-commerce .woocommerce-info,.rsd-commerce .woocommerce-message,
.rsd-commerce .wc-block-components-notice-banner {
  background: #eee4d8 !important; color: var(--rsd-shop-ink);
  border: 1px solid #d4c2af; border-left: 4px solid var(--rsd-shop-gold);
  border-radius: 0; padding: 18px 21px; font: 500 13px/1.8 'Manrope',sans-serif;
}
.rsd-commerce .woocommerce-error:before,.rsd-commerce .woocommerce-info:before,
.rsd-commerce .woocommerce-message:before { color: var(--rsd-shop-oxblood); }
.rsd-commerce .woocommerce form.login,.rsd-commerce .woocommerce form.register,
.rsd-commerce .woocommerce form.checkout_coupon,
.rsd-commerce .woocommerce-MyAccount-content,
.rsd-commerce :is(.wc-block-cart__main,.wc-block-components-main,.wc-block-components-sidebar) {
  background: #fbf7f0; border: 1px solid var(--rsd-shop-rule);
  border-radius: 0; padding: clamp(20px,3vw,38px); box-shadow: none;
}
.rsd-commerce :is(.woocommerce table.shop_table,.woocommerce-cart-form table,.woocommerce-checkout-review-order-table) {
  border: 1px solid var(--rsd-shop-rule); border-collapse: collapse;
  background: #fffaf4; border-radius: 0;
}
.rsd-commerce :is(.woocommerce table.shop_table th,.woocommerce table.shop_table td) {
  border: 0; border-bottom: 1px solid var(--rsd-shop-rule); padding: 17px 19px;
}
.rsd-commerce .woocommerce label,.rsd-commerce .wc-block-components-text-input label,
.rsd-commerce .wc-block-components-checkbox__label {
  color: #494640; font: 650 11px/1.7 'Manrope',sans-serif;
  letter-spacing: .035em;
}
.rsd-commerce :is(.wc-block-components-text-input input,.wc-block-components-textarea,
  .wc-block-components-combobox-control input,.wc-block-components-country-input input,
  .wc-block-components-address-form input) {
  border-radius: 0 !important; min-height: 50px; background: #fffdf9;
  border-color: var(--rsd-shop-rule);
}
.rsd-commerce :is(.wc-block-cart,.wc-block-checkout,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) {
  --wp--preset--color--accent: var(--rsd-shop-oxblood);
  --wc-blocks-color: var(--rsd-shop-ink); max-width: 1240px;
  font-family: 'Manrope',sans-serif;
}
.rsd-commerce .wc-block-components-sidebar-layout { gap: clamp(18px,3vw,44px); }
.rsd-commerce .wc-block-components-totals-wrapper,.rsd-commerce .wc-block-components-order-summary {
  border-color: var(--rsd-shop-rule) !important;
}
.rsd-commerce .wc-block-components-title,.rsd-commerce .wc-block-components-checkout-step__heading {
  font-family: 'Cormorant Garamond',Georgia,serif; font-size: clamp(27px,3vw,42px);
  font-weight: 500; letter-spacing: -.02em;
}
.rsd-commerce .woocommerce-MyAccount-navigation {
  float: left; width: 24%; background: var(--rsd-shop-ink);
  padding: 24px 0; margin: 0 3.5% 35px 0; box-sizing: border-box;
}
.rsd-commerce .woocommerce-MyAccount-navigation ul { padding: 0; margin: 0; list-style: none; }
.rsd-commerce .woocommerce-MyAccount-navigation li { margin: 0; }
.rsd-commerce .woocommerce-MyAccount-navigation li a {
  display: block; color: #f7f0e7; padding: 14px 25px;
  border-left: 3px solid transparent; text-decoration: none;
  font: 700 10px/1.6 'Manrope',sans-serif; letter-spacing: .14em; text-transform: uppercase;
  transition: background-color .2s,border-color .2s;
}
.rsd-commerce .woocommerce-MyAccount-navigation li a:hover,
.rsd-commerce .woocommerce-MyAccount-navigation li.is-active a {
  border-left-color: var(--rsd-shop-gold);
  background: rgba(255,255,255,.09); color: #fff;
}
.rsd-commerce .woocommerce-MyAccount-content {
  float: left; width: 72.5%; margin-bottom: 45px; box-sizing: border-box;
  font: 400 13px/1.85 'Manrope',sans-serif;
}
.rsd-commerce .woocommerce-MyAccount-content a { color: var(--rsd-shop-oxblood); text-decoration: underline; }
.rsd-commerce .woocommerce-MyAccount-content .woocommerce-button { color: #fff; text-decoration: none; }
.rsd-commerce .rsd-commerce-account-kicker { margin: 6px 0 22px; }
.rsd-commerce .woocommerce-form-login { max-width: 650px; margin-left: 0 !important; }
.rsd-commerce .woocommerce-form-login .form-row { width: 100%; }
.rsd-commerce .woocommerce-LostPassword a { text-decoration: underline; color: var(--rsd-shop-oxblood); }
.rsd-commerce :is(.woocommerce-address-fields__field-wrapper,.woocommerce-EditAccountForm) { display: block; }
.rsd-commerce .woocommerce form .form-row input.input-text { width: 100%; }
.rsd-commerce :is(.woocommerce-MyAccount-content:after,#main.site-main:after) { content: ''; display: table; clear: both; }
@media (max-width: 1080px) {
  .rsd-commerce ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .rsd-commerce.single-product div.product { column-gap: 4vw; }
}
@media (max-width: 800px) {
  .rsd-commerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 18px; }
  .rsd-commerce.single-product div.product {
    grid-template-columns: minmax(0,1fr); gap: 30px;
  }
  .rsd-commerce.single-product div.product :is(.woocommerce-product-gallery,.summary,.woocommerce-tabs,.related.products,.up-sells) {
    grid-column: 1 / -1; float: none !important; width: 100% !important;
  }
  .rsd-commerce.single-product div.product .summary { padding-top: 0; }
  .rsd-commerce .woocommerce-MyAccount-navigation { float: none; width: 100%; margin: 0 0 23px; }
  .rsd-commerce .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; }
  .rsd-commerce .woocommerce-MyAccount-navigation li { flex: 1 1 48%; }
  .rsd-commerce .woocommerce-MyAccount-content { float: none; width: 100%; }
}
@media (max-width: 540px) {
  .rsd-commerce .tm-main.uk-section { padding-top: 38px; padding-bottom: 52px; }
  .rsd-commerce ul.products { gap: 26px 13px; }
  .rsd-commerce ul.products li.product .woocommerce-loop-product__title { font-size: 22px !important; }
  .rsd-commerce ul.products li.product img { aspect-ratio: 3 / 4; }
  .rsd-commerce ul.products li.product > a.button { width: 100%; text-align: center; padding: 11px 9px; font-size: 9px !important; }
  .rsd-commerce .rsd-commerce-hero { padding: 39px 24px; margin-bottom: 30px; }
  .rsd-commerce .woocommerce-ordering { float: none; width: 100%; }
  .rsd-commerce .woocommerce-result-count { float: none; }
  .rsd-commerce .wc-block-components-sidebar-layout { display: block; }
  .rsd-commerce.single-product .summary .product_title { font-size: 52px; }
  .rsd-commerce .woocommerce table.shop_table th,.rsd-commerce .woocommerce table.shop_table td { padding: 11px 9px; }
}
@media (prefers-reduced-motion: reduce) {
  .rsd-commerce :is(a,button,input,select,img,.wc-block-components-button) {
    animation-duration: .01ms !important; transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}


/* Refined sale label: prevent the parent-theme full-width discount ribbon. */
.rsd-commerce.woocommerce-page span.onsale,
.rsd-commerce .woocommerce span.onsale {
  display: inline-flex !important; align-items: center; justify-content: center;
  position: absolute; inset-inline-end: auto !important; right: auto !important;
  left: 12px !important; top: 12px !important;
  width: auto !important; min-width: 0 !important; max-width: calc(100% - 24px);
  height: auto !important; margin: 0 !important; z-index: 8;
  padding: 9px 13px !important; border-radius: 0 !important;
}
.rsd-commerce .single_add_to_cart_button.disabled,
.rsd-commerce .single_add_to_cart_button[disabled],
.rsd-commerce :is(button,a)[aria-disabled="true"] {
  opacity: .5 !important; cursor: not-allowed !important;
  pointer-events: none; transform: none !important;
}
