/* Shared manufacturer artwork. Neutral at rest, native brand colours on hover/focus. */
html body .vkpe-brand-visual {
	display: grid; grid-template-columns: minmax(0, 1fr); place-items: center;
	width: 100%; height: 54px; min-width: 0;
	background: transparent !important; border: 0; overflow: visible;
}
html body .vkpe-brand-visual .vkpe-brand-visual__image {
	grid-area: 1 / 1; display: block; min-width: 0; width: auto !important; height: auto !important;
	max-width: calc(100% * var(--vkpe-brand-optical-scale, 1)) !important;
	max-height: calc(44px * var(--vkpe-brand-optical-scale, 1)) !important;
	object-fit: contain; border: 0 !important; border-radius: 0 !important;
	background: transparent !important; box-shadow: none !important;
	filter: brightness(0) !important; opacity: .8;
	transition: filter 180ms ease, opacity 180ms ease;
}
html body .vkpe-brand-visual .vkpe-brand-visual__image--light { display: block !important; }
html body .vkpe-brand-visual .vkpe-brand-visual__image--dark { display: none !important; }
html body .vkpe-brand-visual__fallback {
	display: block; max-width: 100%; color: #414751; text-align: center;
	font-size: 19px; font-weight: 600; line-height: 1.2; overflow-wrap: anywhere;
}
html[data-vk-theme="dark"] body .vkpe-brand-visual__fallback { color: #d2d7df; }
html[data-vk-theme="dark"] body .vkpe-brand-visual .vkpe-brand-visual__image--light { display: none !important; }
html[data-vk-theme="dark"] body .vkpe-brand-visual .vkpe-brand-visual__image--dark { display: block !important; }
html[data-vk-theme="dark"] body .vkpe-brand-visual .vkpe-brand-visual__image { filter: brightness(0) invert(1) !important; opacity: .83; }
html body :is(a:hover, a:focus-visible) > .vkpe-brand-visual .vkpe-brand-visual__image,
html body :is(a:hover, a:focus-visible) > span > .vkpe-brand-visual .vkpe-brand-visual__image {
	filter: none !important; opacity: 1;
}
html body :is(.vkpe-legacy-brand-carousel__item, .vkpe-legacy-brand-directory__item, .vkpe-brand-tile) {
	background: transparent !important; border: 0 !important; box-shadow: none !important;
	text-decoration: none !important; color: inherit;
}
html body :is(.vkpe-legacy-brand-carousel__item, .vkpe-legacy-brand-directory__item, .vkpe-brand-tile):is(:hover, :focus-visible) {
	background: transparent !important; border: 0 !important; box-shadow: none !important;
	text-decoration: none !important;
}
html body :is(.vkpe-legacy-brand-carousel__item, .vkpe-legacy-brand-directory__item, .vkpe-brand-tile)::after { content: none !important; }
html body :is(.vkpe-legacy-brand-carousel__item, .vkpe-legacy-brand-directory__item, .vkpe-brand-tile):focus-visible {
	outline: 2px solid #8f9baa !important; outline-offset: -2px; border-radius: 3px;
}
html body .vkpe-legacy-brand-carousel__item { position: relative; padding: 10px 8px; height: 96px; }
/* Preserve internal light/dark detail in marks with a coloured emblem. */
html body .vkpe-brand-visual:is([data-vkpe-brand-key="rycote"], [data-vkpe-brand-key="robocup"]) .vkpe-brand-visual__image { filter: grayscale(1) !important; }
html body .vkpe-legacy-brand-carousel__control {
	border: 0 !important; background: transparent !important; box-shadow: none !important;
	color: #4a5360; width: 28px; height: 44px; padding: 0;
}
html[data-vk-theme="dark"] body .vkpe-legacy-brand-carousel__control { color: #cdd3dc; }
html body .vkpe-legacy-brand-carousel__control:is(:hover, :focus-visible) { color: inherit; background: transparent !important; }
html body .vkpe-legacy-brand-carousel__control:focus-visible { outline: 2px solid #8f9baa !important; outline-offset: 2px; }
html body .vkpe-legacy-brand-carousel__control svg { display: block; width: 20px; height: 20px; }
html body .vkpe-legacy-brand-directory__item { min-height: 112px; padding: 22px 14px; }
html body .vkpe-legacy-brand-directory__logo { height: 76px; width: 100%; }
html body .vkpe-legacy-product-brand-logo .vkpe-brand-visual { width: 150px; }
html body .vk-brand-thumbnail__link:has(.vkpe-brand-visual) { background: transparent !important; padding: 8px; }
html body .vk-brand-thumbnail__link .vkpe-brand-visual {
	grid-template-rows: minmax(0, 1fr); height: 100%; min-height: 0; max-height: 100%;
}
html body .vkpe-brand-visual--thumbnail .vkpe-brand-visual__fallback {
	min-height: 0; max-height: 100%; font-size: 12px; line-height: 1.1;
}
html body .vk-brand-thumbnail.is-vk-fixed-brand .vkpe-brand-visual__fallback { font-size: 10px; }
html body .vkpe-brand-visual--thumbnail .vkpe-brand-visual__image { max-height: 56px !important; }
/* The gallery shares the white product-photo surface in both storefront modes.
   Photo styles have high-specificity !important rules, so constrain this slot. */
html body.single-product .product_thumbnails .vk-brand-thumbnail__link:has(.vkpe-brand-visual) {
	background: #fff !important;
}
html body.single-product .product_thumbnails .vk-brand-thumbnail__link .vkpe-brand-visual .vkpe-brand-visual__image {
	min-height: 0; width: auto !important; height: auto !important; max-width: 100% !important;
	max-height: min(56px, 100%) !important; aspect-ratio: auto !important;
	background: transparent !important; filter: brightness(0) !important; opacity: .8;
}
html body.single-product .product_thumbnails .vk-brand-thumbnail__link .vkpe-brand-visual__image--dark {
	display: none !important;
}
html body.single-product .product_thumbnails .vk-brand-thumbnail__link .vkpe-brand-visual__image--light {
	display: block !important;
}
html body.single-product .product_thumbnails .vk-brand-thumbnail__link .vkpe-brand-visual:is([data-vkpe-brand-key="rycote"], [data-vkpe-brand-key="robocup"]) .vkpe-brand-visual__image { filter: grayscale(1) !important; }
html body.single-product .product_thumbnails .vk-brand-thumbnail__link:is(:hover, :focus-visible) .vkpe-brand-visual .vkpe-brand-visual__image { filter: none !important; opacity: 1; }
html body.single-product .product_thumbnails .vk-brand-thumbnail__link .vkpe-brand-visual__fallback { color: #414751; }
html body .vkpe-brand-visual--hero { width: 180px; height: 90px; }
html body .vkpe-brand-visual--hero .vkpe-brand-visual__image { max-height: 80px !important; }
html body .vkpe-brand-strip .vkpe-brand-visual { width: 135px; }
html[data-vk-theme="dark"] body .vkpe-brand-hero { background-color: #171c23; color: #d6dde7; }
html[data-vk-theme="dark"] body .vkpe-brand-hero::after { background: linear-gradient(90deg, rgba(17,22,29,.98), rgba(17,22,29,.88) 60%, rgba(17,22,29,.45)); }
html[data-vk-theme="dark"] body .vkpe-brand-hero h1,
html[data-vk-theme="dark"] body .vkpe-brand-links a { color: #edf1f7; }
/* The catalogue photograph stays dark in both storefront colour modes. */
html body .site_header .brand-description .vkpe-brand-visual { margin-inline: auto; }
html body .site_header .brand-description .vkpe-brand-visual__image--light { display: none !important; }
html body .site_header .brand-description .vkpe-brand-visual__image--dark { display: block !important; }
html body .site_header .brand-description .vkpe-brand-visual__image { filter: brightness(0) invert(1) !important; opacity: .83; }
html body .site_header .brand-description :is(a:hover, a:focus-visible) .vkpe-brand-visual__image { filter: none !important; opacity: 1; }
html body .vkpe-brand-preview { width: 220px; padding: 10px 16px; }
html body .vkpe-brand-preview--light { background: #fff !important; }
html body .vkpe-brand-preview--dark { background: #10151b !important; }
html body .vkpe-brand-preview--light .vkpe-brand-visual__fallback { color: #414751; }
html body .vkpe-brand-preview--dark .vkpe-brand-visual__fallback { color: #d2d7df; }
html body .vkpe-brand-preview--light .vkpe-brand-visual__image--light { display: block !important; filter: none !important; opacity: 1; }
html body .vkpe-brand-preview--light .vkpe-brand-visual__image--dark { display: none !important; }
html body .vkpe-brand-preview--dark .vkpe-brand-visual__image--dark { display: block !important; filter: none !important; opacity: 1; }
html body .vkpe-brand-preview--dark .vkpe-brand-visual__image--light { display: none !important; }
@media (prefers-reduced-motion: reduce) { html body .vkpe-brand-visual .vkpe-brand-visual__image { transition: none; } }
