/* Shared shop styling, scoped to WooCommerce screens. */
.myruc-commerce { --wp--preset--color--primary:var(--color-brand); }
.myruc-commerce .site-header { background:#fff; color:var(--color-text); border-bottom:1px solid var(--color-border); }
.myruc-commerce .site-header .site-brand,
.myruc-commerce .site-header .site-brand__wordmark { color:var(--color-text); }
.myruc-commerce .commerce-main { width:min(calc(100% - 40px),var(--container)); max-width:var(--container); margin-inline:auto; padding:140px 0 80px; }
.commerce-main * { box-sizing:border-box; letter-spacing:0; }
.commerce-main h1 { font-size:42px; line-height:1.15; font-weight:800; color:var(--color-text); overflow-wrap:anywhere; }
.commerce-main h2 { font-size:26px; line-height:1.3; color:var(--color-text); }
.commerce-main h3 { font-size:20px; line-height:1.4; }
.commerce-main p { font-size:16px; line-height:1.7; }
.commerce-heading { margin-bottom:36px; padding-bottom:24px; border-bottom:1px solid var(--color-border); }
.commerce-heading h1 { margin:0; }
.commerce-heading .eyebrow { margin-bottom:12px; }
.commerce-main .alignwide { margin-inline:0; max-width:100%; }
.commerce-main a { color:var(--color-text); text-underline-offset:4px; }
.commerce-main a:hover { color:var(--color-brand-hover); }
.commerce-main :is(a,button,input,select,textarea):focus-visible { outline:2px solid var(--color-brand); outline-offset:3px; }
.myruc-commerce .commerce-main :is(.button,.wp-element-button,.wc-block-components-button,.wp-block-button__link) {
  display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 24px;
  border:1px solid transparent; border-radius:999px; background:var(--color-brand); color:#fff;
  font:700 15px/1.4 var(--font-body); box-shadow:none; text-decoration:none; white-space:normal; text-align:center;
}
.myruc-commerce .commerce-main :is(.button,.wp-element-button,.wc-block-components-button,.wp-block-button__link):hover { background:var(--color-brand-hover); color:#fff; }
.myruc-commerce .commerce-main button:disabled { opacity:.5; cursor:not-allowed; }
.woocommerce.myruc-commerce .commerce-main button.button.alt,
.woocommerce.myruc-commerce .commerce-main a.button.alt { background:var(--color-brand); color:#fff; }
.woocommerce.myruc-commerce .commerce-main button.button.alt:hover { background:var(--color-brand-hover); }
.woocommerce.myruc-commerce .commerce-main div.product p.price { color:var(--color-text); font-size:30px; }
.woocommerce.myruc-commerce .commerce-main div.product p.price :is(span,bdi) { color:inherit; font-size:inherit; }
.commerce-main :is(input.input-text,textarea,select) { min-height:48px; border:1px solid #aab0b7; border-radius:8px; background:#fff; color:var(--color-text); font:400 16px/1.5 var(--font-body); padding:12px; }
.commerce-main .woocommerce-breadcrumb { margin:0 0 30px; color:var(--color-muted); font-size:14px; }
.commerce-main div.product { display:flow-root; }
.commerce-main div.product .product_title { margin-bottom:20px; }
.commerce-main div.product div.images { width:48%; margin-bottom:40px; background:transparent; border-radius:8px; overflow:hidden; }
.commerce-main div.product div.summary { width:46%; margin-bottom:48px; }
.commerce-main div.product .woocommerce-product-gallery__image img { max-height:580px; object-fit:contain; }
.woocommerce .commerce-main div.product div.images .flex-control-thumbs { margin:20px 0 0; padding:0; display:flex; gap:10px; }
.commerce-main div.product .flex-control-thumbs li { max-width:80px; border:1px solid var(--color-border); border-radius:8px; overflow:hidden; }
.commerce-main div.product :is(p.price,span.price) { color:var(--color-text); font-size:30px; font-weight:700; }
.commerce-main div.product .woocommerce-product-details__short-description { color:var(--color-muted); margin:24px 0; }
.commerce-main div.product form.cart { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding-block:24px; margin:0 0 24px; border-block:1px solid var(--color-border); }
.commerce-main div.product form.variations_form { display:block; }
.commerce-main .quantity .qty { width:80px; margin:0; text-align:center; }
.commerce-main .product_meta { display:grid; gap:8px; font-size:13px; color:var(--color-muted); }
.single-product .commerce-main .product_meta .posted_in { display:none; }
.commerce-main div.product .woocommerce-tabs { clear:both; padding-top:24px; }
.commerce-main div.product .woocommerce-tabs ul.tabs { padding:0; }
.commerce-main div.product .woocommerce-tabs ul.tabs li { border:0; border-radius:0; margin:0 20px 0 0; padding:0; background:transparent; }
.commerce-main div.product .woocommerce-tabs ul.tabs li:before,
.commerce-main div.product .woocommerce-tabs ul.tabs li:after { display:none; }
.commerce-main div.product .woocommerce-tabs ul.tabs li a { padding:16px 0; font-size:16px; }
.commerce-main div.product .woocommerce-tabs ul.tabs li.active { border-bottom:3px solid var(--color-brand); }
.commerce-main div.product .woocommerce-tabs .panel { padding:24px 0; max-width:900px; }
.commerce-main .related { padding-top:32px; border-top:1px solid var(--color-border); }
.commerce-main ul.products li.product { border:1px solid var(--color-border); border-radius:8px; padding:20px; overflow:hidden; }
.commerce-main ul.products li.product .woocommerce-loop-product__title { font-size:20px; }
.commerce-main ul.products li.product .price { color:var(--color-text); font-size:18px; }
.commerce-main .wc-block-components-sidebar { background:var(--color-surface); border:1px solid var(--color-border); border-radius:8px; padding:24px; align-self:flex-start; }
.commerce-main .wc-block-components-main { min-width:0; }
.commerce-main .wc-block-cart-items { border-collapse:collapse; }
.commerce-main .wc-block-cart-items__header th { font:700 12px/1.5 var(--font-body); color:var(--color-muted); text-transform:uppercase; }
.commerce-main .wc-block-cart-item__image img { border-radius:8px; background:var(--color-surface); }
.commerce-main .wc-block-components-product-name { font-size:17px; font-weight:700; line-height:1.5; }
.commerce-main .wc-block-components-product-metadata { color:var(--color-muted); font-size:14px; }
.commerce-main .wc-block-components-quantity-selector { border:1px solid #aab0b7; border-radius:8px; background:#fff; }
.commerce-main .wc-block-components-quantity-selector:after { border:0; }
.commerce-main .wc-block-components-totals-wrapper { border-color:var(--color-border); }
.commerce-main .wc-block-cart__totals-title { font:700 20px/1.4 var(--font-heading); }
.commerce-main .wc-block-components-title.wc-block-components-title { font-size:22px; font-family:var(--font-heading); }
.commerce-main .wc-block-components-checkout-step { padding-bottom:30px; }
.commerce-main .wc-block-components-text-input input,
.commerce-main .wc-block-components-combobox .wc-block-components-combobox-control input { border-radius:8px; border-color:#aab0b7; font-family:var(--font-body); font-size:16px; }
.commerce-main .wc-block-components-radio-control__option { padding-block:18px; }
.commerce-main :is(input[type=checkbox],input[type=radio]) { accent-color:var(--color-brand); }
.commerce-main .wc-block-components-order-summary-item__image img { border-radius:8px; }
.commerce-main .wc-blocks-components-select .wc-blocks-components-select__select { height:56px; padding:24px 36px 6px 12px; }
.commerce-main .wc-block-components-order-summary { border:0; }
.commerce-main .wc-block-components-text-input.wc-block-components-text-input input { border-radius:8px; }
.commerce-main .wc-block-cart-item__product .wc-block-components-product-name { font-size:17px; font-weight:700; }
.commerce-main .wc-block-components-checkout-place-order-button { width:100%; }
.commerce-main :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) { border-radius:8px; background:var(--color-surface); font-size:15px; line-height:1.6; }
.commerce-main .woocommerce-message,.commerce-main .woocommerce-info { border-top-color:var(--color-brand); }
.commerce-main .woocommerce-message:before,.commerce-main .woocommerce-info:before { color:var(--color-brand-hover); }
.commerce-main .woocommerce-error { border-top-color:#b42318; }
.commerce-main table.shop_table { border:1px solid var(--color-border); border-radius:8px; font-size:16px; }
.commerce-main table.shop_table :is(th,td) { padding:16px; }
.commerce-main #payment { background:var(--color-surface); border-radius:8px; }
.commerce-main .woocommerce-order { max-width:960px; margin:auto; }
@media(max-width:780px) {
  .myruc-commerce .commerce-main { padding:112px 0 56px; }
  .commerce-main h1 { font-size:32px; }
  .commerce-main h2 { font-size:24px; }
  .commerce-main div.product div.images,.commerce-main div.product div.summary { float:none; width:100%; }
  .commerce-main .wc-block-components-sidebar { width:100%; padding:20px; margin-top:24px; }
  .commerce-main .wc-block-components-main { width:100%; padding:0; }
  .commerce-main .wc-block-components-sidebar-layout { flex-direction:column; }
}
