/* Explicit geometry keeps the catalog stable across image and script loading. */
body.woocommerce.archive .woocommerce-products-header {
 margin-block: 12px 0; gap: 12px;
}
body.woocommerce.archive .woocommerce-products-header .section-title { color: #202d35; font-weight: 750; }
body.woocommerce.archive .cloz-category-intro-content { color: #53616a; line-height: 1.9; }
body.woocommerce.archive #primary.content-area { gap: 12px; }
body.woocommerce.archive .woocommerce-products-header { padding-bottom: 0; }
body.woocommerce.archive .cloz-category-intro-section { margin-bottom: 0; }
.cloz-catalog-toolbar {
 display: grid; grid-template-columns: minmax(0, 1fr);
 align-items: start; gap: 8px; width: 100%; padding: 10px;
 border: 1px solid #e2e9e9; border-radius: 16px; background: #f7fafa; box-sizing: border-box;
}
body.woocommerce.archive #sort-wrap.cloz-catalog-sort {
 display: block; margin: 0; padding: 0; min-height: 0; width: 100%; overflow: visible; color: #34454d;
}
.cloz-sort-options {
 display: grid; grid-template-columns: repeat(4, minmax(74px, 1fr)); gap: 6px;
 min-width: 0; overflow-x: auto; scrollbar-width: none;
}
.cloz-sort-options::-webkit-scrollbar { display: none; }
body.woocommerce.archive #sort-wrap.cloz-catalog-sort .sort-item {
 appearance: none; display: flex; align-items: center; justify-content: center; gap: 4px;
 min-width: 0; min-height: 40px; padding: 7px 6px; border: 1px solid transparent;
 border-radius: 9px; background: transparent; color: #52616a; font-family: inherit;
 font-size: 12px; font-weight: 650; line-height: 1.5; white-space: nowrap; cursor: pointer;
 transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
body.woocommerce.archive #sort-wrap.cloz-catalog-sort .sort-item:hover { color: #086d69; background: #fff; border-color: #d8e4e3; }
body.woocommerce.archive #sort-wrap.cloz-catalog-sort .sort-item-active { color: #086d69; background: #fff; border-color: #bfd8d5; box-shadow: 0 2px 7px #20343b0a; font-weight: 750; }
body.woocommerce.archive #sort-wrap .sort-item::after { content: none; }
.cloz-sort-remove { display: inline-grid; place-items: center; width: 15px; height: 15px; border-radius: 50%; background: #e5f2f0; font: 16px/1 Arial, sans-serif; }
body.woocommerce.archive #sort-wrap.cloz-catalog-sort select.cloz-orderby-fallback {
 position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important;
 margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important;
 white-space: nowrap !important; border: 0 !important;
}
body.woocommerce.archive .cloz-catalog-toolbar #sidebar.sidebar-shop {
 position: static !important; width: 100% !important; max-width: none !important;
 margin: 0 !important; padding: 0 !important; border: 0; background: transparent; box-shadow: none;
}
.cloz-discovery-row { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 8px; min-width: 0; }
.cloz-catalog-toolbar .cloz-filter-trigger {
 position: relative; display: grid; grid-template-columns: 1fr; place-items: center; gap: 0; width: 48px; min-height: 48px; padding: 0;
 border-color: #cfdcdd; border-radius: 10px; color: #087a78;
}
.cloz-catalog-toolbar .cloz-filter-trigger-icon { width: 32px; height: 32px; color: #087a78; background: transparent; }
.cloz-catalog-toolbar .cloz-filter-count { position: absolute; top: -7px; inset-inline-end: -7px; min-width: 19px; height: 19px; padding-inline: 3px; color: #fff; background: #087a78; font-size: 10px; }
.cloz-catalog-search {
 display: flex; align-items: center; gap: 4px; min-width: 0; min-height: 48px;
 padding: 0 6px; border: 1px solid #cfdcdd; border-radius: 10px; background: #fff;
 box-sizing: border-box;
}
.cloz-catalog-search:focus-within { border-color: #087a78; box-shadow: 0 0 0 3px #087a781c; }
.cloz-catalog-search input[type="search"] { flex: 1; width: 100%; min-width: 0; height: 44px; padding: 0 10px; border: 0; outline: 0; background: transparent; box-shadow: none; color: #24333b; font-family: inherit; font-size: 13px; line-height: 1.5; }
.cloz-catalog-search input[type="search"]::placeholder { color: #73818a; opacity: 1; }
.cloz-catalog-search :is(.cloz-search-clear, .cloz-search-submit) { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; padding: 0; border: 0; border-radius: 8px; background: transparent; color: #087a78; cursor: pointer; }
.cloz-catalog-search :is(.cloz-search-clear, .cloz-search-submit):hover { background: #edf7f5; }
.cloz-catalog-search .cloz-search-clear { color: #64717b; font-size: 24px; line-height: 1; }
.cloz-catalog-search .cloz-search-submit svg { width: 20px; height: 20px; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.cloz-filter-widgets :is(.widget_search, .widget_product_search, .wp-block-search) { display: none; }
.cloz-filter-panel-foot .cloz-filter-done { background: #087a78; border-color: #087a78; color: #fff; }
.cloz-catalog-toolbar :is(button, select):focus-visible,
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) :is(a, button, [tabindex]):focus-visible,
.cloz-related-rail:focus-visible { outline: 3px solid #087a78; outline-offset: 3px; }

:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) { min-width: 0; padding-bottom: 0; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-inner {
 position: relative; display: grid; grid-template-rows: 1fr auto; gap: 0; height: auto; min-height: 100%;
 min-width: 0; padding: 0; border: 0; border-radius: 16px;
 background: transparent; filter: drop-shadow(0 3px 8px #20343b09); box-shadow: none;
 box-sizing: border-box; overflow: visible; transition: border-color .18s, box-shadow .18s;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-inner::after { display: none; content: none; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .shape-curve {
 display: grid; position: relative; inset: auto; grid-area: 1 / 1; z-index: 0; min-width: 0; pointer-events: none;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .shape-curve-hover { display: none; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-loop-product__link {
 display: flex; flex-direction: column; gap: 8px; height: auto; padding: 10px 10px 42px; grid-area: 1 / 1; min-width: 0;
 background: transparent; border: 0; border-radius: 0;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .bijan-product-image-wrap {
 order: 0; width: 100%; aspect-ratio: 1; overflow: hidden; border-radius: 11px;
 background: #f3f5f5; flex-shrink: 0;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .bijan-product-image-wrap img {
 display: block; width: 100%; height: 100%; aspect-ratio: 1; object-fit: cover;
 min-width: 0; max-height: none; margin: 0; border-radius: 0;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-loop-product__title {
 order: 1; margin: 0; padding: 0 3px; height: 3.6em; min-height: 3.6em;
 color: #24333b; font-size: 14px; font-weight: 650; line-height: 1.8; text-align: start;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom {
 display: grid !important; grid-template-columns: minmax(0, 1fr) 44px;
 grid-template-rows: 44px minmax(56px, auto); grid-area: 2 / 1; align-items: center;
 gap: 8px; height: auto !important; min-height: 0 !important;
 padding: 0 10px 6px; margin-top: -38px; text-align: start; background: transparent; position: static; z-index: 2; box-sizing: border-box;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom :is(.price, .stock) {
 grid-column: 1; grid-row: 2; display: flex; flex-wrap: wrap;
 align-items: baseline; justify-content: flex-start; gap: 4px 10px;
 margin: 0; min-width: 0; text-align: start; line-height: 1.7;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .price:has(del) { display: flex; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .price del { order: 2; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .price ins { order: 1; background: none; text-decoration: none; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .amount { color: #076966; font-size: 16px; font-weight: 750; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom del .amount { color: #64717b; font-size: 12px; font-weight: 400; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom bdi { display: inline-flex; align-items: center; justify-content: start; gap: 4px; white-space: nowrap; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-Price-currencySymbol { color: #076966; font-size: 11px; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-Price-currencySymbol svg { width: 25px; height: 18px; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-Price-currencySymbol path { fill: #076966; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .wishlist-button {
 grid-column: 2; grid-row: 2; position: relative; inset: auto; z-index: 3;
 display: grid; place-items: center; width: 44px; height: 44px;
 padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: #52616b;
 box-sizing: border-box; cursor: pointer;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .wishlist-button i::before {
 content: ""; display: block; width: 19px; height: 19px; background: currentColor;
 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .wishlist-button .bijan-icon-heart-bold {
 color: #087a78;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .wishlist-button .bijan-icon-heart-bold::before {
 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom > :is(.add_to_cart_button, .cloz-card-cart) {
 grid-column: 1 / -1; grid-row: 1; justify-self: center; display: flex; align-items: center; justify-content: center;
 gap: 6px; width: 44px; height: 44px; min-width: 0; padding: 0 6px;
 border: 1px solid #cfe4e1; border-radius: 10px; background: #edf7f5; color: #096c68;
 font-size: 19px; box-sizing: border-box;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom > :is(.add_to_cart_button, .cloz-card-cart)::after {
 content: none;
}
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom > .ajax_add_to_cart::after { content: none; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom > a.added_to_cart { grid-column: 1 / -1; grid-row: 3; font-size: 12px; color: #076966; }
@media (hover: hover) {
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product):hover .product-inner { filter: drop-shadow(0 4px 10px #20343b12); }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom > :is(.add_to_cart_button, .cloz-card-cart):hover { background: #dcefea; color: #064f4d; }
}
/* No Swiper classes: the rail never changes from a grid into a slider at startup. */
.cloz-related { min-width: 0; max-width: 100%; }
.cloz-related .cloz-related-rail {
 display: grid !important; grid-auto-flow: column; grid-template-columns: none;
 grid-auto-columns: calc((100% - 64px) / 5); gap: 16px;
 width: 100%; margin: 0; padding: 4px 0 12px; list-style: none;
 overflow-x: auto; overflow-y: hidden; height: auto; max-height: none; align-items: stretch; box-sizing: border-box; scroll-snap-type: x proximity; scroll-padding-inline: 2px;
 scrollbar-width: thin; scrollbar-color: #a1c4be #edf4f2;
}
.cloz-related .cloz-related-rail::before, .cloz-related .cloz-related-rail::after { content: none; }
.cloz-related .cloz-related-rail > .product { width: auto !important; margin: 0 !important; float: none; scroll-snap-align: start; }
@media (max-width: 1100px) {
 .cloz-related .cloz-related-rail { grid-auto-columns: calc((100% - 32px) / 3); }
}
@media (max-width: 768px) {
 body.woocommerce.archive .woocommerce-products-header { margin-block: 8px 0; gap: 10px; }
 body.woocommerce.archive #primary.content-area { gap: 14px; }
 .cloz-catalog-toolbar { gap: 7px; padding: 8px; border-radius: 13px; }
 .cloz-sort-options { gap: 4px; }
 body.woocommerce.archive #sort-wrap.cloz-catalog-sort .sort-item { min-height: 38px; padding: 6px 3px; font-size: 11px; }
 .cloz-catalog-toolbar #sidebar.sidebar-shop { align-self: end; }
 body.woocommerce.archive .entry-container .products.mobile-columns { --mobile-column-gap: 10px !important; --mobile-row-gap: 14px !important; align-items: stretch; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-inner { border-radius: 13px; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-loop-product__link { padding: 7px 7px 42px; gap: 6px; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-loop-product__title { font-size: 13px; line-height: 1.85; height: 3.7em; min-height: 3.7em; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom { padding: 0 7px 6px; gap: 6px; grid-template-columns: minmax(0, 1fr) 44px; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .price { flex-direction: column; gap: 0; align-items: flex-start; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .price del { order: 0; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom .amount { font-size: 14px; }
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom del .amount { font-size: 11px; }
 .cloz-related .cloz-related-rail { grid-auto-columns: 44%; gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-inner { transition: none; }
 .cloz-related .cloz-related-rail { scroll-behavior: auto; }
}

/* The existing AJAX cart component uses buttons and owns its loading spinner. */
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .cloz-card-cart:not(.cloz-cart-is-loading):not(.is-unavailable) { color: #096c68 !important; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .cloz-card-cart.is-unavailable::after { content: none; }
@media (max-width: 360px) {
 :is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .product-bottom > :is(.add_to_cart_button, .cloz-card-cart):not(.cloz-cart-is-loading)::after { content: none; }
}

/* Align the product grid with the toolbar instead of Bootstrap's inner gutters. */
body.woocommerce.archive #primary.content-area > .entry-container { padding-inline: 0; }
body.woocommerce.archive .entry-container > .bijan-products-slider > .products.products-style-1 {
 display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px 16px;
 margin: 0; padding: 0;
}
body.woocommerce.archive .entry-container > .bijan-products-slider > .products.products-style-1::before,
body.woocommerce.archive .entry-container > .bijan-products-slider > .products.products-style-1::after { content: none; }
body.woocommerce.archive .entry-container > .bijan-products-slider > .products.products-style-1 > .product {
 width: auto !important; max-width: none; margin: 0; float: none;
}
@media (max-width: 1100px) {
 body.woocommerce.archive .entry-container > .bijan-products-slider > .products.products-style-1 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
 body.woocommerce.archive .entry-container > .bijan-products-slider > .products.products-style-1 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
}
/* Use readable currency text rather than the parent's neon SVG wordmark. */
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .woocommerce-Price-currencySymbol:has(.currency-symbol-text) svg { display: none; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .currency-symbol-text { display: inline; font-weight: 500; }
:is(body.woocommerce.archive .entry-container, body) .products.products-style-1 .product:not(.special-product) .price del bdi { text-decoration: line-through; }

/* An empty WooCommerce notice was occupying a third header grid row. */
body.woocommerce.archive .woocommerce-products-header > .woocommerce-notices-wrapper:empty { display: none; }
