/* Shared by the frontend and the editor's server-rendered stock previews. */
.is-layout-constrained > .vkn-stock-list.alignwide, .vkn-stock-list { max-width: min(var(--wp--custom--layout--cards-width, 1120px), 100%); margin: 80px auto; }
.vkn-stock-updated { font-size: var(--wp--preset--font-size--small); margin-bottom: 24px; }
.vkn-stock-notice { padding: 24px; background: var(--wp--preset--color--surface); border-radius: var(--wp--custom--border--radius); }
.vkn-stock-categories ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; padding: 0; margin: 0 0 80px; list-style: none; }
.vkn-stock-categories li { min-width: 0; max-width: 100%; }
.vkn-stock-categories a { display: block; box-sizing: border-box; border: 1px solid var(--wp--preset--color--primary); color: var(--wp--preset--color--black); padding: 16px 32px; border-radius: var(--wp--custom--border--radius); font-size: var(--wp--preset--font-size--ui); font-weight: 700; line-height: 22px; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; overflow-wrap: anywhere; }
.vkn-stock-categories a:hover { background: var(--wp--preset--color--surface); }
.vkn-stock-group + .vkn-stock-group { margin-top: 160px; }
.vkn-stock-group > h2 { font-size: var(--wp--preset--font-size--heading-l); line-height: 1.2632; margin: 0 0 32px; scroll-margin-top: 32px; }
.vkn-stock-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 56px 32px; }
.vkn-stock-card, .vkn-stock-card-link { min-width: 0; }
.vkn-stock-card-link { display: flex; height: 100%; flex-direction: column; align-items: flex-start; color: inherit; font-weight: inherit; text-decoration: none; }
.vkn-stock-card-link img { display: block; width: 100%; height: 160px; object-fit: cover; border-radius: var(--wp--custom--border--radius); }
.vkn-stock-card h3 { margin: 32px 0; font-size: var(--wp--preset--font-size--heading-m); line-height: 32px; overflow-wrap: anywhere; }
.vkn-stock-card .wp-element-button { display: inline-block; box-sizing: border-box; max-width: 100%; margin-top: auto; padding: 16px 32px; background: var(--wp--preset--color--primary); color: var(--wp--preset--color--black); border-radius: var(--wp--custom--border--radius); font-size: var(--wp--preset--font-size--ui); font-weight: 700; line-height: 22px; letter-spacing: .1em; text-transform: uppercase; overflow-wrap: anywhere; }
.vkn-stock-card-link:hover .wp-element-button { text-decoration: underline; }
.vkn-stock-detail { max-width: var(--wp--style--global--wide-size); margin: 0 auto 80px; }
.vkn-stock-detail .vk-product-columns { display: flex; gap: 72px; align-items: stretch; }
.vkn-stock-detail .vk-product-copy, .vkn-stock-detail .vk-product-media { flex: 1; min-width: 0; }
.vkn-stock-detail .vkn-stock-price { font-size: var(--wp--preset--font-size--lead); font-weight: 700; }
.vkn-stock-source { margin-top: 24px; }
.vkn-stock-specs { margin-top: 56px; padding: 32px; border-radius: var(--wp--custom--border--radius); background: var(--wp--preset--color--surface); }
.vkn-stock-specs h2 { font-size: var(--wp--preset--font-size--heading-m); line-height: 32px; margin: 0 0 24px; }
.vkn-stock-specs dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 32px; margin: 0; }
.vkn-stock-specs dl > div { min-width: 0; }
.vkn-stock-specs dt { font-weight: 700; }
.vkn-stock-specs dd { margin: 0; overflow-wrap: anywhere; }
.vkn-stock-gallery { margin-top: 80px; }
.vkn-stock-gallery > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
.vkn-stock-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: var(--wp--custom--border--radius); }
.vkn-stock-list a:focus-visible, .vkn-stock-detail a:focus-visible { outline: 3px solid var(--wp--preset--color--black); outline-offset: 5px; }
.vkn-stock-detail .wp-element-button { max-width: 100%; overflow-wrap: anywhere; }
@media (min-width: 600px) and (max-width: 1000px) { .vkn-stock-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 781px) {
	.vkn-stock-list { margin-block: 48px; }
	.vkn-stock-categories ul { margin-bottom: 48px; gap: 16px; }
	.vkn-stock-group + .vkn-stock-group { margin-top: 80px; }
	.vkn-stock-detail .vk-product-columns { flex-direction: column; gap: 24px; }
	.vkn-stock-specs dl { grid-template-columns: minmax(0, 1fr); }
	.vkn-stock-gallery > div { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
}
@media (max-width: 599px) { .vkn-stock-grid { grid-template-columns: minmax(0, 1fr); gap: 48px; } }

@media (min-width: 782px) {
	.vk-stock-hero .wp-block-columns > .wp-block-column { flex-basis: calc((100% - 32px) / 2) !important; flex-grow: 0; box-sizing: border-box; min-height: 348px; }
}

.vkn-stock-description { max-width: var(--wp--style--global--content-size); margin: 56px auto 0; }
