/*
 * SOLO BY SEMORE shop styles.
 *
 * Plain CSS, loaded after WooCommerce's own stylesheet. Kept out of theme.css
 * on purpose: rules inside Tailwind's @layer blocks lose to WooCommerce's
 * unlayered CSS, so shop overrides have to live outside a layer.
 */

/* WooCommerce sets "height:auto; max-width:100%" on every image on its pages, which would blow up the header logo. */
body.sbs-site .sbs-wordmark .sbs-logo { height: 64px; width: auto; max-width: none; }
body.sbs-site .sbs-wordmark--footer .sbs-logo { height: auto; width: min(430px, 100%); max-width: 100%; }
@media (max-width: 1020px) {
	body.sbs-site .sbs-wordmark .sbs-logo { height: 52px; }
	body.sbs-site .sbs-wordmark--footer .sbs-logo { height: auto; }
}

.sbs-shop__inner { max-width: 1500px; margin: 0 auto; padding: 2.5rem 4vw 6.5rem; }
.single-product .sbs-shop__inner { padding-top: 3rem; }

body.sbs-site .woocommerce-breadcrumb { margin: 0 0 1.8rem; font-family: "Zilla Slab", serif; font-weight: 600; font-size: .92rem; letter-spacing: .04em; color: #0d4a26; }
body.sbs-site .woocommerce-breadcrumb a { color: #063016; text-decoration: none; border-bottom: 2px solid #facb2e; }
body.sbs-site .woocommerce-result-count { margin: .55rem 0 1.8rem; font-family: "Zilla Slab", serif; font-weight: 600; color: #0d4a26; }
body.sbs-site .woocommerce-ordering { margin: 0 0 1.8rem; }
body.sbs-site .woocommerce-ordering select,
body.sbs-site .variations select,
body.sbs-site .quantity .qty {
	min-height: 48px; padding: .5rem 2.4rem .5rem .9rem; border: 2px solid #063016; border-radius: 10px; background-color: #fffdf5; color: #063016;
	font-family: "Archivo", sans-serif; font-size: 1rem; font-weight: 500; box-shadow: none;
}
body.sbs-site .quantity .qty { padding: .5rem; width: 4.6rem; text-align: center; }
body.sbs-site.woocommerce div.product form.cart div.quantity { margin-right: .8rem; }

/* WooCommerce's "columns-4" class collides with Tailwind's multi-column utility of the same name. */
body.sbs-site .woocommerce[class*="columns-"],
body.sbs-site ul.products[class*="columns-"] { columns: auto; column-count: auto; column-width: auto; }

/* Product grid: CSS grid instead of WooCommerce floats. */
body.sbs-site .woocommerce ul.products,
body.sbs-site.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.6rem; margin: 0; padding: 0; clear: both; }
body.sbs-site .woocommerce ul.products::before, body.sbs-site .woocommerce ul.products::after,
body.sbs-site.woocommerce ul.products::before, body.sbs-site.woocommerce ul.products::after { display: none; }
body.sbs-site .woocommerce ul.products.columns-3, body.sbs-site.woocommerce ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.sbs-site .woocommerce ul.products li.product,
body.sbs-site.woocommerce ul.products li.product {
	float: none; width: auto; margin: 0; padding: 0; display: flex; flex-direction: column; position: relative; overflow: hidden;
	background: #fffdf5; border: 3px solid #063016; border-radius: 18px; box-shadow: 6px 6px 0 #facb2e; text-align: left;
	transition: transform .18s, box-shadow .18s;
}
body.sbs-site .woocommerce ul.products li.product:hover,
body.sbs-site.woocommerce ul.products li.product:hover { transform: translate(-3px, -3px); box-shadow: 9px 9px 0 #facb2e; }
.sbs-shopline .woocommerce ul.products li.product { box-shadow: 6px 6px 0 #063016; }
.sbs-shopline .woocommerce ul.products li.product:hover { box-shadow: 9px 9px 0 #063016; }
body.sbs-site ul.products li.product a.woocommerce-loop-product__link { display: flex; flex-direction: column; flex: 1; text-decoration: none; color: #063016; }
body.sbs-site ul.products li.product a img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; margin: 0; border-bottom: 3px solid #063016; background: #fff; }
body.sbs-site ul.products li.product .woocommerce-loop-product__title { padding: 1rem 1.1rem .3rem; margin: 0; font-family: "Zilla Slab", serif; font-weight: 700; font-size: 1.12rem; line-height: 1.2; color: #063016; }
body.sbs-site ul.products li.product .price { display: block; padding: 0 1.1rem; margin: 0 0 .2rem; font-family: "Zilla Slab", serif; font-weight: 700; font-size: 1.15rem; color: #a7190f; }
body.sbs-site ul.products li.product .price del { color: #0d4a26; opacity: .6; }
body.sbs-site ul.products li.product .price ins { text-decoration: none; }
body.sbs-site ul.products li.product .star-rating { margin: .3rem 1.1rem; }
body.sbs-site ul.products li.product .button,
body.sbs-site ul.products li.product .added_to_cart {
	margin: .9rem 1.1rem 1.1rem; padding: .8rem 1rem; display: block; text-align: center; background: #063016; color: #f8eebc; border: 0; border-radius: 10px;
	font-family: "Zilla Slab", serif; font-weight: 700; font-size: .82rem; letter-spacing: .13em; text-transform: uppercase; text-decoration: none; transition: background .2s, color .2s;
}
body.sbs-site ul.products li.product .button:hover { background: #facb2e; color: #063016; }
body.sbs-site .woocommerce span.onsale, body.sbs-site.woocommerce span.onsale {
	top: .8rem; left: .8rem; right: auto; margin: 0; min-height: 0; min-width: 0; padding: .35rem .8rem; line-height: 1.2; border-radius: 999px; background: #a7190f; color: #f8eebc;
	font-family: "Zilla Slab", serif; font-weight: 700; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase;
}

/* One card per design: styles line and "From" price */
body.sbs-site ul.products li.product .sbs-card__styles { padding: 0 1.1rem; margin: 0 0 .4rem; font-family: "Archivo", sans-serif; font-size: .86rem; font-weight: 500; line-height: 1.35; color: #0d4a26; }
body.sbs-site ul.products li.product .price .sbs-from { font-size: .78em; letter-spacing: .1em; text-transform: uppercase; color: #0d4a26; }

/* Garment filter bar */
body.sbs-site .sbs-filter { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 0 1.6rem; }
body.sbs-site .sbs-filter a {
	padding: .6rem 1.15rem; border: 2px solid #063016; border-radius: 999px; background: #fffdf5; color: #063016; text-decoration: none;
	font-family: "Zilla Slab", serif; font-weight: 700; font-size: .84rem; letter-spacing: .12em; text-transform: uppercase; transition: background .2s, color .2s;
}
body.sbs-site .sbs-filter a:hover,
body.sbs-site .sbs-filter a.is-active { background: #063016; color: #f8eebc; }

/* Second filter row: garment types inside the open category */
body.sbs-site .sbs-filter.sbs-filter--sub { gap: .45rem; margin: -.5rem 0 1.1rem; }
body.sbs-site .sbs-filter.sbs-filter--sub a { padding: .42rem .95rem; border-width: 1.5px; background: transparent; font-size: .76rem; letter-spacing: .1em; }
body.sbs-site .sbs-filter.sbs-filter--sub a:hover,
body.sbs-site .sbs-filter.sbs-filter--sub a.is-active { background: #facb2e; color: #063016; border-color: #063016; }
body.sbs-site .sbs-filter__note { margin: 0 0 1.1rem; font-family: "Archivo", sans-serif; font-size: .95rem; line-height: 1.45; color: #0d4a26; }
body.sbs-site .sbs-filter__note a { color: #063016; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }

/* Product page: size guide */
body.sbs-site .sbs-sizeguide { margin: .2rem 0 1.2rem; border: 2px solid #063016; border-radius: 12px; background: #fffdf5; }
body.sbs-site .sbs-sizeguide summary { padding: .8rem 1rem; cursor: pointer; font-family: "Zilla Slab", serif; font-weight: 700; font-size: .84rem; letter-spacing: .16em; text-transform: uppercase; color: #063016; }
body.sbs-site .sbs-sizeguide[open] summary { border-bottom: 2px solid #063016; }
body.sbs-site .sbs-sizeguide__body { padding: .9rem 1rem 1rem; }
body.sbs-site .sbs-sizeguide__fit { margin: 0 0 .8rem; font-size: .95rem; line-height: 1.45; color: #0b1f12; }
body.sbs-site .sbs-sizeguide table { width: 100%; margin: 0; border-collapse: collapse; border: 0; font-family: "Archivo", sans-serif; font-size: .95rem; font-variant-numeric: tabular-nums; }
body.sbs-site .sbs-sizeguide th,
body.sbs-site .sbs-sizeguide td { padding: .5rem .4rem; border: 0; border-bottom: 1px solid rgba(6, 48, 22, .18); text-align: left; background: transparent; line-height: 1.3; }
body.sbs-site .sbs-sizeguide thead th { font-family: "Zilla Slab", serif; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; color: #0d4a26; }
body.sbs-site .sbs-sizeguide tbody th { font-weight: 700; color: #063016; }
body.sbs-site .sbs-sizeguide td span { display: block; font-size: .82rem; color: #0d4a26; }
body.sbs-site .sbs-sizeguide__note { margin: .8rem 0 0; font-size: .84rem; line-height: 1.45; color: #0d4a26; }

/* Product page: Choose garment / Choose design */
body.sbs-site .sbs-switch { display: grid; gap: .9rem; margin: 1.4rem 0 0; padding: 1.1rem 1.2rem 1.2rem; border: 2px solid #063016; border-radius: 14px; background: #f8eebc; }
body.sbs-site .sbs-switch label { display: block; font-family: "Zilla Slab", serif; font-weight: 700; font-size: .84rem; letter-spacing: .16em; text-transform: uppercase; color: #063016; }
body.sbs-site .sbs-switch select {
	width: 100%; max-width: 420px; min-height: 48px; margin: .4rem 0 0; padding: .5rem 2.4rem .5rem .9rem; border: 2px solid #063016; border-radius: 10px; background-color: #fffdf5; color: #063016;
	font-family: "Archivo", sans-serif; font-size: 1rem; font-weight: 500; box-shadow: none;
}
body.sbs-site .sbs-switch__note { margin: 0; font-size: .9rem; color: #0d4a26; }

/* Free-shipping line on the product page and cart */
body.sbs-site .sbs-shipnote { margin: .9rem 0 0; font-size: .95rem; font-weight: 600; color: #0d4a26; }
body.sbs-site .sbs-shipnote--cart { margin: 0 0 1rem; padding: .7rem .9rem; border: 2px solid #063016; border-radius: 10px; background: #f8eebc; }

/* Phones and small tablets: form text at 16px, so iPhones do not zoom the page when a dropdown or field is tapped. */
@media (max-width: 782px) {
	body.sbs-site select,
	body.sbs-site textarea,
	body.sbs-site input[type="text"],
	body.sbs-site input[type="email"],
	body.sbs-site input[type="tel"],
	body.sbs-site input[type="number"],
	body.sbs-site input[type="search"],
	body.sbs-site input[type="password"] { font-size: 16px !important; }
}

/* Phones: give the garment and design dropdowns the full width, so long names and prices are not cut off. */
@media (max-width: 560px) {
	body.sbs-site .sbs-switch { margin-left: -6px; margin-right: -6px; padding: .9rem .6rem 1rem; }
	body.sbs-site .sbs-switch select { max-width: none; padding-left: .6rem; padding-right: 1.75rem; }
}

/* Pagination */
body.sbs-site nav.woocommerce-pagination { margin-top: 3rem; }
body.sbs-site nav.woocommerce-pagination ul.page-numbers { border: 0; display: flex; justify-content: center; gap: .5rem; }
body.sbs-site nav.woocommerce-pagination ul.page-numbers li { border: 0; }
body.sbs-site nav.woocommerce-pagination ul.page-numbers li a,
body.sbs-site nav.woocommerce-pagination ul.page-numbers li span { min-width: 2.8rem; padding: .75rem; border: 2px solid #063016; border-radius: 10px; background: #fffdf5; color: #063016; font-family: "Zilla Slab", serif; font-weight: 700; }
body.sbs-site nav.woocommerce-pagination ul.page-numbers li span.current,
body.sbs-site nav.woocommerce-pagination ul.page-numbers li a:hover { background: #063016; color: #f8eebc; }

/* Single product */
body.sbs-site.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); column-gap: clamp(2rem, 5vw, 5rem); align-items: start; }
body.sbs-site.woocommerce div.product div.images,
body.sbs-site.woocommerce div.product div.summary { float: none; width: auto; margin: 0; }
body.sbs-site.woocommerce div.product > .onsale { z-index: 3; }
body.sbs-site.woocommerce div.product .woocommerce-tabs,
body.sbs-site.woocommerce div.product .related,
body.sbs-site.woocommerce div.product .upsells { grid-column: 1 / -1; }
body.sbs-site.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
body.sbs-site.woocommerce div.product div.images .flex-viewport { border: 3px solid #063016; border-radius: 18px; overflow: hidden; background: #fff; box-shadow: 7px 7px 0 #facb2e; }
body.sbs-site.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__wrapper { border: 0; border-radius: 0; box-shadow: none; }
body.sbs-site.woocommerce div.product div.images .flex-control-thumbs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .6rem; margin: 1.2rem 0 0; }
body.sbs-site.woocommerce div.product div.images .flex-control-thumbs li { float: none; width: auto; margin: 0; }
body.sbs-site.woocommerce div.product div.images .flex-control-thumbs li img { border: 2px solid #063016; border-radius: 10px; background: #fff; opacity: .65; }
body.sbs-site.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,
body.sbs-site.woocommerce div.product div.images .flex-control-thumbs li img:hover { opacity: 1; box-shadow: 3px 3px 0 #facb2e; }
body.sbs-site.woocommerce div.product .product_title { margin: 0 0 1rem; font-family: "Alfa Slab One", serif; font-weight: 400; font-size: clamp(1.9rem, 3.2vw, 3rem); line-height: 1.05; color: #063016; }
body.sbs-site.woocommerce div.product p.price,
body.sbs-site.woocommerce div.product span.price { font-family: "Zilla Slab", serif; font-weight: 700; font-size: 1.7rem; color: #a7190f; }
body.sbs-site.woocommerce div.product .woocommerce-product-details__short-description { font-size: 1.1rem; }
body.sbs-site.woocommerce div.product form.cart { margin: 1.6rem 0; }
body.sbs-site.woocommerce div.product form.cart .variations { margin-bottom: 1.2rem; border: 0; }
body.sbs-site.woocommerce div.product form.cart .variations th,
body.sbs-site.woocommerce div.product form.cart .variations td { display: block; padding: 0; text-align: left; line-height: 1.3; }
body.sbs-site.woocommerce div.product form.cart .variations th { padding-top: .9rem; }
body.sbs-site.woocommerce div.product form.cart .variations label { font-family: "Zilla Slab", serif; font-weight: 700; font-size: .84rem; letter-spacing: .16em; text-transform: uppercase; color: #063016; }
body.sbs-site.woocommerce div.product form.cart .variations select { width: 100%; max-width: 420px; margin: .4rem 0 0; }
body.sbs-site.woocommerce div.product form.cart .reset_variations { display: inline-block; margin-top: .5rem; font-size: .9rem; color: #a7190f; }
body.sbs-site.woocommerce div.product form.cart .woocommerce-variation-price { margin: .6rem 0 1rem; }
body.sbs-site.woocommerce div.product form.cart .button,
body.sbs-site .woocommerce a.button.alt,
body.sbs-site .woocommerce button.button.alt,
body.sbs-site .woocommerce input.button.alt,
body.sbs-site .woocommerce #respond input#submit {
	min-height: 52px; padding: .9rem 1.8rem; background: #063016; color: #f8eebc; border: 2px solid #063016; border-radius: 10px; box-shadow: 5px 5px 0 #facb2e;
	font-family: "Zilla Slab", serif; font-weight: 700; font-size: .92rem; letter-spacing: .13em; text-transform: uppercase; transition: transform .15s, box-shadow .15s;
}
body.sbs-site.woocommerce div.product form.cart .button:hover,
body.sbs-site .woocommerce a.button.alt:hover,
body.sbs-site .woocommerce button.button.alt:hover { background: #063016; color: #facb2e; transform: translate(2px, 2px); box-shadow: 3px 3px 0 #facb2e; }
body.sbs-site.woocommerce div.product form.cart .button.disabled,
body.sbs-site.woocommerce div.product form.cart .button:disabled { background: #063016; color: #f8eebc; opacity: .45; box-shadow: none; }
body.sbs-site .woocommerce a.button:not(.alt):not(.add_to_cart_button):not(.product_type_variable),
body.sbs-site .woocommerce button.button:not(.alt):not(.single_add_to_cart_button) { border-radius: 10px; background: #f8eebc; color: #063016; border: 2px solid #063016; font-family: "Zilla Slab", serif; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: .82rem; }
body.sbs-site.woocommerce div.product .product_meta { margin-top: 1.6rem; padding-top: 1.2rem; border-top: 3px solid #063016; font-size: .92rem; color: #0d4a26; }
body.sbs-site.woocommerce div.product .product_meta > span { display: block; margin-bottom: .2rem; }
body.sbs-site.woocommerce div.product .product_meta a { color: #063016; }

/* Tabs */
body.sbs-site.woocommerce div.product .woocommerce-tabs { margin-top: 4rem; }
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; border: 0; }
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; border: 2px solid #063016; border-bottom: 0; border-radius: 10px 10px 0 0; background: #f8eebc; }
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: .75rem 1.3rem; font-family: "Zilla Slab", serif; font-weight: 700; font-size: .84rem; letter-spacing: .13em; text-transform: uppercase; color: #063016; }
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #063016; }
body.sbs-site.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #f8eebc; }
body.sbs-site.woocommerce div.product .woocommerce-tabs .panel { margin: 0; padding: 2rem; border: 3px solid #063016; border-radius: 0 18px 18px 18px; background: #fffdf5; font-size: 1.05rem; line-height: 1.65; }
body.sbs-site.woocommerce div.product .woocommerce-tabs .panel h2,
body.sbs-site.woocommerce div.product .related > h2,
body.sbs-site.woocommerce div.product .upsells > h2 { margin: 0 0 1.2rem; font-family: "Zilla Slab", serif; font-weight: 700; font-size: 1.8rem; color: #063016; }
body.sbs-site.woocommerce div.product .related,
body.sbs-site.woocommerce div.product .upsells { margin-top: 4.5rem; }
body.sbs-site.woocommerce div.product .related > h2,
body.sbs-site.woocommerce div.product .upsells > h2 { font-family: "Alfa Slab One", serif; font-weight: 400; font-size: clamp(1.8rem, 3vw, 2.6rem); margin-bottom: 2rem; }
body.sbs-site .woocommerce table.shop_attributes th { font-family: "Zilla Slab", serif; color: #063016; }

/* Notices */
body.sbs-site .woocommerce-message,
body.sbs-site .woocommerce-info,
body.sbs-site .woocommerce-error { border: 2px solid #063016; border-top: 6px solid #063016; border-radius: 12px; background: #f8eebc; color: #063016; }
body.sbs-site .woocommerce-message::before, body.sbs-site .woocommerce-info::before { color: #063016; }
body.sbs-site .woocommerce-error { border-top-color: #a7190f; }

/* Cart, checkout and account pages (block based) */
body.sbs-site .wc-block-components-button:not(.is-link),
body.sbs-site .wc-block-cart__submit-button,
body.sbs-site .wc-block-components-checkout-place-order-button {
	background: #063016; color: #f8eebc; border-radius: 10px; font-family: "Zilla Slab", serif; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; box-shadow: 5px 5px 0 #facb2e;
}
body.sbs-site .wc-block-components-product-name,
body.sbs-site .wc-block-components-totals-item__label { color: #063016; font-weight: 600; }
body.sbs-site.woocommerce-cart .sbs-page__content,
body.sbs-site.woocommerce-checkout .sbs-page__content,
body.sbs-site.woocommerce-account .sbs-page__content { max-width: 1300px; }

@media (max-width: 1100px) {
	body.sbs-site .woocommerce ul.products,
	body.sbs-site.woocommerce ul.products,
	body.sbs-site .woocommerce ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
	body.sbs-site .woocommerce ul.products,
	body.sbs-site.woocommerce ul.products,
	body.sbs-site .woocommerce ul.products.columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
	body.sbs-site .woocommerce ul.products li.product,
	body.sbs-site.woocommerce ul.products li.product { border-radius: 14px; box-shadow: 4px 4px 0 #facb2e; }
	.sbs-shopline .woocommerce ul.products li.product { box-shadow: 4px 4px 0 #063016; }
	body.sbs-site ul.products li.product .woocommerce-loop-product__title { padding: .8rem .8rem .2rem; font-size: .98rem; }
	body.sbs-site ul.products li.product .price { padding: 0 .8rem; font-size: 1.02rem; }
	body.sbs-site ul.products li.product .button { margin: .7rem .8rem .8rem; padding: .7rem .4rem; font-size: .72rem; letter-spacing: .08em; }
	body.sbs-site.woocommerce div.product { grid-template-columns: minmax(0, 1fr); row-gap: 2rem; }
	body.sbs-site.woocommerce div.product .woocommerce-tabs .panel { padding: 1.3rem; }
	body.sbs-site .woocommerce-ordering { float: none; }
	body.sbs-site .woocommerce-result-count { float: none; margin-bottom: .8rem; }
}

/* Shop and category pages: a shorter banner and tighter spacing, so products start higher on the screen. */
body.sbs-site .sbs-shop .sbs-page__header { padding: clamp(1.3rem, 2.6vw, 2.4rem) 4vw clamp(1.1rem, 2.2vw, 2rem); }
body.sbs-site .sbs-shop .sbs-page__header .sbs-kicker { margin-bottom: .5rem; }
body.sbs-site .sbs-shop .sbs-page__header h1 { font-size: clamp(1.9rem, 3.4vw, 3.2rem); }
body.sbs-site.archive .sbs-shop__inner { padding-top: 1.5rem; }
body.sbs-site.archive .sbs-shop .woocommerce-breadcrumb { margin-bottom: 1rem; }
body.sbs-site.archive .sbs-shop .sbs-filter { margin-bottom: 1.1rem; }

/* Shop cards on small screens: full-size type in two columns, then one roomy column on phones. */
@media (max-width: 820px) {
	/* Filters wrap onto a second line so every one stays visible; count and sort share the next row. */
	body.sbs-site.archive .sbs-shop .sbs-filter { flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; }
	body.sbs-site.archive .sbs-shop .sbs-filter a { padding: .5rem .95rem; white-space: nowrap; }
	body.sbs-site.archive .sbs-shop .woocommerce-result-count { float: left; margin: 0 0 1.1rem; line-height: 46px; }
	body.sbs-site.archive .sbs-shop .woocommerce-ordering { float: right; max-width: 62%; margin: 0 0 1.1rem; }
	body.sbs-site.archive .sbs-shop .woocommerce-ordering select { width: 100%; min-height: 46px; padding: .4rem 2.2rem .4rem .85rem; font-size: .95rem; }
	body.sbs-site .sbs-shop ul.products li.product .woocommerce-loop-product__title { padding: .95rem 1rem .25rem; font-size: 1.1rem; }
	body.sbs-site .sbs-shop ul.products li.product .sbs-card__styles { padding: 0 1rem; font-size: .88rem; }
	body.sbs-site .sbs-shop ul.products li.product .price { padding: 0 1rem; font-size: 1.12rem; }
	body.sbs-site .sbs-shop ul.products li.product .button { margin: .85rem 1rem 1rem; padding: .9rem .6rem; font-size: .8rem; letter-spacing: .11em; }
}
@media (max-width: 560px) {
	/* Phones: compact filter rows and one line for count + sort, so the first product sits higher. */
	/* The banner title and the filter rows already say what the page is; the intro line stays for search engines and screen readers. */
	body.sbs-site.archive .sbs-shop .woocommerce-products-header .term-description { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
	body.sbs-site.archive .sbs-shop .sbs-filter { gap: .4rem; margin-bottom: .7rem; }
	body.sbs-site.archive .sbs-shop .sbs-filter a { padding: .52rem .7rem; font-size: .74rem; letter-spacing: .06em; }
	body.sbs-site.archive .sbs-shop .sbs-filter.sbs-filter--sub { gap: .3rem; margin: 0 0 .7rem; }
	body.sbs-site.archive .sbs-shop .sbs-filter.sbs-filter--sub a { padding: .5rem .5rem; font-size: .66rem; letter-spacing: .03em; }
	body.sbs-site .sbs-filter__note { margin-bottom: .8rem; font-size: .86rem; }
	body.sbs-site.archive .sbs-shop .woocommerce-result-count { font-size: .92rem; }
	body.sbs-site.archive .sbs-shop .woocommerce-ordering { max-width: 54%; }
	body.sbs-site.woocommerce .sbs-shop ul.products,
	body.sbs-site.woocommerce .sbs-shop ul.products.columns-3,
	body.sbs-site.woocommerce .sbs-shop ul.products.columns-4 { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
	body.sbs-site .sbs-shop ul.products li.product .woocommerce-loop-product__title { padding: 1.1rem 1.2rem .3rem; font-size: 1.3rem; }
	body.sbs-site .sbs-shop ul.products li.product .sbs-card__styles { padding: 0 1.2rem; font-size: .98rem; }
	body.sbs-site .sbs-shop ul.products li.product .price { padding: 0 1.2rem; font-size: 1.28rem; }
	body.sbs-site .sbs-shop ul.products li.product .button { margin: 1rem 1.2rem 1.2rem; padding: 1.05rem 1rem; font-size: .92rem; letter-spacing: .13em; }
}
