/*
 * CeeLife Shop — Phase 1 catalog styles.
 * Loaded ONLY on Shop / product category / tag / brand archives / product search.
 * Every rule is scoped under .cl-shop or body.cl-shop-active, so nothing here can reach the homepage.
 *
 * Layout concept: a charcoal "dial" band under the theme header — editorial hero with a
 * minute-track rule, then a quiet filter column beside a wide catalogue grid.
 */

.cl-shop {
	--cl-ink: #141311;          /* charcoal black */
	--cl-ink-2: #1b1a17;        /* raised surface */
	--cl-ink-3: #23211d;        /* image well */
	--cl-line: rgba(226, 206, 160, 0.14);
	--cl-line-2: rgba(226, 206, 160, 0.3);
	--cl-cream: #efe7d6;        /* primary type */
	--cl-cream-2: #c9bfab;      /* secondary type */
	--cl-cream-3: #8f877a;      /* tertiary type */
	--cl-gold: #c8a96b;         /* champagne gold */
	--cl-gold-2: #e2c88f;       /* light champagne */
	--cl-serif: "Bodoni Moda", "Bodoni 72", Didot, "Didot LT STD", Georgia, serif;
	--cl-sans: "Jost", "Futura", "Century Gothic", "Avenir Next", system-ui, sans-serif;
	--cl-ease: cubic-bezier(0.2, 0.7, 0.2, 1);

	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	background: var(--cl-ink);
	color: var(--cl-cream);
	font-family: var(--cl-sans);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body.cl-shop-active { overflow-x: clip; }
/* Parent-theme wrapper spacing around the catalog (Basel). Verify class names on staging. */
body.cl-shop-active .main-page-wrapper { padding-top: 0; padding-bottom: 0; background: #141311; }
body.cl-shop-active .page-title-default,
body.cl-shop-active .page-title.page-title-default { display: none; }
body.cl-noscroll { overflow: hidden; }

/* ---------- local reset (scoped) ---------- */
.cl-shop *, .cl-shop *::before, .cl-shop *::after { box-sizing: border-box; }
.cl-shop ul, .cl-shop ol { list-style: none; margin: 0; padding: 0; }
.cl-shop li { margin: 0; }
.cl-shop p { margin: 0; }
.cl-shop a { color: inherit; text-decoration: none; }
.cl-shop a:hover, .cl-shop a:focus { color: inherit; }
.cl-shop h1, .cl-shop h2 { margin: 0; text-transform: none; letter-spacing: normal; }
.cl-shop img { max-width: 100%; height: auto; }
.cl-shop :focus-visible { outline: 2px solid var(--cl-gold-2); outline-offset: 3px; }
.cl-shop .screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

.cl-wrap {
	max-width: 1440px;
	margin: 0 auto;
	padding-left: max(20px, env(safe-area-inset-left, 0px));
	padding-right: max(20px, env(safe-area-inset-right, 0px));
}

/* ---------- hero ---------- */
.cl-hero { position: relative; border-bottom: 1px solid var(--cl-line); }
.cl-hero__inner {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding-block: clamp(32px, 5vw, 80px) clamp(28px, 4vw, 56px);
}
.cl-shop .cl-crumbs {
	margin: 0; padding: 0;
	display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
	font-size: 0.78rem; color: var(--cl-cream-3); letter-spacing: 0.04em;
}
.cl-crumbs a { color: var(--cl-cream-2); transition: color 0.3s var(--cl-ease); }
.cl-crumbs a:hover { color: var(--cl-gold-2); }
.cl-crumbs__sep { color: var(--cl-line-2); }
.cl-eyebrow {
	font-size: 0.72rem; font-weight: 400; letter-spacing: 0.3em; text-transform: uppercase; color: var(--cl-gold);
}
.cl-shop .cl-title {
	font-family: var(--cl-serif);
	font-weight: 400;
	font-size: clamp(2.6rem, 6.4vw, 5.6rem);
	line-height: 0.98;
	letter-spacing: -0.015em;
	color: var(--cl-cream);
	text-wrap: balance;
	max-width: 18ch;
}
.cl-hero__desc { max-width: 64ch; color: var(--cl-cream-2); font-size: 1rem; }
.cl-hero__desc:empty { display: none; }
.cl-hero__desc p + p { margin-top: 0.8em; }
.cl-hero__desc a { color: var(--cl-gold-2); text-decoration: underline; text-underline-offset: 3px; }
.cl-catnav { display: flex; flex-wrap: wrap; gap: 6px 28px; margin-top: 10px; }
.cl-catnav a {
	position: relative; padding-block: 6px;
	font-size: 0.78rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--cl-cream-2);
	transition: color 0.3s var(--cl-ease);
}
.cl-catnav a::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;
	background: var(--cl-gold); transform: scaleX(0); transform-origin: left; transition: transform 0.45s var(--cl-ease);
}
.cl-catnav a:hover, .cl-catnav a[aria-current="page"] { color: var(--cl-cream); }
.cl-catnav a:hover::after, .cl-catnav a[aria-current="page"]::after { transform: scaleX(1); }

/* Minute track: 60 small ticks with a longer tick every 5, like a dial's chapter ring. */
.cl-track {
	height: 12px;
	background-image:
		repeating-linear-gradient(90deg, var(--cl-line-2) 0 1px, transparent 1px 60px),
		repeating-linear-gradient(90deg, var(--cl-line) 0 1px, transparent 1px 12px);
	background-size: 100% 12px, 100% 5px;
	background-position: 0 100%, 0 100%;
	background-repeat: no-repeat;
}

/* ---------- layout ---------- */
.cl-layout {
	display: grid;
	grid-template-columns: 264px minmax(0, 1fr);
	gap: clamp(32px, 4vw, 64px);
	padding-block: 44px 96px;
	align-items: start;
}
.cl-results { min-width: 0; }

/* ---------- filters ---------- */
.cl-shop { --cl-sticky-top: 24px; } /* raise if the theme's sticky header overlaps the filter column */
body.admin-bar .cl-shop { --cl-sticky-top: 56px; }
.cl-filters {
	position: sticky;
	top: var(--cl-sticky-top);
	max-height: calc(100vh - var(--cl-sticky-top) - 24px);
	overflow: auto;
	scrollbar-width: thin;
	scrollbar-color: var(--cl-line-2) transparent;
}
.cl-filters__head, .cl-filters__foot { display: none; }
.cl-filters__title {
	font-family: var(--cl-serif); font-size: 1.6rem; font-weight: 400; color: var(--cl-cream);
}
.cl-fgroup { display: flex; flex-direction: column; gap: 14px; padding-block: 22px; border-top: 1px solid var(--cl-line); }
.cl-fgroup:first-child { border-top: 0; padding-top: 0; }
.cl-fgroup__label {
	font-size: 0.7rem; font-weight: 400; letter-spacing: 0.24em; text-transform: uppercase; color: var(--cl-gold);
}
.cl-shop .cl-input {
	width: 100%; min-width: 0; height: 44px; padding: 0 12px;
	background: var(--cl-ink-2); color: var(--cl-cream);
	border: 1px solid var(--cl-line-2); border-radius: 0; box-shadow: none;
	font: inherit; font-size: 0.92rem; font-variant-numeric: tabular-nums;
	transition: border-color 0.3s var(--cl-ease);
}
.cl-shop .cl-input::placeholder { color: var(--cl-cream-3); opacity: 1; }
.cl-shop .cl-input:focus { border-color: var(--cl-gold); outline: none; }
.cl-shop .cl-input:focus-visible { outline: 2px solid var(--cl-gold-2); outline-offset: 2px; }
.cl-search__row { display: flex; }
.cl-search__row .cl-input { border-right: 0; }
.cl-search__icon {
	display: block; width: 15px; height: 15px; border: 1.5px solid currentColor; border-radius: 50%; position: relative;
}
.cl-search__icon::after {
	content: ""; position: absolute; width: 6px; height: 1.5px; background: currentColor;
	right: -5px; bottom: -2px; transform: rotate(45deg);
}

.cl-opts { display: flex; flex-direction: column; gap: 2px; }
.cl-opt {
	display: grid; grid-template-columns: 14px minmax(0, 1fr) auto; align-items: center; gap: 12px;
	padding: 7px 0; font-size: 0.92rem; color: var(--cl-cream-2);
	transition: color 0.25s var(--cl-ease);
}
.cl-opt__box {
	width: 14px; height: 14px; border: 1px solid var(--cl-line-2); position: relative;
	transition: border-color 0.25s var(--cl-ease), background-color 0.25s var(--cl-ease);
}
.cl-opt__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cl-opt__n { font-size: 0.78rem; color: var(--cl-cream-3); font-variant-numeric: tabular-nums; }
.cl-opt:hover { color: var(--cl-cream); }
.cl-opt:hover .cl-opt__box { border-color: var(--cl-gold); }
.cl-opt.is-on { color: var(--cl-cream); }
.cl-opt.is-on .cl-opt__box { background: var(--cl-gold); border-color: var(--cl-gold); }
.cl-opt.is-on .cl-opt__box::after {
	content: ""; position: absolute; left: 4px; top: 1px; width: 4px; height: 8px;
	border: solid var(--cl-ink); border-width: 0 1.5px 1.5px 0; transform: rotate(45deg);
}

.cl-price__row { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: end; gap: 10px; }
.cl-price__field { display: flex; flex-direction: column; gap: 6px; font-size: 0.74rem; color: var(--cl-cream-3); }
.cl-price__dash { padding-bottom: 11px; color: var(--cl-cream-3); }
.cl-price__hint { font-size: 0.78rem; color: var(--cl-cream-3); }

/* ---------- buttons ---------- */
.cl-shop .cl-btn,
.cl-shop .cl-card .button {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 0 18px;
	background: transparent; color: var(--cl-gold-2);
	border: 1px solid var(--cl-gold); border-radius: 0; box-shadow: none; text-shadow: none;
	font-family: var(--cl-sans); font-size: 0.72rem; font-weight: 400; line-height: 1;
	letter-spacing: 0.2em; text-transform: uppercase; cursor: pointer;
	transition: background-color 0.35s var(--cl-ease), color 0.35s var(--cl-ease), border-color 0.35s var(--cl-ease);
}
.cl-shop .cl-btn:hover,
.cl-shop .cl-card .button:hover { background: var(--cl-gold); color: var(--cl-ink); border-color: var(--cl-gold); }
.cl-shop .cl-btn--solid { background: var(--cl-gold); color: var(--cl-ink); }
.cl-shop .cl-btn--solid:hover { background: var(--cl-gold-2); border-color: var(--cl-gold-2); }
.cl-shop .cl-btn--icon { width: 44px; padding: 0; flex: none; }
.cl-shop .cl-card .button.loading { opacity: 0.55; pointer-events: none; }
.cl-shop .cl-card .button.added::after { content: " ✓"; letter-spacing: 0; }
.cl-shop .cl-card .added_to_cart {
	display: inline-block; margin-top: 10px; font-size: 0.78rem; color: var(--cl-gold-2);
	text-decoration: underline; text-underline-offset: 3px; letter-spacing: 0.04em;
}

/* ---------- toolbar ---------- */
.cl-toolbar {
	display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px;
	padding-bottom: 18px; border-bottom: 1px solid var(--cl-line);
}
.cl-toolbar__count { flex: 1 1 auto; min-width: 0; }
.cl-shop .cl-toolbar .woocommerce-result-count {
	margin: 0; float: none; font-size: 0.84rem; color: var(--cl-cream-3); letter-spacing: 0.02em;
}
.cl-shop .cl-toolbar .woocommerce-ordering { margin: 0; float: none; }
.cl-shop .cl-toolbar select.orderby {
	height: 44px; min-width: 220px; max-width: 100%; padding: 0 40px 0 14px;
	background-color: var(--cl-ink-2);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23c8a96b' stroke-width='1.2'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 14px center;
	color: var(--cl-cream); border: 1px solid var(--cl-line-2); border-radius: 0;
	font: inherit; font-size: 0.86rem; -webkit-appearance: none; appearance: none; cursor: pointer;
}
.cl-shop .cl-toolbar select.orderby:focus-visible { outline: 2px solid var(--cl-gold-2); outline-offset: 2px; }
.cl-filter-toggle { display: none; }

/* ---------- chips ---------- */
.cl-chips { display: flex; flex-wrap: wrap; gap: 8px; padding-top: 18px; }
.cl-chip {
	display: inline-flex; align-items: center; gap: 10px; min-height: 34px; padding: 0 14px;
	border: 1px solid var(--cl-line-2); font-size: 0.8rem; color: var(--cl-cream);
	transition: border-color 0.3s var(--cl-ease), color 0.3s var(--cl-ease);
}
.cl-chip:hover { border-color: var(--cl-gold); color: var(--cl-gold-2); }
.cl-chip__x { color: var(--cl-gold); font-size: 1rem; line-height: 1; }
.cl-chip--clear { border-color: transparent; color: var(--cl-cream-3); text-decoration: underline; text-underline-offset: 3px; }

/* ---------- notices (WooCommerce) ---------- */
.cl-notices:empty { display: none; }
.cl-notices { padding-top: 18px; }
.cl-shop .cl-notices .woocommerce-message,
.cl-shop .cl-notices .woocommerce-info,
.cl-shop .cl-notices .woocommerce-error {
	margin: 0; padding: 14px 18px; list-style: none;
	background: var(--cl-ink-2); color: var(--cl-cream); border: 0; border-left: 2px solid var(--cl-gold);
	font-size: 0.9rem;
}
.cl-shop .cl-notices .woocommerce-message::before,
.cl-shop .cl-notices .woocommerce-info::before { display: none; }
.cl-shop .cl-notices a { color: var(--cl-gold-2); text-decoration: underline; text-underline-offset: 3px; }
.cl-shop .cl-notices .button { float: right; margin-left: 16px; background: none; border: 0; padding: 0; color: var(--cl-gold-2); }

/* ---------- grid + cards ---------- */
.cl-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 36px 16px;
	padding-top: 32px;
}
.cl-shop .cl-card {
	display: flex; flex-direction: column; min-width: 0;
	float: none; width: auto; margin: 0; padding: 0; text-align: left;
}
.cl-card__media {
	position: relative; display: block; aspect-ratio: 4 / 5; max-width: 100%;
	overflow: hidden; background: var(--cl-ink-3);
}
.cl-card__media::after {
	content: ""; position: absolute; inset: 10px; pointer-events: none;
	border: 1px solid rgba(226, 200, 143, 0); transition: border-color 0.6s var(--cl-ease);
}
.cl-shop .cl-card__img {
	position: absolute; inset: 0; width: 100%; height: 100%; max-width: none;
	object-fit: cover; display: block; margin: 0;
	transition: transform 1.1s var(--cl-ease), opacity 0.7s var(--cl-ease), filter 0.6s var(--cl-ease);
}
.cl-shop .cl-card__img--alt { opacity: 0; }
@media (hover: hover) {
	.cl-card:hover .cl-card__img { transform: scale(1.035); }
	.cl-card:hover .cl-card__img--alt { opacity: 1; }
	.cl-card:hover .cl-card__media::after { border-color: rgba(226, 200, 143, 0.55); }
}
.cl-badge {
	position: absolute; top: 12px; left: 12px; z-index: 1;
	padding: 6px 10px; font-size: 0.62rem; font-weight: 400; letter-spacing: 0.22em; text-transform: uppercase; line-height: 1;
}
.cl-badge--sale { background: var(--cl-gold); color: var(--cl-ink); }
.cl-badge--sold { background: rgba(20, 19, 17, 0.84); color: var(--cl-cream-2); border: 1px solid var(--cl-line-2); }
.cl-card--sold .cl-card__img { filter: grayscale(0.7) brightness(0.72); }

.cl-card__body { display: flex; flex-direction: column; gap: 8px; padding-top: 16px; flex: 1 1 auto; }
.cl-card__brand--none { visibility: hidden; }
.cl-card__brand {
	font-size: 0.66rem; font-weight: 400; letter-spacing: 0.26em; text-transform: uppercase; color: var(--cl-gold);
}
.cl-shop .cl-card__title {
	font-family: var(--cl-sans); font-size: 0.94rem; font-weight: 400; line-height: 1.45; color: var(--cl-cream);
	padding: 0; margin: 0;
}
.cl-card__title a {
	display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
	overflow-wrap: anywhere;
	text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 4px; text-decoration-thickness: 1px;
	transition: text-decoration-color 0.4s var(--cl-ease), color 0.4s var(--cl-ease);
}
.cl-card:hover .cl-card__title a, .cl-card__title a:focus-visible { text-decoration-color: var(--cl-gold); }
.cl-shop .cl-card__price {
	margin-top: auto; padding-top: 4px;
	font-size: 1.04rem; font-weight: 400; color: var(--cl-gold-2); font-variant-numeric: tabular-nums; letter-spacing: 0.02em;
}
.cl-shop .cl-card__price del { color: var(--cl-cream-3); font-size: 0.86em; margin-right: 6px; opacity: 1; }
.cl-shop .cl-card__price ins { text-decoration: none; background: none; color: var(--cl-gold-2); font-weight: 400; }
.cl-card__stock {
	display: flex; align-items: center; gap: 8px; font-size: 0.74rem; color: var(--cl-cream-3); letter-spacing: 0.06em;
}
.cl-card__stock::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--cl-gold); }
.cl-card--sold .cl-card__stock::before { background: var(--cl-cream-3); }
.cl-card__actions { padding-top: 6px; }
.cl-shop .cl-card .button { width: 100%; }

/* ---------- pagination (WooCommerce markup) ---------- */
.cl-pagination { padding-top: 64px; }
.cl-shop .woocommerce-pagination { text-align: center; }
.cl-shop .woocommerce-pagination ul.page-numbers {
	display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 6px; border: 0; margin: 0;
}
.cl-shop .woocommerce-pagination ul.page-numbers li { border: 0; float: none; overflow: visible; }
.cl-shop .woocommerce-pagination .page-numbers a,
.cl-shop .woocommerce-pagination .page-numbers span {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 44px; height: 44px; padding: 0 12px;
	background: transparent; color: var(--cl-cream-2); border: 1px solid var(--cl-line);
	font-size: 0.86rem; font-variant-numeric: tabular-nums; line-height: 1;
	transition: border-color 0.3s var(--cl-ease), color 0.3s var(--cl-ease);
}
.cl-shop .woocommerce-pagination .page-numbers a:hover { border-color: var(--cl-gold); color: var(--cl-cream); background: transparent; }
.cl-shop .woocommerce-pagination .page-numbers span.current { background: var(--cl-gold); border-color: var(--cl-gold); color: var(--cl-ink); }
.cl-shop .woocommerce-pagination .page-numbers span.dots { border-color: transparent; }

/* ---------- empty ---------- */
.cl-empty { display: flex; flex-direction: column; gap: 20px; align-items: flex-start; padding-block: 64px; }
.cl-empty__title { font-family: var(--cl-serif); font-size: clamp(1.6rem, 3vw, 2.2rem); color: var(--cl-cream); }

/* ---------- responsive ---------- */
@media (min-width: 720px) {
	.cl-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 24px; }
}
@media (min-width: 1280px) {
	.cl-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 56px 28px; }
}

@media (max-width: 959.98px) {
	.cl-layout { grid-template-columns: minmax(0, 1fr); padding-block: 28px 72px; }
	.cl-filters { position: static; max-height: none; overflow: visible; }

	/* With JS the panel becomes a slide-over drawer; without JS it stays above the grid. */
	.cl-shop.has-js .cl-filters {
		position: fixed; top: 0; bottom: 0; left: 0; z-index: 100000;
		width: min(88vw, 380px); max-height: none;
		display: flex; flex-direction: column;
		background: var(--cl-ink-2); border-right: 1px solid var(--cl-line);
		padding-top: env(safe-area-inset-top, 0px);
		padding-bottom: env(safe-area-inset-bottom, 0px);
		padding-left: env(safe-area-inset-left, 0px);
		transform: translateX(-102%); visibility: hidden;
		transition: transform 0.45s var(--cl-ease), visibility 0s linear 0.45s;
	}
	.cl-shop.has-js .cl-filters.is-open { transform: none; visibility: visible; transition: transform 0.45s var(--cl-ease); }
	.cl-shop.has-js .cl-filters__head {
		display: flex; align-items: center; justify-content: space-between;
		padding: 18px 20px; border-bottom: 1px solid var(--cl-line);
	}
	.cl-shop .cl-filters__close {
		width: 44px; height: 44px; background: none; border: 0; color: var(--cl-cream); font-size: 1.6rem; line-height: 1; cursor: pointer;
	}
	.cl-shop.has-js .cl-filters__body { flex: 1 1 auto; overflow: auto; padding: 22px 20px; }
	.cl-shop.has-js .cl-filters__foot { display: block; padding: 16px 20px; border-top: 1px solid var(--cl-line); }
	.cl-shop.has-js .cl-filters__foot .cl-btn { width: 100%; }
	.cl-backdrop {
		position: fixed; inset: 0; z-index: 99999; background: rgba(8, 8, 7, 0.62);
		opacity: 0; transition: opacity 0.4s var(--cl-ease);
	}
	.cl-shop.filters-open .cl-backdrop { opacity: 1; }

	.cl-shop.has-js .cl-filter-toggle {
		display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 16px;
		background: transparent; color: var(--cl-cream); border: 1px solid var(--cl-line-2); border-radius: 0;
		font-family: var(--cl-sans); font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase; cursor: pointer;
	}
	.cl-filter-toggle__icon { width: 14px; height: 10px; border-top: 1px solid currentColor; border-bottom: 1px solid currentColor; position: relative; }
	.cl-filter-toggle__icon::after { content: ""; position: absolute; left: 3px; right: 3px; top: 4px; height: 1px; background: currentColor; }
	.cl-filter-toggle__n {
		display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 5px;
		background: var(--cl-gold); color: var(--cl-ink); font-size: 0.66rem; letter-spacing: 0;
	}
	.cl-toolbar__count { order: 3; flex-basis: 100%; }
	.cl-toolbar__sort { margin-left: auto; }
	.cl-shop .cl-toolbar select.orderby { min-width: 0; width: 100%; }
}

@media (max-width: 480px) {
	.cl-eyebrow { letter-spacing: 0.2em; }
	.cl-catnav { gap: 4px 20px; }
	.cl-grid { gap: 28px 12px; }
	.cl-card__body { gap: 6px; padding-top: 12px; }
	.cl-shop .cl-card__title { font-size: 0.86rem; }
	.cl-shop .cl-card .button { padding: 0 8px; letter-spacing: 0.14em; font-size: 0.66rem; }
	.cl-badge { top: 8px; left: 8px; }
}

@media (prefers-reduced-motion: reduce) {
	.cl-shop *, .cl-shop *::before, .cl-shop *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
	.cl-card:hover .cl-card__img { transform: none; }
}
