/**
 * Sirloin Princess commerce design – WooCommerce native PHP templates + WC Blocks.
 * All selectors are kept to commerce surfaces so existing Featured Cards, site
 * navigation, blog, and general WordPress pages retain their existing layout.
 */

/* Header cart. */
.sirloin-header .sirloin-header-cart { display:flex; align-items:center; flex:0 0 auto; margin-left:4px; }
.sirloin-header .sirloin-cart-link { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:8px 0 8px 9px; font:600 .86rem/1.1 var(--sirloin-sans); color:var(--sirloin-ink); text-decoration:none; white-space:nowrap; }
.sirloin-header .sirloin-cart-link svg { flex:none; transition:transform .2s ease; }
.sirloin-header .sirloin-cart-link:hover { color:var(--sirloin-coral-dark); }
.sirloin-header .sirloin-cart-link:hover svg { transform:translateY(-2px); }
.sirloin-header .sirloin-cart-count { display:inline-grid; place-items:center; min-width:23px; height:23px; padding:0 5px; border-radius:30px; background:var(--sirloin-coral); color:#fff; font:700 .72rem/1 var(--sirloin-sans); }

/* Commerce page shells, excluding the rest of the theme. */
.sirloin-commerce-main { display:block; width:100%; min-width:0; background:#fff; }
.sirloin-commerce-main > .sirloin-commerce-shell { display:block; box-sizing:border-box; width:min(calc(100% - 72px), 1100px); max-width:1100px; margin:0 auto; padding:46px 0 72px; }
.sirloin-commerce-main section:not(.content) { display:block; width:auto; clear:none; }
.sirloin-commerce-main h1,
.sirloin-commerce-main .page-title,
.sirloin-commerce-main .woocommerce-products-header__title { color:var(--sirloin-ink); font:400 clamp(2.45rem, 4.2vw, 4.4rem)/1.1 var(--sirloin-serif); letter-spacing:-.035em; text-transform:none; margin:0 0 21px; display:block; }
.sirloin-commerce-main h2 { font:400 clamp(1.4rem, 2.5vw, 2rem)/1.2 var(--sirloin-serif); text-transform:none; color:var(--sirloin-ink); }
.sirloin-commerce-main h3 { font:700 1rem/1.4 var(--sirloin-sans); text-transform:none; letter-spacing:0; color:var(--sirloin-ink); }
.sirloin-commerce-main p { line-height:1.65; }
.sirloin-commerce-main a:not(.button):not(.wp-element-button):not(.wc-block-components-button) { text-underline-offset:3px; }
.sirloin-commerce-main input, .sirloin-commerce-main select, .sirloin-commerce-main textarea, .sirloin-commerce-main button { font-family:var(--sirloin-sans); }
.sirloin-commerce-main .woocommerce-products-header { padding:0 0 22px; }
.sirloin-commerce-main .term-description, .sirloin-commerce-main .woocommerce-products-header__description { max-width:690px; color:var(--sirloin-muted); line-height:1.7; }
.sirloin-commerce-main .woocommerce-products-header__title::after { content:""; display:block; height:3px; width:59px; background:var(--sirloin-gold); margin-top:20px; }

/* Consistent buttons, including WC Blocks and all native payment controls. */
.sirloin-commerce-main .button,
.sirloin-commerce-main .woocommerce button.button,
.sirloin-commerce-main .woocommerce a.button,
.sirloin-commerce-main .woocommerce input.button,
.sirloin-commerce-main .woocommerce #respond input#submit,
.sirloin-commerce-main .wc-block-components-button,
.sirloin-commerce-main .wp-block-button__link {
    display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 23px !important;
    border:1px solid transparent !important; border-radius:5px !important; min-height:48px;
    box-shadow:none !important; background:var(--sirloin-coral) !important; color:#fff !important;
    font:700 .84rem/1.3 var(--sirloin-sans) !important; letter-spacing:.025em; text-transform:none;
    text-decoration:none !important; white-space:normal; text-align:center; cursor:pointer;
    transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.sirloin-commerce-main .button:hover,
.sirloin-commerce-main .woocommerce a.button:hover,
.sirloin-commerce-main .woocommerce button.button:hover,
.sirloin-commerce-main .woocommerce input.button:hover,
.sirloin-commerce-main .wc-block-components-button:hover,
.sirloin-commerce-main .wp-block-button__link:hover { background:var(--sirloin-coral-dark) !important; box-shadow:0 7px 16px rgba(188,83,63,.13) !important; }
.sirloin-commerce-main .button:focus-visible,
.sirloin-commerce-main .wc-block-components-button:focus-visible { outline:3px solid var(--sirloin-teal) !important; outline-offset:3px; }
.sirloin-commerce-main .button:disabled,
.sirloin-commerce-main .button:disabled:hover,
.sirloin-commerce-main .button.disabled,
.sirloin-commerce-main .wc-block-components-button:disabled { cursor:not-allowed; opacity:.55; transform:none; box-shadow:none !important; }
.sirloin-commerce-main .woocommerce .button.alt,
.sirloin-commerce-main .woocommerce button.button.alt,
.sirloin-commerce-main #place_order,
.sirloin-commerce-main .wc-block-cart__submit .wc-block-components-button,
.sirloin-commerce-main .wc-block-checkout__actions .wc-block-components-button { background:var(--sirloin-teal-dark) !important; }
.sirloin-commerce-main .woocommerce .button.alt:hover,
.sirloin-commerce-main .woocommerce button.button.alt:hover,
.sirloin-commerce-main #place_order:hover,
.sirloin-commerce-main .wc-block-cart__submit .wc-block-components-button:hover,
.sirloin-commerce-main .wc-block-checkout__actions .wc-block-components-button:hover { background:#185a58 !important; }
.sirloin-commerce-main .woocommerce a.added_to_cart { display:inline-block; margin:9px 0 0; font-size:.85rem; font-weight:600; color:var(--sirloin-teal-dark); }
.sirloin-commerce-main .wc-block-components-button .wc-block-components-button__text { color:inherit; }

/* Product catalogue. */
.sirloin-commerce-main .sirloin-shop-toolbar { display:flex; align-items:center; justify-content:space-between; gap:15px 22px; flex-wrap:wrap; padding:14px 0 21px; margin-bottom:9px; border-top:1px solid var(--sirloin-line); }
.sirloin-commerce-main .woocommerce-result-count { margin:0; float:none; font-size:.85rem; color:var(--sirloin-muted); }
.sirloin-commerce-main .woocommerce-ordering { margin:0; float:none; }
.sirloin-commerce-main .woocommerce-ordering select { appearance:none; min-width:200px; padding:11px 40px 11px 14px; border:1px solid var(--sirloin-line); border-radius:5px; background:#fff url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"%3E%3Cpath d="m4 6 4 4 4-4" fill="none" stroke="%23555" stroke-width="1.5"/%3E%3C/svg%3E') right 12px center/15px no-repeat; color:var(--sirloin-ink); font-size:.87rem; }
.sirloin-commerce-main ul.products, .sirloin-commerce-main .woocommerce ul.products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px 22px; list-style:none; margin:0 0 44px; padding:0; overflow:visible; }
.sirloin-commerce-main ul.products::before, .sirloin-commerce-main ul.products::after { content:none !important; }
.sirloin-commerce-main ul.products li.product,
.sirloin-commerce-main .woocommerce ul.products li.product { position:relative; float:none !important; display:flex; flex-direction:column; min-width:0; width:auto !important; margin:0 !important; padding:0 0 24px !important; box-sizing:border-box; background:#fff; border:1px solid var(--sirloin-line); border-radius:9px; overflow:hidden; text-align:left; box-shadow:0 2px 13px rgba(47,38,29,.035); transition:box-shadow .2s ease, transform .2s ease; }
.sirloin-commerce-main ul.products li.product:hover { box-shadow:0 12px 32px rgba(47,38,29,.10); transform:translateY(-3px); }
.sirloin-commerce-main ul.products li.product a.woocommerce-LoopProduct-link { display:block; text-decoration:none; color:var(--sirloin-ink); }
.sirloin-commerce-main ul.products li.product a img { width:100%; height:auto; display:block; aspect-ratio:1; object-fit:contain; padding:12px; margin:0 0 15px; background:#fff; border-radius:0; }
.sirloin-commerce-main ul.products li.product .woocommerce-loop-product__title { margin:0 17px 7px; padding:0 !important; font:500 1rem/1.35 var(--sirloin-sans); letter-spacing:0; text-transform:none; color:var(--sirloin-ink); }
.sirloin-commerce-main ul.products li.product .star-rating { margin:0 17px 8px; color:var(--sirloin-gold); }
.sirloin-commerce-main ul.products li.product .price { display:block; margin:0 17px 14px; color:var(--sirloin-teal-dark); font-size:1rem; font-weight:700; }
.sirloin-commerce-main ul.products li.product .price del { color:#8a817a; font-size:.88rem; font-weight:400; }
.sirloin-commerce-main ul.products li.product .button { align-self:flex-start; margin:auto 17px 0 !important; padding:11px 16px !important; min-height:43px; flex-shrink:0; font-size:.8rem !important; }
.sirloin-commerce-main ul.products li.product .added_to_cart { margin:8px 17px 0; }
.sirloin-commerce-main .onsale, .sirloin-commerce-main .woocommerce span.onsale { position:absolute; z-index:2; top:14px !important; left:14px !important; right:auto !important; margin:0 !important; padding:7px 10px !important; min-width:0; min-height:0; border-radius:4px; color:#fff; background:var(--sirloin-coral); font:700 .73rem/1.2 var(--sirloin-sans); }
.sirloin-commerce-main .woocommerce-pagination ul.page-numbers, .sirloin-commerce-main nav.woocommerce-pagination ul { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; border:0; padding:0; }
.sirloin-commerce-main .woocommerce-pagination ul.page-numbers li { float:none; border:0; }
.sirloin-commerce-main .woocommerce-pagination ul.page-numbers li > * { display:grid; place-items:center; min-width:42px; height:42px; padding:6px 12px; border:1px solid var(--sirloin-line); border-radius:5px; background:#fff; font-size:.9rem; color:var(--sirloin-ink); text-decoration:none; }
.sirloin-commerce-main .woocommerce-pagination ul.page-numbers li .current,
.sirloin-commerce-main .woocommerce-pagination ul.page-numbers li a:hover { background:var(--sirloin-teal-dark); border-color:var(--sirloin-teal-dark); color:#fff; }

/* Product details use the dedicated .sirloin-product-layout section below. */


/* Product image and purchasing details share the desktop row by construction.
   The two explicit wrapper divs survive sale badges, gallery extensions and WC floats. */
.sirloin-commerce-main .sirloin-product { display:block; width:100%; min-width:0; }
.sirloin-commerce-main .sirloin-product-layout {
    display:grid !important;
    grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
    gap:clamp(26px,4.4vw,56px);
    align-items:start;
    box-sizing:border-box; width:100%; min-width:0; margin:0 0 38px;
}
.sirloin-commerce-main .sirloin-product-layout::before,
.sirloin-commerce-main .sirloin-product-layout::after { content:none !important; display:none !important; }
.sirloin-commerce-main .sirloin-product-media,
.sirloin-commerce-main .sirloin-product-purchase {
    position:relative; min-width:0; width:100%; box-sizing:border-box;
    float:none !important; clear:none !important; margin:0;
}
.sirloin-commerce-main .sirloin-product-media { grid-column:1; grid-row:1; }
.sirloin-commerce-main .sirloin-product-purchase { grid-column:2; grid-row:1; }
.sirloin-commerce-main .sirloin-product-media .woocommerce-product-gallery,
.sirloin-commerce-main .sirloin-product-media .images,
.sirloin-commerce-main .sirloin-product-purchase .summary,
.sirloin-commerce-main .sirloin-product-purchase .entry-summary {
    display:block; float:none !important; clear:none !important;
    box-sizing:border-box; width:100% !important; max-width:100% !important;
    min-width:0; margin:0 !important;
}
.sirloin-commerce-main .sirloin-product-media .onsale { position:absolute; z-index:5; top:12px !important; left:12px !important; }
.sirloin-commerce-main .sirloin-product-media .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image {
    border:1px solid #e9e5df; border-radius:6px; overflow:hidden; background:#fff;
}
.sirloin-commerce-main .sirloin-product-media .woocommerce-product-gallery img { max-width:100%; width:100%; height:auto; object-fit:contain; }
.sirloin-commerce-main .sirloin-product-media .flex-control-thumbs { display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 0; }
.sirloin-commerce-main .sirloin-product-media .flex-control-thumbs li { float:none; width:calc(25% - 8px); border:1px solid #e9e5df; border-radius:4px; overflow:hidden; }
.sirloin-commerce-main .sirloin-product-purchase .product_title {
    margin:0 0 16px; font:400 clamp(2rem,3.2vw,3.3rem)/1.12 var(--sirloin-serif); letter-spacing:-.02em;
}
.sirloin-commerce-main .sirloin-product-purchase p.price,
.sirloin-commerce-main .sirloin-product-purchase span.price {
    display:block; margin:0 0 20px; color:var(--sirloin-teal-dark);
    font-size:clamp(1.3rem,2vw,1.65rem); font-weight:650;
}
.sirloin-commerce-main .sirloin-product-purchase .woocommerce-product-details__short-description,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-long-description { margin:0 0 20px; line-height:1.65; }
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-long-description > :first-child { margin-top:0; }
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-long-description > :last-child { margin-bottom:0; }
.sirloin-commerce-main .sirloin-product-purchase form.cart { display:flex; align-items:center; flex-wrap:wrap; gap:12px; width:100%; margin:20px 0; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations { width:100%; max-width:100%; margin:0; border:0; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations tbody,
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations tr,
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations td { display:block; width:100%; border:0; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations tr { margin:0 0 15px; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations td { padding:0 0 6px; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations label { display:block; margin:0 0 4px; font-size:.9rem; font-weight:700; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .variations select {
    box-sizing:border-box; display:block; width:100%; max-width:100%; min-height:49px;
    padding:11px 13px; border:1px solid #d7d1ca; border-radius:5px; background:#fff;
}
.sirloin-commerce-main .sirloin-product-purchase form.cart .single_variation_wrap { flex:1 1 100%; min-width:0; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .woocommerce-variation-add-to-cart { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.sirloin-commerce-main .sirloin-product-purchase form.cart .single_add_to_cart_button { flex:1 1 180px; max-width:none; }
.sirloin-commerce-main .sirloin-product-purchase .product_meta { border-top:1px solid var(--sirloin-line); padding:17px 0 0; margin-top:19px; font-size:.87rem; line-height:1.8; }
.sirloin-commerce-main .sirloin-product .woocommerce-tabs { clear:both; width:100%; border-top:1px solid var(--sirloin-line); padding-top:25px; }
.sirloin-commerce-main .sirloin-product .woocommerce-tabs ul.tabs { display:flex; flex-wrap:wrap; gap:12px; padding:0; margin:0 0 25px; border-bottom:1px solid var(--sirloin-line); }
.sirloin-commerce-main .sirloin-product .woocommerce-tabs ul.tabs::before,
.sirloin-commerce-main .sirloin-product .woocommerce-tabs ul.tabs li::before,
.sirloin-commerce-main .sirloin-product .woocommerce-tabs ul.tabs li::after { display:none !important; }
.sirloin-commerce-main .sirloin-product .woocommerce-tabs ul.tabs li { background:transparent; border:0; border-bottom:2px solid transparent; margin:0 0 -1px; padding:0; border-radius:0; }
.sirloin-commerce-main .sirloin-product .woocommerce-tabs ul.tabs li.active { border-bottom-color:var(--sirloin-coral); }
.sirloin-commerce-main .sirloin-product .woocommerce-tabs ul.tabs li a { display:block; padding:12px 15px; font-size:.88rem; color:var(--sirloin-muted); }
.sirloin-commerce-main .sirloin-product .related.products,
.sirloin-commerce-main .sirloin-product .upsells.products { clear:both; width:100%; margin:44px 0 0; }
.sirloin-commerce-main .sirloin-product .related.products > h2,
.sirloin-commerce-main .sirloin-product .upsells.products > h2 { margin:0 0 22px; }

/* Compatibility for standard WooCommerce single-product HTML if a plugin or
   layout builder bypasses the Sirloin content-single-product.php override. */
body.single-product .woocommerce div.product:not(.sirloin-product):not(.product-type-grouped) {
    display:grid !important; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
    gap:clamp(26px,4.4vw,56px); align-items:start; min-width:0;
}
body.single-product .woocommerce div.product:not(.sirloin-product) > .woocommerce-product-gallery,
body.single-product .woocommerce div.product:not(.sirloin-product) > .images {
    grid-column:1; grid-row:1; float:none !important; clear:none !important;
    width:100% !important; max-width:100% !important; min-width:0; margin:0 !important;
}
body.single-product .woocommerce div.product:not(.sirloin-product) > .summary,
body.single-product .woocommerce div.product:not(.sirloin-product) > .entry-summary {
    grid-column:2; grid-row:1; float:none !important; clear:none !important;
    width:100% !important; max-width:100% !important; min-width:0; margin:0 !important;
}
body.single-product .woocommerce div.product:not(.sirloin-product) > .onsale { grid-column:1; grid-row:1; z-index:5; }
body.single-product .woocommerce div.product:not(.sirloin-product) > .woocommerce-tabs,
body.single-product .woocommerce div.product:not(.sirloin-product) > .related,
body.single-product .woocommerce div.product:not(.sirloin-product) > .upsells { grid-column:1 / -1; width:100%; }
body.single-product .woocommerce div.product:not(.sirloin-product) > .summary .sirloin-product-long-description { margin:0 0 20px; }

/* WooCommerce and Gutenberg blocks cannot escape the standard page width. */
.sirloin-commerce-main .sirloin-commerce-content,
.sirloin-commerce-main .sirloin-commerce-content > .woocommerce,
.sirloin-commerce-main .wc-block-cart,
.sirloin-commerce-main .wc-block-checkout { box-sizing:border-box; width:100%; max-width:100%; min-width:0; margin-left:auto; margin-right:auto; }
.sirloin-commerce-main .wc-block-components-sidebar-layout { width:100%; max-width:100%; margin:0 auto; }
@media(max-width:800px) {
    .sirloin-commerce-main .sirloin-product-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:26px; }
}
@media(max-width:740px) {
    .sirloin-commerce-main .sirloin-product-layout { display:flex !important; flex-direction:column; gap:25px; }
    .sirloin-commerce-main .sirloin-product-layout > .sirloin-product-media,
    .sirloin-commerce-main .sirloin-product-layout > .sirloin-product-purchase { width:100% !important; margin:0 !important; }
    body.single-product .woocommerce div.product:not(.sirloin-product) { display:block !important; }
    body.single-product .woocommerce div.product:not(.sirloin-product) > .images,
    body.single-product .woocommerce div.product:not(.sirloin-product) > .woocommerce-product-gallery,
    body.single-product .woocommerce div.product:not(.sirloin-product) > .summary { width:100% !important; float:none !important; margin:0 0 24px !important; }
}
@media(max-width:950px) {
    .sirloin-commerce-main > .sirloin-commerce-shell { width:min(calc(100% - 48px),1100px); }
}
@media(max-width:540px) {
    .sirloin-commerce-main > .sirloin-commerce-shell { width:calc(100% - 32px); }
}

/* Native quantity control + accessible progressive enhancement. */
.sirloin-commerce-main .quantity { display:inline-flex !important; align-items:stretch; float:none !important; min-height:48px; margin:0 !important; border:1px solid #d8d1c9; border-radius:5px; overflow:hidden; background:#fff; }
.sirloin-commerce-main .quantity input.qty { appearance:textfield; -moz-appearance:textfield; min-width:45px; width:54px !important; min-height:46px; height:auto; margin:0; padding:6px 3px; border:0 !important; box-shadow:none !important; border-radius:0; background:#fff; font-size:1rem; font-weight:600; text-align:center; color:var(--sirloin-ink); }
.sirloin-commerce-main .quantity input.qty::-webkit-inner-spin-button, .sirloin-commerce-main .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.sirloin-commerce-main .sirloin-qty-button { display:grid; place-items:center; width:37px; min-width:37px; border:0; border-radius:0; background:#fff; color:var(--sirloin-ink); font-size:1.2rem; font-weight:500; line-height:1; cursor:pointer; }
.sirloin-commerce-main .sirloin-qty-button:hover { background:var(--sirloin-wash); color:var(--sirloin-coral-dark); }
.sirloin-commerce-main .sirloin-qty-button:disabled { cursor:not-allowed; opacity:.35; }
.sirloin-commerce-main .sirloin-qty-button:focus-visible, .sirloin-commerce-main .quantity input.qty:focus-visible { outline:2px solid var(--sirloin-teal); outline-offset:-3px; }

/* Shared cart, checkout & My Account page introduction. */
.sirloin-commerce-page__header { margin:0 0 34px; max-width:800px; }
.sirloin-commerce-eyebrow { margin:0 0 10px !important; font:700 .75rem/1.3 var(--sirloin-sans) !important; letter-spacing:.16em; text-transform:uppercase; color:var(--sirloin-teal-dark); }
.sirloin-commerce-page__header h1 { margin:0 0 12px; }
.sirloin-commerce-page__header > p:last-child { color:var(--sirloin-muted); margin:0; max-width:620px; }
.sirloin-checkout-steps { display:flex; align-items:center; justify-content:center; gap:14px; margin:0 0 45px; }
.sirloin-checkout-steps__step { display:inline-flex; align-items:center; gap:8px; text-decoration:none; font-size:.84rem; font-weight:650; color:#81776f; white-space:nowrap; }
.sirloin-checkout-steps__step.is-active { color:var(--sirloin-ink); }
.sirloin-checkout-steps__step[href]:hover { color:var(--sirloin-coral-dark); }
.sirloin-checkout-steps__number { display:grid; place-items:center; width:29px; height:29px; border:1px solid #cfc8bf; border-radius:50%; background:#fff; color:inherit; }
.sirloin-checkout-steps__step.is-active .sirloin-checkout-steps__number { background:var(--sirloin-teal-dark); border-color:var(--sirloin-teal-dark); color:#fff; }
.sirloin-checkout-steps__line { width:clamp(28px, 5vw, 82px); height:1px; background:#d9d1c7; }
.sirloin-commerce-content { min-width:0; }
.sirloin-commerce-main .woocommerce { color:var(--sirloin-ink); }
.sirloin-commerce-page .woocommerce-notices-wrapper:empty { display:none; }
.sirloin-commerce-main .woocommerce-message,
.sirloin-commerce-main .woocommerce-info,
.sirloin-commerce-main .woocommerce-error,
.sirloin-commerce-main .wc-block-components-notice-banner { display:flex; align-items:center; flex-wrap:wrap; gap:12px; border:1px solid #c9ddd8; border-left:4px solid var(--sirloin-teal); border-radius:6px; padding:15px 18px; margin:0 0 22px; background:#f1f9f6; color:#234b49; font-size:.94rem; line-height:1.55; }
.sirloin-commerce-main .woocommerce-error { display:block; border-color:#efceca; border-left-color:#c65148; background:#fef4f2; color:#823a32; }
.sirloin-commerce-main .woocommerce-error li { padding:0; margin:0 0 6px; }
.sirloin-commerce-main .woocommerce-message::before,
.sirloin-commerce-main .woocommerce-info::before,
.sirloin-commerce-main .woocommerce-error::before { display:none; }
.sirloin-commerce-main .woocommerce-message a.button { margin-left:auto; }

/* Forms shared by traditional checkout, account, coupons and blocks. */
.sirloin-commerce-main .woocommerce form .form-row { padding:0; margin:0 0 18px; }
.sirloin-commerce-main .woocommerce form .form-row label { display:block; margin:0 0 7px; color:var(--sirloin-ink); font-weight:650; font-size:.88rem; line-height:1.4; }
.sirloin-commerce-main .woocommerce form .form-row .optional { color:var(--sirloin-muted); font-weight:400; }
.sirloin-commerce-main .woocommerce form .form-row input.input-text,
.sirloin-commerce-main .woocommerce form .form-row textarea,
.sirloin-commerce-main .woocommerce form .form-row select,
.sirloin-commerce-main .woocommerce input.input-text,
.sirloin-commerce-main .woocommerce textarea,
.sirloin-commerce-main .woocommerce .select2-container .select2-selection--single {
    width:100%; min-height:48px; padding:11px 13px; border:1px solid #d9d4cc; border-radius:5px; outline:0; background:#fff; color:var(--sirloin-ink); font-size:.96rem; box-shadow:none; transition:border-color .15s ease,box-shadow .15s ease;
}
.sirloin-commerce-main .woocommerce form .form-row textarea { min-height:105px; resize:vertical; }
.sirloin-commerce-main .woocommerce form .form-row .input-text:focus,
.sirloin-commerce-main .woocommerce .select2-container--focus .select2-selection--single { border-color:var(--sirloin-teal); box-shadow:0 0 0 3px rgba(51,140,136,.15); outline:0; }
.sirloin-commerce-main .select2-container .select2-selection--single .select2-selection__rendered { line-height:25px; padding:0; }
.sirloin-commerce-main .select2-container .select2-selection--single .select2-selection__arrow { height:46px; }
.sirloin-commerce-main .woocommerce form .form-row.woocommerce-invalid .input-text { border-color:#bb433b; box-shadow:0 0 0 2px rgba(187,67,59,.1); }
.sirloin-commerce-main .woocommerce form .form-row .woocommerce-input-wrapper { width:100%; }
.sirloin-commerce-main .woocommerce .form-row .required { color:#bb433b; }
.sirloin-commerce-main .woocommerce form .form-row .woocommerce-form__label-for-checkbox { display:inline-flex; align-items:flex-start; gap:9px; cursor:pointer; }
.sirloin-commerce-main input[type="checkbox"], .sirloin-commerce-main input[type="radio"] { accent-color:var(--sirloin-teal-dark); width:17px; height:17px; flex:none; }
.sirloin-commerce-main .wc-block-components-text-input input,
.sirloin-commerce-main .wc-block-components-combobox-control input,
.sirloin-commerce-main .wc-blocks-components-select select,
.sirloin-commerce-main .wc-block-components-textarea { border:1px solid #d9d4cc !important; border-radius:5px !important; background:#fff; color:var(--sirloin-ink); box-shadow:none !important; }
.sirloin-commerce-main .wc-block-components-text-input.is-active input:focus,
.sirloin-commerce-main .wc-block-components-combobox-control input:focus { border-color:var(--sirloin-teal) !important; box-shadow:0 0 0 3px rgba(51,140,136,.13) !important; }
.sirloin-commerce-main .wc-block-components-checkbox__input[type="checkbox"] { accent-color:var(--sirloin-teal-dark); }

/* Classic cart: products left, calm order summary right. */
.sirloin-commerce-page--cart .sirloin-commerce-content > .woocommerce { display:grid; grid-template-columns:minmax(0, 1.65fr) minmax(285px, .9fr); gap:26px 31px; align-items:start; }
.sirloin-commerce-page--cart .woocommerce-notices-wrapper,
.sirloin-commerce-page--cart .woocommerce > .woocommerce-message,
.sirloin-commerce-page--cart .woocommerce > .woocommerce-info,
.sirloin-commerce-page--cart .woocommerce > .woocommerce-error,
.sirloin-commerce-page--cart .woocommerce > .return-to-shop,
.sirloin-commerce-page--cart .woocommerce > .cart-empty,
.sirloin-commerce-page--cart .woocommerce > .cross-sells { grid-column:1/-1; }
.sirloin-commerce-page--cart form.woocommerce-cart-form { grid-column:1; min-width:0; }
.sirloin-commerce-page--cart .cart-collaterals { grid-column:2; min-width:0; width:100%; }
.sirloin-commerce-page--cart .woocommerce .cart-collaterals::before,
.sirloin-commerce-page--cart .woocommerce .cart-collaterals::after { content:none; }
.sirloin-commerce-page--cart .woocommerce .cart-collaterals .cart_totals { float:none; width:100%; position:sticky; top:24px; padding:25px; border:1px solid var(--sirloin-line); border-radius:9px; background:#fff; box-shadow:0 8px 27px rgba(27,22,18,.04); }
.sirloin-commerce-page--cart .cart_totals h2 { margin:0 0 19px; font-size:1.55rem; }
.sirloin-commerce-main .woocommerce table.shop_table { margin:0; border:1px solid var(--sirloin-line); border-collapse:separate; border-spacing:0; border-radius:8px; background:#fff; }
.sirloin-commerce-main .woocommerce table.shop_table th { padding:15px 13px; border:0; border-bottom:1px solid var(--sirloin-line); color:var(--sirloin-muted); font:700 .76rem/1.4 var(--sirloin-sans); text-transform:uppercase; letter-spacing:.055em; }
.sirloin-commerce-main .woocommerce table.shop_table td { padding:17px 13px; border:0; border-bottom:1px solid #f0ece7; vertical-align:middle; }
.sirloin-commerce-main .woocommerce table.shop_table tr:last-child td { border-bottom:0; }
.sirloin-commerce-main .woocommerce table.shop_table img { width:78px; height:78px; object-fit:contain; border-radius:5px; background:var(--sirloin-wash); }
.sirloin-commerce-main .woocommerce table.shop_table .product-name a { color:var(--sirloin-ink); font-size:.96rem; font-weight:650; text-decoration:none; }
.sirloin-commerce-main .woocommerce table.shop_table .product-name a:hover { color:var(--sirloin-coral-dark); }
.sirloin-commerce-main .woocommerce .product-remove a.remove { display:grid; place-items:center; width:28px; height:28px; border:1px solid #e7dad6; border-radius:50%; color:#b75247 !important; text-decoration:none; background:#fff; font-size:1.15rem; }
.sirloin-commerce-main .woocommerce .product-remove a.remove:hover { background:#b75247 !important; color:#fff !important; }
.sirloin-commerce-page--cart .woocommerce-cart-form td.actions { padding:20px !important; }
.sirloin-commerce-page--cart .woocommerce-cart-form td.actions .coupon { display:flex; gap:8px; float:left; align-items:center; flex-wrap:wrap; }
.sirloin-commerce-page--cart .woocommerce-cart-form td.actions .coupon label { display:none; }
.sirloin-commerce-page--cart .woocommerce-cart-form td.actions .coupon input#coupon_code { float:none; margin:0; min-height:45px; width:155px; padding:8px 12px; border:1px solid #d9d4cc; border-radius:5px; background:#fff; font-size:.88rem; }
.sirloin-commerce-page--cart .woocommerce-cart-form td.actions .button { min-height:43px; padding:11px 15px !important; font-size:.78rem !important; }
.sirloin-commerce-page--cart .woocommerce .cart_totals table.shop_table { border:0; border-radius:0; }
.sirloin-commerce-page--cart .woocommerce .cart_totals table.shop_table th,
.sirloin-commerce-page--cart .woocommerce .cart_totals table.shop_table td { padding:13px 4px; border-bottom:1px solid var(--sirloin-line); text-transform:none; letter-spacing:0; font-size:.9rem; }
.sirloin-commerce-page--cart .woocommerce .cart_totals table.shop_table td { text-align:right; }
.sirloin-commerce-page--cart .cart_totals .order-total th, .sirloin-commerce-page--cart .cart_totals .order-total td { color:var(--sirloin-ink); font-size:1.1rem !important; font-weight:700; }
.sirloin-commerce-page--cart .wc-proceed-to-checkout { padding:22px 0 0; }
.sirloin-commerce-page--cart .wc-proceed-to-checkout a.checkout-button { display:flex; width:100%; margin:0; font-size:.93rem !important; }
.sirloin-commerce-page--cart .woocommerce-shipping-calculator { font-size:.85rem; }
.sirloin-commerce-page--cart .cart-empty { padding:28px; text-align:center; background:#fff; border:1px solid var(--sirloin-line); border-radius:8px; }
.sirloin-commerce-page--cart .return-to-shop { text-align:center; }

/* Cart Blocks: use the supported public classnames for theme styling. */
.sirloin-commerce-page--cart .wc-block-cart { font-family:var(--sirloin-sans); }
.sirloin-commerce-page--cart .wc-block-cart__main { min-width:0; }
.sirloin-commerce-page--cart .wc-block-cart__sidebar { min-width:0; padding:24px; border:1px solid var(--sirloin-line); border-radius:8px; background:#fff; }
.sirloin-commerce-page--cart .wc-block-cart__sidebar .wc-block-cart__totals-title { font-family:var(--sirloin-serif); font-size:1.45rem; }
.sirloin-commerce-main .wc-block-components-sidebar-layout { gap:25px; }
.sirloin-commerce-main .wc-block-components-product-name { color:var(--sirloin-ink); font-weight:650; text-decoration:none; }
.sirloin-commerce-main .wc-block-components-product-name:hover { color:var(--sirloin-coral-dark); }
.sirloin-commerce-main .wc-block-components-totals-item__value { font-weight:650; }
.sirloin-commerce-main .wc-block-components-totals-footer-item { border-top:1px solid var(--sirloin-line); }
.sirloin-commerce-main .wc-block-components-quantity-selector { border:1px solid #d8d1c9; border-radius:5px; }
.sirloin-commerce-main .wc-block-components-quantity-selector input { background:#fff; color:var(--sirloin-ink); }
.sirloin-commerce-main .wc-block-components-panel__button, .sirloin-commerce-main .wc-block-components-totals-coupon-link { color:var(--sirloin-teal-dark); }
.sirloin-commerce-main .wc-block-components-totals-coupon a { color:var(--sirloin-teal-dark); }
.sirloin-commerce-main .wc-block-cart__submit-container { background:#fff; }
.sirloin-commerce-main .wc-block-cart__submit-container::before { color:rgba(27,22,18,.12); }

/* Classic checkout: details + separate order summary at desktop widths. */
.sirloin-commerce-page--checkout .woocommerce form.checkout { display:grid; grid-template-columns:minmax(0, 1.35fr) minmax(300px, .83fr); grid-template-rows:min-content minmax(0,1fr); gap:0 32px; align-items:start; }
.sirloin-commerce-page--checkout .woocommerce form.checkout > #customer_details { grid-column:1; grid-row:1 / span 2; width:100%; min-width:0; }
.sirloin-commerce-page--checkout .woocommerce form.checkout > #order_review_heading { grid-column:2; grid-row:1; margin:0; padding:25px 25px 15px; background:#fff; border:1px solid var(--sirloin-line); border-bottom:0; border-radius:9px 9px 0 0; font-family:var(--sirloin-serif); font-size:1.5rem; }
.sirloin-commerce-page--checkout .woocommerce form.checkout > #order_review { grid-column:2; grid-row:2; min-width:0; margin:0; padding:0 25px 25px; background:#fff; border:1px solid var(--sirloin-line); border-top:0; border-radius:0 0 9px 9px; }
.sirloin-commerce-page--checkout .woocommerce form.checkout #customer_details .col-1,
.sirloin-commerce-page--checkout .woocommerce form.checkout #customer_details .col-2 { float:none; width:100%; margin:0 0 23px; padding:25px; background:#fff; border:1px solid var(--sirloin-line); border-radius:9px; }
.sirloin-commerce-page--checkout .woocommerce form.checkout .woocommerce-billing-fields > h3,
.sirloin-commerce-page--checkout .woocommerce form.checkout .woocommerce-shipping-fields > h3,
.sirloin-commerce-page--checkout .woocommerce form.checkout .woocommerce-additional-fields > h3 { margin:0 0 22px; font:400 1.6rem/1.2 var(--sirloin-serif); }
.sirloin-commerce-page--checkout .woocommerce form.checkout #order_review table.shop_table { border:0; }
.sirloin-commerce-page--checkout .woocommerce form.checkout #order_review table.shop_table th,
.sirloin-commerce-page--checkout .woocommerce form.checkout #order_review table.shop_table td { padding:14px 5px; }
.sirloin-commerce-page--checkout .woocommerce #payment { background:#f8f6f2; border-radius:7px; margin-top:20px; }
.sirloin-commerce-page--checkout .woocommerce #payment ul.payment_methods { padding:17px; border-bottom:1px solid var(--sirloin-line); }
.sirloin-commerce-page--checkout .woocommerce #payment div.payment_box { margin:10px 0 15px; border-radius:5px; background:#ede9e3; }
.sirloin-commerce-page--checkout .woocommerce #payment div.payment_box::before { border-bottom-color:#ede9e3; }
.sirloin-commerce-page--checkout .woocommerce #payment div.form-row { padding:17px; }
.sirloin-commerce-page--checkout .woocommerce #payment #place_order { width:100%; float:none; margin:12px 0 0; }
.sirloin-commerce-page--checkout .woocommerce-terms-and-conditions-wrapper { font-size:.85rem; line-height:1.7; }
.sirloin-commerce-page--checkout .woocommerce-form-coupon-toggle,
.sirloin-commerce-page--checkout .woocommerce-form-login-toggle { margin:0 0 14px; }
.sirloin-commerce-page--checkout .woocommerce form.checkout_coupon,
.sirloin-commerce-page--checkout .woocommerce form.login { margin:0 0 22px; padding:24px; border:1px solid var(--sirloin-line); border-radius:8px; background:#fff; }
.sirloin-commerce-page--checkout .woocommerce form.checkout_coupon .form-row { width:auto; float:none; }

/* WooCommerce checkout blocks: default blocks kept intact. */
.sirloin-commerce-page--checkout .wc-block-checkout { font-family:var(--sirloin-sans); }
.sirloin-commerce-page--checkout .wc-block-checkout__main { min-width:0; }
.sirloin-commerce-page--checkout .wc-block-checkout__sidebar { padding:23px; border:1px solid var(--sirloin-line); border-radius:8px; background:#fff; }
.sirloin-commerce-page--checkout .wc-block-components-checkout-step { padding:23px 24px; margin:0 0 17px; border:1px solid var(--sirloin-line); border-radius:8px; background:#fff; }
.sirloin-commerce-page--checkout .wc-block-components-checkout-step__heading { margin:0 0 12px; }
.sirloin-commerce-page--checkout .wc-block-components-checkout-step__title { font:400 1.55rem/1.2 var(--sirloin-serif); }
.sirloin-commerce-page--checkout .wc-block-components-order-summary { border-top:1px solid var(--sirloin-line); }
.sirloin-commerce-page--checkout .wc-block-checkout__actions_row { align-items:center; gap:12px; }
.sirloin-commerce-main .wc-block-components-address-form__address_2-toggle { color:var(--sirloin-teal-dark); }
.sirloin-commerce-main .wc-block-components-order-summary-item__quantity { border-color:var(--sirloin-teal-dark); background:var(--sirloin-wash); color:var(--sirloin-ink); }
.sirloin-commerce-main .wc-block-components-radio-control__input { accent-color:var(--sirloin-teal-dark); }

/* My account: polished native account navigation and forms. */
.sirloin-commerce-page--account .woocommerce-MyAccount-navigation { float:left; width:23%; padding:12px; border:1px solid var(--sirloin-line); border-radius:8px; background:#fff; }
.sirloin-commerce-page--account .woocommerce-MyAccount-navigation ul { list-style:none; margin:0; padding:0; overflow:visible; }
.sirloin-commerce-page--account .woocommerce-MyAccount-navigation li { margin:0; }
.sirloin-commerce-page--account .woocommerce-MyAccount-navigation a { display:block; padding:13px 14px; border-radius:5px; color:var(--sirloin-ink); text-decoration:none; font-size:.88rem; font-weight:600; }
.sirloin-commerce-page--account .woocommerce-MyAccount-navigation a:hover,
.sirloin-commerce-page--account .woocommerce-MyAccount-navigation li.is-active a { background:var(--sirloin-wash); color:var(--sirloin-teal-dark); }
.sirloin-commerce-page--account .woocommerce-MyAccount-content { float:right; width:73%; padding:27px; border:1px solid var(--sirloin-line); border-radius:8px; background:#fff; }
.sirloin-commerce-page--account .woocommerce form.login,
.sirloin-commerce-page--account .woocommerce form.register,
.sirloin-commerce-page--account .woocommerce form.lost_reset_password { max-width:600px; margin:0 auto; padding:27px; border:1px solid var(--sirloin-line); border-radius:9px; background:#fff; }
.sirloin-commerce-page--account .woocommerce .woocommerce-Addresses { margin-top:24px; }
.sirloin-commerce-page--account .woocommerce-account-fields { max-width:700px; }

/* Thank you / payment / generic Woo tables. */
.sirloin-commerce-page--checkout .woocommerce-order,
.sirloin-commerce-page--checkout .woocommerce-order-pay { max-width:940px; padding:25px; border:1px solid var(--sirloin-line); border-radius:9px; background:#fff; }
.sirloin-commerce-page--checkout .woocommerce-order-overview { display:flex; flex-wrap:wrap; gap:18px; padding:18px !important; border:1px solid var(--sirloin-line); border-radius:6px; background:var(--sirloin-wash); }
.sirloin-commerce-page--checkout .woocommerce-order-overview li { border-right:0; margin:0; padding:0; }
.sirloin-commerce-main .woocommerce .woocommerce-customer-details address { padding:18px; border:1px solid var(--sirloin-line); border-radius:6px; background:#fff; }
.sirloin-commerce-main .woocommerce-info a, .sirloin-commerce-main .woocommerce-message a { color:var(--sirloin-teal-dark); }

/* Tablet, mobile and WC Blocks responsive fallbacks. */
@media (max-width:1100px) {
    .sirloin-commerce-main ul.products, .sirloin-commerce-main .woocommerce ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .sirloin-commerce-page--checkout .woocommerce form.checkout { gap:0 22px; grid-template-columns:minmax(0,1.1fr) minmax(285px,.9fr); }
}
@media (max-width:950px) {
    .sirloin-commerce-shell { width:min(calc(100% - 48px), 1220px); padding:35px 0 66px; }
    .sirloin-commerce-page--cart .sirloin-commerce-content > .woocommerce { grid-template-columns:minmax(0,1fr); }
    .sirloin-commerce-page--cart form.woocommerce-cart-form, .sirloin-commerce-page--cart .cart-collaterals { grid-column:1; }
    .sirloin-commerce-page--cart .woocommerce .cart-collaterals .cart_totals { position:static; }
    .sirloin-commerce-page--checkout .woocommerce form.checkout { display:block; }
    .sirloin-commerce-page--checkout .woocommerce form.checkout > #order_review_heading { margin-top:12px; }
    .sirloin-commerce-page--checkout .woocommerce form.checkout > #order_review { margin-bottom:24px; }
}
@media (max-width:740px) {
    .sirloin-header .sirloin-header-cart { margin-left:auto; margin-right:3px; }
    .sirloin-header .sirloin-cart-text { display:none; }
    .sirloin-header .sirloin-cart-link { gap:5px; padding:8px 0; }
    .sirloin-commerce-main ul.products, .sirloin-commerce-main .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
    .sirloin-commerce-main .woocommerce div.product .product_title { font-size:clamp(2rem,8vw,3rem); }
    .sirloin-commerce-page--account .woocommerce-MyAccount-navigation, .sirloin-commerce-page--account .woocommerce-MyAccount-content { float:none; width:100%; margin:0 0 18px; }
    .sirloin-commerce-page--cart .woocommerce-cart-form td.actions .coupon { float:none; }
    .sirloin-commerce-page--cart .woocommerce-cart-form td.actions > button[name="update_cart"] { margin:12px 0 0; width:100%; }
    .sirloin-checkout-steps { margin-bottom:32px; }
}
/* Independent classic-cart mobile layout, including older WooCommerce CSS. */
@media (max-width:640px) {
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table { display:block; width:100%; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table thead { display:none; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table tbody { display:block; width:100%; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table tr.cart_item {
        display:grid; grid-template-columns:76px minmax(0,1fr); gap:0 13px;
        position:relative; padding:16px 13px; border-bottom:1px solid var(--sirloin-line);
    }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table tr.cart_item td {
        display:block; float:none; min-width:0; width:auto; padding:5px 0 !important;
        border:0; text-align:left;
    }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-remove {
        position:absolute; top:12px; right:12px; z-index:1; width:auto;
    }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-remove::before { display:none; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-thumbnail {
        grid-column:1; grid-row:1 / span 4; padding-top:0 !important;
    }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-thumbnail::before { display:none; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-thumbnail img { width:76px; height:76px; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-name {
        grid-column:2; grid-row:1; padding:0 28px 9px 0 !important;
    }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-name::before { display:none; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table tr.cart_item td.product-price,
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table tr.cart_item td.product-quantity,
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table tr.cart_item td.product-subtotal {
        grid-column:2; display:flex; align-items:center; justify-content:space-between;
        width:100%; gap:10px; text-align:right;
    }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-price::before,
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-quantity::before,
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-subtotal::before {
        content:attr(data-title); display:inline-block; float:none; color:var(--sirloin-muted); font-size:.8rem; font-weight:500;
    }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.product-subtotal { font-weight:700; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table tr:not(.cart_item) { display:block; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.actions { display:block; width:100%; min-width:0; }
    .sirloin-commerce-page--cart .woocommerce-cart-form table.shop_table td.actions::before { display:none; }
    .sirloin-commerce-page--cart .woocommerce-cart-form td.actions .coupon { display:flex; float:none; width:100%; }
    .sirloin-commerce-page--cart .woocommerce-cart-form td.actions .coupon input#coupon_code { flex:1; min-width:0; }
    .sirloin-commerce-page--cart .woocommerce-cart-form td.actions > button[name="update_cart"] { display:block; float:none !important; width:100%; margin:10px 0 0; }
    .sirloin-commerce-page--cart .woocommerce .cart_totals table.shop_table { width:100%; table-layout:fixed; }
    .sirloin-commerce-page--cart .woocommerce .cart_totals table.shop_table th { width:36%; }
    .sirloin-commerce-page--cart .woocommerce .cart_totals table.shop_table td { width:64%; overflow-wrap:anywhere; }
}

@media (max-width:540px) {
    .sirloin-commerce-shell { width:calc(100% - 32px); padding:26px 0 53px; }
    .sirloin-commerce-main h1, .sirloin-commerce-main .page-title, .sirloin-commerce-main .woocommerce-products-header__title { font-size:clamp(2rem,10vw,2.7rem); }
    .sirloin-commerce-main .woocommerce-products-header { padding-bottom:8px; }
    .sirloin-commerce-main .sirloin-shop-toolbar { display:block; }
    .sirloin-commerce-main .woocommerce-result-count { margin:0 0 12px; }
    .sirloin-commerce-main .woocommerce-ordering select { width:100%; }
    .sirloin-commerce-main ul.products li.product .woocommerce-loop-product__title { margin:0 10px 8px; font-size:.9rem; }
    .sirloin-commerce-main ul.products li.product .price { margin:0 10px 11px; font-size:.9rem; }
    .sirloin-commerce-main ul.products li.product .button { margin:auto 10px 0 !important; width:calc(100% - 20px); padding:10px 7px !important; min-height:44px; font-size:.75rem !important; }
    .sirloin-commerce-main ul.products li.product a img { padding:5px; margin-bottom:10px; }
    .sirloin-commerce-main .woocommerce .onsale { top:6px !important; left:6px !important; }
    .sirloin-commerce-page__header { margin-bottom:23px; }
    .sirloin-checkout-steps { gap:6px; }
    .sirloin-checkout-steps__step { gap:5px; font-size:.75rem; }
    .sirloin-checkout-steps__number { width:24px; height:24px; }
    .sirloin-checkout-steps__line { width:16px; }
    .sirloin-commerce-page--cart .woocommerce .cart-collaterals .cart_totals,
    .sirloin-commerce-page--checkout .wc-block-checkout__sidebar,
    .sirloin-commerce-page--checkout .woocommerce form.checkout #customer_details .col-1,
    .sirloin-commerce-page--checkout .woocommerce form.checkout #customer_details .col-2,
    .sirloin-commerce-page--checkout .woocommerce form.checkout > #order_review,
    .sirloin-commerce-page--checkout .wc-block-components-checkout-step { padding:17px; }
    .sirloin-commerce-page--checkout .woocommerce form.checkout > #order_review_heading { padding:19px 17px 8px; }
    .sirloin-commerce-main .woocommerce table.shop_table th,
    .sirloin-commerce-main .woocommerce table.shop_table td { padding:12px 8px; }
    .sirloin-commerce-page--cart .woocommerce table.shop_table_responsive tr td,
    .sirloin-commerce-page--cart .woocommerce-page table.shop_table_responsive tr td { text-align:right; }
    .sirloin-commerce-page--cart .woocommerce table.shop_table_responsive tr td.product-name,
    .sirloin-commerce-page--cart .woocommerce table.shop_table_responsive tr td.product-thumbnail { text-align:left; }
    .sirloin-commerce-page--cart .woocommerce table.shop_table_responsive tr td.product-thumbnail { display:block; }
    .sirloin-commerce-page--cart .woocommerce table.shop_table_responsive tr td.product-remove { text-align:right; }
    .sirloin-commerce-page--cart .woocommerce-cart-form td.actions .coupon input#coupon_code { flex:1; min-width:120px; }
    .sirloin-commerce-page--account .woocommerce-MyAccount-content { padding:18px; }
    .sirloin-commerce-main .wc-block-components-sidebar-layout { display:block; }
    .sirloin-commerce-main .wc-block-components-sidebar-layout > * { width:100%; }
    .sirloin-commerce-page--cart .wc-block-cart__sidebar, .sirloin-commerce-page--checkout .wc-block-checkout__sidebar { margin-top:20px; }
}
@media (prefers-reduced-motion:reduce) {
    .sirloin-commerce-main .button, .sirloin-commerce-main ul.products li.product,
    .sirloin-header .sirloin-cart-link svg { transition:none !important; transform:none !important; }
}


/* Slide-out cart: align the name, variation labels and total on a single
   product-information rail. The WooCommerce mini-cart HTML and AJAX fragments
   are left intact. Keep these selectors self-contained, away from cart pages. */
.sirloin-cart-drawer[hidden] { display:none !important; }
.sirloin-cart-drawer { position:fixed; inset:0; z-index:100100; display:block; font-family:var(--sirloin-sans); }
.sirloin-cart-drawer__backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; padding:0; background:rgba(15,20,20,.54); cursor:pointer; }
.sirloin-cart-drawer__panel {
    position:absolute; top:0; right:0; bottom:0; display:flex; flex-direction:column;
    box-sizing:border-box; width:min(100%,460px); max-width:100%; height:100%;
    background:#fff; color:var(--sirloin-ink); box-shadow:-16px 0 42px rgba(0,0,0,.14);
    animation:sirloin-cart-enter .23s ease-out; overflow:hidden;
}
.sirloin-cart-drawer__header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:21px 26px; border-bottom:1px solid #e9e9e9; }
.sirloin-cart-drawer__header h2 { font:400 clamp(1.6rem,3vw,1.9rem)/1.15 var(--sirloin-serif); margin:0; color:var(--sirloin-ink); }
.sirloin-cart-drawer__close { display:grid; place-items:center; flex:none; width:44px; height:44px; border:1px solid #ddd; border-radius:50%; background:#fff; color:var(--sirloin-ink); cursor:pointer; }
.sirloin-cart-drawer__close:hover { border-color:var(--sirloin-coral); color:var(--sirloin-coral-dark); }
.sirloin-cart-drawer__scroll { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; padding:18px 26px 22px; }
.sirloin-cart-drawer__scroll .widget_shopping_cart_content { width:100%; }
.sirloin-cart-drawer .woocommerce-mini-cart { display:block; list-style:none; padding:0; margin:0 0 20px; }
.sirloin-cart-drawer .woocommerce-mini-cart-item {
    position:relative; display:grid !important; box-sizing:border-box;
    grid-template-columns:112px minmax(0,1fr); column-gap:16px; row-gap:6px;
    min-height:148px; align-content:start; width:100%;
    padding:18px 38px 18px 0 !important; margin:0 !important;
    border-bottom:1px solid #ededed; list-style:none;
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > a:not(.remove) {
    display:block; grid-column:2; min-width:0; min-height:0; padding:0 !important; margin:0;
    font:700 1rem/1.4 var(--sirloin-sans); color:var(--sirloin-ink); text-decoration:none;
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > a:not(.remove):hover { color:var(--sirloin-coral-dark); }
/* WooCommerce normally floats its 32px mini-cart image inside the name link.
   Position the image in the product's image rail, without moving product text. */
.sirloin-cart-drawer .widget_shopping_cart_content ul.woocommerce-mini-cart li.woocommerce-mini-cart-item > a img,
.sirloin-cart-drawer .widget_shopping_cart_content ul.cart_list li.mini_cart_item > a img {
    position:absolute !important; top:18px; left:0;
    float:none !important; display:block !important;
    box-sizing:border-box; width:112px !important; min-width:112px; max-width:112px !important;
    height:112px !important; min-height:112px; max-height:112px;
    object-fit:contain; padding:5px; margin:0 !important; border:1px solid #e9e9e9;
    border-radius:6px; background:#fff; box-shadow:none;
}
/* Variation descriptions from WooCommerce are dt/dd pairs. Its default
   float, left border and paragraph margins caused the uneven gaps. */
.sirloin-cart-drawer .woocommerce-mini-cart-item > dl.variation {
    grid-column:2; display:grid !important; grid-template-columns:max-content minmax(0,1fr);
    gap:3px 7px; align-items:start; justify-items:start; grid-auto-flow:row;
    min-width:0; width:100%; text-align:left !important;
    padding:0 !important; margin:0 !important; border:0 !important;
    background:none; font:400 .86rem/1.4 var(--sirloin-sans);
    color:var(--sirloin-muted);
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > dl.variation > dt,
.sirloin-cart-drawer .woocommerce-mini-cart-item > dl.variation > dd {
    display:block !important; float:none !important; clear:none !important; position:static;
    width:auto; min-width:0; padding:0 !important; margin:0 !important;
    border:0 !important; font:inherit; line-height:1.4;
    text-align:left !important; justify-self:start !important; align-self:start !important;
}
/* Explicit grid columns stop plugin/theme alignment rules pushing Format or
   Size over the right-hand side of the mini-cart. Keep native Woo dl/dt/dd. */
.sirloin-cart-drawer .woocommerce-mini-cart-item > dl.variation > dt {
    grid-column:1 !important; text-align:left !important;
    font-weight:700; color:var(--sirloin-ink);
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > dl.variation > dd {
    grid-column:2 !important; margin-inline-start:0 !important;
    text-align:left !important;
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > dl.variation > dd p {
    display:inline; padding:0; margin:0 !important; font:inherit;
    line-height:inherit; overflow-wrap:anywhere; text-align:left !important;
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > .quantity {
    grid-column:2; display:block !important; float:none !important; width:auto;
    margin:2px 0 0 !important; padding:0 !important; border:0 !important;
    font:500 .88rem/1.4 var(--sirloin-sans); color:var(--sirloin-muted);
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > a.remove {
    position:absolute; top:18px; right:0; display:grid; place-items:center;
    box-sizing:border-box; width:29px; height:29px; padding:0; margin:0;
    border:1px solid #e3e3e3; border-radius:50%; background:#fff;
    color:#b5534a !important; text-decoration:none; font:400 21px/1 var(--sirloin-sans);
}
.sirloin-cart-drawer .woocommerce-mini-cart-item > a.remove:hover { color:#fff !important; background:#b5534a; }
.sirloin-cart-drawer .woocommerce-mini-cart__total { display:flex; justify-content:space-between; gap:10px; align-items:center; padding:18px 0; margin:0; border-top:0; font-size:1.03rem; }
.sirloin-cart-drawer .woocommerce-mini-cart__buttons { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0; }
.sirloin-cart-drawer .woocommerce-mini-cart__buttons .button {
    box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center;
    min-height:48px; padding:12px 13px; margin:0; border:1px solid var(--sirloin-teal-dark);
    border-radius:5px; background:#fff; color:var(--sirloin-teal-dark); font:700 .84rem/1.4 var(--sirloin-sans);
    text-align:center; text-decoration:none; transition:background .15s,color .15s;
}
.sirloin-cart-drawer .woocommerce-mini-cart__buttons .button.checkout { background:var(--sirloin-coral); border-color:var(--sirloin-coral); color:#fff; }
.sirloin-cart-drawer .woocommerce-mini-cart__buttons .button:hover { background:var(--sirloin-teal-dark); color:#fff; }
.sirloin-cart-drawer .woocommerce-mini-cart__buttons .button.checkout:hover { background:var(--sirloin-coral-dark); }
.sirloin-cart-drawer .woocommerce-mini-cart__empty-message { font-size:1rem; color:var(--sirloin-muted); margin:20px 0; text-align:center; }
.sirloin-cart-drawer__footer { padding:16px 26px max(16px,env(safe-area-inset-bottom)); border-top:1px solid #e9e9e9; text-align:center; }
.sirloin-cart-drawer__continue { padding:12px; width:100%; min-height:44px; border:0; background:#fff; color:var(--sirloin-ink); font:600 .91rem var(--sirloin-sans); text-decoration:underline; cursor:pointer; }
.sirloin-cart-drawer button:focus-visible, .sirloin-cart-drawer a:focus-visible { outline:3px solid var(--sirloin-teal); outline-offset:3px; }
body.sirloin-cart-is-open { overflow:hidden; }
@keyframes sirloin-cart-enter { from {transform:translateX(24px);opacity:.9;} to {transform:translateX(0);opacity:1;} }

@media(max-width:430px) {
    .sirloin-cart-drawer__scroll { padding:12px 16px 18px; }
    .sirloin-cart-drawer__header { padding:16px; }
    .sirloin-cart-drawer .woocommerce-mini-cart-item {
        grid-template-columns:96px minmax(0,1fr); column-gap:12px;
        min-height:128px; padding:15px 32px 15px 0 !important;
    }
    .sirloin-cart-drawer .widget_shopping_cart_content ul.woocommerce-mini-cart li.woocommerce-mini-cart-item > a img,
    .sirloin-cart-drawer .widget_shopping_cart_content ul.cart_list li.mini_cart_item > a img {
        width:96px !important; min-width:96px; max-width:96px !important;
        height:96px !important; min-height:96px; max-height:96px; top:15px;
    }
    .sirloin-cart-drawer .woocommerce-mini-cart-item > a.remove { top:15px; }
    .sirloin-cart-drawer .woocommerce-mini-cart__buttons { gap:7px; }
    .sirloin-cart-drawer .woocommerce-mini-cart__buttons .button { padding:10px 7px; font-size:.78rem; }
}

/* WooCommerce product details: match the existing Sirloin product/Featured Card
   format component, even when output inside a third-party add-to-cart form. */
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats-heading,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-list {
    font-family:var(--sirloin-sans) !important;
    letter-spacing:normal;
}
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats {
    box-sizing:border-box; flex:1 1 100%; width:100%; min-width:0;
}
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats-heading {
    display:flex !important; flex-direction:column !important; align-items:flex-start;
    gap:9px; flex:1 1 100%; width:100%; margin:0 0 18px;
}
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats-heading .sirloin-product-formats-kicker {
    display:block !important; flex:none; width:100%; margin:0; padding:0;
    font:700 .74rem/1.4 var(--sirloin-sans) !important; letter-spacing:.13em;
    text-transform:uppercase; color:var(--sirloin-teal-dark);
}
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats-heading p {
    display:block !important; clear:both; width:100%; margin:0 !important;
    font:400 .94rem/1.6 var(--sirloin-sans) !important; letter-spacing:normal;
    color:var(--sirloin-muted);
}
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-item,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-item p,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-item label,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-item strong,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-item span,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-item button,
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-format-item input {
    font-family:var(--sirloin-sans) !important;
}
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats--detailed .sirloin-product-format-title-row strong {
    font-weight:700; font-size:1rem; line-height:1.35;
}
.sirloin-commerce-main .sirloin-product-purchase .sirloin-product-formats--detailed .sirloin-product-format-item > p {
    font-size:.89rem; line-height:1.55;
}

/* --------------------------------------------------------------------------
   v3.5.5 – typography for the *actual* WooCommerce purchase options.

   Some product-option/format extensions render their own HTML beneath the
   WooCommerce summary hook. The .sirloin-product-formats element elsewhere in
   this theme belongs to Featured Cards and is NOT the checkbox/order-summary
   widget shown on WooCommerce products. Earlier rules for that element could
   not correct the widget's monospaced text.

   Enforce the site's established sans face within the purchase summary, even
   where an extension supplies monospace font declarations on its own rows or
   inline text. Leave gallery, page heading, cart drawer, media, and icon-font
   glyphs alone. The !important is intentional: WooCommerce add-ons can output
   font-family inline or from higher-specificity plugin styles.
   -------------------------------------------------------------------------- */
.sirloin-commerce-main .sirloin-product .summary.entry-summary {
    font-family:var(--sirloin-sans) !important;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary
:is(form, fieldset, legend, section, article, div, p, span, label, small,
    strong, em, b, ul, ol, li, dl, dt, dd, table, thead, tbody, tfoot,
    tr, th, td, input, select, textarea, button, output, pre, code)
:not(svg):not(.dashicons):not(.fa):not(.fab):not(.far):not(.fas):not(.fal)
:not(.material-icons):not(.material-symbols-outlined):not(.material-symbols-rounded)
:not([class*="icon-"]):not([class*="-icon"]):not([class*="Icon"]) {
    font-family:var(--sirloin-sans) !important;
}
/* A distinct heading face is an intentional Sirloin design choice; product
   title stays serif while all format headings and order-summary text stay sans. */
.sirloin-commerce-main .sirloin-product .summary.entry-summary .product_title {
    font-family:var(--sirloin-serif) !important;
}


/* --------------------------------------------------------------------------
   v3.5.8 — Product format pricing: same visual vocabulary as the Featured
   Cards price section. Only elements tagged in the product summary by the
   progressive-enhancement helper are affected. WooCommerce option controls,
   checked state and pricing calculations are untouched.
   -------------------------------------------------------------------------- */
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-heading {
    display:block !important;
    width:100%;
    box-sizing:border-box;
    clear:both;
    margin:clamp(26px,3.5vw,38px) 0 0 !important;
    padding:clamp(24px,3vw,32px) 0 0 !important;
    border-top:1px solid var(--sirloin-line);
    color:var(--sirloin-ink);
    font-family:var(--sirloin-serif) !important;
    font-size:clamp(1.8rem,2.6vw,2.15rem) !important;
    font-weight:400 !important;
    letter-spacing:-.025em !important;
    line-height:1.18 !important;
    text-align:left;
    text-transform:none !important;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-heading::after {
    content:""; display:block; width:43px; height:3px;
    margin:16px 0 0; background:var(--sirloin-coral);
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-intro,
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-heading + p {
    margin:12px 0 10px !important;
    color:var(--sirloin-muted);
    font-family:var(--sirloin-sans) !important;
    font-size:.95rem !important;
    line-height:1.6 !important;
    letter-spacing:normal !important;
}

/* v3.5.12: The heading and introductory sentence can be produced by the
   product description, while the pricing cards begin in the *next* sibling,
   WooCommerce's cart form. Earlier changes to the p margin alone could not
   collapse the description's bottom margin + form's top margin. */
.sirloin-commerce-main .sirloin-product-purchase .summary.sirloin-wc-has-formats
.sirloin-wc-description-has-formats {
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}
.sirloin-commerce-main .sirloin-product-purchase .summary.sirloin-wc-has-formats
.sirloin-wc-description-has-formats > :last-child {
    margin-bottom:0 !important;
}
.sirloin-commerce-main .sirloin-product-purchase .summary.sirloin-wc-has-formats
.sirloin-wc-description-has-formats + form.cart {
    margin-top:12px !important;
}
/* Some product extensions emit the options form inside a lightweight wrapper;
   keep the beginning of that wrapper close to the description as well. */
.sirloin-commerce-main .sirloin-product-purchase .summary.sirloin-wc-has-formats
.sirloin-wc-description-has-formats + :has(> form.cart) {
    margin-top:12px !important;
}
/* Remove empty or <br>-only paragraphs via JS; :empty is a CSS fallback
   that also works before JavaScript loads. */
.sirloin-commerce-main .sirloin-product .summary.entry-summary
p.sirloin-wc-format-intro:empty {
    display:none !important;
    margin:0 !important;
    padding:0 !important;
}
/* In the case that the intro is directly inside a form header, do not add a
   second large spacing rule before the first format card. */
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-formats {
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-formats + .sirloin-wc-format-group {
    margin-top:0 !important;
}

.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-group {
    min-width:0;
    box-sizing:border-box;
    margin:0 0 13px !important;
    padding:clamp(17px,2.4vw,24px) !important;
    border:1px solid var(--sirloin-line) !important;
    border-radius:7px;
    background:var(--sirloin-paper);
    box-shadow:0 1px 3px rgba(38,32,28,.025);
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-group-title {
    display:block;
    margin:0 0 7px !important;
    padding:0;
    color:var(--sirloin-ink) !important;
    font-family:var(--sirloin-serif) !important;
    font-size:clamp(1.22rem,2vw,1.45rem) !important;
    font-weight:400 !important;
    letter-spacing:-.012em !important;
    line-height:1.3 !important;
    text-transform:none;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-group-title + p {
    margin:0 0 14px !important;
    color:var(--sirloin-muted) !important;
    font-size:.86rem !important;
    line-height:1.55 !important;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option {
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    column-gap:12px;
    row-gap:7px;
    box-sizing:border-box;
    min-width:0;
    margin:0;
    padding:12px 11px;
    border:1px solid transparent;
    border-radius:5px;
    background:var(--sirloin-wash);
    transition:background-color .15s ease,border-color .15s ease;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option + .sirloin-wc-format-option {
    margin-top:7px;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option.is-selected {
    border-color:#b4d6cf;
    background:#f0f8f5;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option:focus-within {
    border-color:var(--sirloin-teal);
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option label,
.sirloin-commerce-main .sirloin-product .summary.entry-summary label.sirloin-wc-format-option {
    color:var(--sirloin-ink);
    font-family:var(--sirloin-sans) !important;
    font-size:.92rem !important;
    line-height:1.5;
    flex:1 1 auto;
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option input[type="checkbox"],
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option input[type="radio"] {
    accent-color:var(--sirloin-teal-dark);
}
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-amount {
    color:var(--sirloin-coral-dark) !important;
    font:700 .92rem/1.3 var(--sirloin-sans) !important;
    white-space:nowrap;
    margin-left:auto;
    text-align:right;
    letter-spacing:0 !important;
}
/* Keep variable product quantity controls usable inside a pricing card. */
.sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-group .quantity {
    max-width:100%;
}
@media (max-width:540px) {
    .sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-group {
        padding:17px 14px !important;
    }
    .sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option {
        padding:11px 8px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .sirloin-commerce-main .sirloin-product .summary.entry-summary .sirloin-wc-format-option {
        transition:none;
    }
}

/* ========================================================================== 
   v3.6.0 — full-width purchase formats below the two-column artwork overview
   ========================================================================== */
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-layout {
    margin-bottom:0 !important;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing {
    display:block; width:100%; max-width:100%; min-width:0;
    box-sizing:border-box; clear:both;
    padding:clamp(26px,3.7vw,42px) 0 0;
    margin:clamp(25px,3.5vw,38px) 0 0;
    border-top:1px solid var(--sirloin-line);
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-product-formats-copy {
    margin:0; padding:0;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-heading {
    display:block !important; width:100%; clear:both;
    margin:0 !important; padding:0 !important; border:0 !important;
    font:400 clamp(1.9rem,3vw,2.6rem)/1.17 var(--sirloin-serif) !important;
    letter-spacing:-.025em !important; color:var(--sirloin-ink);
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-heading::after {
    content:""; display:block; width:50px; height:3px;
    background:var(--sirloin-coral); margin:15px 0 0;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-intro,
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-heading + p {
    margin:12px 0 15px !important; padding:0 !important;
    color:var(--sirloin-muted); font:400 1rem/1.55 var(--sirloin-sans) !important;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-formats { margin:0 0 14px !important; padding:0 !important; }
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-formats > :last-child { margin-bottom:0 !important; }
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-product-options {
    display:block; width:100% !important; max-width:100% !important; min-width:0;
    float:none !important; clear:both !important;
    padding:0 !important; margin:0 !important;
    font-family:var(--sirloin-sans) !important;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-product-options form.cart {
    display:flex; flex-flow:row wrap; align-items:flex-start; gap:12px;
    box-sizing:border-box; width:100% !important; max-width:100% !important;
    margin:0 !important; padding:0 !important;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-product-options form.cart > :is(div,section,fieldset,table) {
    max-width:100%; min-width:0;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-product-options form.cart > :is(.third-party-options,.product-options,.product-formats,.variations,.single_variation_wrap) {
    flex:1 1 100%; width:100%;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-group {
    width:100%; max-width:100%; margin:0 0 16px !important;
    padding:clamp(20px,3vw,30px) !important;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-group-title {
    font-family:var(--sirloin-serif) !important;
    font-size:clamp(1.3rem,2vw,1.7rem) !important;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-option {
    max-width:100%; gap:10px 16px; padding:13px 16px;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-amount {
    color:var(--sirloin-coral-dark) !important;
}
/* Native variable/simple product options also sit in the full-width region. */
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .variations {
    width:100%; border:0; margin:0 0 14px;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .variations th,
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .variations td {
    padding:7px 12px 7px 0; border:0;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .variations select {
    width:100%; max-width:420px; min-height:48px;
    border:1px solid var(--sirloin-line); border-radius:5px;
    padding:10px 14px; background:#fff;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .single_variation_wrap { width:100%; }
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .woocommerce-variation-add-to-cart {
    display:flex; flex-wrap:wrap; align-items:center; gap:12px;
}
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .quantity { max-width:100%; }
.sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing form.cart .single_add_to_cart_button {
    min-width:180px;
}
@media(max-width:740px) {
    .sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing { padding-top:23px; margin-top:25px; }
    .sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-group { padding:17px 15px !important; }
    .sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-option { padding:11px 9px; }
}

/* Side-by-side format cards when the extension supplies sibling groups. */
@media(min-width:741px) {
    .sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-grid {
        display:grid !important;
        grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
        align-items:start; gap:16px;
    }
    .sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-grid > .sirloin-wc-format-group {
        width:100%; height:100%; margin:0 !important;
    }
    .sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-grid > .sirloin-wc-format-group--canvas-print,
    .sirloin-commerce-main .sirloin-product--wide-formats .sirloin-product-pricing .sirloin-wc-format-grid > :not(.sirloin-wc-format-group) {
        grid-column:1 / -1;
    }
}

/* v3.6.1: support options inserted from third-party callbacks after rendering.
   This is deliberately independent of the gallery/overview template. */
body.single-product .sirloin-product-pricing {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    box-sizing:border-box; clear:both !important;
}
body.single-product .woocommerce div.product:not(.sirloin-product) > .sirloin-product-pricing {
    grid-column:1 / -1 !important;
    grid-row:auto !important;
    border-top:1px solid var(--sirloin-line);
    padding-top:30px;
}
body.single-product .sirloin-product-pricing .sirloin-wc-format-heading {
    display:block !important; clear:both;
    margin:0 0 15px !important;
    font:400 clamp(1.9rem,3vw,2.6rem)/1.17 var(--sirloin-serif) !important;
    letter-spacing:-.025em !important;
}
body.single-product .sirloin-product-pricing .sirloin-wc-format-heading:after {
    content:''; display:block; width:50px; height:3px;
    background:var(--sirloin-coral); margin:15px 0 0;
}
body.single-product .sirloin-product-pricing .sirloin-product-options,
body.single-product .sirloin-product-pricing .sirloin-product-formats-copy {
    width:100% !important; max-width:100% !important; float:none !important;
    box-sizing:border-box; min-width:0 !important;
}
body.single-product .sirloin-product-pricing .sirloin-wc-format-group {
    border:1px solid var(--sirloin-line); background:var(--sirloin-paper);
    padding:clamp(16px,2.5vw,25px); border-radius:7px;
    margin:0 0 16px !important;
}


/* ========================================================================
   v3.6.2 — full-width purchase option CONTENT, not only its outer section.
   A WC add-on can give its own form/wrapper a narrow intrinsic width; the
   preceding rules were only widening .sirloin-product-pricing, leaving the
   individual cards at half of the available content width.
   ======================================================================== */
body.single-product .sirloin-commerce-main .sirloin-product-pricing,
body.single-product .sirloin-commerce-main .sirloin-product-pricing > .sirloin-product-formats-copy,
body.single-product .sirloin-commerce-main .sirloin-product-pricing > .sirloin-product-options,
body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-pricing-container {
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    float:none !important;
    flex-basis:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
}
/* Do not use flex rows for the whole form. A form's add-on wrapper otherwise
   sizes to its max-content width, despite the surrounding pricing section
   being 100%. WC still owns the submit controls and all variation handling. */
body.single-product .sirloin-commerce-main .sirloin-product-pricing form.cart,
body.single-product .sirloin-commerce-main .sirloin-product-pricing form.variations_form {
    display:block !important;
    box-sizing:border-box !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
}
body.single-product .sirloin-commerce-main .sirloin-product-pricing form.cart > :is(div,section,article,fieldset,table):not(.quantity):not(.woocommerce-variation-add-to-cart),
body.single-product .sirloin-commerce-main .sirloin-product-pricing form.variations_form > :is(div,section,article,fieldset,table):not(.quantity):not(.woocommerce-variation-add-to-cart) {
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    float:none !important;
    flex-basis:100% !important;
}
body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-grid {
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
}
@media (min-width:741px) {
    body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-grid {
        display:grid !important;
        grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr) !important;
        gap:16px !important;
        align-items:start !important;
    }
    body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-grid > .sirloin-wc-format-group {
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        margin:0 !important;
        height:100%;
    }
    body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-grid > .sirloin-wc-format-group--canvas-print,
    body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-grid > :not(.sirloin-wc-format-group) {
        grid-column:1 / -1;
    }
}
@media (max-width:740px) {
    body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-grid {
        display:block !important;
    }
    body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-grid > .sirloin-wc-format-group {
        width:100% !important;
        max-width:100% !important;
        margin:0 0 14px !important;
        height:auto !important;
    }
}
/* More breathing room below the coral rule and above the introductory copy. */
body.single-product .sirloin-commerce-main .sirloin-product-pricing p.sirloin-wc-format-intro,
body.single-product .sirloin-commerce-main .sirloin-product-pricing .sirloin-wc-format-heading + p {
    margin-top:21px !important;
    padding-top:0 !important;
}


/* v3.6.3 — clear path from artwork overview to the full-width format selector.
   Reuse Sirloin's existing coral button instead of inventing shop-specific UI. */
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-wc-view-formats {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:14px;
    width:auto;
    max-width:100%;
    min-height:48px;
    margin:4px 0 24px;
    padding:14px 20px;
    box-sizing:border-box;
    border:1px solid var(--sirloin-coral);
    border-radius:0;
    background:var(--sirloin-coral);
    color:#fff !important;
    font:700 .78rem/1.2 var(--sirloin-sans) !important;
    letter-spacing:.07em;
    text-transform:uppercase;
    text-decoration:none !important;
    text-align:center;
    cursor:pointer;
    transition:background-color .16s ease, border-color .16s ease, transform .16s ease;
}
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-wc-view-formats:hover {
    color:#fff !important;
    background:var(--sirloin-coral-dark);
    border-color:var(--sirloin-coral-dark);
    transform:translateY(-1px);
}
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-wc-view-formats:focus-visible {
    outline:3px solid var(--sirloin-teal);
    outline-offset:3px;
}
body.single-product .sirloin-commerce-main .sirloin-wc-view-formats__arrow {
    display:inline-block;
    font:700 1.05rem/1 var(--sirloin-sans);
    transition:transform .16s ease;
}
body.single-product .sirloin-commerce-main .sirloin-wc-view-formats:hover .sirloin-wc-view-formats__arrow {
    transform:translateY(3px);
}
body.single-product .sirloin-commerce-main .sirloin-product-pricing#sirloin-available-formats {
    scroll-margin-top:105px;
}
@media (max-width:740px) {
    body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-wc-view-formats {
        margin:8px 0 22px;
        padding:13px 17px;
    }
    body.single-product .sirloin-commerce-main .sirloin-product-pricing#sirloin-available-formats {
        scroll-margin-top:80px;
    }
}
@media (prefers-reduced-motion:no-preference) {
    html.sirloin-wc-has-formats-jump { scroll-behavior:smooth; }
}
@media (prefers-reduced-motion:reduce) {
    body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-wc-view-formats,
    body.single-product .sirloin-commerce-main .sirloin-wc-view-formats__arrow { transition:none; }
}


/* v3.6.5 — WC Blocks cart/checkout layout repair. Keep the block content native.
   The main/sidebar used to overflow left because WC Blocks sizing + the theme's
   section/div widths were being combined. CSS Grid establishes explicit tracks
   inside the standard 1100px Sirloin interior container. */
.sirloin-commerce-page--cart .sirloin-commerce-content,
.sirloin-commerce-page--cart .wp-block-woocommerce-cart,
.sirloin-commerce-page--cart .wc-block-cart,
.sirloin-commerce-page--checkout .sirloin-commerce-content,
.sirloin-commerce-page--checkout .wp-block-woocommerce-checkout,
.sirloin-commerce-page--checkout .wc-block-checkout {
    display:block; box-sizing:border-box; width:100% !important; min-width:0 !important;
    max-width:100% !important; margin-inline:0 !important;
}
.sirloin-commerce-page--cart .wc-block-cart .wc-block-components-sidebar-layout,
.sirloin-commerce-page--checkout .wc-block-checkout .wc-block-components-sidebar-layout {
    display:grid !important; grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);
    gap:28px !important; align-items:start; width:100% !important; max-width:100% !important;
    box-sizing:border-box; margin:0 !important; padding:0 !important; float:none !important;
    left:auto !important; right:auto !important; transform:none !important;
}
.sirloin-commerce-page--cart .wc-block-components-sidebar-layout > .wc-block-cart__main,
.sirloin-commerce-page--checkout .wc-block-components-sidebar-layout > .wc-block-checkout__main {
    grid-column:1; min-width:0 !important; width:100% !important; max-width:100% !important;
    margin:0 !important; padding:0 !important; float:none !important; position:static !important;
}
.sirloin-commerce-page--cart .wc-block-components-sidebar-layout > .wc-block-cart__sidebar,
.sirloin-commerce-page--checkout .wc-block-components-sidebar-layout > .wc-block-checkout__sidebar {
    grid-column:2; box-sizing:border-box; min-width:0 !important; width:100% !important;
    max-width:100% !important; margin:0 !important; position:static !important; float:none !important;
}
.sirloin-commerce-page--cart .wc-block-cart-items,
.sirloin-commerce-page--cart .wc-block-cart-items__row,
.sirloin-commerce-page--cart .wc-block-cart-items__row > td,
.sirloin-commerce-page--cart .wc-block-components-product-details,
.sirloin-commerce-page--checkout .wc-block-components-order-summary-item {
    min-width:0; max-width:100%; box-sizing:border-box;
}
.sirloin-commerce-page--cart .wc-block-cart-items { width:100%; border-collapse:collapse; }
.sirloin-commerce-page--cart .wc-block-cart-items__row { border-bottom:1px solid #e7e1da; }
.sirloin-commerce-page--cart .wc-block-cart-items__row > td { padding:20px 10px 20px 0 !important; vertical-align:top; }
.sirloin-commerce-page--cart .wc-block-cart-item__image { width:100px; }
.sirloin-commerce-page--cart .wc-block-cart-item__image img { width:90px; height:90px; max-width:100%; object-fit:cover; border-radius:5px; }
.sirloin-commerce-page--cart .wc-block-components-product-name,
.sirloin-commerce-page--checkout .wc-block-components-product-name { font-weight:700; line-height:1.35; font-size:1rem; }
/* Short poem/marketing descriptions belong on product pages, not purchase recaps.
   Keep the actual Format and Size metadata visible. */
.sirloin-commerce-page--cart .wc-block-components-product-metadata__description,
.sirloin-commerce-page--checkout .wc-block-components-product-metadata__description,
.sirloin-commerce-page--checkout .wc-block-components-order-summary-item__description { display:none !important; }
.sirloin-commerce-page--cart .wc-block-components-product-details,
.sirloin-commerce-page--checkout .wc-block-components-product-details {
    font:400 .84rem/1.5 var(--sirloin-sans); color:#626262; margin:7px 0 0; padding:0;
}
.sirloin-commerce-page--cart .wc-block-components-product-details li,
.sirloin-commerce-page--checkout .wc-block-components-product-details li { margin:2px 0; }
.sirloin-commerce-page--checkout .wc-block-components-order-summary-item { padding-block:15px; }
.sirloin-commerce-page--checkout .wc-block-components-order-summary-item__description,
.sirloin-commerce-page--checkout .wc-block-components-order-summary-item__quantity { color:#626262; }
/* Remove the unwanted decorative rule immediately above Total in checkout. */
.sirloin-commerce-page--checkout .wc-block-components-totals-footer-item,
.sirloin-commerce-page--checkout .wc-block-components-totals-footer-item__wrapper {
    border-top:0 !important; box-shadow:none !important;
}
.sirloin-commerce-page--checkout .wc-block-components-totals-footer-item {
    margin-top:0 !important; padding-top:12px !important;
}
.sirloin-commerce-page--checkout .wc-block-components-totals-wrapper:has(> .wc-block-components-totals-footer-item) {
    border-top:0 !important;
}
@media (max-width:900px) {
    .sirloin-commerce-page--cart .wc-block-cart .wc-block-components-sidebar-layout,
    .sirloin-commerce-page--checkout .wc-block-checkout .wc-block-components-sidebar-layout {
        display:grid !important; grid-template-columns:minmax(0,1fr); gap:24px !important;
    }
    .sirloin-commerce-page--cart .wc-block-components-sidebar-layout > .wc-block-cart__main,
    .sirloin-commerce-page--checkout .wc-block-components-sidebar-layout > .wc-block-checkout__main,
    .sirloin-commerce-page--cart .wc-block-components-sidebar-layout > .wc-block-cart__sidebar,
    .sirloin-commerce-page--checkout .wc-block-components-sidebar-layout > .wc-block-checkout__sidebar {
        grid-column:1; width:100% !important; margin:0 !important;
    }
}
@media (max-width:540px) {
    .sirloin-commerce-page--cart .wc-block-cart-items__row > td { padding:12px 5px 12px 0 !important; }
    .sirloin-commerce-page--cart .wc-block-cart-item__image { width:76px; }
    .sirloin-commerce-page--cart .wc-block-cart-item__image img { width:70px; height:70px; }
    .sirloin-commerce-page--cart .wc-block-cart__sidebar,
    .sirloin-commerce-page--checkout .wc-block-checkout__sidebar { padding:16px !important; }
}


/* v3.6.6 — artwork and FULL DESCRIPTION share the top row. Format/price cards
   occupy the next row at full content width. Keep this stronger than old theme
   and WooCommerce float rules so media/description cannot stack on desktop. */
@media (min-width:741px) {
    body.single-product .sirloin-commerce-main .sirloin-product-layout--story-right {
        display:grid !important;
        grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr) !important;
        align-items:start !important;
        column-gap:clamp(26px,4.4vw,56px) !important;
        width:100% !important;
        max-width:100% !important;
        clear:both !important;
    }
    body.single-product .sirloin-commerce-main .sirloin-product-layout--story-right > .sirloin-product-media {
        display:block !important;
        grid-column:1 !important;
        grid-row:1 !important;
        width:100% !important;
        max-width:100% !important;
        float:none !important;
    }
    body.single-product .sirloin-commerce-main .sirloin-product-layout--story-right > .sirloin-product-purchase {
        display:block !important;
        grid-column:2 !important;
        grid-row:1 !important;
        width:100% !important;
        max-width:100% !important;
        float:none !important;
    }
}
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story,
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story .sirloin-product-long-description {
    display:block; width:100%; max-width:100%; min-width:0; box-sizing:border-box;
    margin:20px 0 0 !important; clear:none !important;
    font:400 1rem/1.65 var(--sirloin-sans);
}
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story:empty {display:none;}
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story .sirloin-product-long-description { margin:0 !important; }
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story .sirloin-product-long-description > :first-child { margin-top:0 !important; }
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story .sirloin-product-long-description > :last-child { margin-bottom:0 !important; }
body.single-product .sirloin-commerce-main .sirloin-product-pricing {
    display:block !important; clear:both !important; width:100% !important; max-width:100% !important;
}
@media (max-width:740px) {
    body.single-product .sirloin-commerce-main .sirloin-product-layout--story-right {
        display:flex !important; flex-direction:column !important; gap:26px !important;
    }
}


/* 3.6.7: the artwork text must stay in the right-hand overview column,
   whether it was output by the product description or hoisted from a WC tab. */
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story {
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    clear:none !important;
    margin:24px 0 0 !important;
    min-width:0 !important;
    box-sizing:border-box;
}
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story:empty { display:none !important; }
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story > :first-child,
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story .sirloin-product-long-description > :first-child { margin-top:0 !important; }
body.single-product .sirloin-commerce-main .sirloin-product-overview .sirloin-product-story > :last-child { margin-bottom:0 !important; }

/* v3.7.1 — single underline for Available Formats. Featured Card content
   may be re-used inside WooCommerce's pricing introduction. Its own
   38px ::before accent is the second coral line visible below the heading;
   suppress it here only, leaving Featured Card pages unchanged. */
body.single-product .sirloin-commerce-main .sirloin-product-pricing
.sirloin-featured-card-single-copy::before {
    content:none !important;
    display:none !important;
}
/* The formats CTA follows the artist's poem rather than interrupting it. */
body.single-product .sirloin-commerce-main .sirloin-product-overview
.sirloin-product-story + .sirloin-wc-view-formats,
body.single-product .sirloin-commerce-main .sirloin-product-overview
.woocommerce-product-details__short-description + .sirloin-wc-view-formats {
    margin:18px 0 10px;
}
@media (max-width:740px) {
    body.single-product .sirloin-commerce-main .sirloin-product-overview
    .sirloin-product-story + .sirloin-wc-view-formats,
    body.single-product .sirloin-commerce-main .sirloin-product-overview
    .woocommerce-product-details__short-description + .sirloin-wc-view-formats {
        margin:16px 0 10px;
    }
}

/* v3.7.3: Native single-product cart form AJAX progress and errors. */
body.single-product .sirloin-commerce-main form.cart[aria-busy="true"] .single_add_to_cart_button {
    cursor: progress;
    opacity: .7;
}
body.single-product .sirloin-commerce-main .sirloin-wc-ajax-feedback[role="alert"] {
    margin: 14px 0 20px;
    padding: 13px 16px;
    border: 1px solid #d7b8b4;
    border-left: 3px solid #b44338;
    border-radius: 4px;
    color: #762e28;
    background: #fff9f8;
    font-size: 15px;
    line-height: 1.5;
}
body.single-product .sirloin-commerce-main .sirloin-wc-ajax-feedback[hidden] { display: none; }
