/**
 * Ring category pages (v0.9.22): the theme's "Find your ring / Filter the
 * collection" block as one slim row — Shape · Style · Metal as plain
 * drop-downs on the left, the count, Clear all and Sort by on the right —
 * in place of the two-line heading and three tall boxes. Markup is the
 * theme's own; only its presentation changes, and only on the ring
 * categories. Remove this stylesheet to get the theme's block back.
 */
body.keb-ring-category .kinzy-catalog-filter,
body.keb-ring-category.kinzy-catalog-filters-enabled .kinzy-catalog-filter.is-positioned {
	--keb-rc-ink: var(--kinzy-deep-truffle, #211a18);
	--keb-rc-garnet: var(--kinzy-garnet, #351211);
	--keb-rc-gold: var(--kinzy-champagne-gold, #bfa277);
	--keb-rc-muted: #6f6560;
	--keb-rc-soft: #8d857a;
	--keb-rc-line: #d8cec5;
	--keb-rc-line-soft: rgba(53, 18, 17, 0.09);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0 28px;
	padding: 2px 0;
	margin: 0 0 28px;
	border-top: 1px solid var(--keb-rc-line-soft);
	border-bottom: 1px solid var(--keb-rc-line-soft);
	background: transparent;
	visibility: visible;
}
body.keb-ring-category .kinzy-catalog-status { order: 0; flex: 1 1 100%; margin: 0; }

/* the heading goes; the count / Clear all / Sort by line stays, on the right */
body.keb-ring-category .kinzy-catalog-filter-heading { order: 2; display: flex; align-items: center; justify-content: flex-end; flex: 1 1 auto; margin: 0; padding: 0; min-width: 0; border: 0; }
body.keb-ring-category .kinzy-catalog-filter-heading > div:not(.kinzy-catalog-filter-meta) { display: none; }
body.keb-ring-category .kinzy-catalog-filter-meta { gap: 20px; font-size: 12.5px; color: var(--keb-rc-muted); min-height: 52px; }
body.keb-ring-category .kinzy-catalog-filter-meta a { font-size: 12.5px; text-decoration-thickness: 1px; }
body.keb-ring-category .kinzy-catalog-sort { gap: 10px; margin-left: 4px; }
body.keb-ring-category .kinzy-catalog-sort__label { font-size: 10px; letter-spacing: 0.18em; color: var(--keb-rc-soft); }

/* the three drop-downs, inline */
body.keb-ring-category .kinzy-catalog-filter-controls { order: 1; display: flex; flex-wrap: wrap; align-items: center; gap: 0 32px; flex: 0 1 auto; min-width: 0; }
body.keb-ring-category .kinzy-catalog-filter-group { position: relative; min-width: 0; }
body.keb-ring-category .kinzy-catalog-filter-group summary,
body.keb-ring-category .kinzy-catalog-filter-group.has-value summary {
	display: inline-flex; align-items: center; justify-content: flex-start; gap: 10px; min-height: 52px; padding: 0 20px 0 0; margin: 0; line-height: 1.2;
	background: transparent; border: 0; border-radius: 0; box-shadow: none; cursor: pointer; list-style: none; color: var(--keb-rc-ink);
}
body.keb-ring-category .kinzy-catalog-filter-group summary::-webkit-details-marker { display: none; }
body.keb-ring-category .kinzy-catalog-filter-group summary::after,
body.keb-ring-category .kinzy-catalog-filter-group[open] summary::after {
	content: ""; position: absolute; right: 0; top: 50%; width: 10px; height: 7px; margin-top: -3px; font-size: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23211a18' stroke-width='1.3'/%3E%3C/svg%3E") center / 10px 7px no-repeat;
	transition: transform .15s;
}
body.keb-ring-category .kinzy-catalog-filter-group[open] summary::after { transform: rotate(180deg); }
body.keb-ring-category .kinzy-catalog-filter-group summary > span { font-size: 10px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--keb-rc-soft); }
body.keb-ring-category .kinzy-catalog-filter-group summary strong { font-size: 13.5px; font-weight: 500; color: var(--keb-rc-ink); letter-spacing: 0.01em; }
body.keb-ring-category .kinzy-catalog-filter-group.has-value summary strong { color: var(--keb-rc-garnet); border-bottom: 1px solid var(--keb-rc-gold); padding-bottom: 1px; }
body.keb-ring-category .kinzy-catalog-filter-group summary:hover strong { color: var(--keb-rc-garnet); }
body.keb-ring-category .kinzy-catalog-filter-group summary:focus-visible { outline: 2px solid var(--keb-rc-gold); outline-offset: 4px; }

/* the menu: a quiet panel beneath its label */
body.keb-ring-category .kinzy-catalog-filter-menu {
	position: absolute; left: 0; right: auto; top: calc(100% + 2px); z-index: 60; min-width: 240px; max-width: min(360px, 92vw);
	display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; padding: 6px; margin: 0;
	background: #fff; border: 1px solid var(--keb-rc-line); border-radius: 0; box-shadow: 0 18px 36px -22px rgba(33, 26, 24, 0.45);
}
body.keb-ring-category .kinzy-catalog-filter-option { display: flex; align-items: center; gap: 10px; min-height: 38px; padding: 6px 12px; font-size: 13px; color: var(--keb-rc-ink); text-decoration: none; border: 0; border-radius: 0; }
body.keb-ring-category .kinzy-catalog-filter-option:hover { background: var(--kinzy-diamond-white, #f8f6f2); color: var(--keb-rc-garnet); text-decoration: none; }

/* the chip row goes: the chosen value already reads in its drop-down label, Clear all sits by the sort */
body.keb-ring-category .kinzy-catalog-active-filters { display: none; }

@media (max-width: 820px) {
	body.keb-ring-category .kinzy-catalog-filter { gap: 0 20px; }
	body.keb-ring-category .kinzy-catalog-filter-controls { flex: 1 1 100%; gap: 0 22px; }
	body.keb-ring-category .kinzy-catalog-filter-heading { flex: 1 1 100%; justify-content: space-between; border-top: 1px solid var(--keb-rc-line-soft); }
	body.keb-ring-category .kinzy-catalog-filter-meta { width: 100%; justify-content: space-between; min-height: 40px; }
	body.keb-ring-category .kinzy-catalog-filter-group summary { min-height: 40px; }
	body.keb-ring-category .kinzy-catalog-filter-menu { position: absolute; }
}

/* v0.9.25 — the ring cards, in the manner of the best ring builders: three
   across inside a narrower grid with generous gutters (so each card is
   smaller and the page breathes), the name and price a size down. v0.9.26:
   on hover the card turns white and lifts on a soft shadow — drawn with the
   card's own background and box-shadow (the theme switches off ::before and
   ::after on product cards) — the picture gives way to the ring's second
   view, and the other views sit over the foot of the picture to pick from
   (the script adds them from the product's own gallery). */
body.keb-ring-category ul.products.columns-3 { max-width: 1680px; margin: 0 auto; gap: 64px 5%; }
body.keb-ring-category ul.products li.product { position: relative; z-index: 0; padding: 0 0 22px; }
/* The theme pins every card's background and shadow with !important; these
   selectors outrank it on wide screens with a pointer only. */
@media (hover: hover) and (min-width: 1101px) {
	html body.keb-ring-category.woocommerce ul.products li.product.type-product {
		transition: background-color .25s ease, box-shadow .25s ease, transform .25s ease !important;
	}
	html body.keb-ring-category.woocommerce ul.products li.product.type-product:hover,
	html body.keb-ring-category.woocommerce ul.products li.product.type-product:focus-within {
		z-index: 2;
		background-color: #fff !important;
		box-shadow: 0 0 0 22px #fff, 0 26px 56px 16px rgba(33, 26, 24, 0.13) !important;
	}
}
body.keb-ring-category ul.products .product_loop_image { position: relative; }
body.keb-ring-category ul.products .product_title__name { font-size: 18px; line-height: 1.3; }
body.keb-ring-category ul.products .product_title__metal { font-size: 13.5px; }
body.keb-ring-category ul.products .price_container { font-size: 15px; }
body.keb-ring-category ul.products .keb-ring-total__amount { font-size: 16px; }
/* the other views: a quiet strip over the foot of the picture, shown on hover */
body.keb-ring-category .keb-loop-thumbs { position: absolute; left: 0; right: 0; bottom: 12px; z-index: 2; display: flex; justify-content: center; gap: 8px; margin: 0; padding: 0; opacity: 0; transform: translateY(6px); transition: opacity .2s ease, transform .2s ease; pointer-events: none; }
body.keb-ring-category ul.products li.product:hover .keb-loop-thumbs,
body.keb-ring-category ul.products li.product:focus-within .keb-loop-thumbs { opacity: 1; transform: none; pointer-events: auto; }
body.keb-ring-category .keb-loop-thumb { display: block; width: 46px; height: 46px; box-sizing: border-box; background: #fff; border: 1px solid #d8cec5; cursor: pointer; overflow: hidden; transition: border-color .15s ease; }
body.keb-ring-category .keb-loop-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
body.keb-ring-category .keb-loop-thumb:hover, body.keb-ring-category .keb-loop-thumb.is-current { border-color: #211a18; }
body.keb-ring-category .keb-loop-thumb:focus-visible { outline: 2px solid #bfa277; outline-offset: 2px; }
@media (max-width: 1100px) {
	body.keb-ring-category ul.products.columns-3 { gap: 40px 4%; }
	body.keb-ring-category .keb-loop-thumbs { display: none; }
}
@media (hover: none) {
	body.keb-ring-category .keb-loop-thumbs { display: none; }
}

/* v0.9.26 — "The Kinzy Edit / Find Your Style": one compact band. The eyebrow
   goes, the heading becomes a single small-capitals line, the circles come
   down from 108px to 76px and the band's padding tightens — about 60% of the
   height it had, every style still one click away. */
body.keb-ring-category #kinzy-explore-rings { padding: 18px 24px 16px !important; }
body.keb-ring-category #kinzy-explore-rings .kinzy-explore-header { margin: 0 0 12px !important; }
body.keb-ring-category #kinzy-explore-rings .kinzy-explore-eyebrow { display: none !important; }
body.keb-ring-category #kinzy-explore-rings .kinzy-explore-title {
	font-family: var(--kinzy-sans, Jost, "Helvetica Neue", Arial, sans-serif) !important; font-size: 10.5px !important; font-weight: 500 !important;
	letter-spacing: 0.2em !important; line-height: 1.3 !important; text-transform: uppercase !important; color: #6f6560 !important;
}
body.keb-ring-category #kinzy-explore-rings .kinzy-explore-grid { gap: 14px !important; }
body.keb-ring-category #kinzy-explore-rings .kinzy-explore-item { width: 88px !important; flex: 0 0 88px !important; }
body.keb-ring-category #kinzy-explore-rings .kinzy-explore-image { width: 76px !important; height: 76px !important; }
body.keb-ring-category #kinzy-explore-rings .kinzy-explore-label { display: block; margin-top: 7px !important; font-size: 11.5px !important; line-height: 1.25 !important; }
@media (max-width: 767px) {
	body.keb-ring-category #kinzy-explore-rings { padding: 14px 12px 12px !important; }
	body.keb-ring-category #kinzy-explore-rings .kinzy-explore-item { width: 72px !important; flex: 0 0 72px !important; }
	body.keb-ring-category #kinzy-explore-rings .kinzy-explore-image { width: 62px !important; height: 62px !important; }
}

/* v0.9.32 — a diamond already chosen: the ring page opens clean, like Shop by
   Diamond. The theme's hero (photo, "Engagement rings, made around you" and
   its two buttons) steps aside for this journey only; the ring strip, Find
   your style, the filters and the designs that fit stay. The plain ring
   category, with no diamond chosen, keeps its hero. */
body.keb-journey-started-diamond .main_container > .fc_banner { display: none !important; }

/* v0.9.33 — rings first on a ring collection (Oval, Trilogy, Platinum …).
   The theme's intro (breadcrumb, "The Kinzy Collection", the collection's
   title, the setting-price note and its few lines of words) filled the first
   screen; now only where you are and how the prices read stay above the
   filters, and the title and words follow the rings and their page numbers —
   still on the page for search engines. Ordering only: the theme's own
   filters swap the intro in place and it lands the same way. Browsers without
   :has() keep the theme's layout unchanged. */
body.keb-ring-category .main_container:has(> .kinzy-category-intro) { display: flex; flex-direction: column; }
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > :not(.kinzy-category-intro) { box-sizing: border-box; width: 100%; }
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro { display: contents; }
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > * { box-sizing: border-box; width: 100%; margin: 0 !important; text-align: center; }
/* above the filters: where you are, and how the prices read */
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-category-breadcrumb { justify-content: center; padding: 14px 24px 0; }
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-setting-price-note { padding: 4px 24px 12px; font-size: 12.5px !important; line-height: 1.4 !important; color: #6f6560 !important; }
/* a diamond already chosen: the cards show the ring with it, so no setting-price note */
body.keb-journey-started-diamond .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-setting-price-note { display: none !important; }
body.keb-journey-started-diamond .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-category-breadcrumb { padding-bottom: 12px; }
/* after the rings: the collection's title and words, as a quiet closing band */
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > :is(.kinzy-category-eyebrow, #kinzy-category-title, .kinzy-category-summary, .kinzy-category-more) {
	order: 5; background: #f7f2ec;
	padding-left: max(24px, calc((100% - 760px) / 2)); padding-right: max(24px, calc((100% - 760px) / 2));
}
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-category-eyebrow { padding-top: 56px; padding-bottom: 8px; border-top: 1px solid rgba(53, 18, 17, 0.09); }
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > #kinzy-category-title { font-size: clamp(26px, 2.6vw, 34px) !important; line-height: 1.15 !important; }
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-category-summary { max-width: none !important; padding-top: 14px; padding-bottom: 60px; }
body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro:not(:has(> .kinzy-category-summary)) > #kinzy-category-title { padding-bottom: 60px; }
@media (max-width: 767px) {
	body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-category-eyebrow { padding-top: 40px; }
	body.keb-ring-category .main_container:has(> .kinzy-category-intro) > .kinzy-category-intro > .kinzy-category-summary { padding-bottom: 44px; }
}

/* v0.9.33 — phones: the Engagement Rings hero keeps its photo, "Bespoke to
   you", "Engagement Rings, Made Around You" and its two buttons (Explore the
   collection, Speak to a jewellery expert); only the lines of wording beneath
   the title go. v0.9.34: the buttons are back — v0.9.33 hid them too, which
   was not asked for. Larger screens unchanged. */
@media (max-width: 767px) {
	body.keb-ring-category .fc_banner .kinzy-er-hero-content > :is(.kinzy-setting-price-note, p) { display: none !important; }
}
/* the slim filter row keeps the page's side margins on phones and tablets,
   and its count, Clear all and Sort by share one line instead of three */
@media (max-width: 820px) {
	body.keb-ring-category .kinzy-catalog-filter,
	body.keb-ring-category.kinzy-catalog-filters-enabled .kinzy-catalog-filter.is-positioned { box-sizing: border-box; padding-left: 16px; padding-right: 16px; }
	body.keb-ring-category .kinzy-catalog-filter-meta { flex-direction: row !important; flex-wrap: wrap !important; align-items: center !important; justify-content: flex-start !important; gap: 6px 16px !important; padding: 8px 0 !important; min-height: 0 !important; }
	body.keb-ring-category .kinzy-catalog-filter-meta > .kinzy-catalog-sort { margin: 0 0 0 auto !important; }
}
