/* SHENGHE commerce — the approved charcoal / ivory homepage language.
 * Load after inner.css and Elementor widget styles. Native WooCommerce markup,
 * galleries, variation selection and transaction behavior remain untouched.
 */
.sh-site .sh-inner:is(.sh-catalog-page,.sh-product,.sh-commerce-page) {
  --sh-paper:#f2f0ea;
  --sh-muted:#c8c8c2;
  --sh-red:#d85041;
  --sh-line:rgba(242,240,234,.2);
  --sh-panel:#151717;
  --sh-field:#131515;
  --sh-field-line:#555752;
  background:var(--sh-ink,#0d0f0f);
  color:var(--sh-paper);
  padding-bottom:clamp(76px,8vw,128px);
  font-family:var(--sh-sans,Manrope,Arial,sans-serif);
}
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) :is(a,button,input,select,textarea):focus-visible {
  outline:2px solid var(--sh-red);
  outline-offset:4px;
}
.sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-opening {
  padding-top:clamp(64px,7.5vw,112px);
  padding-bottom:clamp(48px,5.5vw,80px);
}
.sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-title .elementor-heading-title {
  font-size:clamp(52px,6.1vw,88px);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.035em;
}
.sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-intro {
  max-width:600px;
  margin-top:28px;
  color:var(--sh-muted);
  font-size:16px;
  line-height:1.85;
}
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) .sh-inner-eyebrow {
  color:var(--sh-red);
  font-size:12px;
  letter-spacing:.2em;
}
.sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-footnote {
  margin-top:52px;
  padding-top:30px;
  font-size:12px;
  line-height:1.85;
}
.sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-footnote .sh-inner-actions {
  margin-top:30px;
  gap:20px 40px;
}

/* Collection: generous image-led rows, an understated filter rail and a clear
 * separation between editorial links and purchasing controls. */
.sh-site .sh-catalog-page .sh-catalog-tools {
  gap:22px;
  padding:26px 0 32px;
  margin-bottom:40px;
  border-top:1px solid var(--sh-line);
  border-bottom:1px solid var(--sh-line);
}
.sh-site .sh-catalog-page .sh-catalog-tools label {
  min-width:150px;
  gap:12px;
  font-size:12px;
  line-height:1.5;
  letter-spacing:.08em;
}
.sh-site .sh-catalog-page .sh-catalog-filter-actions {gap:20px;font-size:12px;}
.sh-site .sh-catalog-page .sh-product-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:64px 30px;
}
.sh-site .sh-catalog-page .sh-product-card {background:transparent;border:0;border-radius:0;box-shadow:none;}
.sh-site .sh-catalog-page .sh-card-image {overflow:hidden;aspect-ratio:1;background:transparent;}
.sh-site .sh-catalog-page .sh-product-card img {
  width:100%;
  height:100%;
  aspect-ratio:1;
  object-fit:contain;
  border-radius:0;
  background:transparent;
}
.sh-site .sh-catalog-page .sh-card-body {padding-top:24px;}
.sh-site .sh-catalog-page .sh-card-title {
  margin:0 0 12px;
  font:400 clamp(28px,2.45vw,36px)/1.08 var(--sh-serif,'Cormorant Garamond',Georgia,serif);
  letter-spacing:-.025em;
}
.sh-site .sh-catalog-page .sh-card-meta {margin-bottom:12px;color:var(--sh-red);}
.sh-site .sh-catalog-page .sh-card-description {max-width:36em;font-size:12px;line-height:1.8;}
.sh-site .sh-catalog-page .sh-card-price {
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--sh-line);
  font-size:13px;
  line-height:1.8;
}
.sh-site .sh-catalog-page .sh-card-link,
.sh-site .sh-catalog-page .sh-card-cart {
  margin-top:16px;
  font-size:12px;
  line-height:1.8;
  letter-spacing:.06em;
  text-decoration:none;
}
.sh-site .sh-catalog-page .sh-card-link span {display:inline-block;margin-left:8px;}
.sh-site .sh-catalog-page .sh-card-cart {margin-left:18px;color:var(--sh-muted);text-decoration:underline;text-underline-offset:4px;}
.sh-site .sh-catalog-page :is(.sh-card-title a,.sh-card-link,.sh-card-cart):hover {color:var(--sh-red);}
.sh-site .sh-catalog-page .sh-pagination {margin-top:64px;padding-top:32px;border-top:1px solid var(--sh-line);}
.sh-site .sh-catalog-page .sh-pagination ul {gap:8px;margin:0;}
.sh-site .sh-catalog-page .sh-pagination :is(a,span) {min-width:42px;min-height:44px;border-color:transparent;font-size:12px;}
.sh-site .sh-catalog-page .sh-pagination a:hover {border-color:var(--sh-line);color:var(--sh-red);}
.sh-site .sh-catalog-page .sh-pagination .current {background:var(--sh-paper);color:var(--sh-ink,#0d0f0f);}

/* Product: the gallery stays native (including zoom and flexslider sizing).
 * Only its surrounding rhythm and controls are styled here. */
.sh-site .sh-product .sh-inner-breadcrumb {padding-top:38px;padding-bottom:36px;}
.sh-site .sh-product .sh-product-layout {grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:clamp(40px,5.5vw,88px);}
.sh-site .sh-product .sh-product-summary {padding:4px 0 0;}
.sh-site .sh-product .sh-product-title .elementor-heading-title {
  margin-bottom:24px;
  font-size:clamp(46px,5.2vw,74px);
  line-height:1.02;
  letter-spacing:-.035em;
}
.sh-site .sh-product .sh-product-description {color:var(--sh-muted);font-size:14px;line-height:1.85;}
.sh-site .sh-product .sh-product-price {margin:28px 0 30px;font-size:24px;line-height:1.45;}
.sh-site .sh-product :is(.sh-product-price,.woocommerce-variation-price) .price {color:var(--sh-paper);font:400 24px/1.5 var(--sh-sans,Manrope,Arial,sans-serif);}
.sh-site .sh-product .sh-product-gallery .woocommerce-product-gallery__trigger {background:var(--sh-paper);border-radius:0;box-shadow:none;}
.sh-site .sh-product .flex-control-thumbs img {opacity:.7;outline:1px solid transparent;outline-offset:3px;transition:opacity .2s;}
.sh-site .sh-product .flex-control-thumbs img:is(.flex-active,:hover) {opacity:1;outline-color:var(--sh-red);}
.sh-site .sh-product .sh-product-purchase form.cart {gap:16px;margin-bottom:20px;}
.sh-site .sh-product .sh-product-purchase table.variations {width:100%;margin-bottom:12px;border:0;background:transparent;}
.sh-site .sh-product .sh-product-purchase table.variations tbody {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.sh-site .sh-product .sh-product-purchase table.variations tr {display:flex;flex-direction:column;gap:10px;min-width:0;}
.sh-site .sh-product .sh-product-purchase table.variations :is(th,td) {display:block;padding:0;border:0;background:transparent;text-align:left;}
.sh-site .sh-product .sh-product-purchase table.variations label {font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--sh-muted);}
.sh-site .sh-product .sh-product-purchase table.variations select {width:100%;max-width:100%;margin:0;}
.sh-site .sh-product .reset_variations {display:inline-block;margin-top:10px;font-size:12px;color:var(--sh-muted);}
.sh-site .sh-product .single_variation_wrap {width:100%;}
.sh-site .sh-product .woocommerce-variation-price {margin-bottom:18px;font-size:22px;}
.sh-site .sh-product .woocommerce-variation-add-to-cart {display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;}
.sh-site .sh-product .sh-product-purchase .quantity {margin:0;}
.sh-site .sh-product .sh-product-purchase .qty {height:50px;min-height:50px;width:76px;padding:10px 8px;}
.sh-site .sh-product .single_add_to_cart_button {min-height:50px;flex:1;}
.sh-site .sh-product .sh-product-meta {margin:28px 0 22px;padding-top:22px;font-size:12px;line-height:1.8;}
.sh-site .sh-product .sh-product-meta .product_meta {display:grid;gap:8px;}
.sh-site .sh-product .sh-product-meta .product_meta>span {margin:7px 0;}
.sh-site .sh-product .sh-product-details {margin-top:96px;padding-top:40px;grid-template-columns:1fr 1.5fr;gap:clamp(30px,5vw,72px);}
.sh-site .sh-product .sh-product-related {margin-top:96px;padding-top:40px;}
.sh-site .sh-product :is(.sh-product-details,.sh-product-related)>.sh-inner-heading .elementor-heading-title {font-size:clamp(38px,3.5vw,52px);line-height:1.08;}
.sh-site .sh-product .sh-product-content {font-size:14px;line-height:1.85;color:var(--sh-muted);}
.sh-site .sh-product .woocommerce-tabs .panel {margin-bottom:0;}
.sh-site .sh-product .woocommerce-tabs :is(.woocommerce-product-attributes,.shop_attributes) {border:0;border-top:1px solid var(--sh-line);}
.sh-site .sh-product .woocommerce-tabs :is(.woocommerce-product-attributes,.shop_attributes) :is(th,td) {padding:16px 0;border:0;border-bottom:1px solid var(--sh-line);background:transparent;font-size:12px;vertical-align:top;}
.sh-site .sh-product .woocommerce-tabs :is(.woocommerce-product-attributes,.shop_attributes) th {width:36%;padding-right:22px;color:var(--sh-paper);font-weight:500;}
.sh-site .sh-product .woocommerce-tabs :is(.woocommerce-product-attributes,.shop_attributes) td {font-style:normal;}
.sh-site .sh-product .sh-related-products ul.products {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;}
.sh-site .sh-product .sh-related-products ul.products li.product {background:transparent;border:0;}
.sh-site .sh-product .sh-related-products ul.products li.product a img {object-fit:contain;border-radius:0;}
.sh-site .sh-product .sh-related-products ul.products li.product .woocommerce-loop-product__title {font-size:30px;font-weight:400;line-height:1.12;margin-bottom:10px;}
.sh-site .sh-product .sh-related-products ul.products li.product .price {color:var(--sh-muted);font:400 13px/1.8 var(--sh-sans,Manrope,Arial,sans-serif);margin-bottom:18px;}
.sh-site .sh-product .sh-related-products ul.products li.product a.button {display:inline-block;border:0;border-bottom:1px solid var(--sh-line);background:transparent;color:var(--sh-paper);padding:7px 0;font-size:12px;}

/* Shared commerce controls. These explicit component scopes also win over
 * Elementor's default cyan buttons without changing other site forms. */
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select,.select2-container--default .select2-selection--single) {
  background:var(--sh-field);
  color:var(--sh-paper);
  border:1px solid var(--sh-field-line);
  border-radius:0;
  min-height:48px;
  padding:12px 14px;
  box-shadow:none;
  font:400 13px/1.5 var(--sh-sans,Manrope,Arial,sans-serif);
}
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) select option {background:var(--sh-field);color:var(--sh-paper);}
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) :is(input,textarea)::placeholder {color:#a3a5a0;opacity:1;}
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) :is(input[type=checkbox],input[type=radio]) {accent-color:var(--sh-red);}
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) :is(button,input[type=submit],.woocommerce a.button,.woocommerce button.button,.woocommerce input.button) {
  border:1px solid var(--sh-paper);
  border-radius:0;
  background:var(--sh-paper);
  color:var(--sh-ink,#0d0f0f);
  padding:15px 24px;
  min-height:48px;
  font:600 12px/1.4 var(--sh-sans,Manrope,Arial,sans-serif);
  letter-spacing:.07em;
  box-shadow:none;
  transition:background-color .2s,border-color .2s,color .2s;
}
.sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) :is(button,input[type=submit],.woocommerce a.button,.woocommerce button.button,.woocommerce input.button):hover {
  background:var(--sh-red);
  border-color:var(--sh-red);
  color:var(--sh-ink,#0d0f0f);
}
.sh-site :is(.sh-product,.sh-commerce-page) :is(button:disabled,button.disabled) {opacity:.48;cursor:not-allowed;}
.sh-site :is(.sh-product,.sh-commerce-page) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) {
  background:var(--sh-panel);
  color:var(--sh-paper);
  border:0;
  border-left:2px solid var(--sh-red);
  padding:20px 24px 20px 48px;
  font-size:12px;
  line-height:1.8;
  box-shadow:none;
}
.sh-site :is(.sh-product,.sh-commerce-page) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error):before {color:var(--sh-red);left:20px;top:20px;}
.sh-site :is(.sh-product,.sh-commerce-page) .woocommerce a.remove {color:var(--sh-red)!important;border-radius:0;}
.sh-site :is(.sh-product,.sh-commerce-page) .woocommerce a.remove:hover {background:var(--sh-red);color:var(--sh-ink,#0d0f0f)!important;}

/* Elementor's native cart, checkout and account widgets read their colours
 * from these variables. Keep the surfaces flat and let thin rules organise them. */
.sh-site .sh-commerce-page .sh-commerce-widget {
  --sections-background-color:transparent;
  --sections-border-color:var(--sh-line);
  --sections-border-radius:0px;
  --sections-padding:30px;
  --sections-title-color:var(--sh-paper);
  --sections-secondary-title-color:var(--sh-paper);
  --sections-descriptions-color:var(--sh-muted);
  --sections-messages-color:var(--sh-muted);
  --sections-radio-buttons-color:var(--sh-red);
  --general-text-color:var(--sh-muted);
  --totals-color:var(--sh-paper);
  --tables-header-color:var(--sh-muted);
  --tables-content-color:var(--sh-paper);
  --links-normal-color:var(--sh-paper);
  --links-hover-color:var(--sh-red);
  --product-link-normal-color:var(--sh-paper);
  --product-link-hover-color:var(--sh-red);
  --forms-labels-color:var(--sh-muted);
  --forms-fields-normal-color:var(--sh-paper);
  --forms-fields-normal-background-color:var(--sh-field);
  --forms-fields-normal-border-color:var(--sh-field-line);
  --forms-fields-focus-color:var(--sh-paper);
  --forms-fields-focus-border-color:var(--sh-paper);
  --forms-fields-border-radius:0px;
  --order-summary-color:var(--sh-paper);
  --order-summary-variations-color:var(--sh-muted);
  --order-summary-title-color:var(--sh-paper);
  --order-summary-items-color:var(--sh-paper);
  --order-summary-totals-color:var(--sh-paper);
  --purchase-button-normal-text-color:var(--sh-ink,#0d0f0f);
  --purchase-button-hover-text-color:var(--sh-ink,#0d0f0f);
  --purchase-button-normal-background-color:var(--sh-paper);
  --purchase-button-hover-background-color:var(--sh-red);
  --login-button-normal-text-color:var(--sh-ink,#0d0f0f);
  --login-button-normal-background-color:var(--sh-paper);
  --login-button-hover-background-color:var(--sh-red);
  color:var(--sh-muted);
  font-family:var(--sh-sans,Manrope,Arial,sans-serif);
}
.sh-site .sh-commerce-page :is(.e-cart__container,.e-checkout__container) {gap:clamp(36px,4vw,64px);align-items:start;}
.sh-site .sh-commerce-page :is(.e-cart-section,.e-cart-totals,.e-checkout__order_review,.e-checkout__container .e-checkout__column-inner,.e-cart__column-inner,.e-my-account-tab) {
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.sh-site .sh-commerce-page :is(.e-shop-table,.e-cart-totals,.e-checkout__order_review,.e-checkout__column-start .e-checkout__column-inner) {padding:26px 0 0;border-top:1px solid var(--sh-line);}
.sh-site .sh-commerce-page .woocommerce :is(h2,h3) {
  color:var(--sh-paper);
  font:400 clamp(30px,3vw,40px)/1.1 var(--sh-serif,'Cormorant Garamond',Georgia,serif);
  letter-spacing:-.025em;
  margin-bottom:26px;
}
.sh-site .sh-commerce-page .woocommerce :is(table.shop_table,table.shop_table_responsive) {border:0;border-collapse:collapse;border-radius:0;background:transparent;font-size:13px;line-height:1.75;}
.sh-site .sh-commerce-page .woocommerce table.shop_table :is(th,td) {padding:20px 0;border:0;border-bottom:1px solid var(--sh-line);background:transparent;color:var(--sh-paper);}
.sh-site .sh-commerce-page .woocommerce table.shop_table th {color:var(--sh-muted);font-size:12px;font-weight:500;}
.sh-site .sh-commerce-page .woocommerce table.shop_table td.product-thumbnail {padding-right:22px;}
.sh-site .sh-commerce-page .woocommerce table.shop_table td.product-thumbnail img {width:90px;max-width:90px;min-width:60px;border-radius:0;}
.sh-site .sh-commerce-page .woocommerce table.shop_table td.product-remove {padding-right:12px;}
.sh-site .sh-commerce-page .woocommerce table.shop_table td.product-name {padding-right:20px;}
.sh-site .sh-commerce-page .woocommerce table.shop_table td.product-name>a {color:var(--sh-paper);font-size:15px;line-height:1.5;}
.sh-site .sh-commerce-page .woocommerce table.shop_table td.product-quantity {padding-right:20px;}
.sh-site .sh-commerce-page .woocommerce table.shop_table td .quantity .qty {width:64px;padding:10px 6px;}
.sh-site .sh-commerce-page .woocommerce table.shop_table :is(.variation,small,.woocommerce-shipping-destination) {color:var(--sh-muted);font-size:12px;line-height:1.7;}
.sh-site .sh-commerce-page .woocommerce .cart_totals table.shop_table :is(th,td) {padding:20px 0;}
.sh-site .sh-commerce-page .woocommerce table.shop_table .order-total :is(th,td) {padding-top:24px;padding-bottom:24px;color:var(--sh-paper);font-size:16px;}
.sh-site .sh-commerce-page .woocommerce :is(.cart_totals,.woocommerce-checkout-review-order) .woocommerce-Price-amount {color:var(--sh-paper);}
.sh-site .sh-commerce-page .woocommerce .wc-proceed-to-checkout {padding-top:28px;}
.sh-site .sh-commerce-page .woocommerce .wc-proceed-to-checkout a.checkout-button {margin:0;font-size:12px;min-height:50px;}
.sh-site .sh-commerce-page .woocommerce .shipping-calculator-button {color:var(--sh-paper);font-size:12px;text-underline-offset:4px;}
.sh-site .sh-commerce-page .sh-commerce-widget .woocommerce #ship-to-different-address label {color:var(--sh-paper);}
.sh-site .sh-commerce-page .woocommerce :is(.woocommerce-shipping-methods,.wc_payment_methods) {color:var(--sh-muted);font-size:12px;}
.sh-site .sh-commerce-page .woocommerce form .form-row {margin-bottom:24px;}
.sh-site .sh-commerce-page .woocommerce form .form-row label {color:var(--sh-muted);font-size:12px;line-height:1.6;margin-bottom:10px;}
/* Native checkout gives #customer_details inputs a hardcoded white background;
 * matching that selector is necessary in addition to the widget variables. */
.sh-site .sh-commerce-page .sh-commerce-widget .woocommerce #customer_details .form-row :is(.input-text,select,textarea,.select2-selection),
.sh-site .sh-commerce-page .sh-commerce-widget .woocommerce :is(.woocommerce-form-login,.woocommerce-form-register,.woocommerce-ResetPassword,.e-coupon-box,.e-login-anchor) .form-row :is(.input-text,select,textarea) {
  background:var(--sh-field);
  border:1px solid var(--sh-field-line);
  border-radius:0;
  color:var(--sh-paper);
  padding:12px 14px;
  min-height:48px;
  box-shadow:none;
  font-size:13px;
}
.sh-site .sh-commerce-page .woocommerce .select2-container .select2-selection--single .select2-selection__arrow {top:10px;right:8px;}
.sh-site .sh-commerce-page .woocommerce :is(.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper) {color:var(--sh-muted);font-size:12px;line-height:1.85;}
.sh-site .sh-commerce-page .woocommerce #payment {background:transparent;border:0;border-radius:0;}
.sh-site .sh-commerce-page .woocommerce #payment ul.payment_methods {border-bottom:1px solid var(--sh-line);padding:20px 0;}
.sh-site .sh-commerce-page .woocommerce #payment div.payment_box {background:var(--sh-panel);color:var(--sh-paper);border-radius:0;}
.sh-site .sh-commerce-page .woocommerce #payment div.payment_box:before {border-bottom-color:var(--sh-panel);}
.sh-site .sh-commerce-page .woocommerce #payment div.place-order {padding:24px 0 0;}
.sh-site .sh-commerce-page .sh-commerce-widget .woocommerce #payment #place_order {background:var(--sh-paper);color:var(--sh-ink,#0d0f0f);border:1px solid var(--sh-paper);border-radius:0;font-size:12px;min-height:50px;}
.sh-site .sh-commerce-page .sh-commerce-widget .woocommerce #payment #place_order:hover {background:var(--sh-red);border-color:var(--sh-red);}

/* Select2 appends its menu to body, outside the commerce section. Limit the
 * portal treatment to native WooCommerce pages; retain its keyboard behavior. */
body.sh-site:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .select2-container--open .select2-dropdown {
  background:var(--sh-ink,#0d0f0f);
  color:var(--sh-paper,#f2f0ea);
  border:1px solid var(--sh-border,#555752);
  border-radius:0;
  box-shadow:none;
  font:400 13px/1.6 var(--sh-sans,Manrope,Arial,sans-serif);
}
body.sh-site:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .select2-container--open .select2-search--dropdown {padding:8px;}
body.sh-site:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .select2-container--open .select2-search__field {
  background:var(--sh-field,#131515);
  color:var(--sh-paper,#f2f0ea);
  border:1px solid var(--sh-border,#555752);
  border-radius:0;
  padding:10px 12px;
  min-height:44px;
  font:inherit;
}
body.sh-site:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .select2-container--open .select2-results__option {color:var(--sh-paper,#f2f0ea);padding:12px 14px;}
body.sh-site:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .select2-container--open .select2-results__option[aria-selected=true] {background:#272a2a;color:var(--sh-paper,#f2f0ea);}
body.sh-site:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .select2-container--open .select2-results__option--highlighted[aria-selected] {background:var(--sh-paper,#f2f0ea);color:var(--sh-ink,#0d0f0f);}

/* Account: a quiet login form on the page, without a separate white card. */
.sh-site .sh-account-page .sh-commerce-widget :is(.e-my-account-tab,.e-my-account-tab__content,.woocommerce-MyAccount-content) {background:transparent;border:0;padding:0;color:var(--sh-muted);}
.sh-site .sh-account-page .sh-commerce-widget .e-my-account-tab {
  --typography-section-titles-color:var(--sh-paper);
  --forms-labels-color:var(--sh-muted);
  --forms-buttons-normal-text-color:var(--sh-ink,#0d0f0f);
  --forms-buttons-hover-text-color:var(--sh-ink,#0d0f0f);
}
/* The account widget declares its own nested defaults, including a hardcoded
 * cyan background. Match that native form scope instead of using !important. */
.sh-site .sh-account-page .sh-commerce-widget .e-my-account-tab .woocommerce :is(h2,h3) {color:var(--sh-paper);font:400 40px/1.1 var(--sh-serif,'Cormorant Garamond',Georgia,serif);}
.sh-site .sh-account-page .sh-commerce-widget .e-my-account-tab .woocommerce :is(.login,.register,.woocommerce-ResetPassword) .button {background:var(--sh-paper);border:1px solid var(--sh-paper);border-radius:0;color:var(--sh-ink,#0d0f0f);}
.sh-site .sh-account-page .sh-commerce-widget .e-my-account-tab .woocommerce :is(.login,.register,.woocommerce-ResetPassword) .button:hover {background:var(--sh-red);border-color:var(--sh-red);}
.sh-site .sh-account-page .sh-commerce-widget .e-my-account-tab .woocommerce .form-row label {color:var(--sh-muted);}
.sh-site .sh-account-page .sh-commerce-widget .e-my-account-tab .woocommerce .form-row .woocommerce-form-login__rememberme span {color:var(--sh-muted);}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce form .show-password-input {
  top:2px;right:3px;bottom:auto;
  width:44px;height:44px;min-height:44px;
  padding:0;margin:0;border:0;border-radius:0;transform:none;
  background:transparent;color:var(--sh-paper);
  display:grid;place-items:center;
  font-size:18px;line-height:1;letter-spacing:0;
}
/* Woo's eye is an SVG with a fixed black fill. Supply neutral line icons for
 * its existing native toggle states; product photography receives no filters. */
.sh-site .sh-account-page .sh-commerce-widget .woocommerce form .show-password-input:before {
  margin:0;width:20px;height:20px;color:inherit;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23f2f0ea' stroke-width='1.5'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='m3 3 18 18'/%3E%3C/svg%3E");
  background-size:20px 20px;background-position:center;background-repeat:no-repeat;
}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce form .show-password-input.display-password:before {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23f2f0ea' stroke-width='1.5'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce form .show-password-input:hover {background:var(--sh-panel);color:var(--sh-red);}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce form .password-input input {padding-right:52px;}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce :is(form.login,form.register,form.lost_reset_password) {background:transparent;border:0;border-top:1px solid var(--sh-line);border-radius:0;padding:32px 0 0;margin-top:26px;max-width:620px;}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce-form-login__rememberme {margin:16px 0 0 24px;font-size:12px;}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce-LostPassword {margin-top:22px;font-size:12px;}
.sh-site .sh-account-page .sh-commerce-widget .woocommerce-LostPassword a {color:var(--sh-muted);}
.sh-site .sh-account-page .woocommerce .woocommerce-MyAccount-navigation li {padding:18px 0;border-bottom:1px solid var(--sh-line);font-size:12px;}
.sh-site .sh-account-page .woocommerce .woocommerce-MyAccount-navigation li.is-active a {color:var(--sh-red);}
.sh-site .sh-account-page .woocommerce fieldset {border:0;border-top:1px solid var(--sh-line);padding:24px 0;margin-top:32px;}
.sh-site .sh-account-page .woocommerce legend {padding-right:16px;padding-left:0;color:var(--sh-paper);font-size:13px;}
.sh-site .sh-account-page .woocommerce .woocommerce-Address {border:0;padding-top:26px;}

/* Mini-cart component only: no shared header geometry or toggle positioning. */
.sh-site .elementor-menu-cart__main {
  --sh-paper:#f2f0ea;
  --sh-muted:#c8c8c2;
  --sh-red:#d85041;
  --sh-line:rgba(242,240,234,.2);
  background:var(--sh-ink,#0d0f0f);
  color:var(--sh-paper);
  border-left:1px solid var(--sh-line);
  border-radius:0;
  padding:38px 30px;
  font:400 13px/1.75 var(--sh-sans,Manrope,Arial,sans-serif);
}
.sh-site .sh-header .elementor-menu-cart__main {background:var(--sh-ink,#0d0f0f);}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__product {border-color:var(--sh-line);padding-top:24px;padding-bottom:24px;}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__product-name a {color:var(--sh-paper);font:400 26px/1.12 var(--sh-serif,'Cormorant Garamond',Georgia,serif);}
.sh-site .elementor-menu-cart__main :is(.elementor-menu-cart__product-price,.variation,.woocommerce-mini-cart__empty-message) {color:var(--sh-muted);font-size:12px;}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__product-price :is(.quantity,.woocommerce-Price-amount) {color:var(--sh-muted);font:400 12px/1.8 var(--sh-sans,Manrope,Arial,sans-serif);}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__product-image img {border-radius:0;object-fit:contain;}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__subtotal {border-color:var(--sh-line);color:var(--sh-paper);padding:26px 0;font-size:14px;}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__footer-buttons {gap:12px;padding-top:24px;}
.sh-site .sh-header .elementor-menu-cart__main .elementor-button {background:var(--sh-paper);border:1px solid var(--sh-paper);border-radius:0;color:var(--sh-ink,#0d0f0f);padding:15px 18px;font:600 12px/1.5 var(--sh-sans,Manrope,Arial,sans-serif);letter-spacing:.05em;}
.sh-site .sh-header .elementor-menu-cart__main .elementor-button--view-cart {background:transparent;color:var(--sh-paper);border-color:var(--sh-line);}
.sh-site .sh-header .elementor-menu-cart__main .elementor-button:hover {background:var(--sh-red);border-color:var(--sh-red);color:var(--sh-ink,#0d0f0f);}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__product-remove {border-color:var(--sh-muted);border-radius:0;}
.sh-site .elementor-menu-cart__main .elementor-menu-cart__product-remove:before,
.sh-site .elementor-menu-cart__main .elementor-menu-cart__product-remove:after {background:var(--sh-muted);}

@media (max-width:1024px) {
  .sh-site .sh-catalog-page .sh-product-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 26px;}
  .sh-site .sh-catalog-page .sh-catalog-tools label {min-width:calc(50% - 22px);}
  .sh-site .sh-product .sh-product-layout {gap:36px;}
  .sh-site .sh-product .sh-product-title .elementor-heading-title {font-size:48px;}
  .sh-site .sh-product .sh-product-purchase table.variations tbody {grid-template-columns:1fr;}
}
@media (max-width:900px) {
  .sh-site .sh-product .sh-product-layout {grid-template-columns:1fr;gap:40px;}
  .sh-site .sh-product .sh-product-gallery {max-width:680px;margin-inline:auto;}
  .sh-site .sh-product .sh-product-purchase table.variations tbody {grid-template-columns:repeat(2,minmax(0,1fr));}
  .sh-site .sh-product .sh-product-details {grid-template-columns:1fr;gap:28px;}
}
@media (max-width:767px) {
  .sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-opening {padding-top:54px;padding-bottom:42px;}
  .sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-title .elementor-heading-title {font-size:50px;line-height:1.02;}
  .sh-site :is(.sh-catalog-page,.sh-commerce-page) .sh-inner-intro {font-size:13px;line-height:1.8;margin-top:22px;}
  .sh-site .sh-catalog-page .sh-catalog-tools {gap:20px 14px;padding:24px 0 28px;margin-bottom:30px;}
  .sh-site .sh-catalog-page .sh-catalog-tools label {min-width:calc(50% - 14px);}
  .sh-site .sh-catalog-page .sh-catalog-tools label:nth-of-type(2) {order:-1;flex-basis:100%;}
  .sh-site .sh-catalog-page .sh-catalog-filter-actions {width:100%;justify-content:space-between;}
  .sh-site .sh-catalog-page .sh-catalog-filter-actions button {flex:1;}
  .sh-site .sh-catalog-page .sh-product-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 16px;}
  .sh-site .sh-catalog-page .sh-card-body {padding-top:17px;}
  .sh-site .sh-catalog-page .sh-card-title {font-size:25px;line-height:1.08;margin-bottom:10px;}
  .sh-site .sh-catalog-page .sh-card-description {font-size:12px;line-height:1.7;}
  .sh-site .sh-catalog-page .sh-card-price {font-size:12px;line-height:1.8;margin-top:14px;padding-top:12px;}
  .sh-site .sh-catalog-page :is(.sh-card-link,.sh-card-cart) {display:block;margin-left:0;margin-top:10px;font-size:12px;}
  .sh-site .sh-catalog-page .sh-pagination {margin-top:42px;padding-top:24px;}
  .sh-site .sh-product .sh-inner-breadcrumb {padding-top:24px;padding-bottom:24px;}
  .sh-site .sh-product .sh-product-layout {grid-template-columns:1fr;gap:40px;}
  .sh-site .sh-product .sh-product-summary {padding:0;}
  .sh-site .sh-product .sh-product-title .elementor-heading-title {font-size:50px;line-height:1.04;}
  .sh-site .sh-product .sh-product-description {font-size:13px;}
  .sh-site .sh-product .sh-product-price {font-size:22px;margin:24px 0;}
  .sh-site .sh-product :is(.sh-product-price,.woocommerce-variation-price) .price {font-size:22px;}
  .sh-site .sh-product .sh-product-purchase table.variations tbody {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
  .sh-site .sh-product :is(.sh-product-details,.sh-product-related) {margin-top:58px;padding-top:30px;}
  .sh-site .sh-product .sh-product-details {grid-template-columns:1fr;gap:28px;}
  .sh-site .sh-product :is(.sh-product-details,.sh-product-related)>.sh-inner-heading .elementor-heading-title {font-size:38px;}
  .sh-site .sh-product .sh-related-products ul.products {grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px;}
  .sh-site .sh-product .sh-related-products ul.products li.product .woocommerce-loop-product__title {font-size:25px;}
  .sh-site .sh-product .sh-related-products ul.products li.product .price {font-size:12px;line-height:1.8;}
  .sh-site .sh-commerce-page .sh-commerce-widget {--sections-padding:24px 0;}
  .sh-site .sh-commerce-page .woocommerce table.shop_table_responsive tr {margin-bottom:24px;border-bottom:1px solid var(--sh-line);}
  .sh-site .sh-commerce-page .woocommerce table.shop_table_responsive tr :is(th,td) {padding:14px 0;background:transparent;border-bottom:0;}
  .sh-site .sh-commerce-page .woocommerce table.shop_table_responsive tr:nth-child(2n) td {background:transparent;}
  .sh-site .sh-commerce-page .woocommerce table.shop_table_responsive td:before {color:var(--sh-muted);font-weight:500;font-size:12px;}
  .sh-site .sh-commerce-page .woocommerce table.shop_table td.product-name {padding-right:0;}
  .sh-site .sh-commerce-page .woocommerce table.shop_table td.product-quantity {padding-right:0;}
  .sh-site .sh-commerce-page .woocommerce .cart_totals table.shop_table :is(th,td) {padding:16px 0;}
  .sh-site .sh-commerce-page :is(.e-cart__column-end,.e-checkout__column-end) {margin-top:40px;}
  .sh-site .sh-commerce-page .woocommerce :is(h2,h3) {font-size:34px;}
  .sh-site .sh-commerce-page .woocommerce :is(.form-row-first,.form-row-last) {width:100%;float:none;}
  .sh-site .sh-account-page .sh-commerce-widget .woocommerce-form-login__rememberme {display:block;margin:20px 0 0;}
  .sh-site .elementor-menu-cart__main {padding:30px 24px;max-width:100vw;}
  .sh-site .elementor-menu-cart__main .elementor-menu-cart__product-name a {font-size:24px;}
}
@media (max-width:359px) {
  .sh-site .sh-catalog-page .sh-product-grid {grid-template-columns:1fr;}
  .sh-site .sh-catalog-page .sh-card-title {font-size:32px;}
  .sh-site .sh-catalog-page .sh-card-description {font-size:12px;}
  .sh-site .sh-product .sh-product-purchase table.variations tbody {grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce) {
  .sh-site :is(.sh-catalog-page,.sh-product,.sh-commerce-page) :is(button,input[type=submit],.button,.flex-control-thumbs img) {transition:none;}
}
