/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

:root {
	--vh-black: #060606;
	--vh-ink: #121212;
	--vh-muted: #6f6f6f;
	--vh-line: rgba(0, 0, 0, .12);
	--vh-light: #f7f6f3;
	--vh-accent: #c4a46a;
	--vh-ease: cubic-bezier(.22, 1, .36, 1);
	--vh-menu-ease: cubic-bezier(.16, 1, .24, 1);
	--vh-menu-ease-soft: cubic-bezier(.18, .82, .16, 1);
	--vh-font-body: "Manrope", "Inter", "Segoe UI", Arial, sans-serif;
	--vh-font-display: "Manrope", "Inter", "Segoe UI", Arial, sans-serif;
	--vh-hero-height: 100svh;
	--vh-topbar-height: 44px;
}

/* Checkout v4: final visual reset for the approved white form / dark summary layout. */
body.woocommerce-checkout.vh-midnight-checkout .customer-details,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review {
	box-sizing: border-box;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .woocommerce-billing-fields,
body.woocommerce-checkout.vh-midnight-checkout .customer-details .woocommerce-shipping-fields,
body.woocommerce-checkout.vh-midnight-checkout .customer-details .woocommerce-account-fields {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-section,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	grid-auto-flow: row !important;
	gap: 17px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields::before,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields::after,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields > p.form-row::before,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields > p.form-row::after {
	display: none !important;
	content: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields > p.form-row,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_country_field, #billing_city_field, #billing_address_1_field, #billing_address_2_field, #billing_postcode_field) {
	grid-column: 1 / -1 !important;
	grid-row: auto !important;
	order: initial !important;
	float: none !important;
	clear: none !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details p.form-row label {
	display: block !important;
	margin: 0 0 7px !important;
	color: #191919 !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: .02em !important;
	line-height: 1.35 !important;
	text-transform: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(input.input-text, select, textarea, .select2-container--default .select2-selection--single) {
	box-sizing: border-box !important;
	width: 100% !important;
	min-height: 48px !important;
	border-color: #d0cfca !important;
	background: #fff !important;
	color: #171717 !important;
	font-size: 14px !important;
	line-height: 1.35 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection--single {
	display: flex !important;
	align-items: center !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection__rendered {
	width: 100% !important;
	padding: 0 42px 0 13px !important;
	color: #171717 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 46px !important;
	opacity: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection__arrow {
	width: 40px !important;
	height: 46px !important;
	filter: none !important;
	opacity: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection__arrow b {
	border-top-color: #5c5b57 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
	align-items: stretch !important;
	gap: 44px !important;
	margin-top: 28px !important;
	padding-top: 24px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods {
	gap: 14px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods li {
	padding: 0 !important;
	background: transparent !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin: 0 !important;
	color: #191919 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment div.payment_box,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods .woocommerce-info {
	margin: 7px 0 0 26px !important;
	padding: 0 0 0 12px !important;
	border: 0 !important;
	border-left: 1px solid rgba(185, 143, 69, .65) !important;
	background: transparent !important;
	color: #6b6862 !important;
	font-size: 11px !important;
	line-height: 1.55 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .form-row {
	margin: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot textarea.input-text {
	min-height: 106px !important;
	resize: vertical;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot [data-vh-checkout-coupon-slot] {
	margin-top: 17px;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle {
	margin: 0 !important;
	border: 1px solid rgba(185, 143, 69, .55) !important;
	border-left: 3px solid #bd934a !important;
	background: #fbfaf7 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle .woocommerce-info {
	margin: 0 !important;
	padding: 13px 15px !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #1d1c19 !important;
	font-size: 12px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #order_review_heading,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-order-product__title,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(th, td),
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance strong {
	text-transform: uppercase !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #order_review_heading {
	margin: 0 0 22px !important;
	border: 0 !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	letter-spacing: .1em !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(thead, tbody, tfoot, tr, th, td) {
	border-top: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table thead {
	display: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tbody tr.cart_item,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot tr {
	border-bottom: 1px solid rgba(255, 255, 255, .18) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(.product-name, .product-total) {
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .04em !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total :is(th, td) {
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: .06em !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount bdi {
	font-size: 28px !important;
	font-weight: 500 !important;
	letter-spacing: .03em !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon::before,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon::after {
	border-color: rgba(255, 255, 255, .92) !important;
	color: rgba(255, 255, 255, .92) !important;
}

@media (max-width: 700px) {
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns,
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
}

/* Checkout v5 final cascade: compact desktop fields and crisp assurance icons. */
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	column-gap: 18px !important;
	row-gap: 17px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact > :is(#billing_first_name_field, #billing_last_name_field),
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_city_field, #billing_postcode_field) {
	grid-column: auto !important;
	width: auto !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact > :is(#billing_phone_field, #billing_email_field),
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_country_field, #billing_address_1_field) {
	grid-column: 1 / -1 !important;
	width: 100% !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot textarea.input-text {
	min-height: 164px !important;
	resize: vertical !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance__icon {
	position: relative !important;
	display: block !important;
	flex: 0 0 28px !important;
	width: 28px !important;
	height: 28px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	clip-path: none !important;
	color: rgba(255, 255, 255, .96) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance__icon::before,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance__icon::after {
	position: absolute !important;
	display: block !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	clip-path: none !important;
	color: rgba(255, 255, 255, .96) !important;
	content: '' !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--warranty .vh-checkout-assurance__icon::before {
	inset: 2px 4px 4px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	clip-path: polygon(50% 0, 100% 19%, 86% 77%, 50% 100%, 14% 77%, 0 19%) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--warranty .vh-checkout-assurance__icon::after {
	left: 9px !important;
	top: 11px !important;
	width: 10px !important;
	height: 6px !important;
	border-bottom: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-left: 1.5px solid rgba(255, 255, 255, .96) !important;
	transform: rotate(-45deg) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::before {
	left: 4px !important;
	top: 4px !important;
	width: 18px !important;
	height: 18px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-left-color: transparent !important;
	border-radius: 50% !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::after {
	right: 3px !important;
	top: 2px !important;
	width: 8px !important;
	height: 8px !important;
	border-top: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-right: 1.5px solid rgba(255, 255, 255, .96) !important;
	transform: rotate(27deg) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--secure .vh-checkout-assurance__icon::before {
	left: 4px !important;
	top: 12px !important;
	width: 20px !important;
	height: 13px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-radius: 1px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--secure .vh-checkout-assurance__icon::after {
	left: 9px !important;
	top: 3px !important;
	width: 10px !important;
	height: 12px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-bottom: 0 !important;
	border-radius: 8px 8px 0 0 !important;
}

@media (max-width: 700px) {
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact,
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
		grid-template-columns: 1fr !important;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact > :is(#billing_first_name_field, #billing_last_name_field),
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_city_field, #billing_postcode_field) {
		grid-column: 1 / -1 !important;
		width: 100% !important;
	}
}

/* Checkout v5: compact field pairs and reliable white assurance icons. */
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	column-gap: 18px !important;
	row-gap: 17px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact > :is(#billing_first_name_field, #billing_last_name_field),
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_city_field, #billing_postcode_field) {
	grid-column: auto !important;
	width: auto !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact > :is(#billing_phone_field, #billing_email_field),
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_country_field, #billing_address_1_field) {
	grid-column: 1 / -1 !important;
	width: 100% !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot textarea.input-text {
	min-height: 164px !important;
	resize: vertical !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance__icon {
	position: relative !important;
	display: block !important;
	flex: 0 0 28px !important;
	width: 28px !important;
	height: 28px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	clip-path: none !important;
	color: rgba(255, 255, 255, .96) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance__icon::before,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance__icon::after {
	position: absolute !important;
	display: block !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	clip-path: none !important;
	color: rgba(255, 255, 255, .96) !important;
	content: '' !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--warranty .vh-checkout-assurance__icon::before {
	inset: 2px 4px 4px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	clip-path: polygon(50% 0, 100% 19%, 86% 77%, 50% 100%, 14% 77%, 0 19%) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--warranty .vh-checkout-assurance__icon::after {
	left: 9px !important;
	top: 11px !important;
	width: 10px !important;
	height: 6px !important;
	border-bottom: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-left: 1.5px solid rgba(255, 255, 255, .96) !important;
	transform: rotate(-45deg) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::before {
	left: 4px !important;
	top: 4px !important;
	width: 18px !important;
	height: 18px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-left-color: transparent !important;
	border-radius: 50% !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::after {
	right: 3px !important;
	top: 2px !important;
	width: 8px !important;
	height: 8px !important;
	border-top: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-right: 1.5px solid rgba(255, 255, 255, .96) !important;
	transform: rotate(27deg) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--secure .vh-checkout-assurance__icon::before {
	left: 4px !important;
	top: 12px !important;
	width: 20px !important;
	height: 13px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-radius: 1px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance--secure .vh-checkout-assurance__icon::after {
	left: 9px !important;
	top: 3px !important;
	width: 10px !important;
	height: 12px !important;
	border: 1.5px solid rgba(255, 255, 255, .96) !important;
	border-bottom: 0 !important;
	border-radius: 8px 8px 0 0 !important;
}

@media (max-width: 700px) {
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact,
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
		grid-template-columns: 1fr !important;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--contact > :is(#billing_first_name_field, #billing_last_name_field),
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_city_field, #billing_postcode_field) {
		grid-column: 1 / -1 !important;
		width: 100% !important;
	}
}

html {
	scroll-behavior: smooth;
}

.vh-page-progress {
	position: fixed;
	top: var(--vh-admin-offset);
	right: 0;
	left: 0;
	z-index: 10080;
	height: 3px;
	overflow: hidden;
	background: transparent;
	opacity: 0;
	pointer-events: none;
	transform: translate3d(0, -100%, 0);
	transition: opacity .28s var(--vh-menu-ease), transform .38s var(--vh-menu-ease);
}

.vh-page-progress span {
	display: block;
	width: var(--vh-page-progress, 0%);
	height: 100%;
	background: linear-gradient(90deg, #080808, #c7a66b 64%, #fff);
	box-shadow: 0 0 18px rgba(199, 166, 107, .42);
	transition: width .74s var(--vh-menu-ease);
}

body.vh-page-loading .vh-page-progress {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

body.vh-page-loading .vh-page-progress span {
	transition-duration: .92s;
}

body.vh-page-loading-finish .vh-page-progress span {
	transition-duration: .3s;
}

body {
	-webkit-font-smoothing: antialiased;
	font-family: var(--vh-font-body);
	text-rendering: geometricPrecision;
}

body,
button,
input,
select,
textarea,
.elementor,
.wd-text-block,
.wd-entities-title,
.price {
	font-family: var(--vh-font-body);
}

h1,
h2,
h3,
h4,
h5,
h6,
.title,
.woodmart-title-container,
.wd-el-title,
.wd-nav > li > a,
.vh-site-header,
.vh-menu-drawer {
	font-family: var(--vh-font-display);
}

body.admin-bar {
	--vh-admin-offset: 32px;
}

body:not(.admin-bar) {
	--vh-admin-offset: 0px;
}

.whb-header {
	position: fixed !important;
	top: var(--vh-admin-offset);
	right: 0;
	left: 0;
	z-index: 10020;
	border: 0;
	background: transparent !important;
	box-shadow: none;
	transform: translate3d(0, 0, 0) !important;
}

.whb-header .whb-main-header,
.whb-header .whb-row,
.whb-header .whb-general-header {
	border-color: transparent !important;
	background: transparent !important;
}

.whb-header .site-logo img,
.whb-header .wd-logo img {
	transition: filter .35s var(--vh-ease), opacity .35s var(--vh-ease), transform .35s var(--vh-ease);
}

body.home:not(.vh-scrolled) .whb-header :is(.wd-nav > li > a, .woodmart-nav-link, .wd-tools-element > a, .wd-tools-text, .wd-tools-icon, .wd-tools-count, .wd-tools-element .wd-tools-inner) {
	color: #fff !important;
}

body.home:not(.vh-scrolled) .whb-header .site-logo img,
body.home:not(.vh-scrolled) .whb-header .wd-logo img {
	filter: none;
}

body.home:not(.vh-scrolled) .whb-header:hover,
body.vh-scrolled .whb-header,
body:not(.home) .whb-header {
	border-bottom: 1px solid rgba(255, 255, 255, .28);
	background: rgba(255, 255, 255, .76) !important;
	box-shadow: 0 18px 50px rgba(0, 0, 0, .08);
	backdrop-filter: blur(22px) saturate(160%);
	-webkit-backdrop-filter: blur(22px) saturate(160%);
}

body.home.vh-scrolled .whb-header {
	top: calc(var(--vh-admin-offset) + var(--vh-topbar-height));
}

body.vh-scrolled .whb-header :is(.wd-nav > li > a, .woodmart-nav-link, .wd-tools-element > a, .wd-tools-text, .wd-tools-icon, .wd-tools-count, .wd-tools-element .wd-tools-inner),
body:not(.home) .whb-header :is(.wd-nav > li > a, .woodmart-nav-link, .wd-tools-element > a, .wd-tools-text, .wd-tools-icon, .wd-tools-count, .wd-tools-element .wd-tools-inner),
body.home:not(.vh-scrolled) .whb-header:hover :is(.wd-nav > li > a, .woodmart-nav-link, .wd-tools-element > a, .wd-tools-text, .wd-tools-icon, .wd-tools-count, .wd-tools-element .wd-tools-inner) {
	color: #070707 !important;
}

body.vh-scrolled .whb-header .site-logo img,
body.vh-scrolled .whb-header .wd-logo img,
body:not(.home) .whb-header .site-logo img,
body:not(.home) .whb-header .wd-logo img,
body.home:not(.vh-scrolled) .whb-header:hover .site-logo img,
body.home:not(.vh-scrolled) .whb-header:hover .wd-logo img {
	filter: invert(1);
}

body:not(.home) .main-page-wrapper {
	padding-top: 124px;
}

body.home .main-page-wrapper,
body.home .wd-page-content,
body.home .site-content {
	margin-top: 0 !important;
	padding-top: 0 !important;
	background: #fff;
}

body.home .elementor-page .main-page-wrapper,
body.home .main-page-wrapper > :first-child {
	margin-top: 0 !important;
}

body.home .wd-page-content.main-page-wrapper,
body.home .wd-content-layout,
body.home .wd-content-area,
body.home article.entry-content,
body.home .elementor-896,
body.home .elementor-896 > .elementor-element:first-child,
body.home .elementor-896 .elementor-element-2581683 {
	width: 100% !important;
	max-width: none !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.home .wd-content-layout,
body.home .wd-content-area,
body.home article.entry-content {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.vh-promo-fixed {
	display: none !important;
}

.vh-promo-fixed p,
.vh-promo-fixed .elementor-widget-container {
	margin: 0;
	color: inherit;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: .03em;
}

.vh-promo-fixed a {
	color: #fff;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.whb-header {
	display: none !important;
}

body.vh-menu-open {
	overflow: hidden;
}

.vh-top-contact {
	position: fixed;
	top: var(--vh-admin-offset);
	right: 0;
	left: 0;
	z-index: 10060;
	min-height: var(--vh-topbar-height);
	background: #050505;
	color: #fff;
	font-family: var(--vh-font-body);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate3d(0, -105%, 0);
	transition: opacity .28s var(--vh-ease), visibility .28s var(--vh-ease), transform .38s var(--vh-ease);
}

body.vh-scrolled .vh-top-contact {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate3d(0, 0, 0);
}

.vh-top-contact-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	min-height: var(--vh-topbar-height);
	padding-inline: clamp(16px, 4vw, 60px);
	text-align: center;
}

.vh-top-contact-message {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	white-space: nowrap;
}

.vh-top-contact-divider {
	opacity: .56;
}

.vh-top-contact a {
	color: inherit;
	text-decoration: none;
}

.vh-top-contact a:hover {
	color: inherit;
	opacity: .78;
}

.vh-top-contact-social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	white-space: nowrap;
}

.vh-top-contact-social svg {
	display: block;
	width: 18px;
	height: 18px;
}

.vh-site-header {
	position: fixed;
	top: var(--vh-admin-offset);
	right: 0;
	left: 0;
	z-index: 10020;
	color: #111;
	font-family: var(--vh-font-body);
	background: rgba(255, 255, 255, .76);
	box-shadow: 0 18px 50px rgba(0, 0, 0, .08);
	backdrop-filter: blur(22px) saturate(160%);
	-webkit-backdrop-filter: blur(22px) saturate(160%);
	transition: top .3s var(--vh-ease), background-color .3s var(--vh-ease), color .3s var(--vh-ease), box-shadow .3s var(--vh-ease), border-color .3s var(--vh-ease);
}

body.vh-scrolled .vh-site-header {
	top: calc(var(--vh-admin-offset) + var(--vh-topbar-height));
}

body.home:not(.vh-scrolled) .vh-site-header {
	color: #fff;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

body.vh-menu-open .vh-site-header {
	color: #111;
	background: rgba(255, 255, 255, .86);
	box-shadow: 0 18px 50px rgba(0, 0, 0, .08);
	backdrop-filter: blur(22px) saturate(160%);
	-webkit-backdrop-filter: blur(22px) saturate(160%);
}

.vh-site-header a,
.vh-site-header button {
	color: inherit;
}

.vh-site-header-inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 64px;
	padding-inline: clamp(18px, 4.2vw, 60px);
}

.vh-header-left,
.vh-header-right {
	display: flex;
	align-items: center;
	gap: 4px;
	min-width: 260px;
}

.vh-header-right {
	justify-content: flex-end;
}

.vh-menu-toggle,
.vh-header-shop,
.vh-header-bespoke,
.vh-header-partners,
.vh-header-contact,
.vh-header-search,
.vh-mobile-header-search,
.vh-header-account,
.vh-header-cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	border: 0;
	border-radius: 0;
	background: transparent;
	font-family: var(--vh-font-body);
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: color .25s var(--vh-ease), opacity .25s var(--vh-ease), transform .25s var(--vh-ease);
}

.vh-menu-toggle {
	gap: 10px;
	padding: 0 12px 0 0;
}

.vh-header-shop,
.vh-header-bespoke,
.vh-header-partners,
.vh-header-contact {
	padding-inline: 12px;
}

.vh-menu-toggle:hover,
.vh-header-shop:hover,
.vh-header-bespoke:hover,
.vh-header-contact:hover,
.vh-header-search:hover,
.vh-mobile-header-search:hover,
.vh-header-account:hover,
.vh-header-cart:hover {
	opacity: .72;
	transform: translateY(-1px);
}

.vh-menu-toggle:hover {
	background: transparent;
	opacity: 1;
	transform: none;
}

.vh-menu-lines {
	position: relative;
	display: inline-flex;
	flex-direction: column;
	gap: 4px;
	width: 20px;
}

.vh-menu-lines i {
	display: block;
	width: 20px;
	height: 1.5px;
	background: currentColor;
	transition: transform .35s var(--vh-ease), opacity .25s var(--vh-ease);
}

body.vh-menu-open .vh-menu-toggle .vh-menu-lines i:nth-child(1) {
	transform: translateY(5.5px) rotate(45deg);
}

body.vh-menu-open .vh-menu-toggle .vh-menu-lines i:nth-child(2) {
	opacity: 0;
}

body.vh-menu-open .vh-menu-toggle .vh-menu-lines i:nth-child(3) {
	transform: translateY(-5.5px) rotate(-45deg);
}

.vh-header-logo {
	position: absolute;
	top: 50%;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 54px;
	transform: translate(-50%, -50%);
	text-decoration: none;
}

.vh-header-logo img {
	display: block;
	width: 120px;
	height: auto;
	object-fit: contain;
	transition: filter .3s var(--vh-ease), opacity .3s var(--vh-ease);
}

body.home:not(.vh-scrolled) .vh-header-logo img {
	filter: none;
}

body.home.vh-scrolled .vh-header-logo img,
body:not(.home) .vh-header-logo img,
body.vh-menu-open .vh-header-logo img {
	filter: invert(1);
}

.vh-header-wordmark {
	display: block;
	color: currentColor;
	font-family: var(--vh-font-body);
	font-size: clamp(27px, 2vw, 34px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: .25em;
	text-indent: .25em;
	transition: color .3s var(--vh-ease), opacity .3s var(--vh-ease);
}

.vh-header-search svg,
.vh-mobile-header-search svg,
.vh-header-account svg,
.vh-header-cart svg,
.vh-mobile-search-row svg {
	width: 21px;
	height: 21px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.vh-mobile-header-search {
	display: none;
}

.vh-header-cart {
	position: relative;
	width: 44px;
	height: 44px;
	padding: 0;
	overflow: visible;
}

.vh-header-cart svg {
	position: relative;
	z-index: 1;
}

.vh-header-cart-count {
	position: absolute;
	top: 4px;
	right: 1px;
	z-index: 2;
	display: grid;
	min-width: 16px;
	height: 16px;
	place-items: center;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, .86);
	background: #111;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
	text-indent: 0;
	box-shadow: 0 3px 8px rgba(0, 0, 0, .18);
}

body.home:not(.vh-scrolled) .vh-header-cart-count {
	border-color: rgba(0, 0, 0, .12);
	background: #fff;
	color: #111;
}

.vh-header-cart-count[hidden],
.vh-header-cart-count[data-count="0"] {
	display: none !important;
}

.vh-mobile-search-row {
	display: none;
	height: 40px;
	border-top: 1px solid currentColor;
	opacity: .72;
	padding-inline: 16px;
}

.vh-mobile-search-row a {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	height: 100%;
	border: 1px solid currentColor;
	padding-inline: 12px;
	text-decoration: none;
}

.vh-drawer-backdrop {
	position: fixed;
	inset: 0;
	z-index: 10070;
	background:
		radial-gradient(circle at 16% 30%, rgba(196, 164, 106, .18), transparent 30%),
		rgba(0, 0, 0, .68);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	backdrop-filter: blur(0) saturate(100%);
	-webkit-backdrop-filter: blur(0) saturate(100%);
	transition: opacity .5s var(--vh-ease), visibility .5s var(--vh-ease), backdrop-filter .5s var(--vh-ease);
}

.vh-menu-drawer {
	--vh-drawer-pad: clamp(24px, 3.2vw, 46px);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	z-index: 10080;
	display: flex;
	flex-direction: column;
	width: min(820px, 94vw);
	overflow: hidden;
	background:
		linear-gradient(115deg, rgba(13, 13, 13, .99) 0%, rgba(29, 29, 29, .97) 56%, rgba(7, 7, 7, .96) 100%);
	color: #f7f3eb;
	box-shadow: 48px 0 110px rgba(0, 0, 0, .45);
	transform: translate3d(-112%, 0, 0) scaleX(.985);
	transform-origin: left center;
	clip-path: inset(0 100% 0 0);
	visibility: hidden;
	pointer-events: none;
	transition: transform .72s cubic-bezier(.19, 1, .22, 1), clip-path .72s cubic-bezier(.19, 1, .22, 1), visibility .72s var(--vh-ease);
}

.vh-menu-drawer::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, .08), transparent 34%),
		linear-gradient(180deg, rgba(255, 255, 255, .04), transparent 42%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .035) 0 1px, transparent 1px 88px);
	opacity: .75;
	pointer-events: none;
	transform: translate3d(-18px, 0, 0);
	transition: transform .9s cubic-bezier(.19, 1, .22, 1), opacity .55s var(--vh-ease);
}

.vh-menu-drawer::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	width: 1px;
	background: linear-gradient(180deg, transparent, rgba(255, 255, 255, .34), transparent);
	opacity: .75;
}

body.vh-menu-open .vh-drawer-backdrop {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	backdrop-filter: blur(10px) saturate(116%);
	-webkit-backdrop-filter: blur(10px) saturate(116%);
}

body.vh-menu-open .vh-menu-drawer {
	transform: translate3d(0, 0, 0);
	clip-path: inset(0 0 0 0);
	visibility: visible;
	pointer-events: auto;
}

body.vh-menu-open .vh-menu-drawer::before {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.vh-drawer-head {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 88px;
	padding: 22px var(--vh-drawer-pad);
	border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.vh-drawer-head h3 {
	margin: 0;
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.vh-drawer-close {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 50%;
	background: transparent;
	color: #fff;
	cursor: pointer;
	transition: border-color .28s var(--vh-ease), opacity .28s var(--vh-ease), transform .45s var(--vh-ease);
}

.vh-drawer-close::before,
.vh-drawer-close::after {
	content: "";
	position: absolute;
	width: 17px;
	height: 1px;
	background: currentColor;
	transform-origin: center;
}

.vh-drawer-close::before {
	transform: rotate(45deg);
}

.vh-drawer-close::after {
	transform: rotate(-45deg);
}

.vh-drawer-close:hover {
	border-color: rgba(255, 255, 255, .52);
	opacity: .82;
	transform: rotate(90deg);
}

.vh-drawer-body {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-areas:
		"primary collections"
		"support collections"
		"feature feature";
	grid-template-columns: minmax(160px, .7fr) minmax(0, 2fr);
	align-content: start;
	flex: 1 1 auto;
	gap: clamp(26px, 3vw, 42px);
	overflow: auto;
	padding: clamp(24px, 3vw, 40px) var(--vh-drawer-pad) var(--vh-drawer-pad);
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, .28) transparent;
}

.vh-drawer-head > *,
.vh-drawer-body > * {
	opacity: 0;
	transform: translate3d(-30px, 12px, 0);
	transition: opacity .52s var(--vh-ease), transform .62s cubic-bezier(.19, 1, .22, 1);
}

body.vh-menu-open .vh-drawer-head > *,
body.vh-menu-open .vh-drawer-body > * {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

body.vh-menu-open .vh-drawer-head h3 {
	transition-delay: .16s;
}

body.vh-menu-open .vh-drawer-close {
	transition-delay: .2s, .2s, .2s;
}

body.vh-menu-open .vh-drawer-primary {
	transition-delay: .24s;
}

body.vh-menu-open .vh-drawer-section:first-of-type {
	transition-delay: .3s;
}

body.vh-menu-open .vh-drawer-section:nth-of-type(2) {
	transition-delay: .38s;
}

body.vh-menu-open .vh-drawer-feature {
	transition-delay: .46s;
}

.vh-drawer-primary,
.vh-drawer-support {
	display: flex;
	flex-direction: column;
	gap: 14px;
	align-self: start;
}

.vh-drawer-primary {
	grid-area: primary;
}

.vh-drawer-section:first-of-type {
	grid-area: collections;
}

.vh-drawer-section:nth-of-type(2) {
	grid-area: support;
	align-self: end;
}

.vh-drawer-feature {
	grid-area: feature;
}

.vh-drawer-primary ul,
.vh-drawer-support ul {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.vh-drawer-primary li,
.vh-drawer-support li {
	margin: 0;
}

.vh-drawer-primary a,
.vh-drawer-support a {
	position: relative;
	display: inline-flex;
	align-items: center;
	width: max-content;
	max-width: 100%;
	padding-block: 7px;
	color: rgba(255, 255, 255, .72);
	font-family: var(--vh-font-body);
	font-size: clamp(13px, 1.05vw, 16px);
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: .13em;
	text-transform: uppercase;
	text-decoration: none;
	transition: color .28s var(--vh-ease), transform .35s var(--vh-ease);
}

.vh-drawer-primary a::before,
.vh-drawer-support a::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 1px;
	margin-right: 0;
	background: currentColor;
	opacity: .58;
	transition: width .35s var(--vh-ease), margin-right .35s var(--vh-ease);
}

.vh-drawer-primary a:hover,
.vh-drawer-support a:hover {
	color: #fff;
	transform: translate3d(4px, 0, 0);
}

.vh-drawer-primary a:hover::before,
.vh-drawer-support a:hover::before {
	width: 28px;
	margin-right: 10px;
}

.vh-drawer-section h4 {
	margin: 0 0 16px;
	color: rgba(255, 255, 255, .55);
	font-family: var(--vh-font-body);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.vh-drawer-gifts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(12px, 1.4vw, 18px);
}

.vh-drawer-gift {
	display: block;
	min-width: 0;
	color: #fff;
	text-decoration: none;
	opacity: 0;
	transform: translate3d(-18px, 18px, 0);
	transition: opacity .5s var(--vh-ease), transform .62s cubic-bezier(.19, 1, .22, 1);
}

body.vh-menu-open .vh-drawer-gift {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

body.vh-menu-open .vh-drawer-gift:nth-child(1) {
	transition-delay: .38s;
}

body.vh-menu-open .vh-drawer-gift:nth-child(2) {
	transition-delay: .43s;
}

body.vh-menu-open .vh-drawer-gift:nth-child(3) {
	transition-delay: .48s;
}

body.vh-menu-open .vh-drawer-gift:nth-child(4) {
	transition-delay: .53s;
}

body.vh-menu-open .vh-drawer-gift:nth-child(5) {
	transition-delay: .58s;
}

body.vh-menu-open .vh-drawer-gift:nth-child(6) {
	transition-delay: .63s;
}

.vh-drawer-gift-frame {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	min-height: 146px;
	overflow: hidden;
	background: #151515;
	isolation: isolate;
}

.vh-drawer-gift-frame::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	background:
		linear-gradient(180deg, rgba(0, 0, 0, .14), rgba(0, 0, 0, .74)),
		linear-gradient(90deg, rgba(0, 0, 0, .42), rgba(0, 0, 0, .04) 58%);
	pointer-events: none;
	transition: opacity .45s var(--vh-ease);
}

.vh-drawer-gift-frame::after {
	content: "";
	position: absolute;
	right: 18px;
	bottom: 18px;
	z-index: 4;
	width: 26px;
	height: 1px;
	background: rgba(255, 255, 255, .76);
	transform-origin: right center;
	transition: width .42s var(--vh-ease), background-color .42s var(--vh-ease);
}

.vh-drawer-gift-img {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: block;
	background: #fff;
}

.vh-drawer-gift img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(.92) contrast(1.05) brightness(.74);
	transform: scale(1.035);
	transition: transform .8s cubic-bezier(.19, 1, .22, 1), filter .48s var(--vh-ease);
}

.vh-drawer-gift-copy {
	position: absolute;
	right: 18px;
	bottom: 18px;
	left: 18px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 5px;
	text-align: left;
	transform: translate3d(0, 0, 0);
	transition: transform .42s var(--vh-ease);
}

.vh-drawer-gift-copy small {
	color: rgba(255, 255, 255, .65);
	font-family: var(--vh-font-body);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .18em;
	line-height: 1;
	text-transform: uppercase;
}

.vh-drawer-gift-copy strong {
	max-width: 100%;
	color: #fff;
	font-family: var(--vh-font-body);
	font-size: clamp(13px, 1.1vw, 18px);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-drawer-gift-copy em {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-top: 6px;
	color: rgba(255, 255, 255, .86);
	font-size: 10px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .16em;
	line-height: 1;
	text-transform: uppercase;
	opacity: 0;
	transform: translate3d(-10px, 0, 0);
	transition: opacity .32s var(--vh-ease), transform .38s var(--vh-ease);
}

.vh-drawer-gift-copy em::after {
	content: "";
	display: block;
	width: 24px;
	height: 1px;
	background: currentColor;
}

.vh-drawer-gift:hover img {
	filter: saturate(1.03) contrast(1.08) brightness(.9);
	transform: scale(1.12);
}

.vh-drawer-gift:hover .vh-drawer-gift-frame::before {
	opacity: .86;
}

.vh-drawer-gift:hover .vh-drawer-gift-frame::after {
	width: 62px;
	background: #fff;
}

.vh-drawer-gift:hover .vh-drawer-gift-copy {
	transform: translate3d(0, -6px, 0);
}

.vh-drawer-gift:hover .vh-drawer-gift-copy em {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.vh-drawer-feature {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	min-height: 164px;
	overflow: hidden;
	margin-top: clamp(4px, 1.3vw, 16px);
	padding: clamp(24px, 2.8vw, 34px);
	border: 1px solid rgba(255, 255, 255, .12);
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .38), rgba(0, 0, 0, .08)),
		linear-gradient(135deg, #0b0b0b, #222 58%, #090909);
	color: #fff;
	isolation: isolate;
	text-decoration: none;
}

.vh-drawer-feature::before {
	content: "";
	position: absolute;
	inset: -15%;
	z-index: -1;
	background: radial-gradient(circle at 78% 50%, rgba(196, 164, 106, .24), transparent 34%);
	opacity: .55;
	transform: translate3d(-12px, 0, 0);
	transition: transform .65s var(--vh-ease), opacity .45s var(--vh-ease);
}

.vh-drawer-feature span {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.vh-drawer-feature small {
	color: rgba(255, 255, 255, .62);
	font-family: var(--vh-font-body);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-drawer-feature strong,
.vh-drawer-feature em {
	font-size: clamp(20px, 2vw, 30px);
	font-family: var(--vh-font-body);
	font-weight: 800;
	font-style: normal;
	line-height: 1.05;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-drawer-feature b {
	margin-top: 12px;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	text-decoration: none;
}

.vh-drawer-feature b::after {
	content: "";
	display: block;
	width: 44px;
	height: 1px;
	margin-top: 7px;
	background: currentColor;
	transition: width .38s var(--vh-ease);
}

.vh-drawer-feature i {
	position: relative;
	display: block;
	width: 64px;
	height: 64px;
	border: 2px solid rgba(255, 255, 255, .35);
	border-radius: 50%;
	flex: 0 0 auto;
	transition: border-color .32s var(--vh-ease), transform .45s var(--vh-ease);
}

.vh-drawer-feature i::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 15px;
	height: 15px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: translate(-62%, -50%) rotate(45deg);
}

.vh-drawer-feature:hover::before {
	opacity: .78;
	transform: translate3d(0, 0, 0);
}

.vh-drawer-feature:hover b::after {
	width: 78px;
}

.vh-drawer-feature:hover i {
	border-color: rgba(255, 255, 255, .72);
	transform: translate3d(5px, 0, 0);
}

.vh-menu-drawer {
	--vh-drawer-nav: 350px;
	--vh-drawer-flyout: 352px;
	width: min(var(--vh-drawer-nav), 94vw);
	overflow: visible;
	background: #fff;
	color: #070707;
	box-shadow: 36px 0 95px rgba(0, 0, 0, .22);
	transition: width .42s cubic-bezier(.19, 1, .22, 1), transform .68s cubic-bezier(.19, 1, .22, 1), clip-path .68s cubic-bezier(.19, 1, .22, 1), visibility .68s var(--vh-ease);
}

.vh-menu-drawer.vh-menu-flyout-open {
	width: min(calc(var(--vh-drawer-nav) + var(--vh-drawer-flyout)), 96vw);
}

.vh-menu-drawer::before {
	background: #fff;
	opacity: 1;
	transform: none;
}

.vh-menu-drawer::after {
	background: rgba(0, 0, 0, .08);
	opacity: 1;
}

.vh-drawer-backdrop {
	background: rgba(0, 0, 0, .42);
}

body.vh-menu-open .vh-drawer-backdrop {
	backdrop-filter: blur(9px) grayscale(20%) saturate(80%);
	-webkit-backdrop-filter: blur(9px) grayscale(20%) saturate(80%);
}

.vh-drawer-head {
	min-height: 88px;
	justify-content: flex-start;
	padding: 22px 26px;
	border-bottom: 1px solid rgba(0, 0, 0, .08);
	background: #fff;
}

.vh-drawer-head h3 {
	display: none;
}

.vh-drawer-close {
	width: auto;
	height: auto;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #070707;
	font-family: var(--vh-font-body);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .18em;
	line-height: 1;
	text-transform: uppercase;
}

.vh-drawer-close::before,
.vh-drawer-close::after {
	display: none;
}

.vh-drawer-close:hover {
	opacity: .62;
	transform: none;
}

.vh-drawer-body {
	display: block;
	overflow-y: auto;
	overflow-x: visible;
	height: 100%;
	padding: 24px 22px 30px 18px;
	background: #fff;
	scrollbar-color: rgba(0, 0, 0, .18) transparent;
}

.vh-drawer-primary,
.vh-drawer-support,
.vh-drawer-collection-list {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.vh-drawer-section:first-of-type {
	margin-top: 12px;
	transform: none;
}

body.vh-menu-open .vh-drawer-section:first-of-type {
	transform: none;
}

.vh-drawer-section:first-of-type > h4 {
	display: none;
}

.vh-drawer-section:nth-of-type(2) {
	margin-top: clamp(120px, 22vh, 220px);
}

.vh-drawer-section:nth-of-type(2) h4 {
	margin-bottom: 10px;
	color: rgba(0, 0, 0, .32);
}

.vh-drawer-primary ul,
.vh-drawer-support ul {
	gap: 0;
}

.vh-drawer-primary a,
.vh-drawer-support a,
.vh-drawer-collection-list a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 10px 0;
	color: #070707;
	font-family: var(--vh-font-body);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	line-height: 1.2;
	text-transform: uppercase;
	text-decoration: none;
	transition: color .25s var(--vh-ease), padding-left .32s var(--vh-ease), opacity .25s var(--vh-ease);
}

.vh-drawer-primary a::before,
.vh-drawer-support a::before {
	display: none;
}

.vh-drawer-collection-list a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -9px;
	width: 2px;
	height: 0;
	background: #070707;
	transform: translateY(-50%);
	transition: height .28s var(--vh-ease);
}

.vh-drawer-collection-list a:hover::before,
.vh-drawer-collection-list a.is-active::before {
	height: 14px;
}

.vh-drawer-primary a:hover,
.vh-drawer-support a:hover,
.vh-drawer-collection-list a:hover {
	color: #070707;
	opacity: .68;
	padding-left: 8px;
	transform: none;
}

.vh-drawer-primary a:hover::before,
.vh-drawer-support a:hover::before {
	width: 0;
	margin-right: 0;
}

.vh-drawer-collection-list a > span[aria-hidden="true"] {
	display: block;
	width: 7px;
	height: 7px;
	margin-left: 18px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: rotate(45deg);
	opacity: .72;
}

.vh-drawer-collection-list .vh-drawer-link-copy {
	display: grid;
	width: auto;
	height: auto;
	margin: 0;
	border: 0;
	opacity: 1;
	transform: none;
}

.vh-drawer-link-copy strong {
	display: block;
	font: inherit;
	line-height: inherit;
}

.vh-drawer-link-copy small {
	display: block;
	margin-top: 5px;
	color: rgba(0, 0, 0, .42);
	font-size: clamp(8px, .58vw, 10px);
	font-weight: 800;
	letter-spacing: .18em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-drawer-collection-list a:hover .vh-drawer-link-copy,
.vh-drawer-collection-list a.is-active .vh-drawer-link-copy {
	transform: none;
}

.vh-drawer-bespoke-link {
	margin-bottom: clamp(10px, 1vw, 18px);
	padding-bottom: clamp(14px, 1.25vw, 22px) !important;
	border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.vh-drawer-gifts {
	position: absolute;
	top: 0;
	bottom: 0;
	left: var(--vh-drawer-nav);
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-content: start;
	width: var(--vh-drawer-flyout);
	min-height: 100%;
	overflow-y: auto;
	gap: 15px 13px;
	padding: 18px 22px 36px 18px;
	border-left: 1px solid rgba(0, 0, 0, .06);
	background: #fff;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate3d(-18px, 0, 0);
	transition: opacity .34s var(--vh-ease), transform .44s cubic-bezier(.19, 1, .22, 1), visibility .34s var(--vh-ease);
	scrollbar-width: thin;
	scrollbar-color: rgba(0, 0, 0, .18) transparent;
}

.vh-menu-drawer.vh-menu-flyout-open .vh-drawer-gifts {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate3d(0, 0, 0);
}

.vh-drawer-gift,
body.vh-menu-open .vh-drawer-gift {
	color: #070707;
	opacity: 1;
	transform: none;
	transition: opacity .24s var(--vh-ease);
	transition-delay: 0s;
}

.vh-drawer-gift[hidden] {
	display: none !important;
}

.vh-drawer-gift:first-child {
	grid-column: 1 / -1;
}

.vh-drawer-gift-frame {
	display: flex;
	flex-direction: column;
	min-height: 0;
	overflow: visible;
	background: transparent;
}

.vh-drawer-gift-frame::before,
.vh-drawer-gift-frame::after {
	display: none;
}

.vh-drawer-gift-img {
	position: relative;
	inset: auto;
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: #fff;
}

.vh-drawer-gift:first-child .vh-drawer-gift-img {
	background: #fff;
}

.vh-drawer-gift img {
	filter: none;
	transform: scale(1.01);
	transition: transform .62s cubic-bezier(.19, 1, .22, 1), filter .34s var(--vh-ease);
}

.vh-drawer-gift-copy {
	position: static;
	display: flex;
	align-items: center;
	gap: 0;
	padding-top: 9px;
	text-align: center;
	transform: none;
}

.vh-drawer-gift-copy small,
.vh-drawer-gift-copy em {
	display: none;
}

.vh-drawer-gift-copy strong {
	position: relative;
	color: #070707;
	font-family: var(--vh-font-body);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .13em;
	line-height: 1.25;
	text-transform: uppercase;
}

.vh-drawer-gift-copy::after {
	content: "";
	display: block;
	width: 0;
	height: 1px;
	margin-top: 7px;
	background: currentColor;
	transition: width .3s var(--vh-ease);
}

.vh-drawer-gift:hover img {
	filter: none;
	transform: scale(1.06);
}

.vh-drawer-gift:hover .vh-drawer-gift-copy,
.vh-drawer-gift:hover .vh-drawer-gift-copy em {
	transform: none;
}

.vh-drawer-gift:hover .vh-drawer-gift-copy::after {
	width: 38px;
}

.vh-drawer-feature {
	display: none;
}

.vh-menu-drawer {
	--vh-drawer-nav: clamp(560px, 44.5vw, 775px);
	--vh-drawer-head: clamp(96px, 6.25vw, 120px);
	--vh-drawer-pad-left: clamp(28px, 2.05vw, 36px);
	--vh-drawer-pad-right: clamp(34px, 3.2vw, 56px);
	--vh-drawer-flyout: calc(100vw - var(--vh-drawer-nav));
	width: min(var(--vh-drawer-nav), 96vw);
	transition: width .58s cubic-bezier(.19, 1, .22, 1), transform .68s cubic-bezier(.19, 1, .22, 1), clip-path .68s cubic-bezier(.19, 1, .22, 1), visibility .68s var(--vh-ease);
}

.vh-menu-drawer.vh-menu-flyout-open {
	width: 100vw;
}

.vh-drawer-head {
	width: var(--vh-drawer-nav);
	min-height: var(--vh-drawer-head);
	padding: 0 var(--vh-drawer-pad-right);
}

.vh-drawer-close {
	font-size: clamp(12px, .86vw, 16px);
	letter-spacing: .22em;
}

.vh-drawer-body {
	position: static;
	width: var(--vh-drawer-nav);
	height: calc(100% - var(--vh-drawer-head));
	padding: clamp(40px, 4.4vh, 64px) var(--vh-drawer-pad-right) 0 var(--vh-drawer-pad-left);
	overflow-y: auto;
	overflow-x: visible;
}

.vh-drawer-primary a,
.vh-drawer-support a,
.vh-drawer-collection-list a {
	font-family: var(--vh-font-body);
	font-size: clamp(22px, 1.75vw, 28px);
	font-weight: 800;
	letter-spacing: .105em;
	line-height: 1.15;
}

.vh-drawer-primary a {
	justify-content: flex-start;
	width: max-content;
	min-height: clamp(58px, 4.8vw, 82px);
	padding: 0;
}

.vh-drawer-section:first-of-type {
	margin-top: 0;
}

.vh-drawer-collection-list a {
	min-height: clamp(58px, 4.8vw, 82px);
	padding: 0 8px 0 0;
}

.vh-drawer-collection-list a::before {
	left: -18px;
	width: 3px;
	transition: height .3s var(--vh-ease), opacity .3s var(--vh-ease);
}

.vh-drawer-collection-list a:hover::before {
	height: 0;
}

.vh-drawer-collection-list a.is-active::before {
	height: clamp(24px, 1.9vw, 34px);
}

.vh-drawer-collection-list a > span[aria-hidden="true"] {
	width: clamp(10px, .85vw, 14px);
	height: clamp(10px, .85vw, 14px);
	border-width: 2px 2px 0 0;
	opacity: .68;
	transition: opacity .25s var(--vh-ease), transform .42s cubic-bezier(.19, 1, .22, 1);
}

.vh-drawer-collection-list a:hover > span[aria-hidden="true"],
.vh-drawer-collection-list a.is-active > span[aria-hidden="true"] {
	opacity: 1;
	transform: translate3d(14px, 0, 0) rotate(45deg);
}

.vh-drawer-collection-list a:hover {
	opacity: 1;
	padding-left: 0;
}

.vh-drawer-section:nth-of-type(2) {
	margin: clamp(260px, 31vh, 430px) calc(-1 * var(--vh-drawer-pad-right)) 0 calc(-1 * var(--vh-drawer-pad-left));
	padding: clamp(48px, 4.4vw, 70px) var(--vh-drawer-pad-right) clamp(54px, 4.6vw, 76px) var(--vh-drawer-pad-left);
	border-top: 1px solid rgba(0, 0, 0, .1);
}

.vh-drawer-meta-group + .vh-drawer-meta-group {
	margin-top: clamp(48px, 4vw, 70px);
}

.vh-drawer-section:nth-of-type(2) h4,
.vh-drawer-meta h4 {
	margin: 0 0 clamp(22px, 2vw, 34px);
	color: rgba(0, 0, 0, .42);
	font-family: var(--vh-font-body);
	font-size: clamp(12px, .92vw, 16px);
	font-weight: 500;
	letter-spacing: .36em;
	line-height: 1;
	text-transform: uppercase;
}

.vh-drawer-support a {
	justify-content: flex-start;
	width: max-content;
	min-height: clamp(34px, 2.55vw, 50px);
	padding: 0;
	font-size: clamp(19px, 1.42vw, 24px);
	letter-spacing: .105em;
}

.vh-drawer-support a:hover {
	opacity: .7;
	padding-left: 0;
}

.vh-drawer-gifts {
	position: fixed;
	top: 0;
	bottom: 0;
	left: var(--vh-drawer-nav);
	width: var(--vh-drawer-flyout);
	min-height: 100%;
	padding: clamp(34px, 2.75vw, 50px) clamp(38px, 4.2vw, 66px) 76px;
	gap: clamp(26px, 2.4vw, 44px) clamp(22px, 2.1vw, 34px);
	transform: translate3d(-28px, 0, 0);
	transition: opacity .36s var(--vh-ease), transform .52s cubic-bezier(.19, 1, .22, 1), visibility .36s var(--vh-ease);
}

.vh-drawer-gift:first-child {
	grid-column: 1 / -1;
}

.vh-drawer-gift:first-child .vh-drawer-gift-copy {
	display: none;
}

.vh-drawer-gift:first-child img {
	object-fit: contain;
	transform: none;
}

.vh-drawer-flyout-title {
	grid-column: 1 / -1;
	margin: clamp(-20px, -1vw, -10px) 0 clamp(6px, .8vw, 16px);
	color: #070707;
	font-family: var(--vh-font-body);
	font-size: clamp(24px, 1.72vw, 32px);
	font-weight: 800;
	letter-spacing: .13em;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

.vh-drawer-gift-img {
	aspect-ratio: 16 / 9;
}

.vh-drawer-gift-copy {
	justify-content: center;
	padding-top: clamp(12px, 1vw, 18px);
}

.vh-drawer-gift-copy strong {
	font-size: clamp(15px, 1.08vw, 20px);
	font-weight: 500;
	letter-spacing: .15em;
	line-height: 1.25;
}

.vh-menu-drawer {
	--vh-drawer-flyout: clamp(420px, 38vw, 620px);
}

.vh-menu-drawer.vh-menu-flyout-open {
	width: min(calc(var(--vh-drawer-nav) + var(--vh-drawer-flyout)), 88vw);
}

.vh-drawer-close {
	font-size: clamp(9px, .64vw, 11px);
}

.vh-drawer-primary a,
.vh-drawer-support a,
.vh-drawer-collection-list a {
	font-size: clamp(11px, .9vw, 14px);
	letter-spacing: .14em;
}

.vh-drawer-primary a {
	min-height: clamp(36px, 3.05vw, 48px);
}

.vh-drawer-collection-list a {
	min-height: clamp(38px, 3.2vw, 50px);
}

.vh-drawer-collection-list a.is-active::before {
	height: clamp(16px, 1.18vw, 20px);
}

.vh-drawer-collection-list a > span[aria-hidden="true"] {
	width: clamp(7px, .58vw, 9px);
	height: clamp(7px, .58vw, 9px);
	border-width: 1.5px 1.5px 0 0;
}

.vh-drawer-collection-list a:hover > span[aria-hidden="true"],
.vh-drawer-collection-list a.is-active > span[aria-hidden="true"] {
	transform: translate3d(9px, 0, 0) rotate(45deg);
}

.vh-drawer-support a {
	min-height: clamp(24px, 1.9vw, 32px);
	font-size: clamp(10px, .78vw, 13px);
}

.vh-drawer-section:nth-of-type(2) h4,
.vh-drawer-meta h4 {
	font-size: clamp(9px, .64vw, 11px);
}

.vh-drawer-flyout-title {
	font-size: clamp(15px, 1.14vw, 19px);
}

.vh-drawer-gift-copy strong {
	font-size: clamp(9px, .72vw, 12px);
}

@media (min-width: 1081px) {
	.vh-menu-drawer {
		--vh-drawer-nav: 20vw;
		--vh-drawer-flyout: 20vw;
		--vh-drawer-pad-left: clamp(12px, 1.15vw, 24px);
		--vh-drawer-pad-right: clamp(14px, 1.35vw, 28px);
		width: var(--vh-drawer-nav);
	}

	.vh-menu-drawer.vh-menu-flyout-open {
		width: 40vw;
	}

	.vh-drawer-head,
	.vh-drawer-body {
		width: var(--vh-drawer-nav);
	}

	.vh-drawer-gifts {
		left: var(--vh-drawer-nav);
		width: var(--vh-drawer-flyout);
		padding: clamp(14px, 1.15vw, 24px) clamp(12px, 1.25vw, 26px) 44px;
		gap: clamp(14px, 1.25vw, 24px) clamp(10px, 1vw, 20px);
	}

	.vh-drawer-section:nth-of-type(2) {
		margin-top: clamp(150px, 24vh, 300px);
	}
}

body:not(.home) .main-page-wrapper {
	padding-top: 124px;
}

.vh-duo-banners {
	background: #050505;
}

.vh-duo-banners > .e-con-inner {
	gap: 0 !important;
	max-width: none !important;
}

.vh-banner-tile,
.vh-full-banner,
.vh-news-card {
	position: relative;
	overflow: hidden;
	min-height: clamp(460px, 62vw, 820px);
	color: #fff;
	background: #050505;
}

.vh-banner-tile::before,
.vh-full-banner::before,
.vh-news-card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .46) 0%, rgba(0, 0, 0, .1) 52%, rgba(0, 0, 0, .4) 100%),
		linear-gradient(180deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .64));
	pointer-events: none;
}

.vh-banner-tile > .elementor-widget-image,
.vh-full-banner > .elementor-widget-image,
.vh-news-card > .elementor-widget-image {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.vh-banner-tile > .elementor-widget:not(.elementor-widget-image),
.vh-full-banner > .elementor-widget:not(.elementor-widget-image),
.vh-news-card > .elementor-widget:not(.elementor-widget-image),
.vh-banner-tile > .e-con-inner,
.vh-full-banner > .e-con-inner,
.vh-news-card > .e-con-inner {
	position: relative;
	z-index: 2;
}

.vh-banner-tile :is(h1, h2, h3, p, a, .wd-el-title),
.vh-full-banner :is(h1, h2, h3, p, a, .wd-el-title),
.vh-news-card :is(h1, h2, h3, p, a, .wd-el-title) {
	color: inherit;
}

.vh-banner-tile img,
.vh-full-banner img,
.vh-news-card img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	/* filter убран из transition — причина мигания баннеров при наведении. */
	transition: transform 1.1s var(--vh-ease);
	will-change: transform;
}

.vh-banner-tile:hover img,
.vh-full-banner:hover img,
.vh-news-card:hover img {
	transform: scale(1.045);
}

.vh-linked-promo {
	cursor: pointer;
}

.vh-linked-promo:focus-visible {
	outline: 2px solid rgba(212, 181, 119, .86);
	outline-offset: -6px;
}

.vh-banner-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: inherit;
	padding: clamp(34px, 5vw, 76px);
}

.vh-banner-copy .wd-el-title {
	font-size: clamp(28px, 3.2vw, 54px);
	font-weight: 400;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.vh-banner-copy p {
	max-width: 520px;
	font-size: clamp(15px, 1.25vw, 18px);
	line-height: 1.55;
}

.vh-full-banner {
	min-height: clamp(680px, calc(100svh - var(--vh-topbar-height)), 980px);
	background: #040404;
}

.vh-full-banner::before {
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .72) 0%, rgba(0, 0, 0, .26) 45%, rgba(0, 0, 0, .36) 100%),
		linear-gradient(180deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .62));
}

.vh-full-banner .vh-banner-copy {
	align-items: flex-start;
	justify-content: flex-end;
	max-width: 620px;
	min-height: inherit;
	padding-left: clamp(28px, 8vw, 132px);
}

.vh-full-banner .vh-banner-copy .wd-el-title {
	font-size: clamp(44px, 6vw, 92px);
	line-height: .95;
	letter-spacing: .08em;
}

.vh-news-grid {
	padding: clamp(84px, 8.7vw, 122px) clamp(18px, 4.6vw, 92px) clamp(86px, 8.2vw, 124px) !important;
	background: #fff;
	color: #050505;
}

.vh-news-grid > .e-con-inner {
	gap: clamp(42px, 4.1vw, 58px) !important;
	max-width: 1510px !important;
	padding-inline: 0 !important;
}

.vh-news-card {
	overflow: visible;
	min-height: 0;
	background: transparent;
	color: #050505;
}

.vh-news-card::before {
	content: none;
}

.vh-news-card > .elementor-widget-image {
	position: relative;
	inset: auto;
	z-index: 1;
	width: 100%;
}

.vh-news-card img {
	position: relative;
	inset: auto;
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	transition: transform .7s var(--vh-ease), filter .45s var(--vh-ease);
}

.vh-news-card:hover img {
	transform: scale(1.018);
}

.vh-news-card > .elementor-widget:not(.elementor-widget-image),
.vh-news-card > .e-con-inner {
	position: relative;
	z-index: 2;
}

.vh-news-card .vh-banner-copy {
	align-items: center;
	justify-content: flex-start;
	min-height: 0;
	padding: 27px clamp(16px, 1.8vw, 28px) 0;
	text-align: center;
}

.vh-news-card .vh-banner-copy :is(h1, h2, h3, p, a, .wd-el-title) {
	color: #050505;
}

.vh-news-card .wd-el-title {
	font-family: var(--vh-font-body);
	font-size: clamp(10px, .54vw, 12px);
	font-weight: 800;
	line-height: 1.34;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.vh-news-card .vh-banner-copy :is(.woodmart-title-container, .title, .wd-fontsize-l),
.vh-news-card :is(.elementor-widget-wd_title, .title-wrapper) :is(.woodmart-title-container, .title, .wd-fontsize-l) {
	font-family: var(--vh-font-body) !important;
	font-size: clamp(16px, 1.12vw, 24px) !important;
	font-weight: 800 !important;
	line-height: 1.28 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase;
}

.vh-news-card .wd-text-block,
.vh-news-card .wd-text-block p,
.vh-news-card .vh-banner-copy p {
	max-width: 435px;
	margin-inline: auto;
	color: #050505;
	font-size: clamp(13px, .78vw, 15px);
	font-weight: 600;
	line-height: 1.72;
}

.vh-news-card .vh-outline-link .btn {
	border: 0 !important;
	background: transparent !important;
	color: #050505 !important;
	padding: 0 !important;
	min-height: 0;
	font-size: clamp(13px, .78vw, 15px);
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: .08em;
	text-decoration: underline;
	text-underline-offset: 5px;
	text-transform: uppercase;
	transform: none !important;
}

.vh-news-card .vh-outline-link .btn:hover {
	background: transparent !important;
	color: #050505 !important;
	opacity: .66;
}

.vh-news-grid > .e-con-inner > .elementor-element:first-child {
	width: 100% !important;
	margin-bottom: 0;
	text-align: center;
}

.vh-news-grid > .e-con-inner > .elementor-element:first-child .wd-el-title {
	color: #050505;
	font-family: var(--vh-font-body);
	font-size: clamp(12px, .78vw, 15px);
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.vh-news-grid-row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(18px, 1.34vw, 27px);
	width: 100% !important;
}

.elementor-896 .elementor-element.elementor-element-3577941 {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100%;
	max-width: none !important;
	padding: clamp(84px, 8.7vw, 122px) clamp(18px, 4.6vw, 92px) clamp(86px, 8.2vw, 124px) !important;
	gap: clamp(42px, 4.1vw, 58px) !important;
	background: #fff !important;
	color: #050505;
}

.elementor-896 .elementor-element.elementor-element-0847623 {
	width: 100% !important;
	margin: 0 !important;
}

.elementor-896 .elementor-element.elementor-element-2145285 {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: start;
	width: min(1510px, 100%) !important;
	max-width: 1510px !important;
	gap: clamp(18px, 1.34vw, 27px) !important;
	margin: 0 auto !important;
}

.elementor-896 .elementor-element.elementor-element-3379294,
.elementor-896 .elementor-element.elementor-element-1120827,
.elementor-896 .elementor-element.elementor-element-4759153 {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100% !important;
	min-width: 0;
	margin: 0 !important;
	background: transparent !important;
}

.elementor-896 .elementor-element.elementor-element-3815952,
.elementor-896 .elementor-element.elementor-element-2553455,
.elementor-896 .elementor-element.elementor-element-3216725 {
	width: 100% !important;
}

.elementor-896 .elementor-element.elementor-element-3815952 img,
.elementor-896 .elementor-element.elementor-element-2553455 img,
.elementor-896 .elementor-element.elementor-element-3216725 img {
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.elementor-896 .vh-news-card .vh-banner-copy {
	width: 100% !important;
	max-width: none !important;
}

.whb-header,
.whb-main-header,
.wd-header-nav,
.wd-header-mobile-nav,
.wd-tools-element,
.wd-nav > li > a {
	transition: background-color .35s var(--vh-ease), color .35s var(--vh-ease), opacity .35s var(--vh-ease), transform .35s var(--vh-ease), box-shadow .35s var(--vh-ease);
}

.vh-logo-text,
.site-logo,
.wd-logo {
	letter-spacing: .18em;
}

.vh-kicker,
.vh-meta,
.vh-overline,
.wd-product-cats,
.product-labels,
.wd-entities-title,
.wd-nav > li > a,
.whb-column .wd-tools-text {
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-hero-shell {
	position: relative;
	min-height: var(--vh-hero-height) !important;
	overflow: hidden;
	background: var(--vh-black);
}

.vh-hero-shell,
.vh-hero-shell .elementor-widget-wd_slider,
.vh-hero-shell .elementor-widget-container {
	width: 100%;
	min-height: var(--vh-hero-height) !important;
}

.vh-hero-shell .wd-slider-wrapper,
.vh-hero-shell .wd-carousel-container,
.vh-hero-shell .wd-carousel-inner,
.vh-hero-shell .wd-carousel,
.vh-hero-shell .wd-carousel-wrap,
.vh-hero-shell .wd-slide {
	min-height: var(--vh-hero-height) !important;
	height: var(--vh-hero-height) !important;
}

.vh-hero-shell .wd-slide {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background: var(--vh-black);
}

.vh-hero-shell .wd-slide::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .48) 0%, rgba(0, 0, 0, .2) 28%, rgba(0, 0, 0, .08) 54%, rgba(0, 0, 0, .38) 100%),
		linear-gradient(180deg, rgba(0, 0, 0, .32) 0%, rgba(0, 0, 0, 0) 32%, rgba(0, 0, 0, .58) 100%);
}

.vh-hero-shell .wd-slide-bg {
	z-index: 0 !important;
	overflow: hidden;
}

.vh-hero-shell .wd-slide-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	transform: scale(1.01);
	transition: transform 8s var(--vh-ease), filter 1s var(--vh-ease);
}

.vh-hero-shell .woodmart-loaded .wd-slide-bg img,
.vh-hero-shell .swiper-slide-active .wd-slide-bg img,
.vh-hero-shell .wd-active .wd-slide-bg img {
	animation: vhHeroBreath 18s var(--vh-ease) both;
}

.vh-hero-shell .wd-slide-container {
	position: relative;
	z-index: 5 !important;
	display: flex !important;
	align-items: flex-end !important;
	justify-content: flex-start !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	min-height: var(--vh-hero-height) !important;
	padding: 0 clamp(24px, 6.5vw, 132px) clamp(78px, 10.5vh, 132px) !important;
}

.vh-hero-shell .wd-slide-inner {
	width: min(640px, 86vw) !important;
	max-width: min(640px, 86vw) !important;
	height: auto !important;
	min-height: 0 !important;
	color: #fff;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	text-shadow: 0 12px 32px rgba(0, 0, 0, .34);
}

.vh-hero-shell .wd-slide-inner.wd-animation,
.vh-hero-shell .wd-slide-inner.wd-transform {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.vh-hero-shell .wd-slide-inner .elementor,
.vh-hero-shell .wd-slide-inner .e-con,
.vh-hero-shell .wd-slide-inner .e-con-inner {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
}

.vh-hero-shell .wd-slide-inner .e-con,
.vh-hero-shell .wd-slide-inner .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 12px !important;
}

.vh-hero-shell .wd-slide-inner .elementor-widget,
.vh-hero-shell .wd-slide-inner .elementor-widget-container {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 !important;
}

.vh-hero-shell .vh-slide-copy,
.vh-hero-shell .vh-slide-copy > .e-con-inner {
	gap: 12px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.vh-hero-shell .title-wrapper {
	margin-bottom: 0;
}

.vh-hero-shell .title-wrapper::before {
	content: "";
	display: none;
	margin-bottom: 7px;
	color: rgba(255, 255, 255, .62);
	font-family: var(--vh-font-display);
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.vh-hero-shell #slide-907 .title-wrapper::before {
	content: "NEW RELEASE";
	display: block;
}

.vh-hero-shell .woodmart-title-container.title {
	color: #fff !important;
	font-family: var(--vh-font-display) !important;
	font-size: clamp(38px, 5.05vw, 78px) !important;
	font-weight: 500 !important;
	line-height: .98 !important;
	letter-spacing: .075em !important;
	text-transform: uppercase;
}

.vh-hero-shell .wd-text-block {
	max-width: 420px;
	color: rgba(255, 255, 255, .9);
	font-family: var(--vh-font-body) !important;
	font-size: clamp(13px, .88vw, 16px) !important;
	font-weight: 500;
	line-height: 1.55 !important;
	letter-spacing: 0;
}

.vh-hero-shell .wd-button-wrapper {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	margin-top: clamp(20px, 3vh, 34px);
}

.vh-hero-shell .wd-button-wrapper .btn {
	min-height: clamp(52px, 4.6vw, 72px);
	padding: 0 clamp(28px, 3.2vw, 54px) !important;
	border: 1px solid rgba(255, 255, 255, .96) !important;
	background: #fff !important;
	color: #050505 !important;
	font-family: var(--vh-font-body);
	font-size: clamp(12px, .82vw, 14px);
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	box-shadow: none;
	transform: translate3d(0, 0, 0);
	transition: transform .35s var(--vh-ease), border-color .35s var(--vh-ease), background-color .35s var(--vh-ease), color .35s var(--vh-ease);
}

.vh-hero-shell .wd-button-wrapper .btn:hover {
	border-color: #fff !important;
	background: rgba(255, 255, 255, .86) !important;
	color: #050505 !important;
	transform: translate3d(0, -2px, 0);
}

.vh-hero-shell .wd-button-wrapper .btn:focus-visible {
	outline: 0;
}

.vh-hero-shell .vh-hero-quick-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 22px;
	margin-top: clamp(18px, 2.4vh, 30px);
}

.vh-hero-shell .vh-hero-quick-links a {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding-bottom: 5px;
	color: #fff;
	font-family: var(--vh-font-body);
	font-size: clamp(11px, .74vw, 13px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: .12em;
	text-transform: uppercase;
	text-decoration: none;
	text-shadow: 0 10px 24px rgba(0, 0, 0, .42);
}

.vh-hero-shell .vh-hero-quick-links a::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	background: currentColor;
	opacity: .86;
	transform: scaleX(1);
	transform-origin: left;
	transition: transform .35s var(--vh-ease), opacity .35s var(--vh-ease);
}

.vh-hero-shell .vh-hero-quick-links a:hover::after,
.vh-hero-shell .vh-hero-quick-links a:focus-visible::after {
	opacity: .45;
	transform: scaleX(.72);
}

.vh-hero-shell .vh-hero-quick-links a:focus-visible {
	outline: none;
}

.vh-hero-shell .wd-slider-arrows {
	display: none;
}

.vh-hero-shell .wd-slider-pagin {
	position: absolute;
	right: 0;
	bottom: clamp(24px, 3.2vh, 38px);
	left: 0;
	z-index: 4;
	pointer-events: none;
}

.vh-hero-shell .wd-nav-pagin {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0;
	padding: 0;
}

.vh-hero-shell .wd-nav-pagin li,
.vh-hero-shell .wd-nav-pagin span,
.vh-hero-shell .swiper-pagination-bullet {
	width: 8px !important;
	height: 8px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, .48) !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	opacity: 1 !important;
	overflow: hidden !important;
	text-indent: -999px;
	transform: none !important;
	transition: width .35s var(--vh-ease), background-color .35s var(--vh-ease);
}

.vh-hero-shell .wd-nav-pagin li::before,
.vh-hero-shell .wd-nav-pagin li::after,
.vh-hero-shell .wd-nav-pagin span::before,
.vh-hero-shell .wd-nav-pagin span::after {
	content: none !important;
	display: none !important;
}

.vh-hero-shell .wd-nav-pagin li.wd-active,
.vh-hero-shell .wd-nav-pagin .swiper-pagination-bullet-active,
.vh-hero-shell .swiper-pagination-bullet-active {
	width: 28px !important;
	background: #fff !important;
}

@keyframes vhHeroBreath {
	from {
		transform: scale(1.01);
	}
	to {
		transform: scale(1.055);
	}
}

@media (max-width: 1024px) {
	.vh-hero-shell .wd-slide-container {
		padding-right: clamp(22px, 5vw, 58px) !important;
		padding-left: clamp(22px, 5vw, 58px) !important;
	}

	.vh-hero-shell .wd-slide-inner {
		width: min(560px, 88vw) !important;
		max-width: min(560px, 88vw) !important;
	}

	.vh-hero-shell .woodmart-title-container.title {
		font-size: clamp(34px, 7vw, 58px) !important;
	}
}

@media (min-width: 769px) and (max-width: 1080px) {
	:root {
		--vh-topbar-height: 44px;
	}

	.vh-top-contact-inner {
		display: flex;
		justify-content: space-between;
		gap: 12px;
		padding-inline: 18px;
	}

	.vh-top-contact-message {
		justify-content: flex-start;
		gap: 8px;
		min-width: 0;
	}

	.vh-top-contact-message > span:first-child,
	.vh-top-contact-divider,
	.vh-top-contact-tagline {
		display: none;
	}

	.vh-top-contact-phone {
		display: grid;
		gap: 3px;
		min-width: 0;
		font-size: 11px;
		font-weight: 700;
		line-height: 1.15;
		white-space: nowrap;
	}

	.vh-top-contact-phone::before {
		width: max-content;
		padding: 2px 5px;
		border: 1px solid #6d5a31;
		color: #e0bd7d;
		font-size: 7px;
		font-weight: 800;
		letter-spacing: .11em;
		line-height: 1.1;
		content: attr(data-vh-phone-label);
	}

	.vh-top-contact-socials {
		margin-left: auto;
		gap: 8px;
	}
}

@media (max-width: 768px) {
	.vh-hero-shell .wd-slide-container {
		align-items: flex-end !important;
		padding: 0 22px clamp(72px, 12vh, 96px) !important;
	}

	.vh-hero-shell .wd-slide-inner {
		width: min(100%, 420px) !important;
		max-width: min(100%, 420px) !important;
	}

	.vh-hero-shell .woodmart-title-container.title {
		font-size: clamp(31px, 10.6vw, 44px) !important;
		line-height: 1 !important;
	}

	.vh-hero-shell .wd-text-block {
		max-width: 360px;
		font-size: 14px !important;
		line-height: 1.45 !important;
	}

	.vh-hero-shell .wd-button-wrapper {
		margin-top: 18px;
	}

	.vh-hero-shell .wd-button-wrapper .btn {
		min-height: 50px;
		padding-inline: 28px !important;
		font-size: 12px;
	}
}

.vh-section {
	padding-block: clamp(64px, 9vw, 132px);
}

.vh-section-tight {
	padding-block: clamp(44px, 6vw, 84px);
}

.vh-section .wd-el-title,
.vh-section h1,
.vh-section h2,
.vh-section h3 {
	letter-spacing: .035em;
}

.vh-reveal,
.vh-reveal-child > *,
.vh-product-grid .wd-product,
.vh-category-grid .product-category {
	opacity: 0;
	transform: translate3d(0, 28px, 0);
	transition: opacity .8s var(--vh-ease), transform .8s var(--vh-ease);
}

.vh-reveal.is-visible,
.vh-reveal-child > *.is-visible,
.vh-product-grid .wd-product.is-visible,
.vh-category-grid .product-category.is-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.vh-dark-band {
	background: var(--vh-black);
	color: #fff;
}

.vh-dark-band :is(h1, h2, h3, h4, p, a, .title, .wd-el-title) {
	color: inherit;
}

.vh-editorial-image img,
.vh-tile img,
.vh-category-grid img,
.wd-product :is(.product-image-link img, .hover-img img, .product-element-top img) {
	transition: transform 1.05s var(--vh-ease), opacity .5s var(--vh-ease), filter .5s var(--vh-ease);
}

.vh-editorial-image:hover img,
.vh-tile:hover img,
.vh-category-grid .product-category:hover img,
.wd-product:hover :is(.product-image-link img, .hover-img img, .product-element-top img) {
	transform: scale(1.045);
}

.wd-product .product-wrapper {
	border: 1px solid transparent;
	background: #fff;
	overflow: hidden;
	transition: transform .45s var(--vh-ease), border-color .45s var(--vh-ease), box-shadow .45s var(--vh-ease);
}

.wd-product:hover .product-wrapper {
	border-color: rgba(0, 0, 0, .08);
	box-shadow: 0 24px 58px rgba(0, 0, 0, .08);
	transform: translate3d(0, -6px, 0);
}

.wd-product .product-element-top {
	overflow: hidden;
	background: #f6f5f2;
}

.wd-product .wd-entities-title {
	font-size: 13px;
	font-weight: 600;
	line-height: 1.38;
	letter-spacing: 0;
}

.wd-product .wd-entities-title a {
	display: -webkit-box;
	min-height: 2.76em;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: inherit;
	word-break: normal;
	overflow-wrap: anywhere;
	hyphens: none;
}

.wd-product .price {
	color: var(--vh-ink);
	font-size: 13px;
	letter-spacing: .04em;
}

.vh-product-showcase {
	padding: clamp(56px, 6vw, 92px) clamp(16px, 3vw, 42px);
	background: #fff;
}

.vh-product-showcase .wd-el-title {
	font-size: clamp(34px, 4.6vw, 76px);
	font-weight: 800;
	line-height: .96;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.vh-product-showcase .wd-products,
.vh-product-showcase .wd-carousel-container,
.vh-product-showcase .wd-carousel.wd-grid {
	--wd-col: 5 !important;
	--wd-col-lg: 5 !important;
	--wd-col-md: 4 !important;
	--wd-col-sm: 2 !important;
	--wd-gap-lg: 18px !important;
	--wd-gap-sm: 10px !important;
}

.vh-product-showcase .wd-carousel-item {
	flex-basis: calc(100% / 5) !important;
	max-width: calc(100% / 5) !important;
}

.vh-product-showcase .wd-product .product-wrapper {
	border: 0;
	background: transparent;
	box-shadow: none;
}

.vh-product-showcase .wd-product:hover .product-wrapper {
	border-color: transparent;
	box-shadow: none;
	transform: none;
}

.vh-product-showcase .wd-product .product-element-top {
	aspect-ratio: 1 / 1;
	background: #f7f7f7;
}

.vh-product-showcase .wd-product .product-element-top img {
	object-fit: contain;
	padding: clamp(12px, 1.4vw, 24px);
}

.vh-product-showcase .wd-product .wd-entities-title {
	margin-top: 12px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
	text-transform: none;
}

.vh-product-showcase .wd-product .price {
	min-height: 20px;
	margin-top: 6px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0;
}

.vh-product-showcase .wd-product .wd-product-header {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.vh-product-showcase .wd-product .vh-loop-swatches {
	order: 4;
	max-width: min(100%, 280px);
	max-height: 94px;
	margin: 10px auto 7px;
	padding-bottom: 6px;
	opacity: 1;
	visibility: visible;
	transform: none;
}

.vh-product-showcase .wd-product .vh-loop-swatches.is-expanded {
	max-height: 188px;
}

.vh-product-showcase .wd-product .wrap-price,
.vh-product-showcase .wd-product .swap-wrapp,
.vh-product-showcase .wd-product .swap-elements {
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	transform: none !important;
}

.vh-product-showcase .wd-product .swap-elements {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 8px;
	text-align: center;
}

.vh-product-showcase .wd-product .swap-elements > *,
.vh-product-showcase .wd-product .wd-add-btn {
	position: static !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.vh-product-showcase .wd-product .wd-add-btn {
	display: none !important;
}

.wd-products .wd-product .wd-add-btn,
.product-grid-item .wd-add-btn {
	display: none !important;
}

.vh-product-showcase .wd-product .wd-add-btn a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	padding: 0 0 5px;
	border: 0;
	border-bottom: 1px solid currentColor;
	background: transparent;
	color: #050505;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	line-height: 1;
	text-transform: uppercase;
	transition: border-color .28s var(--vh-ease), color .28s var(--vh-ease), opacity .28s var(--vh-ease), transform .28s var(--vh-ease);
}

.vh-product-showcase .wd-product .wd-add-btn a:hover,
.vh-product-showcase .wd-product .wd-add-btn a:focus-visible {
	background: transparent;
	color: #050505;
	opacity: .62;
	transform: translateY(-1px);
}

.vh-product-showcase .wd-product-cats,
.vh-product-showcase .star-rating {
	display: none;
}

.vh-product-showcase .product-labels {
	letter-spacing: .08em;
}

.vh-product-showcase .wd-carousel-container {
	overflow: visible;
}

.vh-product-showcase .wd-carousel,
.vh-product-showcase .wd-products {
	padding-inline: 0;
}

.vh-product-showcase .wd-nav-pagin-wrap {
	margin-top: clamp(28px, 3vw, 48px) !important;
	line-height: 0;
}

.vh-product-showcase .wd-nav-pagin {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 13px;
	min-height: 18px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

.vh-product-showcase .wd-nav-pagin li,
.vh-product-showcase .wd-nav-pagin span,
.vh-product-showcase .swiper-pagination-bullet {
	position: relative;
	display: block !important;
	width: 34px !important;
	height: 2px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: rgba(5, 5, 5, .24) !important;
	box-shadow: none !important;
	opacity: 1 !important;
	overflow: visible !important;
	font-size: 0 !important;
	line-height: 0 !important;
	transform: none !important;
	transition: width .35s var(--vh-ease), background-color .35s var(--vh-ease), opacity .35s var(--vh-ease);
}

.vh-product-showcase .wd-nav-pagin li::before,
.vh-product-showcase .wd-nav-pagin li::after,
.vh-product-showcase .wd-nav-pagin span::before,
.vh-product-showcase .wd-nav-pagin span::after {
	content: none !important;
	display: none !important;
}

.vh-product-showcase .wd-nav-pagin li:hover,
.vh-product-showcase .wd-nav-pagin span:hover,
.vh-product-showcase .swiper-pagination-bullet:hover {
	background: rgba(5, 5, 5, .48) !important;
}

.vh-product-showcase .wd-nav-pagin li.wd-active,
.vh-product-showcase .wd-nav-pagin .wd-active,
.vh-product-showcase .wd-nav-pagin .swiper-pagination-bullet-active,
.vh-product-showcase .swiper-pagination-bullet-active {
	width: 58px !important;
	background: #050505 !important;
}

.vh-category-grid .product-category {
	overflow: hidden;
	background: #f7f7f7;
}

.vh-category-grid .wd-entities-title {
	font-size: clamp(15px, 1.4vw, 22px);
}

.vh-outline-link a,
a.vh-outline-link,
.vh-outline-link .elementor-button,
.vh-dark-band .elementor-button,
.vh-footer .elementor-button {
	padding: 0 0 5px;
	border: 0;
	border-bottom: 1px solid currentColor;
	border-radius: 0;
	background: transparent;
	color: inherit;
	letter-spacing: .14em;
	text-transform: uppercase;
	transition: color .35s var(--vh-ease), border-color .35s var(--vh-ease), opacity .35s var(--vh-ease), transform .35s var(--vh-ease);
}

.vh-banner-copy .vh-outline-link .btn {
	border-color: rgba(255, 255, 255, .95) !important;
	background: transparent !important;
	color: #fff !important;
}

.vh-outline-link a:hover,
a.vh-outline-link:hover,
.vh-outline-link .elementor-button:hover,
.vh-dark-band .elementor-button:hover,
.vh-footer .elementor-button:hover {
	background: transparent;
	opacity: .7;
	transform: translate3d(0, -2px, 0);
}

.vh-banner-copy .vh-outline-link .btn:hover {
	background: transparent !important;
	color: #fff !important;
}

.vh-full-banner .vh-outline-link .btn {
	border-color: rgba(255, 255, 255, .95) !important;
	background: transparent !important;
	color: #fff !important;
}

.vh-full-banner .vh-outline-link .btn:hover {
	background: transparent !important;
	color: #fff !important;
}

.vh-outline-link .btn .wd-btn-text {
	color: inherit;
}

.vh-outline-link .elementor-button:hover .elementor-button-text,
.vh-dark-band .elementor-button:hover .elementor-button-text,
.vh-footer .elementor-button:hover .elementor-button-text {
	color: inherit;
}

.vh-marquee {
	overflow: hidden;
	white-space: nowrap;
	border-block: 1px solid rgba(255, 255, 255, .18);
}

.vh-marquee .elementor-widget-container {
	display: inline-flex;
	min-width: max-content;
	animation: vh-marquee 26s linear infinite;
}

.vh-footer,
.vh-footer-top,
.vh-footer-links,
.vh-footer-strip {
	background: #282828;
	color: #fff;
}

.footer-container,
.wd-footer,
.footer-sidebar,
.footer-column,
.copyrights-wrapper {
	background: #282828 !important;
}

.wd-copyrights.copyrights-wrapper,
.copyrights-wrapper.wd-copyrights {
	display: none !important;
}

.footer-container {
	margin-top: 0 !important;
	border-top: 0 !important;
}

.vh-footer-top,
.vh-footer-links {
	border-bottom: 1px solid rgba(255, 255, 255, .16);
}

.vh-footer-top,
.vh-footer-links,
.vh-footer-strip {
	width: 100%;
	margin: 0 !important;
	padding-inline: clamp(24px, 5.6vw, 96px) !important;
}

.vh-footer-top > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(180px, auto) minmax(0, 1fr);
	align-items: center;
	justify-content: space-between;
	gap: clamp(32px, 7vw, 150px) !important;
	width: 100%;
	max-width: 1260px !important;
	min-height: clamp(156px, 10vw, 178px);
	margin-inline: auto;
	padding-block: clamp(36px, 3.8vw, 52px);
}

.vh-footer-top > .e-con-inner > .elementor-element {
	width: auto !important;
}

.vh-footer-top > .e-con-inner > .elementor-element:first-child {
	justify-self: start;
	text-align: left;
}

.vh-footer-top > .e-con-inner > .elementor-element:last-child {
	justify-self: end;
	width: min(430px, 100%) !important;
	text-align: left;
}

.vh-footer-top .wd-el-title,
.vh-footer-column h3 {
	margin: 0 0 18px;
	color: #fff;
	font-family: var(--vh-font-body);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-footer-logo {
	text-align: center;
}

.vh-footer-logo img {
	display: block;
	width: clamp(176px, 13vw, 245px);
	max-width: 100%;
	height: auto;
	margin-inline: auto;
	object-fit: contain;
}

.vh-footer-logo .elementor-widget-container::before {
	content: none;
	display: none;
}

.vh-social-links {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	margin-top: 2px;
}

.vh-social-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	color: #fff;
	text-decoration: none;
}

.vh-social-icon::before {
	content: "";
	display: block;
	width: 21px;
	height: 21px;
	background: currentColor;
	transition: opacity .25s var(--vh-ease), transform .25s var(--vh-ease);
}

.vh-social-icon:hover::before {
	opacity: .72;
	transform: translate3d(0, -1px, 0);
}

.vh-social-icon-tg::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg width='22' height='20' viewBox='0 0 18 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.4853 1.79514C17.6216 .932128 16.784 .250945 16.0007 .587856L.399018 7.298C-.16272 7.53961-.121628 8.37318 .460979 8.5549L3.67838 9.55861C4.29252 9.75018 4.95741 9.65107 5.49368 9.28818L12.7476 4.37889C12.9664 4.23082 13.2048 4.53554 13.0179 4.72422L7.79635 9.99779C7.28983 10.5094 7.39035 11.3763 7.99968 11.7505L13.8458 15.3418C14.5015 15.7445 15.345 15.3399 15.4676 14.5637L17.4853 1.79514Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg width='22' height='20' viewBox='0 0 18 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.4853 1.79514C17.6216 .932128 16.784 .250945 16.0007 .587856L.399018 7.298C-.16272 7.53961-.121628 8.37318 .460979 8.5549L3.67838 9.55861C4.29252 9.75018 4.95741 9.65107 5.49368 9.28818L12.7476 4.37889C12.9664 4.23082 13.2048 4.53554 13.0179 4.72422L7.79635 9.99779C7.28983 10.5094 7.39035 11.3763 7.99968 11.7505L13.8458 15.3418C14.5015 15.7445 15.345 15.3399 15.4676 14.5637L17.4853 1.79514Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}

.vh-social-icon-ig::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='none' stroke='black' stroke-width='2.3' d='M8 3h8a5 5 0 0 1 5 5v8a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5V8a5 5 0 0 1 5-5Z'/%3E%3Ccircle cx='12' cy='12' r='4.1' fill='none' stroke='black' stroke-width='2.3'/%3E%3Ccircle cx='17.3' cy='6.7' r='1.35' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='none' stroke='black' stroke-width='2.3' d='M8 3h8a5 5 0 0 1 5 5v8a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5V8a5 5 0 0 1 5-5Z'/%3E%3Ccircle cx='12' cy='12' r='4.1' fill='none' stroke='black' stroke-width='2.3'/%3E%3Ccircle cx='17.3' cy='6.7' r='1.35' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}

.vh-newsletter-form {
	display: flex;
	gap: 14px;
	width: 100%;
	margin-top: 18px;
	border: 0;
}

.vh-newsletter-form input {
	box-sizing: border-box;
	min-width: 0;
	flex: 1 1 auto;
	height: 46px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 6px;
	background: #fff;
	color: #050505;
	padding: 0 22px 0 32px !important;
	font-size: 14px;
	font-weight: 600;
	text-indent: 0;
	outline: none;
}

.vh-newsletter-form input::placeholder {
	color: rgba(28, 38, 55, .72);
	font-weight: 500;
	opacity: 1;
}

.vh-newsletter-form button {
	flex: 0 0 auto;
	height: 46px;
	border: 0;
	border-radius: 6px;
	background: #050505;
	color: #c7a66b;
	padding-inline: 26px;
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .08em;
	transition: opacity .25s var(--vh-ease), transform .25s var(--vh-ease);
}

.vh-newsletter-form button:hover {
	opacity: .86;
	transform: translateY(-1px);
}

.vh-footer-links > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	justify-content: space-between;
	gap: clamp(42px, 8.6vw, 160px) !important;
	width: 100%;
	max-width: 1260px !important;
	margin-inline: auto;
	padding-block: clamp(44px, 4.8vw, 66px);
}

.vh-footer-links > .e-con-inner > .elementor-element {
	width: auto !important;
}

.vh-footer-column p {
	margin: 0;
	color: rgba(255, 255, 255, .84);
	font-size: 11px;
	font-weight: 700;
	line-height: 2.28;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.vh-footer-strip > .e-con-inner {
	width: 100%;
	max-width: 1260px !important;
	margin-inline: auto;
	padding-block: 19px;
}

.vh-footer-bottom {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(220px, auto) minmax(0, 1fr);
	align-items: center;
	gap: clamp(20px, 3vw, 46px);
	width: 100%;
	margin: 0;
	color: rgba(255, 255, 255, .74);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.vh-footer-payments,
.vh-footer-policy-links {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.vh-footer-policy-links {
	justify-content: flex-end;
	gap: clamp(14px, 2vw, 26px);
	text-align: right;
}

.vh-footer-copy {
	justify-self: center;
	text-align: center;
	white-space: nowrap;
}

.vh-pay-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 17px;
	border-radius: 3px;
	background: #f7f7f7;
	color: #222;
	padding-inline: 5px;
	font-size: 8px;
	font-weight: 900;
	letter-spacing: 0;
	text-transform: none;
}

.vh-footer a,
.vh-footer p,
.vh-footer h2,
.vh-footer h3,
.vh-footer h4,
.vh-footer-top a,
.vh-footer-top p,
.vh-footer-top h2,
.vh-footer-top h3,
.vh-footer-top h4 {
	color: inherit;
}

.vh-footer a,
.vh-footer-top a {
	text-decoration: none;
	background-image: linear-gradient(currentColor, currentColor);
	background-position: 0 100%;
	background-repeat: no-repeat;
	background-size: 0 1px;
	transition: background-size .35s var(--vh-ease), opacity .35s var(--vh-ease);
}

.vh-footer a:hover,
.vh-footer-top a:hover {
	background-size: 100% 1px;
	opacity: .78;
}

.vh-social-icon,
.vh-social-icon:hover {
	background-image: none !important;
}

.elementor-29070 .elementor-element.elementor-element-2669767,
.elementor-29070 .elementor-element.elementor-element-4628493,
.elementor-29070 .elementor-element.elementor-element-3907672 {
	width: 100%;
	margin: 0 !important;
	background: #282828 !important;
	color: #fff;
}

.elementor-29070 .elementor-element.elementor-element-2669767 {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(180px, auto) minmax(0, 1fr);
	align-items: center;
	gap: clamp(32px, 7vw, 150px) !important;
	padding: clamp(36px, 3.8vw, 52px) clamp(24px, 5.6vw, 96px) !important;
	border-bottom: 1px solid rgba(255, 255, 255, .16);
}

.elementor-29070 .elementor-element.elementor-element-2669767 > .elementor-element {
	width: auto !important;
	min-width: 0;
}

.elementor-29070 .elementor-element.elementor-element-6111947 {
	grid-column: 1;
	justify-self: start;
	text-align: left;
}

.elementor-29070 .elementor-element.elementor-element-8002904 {
	grid-column: 2;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	justify-self: center;
	width: auto !important;
	text-align: center;
}

.elementor-29070 .elementor-element.elementor-element-4209561 {
	grid-column: 3;
	justify-self: end;
	width: min(470px, 100%) !important;
	text-align: left;
}

.elementor-29070 .elementor-element.elementor-element-4628493 {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(42px, 8.6vw, 160px) !important;
	padding: clamp(44px, 4.8vw, 66px) clamp(24px, 5.6vw, 96px) !important;
	border-bottom: 1px solid rgba(255, 255, 255, .16);
}

.elementor-29070 .elementor-element.elementor-element-4628493 > .elementor-element {
	width: auto !important;
	min-width: 0;
}

.elementor-29070 .elementor-element.elementor-element-3907672 {
	display: block !important;
	padding: 19px clamp(24px, 5.6vw, 96px) !important;
}

.elementor-29070 .elementor-element.elementor-element-0802644 {
	width: 100% !important;
}

body.elementor-editor-active .vh-site-header,
body.elementor-editor-active .vh-top-contact,
body.elementor-editor-active .vh-menu-drawer,
body.elementor-editor-active .vh-drawer-backdrop,
body.elementor-editor-active .whb-header {
	display: none !important;
}

body.elementor-editor-active .wd-page-content.main-page-wrapper,
body.elementor-editor-active .wd-content-layout,
body.elementor-editor-active .wd-content-area,
body.elementor-editor-active article.entry-content,
body.elementor-editor-active .elementor {
	width: 100% !important;
	max-width: none !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.elementor-editor-active .vh-promo-fixed {
	display: flex !important;
}

body.elementor-editor-active .vh-reveal,
body.elementor-editor-active .vh-reveal-child > *,
body.elementor-editor-active .vh-product-grid .wd-product,
body.elementor-editor-active .vh-category-grid .product-category,
body.elementor-editor-active .vh-banner-tile,
body.elementor-editor-active .vh-full-banner,
body.elementor-editor-active .vh-news-card {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	transition-delay: 0s !important;
}

body.elementor-editor-active .vh-hero-shell,
body.elementor-editor-active .vh-hero-shell .elementor-widget-wd_slider,
body.elementor-editor-active .vh-hero-shell .elementor-widget-container {
	min-height: 720px !important;
}

.single-product .summary-inner,
.woocommerce-shop .main-page-wrapper,
.tax-product_cat .main-page-wrapper {
	animation: vh-page-enter .7s var(--vh-ease) both;
}

@keyframes vh-marquee {
	to {
		transform: translate3d(-50%, 0, 0);
	}
}

@keyframes vh-page-enter {
	from {
		opacity: 0;
		transform: translate3d(0, 16px, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@media (min-width: 769px) and (max-width: 1024px) {
	.vh-product-showcase .wd-carousel.wd-grid {
		--wd-col: 3 !important;
		--wd-col-lg: 3 !important;
		--wd-col-md: 3 !important;
		--wd-col-sm: 3 !important;
	}

	.vh-product-showcase .wd-carousel-item {
		flex-basis: calc(100% / 3) !important;
		max-width: calc(100% / 3) !important;
	}
}

@media (max-width: 768px) {
	body.admin-bar {
		--vh-admin-offset: 46px;
	}

	:root {
		--vh-topbar-height: 38px;
	}

	.vh-top-contact {
		font-size: 9px;
		letter-spacing: .04em;
	}

	.vh-top-contact-inner {
		justify-content: space-between;
		gap: 10px;
		padding-inline: 14px;
	}

	.vh-top-contact-inner {
		justify-content: flex-start;
	}

	.vh-top-contact-message {
		margin-right: auto;
		justify-content: flex-start;
		gap: 4px;
		text-align: left;
		min-width: 0;
		flex: 1 1 auto;
	}

	.vh-top-contact-message + .vh-top-contact-social {
		margin-left: auto;
	}

	.vh-top-contact-message span {
		display: none;
	}

	.vh-top-contact-social span {
		display: none;
	}

	.vh-top-contact-phone {
		letter-spacing: .01em;
	}

	.vh-top-contact-social {
		width: 24px;
		height: 30px;
		flex: 0 0 24px;
	}

	.vh-site-header-inner {
		height: 64px;
		padding-inline: 14px;
	}

	.vh-header-left,
	.vh-header-right {
		min-width: 0;
	}

	.vh-header-shop,
	.vh-header-bespoke,
	.vh-header-partners,
	.vh-header-contact,
	.vh-header-search {
		display: none;
	}

	.vh-menu-toggle span:last-child {
		display: none;
	}

	.vh-header-logo {
		width: 124px;
	}

	.vh-header-logo img {
		width: 92px;
	}

	.vh-header-wordmark {
		font-size: 24px;
		letter-spacing: .2em;
		text-indent: .2em;
	}

	.vh-mobile-search-row {
		display: flex;
	}

	body.home:not(.vh-scrolled) .vh-mobile-search-row {
		display: none;
	}

	body:not(.home) .main-page-wrapper {
		padding-top: 128px;
	}

	.vh-duo-banners > .e-con-inner,
	.vh-news-grid > .e-con-inner {
		flex-direction: column !important;
	}

	.vh-news-grid-row {
		grid-template-columns: 1fr;
	}

	.vh-banner-tile,
	.vh-full-banner {
		min-height: 560px;
	}

	.vh-news-card {
		min-height: 0;
	}

	.vh-banner-copy {
		padding: 28px 20px;
	}

	.vh-menu-drawer {
		width: 100vw;
	}

	.vh-menu-drawer.vh-menu-flyout-open {
		width: 100vw;
	}

	.vh-drawer-head {
		min-height: 76px;
		padding: 18px 20px;
	}

	.vh-drawer-body {
		display: block;
		overflow-y: auto;
		overflow-x: hidden;
		padding: 20px;
	}

	.vh-drawer-section:nth-of-type(2) {
		align-self: start;
		margin-top: 34px;
	}

	.vh-drawer-gifts {
		position: static;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		min-height: 0;
		margin-top: 18px;
		padding: 0;
		border-left: 0;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: none;
	}

	.vh-drawer-gift-frame {
		min-height: 0;
	}

	.vh-drawer-feature {
		display: none;
	}

	.vh-hero-shell {
		min-height: var(--vh-hero-height) !important;
	}

	.vh-section {
		padding-block: 56px;
	}

	.vh-product-grid .wd-products {
		--wd-col: 2;
	}

	.vh-product-showcase .wd-carousel.wd-grid {
		--wd-col: 2 !important;
		--wd-col-lg: 2 !important;
		--wd-col-md: 2 !important;
		--wd-col-sm: 2 !important;
	}

	.vh-product-showcase .wd-carousel-item {
		flex-basis: 50% !important;
		max-width: 50% !important;
	}

	/* Homepage product rails: one calm, full-width product at a time on mobile. */
	body.home .vh-product-grid .wd-products,
	body.home .vh-product-showcase .wd-products,
	body.home .vh-product-showcase .wd-carousel-container,
	body.home .vh-product-showcase .wd-carousel.wd-grid {
		--wd-col: 1 !important;
		--wd-col-lg: 1 !important;
		--wd-col-md: 1 !important;
		--wd-col-sm: 1 !important;
		--wd-gap-sm: 26px !important;
	}

	body.home .vh-product-showcase .wd-carousel-item {
		flex-basis: 100% !important;
		max-width: 100% !important;
	}

	.vh-newsletter-form {
		flex-direction: column;
	}

	.vh-newsletter-form button {
		width: 100%;
	}

	.vh-footer-top > .e-con-inner,
	.vh-footer-links > .e-con-inner {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.vh-footer-top > .e-con-inner > .elementor-element,
	.vh-footer-links > .e-con-inner > .elementor-element {
		width: 100% !important;
	}

	.vh-footer-top > .e-con-inner > .elementor-element:first-child,
	.vh-footer-top > .e-con-inner > .elementor-element:last-child {
		justify-self: center;
	}

	.vh-footer-logo {
		order: -1;
	}

	.vh-social-links,
	.vh-footer-payments,
	.vh-footer-policy-links {
		justify-content: center;
	}

	.vh-footer-bottom {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.elementor-29070 .elementor-element.elementor-element-2669767,
	.elementor-29070 .elementor-element.elementor-element-4628493 {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.elementor-29070 .elementor-element.elementor-element-2669767 > .elementor-element,
	.elementor-29070 .elementor-element.elementor-element-6111947,
	.elementor-29070 .elementor-element.elementor-element-8002904,
	.elementor-29070 .elementor-element.elementor-element-4209561 {
		justify-self: center;
		width: 100% !important;
		text-align: center;
	}

	.elementor-29070 .elementor-element.elementor-element-8002904 {
		order: -1;
	}

	.elementor-29070 .elementor-element.elementor-element-3907672 {
		text-align: center;
	}
}

@media (max-width: 480px) {
	.vh-drawer-gifts {
		grid-template-columns: 1fr;
	}

	.vh-drawer-gift-frame {
		aspect-ratio: 16 / 9;
	}

	.vh-drawer-feature i {
		width: 52px;
		height: 52px;
	}

	.vh-product-bespoke-link {
		align-items: flex-start;
		flex-direction: column;
	}

	.vh-product-bespoke-link small {
		text-align: left;
	}
}

@media (max-width: 768px) {
	.vh-menu-drawer {
		--vh-drawer-nav: 100vw;
		--vh-drawer-flyout: 100vw;
		--vh-drawer-head: 76px;
		--vh-drawer-pad-left: 20px;
		--vh-drawer-pad-right: 20px;
		width: 100vw;
	}

	.vh-menu-drawer.vh-menu-flyout-open {
		width: 100vw;
	}

	.vh-drawer-head {
		min-height: var(--vh-drawer-head);
		padding: 0 20px;
	}

	.vh-drawer-close {
		font-size: 11px;
	}

	.vh-drawer-body {
		position: relative;
		height: calc(100% - var(--vh-drawer-head));
		padding: 28px 20px 0;
		overflow-x: hidden;
	}

	.vh-drawer-primary a,
	.vh-drawer-collection-list a {
		min-height: 52px;
		font-size: 17px;
		letter-spacing: .12em;
	}

	.vh-drawer-collection-list a::before {
		left: -10px;
	}

	.vh-drawer-collection-list a.is-active::before {
		height: 22px;
	}

	.vh-drawer-collection-list a > span[aria-hidden="true"] {
		width: 9px;
		height: 9px;
		border-width: 1.5px 1.5px 0 0;
	}

	.vh-drawer-collection-list a:hover > span[aria-hidden="true"],
	.vh-drawer-collection-list a.is-active > span[aria-hidden="true"] {
		transform: translate3d(6px, 0, 0) rotate(45deg);
	}

	.vh-drawer-gifts {
		position: static;
		width: 100%;
		min-height: 0;
		max-height: 0;
		margin-top: 20px;
		padding: 0 0 32px;
		border-left: 0;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: none;
		overflow: hidden;
		transition: max-height .6s cubic-bezier(.19, 1, .22, 1), opacity .28s var(--vh-ease), visibility .28s var(--vh-ease);
	}

	.vh-menu-drawer.vh-menu-flyout-open .vh-drawer-gifts {
		max-height: 2200px;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.vh-drawer-flyout-title {
		font-size: 20px;
		margin: -6px 0 4px;
	}

	.vh-drawer-gift-copy strong {
		font-size: 12px;
	}

	.vh-drawer-section:nth-of-type(2) {
		margin: 86px -20px 0;
		padding: 34px 20px 42px;
	}

	.vh-drawer-meta-group + .vh-drawer-meta-group {
		margin-top: 34px;
	}

	.vh-drawer-meta h4 {
		font-size: 11px;
		margin-bottom: 18px;
	}

	.vh-drawer-support a {
		min-height: 34px;
		font-size: 15px;
	}
}

@media (max-width: 480px) {
	.vh-drawer-gifts {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.vh-drawer-primary a,
	.vh-drawer-collection-list a {
		min-height: 42px;
		font-size: 13px;
		letter-spacing: .14em;
	}

	.vh-drawer-support a {
		min-height: 28px;
		font-size: 11px;
	}

	.vh-drawer-flyout-title {
		font-size: 15px;
	}

	.vh-drawer-gift-copy strong {
		font-size: 10px;
	}
}

@media (max-width: 1024px) {
	.vh-mobile-header-search {
		position: relative;
		display: inline-flex;
		width: 42px;
		min-width: 42px;
		height: 42px;
		min-height: 42px;
		margin-right: 2px;
		border: 1px solid rgba(0, 0, 0, .1);
		border-radius: 50%;
		background: rgba(255, 255, 255, .34);
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28);
		backdrop-filter: blur(12px) saturate(145%);
		-webkit-backdrop-filter: blur(12px) saturate(145%);
	}

	body.home:not(.vh-scrolled) .vh-mobile-header-search {
		border-color: rgba(255, 255, 255, .26);
		background: rgba(0, 0, 0, .08);
		color: #fff;
	}

	.vh-mobile-header-search svg {
		width: 19px;
		height: 19px;
		stroke-width: 1.9;
	}

	.vh-mobile-search-row {
		display: none !important;
	}
}

@media (max-width: 640px) {
	.vh-header-account {
		display: none;
	}

	.vh-header-right {
		gap: 6px;
		min-width: 92px;
	}

	.vh-mobile-header-search {
		width: 40px;
		min-width: 40px;
		height: 40px;
		min-height: 40px;
	}
}

@media (max-width: 768px) {
	body .vh-top-contact,
	body.vh-scrolled .vh-top-contact,
	body.home:not(.vh-scrolled) .vh-top-contact {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translate3d(0, 0, 0);
	}

	body .vh-site-header,
	body.vh-scrolled .vh-site-header,
	body.home:not(.vh-scrolled) .vh-site-header,
	body.vh-menu-open .vh-site-header {
		top: calc(var(--vh-admin-offset) + var(--vh-topbar-height));
		color: #090909;
		background: rgba(255, 255, 255, .92);
		box-shadow: 0 14px 38px rgba(0, 0, 0, .08);
		backdrop-filter: blur(18px) saturate(150%);
		-webkit-backdrop-filter: blur(18px) saturate(150%);
	}

	.vh-site-header-inner {
		height: 58px;
		padding-inline: 14px;
	}

	.vh-header-left,
	.vh-header-right {
		flex: 0 0 92px;
		min-width: 92px;
	}

	.vh-header-left {
		justify-content: flex-start;
	}

	.vh-header-right {
		justify-content: flex-start;
		gap: 6px;
		transform: translateX(-8px);
	}

	.vh-menu-toggle {
		min-width: 40px;
		min-height: 40px;
		padding: 0;
	}

	.vh-header-logo {
		width: 128px;
		height: 48px;
	}

	.vh-header-wordmark {
		color: #090909;
		font-size: 23px;
		letter-spacing: .22em;
		text-indent: .22em;
	}

	.vh-mobile-header-search,
	.vh-header-cart {
		width: 40px;
		min-width: 40px;
		height: 40px;
		min-height: 40px;
		border: 1px solid rgba(0, 0, 0, .1);
		border-radius: 50%;
		background: rgba(255, 255, 255, .58);
		color: #090909;
		box-shadow: 0 8px 24px rgba(0, 0, 0, .06), inset 0 1px 0 rgba(255, 255, 255, .6);
	}

	body.home:not(.vh-scrolled) .vh-mobile-header-search,
	body.home:not(.vh-scrolled) .vh-header-cart {
		border-color: rgba(0, 0, 0, .1);
		background: rgba(255, 255, 255, .58);
		color: #090909;
	}

	body:not(.home) .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 58px);
	}
}

@media (max-width: 768px) {
	.vh-drawer-head {
		position: sticky;
		top: 0;
		z-index: 30;
		display: flex;
		align-items: center;
		justify-content: space-between;
		background: rgba(255, 255, 255, .96);
		backdrop-filter: blur(18px) saturate(150%);
		-webkit-backdrop-filter: blur(18px) saturate(150%);
	}

	.vh-drawer-close {
		position: relative;
		z-index: 31;
		display: inline-flex !important;
		align-items: center;
		min-height: 44px;
		padding: 0 30px 0 0;
		color: #070707;
		pointer-events: auto;
	}

	.vh-drawer-close::before,
	.vh-drawer-close::after {
		position: absolute;
		top: 50%;
		right: 3px;
		display: block;
		width: 16px;
		height: 1.5px;
		background: currentColor;
		transform-origin: center;
	}

	.vh-drawer-close::before {
		transform: translateY(-50%) rotate(45deg);
	}

	.vh-drawer-close::after {
		transform: translateY(-50%) rotate(-45deg);
	}

	.vh-menu-drawer.vh-menu-flyout-open .vh-drawer-head {
		box-shadow: 0 10px 26px rgba(0, 0, 0, .08);
	}
}

.vh-drawer-backdrop {
	transition: opacity 1.05s var(--vh-menu-ease), visibility 1.05s var(--vh-menu-ease), backdrop-filter 1.15s var(--vh-menu-ease), -webkit-backdrop-filter 1.15s var(--vh-menu-ease);
}

.vh-menu-drawer {
	transition:
		width 1.12s var(--vh-menu-ease),
		transform 1.28s var(--vh-menu-ease),
		clip-path 1.28s var(--vh-menu-ease),
		visibility 1.28s var(--vh-menu-ease);
}

body.vh-menu-closing .vh-drawer-backdrop {
	visibility: visible;
	pointer-events: none;
	transition:
		opacity 1.18s var(--vh-menu-ease-soft),
		visibility 1.18s var(--vh-menu-ease),
		backdrop-filter 1.24s var(--vh-menu-ease),
		-webkit-backdrop-filter 1.24s var(--vh-menu-ease);
}

body.vh-menu-closing .vh-menu-drawer {
	visibility: visible;
	pointer-events: none;
	transition:
		width 1.04s var(--vh-menu-ease),
		transform 1.32s var(--vh-menu-ease),
		clip-path 1.32s var(--vh-menu-ease),
		visibility 1.32s var(--vh-menu-ease);
}

.vh-menu-drawer::before {
	transition: transform 1.45s var(--vh-menu-ease), opacity 1.1s var(--vh-menu-ease);
}

.vh-drawer-head > *,
.vh-drawer-body > * {
	transform: translate3d(-44px, 18px, 0);
	transition: opacity .92s var(--vh-menu-ease-soft), transform 1.08s var(--vh-menu-ease);
}

body.vh-menu-closing .vh-drawer-head > *,
body.vh-menu-closing .vh-drawer-body > * {
	transition:
		opacity .88s var(--vh-menu-ease-soft),
		transform 1.16s var(--vh-menu-ease);
}

body.vh-menu-open .vh-drawer-head h3 {
	transition-delay: .28s;
}

body.vh-menu-open .vh-drawer-close {
	transition-delay: .34s, .34s, .34s;
}

body.vh-menu-open .vh-drawer-primary {
	transition-delay: .42s;
}

body.vh-menu-open .vh-drawer-section:first-of-type {
	transition-delay: .54s;
}

body.vh-menu-open .vh-drawer-section:nth-of-type(2) {
	transition-delay: .68s;
}

body.vh-menu-open .vh-drawer-feature {
	transition-delay: .78s;
}

.vh-drawer-primary a,
.vh-drawer-support a,
.vh-drawer-collection-list a {
	transition: color .55s var(--vh-menu-ease), transform .72s var(--vh-menu-ease), opacity .55s var(--vh-menu-ease), padding-left .68s var(--vh-menu-ease);
}

.vh-drawer-collection-list a > span[aria-hidden="true"] {
	transition: opacity .55s var(--vh-menu-ease), transform .82s var(--vh-menu-ease);
}

.vh-drawer-gifts {
	transition: opacity .82s var(--vh-menu-ease-soft), transform 1.02s var(--vh-menu-ease), visibility .82s var(--vh-menu-ease), filter .82s var(--vh-menu-ease);
	will-change: opacity, transform, filter;
}

.vh-drawer-gifts.is-flyout-switching {
	opacity: .18;
	filter: blur(6px);
	transform: translate3d(14px, 0, 0);
}

.vh-drawer-gift,
body.vh-menu-open .vh-drawer-gift {
	transition: opacity .68s var(--vh-menu-ease), transform .9s var(--vh-menu-ease);
}

.vh-drawer-gift img {
	transition: transform 1.18s var(--vh-menu-ease), filter .82s var(--vh-menu-ease);
}

.vh-drawer-gift-frame::before,
.vh-drawer-gift-frame::after,
.vh-drawer-gift-copy,
.vh-drawer-gift-copy em,
.vh-drawer-gift-copy::after {
	transition-duration: .72s;
	transition-timing-function: var(--vh-menu-ease);
}

/* Polished drawer rhythm for VERTU Custom and lower navigation groups. */
.vh-drawer-primary {
	margin-bottom: clamp(22px, 2.6vh, 42px);
}

.vh-drawer-bespoke-link {
	margin-top: clamp(18px, 2.5vh, 36px);
	margin-bottom: clamp(18px, 2.4vh, 34px);
	padding-top: clamp(20px, 2.4vh, 34px) !important;
	padding-bottom: clamp(22px, 2.6vh, 36px) !important;
	border-top: 1px solid rgba(0, 0, 0, .08);
	border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.vh-drawer-collection-list .vh-drawer-link-copy,
.vh-drawer-collection-list .vh-drawer-link-copy small {
	transition: color .55s var(--vh-menu-ease), opacity .55s var(--vh-menu-ease), transform .72s var(--vh-menu-ease);
}

.vh-drawer-collection-list a:hover .vh-drawer-link-copy,
.vh-drawer-collection-list a.is-active .vh-drawer-link-copy {
	transform: translate3d(8px, 0, 0);
}

.vh-drawer-collection-list a:hover .vh-drawer-link-copy small,
.vh-drawer-collection-list a.is-active .vh-drawer-link-copy small {
	color: rgba(0, 0, 0, .62);
	transform: translate3d(3px, 0, 0);
}

.vh-drawer-primary a,
.vh-drawer-support a,
.vh-drawer-collection-list a {
	will-change: transform, opacity;
}

.vh-drawer-primary a:hover,
.vh-drawer-support a:hover,
.vh-drawer-collection-list a:hover,
.vh-drawer-primary a:focus-visible,
.vh-drawer-support a:focus-visible,
.vh-drawer-collection-list a:focus-visible {
	transform: translate3d(8px, 0, 0);
}

.vh-drawer-section:nth-of-type(2) {
	margin-top: clamp(48px, 7vh, 110px);
	padding-top: clamp(34px, 3.2vw, 54px);
}

.vh-drawer-meta-group + .vh-drawer-meta-group {
	margin-top: clamp(28px, 3.2vw, 48px);
}

body.vh-menu-closing .vh-drawer-backdrop {
	opacity: 0;
	transition:
		opacity 1.55s var(--vh-menu-ease-soft),
		visibility 1.9s var(--vh-menu-ease),
		backdrop-filter 1.65s var(--vh-menu-ease),
		-webkit-backdrop-filter 1.65s var(--vh-menu-ease);
}

body.vh-menu-closing .vh-menu-drawer {
	transition:
		width 1.18s var(--vh-menu-ease),
		transform 1.72s var(--vh-menu-ease),
		clip-path 1.72s var(--vh-menu-ease),
		visibility 1.9s var(--vh-menu-ease);
}

body.vh-menu-closing .vh-drawer-head > *,
body.vh-menu-closing .vh-drawer-body > * {
	opacity: 0;
	transform: translate3d(-34px, 8px, 0);
	transition:
		opacity 1.05s var(--vh-menu-ease-soft),
		transform 1.42s var(--vh-menu-ease);
}

@media (max-width: 768px) {
	.vh-menu-drawer,
	.vh-menu-drawer.vh-menu-flyout-open {
		transition:
			width .9s var(--vh-menu-ease),
			transform 1.18s var(--vh-menu-ease),
			clip-path 1.18s var(--vh-menu-ease),
			visibility 1.18s var(--vh-menu-ease);
	}

	body.vh-menu-closing .vh-menu-drawer,
	body.vh-menu-closing .vh-menu-drawer.vh-menu-flyout-open {
		visibility: visible;
		transition:
			width .96s var(--vh-menu-ease),
			transform 1.24s var(--vh-menu-ease),
			clip-path 1.24s var(--vh-menu-ease),
			visibility 1.24s var(--vh-menu-ease);
	}

	.vh-drawer-gifts {
		transition: max-height 1.05s var(--vh-menu-ease), opacity .72s var(--vh-menu-ease-soft), visibility .72s var(--vh-menu-ease), filter .72s var(--vh-menu-ease);
	}

	.vh-menu-drawer.vh-menu-flyout-open .vh-drawer-gifts {
		transition-delay: .08s;
	}
}

body.woocommerce-shop .main-page-wrapper {
	padding-top: calc(var(--vh-admin-offset) + 64px);
	background: #fff;
}

body.single-product .main-page-wrapper {
	padding-top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 64px);
	background: #fff;
}

body.single-product .main-page-wrapper > .container,
body.single-product .wd-content-layout,
body.single-product .wd-content-area,
body.single-product .site-content {
	width: 100% !important;
	max-width: none !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.vh-product-page {
	background: #fff;
	color: #050505;
	font-family: var(--vh-font-body);
}

.vh-product-mobile-head {
	display: none;
}

.vh-product-page :is(h1, h2, h3, p, a, summary, span, strong) {
	color: inherit;
}

.vh-product-hero {
	display: grid;
	grid-template-columns: minmax(0, 58vw) minmax(360px, 1fr);
	min-height: calc(100vh - var(--vh-admin-offset) - 64px);
	border-bottom: 1px solid rgba(0, 0, 0, .12);
}

.vh-product-media {
	position: relative;
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	align-content: start;
	gap: clamp(18px, 2vw, 34px);
	background: #f3f3f3;
	padding: clamp(22px, 3.6vw, 64px);
}

.vh-product-thumb-rail {
	position: sticky;
	top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 96px);
	z-index: 5;
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-self: start;
}

.vh-product-thumb {
	position: relative;
	width: 72px;
	aspect-ratio: 1;
	overflow: hidden;
	border: 1px solid transparent;
	border-radius: 0;
	background: #fff;
	padding: 0;
	cursor: pointer;
	transition: border-color .25s var(--vh-ease), transform .25s var(--vh-ease), opacity .25s var(--vh-ease);
}

.vh-product-thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.vh-product-thumb:hover,
.vh-product-thumb.is-active {
	border-color: #050505;
	transform: translateY(-1px);
}

.vh-product-main-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(600px, 78vh, 920px);
	overflow: hidden;
	background:
		#ffffff;
}

.vh-product-main-media img {
	width: 96%;
	height: 96%;
	max-height: none;
	object-fit: contain;
	mix-blend-mode: multiply;
	transition: opacity .2s var(--vh-ease), transform .7s var(--vh-ease);
}

.vh-product-main-media.is-switching img {
	opacity: .28;
	transform: scale(.985);
}

.vh-product-media-label {
	position: absolute;
	top: clamp(18px, 2.4vw, 36px);
	left: clamp(18px, 2.4vw, 36px);
	z-index: 2;
	display: grid;
	gap: 8px;
	text-transform: uppercase;
}

.vh-product-media-label span {
	color: rgba(0, 0, 0, .46);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .2em;
}

.vh-product-media-label strong {
	font-size: clamp(18px, 2vw, 30px);
	font-weight: 800;
	letter-spacing: .12em;
}

.vh-product-image-grid {
	grid-column: 2;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(16px, 2vw, 30px);
	margin-top: clamp(18px, 2.6vw, 42px);
}

.vh-product-image-grid figure {
	position: relative;
	margin: 0;
	overflow: hidden;
	background: #fff;
	cursor: pointer;
}

.vh-product-image-grid img {
	width: 100%;
	aspect-ratio: 1 / 1.08;
	object-fit: contain;
	padding: clamp(18px, 3vw, 42px);
	mix-blend-mode: multiply;
	transition: transform .7s var(--vh-ease);
}

.vh-product-image-grid figure:hover img {
	transform: scale(1.045);
}

.vh-product-image-grid figcaption {
	position: absolute;
	right: 16px;
	bottom: 14px;
	left: 16px;
	color: rgba(0, 0, 0, .58);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;
	text-align: center;
	text-transform: uppercase;
}

.vh-product-summary {
	background: #fff;
	border-left: 1px solid rgba(0, 0, 0, .1);
}

.vh-product-summary-inner {
	position: sticky;
	top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 76px);
	max-height: calc(100vh - var(--vh-admin-offset) - var(--vh-topbar-height) - 86px);
	overflow-y: auto;
	padding: clamp(34px, 4.4vw, 74px) clamp(24px, 4.3vw, 70px);
	scrollbar-width: thin;
}

.vh-product-kicker,
.vh-product-section-head span {
	color: rgba(0, 0, 0, .52);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.vh-product-title {
	margin: 14px 0 16px;
	font-size: clamp(34px, 4vw, 68px);
	font-weight: 800;
	line-height: .96;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-product-sku {
	display: flex;
	gap: 8px;
	margin: 18px 0 0;
	color: rgba(0, 0, 0, .58);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
	line-height: 1.4;
	text-transform: uppercase;
}

.vh-product-sku span {
	color: rgba(0, 0, 0, .42);
}

.vh-product-sku strong {
	color: #111;
	font-weight: 700;
}

.vh-product-price {
	margin-bottom: 22px;
	font-size: clamp(19px, 1.5vw, 24px);
	font-weight: 700;
}

.vh-product-price :is(del, ins) {
	background: transparent;
	text-decoration-thickness: 1px;
}

.vh-product-intro {
	max-width: 560px;
	color: #555;
	font-size: 15px;
	line-height: 1.7;
}

.vh-product-option-block {
	margin-top: clamp(26px, 3vw, 44px);
	padding-top: 24px;
	border-top: 1px solid rgba(0, 0, 0, .12);
}

.vh-product-option-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 16px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-product-option-head span {
	color: rgba(0, 0, 0, .54);
}

.vh-product-swatches {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 26px;
	width: 100%;
	max-width: 100%;
	padding: 0;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
}

.vh-product-swatches::-webkit-scrollbar {
	display: none;
}

.vh-product-swatch {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	flex: 0 0 auto;
	min-width: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #050505;
	cursor: pointer;
	font: inherit;
	text-align: left;
	text-decoration: none;
	appearance: none;
	transition: transform .18s ease;
}

.vh-product-swatch::before {
	content: none;
}

.vh-product-swatch-color {
	display: block;
	width: 96px;
	height: 96px;
	border: 1px solid rgba(0, 0, 0, .12);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .18), rgba(0, 0, 0, .08)),
		var(--vh-swatch, #111);
	transition: border-color .18s ease, box-shadow .18s ease;
}

.vh-product-swatch[data-vh-swatch-style="split"] .vh-product-swatch-color {
	background: linear-gradient(135deg, var(--vh-swatch, #111) 0 50%, var(--vh-swatch-2, #111) 50% 100%);
}

.vh-product-swatch[data-vh-swatch-style="triple"] .vh-product-swatch-color {
	background: linear-gradient(135deg, var(--vh-swatch, #111) 0 33.333%, var(--vh-swatch-2, #111) 33.333% 66.666%, var(--vh-swatch-3, #111) 66.666% 100%);
}

.vh-product-swatch-name {
	min-width: 0;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .18em;
	line-height: 1.25;
	text-transform: uppercase;
}

.vh-product-swatch:hover {
	transform: translateY(-2px);
}

.vh-product-swatch:focus-visible {
	outline: 1px solid rgba(0, 0, 0, .4);
	outline-offset: 4px;
}

@media (max-width: 640px) {
	.vh-product-preorder-form {
		grid-template-columns: 1fr;
	}
}

.vh-product-model-variants {
	margin-top: 22px;
	padding-top: 22px;
	border-top: 1px solid rgba(0, 0, 0, .12);
}

.vh-product-model-variant-grid {
	display: grid;
	gap: 10px;
	max-height: 374px;
	overflow-y: auto;
	padding-right: 4px;
	scrollbar-width: thin;
}

.vh-product-model-variant {
	position: relative;
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) 18px;
	gap: 12px;
	align-items: center;
	min-height: 76px;
	padding: 10px 12px;
	border: 1px solid rgba(0, 0, 0, .1);
	background: #fbfbfb;
	color: #050505;
	text-decoration: none;
	transition: border-color .25s var(--vh-ease), background .25s var(--vh-ease), transform .25s var(--vh-ease), box-shadow .25s var(--vh-ease);
}

.vh-product-model-variant:hover,
.vh-product-model-variant.is-active {
	border-color: rgba(0, 0, 0, .55);
	background: #fff;
	box-shadow: 0 14px 34px rgba(0, 0, 0, .08);
	transform: translateY(-1px);
}

.vh-product-model-variant.is-active::before {
	content: "";
	position: absolute;
	inset: -1px auto -1px -1px;
	width: 3px;
	background: #050505;
}

.vh-product-model-variant-media {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	background: #f3f3f3;
	overflow: hidden;
}

.vh-product-model-variant-media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 5px;
	mix-blend-mode: multiply;
}

.vh-product-model-variant-copy {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.vh-product-model-variant-copy small,
.vh-product-model-variant-copy em {
	color: rgba(0, 0, 0, .55);
	font-size: 10px;
	font-weight: 800;
	font-style: normal;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.vh-product-model-variant-copy strong {
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: .08em;
	text-transform: uppercase;
	white-space: normal;
}

.vh-product-model-variant > i {
	width: 14px;
	height: 14px;
	border: 1px solid rgba(0, 0, 0, .18);
	border-radius: 50%;
	background: var(--vh-swatch, #111);
	box-shadow: 0 0 0 4px #fff;
}

.vh-product-service-strip {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1px;
	margin-top: 30px;
	background: rgba(0, 0, 0, .1);
	border: 1px solid rgba(0, 0, 0, .1);
}

.vh-product-service-strip div {
	display: grid;
	gap: 4px;
	background: #fafafa;
	padding: 16px 18px;
}

.vh-product-service-strip strong {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vh-product-service-strip span {
	color: #636363;
	font-size: 13px;
}

.vh-product-care-panel {
	display: grid;
	gap: 12px;
	margin-top: 30px;
}

.vh-product-care-main {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 12px;
}

.vh-product-care-main.is-single {
	grid-template-columns: 1fr;
}

.vh-product-care-card {
	position: relative;
	display: grid;
	align-content: end;
	gap: 10px;
	min-height: 154px;
	overflow: hidden;
	padding: 22px;
	border: 1px solid #050505;
	background: #050505;
	color: #fff;
	text-decoration: none;
	isolation: isolate;
	cursor: pointer;
	transition: transform .45s var(--vh-ease), box-shadow .45s var(--vh-ease), border-color .45s var(--vh-ease);
}

.vh-product-care-card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		radial-gradient(circle at 78% 10%, rgba(199, 166, 107, .24), transparent 34%),
		linear-gradient(135deg, rgba(255, 255, 255, .06), transparent 44%);
	opacity: .9;
	transition: transform .65s var(--vh-ease), opacity .45s var(--vh-ease);
}

.vh-product-care-card span {
	color: #c7a66b;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .2em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-product-care-card strong {
	color: #fff;
	font-size: clamp(17px, 1.45vw, 24px);
	font-weight: 850;
	letter-spacing: .11em;
	line-height: 1.08;
	text-transform: uppercase;
}

.vh-product-care-card small {
	max-width: 240px;
	color: rgba(255, 255, 255, .68);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.38;
}

.vh-product-care-card:hover {
	color: #fff;
	box-shadow: 0 18px 42px rgba(0, 0, 0, .15);
	transform: translate3d(0, -2px, 0);
}

.vh-product-care-card:focus-visible {
	outline: 2px solid #c7a66b;
	outline-offset: 3px;
}

.vh-product-care-card:hover::before {
	opacity: 1;
	transform: scale(1.04);
}

.vh-product-care-custom {
	background: linear-gradient(115deg, #080808, #282116);
}

.vh-product-care-custom::after {
	content: "V";
	position: absolute;
	top: -8px;
	right: 16px;
	z-index: -1;
	color: rgba(199, 166, 107, .16);
	font-size: 88px;
	font-weight: 900;
	line-height: 1;
}

.vh-product-care-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.vh-product-care-grid div {
	display: grid;
	align-content: start;
	gap: 9px;
	min-height: 122px;
	padding: 16px 15px;
	border: 1px solid rgba(0, 0, 0, .12);
	background: #faf9f6;
}

.vh-product-care-grid strong {
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .16em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-product-care-grid span {
	color: rgba(0, 0, 0, .58);
	font-size: 12px;
	line-height: 1.5;
}

/* Service cards icons: thin line + gold accent (approved concept 2). */
.vh-product-service-icon {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 0;
	background: transparent;
}

.vh-product-service-icon svg {
	width: 44px;
	height: 44px;
	fill: none;
	stroke: #080808;
	stroke-width: 1.2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.vh-product-service-icon svg .vh-ic-accent {
	stroke: #b88c48;
}

.vh-product-cart {
	margin-top: 30px;
	position: relative;
	transition: box-shadow .45s var(--vh-ease), background-color .45s var(--vh-ease), padding .45s var(--vh-ease);
}

.vh-product-cart.is-attention {
	padding: 12px;
	background: rgba(185, 147, 82, .08);
	box-shadow: 0 0 0 1px rgba(185, 147, 82, .28), 0 18px 42px rgba(0, 0, 0, .08);
}

.vh-product-care-order[aria-busy="true"] {
	pointer-events: none;
	opacity: .72;
}

.vh-product-preorder {
	display: grid;
	gap: 18px;
	padding: clamp(18px, 2vw, 26px);
	border: 1px solid rgba(0, 0, 0, .12);
	background: #f7f5f0;
}

.vh-product-preorder-head {
	display: grid;
	gap: 8px;
}

.vh-product-preorder-head span {
	color: #a7803c;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .24em;
	line-height: 1;
	text-transform: uppercase;
}

.vh-product-preorder-head strong {
	color: #050505;
	font-size: clamp(18px, 1.45vw, 24px);
	font-weight: 850;
	letter-spacing: .14em;
	line-height: 1.1;
	text-transform: uppercase;
}

.vh-product-preorder-head p {
	max-width: 560px;
	margin: 0;
	color: rgba(0, 0, 0, .62);
	font-size: 13px;
	line-height: 1.55;
}

.vh-product-preorder-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.vh-product-preorder-form label {
	display: grid;
	gap: 8px;
	margin: 0;
}

.vh-product-preorder-form label span {
	color: rgba(0, 0, 0, .52);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.vh-product-preorder-form input,
.vh-product-preorder-form textarea {
	width: 100%;
	border: 0;
	border-bottom: 1px solid rgba(0, 0, 0, .22);
	border-radius: 0;
	background: transparent;
	color: #050505;
	font-size: 15px;
	line-height: 1.35;
	outline: none;
	transition: border-color .28s var(--vh-ease), background-color .28s var(--vh-ease);
}

.vh-product-preorder-form input {
	min-height: 48px;
}

.vh-product-preorder-form textarea {
	min-height: 88px;
	resize: vertical;
}

.vh-product-preorder-form input:focus,
.vh-product-preorder-form textarea:focus {
	border-color: #050505;
	background: rgba(255, 255, 255, .46);
}

.vh-product-preorder-wide,
.vh-product-preorder-form button,
.vh-product-preorder-status {
	grid-column: 1 / -1;
}

.vh-product-preorder-form button {
	min-height: 54px;
	border: 1px solid #050505;
	background: #050505;
	color: #fff;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .18em;
	text-transform: uppercase;
	transition: background-color .28s var(--vh-ease), color .28s var(--vh-ease), opacity .28s var(--vh-ease);
}

.vh-product-preorder-form button:hover,
.vh-product-preorder-form button:focus {
	background: #fff;
	color: #050505;
}

.vh-product-preorder-form button:disabled {
	cursor: wait;
	opacity: .62;
}

.vh-product-preorder-status {
	display: none;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid rgba(0, 0, 0, .1);
	background: rgba(255, 255, 255, .72);
	color: rgba(0, 0, 0, .66);
	font-size: 13px;
	line-height: 1.45;
}

.vh-product-preorder-status.is-success,
.vh-product-preorder-status.is-error {
	display: block;
}

.vh-product-preorder-status.is-success {
	border-color: rgba(144, 113, 54, .32);
	background: rgba(183, 147, 80, .12);
	color: #5f4516;
}

.vh-product-preorder-status.is-error {
	border-color: rgba(178, 42, 42, .22);
	background: rgba(178, 42, 42, .08);
	color: #8d1f1f;
}

.vh-product-personalization-card {
	position: relative;
	display: grid;
	gap: 7px;
	margin-top: 18px;
	overflow: hidden;
	padding: 18px 52px 18px 18px;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .94), rgba(20, 20, 20, .94)),
		linear-gradient(135deg, #050505, #202020);
	color: #fff;
	text-decoration: none;
	isolation: isolate;
	transition: transform .6s var(--vh-ease), box-shadow .6s var(--vh-ease), background .6s var(--vh-ease);
}

.vh-product-personalization-card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: radial-gradient(circle at 85% 26%, rgba(199, 166, 107, .28), transparent 32%);
	opacity: .75;
	transition: opacity .6s var(--vh-ease), transform .8s var(--vh-ease);
}

.vh-product-personalization-card::after {
	content: "→";
	position: absolute;
	top: 50%;
	right: 18px;
	color: #fff;
	font-size: 24px;
	font-weight: 300;
	line-height: 1;
	transform: translateY(-50%);
	transition: transform .55s var(--vh-ease);
}

.vh-product-personalization-card span {
	color: #c7a66b;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .2em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-product-personalization-card strong {
	color: #fff;
	font-size: 14px;
	font-weight: 850;
	letter-spacing: .08em;
	line-height: 1.25;
	text-transform: uppercase;
}

.vh-product-personalization-card small {
	color: rgba(255, 255, 255, .62);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
}

.vh-product-personalization-card:hover {
	box-shadow: 0 18px 42px rgba(0, 0, 0, .14);
	color: #fff;
	transform: translate3d(0, -2px, 0);
}

.vh-product-personalization-card:hover::before {
	opacity: 1;
	transform: scale(1.06);
}

.vh-product-personalization-card:hover::after {
	transform: translate(5px, -50%);
}

.vh-product-personalization-card + .vh-product-cart {
	margin-top: 18px;
}

.vh-product-cart form.cart {
	display: grid;
	grid-template-columns: 112px minmax(0, 1fr);
	gap: 12px;
	align-items: stretch;
	margin: 0;
}

.vh-product-cart .quantity {
	width: 100% !important;
	margin: 0 !important;
}

.vh-product-cart .quantity input {
	width: 100% !important;
	height: 54px;
	border: 1px solid #050505;
	background: #fff;
	font-weight: 800;
}

.vh-product-cart .single_add_to_cart_button,
.vh-product-cart .button {
	width: 100%;
	min-height: 54px;
	border: 1px solid #050505 !important;
	border-radius: 0 !important;
	background: #050505 !important;
	color: #fff !important;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-product-cart .single_add_to_cart_button:hover,
.vh-product-cart .button:hover {
	background: #c7a66b !important;
	color: #fff !important;
}

.vh-product-bespoke-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 12px;
	padding: 14px 0;
	border-top: 1px solid rgba(0, 0, 0, .12);
	border-bottom: 1px solid rgba(0, 0, 0, .12);
	color: #050505;
	text-decoration: none;
	transition: color .35s var(--vh-ease), opacity .35s var(--vh-ease);
}

.vh-product-bespoke-link span {
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .16em;
	line-height: 1.25;
	text-transform: uppercase;
}

.vh-product-bespoke-link small {
	color: rgba(0, 0, 0, .52);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .02em;
	line-height: 1.35;
	text-align: right;
}

.vh-product-bespoke-link::after {
	content: "";
	display: block;
	width: 24px;
	height: 1px;
	flex: 0 0 auto;
	background: currentColor;
	transition: width .45s var(--vh-ease);
}

.vh-product-bespoke-link:hover {
	color: #000;
	opacity: .72;
}

.vh-product-bespoke-link:hover::after {
	width: 48px;
}

.vh-product-summary-note {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.vh-product-summary-note span {
	border: 1px solid rgba(0, 0, 0, .12);
	padding: 7px 10px;
	color: #555;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vh-product-accordions {
	margin-top: 28px;
	border-top: 1px solid rgba(0, 0, 0, .12);
}

.vh-product-accordions details,
.vh-product-faq-list details {
	border-bottom: 1px solid rgba(0, 0, 0, .12);
}

.vh-product-accordions summary,
.vh-product-faq-list summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 0;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
	cursor: pointer;
}

.vh-product-accordions summary::after,
.vh-product-faq-list summary::after {
	content: "+";
	font-size: 18px;
	font-weight: 500;
}

.vh-product-accordions details[open] summary::after,
.vh-product-faq-list details[open] summary::after {
	content: "-";
}

.vh-product-accordions details > div,
.vh-product-faq-list p {
	color: #5d5d5d;
	font-size: 14px;
	line-height: 1.75;
	padding-bottom: 20px;
}

.vh-product-highlights,
.vh-product-specs,
.vh-product-faq,
.vh-product-related {
	padding: clamp(70px, 8vw, 136px) clamp(22px, 5.5vw, 96px);
	border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.vh-product-info-faq {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(340px, .78fr);
	gap: clamp(26px, 3.2vw, 54px);
	padding: clamp(48px, 5.4vw, 84px) clamp(22px, 5.5vw, 96px);
	border-bottom: 1px solid rgba(0, 0, 0, .1);
	background: #fff;
}

.vh-product-info-faq .vh-product-specs,
.vh-product-info-faq .vh-product-faq {
	padding: 0;
	border-bottom: 0;
}

.vh-product-info-faq .vh-product-section-head {
	gap: 10px;
	margin-bottom: clamp(20px, 2.2vw, 30px);
}

.vh-product-info-faq .vh-product-section-head h2 {
	font-size: clamp(22px, 2.15vw, 38px);
	line-height: 1.05;
	letter-spacing: .08em;
}

.vh-product-info-faq .vh-product-spec-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.vh-product-info-faq .vh-product-spec-grid div {
	min-height: 118px;
	gap: 12px;
	padding: clamp(16px, 1.7vw, 22px);
}

.vh-product-info-faq .vh-product-spec-grid strong {
	font-size: 13px;
	line-height: 1.35;
}

.vh-product-info-faq .vh-product-faq-list {
	max-width: none;
	border-top: 1px solid rgba(0, 0, 0, .12);
}

.vh-product-info-faq .vh-product-faq-list summary {
	padding: 16px 0;
	line-height: 1.25;
}

.vh-product-info-faq .vh-product-faq-list p {
	padding-bottom: 16px;
}

.vh-product-section-head {
	display: grid;
	gap: 14px;
	max-width: 920px;
	margin-bottom: clamp(34px, 4vw, 64px);
}

.vh-product-section-head h2 {
	margin: 0;
	font-size: clamp(32px, 4vw, 72px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.vh-product-related-carousel {
	position: relative;
}

.vh-product-highlight-rail,
.vh-product-related-rail {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(280px, 34vw);
	gap: 18px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.vh-product-related-rail {
	cursor: grab;
	scroll-behavior: smooth;
	touch-action: pan-y;
	overscroll-behavior-x: contain;
}

.vh-product-related-rail.is-dragging {
	cursor: grabbing;
	scroll-snap-type: none;
	scroll-behavior: auto;
	user-select: none;
}

.vh-product-highlight-rail::-webkit-scrollbar,
.vh-product-related-rail::-webkit-scrollbar {
	display: none;
}

.vh-product-highlight-rail article {
	min-height: 300px;
	background: #101010;
	color: #fff;
	padding: clamp(24px, 3vw, 44px);
	scroll-snap-align: start;
}

.vh-product-highlight-rail span {
	color: #c7a66b;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .18em;
}

.vh-product-highlight-rail h3 {
	margin: 54px 0 18px;
	font-size: clamp(22px, 2.4vw, 38px);
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vh-product-highlight-rail p {
	color: rgba(255, 255, 255, .75);
	font-size: 14px;
	line-height: 1.7;
}

.vh-product-spec-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-top: 1px solid rgba(0, 0, 0, .12);
	border-left: 1px solid rgba(0, 0, 0, .12);
}

.vh-product-spec-grid div {
	display: grid;
	gap: 18px;
	min-height: 170px;
	border-right: 1px solid rgba(0, 0, 0, .12);
	border-bottom: 1px solid rgba(0, 0, 0, .12);
	padding: 26px;
}

.vh-product-spec-grid span {
	color: rgba(0, 0, 0, .48);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.vh-product-spec-grid strong {
	font-size: 15px;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-product-official-specs strong,
.vh-product-spec-mini strong {
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.55;
	text-transform: none;
}

.vh-product-official-specs div {
	min-height: 142px;
}

.vh-product-spec-mini {
	display: grid;
	gap: 12px;
	padding-bottom: 20px;
}

.vh-product-spec-mini div {
	display: grid;
	gap: 5px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(0, 0, 0, .09);
}

.vh-product-spec-mini div:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.vh-product-spec-mini span {
	color: rgba(0, 0, 0, .5);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-product-spec-mini strong {
	color: #1d1d1d;
	font-size: 13px;
}

.vh-product-faq-list {
	max-width: 980px;
}

.vh-product-related-rail a {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 14px;
	min-height: 340px;
	background: #f5f5f5;
	padding: 22px;
	color: #050505;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	scroll-snap-align: start;
	user-select: none;
	-webkit-user-drag: none;
	transition: background-color .35s var(--vh-ease), box-shadow .35s var(--vh-ease), transform .35s var(--vh-ease);
}

.vh-product-related-rail.is-dragging a {
	pointer-events: none;
}

.vh-product-related-rail a:hover {
	background: #fff;
	box-shadow: 0 18px 48px rgba(0, 0, 0, .12);
	transform: translateY(-2px);
}

.vh-product-related-nav {
	position: absolute;
	top: 50%;
	z-index: 9;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: 50%;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 18px 40px rgba(0, 0, 0, .14);
	color: #050505;
	font-family: Arial, sans-serif;
	font-size: 30px;
	line-height: 1;
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	transform: translate3d(0, -50%, 0) scale(.9);
	transition: opacity .28s var(--vh-ease), transform .28s var(--vh-ease), background-color .28s var(--vh-ease), color .28s var(--vh-ease);
	backdrop-filter: blur(12px) saturate(145%);
	-webkit-backdrop-filter: blur(12px) saturate(145%);
}

.vh-product-related-carousel.has-overflow .vh-product-related-nav {
	opacity: 1;
	pointer-events: auto;
	transform: translate3d(0, -50%, 0) scale(1);
}

.vh-product-related-prev {
	left: -23px;
}

.vh-product-related-next {
	right: -23px;
}

.vh-product-related-nav:hover,
.vh-product-related-nav:focus-visible {
	background: #050505;
	color: #fff;
	outline: none;
	transform: translate3d(0, -50%, 0) scale(1.05);
}

.vh-product-related-nav[disabled] {
	opacity: .28 !important;
	cursor: default;
	pointer-events: none;
	transform: translate3d(0, -50%, 0) scale(.94) !important;
}

.vh-product-related-rail img {
	width: 100%;
	height: 230px;
	object-fit: contain;
	mix-blend-mode: multiply;
	pointer-events: none;
	transition: transform .55s var(--vh-ease);
}

.vh-product-related-rail a:hover img {
	transform: scale(1.045);
}

.vh-product-related-rail strong {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
	pointer-events: none;
}

.vh-product-related-rail span {
	font-size: 13px;
	font-weight: 700;
	pointer-events: none;
}

@media (max-width: 1180px) {
	.vh-product-hero {
		grid-template-columns: 1fr;
	}

	.vh-product-summary {
		border-left: 0;
		border-top: 1px solid rgba(0, 0, 0, .1);
	}

	.vh-product-summary-inner {
		position: relative;
		top: auto;
		max-height: none;
		overflow: visible;
	}

	.vh-product-highlight-rail {
		grid-auto-flow: row;
		grid-auto-columns: initial;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		overflow: visible;
		scroll-snap-type: none;
	}

	.vh-product-highlight-rail article {
		min-height: 260px;
		scroll-snap-align: none;
	}

	.vh-product-highlight-rail h3 {
		margin-top: 34px;
		font-size: clamp(22px, 3vw, 32px);
		line-height: 1.08;
	}

	.vh-product-highlight-rail p {
		max-width: 34em;
	}

	.vh-product-related-prev {
		left: 12px;
	}

	.vh-product-related-next {
		right: 12px;
	}

	.vh-product-info-faq {
		grid-template-columns: 1fr;
	}
}

/* VERTU mobile flyout: keep product photography in full colour; selection is shown by the frame. */
.vh-mobile-flyout-grid .vh-drawer-gifts.is-flyout-switching,
.vh-mobile-flyout-grid .vh-drawer-gift img,
.vh-mobile-flyout-grid .vh-drawer-gift-img,
.vh-mobile-flyout-grid .vh-drawer-editorial-product-img img,
.vh-mobile-flyout-grid .vh-drawer-editorial-hero img {
	opacity: 1 !important;
	filter: none !important;
}

.vh-mobile-flyout-grid .vh-drawer-gift.is-active,
.vh-mobile-flyout-grid .vh-drawer-editorial-product.is-active {
	outline: 1px solid #111;
	outline-offset: -1px;
}

/* Contact card must follow the map on tablet and mobile, never sit over its content. */
@media (max-width: 1180px) {
	.vh-contact-map-stage {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 22px;
	}

	.vh-contact-floating {
		position: static;
		top: auto;
		right: auto;
		width: auto;
		max-width: none;
		margin: 0;
	}

	.vh-contact-floating img {
		height: clamp(170px, 28vw, 260px);
	}
}

@media (max-width: 760px) {
	body.single-product .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + 104px);
	}

	.vh-product-mobile-head {
		display: block;
		padding: 22px 18px 4px;
		background: #fff;
	}

	.vh-product-mobile-kicker {
		margin-bottom: 8px;
		color: #8b8b8b;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: .2em;
		line-height: 1.3;
		text-transform: uppercase;
	}

	.vh-product-mobile-title {
		max-width: 620px;
		font-size: 30px;
		font-weight: 700;
		letter-spacing: .02em;
		line-height: 1.08;
		text-transform: uppercase;
	}

	.vh-product-mobile-price {
		margin-top: 12px;
		font-size: 20px;
		font-weight: 700;
		letter-spacing: .04em;
		line-height: 1.2;
	}

	.vh-product-mobile-price :is(del, ins) {
		color: inherit;
		text-decoration: none;
	}

	.vh-product-mobile-price del {
		margin-right: 8px;
		color: #8b8b8b;
		font-size: .8em;
	}

	.vh-product-mobile-sku {
		display: flex;
		align-items: baseline;
		gap: 8px;
		margin-top: 10px;
		color: #777;
		font-size: 11px;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	.vh-product-mobile-sku strong {
		color: #111;
		font-weight: 700;
	}

	.vh-product-media {
		grid-template-columns: 1fr;
		padding: 18px;
	}

	.vh-product-summary-inner {
		display: flex;
		flex-direction: column;
		position: relative;
		top: auto;
		max-height: none;
		overflow: visible;
		padding: 22px 18px 34px;
	}

	.vh-product-summary-inner > :is(.vh-product-kicker, .vh-product-title, .vh-product-price, .vh-product-sku) {
		display: none !important;
	}

	.vh-product-intro {
		order: 1;
		max-width: none;
		margin: 0;
		font-size: 14px;
		line-height: 1.55;
	}

	.vh-product-cart {
		order: 2;
		margin-top: 18px;
	}

	.vh-product-option-block {
		order: 3;
		margin-top: 26px;
		padding-top: 20px;
	}

	.vh-product-care-panel {
		order: 4;
	}

	.vh-product-summary-note {
		order: 5;
	}

	.vh-product-accordions {
		order: 6;
	}

	.vh-product-swatches {
		display: flex;
		grid-template-columns: none;
		gap: 10px;
		overflow-x: auto;
		padding-bottom: 5px;
		scroll-snap-type: x proximity;
	}

	.vh-product-swatch {
		flex: 0 0 178px;
		grid-template-columns: 54px minmax(0, 1fr);
		gap: 12px;
		min-height: 82px;
		padding: 12px 10px;
		scroll-snap-align: start;
	}

	.vh-product-swatch-color {
		width: 54px;
		height: 54px;
	}

	.vh-product-swatch-name {
		font-size: 11px;
		line-height: 1.25;
	}

	.vh-product-thumb-rail {
		position: relative;
		top: auto;
		order: 2;
		flex-direction: row;
		overflow-x: auto;
	}

	.vh-product-main-media {
		min-height: 420px;
	}

	.vh-product-image-grid {
		grid-column: 1;
		grid-template-columns: 1fr;
	}

	.vh-product-care-main,
	.vh-product-care-grid {
		grid-template-columns: 1fr;
	}

	.vh-product-care-card {
		min-height: 132px;
	}

	.vh-product-cart form.cart {
		grid-template-columns: 1fr;
	}

	.vh-product-spec-grid {
		grid-template-columns: 1fr;
	}

	.vh-product-info-faq {
		padding: 44px 18px;
		gap: 34px;
	}

	.vh-product-info-faq .vh-product-spec-grid {
		grid-template-columns: 1fr;
	}

	.vh-product-highlight-rail,
	.vh-product-related-rail {
		grid-auto-flow: column;
		grid-auto-columns: minmax(260px, 84vw);
		grid-template-columns: none;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	.vh-product-highlight-rail article,
	.vh-product-related-rail a {
		scroll-snap-align: start;
	}
}

body.woocommerce-shop .main-page-wrapper > .container,
body.woocommerce-shop .wd-content-layout,
body.woocommerce-shop .wd-content-area,
body.woocommerce-shop .site-content {
	width: 100% !important;
	max-width: none !important;
	padding-top: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

body.woocommerce-shop .main-page-wrapper,
body.post-type-archive-product.woocommerce-shop .main-page-wrapper,
body.woocommerce-shop .wd-page-content,
body.woocommerce-shop .site-content {
	margin-top: 0 !important;
	padding-top: 0 !important;
	background: #fff;
}

body.woocommerce-shop :is(.woocommerce-products-header, .wd-shop-title, .shop-loop-head, .wd-shop-loop-head, .woocommerce-result-count, .woocommerce-ordering, .wd-products-per-page, .wd-shop-tools, .wd-active-filters, .wd-loop-footer, nav.woocommerce-pagination) {
	display: none !important;
}

body.woocommerce-shop .main-page-wrapper .products,
body.woocommerce-shop .main-page-wrapper .wd-products {
	display: none !important;
}

body.woocommerce-shop .vh-shop-elementor-shell .products,
body.woocommerce-shop .vh-shop-elementor-shell .wd-products {
	display: initial !important;
}

.vh-shop-elementor-shell {
	width: 100%;
	background: #fff;
	color: #080808;
}

.vh-shop-page {
	overflow: clip;
	background: #fff;
	font-family: var(--vh-font-body);
}

body.woocommerce-shop .elementor-element.vh-shop-page {
	display: none !important;
}

body.woocommerce-shop .vh-shop-elementor-shell > .vh-shop-page {
	display: block !important;
}

body.woocommerce-shop .vh-shop-page .wd-negative-gap {
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.vh-shop-page :is(h1, h2, h3, h4, p, a) {
	color: inherit;
}

.vh-shop-page a {
	text-decoration: none;
}

.vh-shop-empty {
	display: grid;
	min-height: 360px;
	place-items: center;
	padding: 120px 24px;
	text-align: center;
}

.vh-shop-empty p {
	max-width: 520px;
	margin: 0;
	color: #333;
	font-size: 16px;
	line-height: 1.7;
}

.vh-shop-hero {
	position: relative;
	min-height: clamp(460px, 56vw, 760px);
	overflow: hidden;
	background: #050505;
	color: #fff;
}

.vh-shop-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .64), rgba(0, 0, 0, .12) 48%, rgba(0, 0, 0, .54)),
		linear-gradient(180deg, rgba(0, 0, 0, .18), rgba(0, 0, 0, .68));
	pointer-events: none;
}

.vh-shop-hero > .elementor-widget-image,
.vh-shop-hero > .e-con-inner > .elementor-widget-image {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.vh-shop-hero img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(.94) contrast(1.04);
}

.vh-shop-hero-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: inherit;
	max-width: 720px;
	padding: clamp(42px, 6vw, 92px);
}

.vh-shop-eyebrow .elementor-widget-container,
.vh-shop-series-kicker .elementor-widget-container,
.vh-shop-benefit-kicker .elementor-widget-container {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.vh-shop-hero h1,
.vh-shop-hero .elementor-heading-title {
	margin: 0;
	font-size: clamp(48px, 8vw, 122px);
	font-weight: 800;
	line-height: .92;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-shop-hero .elementor-widget-text-editor {
	max-width: 530px;
	font-size: clamp(15px, 1.15vw, 18px);
	line-height: 1.6;
}

.vh-shop-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 26px;
}

.vh-shop-hero-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	border: 1px solid rgba(255, 255, 255, .82);
	background: rgba(255, 255, 255, .1);
	color: #fff;
	padding: 0 22px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	transition: background-color .25s var(--vh-ease), color .25s var(--vh-ease), transform .25s var(--vh-ease);
}

.vh-shop-hero-actions a:hover {
	background: #fff;
	color: #050505;
	transform: translateY(-1px);
}

.vh-shop-series-nav {
	position: sticky;
	top: calc(var(--vh-admin-offset) + 64px);
	z-index: 60;
	border-top: 1px solid rgba(0, 0, 0, .08);
	border-bottom: 1px solid rgba(0, 0, 0, .1);
	background: rgba(255, 255, 255, .9);
	backdrop-filter: blur(18px) saturate(150%);
	-webkit-backdrop-filter: blur(18px) saturate(150%);
}

body.vh-scrolled .vh-shop-series-nav {
	top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 64px);
}

.vh-shop-series-nav .elementor-widget-container,
.vh-shop-series-nav .elementor-widget-html {
	display: flex;
	align-items: center;
	gap: clamp(18px, 3vw, 48px);
	width: 100%;
	overflow-x: auto;
	padding: 16px clamp(18px, 5vw, 84px);
	scrollbar-width: none;
	white-space: nowrap;
}

.vh-shop-series-nav .elementor-widget-container::-webkit-scrollbar,
.vh-shop-series-nav .elementor-widget-html::-webkit-scrollbar {
	display: none;
}

.vh-shop-series-nav a {
	color: #090909;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
	opacity: .72;
	transition: opacity .25s var(--vh-ease), transform .25s var(--vh-ease);
}

.vh-shop-series-nav a:hover {
	opacity: 1;
	transform: translateY(-1px);
}

.vh-shop-intro {
	padding: clamp(70px, 7vw, 120px) clamp(18px, 5vw, 84px);
}

.vh-shop-intro-head {
	max-width: 920px;
	margin: 0 auto clamp(42px, 4vw, 70px);
	text-align: center;
}

.vh-shop-intro-head .elementor-heading-title {
	font-size: clamp(28px, 3.2vw, 52px);
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vh-shop-intro-head .elementor-widget-text-editor {
	color: #525252;
	font-size: 15px;
	line-height: 1.75;
}

.vh-shop-category-slider {
	position: relative;
	padding-bottom: 46px;
}

.vh-shop-intro-grid > .e-con-inner {
	display: grid !important;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - (var(--vh-shop-card-gap) * 3)) / 4);
	grid-template-columns: none;
	align-items: stretch;
	--vh-shop-card-gap: clamp(12px, 1.2vw, 18px);
	gap: var(--vh-shop-card-gap);
	width: 100% !important;
	max-width: none !important;
	overflow-x: auto;
	overflow-y: visible;
	padding: 0 0 30px;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.vh-shop-intro-grid > .e-con-inner::-webkit-scrollbar {
	display: none;
}

.vh-shop-intro-card {
	--width: auto;
	--content-width: 100%;
	position: relative;
	width: 100% !important;
	max-width: none !important;
	aspect-ratio: 1 / 1.16;
	overflow: hidden;
	min-height: clamp(360px, 32vw, 520px);
	background: #050505;
	color: #fff;
	scroll-snap-align: start;
	transition: transform .55s var(--vh-ease), box-shadow .55s var(--vh-ease);
}

.vh-shop-intro-card:nth-child(even) {
	margin-top: 0;
}

.vh-shop-intro-card:nth-child(3n) {
	width: 100% !important;
}

.vh-shop-intro-card:nth-child(4n) {
	min-height: clamp(360px, 32vw, 520px);
}

.vh-shop-intro-card > .e-con-inner {
	position: relative;
	z-index: 1;
	min-height: inherit;
	width: 100%;
	max-width: none;
}

.vh-shop-intro-card .elementor-widget-image {
	position: absolute;
	inset: 0;
}

.vh-shop-intro-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	opacity: .88;
	/* filter убран из transition: смена фильтра на большой картинке
	   заставляет Chrome перекрашивать слой — визуально баннер «моргает». */
	transition: transform 1s var(--vh-ease), opacity .4s var(--vh-ease);
	will-change: transform, opacity;
}

.vh-shop-intro-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 28px 70px rgba(0, 0, 0, .22);
}

.vh-shop-intro-card:hover img {
	opacity: 1;
	transform: scale(1.07);
}

.vh-shop-intro-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, .1), rgba(0, 0, 0, .64));
}

.vh-shop-intro-card-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: inherit;
	padding: clamp(24px, 3vw, 42px);
}

.vh-shop-intro-card .elementor-heading-title {
	color: #fff !important;
	font-size: clamp(21px, 2vw, 34px);
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vh-shop-intro-card small {
	display: block;
	margin-bottom: 10px;
	color: rgba(255, 255, 255, .78);
}

.vh-shop-intro-link .elementor-button {
	margin-top: 18px;
	padding: 0 0 5px;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .82);
	border-radius: 0;
	background: transparent;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	transition: border-color .28s var(--vh-ease), opacity .28s var(--vh-ease), transform .28s var(--vh-ease);
}

.vh-shop-intro-link .elementor-button:hover {
	background: transparent;
	color: #fff;
	opacity: .7;
	transform: translateY(-1px);
}

.vh-shop-slider-controls {
	position: absolute;
	right: clamp(18px, 5vw, 84px);
	bottom: 0;
	left: clamp(18px, 5vw, 84px);
	display: grid;
	grid-template-columns: 1fr auto auto;
	align-items: center;
	gap: 12px;
	pointer-events: none;
}

.vh-shop-slider-progress {
	position: relative;
	height: 1px;
	overflow: hidden;
	background: rgba(0, 0, 0, .16);
}

.vh-shop-slider-progress span {
	position: absolute;
	inset: 0 auto 0 0;
	width: var(--vh-shop-slider-progress, 18%);
	background: #050505;
	transition: width .25s var(--vh-ease);
}

.vh-shop-slider-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(0, 0, 0, .18);
	border-radius: 50%;
	background: #fff;
	color: #050505;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	pointer-events: auto;
	transition: color .25s var(--vh-ease), background-color .25s var(--vh-ease), border-color .25s var(--vh-ease), transform .25s var(--vh-ease);
}

.vh-shop-slider-btn:hover {
	border-color: #050505;
	background: #050505;
	color: #fff;
	transform: translateY(-1px);
}

.vh-shop-slider-btn:disabled {
	opacity: .34;
	cursor: default;
	transform: none;
}

.vh-shop-benefits {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	counter-reset: vh-benefit;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .12), transparent 28%, rgba(0, 0, 0, .1)),
		#ececec;
	padding: 1px 0;
}

.vh-shop-benefit {
	position: relative;
	counter-increment: vh-benefit;
	min-height: 230px;
	overflow: hidden;
	border-right: 1px solid rgba(0, 0, 0, .1);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .95), rgba(246, 246, 246, .92)),
		#f8f8f8;
	padding: clamp(24px, 2.6vw, 42px);
	transition: background-color .35s var(--vh-ease), color .35s var(--vh-ease), transform .35s var(--vh-ease);
}

.vh-shop-benefit::before {
	content: "0" counter(vh-benefit);
	position: absolute;
	right: clamp(18px, 2vw, 30px);
	bottom: clamp(12px, 1.4vw, 22px);
	color: rgba(0, 0, 0, .08);
	font-size: clamp(58px, 6vw, 104px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: .04em;
}

.vh-shop-benefit::after {
	content: "";
	position: absolute;
	top: 0;
	left: clamp(24px, 2.6vw, 42px);
	width: 54px;
	height: 3px;
	background: #050505;
	transform: scaleX(.38);
	transform-origin: left;
	transition: transform .35s var(--vh-ease);
}

.vh-shop-benefit:hover {
	z-index: 2;
	background: #1f1f1f;
	color: #fff;
	transform: translateY(-10px);
}

.vh-shop-benefit:hover::before {
	color: rgba(255, 255, 255, .08);
}

.vh-shop-benefit:hover::after {
	background: #c7a66b;
	transform: scaleX(1);
}

.vh-shop-benefit .elementor-heading-title {
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.vh-shop-benefit .elementor-widget-text-editor {
	color: #555;
	font-size: 13px;
	line-height: 1.65;
}

.vh-shop-benefit:hover .elementor-widget-text-editor {
	color: rgba(255, 255, 255, .76);
}

.vh-shop-series {
	display: grid !important;
	grid-template-columns: minmax(320px, 36vw) minmax(0, 1fr);
	min-height: clamp(620px, 72vw, 980px);
	border-top: 1px solid rgba(0, 0, 0, .1);
	background: #fff;
}

.vh-shop-series > .e-con-inner {
	display: grid !important;
	grid-column: 1 / -1;
	grid-template-columns: minmax(320px, 36vw) minmax(0, 1fr);
	width: 100%;
	max-width: none;
}

.vh-shop-series-right > .e-con-inner {
	grid-template-columns: minmax(0, 1fr) minmax(320px, 36vw);
}

.vh-shop-series-right .vh-shop-series-media {
	order: 2;
}

.vh-shop-series-right .vh-shop-series-products {
	order: 1;
}

.vh-shop-series-center {
	min-height: auto;
}

.vh-shop-series-center > .e-con-inner {
	grid-template-columns: 1fr;
}

.vh-shop-series-center .vh-shop-series-media {
	position: relative;
	top: auto;
	min-height: clamp(460px, 48vw, 680px);
}

.vh-shop-series-center .vh-shop-series-copy {
	align-items: center;
	max-width: 920px;
	margin-inline: auto;
	text-align: center;
}

.vh-shop-series-center .vh-shop-series-copy .elementor-widget-text-editor {
	max-width: 620px;
}

.vh-shop-series-center .vh-shop-series-products > .e-con-inner {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.vh-shop-series-media {
	position: sticky;
	top: calc(var(--vh-admin-offset) + 126px);
	align-self: start;
	min-height: clamp(560px, 70vh, 820px);
	overflow: hidden;
	background: #050505;
	color: #fff;
}

.vh-shop-series-media .elementor-widget-image {
	position: absolute;
	inset: 0;
}

.vh-shop-series-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .84;
	transition: transform 1s var(--vh-ease), opacity .45s var(--vh-ease), filter .45s var(--vh-ease);
}

.vh-shop-series:hover .vh-shop-series-media img {
	opacity: .96;
	filter: saturate(1.05) contrast(1.05);
	transform: scale(1.045);
}

.vh-shop-series-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .72));
}

.vh-shop-series-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: inherit;
	padding: clamp(28px, 4vw, 64px);
}

.vh-shop-series-copy .elementor-heading-title {
	font-size: clamp(34px, 4.2vw, 74px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vh-shop-series-copy .elementor-widget-text-editor {
	max-width: 460px;
	font-size: 14px;
	line-height: 1.75;
}

.vh-shop-series-link {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin-top: 22px;
	border-bottom: 2px solid currentColor;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.9;
	text-transform: uppercase;
	transition: opacity .25s var(--vh-ease), transform .25s var(--vh-ease);
}

.vh-shop-series-link:hover {
	color: #fff;
	opacity: .74;
	transform: translateX(4px);
}

.vh-shop-series-products {
	--width: 100%;
	--content-width: 100%;
	justify-self: stretch;
	align-self: stretch;
	width: 100% !important;
	min-width: 0;
	max-width: none !important;
	padding: clamp(48px, 5vw, 86px);
}

.vh-shop-series-products > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-content: start;
	gap: clamp(28px, 3vw, 50px) clamp(18px, 2vw, 34px);
	width: 100% !important;
	min-width: 0;
	max-width: none !important;
}

.vh-shop-product-card {
	--width: 100%;
	--content-width: 100%;
	width: 100% !important;
	min-width: 0;
	max-width: none !important;
	color: #090909;
	text-align: center;
}

.vh-shop-product-card > .e-con-inner {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100% !important;
	min-width: 0;
	max-width: none !important;
	padding: 0 !important;
}

.vh-shop-product-card .elementor-widget-image,
.vh-shop-product-card .elementor-widget-heading,
.vh-shop-product-card .elementor-widget-text-editor,
.vh-shop-product-card .elementor-widget-button {
	position: relative;
	width: 100%;
	max-width: none;
}

.vh-shop-product-card .elementor-widget-image {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: #fff;
	aspect-ratio: 1 / 1.05;
}

.vh-shop-product-card .elementor-widget-heading,
.vh-shop-product-card .elementor-widget-text-editor,
.vh-shop-product-card .elementor-widget-button,
.vh-shop-product-card .vh-loop-swatches {
	z-index: 3;
}

.vh-shop-product-card img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform .7s var(--vh-ease);
}

.vh-shop-product-card:hover img {
	transform: scale(1.045);
}

.vh-shop-gallery-ready img {
	transition: opacity .18s var(--vh-ease), transform .7s var(--vh-ease);
}

.vh-shop-gallery-ready.is-switching img {
	opacity: .28;
}

.vh-shop-gallery-arrow {
	position: absolute;
	top: 50%;
	z-index: 4;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(0, 0, 0, .1);
	border-radius: 50%;
	background: rgba(255, 255, 255, .88);
	box-shadow: 0 14px 34px rgba(0, 0, 0, .12);
	color: #050505;
	font-family: Arial, sans-serif;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	opacity: 0;
	transform: translate3d(0, -50%, 0) scale(.86);
	transition: opacity .28s var(--vh-ease), transform .28s var(--vh-ease), background-color .28s var(--vh-ease), color .28s var(--vh-ease);
	backdrop-filter: blur(12px) saturate(145%);
	-webkit-backdrop-filter: blur(12px) saturate(145%);
}

.vh-shop-gallery-prev {
	left: 14px;
}

.vh-shop-gallery-next {
	right: 14px;
}

.vh-shop-gallery-ready:hover .vh-shop-gallery-arrow,
.vh-shop-gallery-ready:focus-within .vh-shop-gallery-arrow {
	opacity: 1;
	transform: translate3d(0, -50%, 0) scale(1);
}

.vh-shop-gallery-arrow:hover {
	background: #050505;
	color: #fff;
	transform: translate3d(0, -50%, 0) scale(1.05);
}

.vh-loop-variant-ready {
	position: relative;
}

.vh-loop-variant-arrow {
	position: absolute;
	top: 50%;
	z-index: 7;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(0, 0, 0, .1);
	border-radius: 50%;
	background: rgba(255, 255, 255, .9);
	box-shadow: 0 14px 34px rgba(0, 0, 0, .12);
	color: #050505;
	font-family: Arial, sans-serif;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	opacity: 0;
	transform: translate3d(0, -50%, 0) scale(.86);
	transition: opacity .28s var(--vh-ease), transform .28s var(--vh-ease), background-color .28s var(--vh-ease), color .28s var(--vh-ease);
	backdrop-filter: blur(12px) saturate(145%);
	-webkit-backdrop-filter: blur(12px) saturate(145%);
}

.vh-loop-variant-prev {
	left: 14px;
}

.vh-loop-variant-next {
	right: 14px;
}

.vh-loop-variant-ready:hover .vh-loop-variant-arrow,
.vh-loop-variant-ready:focus-within .vh-loop-variant-arrow {
	opacity: 1;
	transform: translate3d(0, -50%, 0) scale(1);
}

.vh-loop-variant-arrow:hover,
.vh-loop-variant-arrow:focus-visible {
	background: #050505;
	color: #fff;
	outline: none;
	transform: translate3d(0, -50%, 0) scale(1.05);
}

.vh-loop-swatches {
	position: relative;
	z-index: 8;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 7px;
	width: 100%;
	max-width: 100%;
	min-height: 34px;
	overflow: visible;
	margin: 10px auto 4px;
	padding: 3px 4px 8px;
	scrollbar-width: none;
	pointer-events: auto;
	touch-action: manipulation;
	transition: max-height .38s var(--vh-ease), padding-bottom .28s var(--vh-ease);
}

.vh-loop-swatches::-webkit-scrollbar {
	display: none;
}

.vh-loop-swatches.is-many {
	max-height: 84px;
	justify-content: center;
}

.vh-loop-swatches.is-expanded {
	max-height: 220px;
	padding-bottom: 10px;
	overflow: visible;
}

.vh-loop-swatches:not(.is-expanded) .vh-loop-swatch.is-extra {
	display: none;
}

.vh-loop-swatch {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 1 auto;
	width: 38px;
	min-width: 38px;
	min-height: 34px;
	border: 1px solid rgba(0, 0, 0, .13);
	border-radius: 999px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 7px 20px rgba(0, 0, 0, .05);
	padding: 0;
	color: #111;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .11em;
	line-height: 1;
	text-transform: uppercase;
	cursor: pointer;
	pointer-events: auto;
	touch-action: manipulation;
	appearance: none;
	transition: border-color .24s var(--vh-ease), background-color .24s var(--vh-ease), box-shadow .24s var(--vh-ease), transform .24s var(--vh-ease);
}

.vh-loop-swatches-more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 38px;
	height: 34px;
	border: 1px solid rgba(0, 0, 0, .16);
	border-radius: 999px;
	background: rgba(255, 255, 255, .86);
	color: #111;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .06);
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
	pointer-events: auto;
	transition: border-color .24s var(--vh-ease), background-color .24s var(--vh-ease), color .24s var(--vh-ease), transform .24s var(--vh-ease);
}

.vh-loop-swatches-more:hover,
.vh-loop-swatches-more:focus-visible {
	border-color: #050505;
	background: #050505;
	color: #fff;
	outline: none;
	transform: translateY(-1px);
}

.vh-loop-swatches.is-expanded .vh-loop-swatches-more {
	min-width: 34px;
	border-radius: 999px;
}

.vh-loop-swatch span {
	display: block;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	border: 1px solid rgba(0, 0, 0, .22);
	border-radius: 50%;
	background: var(--vh-swatch-color, #111);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .22);
	transition: transform .24s var(--vh-ease), box-shadow .24s var(--vh-ease), border-color .24s var(--vh-ease);
}

.vh-loop-swatch em {
	position: absolute;
	bottom: calc(100% + 9px);
	left: 50%;
	z-index: 30;
	display: block;
	max-width: min(190px, 56vw);
	overflow: hidden;
	padding: 8px 10px;
	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: 999px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 16px 36px rgba(0, 0, 0, .13);
	color: #080808;
	font-style: normal;
	text-overflow: ellipsis;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transform: translate3d(-50%, 6px, 0);
	transition: opacity .24s var(--vh-ease), transform .24s var(--vh-ease), visibility .24s var(--vh-ease);
	visibility: hidden;
}

.vh-loop-swatch:hover em,
.vh-loop-swatch:focus-visible em {
	opacity: 1;
	transform: translate3d(-50%, 0, 0);
	visibility: visible;
}

.vh-loop-swatch:hover,
.vh-loop-swatch:focus-visible {
	border-color: rgba(0, 0, 0, .42);
	background: #fff;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .1);
	outline: none;
	transform: translateY(-1px);
}

.vh-loop-swatch:hover span,
.vh-loop-swatch:focus-visible span {
	border-color: rgba(0, 0, 0, .48);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .36), 0 6px 16px rgba(0, 0, 0, .12);
	transform: scale(1.12);
}

.vh-loop-swatch.is-active::after {
	content: "";
	position: absolute;
	inset: -1px;
	border: 1px solid #050505;
	border-radius: inherit;
	pointer-events: none;
}

.vh-loop-swatch.is-active span {
	border-color: rgba(0, 0, 0, .54);
}

.wd-product .vh-loop-swatches {
	margin-top: 8px;
	margin-bottom: 8px;
}

.vh-product-showcase .wd-product .vh-loop-swatches {
	max-width: min(100%, 280px);
	margin-top: 10px;
	margin-bottom: 7px;
}

.wd-product .product-element-top,
.wd-product .product-element-top.vh-shop-gallery-ready {
	position: relative;
	overflow: hidden;
	background: #fff !important;
}

.wd-product .product-element-top::before,
.wd-product .product-element-top::after,
.wd-product .product-element-top.vh-shop-gallery-ready::before,
.wd-product .product-element-top.vh-shop-gallery-ready::after,
.vh-shop-product-card .elementor-widget-image::before,
.vh-shop-product-card .elementor-widget-image::after {
	display: none !important;
	content: none !important;
}

.vh-shop-product-card[data-vh-card-clickable="true"],
.wd-product[data-vh-card-clickable="true"] {
	cursor: pointer;
}

.vh-loop-swipe-ready {
	cursor: grab;
	touch-action: pan-y;
	user-select: none;
}

.vh-loop-swipe-ready:active {
	cursor: grabbing;
}

.vh-loop-swipe-ready img {
	user-select: none;
	-webkit-user-drag: none;
}

.vh-loop-swatches,
.vh-loop-swatches *,
.vh-shop-gallery-arrow,
.vh-loop-variant-arrow {
	cursor: auto;
}

.vh-loop-swatch,
.vh-loop-swatches-more,
.vh-loop-variant-arrow {
	cursor: pointer;
}

.vh-price-request {
	color: #111;
	font-weight: 700;
	letter-spacing: .02em;
}

.vh-native-stock-hidden {
	display: none !important;
}

.vh-loop-stock-badge {
	position: absolute;
	top: 18px;
	right: 18px;
	z-index: 9;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 34px;
	padding: 0 13px;
	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: 999px;
	background: rgba(255, 255, 255, .9);
	box-shadow: 0 10px 28px rgba(0, 0, 0, .1);
	color: #080808;
	text-align: center;
	text-decoration: none;
	backdrop-filter: blur(10px) saturate(145%);
	-webkit-backdrop-filter: blur(10px) saturate(145%);
	transition: transform .28s var(--vh-ease), box-shadow .28s var(--vh-ease), background-color .28s var(--vh-ease);
}

.vh-loop-stock-badge::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #b51f24;
        box-shadow: 0 0 0 3px rgba(181, 31, 36, .08);
}

.vh-loop-stock-badge.is-in-stock::before {
        background: #1f8c58;
        box-shadow: 0 0 0 3px rgba(31, 140, 88, .1);
}

.vh-loop-stock-badge.is-preorder::before {
        background: #b51f24;
        box-shadow: 0 0 0 3px rgba(181, 31, 36, .08);
}

.vh-loop-stock-badge strong {
        color: inherit;
        font-size: 10px;
        font-weight: 900;
        letter-spacing: .16em;
	line-height: 1.15;
	text-transform: uppercase;
}

.vh-loop-stock-badge:hover,
.vh-loop-stock-badge:focus-visible {
	background: #fff;
	box-shadow: 0 16px 38px rgba(0, 0, 0, .14);
	color: #080808;
	outline: none;
	transform: translateY(-2px);
}

.vh-shop-product-card .elementor-heading-title {
	margin-top: 18px;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .08em;
	line-height: 1.35;
	text-transform: uppercase;
}

.vh-shop-product-card .elementor-heading-title,
.vh-shop-product-card .elementor-heading-title a {
	color: #090909;
}

.vh-shop-product-card .elementor-heading-title a:hover {
	color: #666;
}

.vh-shop-product-sku {
	margin-top: 6px;
	color: rgba(9, 9, 9, .58);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .08em;
	line-height: 1.35;
	text-transform: uppercase;
}

.vh-shop-product-price .elementor-widget-container {
	margin-top: 8px;
	color: #333;
	font-size: 13px;
	font-weight: 600;
}

.vh-shop-product-link .elementor-button {
	margin-top: 14px;
	padding: 0 0 5px;
	border: 0;
	border-bottom: 1px solid currentColor;
	border-radius: 0;
	background: transparent;
	color: #090909;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	transition: border-color .28s var(--vh-ease), opacity .28s var(--vh-ease), transform .28s var(--vh-ease);
}

.vh-shop-product-link .elementor-button:hover {
	background: transparent;
	color: #090909;
	opacity: .64;
	transform: translateY(-1px);
}

@media (max-width: 1024px) {
	.vh-shop-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vh-shop-intro-grid > .e-con-inner {
		grid-auto-columns: calc((100% - var(--vh-shop-card-gap)) / 2);
	}

	.vh-shop-intro-card {
		width: 100% !important;
		min-height: clamp(340px, 48vw, 480px);
	}

	.vh-shop-intro-card:nth-child(even) {
		margin-top: 0;
	}

	.vh-shop-series,
	.vh-shop-series > .e-con-inner {
		grid-template-columns: 1fr;
	}

	.vh-shop-series-right .vh-shop-series-media,
	.vh-shop-series-right .vh-shop-series-products {
		order: initial;
	}

	.vh-shop-series-media {
		position: relative;
		top: auto;
		min-height: 540px;
	}

	.vh-shop-series-products {
		padding: 36px 22px 60px;
	}

	.vh-shop-series-products > .e-con-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vh-shop-series-center .vh-shop-series-products > .e-con-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	body.woocommerce-shop .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + 64px);
	}

	.vh-shop-hero-copy,
	.vh-shop-intro,
	.vh-shop-series-copy {
		padding-inline: 20px;
	}

	.vh-shop-benefits,
	.vh-shop-series-products > .e-con-inner {
		grid-template-columns: 1fr;
	}

	.vh-shop-intro-grid > .e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		overflow-x: auto;
		overflow-y: visible;
		padding-bottom: 24px;
		scroll-padding-inline: 20px;
		scroll-snap-type: x mandatory;
	}

	.vh-shop-intro-card {
		flex: 0 0 min(84vw, 360px) !important;
		flex-basis: min(84vw, 360px) !important;
		width: min(84vw, 360px) !important;
		aspect-ratio: 1 / 1.12;
		min-height: 360px;
		scroll-snap-align: start;
	}

	.vh-shop-gallery-arrow,
	.vh-loop-variant-arrow {
		width: 38px;
		height: 38px;
		opacity: .9;
		transform: translate3d(0, -50%, 0) scale(1);
	}

	.vh-shop-intro-card:nth-child(even) {
		margin-top: 0;
	}

	.vh-shop-slider-controls {
		right: 20px;
		left: 20px;
	}

	.vh-shop-benefit {
		min-height: 190px;
	}

	.vh-shop-series-center .vh-shop-series-products > .e-con-inner {
		grid-template-columns: 1fr;
	}
}

.vh-quick-contact {
	position: fixed;
	right: max(22px, env(safe-area-inset-right));
	bottom: calc(94px + env(safe-area-inset-bottom));
	z-index: 390;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	transition: opacity .45s var(--vh-menu-ease), transform .55s var(--vh-menu-ease), visibility .45s var(--vh-menu-ease);
}

body.vh-menu-open .vh-quick-contact,
body.elementor-editor-active .vh-quick-contact {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate3d(10px, 0, 0);
}

.vh-quick-contact-toggle,
.vh-quick-contact-links a {
	width: 54px;
	height: 54px;
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 50%;
	color: #f8f2e6;
	background:
		radial-gradient(circle at 50% 18%, rgba(255, 255, 255, .12), transparent 28%),
		linear-gradient(145deg, #151515 0%, #030303 54%, #101010 100%);
	box-shadow: 0 18px 34px rgba(0, 0, 0, .32), inset 0 0 0 1px rgba(255, 255, 255, .065);
	text-decoration: none;
}

.vh-quick-contact-toggle {
	position: relative;
	isolation: isolate;
	padding: 0;
	min-height: 54px;
	overflow: hidden;
	font-family: "Arial Black", "Manrope", var(--wd-title-font, Arial, sans-serif);
	font-size: 22px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	text-indent: 0;
	animation: vh-contact-breath 3.6s var(--vh-menu-ease-soft) infinite;
}

.vh-quick-contact-toggle:hover,
.vh-quick-contact-toggle:focus,
.vh-quick-contact-toggle:active {
	color: #fff7e8;
	border-color: rgba(218, 181, 119, .34);
	background:
		radial-gradient(circle at 50% 17%, rgba(255, 255, 255, .14), transparent 29%),
		linear-gradient(145deg, #1a1a1a 0%, #000 58%, #111 100%);
	box-shadow: 0 22px 42px rgba(0, 0, 0, .38), 0 0 0 1px rgba(218, 181, 119, .13), inset 0 0 0 1px rgba(255, 255, 255, .095);
}

.vh-quick-contact-toggle::before,
.vh-quick-contact-toggle::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
}

.vh-quick-contact-toggle::before {
	z-index: -1;
	border: 1px solid rgba(218, 181, 119, .36);
	animation: vh-contact-halo 3.6s var(--vh-menu-ease) infinite;
}

.vh-quick-contact-toggle::after {
	background: linear-gradient(115deg, transparent 24%, rgba(255, 255, 255, .5) 45%, transparent 58%);
	opacity: 0;
	transform: translate3d(-90%, 0, 0);
	animation: vh-contact-glint 4.8s var(--vh-menu-ease) infinite;
}

.vh-quick-contact-toggle span {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	transform: scaleX(1.34);
	transform-origin: center;
	text-shadow: 0 0 16px rgba(255, 232, 190, .28);
}

.vh-quick-contact-links {
	display: flex;
	flex-direction: column;
	gap: 10px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate3d(0, 18px, 0) scale(.94);
	transition: opacity .55s var(--vh-menu-ease-soft), visibility .55s var(--vh-menu-ease), transform .72s var(--vh-menu-ease);
}

.vh-quick-contact.is-open .vh-quick-contact-links {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate3d(0, 0, 0) scale(1);
}

.vh-quick-contact-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transform: translate3d(0, 14px, 0) scale(.88);
	transition: opacity .55s var(--vh-menu-ease-soft), transform .75s var(--vh-menu-ease), color .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.vh-quick-contact.is-open .vh-quick-contact-links a {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
}

.vh-quick-contact.is-open .vh-quick-contact-links a:nth-child(1) {
	transition-delay: .04s;
}

.vh-quick-contact.is-open .vh-quick-contact-links a:nth-child(2) {
	transition-delay: .11s;
}

.vh-quick-contact.is-open .vh-quick-contact-links a:nth-child(4) {
	transition-delay: .25s;
}

.vh-quick-contact-links .vh-max-link img {
	display: block;
	width: 20px;
	height: 20px;
	object-fit: contain;
}

.vh-quick-contact-links a:hover,
.vh-quick-contact-links a:focus {
	color: #fff;
	border-color: rgba(218, 181, 119, .48);
	box-shadow: 0 20px 34px rgba(0, 0, 0, .32), 0 0 0 1px rgba(218, 181, 119, .18), inset 0 0 0 1px rgba(255, 255, 255, .12);
	transform: translate3d(0, -3px, 0) scale(1.03);
}

.vh-quick-contact-links svg {
	width: 18px;
	height: 18px;
}

@keyframes vh-contact-breath {
	0%,
	68%,
	100% {
		transform: translateZ(0) scale(1);
	}

	74% {
		transform: translateZ(0) scale(.96);
	}

	81% {
		transform: translateZ(0) scale(1.04);
	}

	88% {
		transform: translateZ(0) scale(.99);
	}
}

@keyframes vh-contact-halo {
	0%,
	62%,
	100% {
		opacity: 0;
		transform: scale(1);
	}

	74% {
		opacity: .54;
		transform: scale(1.18);
	}

	92% {
		opacity: 0;
		transform: scale(1.38);
	}
}

@keyframes vh-contact-glint {
	0%,
	52%,
	100% {
		opacity: 0;
		transform: translate3d(-95%, 0, 0);
	}

	60% {
		opacity: .5;
	}

	75% {
		opacity: 0;
		transform: translate3d(95%, 0, 0);
	}
}

@media (max-width: 768px) {
	.vh-quick-contact {
		right: max(14px, env(safe-area-inset-right));
		bottom: calc(104px + env(safe-area-inset-bottom));
	}

	.vh-quick-contact-toggle,
	.vh-quick-contact-links a {
		width: 50px;
		height: 50px;
	}

	.vh-quick-contact-toggle {
		min-height: 50px;
		font-size: 19px;
	}
}

.vh-service-page {
	max-width: 1180px;
	margin: 0 auto;
	padding: calc(var(--vh-admin-offset) + 150px) 24px 100px;
	color: #111;
	font-family: var(--wd-text-font, inherit);
}

.vh-service-hero {
	max-width: 860px;
	margin: 0 auto 54px;
	text-align: center;
}

.vh-service-kicker {
	margin-bottom: 18px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .32em;
	text-transform: uppercase;
	color: rgba(0, 0, 0, .42);
}

.vh-service-hero h1 {
	margin-bottom: 22px;
	font-size: clamp(40px, 6vw, 86px);
	font-weight: 500;
	letter-spacing: .08em;
	line-height: .95;
	text-transform: uppercase;
}

.vh-service-hero p {
	max-width: 680px;
	margin: 0 auto;
	font-size: 18px;
	line-height: 1.7;
	color: rgba(0, 0, 0, .64);
}

.vh-service-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.vh-service-card {
	min-height: 260px;
	padding: 34px;
	border: 1px solid rgba(0, 0, 0, .08);
	background: #f6f6f4;
}

.vh-service-card h2 {
	margin-bottom: 18px;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.vh-service-card p,
.vh-service-card li {
	font-size: 15px;
	line-height: 1.8;
	color: rgba(0, 0, 0, .7);
}

.vh-service-card ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.vh-service-card li + li {
	margin-top: 10px;
}

.vh-service-card a {
	color: #111;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.vh-service-cta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	gap: 16px;
	align-items: center;
	margin-top: 18px;
	padding: 30px 34px;
	color: #fff;
	background: #242424;
}

.vh-service-cta span {
	display: block;
	margin-bottom: 6px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .26em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .48);
}

.vh-service-cta strong {
	display: block;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.45;
}

.vh-service-cta a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 22px;
	border: 1px solid rgba(255, 255, 255, .28);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	text-decoration: none;
}

body.page-id-4439 .main-page-wrapper {
	padding-top: calc(var(--vh-admin-offset) + 72px) !important;
}

body.page-id-4439 .vh-service-page {
	padding-top: clamp(34px, 3.8vw, 52px);
	padding-bottom: 26px;
}

body.page-id-4439 .vh-service-hero {
	margin-bottom: clamp(34px, 4vw, 46px);
}

.vh-contact-map {
	display: grid;
	grid-template-columns: minmax(280px, .36fr) minmax(0, .64fr);
	align-items: stretch;
	min-height: clamp(380px, 36vw, 460px);
	margin-top: clamp(26px, 4vw, 46px);
	overflow: hidden;
	color: #fff;
	background: #090909;
	box-shadow: 0 34px 70px rgba(0, 0, 0, .16);
}

.vh-contact-map-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(32px, 4.6vw, 58px);
}

.vh-contact-map-copy span {
	display: block;
	margin-bottom: 16px;
	color: rgba(255, 255, 255, .48);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .28em;
	text-transform: uppercase;
}

.vh-contact-map-copy h2 {
	margin-bottom: 20px;
	color: #fff;
	font-size: clamp(28px, 3.2vw, 44px);
	font-weight: 500;
	letter-spacing: .04em;
	line-height: .96;
	text-transform: uppercase;
	overflow-wrap: normal;
	word-break: normal;
}

.vh-contact-map-copy p {
	max-width: 420px;
	margin-bottom: 28px;
	color: rgba(255, 255, 255, .72);
	font-size: 15px;
	line-height: 1.8;
}

.vh-contact-map-copy a {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	min-height: 44px;
	padding: 0 20px;
	border: 1px solid rgba(255, 255, 255, .3);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	text-decoration: none;
	transition: color .5s var(--vh-menu-ease), border-color .5s var(--vh-menu-ease), background .5s var(--vh-menu-ease);
}

.vh-contact-map-copy a:hover,
.vh-contact-map-copy a:focus {
	border-color: #fff;
	color: #111;
	background: #fff;
}

.vh-contact-map-frame {
	position: relative;
	isolation: isolate;
	min-height: inherit;
	background: #f2f2f2;
	border-left: 1px solid rgba(255, 255, 255, .08);
}

.vh-contact-map-frame::before {
	content: none;
}

.vh-contact-map-frame::after {
	content: none;
}

.vh-contact-map-frame iframe {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	min-height: inherit;
	border: 0;
	filter: none;
	opacity: 1;
}

.vh-contact-map-route {
	display: none;
}

.vh-contact-map-route::before,
.vh-contact-map-route::after {
	content: none;
}

.vh-contact-map-route::before {
	display: none;
}

.vh-contact-map-route::after {
	display: none;
}

.vh-contact-map-pin {
	position: absolute;
	right: 22px;
	bottom: 22px;
	z-index: 2;
	display: grid;
	gap: 5px;
	min-width: 154px;
	padding: 13px 15px;
	color: #050505;
	background: rgba(255, 255, 255, .94);
	border: 1px solid rgba(0, 0, 0, .12);
	box-shadow: 0 18px 38px rgba(0, 0, 0, .16);
	backdrop-filter: blur(10px) saturate(130%);
	-webkit-backdrop-filter: blur(10px) saturate(130%);
}

.vh-contact-map-pin::before {
	content: none;
}

.vh-contact-map-pin strong,
.vh-contact-map-pin em {
	position: relative;
	z-index: 1;
	display: block;
	font-style: normal;
	text-transform: uppercase;
}

.vh-contact-map-pin strong {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .26em;
}

.vh-contact-map-pin em {
	color: rgba(0, 0, 0, .58);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .16em;
}

.vh-mini-cart-backdrop,
.vh-live-search-backdrop {
	position: fixed;
	inset: 0;
		z-index: 10030;
	background: rgba(0, 0, 0, .48);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	opacity: 0;
	visibility: hidden;
	transition: opacity .65s var(--vh-menu-ease), visibility .65s var(--vh-menu-ease);
}

body.vh-mini-cart-open .vh-mini-cart-backdrop,
body.vh-live-search-open .vh-live-search-backdrop {
	opacity: 1;
	visibility: visible;
}

.vh-mini-cart {
	position: fixed;
	top: calc(var(--vh-admin-offset) + 64px);
	right: 0;
	bottom: 0;
		z-index: 10040;
	display: flex;
	flex-direction: column;
	width: min(440px, calc(100vw - 28px));
	color: #111;
	background: #f7f7f5;
	box-shadow: -24px 0 70px rgba(0, 0, 0, .2);
	visibility: hidden;
	transform: translate3d(102%, 0, 0);
	transition: transform .9s var(--vh-menu-ease), visibility .9s var(--vh-menu-ease), top .38s var(--vh-ease);
}

body.vh-scrolled .vh-mini-cart {
	top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 58px);
}

@media (max-width: 768px) {
	.vh-mini-cart {
		top: calc(var(--vh-admin-offset) + 102px);
	}
}

body.vh-mini-cart-open .vh-mini-cart {
	visibility: visible;
	transform: translate3d(0, 0, 0);
}

.vh-mini-cart-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 110px;
	padding: 28px;
	border-bottom: 1px solid rgba(0, 0, 0, .08);
}

.vh-mini-cart-head span {
	display: block;
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .28em;
	text-transform: uppercase;
	color: rgba(0, 0, 0, .44);
}

.vh-mini-cart-head strong {
	display: block;
	font-size: 26px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.vh-mini-cart-close,
.vh-live-search-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid rgba(0, 0, 0, .1);
	border-radius: 50%;
	background: #fff;
	color: #111;
}

.vh-mini-cart-close svg,
.vh-live-search-close svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

.vh-mini-cart-content {
	flex: 1 1 auto;
	overflow-y: auto;
	padding: 24px 28px 30px;
}

.vh-mini-cart-content .widget_shopping_cart_content {
	display: flex;
	flex-direction: column;
	min-height: 100%;
}

.vh-mini-cart-content .woocommerce-mini-cart {
	margin: 0;
	padding: 0;
	list-style: none;
}

.vh-mini-cart-content .woocommerce-mini-cart-item {
	position: relative;
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr);
	gap: 16px;
	min-height: 118px;
	margin: 0;
	padding: 0 0 20px;
	border-bottom: 1px solid rgba(0, 0, 0, .08);
}

.vh-mini-cart-content .cart-item-link.wd-fill {
	overflow: hidden;
	color: transparent;
	font-size: 0;
	text-indent: -9999px;
}

.vh-mini-cart-content .cart-item-image {
	grid-column: 1;
	grid-row: 1;
}

.vh-mini-cart-content .cart-info {
	grid-column: 2;
	grid-row: 1;
	padding-right: 26px;
}

.vh-mini-cart-content .woocommerce-mini-cart-item + .woocommerce-mini-cart-item {
	margin-top: 20px;
}

.vh-mini-cart-content .woocommerce-mini-cart-item img {
	width: 92px;
	height: 108px;
	object-fit: contain;
	background: #eee;
}

.vh-mini-cart-content .woocommerce-mini-cart-item a:not(.remove) {
	color: #111;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none;
}

.vh-mini-cart-content .woocommerce-mini-cart-item .quantity {
	display: block;
	margin-top: 10px;
	color: rgba(0, 0, 0, .58);
	font-size: 13px;
}

.vh-mini-cart-content .remove {
	position: absolute;
	top: 0;
	right: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	color: rgba(0, 0, 0, .42);
	text-decoration: none;
}

.vh-mini-cart-content .woocommerce-mini-cart__total {
	display: flex;
	justify-content: space-between;
	margin: auto 0 16px;
	padding-top: 24px;
	border-top: 1px solid rgba(0, 0, 0, .12);
	color: #111;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
}

.vh-mini-cart-content .woocommerce-mini-cart__buttons {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	margin: 0;
}

.vh-mini-cart-content .woocommerce-mini-cart__buttons .button,
.vh-mini-cart-empty a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 22px;
	border: 1px solid #111;
	border-radius: 0;
	background: #111;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	text-decoration: none;
}

.vh-mini-cart-content .woocommerce-mini-cart__buttons .button:first-child {
        background: transparent;
        color: #111;
}

body .cart-widget-side,
body .cart-widget-side.wd-opened {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translate3d(110%, 0, 0) !important;
}

/* Cart / checkout luxury palette */
body.woocommerce-cart,
body.woocommerce-checkout {
	--wd-primary-color: #c7a66b;
	--wd-alternative-color: #c7a66b;
	--btn-accented-bgcolor: #090909;
	--btn-accented-bgcolor-hover: #c7a66b;
	--btn-accented-color: #fff;
	--btn-accented-color-hover: #090909;
	accent-color: #c7a66b;
}

body.woocommerce-cart :is(.button, button.button, a.button, input.button, .checkout-button, .wc-backward),
body.woocommerce-checkout :is(.button, button.button, a.button, input.button, #place_order, .checkout-button, .wc-backward) {
	min-height: 48px;
	border: 1px solid rgba(199, 166, 107, .58) !important;
	border-radius: 0 !important;
	background: linear-gradient(135deg, #070707 0%, #171511 62%, #34270f 100%) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 16px 34px rgba(0, 0, 0, .12);
	color: #fff !important;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	text-decoration: none;
	transition: background .35s var(--vh-ease), border-color .35s var(--vh-ease), color .35s var(--vh-ease), box-shadow .35s var(--vh-ease), transform .35s var(--vh-ease);
}

body.woocommerce-cart :is(.button, button.button, a.button, input.button, .checkout-button, .wc-backward):hover,
body.woocommerce-cart :is(.button, button.button, a.button, input.button, .checkout-button, .wc-backward):focus,
body.woocommerce-checkout :is(.button, button.button, a.button, input.button, #place_order, .checkout-button, .wc-backward):hover,
body.woocommerce-checkout :is(.button, button.button, a.button, input.button, #place_order, .checkout-button, .wc-backward):focus {
	border-color: #c7a66b !important;
	background: #c7a66b !important;
	box-shadow: 0 18px 38px rgba(199, 166, 107, .22);
	color: #090909 !important;
	transform: translate3d(0, -1px, 0);
}

body.woocommerce-cart :is(.button:disabled, .button.disabled, button.button:disabled, button.button.disabled, input.button:disabled),
body.woocommerce-checkout :is(.button:disabled, .button.disabled, button.button:disabled, button.button.disabled, input.button:disabled) {
	border-color: rgba(0, 0, 0, .16) !important;
	background: #e7e2d8 !important;
	box-shadow: none;
	color: rgba(0, 0, 0, .48) !important;
	transform: none;
}

body.woocommerce-cart :is(.coupon .button, .actions .button[name="update_cart"]),
body.woocommerce-checkout :is(.checkout_coupon .button, .woocommerce-form-login .button) {
	background: #fff !important;
	box-shadow: none;
	color: #111 !important;
}

body.woocommerce-cart :is(.coupon .button, .actions .button[name="update_cart"]):hover,
body.woocommerce-checkout :is(.checkout_coupon .button, .woocommerce-form-login .button):hover {
	background: #111 !important;
	color: #fff !important;
}

body.woocommerce-cart :is(.woocommerce-message, .woocommerce-info, .woocommerce-error),
body.woocommerce-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	border-top-color: #c7a66b !important;
	background: #f8f5ee;
	color: #111;
}

body.woocommerce-cart :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before,
body.woocommerce-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before {
	color: #c7a66b !important;
}

body.woocommerce-cart :is(.woocommerce-message a, .woocommerce-info a, .woocommerce-error a, .showcoupon, .showlogin, .restore-item, .remove),
body.woocommerce-checkout :is(.woocommerce-message a, .woocommerce-info a, .woocommerce-error a, .showcoupon, .showlogin, .woocommerce-privacy-policy-text a, .woocommerce-terms-and-conditions-checkbox-text a) {
	color: #8f6d2d !important;
	text-decoration-color: rgba(143, 109, 45, .42);
	text-underline-offset: 4px;
}

body.woocommerce-cart :is(.wd-checkout-steps li span, .checkout-steps li span, .cart-totals-inner, .cart_totals, .woocommerce-cart-form),
body.woocommerce-checkout :is(.wd-checkout-steps li span, .checkout-steps li span, .woocommerce-checkout-review-order, .woocommerce-billing-fields, .woocommerce-additional-fields) {
	border-color: rgba(0, 0, 0, .1);
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table {
	table-layout: auto;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(th, td) {
	vertical-align: middle;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(th.product-price, td.product-price) {
	width: 140px;
	min-width: 140px;
	padding-right: 24px;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(th.product-quantity, td.product-quantity) {
	width: 150px;
	min-width: 150px;
	text-align: center;
	white-space: nowrap;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(th.product-subtotal, td.product-subtotal) {
	width: 156px;
	min-width: 156px;
	padding-left: 18px;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(th.product-remove, td.product-remove) {
	width: 46px;
	min-width: 46px;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(th.product-thumbnail, td.product-thumbnail) {
	width: 104px;
	min-width: 104px;
}

body.woocommerce-cart :is(.product-price, .product-subtotal, .cart-subtotal, .order-total, .cart_totals) :is(.amount, .woocommerce-Price-amount, .woocommerce-Price-amount bdi),
body.woocommerce-checkout :is(.cart-subtotal, .order-total, .product-total, .woocommerce-checkout-review-order-table) :is(.amount, .woocommerce-Price-amount, .woocommerce-Price-amount bdi) {
	display: inline-flex;
	align-items: baseline;
	gap: .22em;
	white-space: nowrap;
}

body.woocommerce-cart .cart_totals :is(td, .amount) {
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-cart .cart_totals .order-total .amount,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount {
        color: #c7a66b;
        font-size: clamp(20px, 1.65vw, 28px);
        font-weight: 800;
        letter-spacing: .02em;
}

body.woocommerce-cart :is(.wd-checkout-steps li.active span, .checkout-steps li.active span),
body.woocommerce-checkout :is(.wd-checkout-steps li.active span, .checkout-steps li.active span) {
	border-color: #c7a66b !important;
	background: #111 !important;
	color: #fff !important;
}

body.woocommerce-cart :is(input:focus, textarea:focus, select:focus),
body.woocommerce-checkout :is(input:focus, textarea:focus, select:focus) {
	border-color: #c7a66b !important;
	box-shadow: 0 0 0 1px rgba(199, 166, 107, .28);
}

body.woocommerce-checkout .main-page-wrapper {
	background:
		linear-gradient(180deg, rgba(8, 8, 8, .04), rgba(8, 8, 8, 0) 260px),
		#f7f4ee;
}

body.woocommerce-checkout .site-content {
	margin-bottom: 72px;
}

body.woocommerce-checkout .woocommerce {
	--vh-checkout-border: rgba(0, 0, 0, .1);
	--vh-checkout-panel: rgba(255, 255, 255, .94);
	--vh-checkout-muted: rgba(0, 0, 0, .58);
}

body.woocommerce-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	width: min(1180px, calc(100vw - 40px));
	margin-right: auto;
	margin-left: auto;
}

body.woocommerce-checkout form.checkout.woocommerce-checkout {
	display: grid;
	grid-template-columns: minmax(560px, 1fr) minmax(430px, 480px);
	gap: clamp(28px, 4vw, 58px);
	align-items: start;
	width: min(1180px, calc(100vw - 40px));
	margin-right: auto;
	margin-left: auto;
}

body.woocommerce-checkout .customer-details,
body.woocommerce-checkout .checkout-order-review,
body.woocommerce-checkout :is(.woocommerce-form-login, .checkout_coupon) {
	border: 1px solid var(--vh-checkout-border);
	border-radius: 2px;
	background: var(--vh-checkout-panel);
	box-shadow: 0 24px 70px rgba(0, 0, 0, .08);
}

body.woocommerce-checkout form.woocommerce-checkout > :is(.customer-details, .checkout-order-review) {
	flex: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
}

body.woocommerce-checkout .customer-details {
	display: grid;
	gap: 24px;
	padding: clamp(30px, 3vw, 42px);
}

body.woocommerce-checkout .checkout-order-review {
	position: sticky;
	top: calc(var(--vh-admin-offset, 0px) + 28px);
	padding: 32px;
}

body.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-additional-fields) h3,
body.woocommerce-checkout #order_review_heading {
	margin-bottom: 24px;
	color: #080808;
	font-size: 20px;
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.25;
}

body.woocommerce-checkout .woocommerce-additional-fields h3 {
	display: none;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
	grid-template-columns: 1fr;
}

body.woocommerce-checkout p.form-row {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

body.woocommerce-checkout p.form-row-wide {
	grid-column: 1 / -1;
}

body.woocommerce-checkout :is(#billing_company_field, #billing_address_2_field, #billing_city_field, #billing_state_field, #billing_postcode_field, .woocommerce-shipping-fields, .create-account) {
	display: none !important;
}

body.woocommerce-checkout p.form-row label {
	margin-bottom: 8px;
	color: rgba(0, 0, 0, .7);
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.25;
}

body.woocommerce-checkout p.form-row .required {
	color: #9f7630;
	text-decoration: none;
}

body.woocommerce-checkout :is(input.input-text, select, textarea),
body.woocommerce-checkout .select2-container--default .select2-selection--single {
	min-height: 50px;
	border: 1px solid rgba(0, 0, 0, .14);
	border-radius: 0;
	background: #fff;
	color: #090909;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	transition: border-color .25s var(--vh-ease), box-shadow .25s var(--vh-ease), background .25s var(--vh-ease);
}

body.woocommerce-checkout :is(input.input-text, select) {
	padding: 0 16px;
}

body.woocommerce-checkout textarea.input-text {
	min-height: 118px;
	padding: 15px 16px;
	resize: vertical;
}

body.woocommerce-checkout :is(input.input-text, select, textarea)::placeholder {
	color: rgba(0, 0, 0, .38);
}

body.woocommerce-checkout .select2-container--default .select2-selection--single {
	display: flex;
	align-items: center;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	padding-right: 38px;
	padding-left: 16px;
	color: #090909;
	line-height: 50px;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 50%;
	right: 12px;
	transform: translateY(-50%);
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table {
	display: table !important;
	width: 100%;
	min-width: 0;
	table-layout: fixed;
	margin-bottom: 24px;
	border-color: rgba(0, 0, 0, .1);
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table :is(thead, tbody, tfoot) {
	display: table-row-group !important;
	width: 100%;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr {
	display: table-row !important;
	width: 100%;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table :is(th, td) {
	display: table-cell !important;
	border-color: rgba(0, 0, 0, .08);
	padding: 15px 0;
	color: #111;
	vertical-align: top;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
	color: rgba(0, 0, 0, .55);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
	padding-right: 18px;
	width: auto;
	overflow-wrap: anywhere;
	word-break: normal;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table :is(.product-total, td:last-child, th:last-child) {
        width: 138px;
        text-align: right;
        white-space: nowrap;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr {
        display: grid !important;
        grid-template-columns: minmax(92px, .34fr) minmax(0, 1fr);
        gap: 16px;
        align-items: baseline;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot :is(th, td) {
        display: block !important;
        width: auto !important;
        min-width: 0;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
        text-align: right;
        white-space: normal;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .amount,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .amount bdi {
        max-width: 100%;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
        overflow: visible;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount bdi {
        justify-content: flex-end;
        text-align: right;
}

body.woocommerce-checkout .checkout-order-review > .woocommerce-checkout-review-order .wd-table-wrapper {
        overflow-x: visible;
	margin-bottom: 24px;
	padding: 0;
	background: transparent;
	box-shadow: none;
}

body.woocommerce-checkout .woocommerce-checkout-payment {
	border-top: 1px solid rgba(0, 0, 0, .1);
	padding-top: 22px;
}

body.woocommerce-checkout #payment ul.payment_methods {
	border: 0;
	padding: 0;
}

body.woocommerce-checkout #payment ul.payment_methods li {
	width: 100%;
	margin: 0;
	line-height: 1.55;
}

body.woocommerce-checkout #payment ul.payment_methods .woocommerce-info {
	width: 100% !important;
	margin: 0 0 20px !important;
	padding: 18px 20px 18px 46px;
	box-sizing: border-box;
	overflow-wrap: anywhere;
	background: #f8f5ee;
	color: var(--vh-checkout-muted);
}

body.woocommerce-checkout #payment div.payment_box {
	width: 100%;
	margin: 0 0 20px !important;
	padding: 18px 20px;
	border-radius: 2px;
	background: #f8f5ee;
	color: var(--vh-checkout-muted);
	overflow-wrap: anywhere;
	box-sizing: border-box;
}

body.woocommerce-checkout #payment div.payment_box p {
	margin: 0;
	line-height: 1.55;
}

body.woocommerce-checkout .woocommerce-privacy-policy-text {
	color: var(--vh-checkout-muted);
	font-size: 12px;
	line-height: 1.6;
}

body.woocommerce-checkout #place_order {
	width: 100%;
	margin-top: 16px;
}

body.woocommerce-checkout :is(.woocommerce-form-login, .checkout_coupon) {
	width: min(1180px, calc(100vw - 40px));
	margin-bottom: 22px;
	margin-right: auto;
	margin-left: auto;
	padding: 24px;
}

@media (max-width: 1100px) {
	body.woocommerce-checkout form.checkout.woocommerce-checkout {
		grid-template-columns: 1fr;
		width: min(760px, calc(100vw - 32px));
	}

	body.woocommerce-checkout .checkout-order-review {
		position: static;
	}
}

@media (max-width: 768px) {
	body.woocommerce-cart .woocommerce-cart-form table.shop_table :is(th.product-price, td.product-price, th.product-quantity, td.product-quantity, th.product-subtotal, td.product-subtotal) {
		width: auto;
		min-width: 0;
		padding-right: 0;
		padding-left: 0;
	}

	body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-subtotal,
	body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-price {
		text-align: right;
	}

	body.woocommerce-checkout form.checkout.woocommerce-checkout,
	body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
		grid-template-columns: 1fr;
		width: min(560px, calc(100vw - 96px)) !important;
		max-width: min(560px, calc(100vw - 96px)) !important;
	}

	body.woocommerce-checkout :is(.woocommerce-form-login, .checkout_coupon) {
		width: min(560px, calc(100vw - 96px));
	}

	body.woocommerce-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
		width: min(560px, calc(100vw - 96px));
	}

	body.woocommerce-checkout form.woocommerce-checkout > :is(.customer-details, .checkout-order-review) {
		width: min(560px, calc(100vw - 96px)) !important;
		max-width: min(560px, calc(100vw - 96px)) !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	body.woocommerce-checkout .checkout-order-review {
		overflow: hidden;
	}

	body.woocommerce-checkout .customer-details,
	body.woocommerce-checkout .checkout-order-review,
	body.woocommerce-checkout :is(.woocommerce-form-login, .checkout_coupon) {
		padding: 18px;
	}

	body.woocommerce-checkout .checkout-order-review {
		position: static;
	}

	body.woocommerce-checkout .site-content {
		margin-bottom: 44px;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table :is(.product-total, td:last-child, th:last-child) {
		width: auto;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table thead {
		display: none !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item {
		display: grid !important;
		grid-template-columns: 1fr;
		gap: 6px;
		padding: 14px 0;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item :is(td, th) {
		display: block !important;
		width: 100% !important;
		padding: 0;
		text-align: left;
		white-space: normal;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item .product-total {
		color: #9f7630;
		font-weight: 700;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr {
		display: grid !important;
		grid-template-columns: 1fr;
		gap: 5px;
		align-items: start;
		padding: 12px 0;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot :is(th, td) {
		display: block !important;
		width: auto !important;
		padding: 0;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
		text-align: left;
		white-space: nowrap;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount {
		font-size: 20px;
	}
}

.vh-mini-cart-empty {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 420px;
	text-align: center;
}

.vh-mini-cart-empty strong {
	display: block;
	margin-bottom: 12px;
	font-size: 28px;
	font-weight: 500;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.vh-mini-cart-empty p {
	max-width: 300px;
	margin: 0 auto 22px;
	color: rgba(0, 0, 0, .58);
	line-height: 1.6;
}

.vh-live-search {
	position: fixed;
	inset: 0;
	/* The backdrop and dialog must share one top-level stack, above the header. */
	z-index: 100100;
	pointer-events: none;
}

.vh-live-search-backdrop {
	z-index: 0;
}

body.vh-live-search-open .vh-live-search {
	pointer-events: auto;
}

.vh-live-search-panel {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 1;
	width: min(900px, calc(100vw - 40px));
	max-height: min(760px, calc(100vh - var(--vh-admin-offset) - 48px));
	overflow-y: auto;
	padding: 46px;
	color: #111;
	background: #fff;
	border: 1px solid rgba(187, 145, 70, .72);
	box-shadow: 0 32px 94px rgba(0, 0, 0, .34);
	opacity: 0;
	visibility: hidden;
	transform: translate3d(-50%, calc(-50% + 22px), 0) scale(.98);
	transition: opacity .72s var(--vh-menu-ease-soft), transform .82s var(--vh-menu-ease), visibility .72s var(--vh-menu-ease);
}

body.vh-live-search-open .vh-live-search-panel {
	opacity: 1;
	visibility: visible;
	transform: translate3d(-50%, -50%, 0) scale(1);
}

.vh-live-search-close {
	position: absolute;
	top: 22px;
	right: 22px;
}

.vh-live-search-copy {
	margin-bottom: 28px;
}

.vh-live-search-copy span {
	display: block;
	margin-bottom: 10px;
	color: rgba(0, 0, 0, .42);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .32em;
	text-transform: uppercase;
}

.vh-live-search-copy strong {
	display: block;
	max-width: 620px;
	font-size: clamp(30px, 5vw, 58px);
	font-weight: 500;
	line-height: 1;
	text-transform: uppercase;
}

.vh-live-search-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	margin-bottom: 18px;
}

.vh-live-search-form input[type="search"] {
	height: 56px;
	padding: 0 20px;
	border: 1px solid rgba(0, 0, 0, .14);
	background: #fff;
	font-size: 16px;
}

.vh-live-search-form button {
	min-height: 56px;
	padding: 0 28px;
	border: 1px solid #111;
	background: #111;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-live-search-status {
	min-height: 24px;
	margin-bottom: 18px;
	color: rgba(0, 0, 0, .54);
	font-size: 14px;
}

.vh-live-search-results {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.vh-live-search-item {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 12px;
	color: #111;
	background: #fff;
	text-decoration: none;
	transition: transform .45s var(--vh-menu-ease), box-shadow .45s var(--vh-menu-ease);
}

.vh-live-search-item:hover {
	transform: translate3d(0, -3px, 0);
	box-shadow: 0 18px 40px rgba(0, 0, 0, .1);
}

.vh-live-search-item-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 112px;
	background: #f1f1ef;
}

.vh-live-search-item-image img {
	max-width: 88px;
	max-height: 104px;
	object-fit: contain;
}

.vh-live-search-item-copy {
	display: flex;
	flex-direction: column;
	gap: 7px;
	min-width: 0;
}

.vh-live-search-item-copy small {
	color: rgba(0, 0, 0, .42);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.vh-live-search-item-copy strong {
	color: #111;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	text-transform: uppercase;
}

.vh-live-search-item-copy em {
	color: rgba(0, 0, 0, .62);
	font-size: 13px;
	font-style: normal;
}

@media (max-width: 768px) {
	.vh-service-page {
		padding: calc(var(--vh-admin-offset) + 130px) 18px 72px;
	}

	.vh-service-grid,
	.vh-service-cta,
	.vh-live-search-results {
		grid-template-columns: 1fr;
	}

	.vh-service-card,
	.vh-service-cta {
		padding: 26px 22px;
	}

	body.page-id-4439 .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + 86px) !important;
	}

	body.page-id-4439 .vh-service-page {
		padding-top: 36px;
		padding-bottom: 44px;
	}

	.vh-contact-map {
		grid-template-columns: 1fr;
		min-height: 0;
		margin-top: 24px;
	}

	.vh-contact-map-copy {
		padding: 30px 22px;
	}

	.vh-contact-map-copy h2 {
		font-size: clamp(30px, 10vw, 44px);
	}

	.vh-contact-map-frame {
		min-height: 320px;
	}

	.vh-contact-map-frame::after {
		content: none;
	}

	.vh-contact-map-route {
		display: none;
	}

	.vh-contact-map-pin {
		right: 14px;
		bottom: 14px;
		min-width: 136px;
		transform: scale(.92);
		transform-origin: bottom right;
	}

	.vh-live-search-panel {
		top: 50%;
		width: calc(100vw - 20px);
		max-height: calc(100vh - var(--vh-admin-offset) - 32px);
		padding: 34px 20px 24px;
	}

	.vh-live-search-form {
		grid-template-columns: 1fr;
	}

	.vh-mini-cart {
		width: min(390px, calc(100vw - 18px));
	}
}

body:not(.elementor-editor-active) .wd-footer.footer-container:not(.vh-footer-native),
body:not(.elementor-editor-active) .footer-container.wd-footer:not(.vh-footer-native) {
	display: none !important;
}

.vh-footer-native {
	position: relative;
	z-index: 2;
	width: 100%;
	margin: 0;
	background: #282828;
	color: #fff;
	font-family: var(--vh-font-body);
}

.vh-footer-native-inner {
	width: min(100% - clamp(40px, 8vw, 160px), 1280px);
	margin-inline: auto;
}

.vh-footer-native .vh-footer-top,
.vh-footer-native .vh-footer-links {
	border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.vh-footer-top-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(170px, auto) minmax(0, 1fr);
	align-items: center;
	gap: clamp(34px, 7vw, 150px);
	min-height: clamp(172px, 12vw, 206px);
	padding-block: clamp(38px, 4.6vw, 64px);
}

.vh-footer-social {
	justify-self: start;
}

.vh-footer-subscribe {
	justify-self: end;
	width: min(470px, 100%);
}

.vh-footer-native h3 {
	margin: 0 0 17px;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.vh-footer-subscribe p {
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: 14px;
	line-height: 1.55;
}

.vh-footer-native-logo {
	justify-self: center;
	color: #fff;
	font-size: clamp(30px, 2.6vw, 43px);
	font-weight: 800;
	letter-spacing: .28em;
	line-height: 1;
	text-indent: .28em;
	text-decoration: none;
	background-image: none !important;
	white-space: nowrap;
}

.vh-footer-native .vh-newsletter-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 14px;
	margin-top: 24px;
}

.vh-footer-native .vh-newsletter-form input {
	width: 100%;
	height: 48px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 8px;
	padding-inline: 26px 18px !important;
	text-align: left;
}

.vh-footer-native .vh-newsletter-form button {
	border-radius: 8px;
}

.vh-footer-link-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(34px, 7vw, 126px);
	padding-block: clamp(44px, 5vw, 68px);
}

.vh-footer-column {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}

.vh-footer-column a {
	color: rgba(255, 255, 255, .82);
	font-size: 11px;
	font-weight: 750;
	line-height: 1.35;
	letter-spacing: .05em;
	text-transform: uppercase;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.vh-footer-column a:hover {
	color: #fff;
}

.vh-footer-native .vh-footer-bottom {
	padding-block: 18px;
}

.vh-footer-native .vh-footer-policy-links a {
	color: rgba(255, 255, 255, .74);
	font-size: 10px;
	line-height: 1.4;
	text-decoration: none;
	white-space: nowrap;
}

.vh-mobile-flyout-panel {
	display: none;
}

.vh-mini-cart-content .woocommerce-mini-cart-item {
	grid-template-columns: 88px minmax(0, 1fr);
	gap: 14px;
}

.vh-mini-cart-content .cart-info {
	min-width: 0;
	padding-right: 32px;
	overflow: visible;
}

.vh-mini-cart-content .cart-info *,
.vh-mini-cart-content .woocommerce-mini-cart-item a:not(.remove) {
	max-width: 100%;
	min-width: 0;
	overflow-wrap: anywhere;
	word-break: normal;
}

.vh-mini-cart-content .wd-entities-title,
.vh-mini-cart-content .cart-info > a:not(.remove) {
	display: block;
	color: #111;
	font-size: 14px;
	font-weight: 750;
	line-height: 1.34;
	letter-spacing: .01em;
}

.vh-mini-cart-content .variation {
	display: block;
	margin: 7px 0 0;
	color: rgba(0, 0, 0, .58);
	font-size: 12px;
	line-height: 1.45;
}

.vh-mini-cart-content .variation dt,
.vh-mini-cart-content .variation dd {
	display: inline;
	margin: 0;
	padding: 0;
}

.vh-mini-cart-content .variation dd::after {
	content: "";
	display: block;
}

.vh-mini-cart-content .woocommerce-mini-cart__buttons .button,
.vh-mini-cart-empty a {
	white-space: normal;
	text-align: center;
	line-height: 1.25;
}

@media (max-width: 768px) {
	.vh-menu-drawer.vh-mobile-drill-open .vh-drawer-gifts {
		display: none !important;
	}

	.vh-mobile-flyout-panel {
		display: block;
		max-height: 0;
		margin: 0;
		padding: 0;
		overflow: hidden;
		border-block: 1px solid rgba(0, 0, 0, .08);
		opacity: 0;
		transform: translate3d(-12px, 10px, 0);
		transition: max-height .9s cubic-bezier(.19, 1, .22, 1), padding .9s cubic-bezier(.19, 1, .22, 1), margin .9s cubic-bezier(.19, 1, .22, 1), opacity .55s var(--vh-menu-ease-soft), transform .72s var(--vh-menu-ease);
	}

	.vh-mobile-flyout-panel.is-open {
		max-height: 1900px;
		margin: 6px 0 18px;
		padding: 16px 0 24px;
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}

	.vh-mobile-flyout-back {
		display: inline-flex;
		align-items: center;
		gap: 10px;
		margin: 0 0 16px;
		padding: 0;
		border: 0;
		background: transparent;
		color: rgba(0, 0, 0, .56);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: .18em;
		text-transform: uppercase;
	}

	.vh-mobile-flyout-back::before {
		content: "";
		width: 18px;
		height: 1px;
		background: currentColor;
		box-shadow: -6px -4px 0 -3px currentColor, -6px 4px 0 -3px currentColor;
		transform: translate3d(0, 0, 0);
		transition: transform .38s var(--vh-menu-ease);
	}

	.vh-mobile-flyout-back:hover::before,
	.vh-mobile-flyout-back:focus::before {
		transform: translate3d(-4px, 0, 0);
	}

	.vh-mobile-flyout-panel h5 {
		margin: 0 0 16px;
		color: #070707;
		font-size: 18px;
		font-weight: 800;
		line-height: 1;
		letter-spacing: .18em;
		text-transform: uppercase;
	}

	.vh-mobile-flyout-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift {
		display: block !important;
		width: 100% !important;
		min-height: 0 !important;
		padding: 0 !important;
		color: #fff !important;
		font-size: inherit !important;
		letter-spacing: 0 !important;
		line-height: 1 !important;
		opacity: 1;
		transform: none !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift:first-child {
		grid-column: auto !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift:hover {
		padding-left: 0 !important;
		opacity: 1;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-frame {
		position: relative !important;
		display: block !important;
		width: 100%;
		aspect-ratio: 1 / 1;
		min-height: 0;
		overflow: hidden !important;
		background: #111;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift span {
		width: auto !important;
		height: auto !important;
		margin-left: 0 !important;
		border: 0 !important;
		transform: none !important;
		opacity: 1 !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-frame {
		width: 100% !important;
		height: auto !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-copy {
		width: auto !important;
		height: auto !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-frame::before,
	.vh-mobile-flyout-grid .vh-drawer-gift-frame::after {
		display: block;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-img,
	.vh-mobile-flyout-grid .vh-drawer-gift img {
		display: block;
		width: 100%;
		height: 100%;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-img {
		position: absolute !important;
		inset: 0 !important;
		aspect-ratio: auto !important;
		overflow: hidden !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-copy {
		position: absolute !important;
		right: 12px;
		bottom: 12px;
		left: 12px;
		justify-content: flex-end;
		align-items: flex-start;
		padding-top: 0 !important;
		text-align: left;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-copy small,
	.vh-mobile-flyout-grid .vh-drawer-gift-copy em {
		display: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-copy strong {
		color: #fff !important;
		font-size: 10px;
		letter-spacing: .08em;
	}

	.vh-mobile-flyout-empty {
		display: inline-flex;
		align-items: center;
		width: max-content;
		max-width: 100%;
		min-height: 42px;
		color: #fff;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: .16em;
		text-transform: uppercase;
		text-decoration: underline;
		text-underline-offset: 5px;
	}

	.vh-drawer-collection-list a.is-mobile-open > span[aria-hidden="true"] {
		transform: translate3d(6px, 0, 0) rotate(135deg);
	}

	.vh-footer-native {
		padding-bottom: 72px;
	}

	.vh-footer-native-inner {
		width: min(100% - 36px, 560px);
	}

	.vh-footer-top-grid {
		grid-template-columns: 1fr;
		gap: 28px;
		min-height: 0;
		padding-block: 130px 38px;
		text-align: center;
	}

	.vh-footer-social,
	.vh-footer-subscribe,
	.vh-footer-native-logo {
		justify-self: center;
	}

	.vh-footer-social {
		order: 3;
	}

	.vh-footer-native-logo {
		order: 2;
		font-size: 34px;
	}

	.vh-footer-subscribe {
		order: 1;
	}

	.vh-footer-native .vh-newsletter-form {
		grid-template-columns: 1fr;
		max-width: 360px;
		margin-inline: auto;
	}

	.vh-footer-native .vh-newsletter-form input {
		height: 50px;
		padding-left: 28px !important;
	}

	.vh-footer-link-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 34px 22px;
		padding-block: 40px;
	}

	.vh-footer-column {
		align-items: flex-start;
		text-align: left;
	}

	.vh-footer-column h3 {
		font-size: 11px;
	}

	.vh-footer-column a {
		font-size: 10px;
		line-height: 1.45;
	}

	.vh-footer-native .vh-footer-bottom {
		grid-template-columns: 1fr;
		gap: 16px;
		padding-block: 22px;
		text-align: center;
	}

	.vh-footer-native .vh-footer-payments,
	.vh-footer-native .vh-footer-policy-links {
		justify-content: center;
	}

	.vh-footer-copy {
		white-space: normal;
	}

	.vh-mini-cart {
		width: min(392px, calc(100vw - 12px));
	}

	.vh-mini-cart-content {
		padding-inline: 18px;
	}

	.vh-mini-cart-content .woocommerce-mini-cart-item {
		grid-template-columns: 78px minmax(0, 1fr);
		gap: 12px;
	}

	.vh-mini-cart-content .woocommerce-mini-cart-item img {
		width: 78px;
		height: 96px;
	}

	.vh-news-card .vh-banner-copy {
		padding: 28px 22px;
		background: linear-gradient(180deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .72));
	}

	.vh-news-card .wd-el-title,
	.vh-news-card .vh-banner-copy .wd-el-title {
		font-size: clamp(12px, 4vw, 16px);
		line-height: 1.16;
	}

	.vh-news-card .vh-banner-copy :is(.woodmart-title-container, .title, .wd-fontsize-l),
	.vh-news-card :is(.elementor-widget-wd_title, .title-wrapper) :is(.woodmart-title-container, .title, .wd-fontsize-l) {
		font-size: clamp(15px, 4.2vw, 20px) !important;
		line-height: 1.28 !important;
	}

	.vh-news-card .wd-text-block,
	.vh-news-card .wd-text-block p,
	.vh-news-card .vh-banner-copy p {
		font-size: 13px;
		line-height: 1.55;
	}

	.vh-news-grid {
		padding: 58px 16px 72px !important;
	}

	.vh-news-grid-row,
	.vh-news-grid-row.e-con,
	.vh-news-grid-row > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
		gap: 28px !important;
	}

	body .elementor-896 .elementor-element.elementor-element-2145285.vh-news-grid-row {
		display: flex !important;
		grid-template-columns: 1fr !important;
		flex-direction: column !important;
		width: 100% !important;
		max-width: 100% !important;
		gap: 28px !important;
	}

	.vh-news-grid-row > .elementor-element,
	.vh-news-grid-row > .e-con-inner > .elementor-element,
	.vh-news-grid-row .vh-news-card {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 auto !important;
	}

	body .elementor-896 .elementor-element.elementor-element-3379294,
	body .elementor-896 .elementor-element.elementor-element-1120827,
	body .elementor-896 .elementor-element.elementor-element-4759153 {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 auto !important;
	}

	.vh-news-card {
		display: flex !important;
		flex-direction: column !important;
		min-height: 0 !important;
	}

	.vh-news-card img {
		aspect-ratio: 16 / 11;
	}

	.vh-news-card .vh-banner-copy {
		align-items: flex-start;
		padding: 20px 2px 0;
		background: transparent;
		text-align: left;
	}

	.vh-news-card .wd-el-title,
	.vh-news-card .vh-banner-copy .wd-el-title {
		font-size: 15px;
		line-height: 1.28;
		letter-spacing: .08em;
	}

	.vh-news-card .vh-banner-copy :is(.woodmart-title-container, .title, .wd-fontsize-l),
	.vh-news-card :is(.elementor-widget-wd_title, .title-wrapper) :is(.woodmart-title-container, .title, .wd-fontsize-l) {
		font-size: 17px !important;
		line-height: 1.32 !important;
		letter-spacing: .075em !important;
	}

	.vh-news-card .wd-text-block,
	.vh-news-card .wd-text-block p,
	.vh-news-card .vh-banner-copy p {
		margin-inline: 0;
		font-size: 14px;
		line-height: 1.65;
	}
}

@media (max-width: 480px) {
	.vh-mobile-flyout-grid {
		grid-template-columns: 1fr;
	}

	.vh-mobile-flyout-grid .vh-drawer-gift-frame {
		aspect-ratio: 16 / 10;
	}
}

/* Editorial catalog drawer */
@media (min-width: 1081px) {
	.vh-menu-drawer {
		--vh-drawer-total: min(1500px, 96vw);
		--vh-drawer-nav: clamp(300px, 22vw, 360px);
		--vh-drawer-flyout: calc(var(--vh-drawer-total) - var(--vh-drawer-nav));
		--vh-drawer-pad-left: clamp(18px, 1.45vw, 34px);
		--vh-drawer-pad-right: clamp(16px, 1.35vw, 32px);
		width: var(--vh-drawer-nav);
	}

	.vh-menu-drawer.vh-menu-flyout-open {
		width: var(--vh-drawer-total);
		min-width: 0;
	}

	.vh-drawer-head,
	.vh-drawer-body {
		width: var(--vh-drawer-nav);
	}

	.vh-drawer-gifts {
		left: var(--vh-drawer-nav);
		display: block;
		width: var(--vh-drawer-flyout);
		min-width: 0;
		padding: clamp(18px, 1.25vw, 28px);
		overflow-x: hidden;
		overflow-y: auto;
		background: #fff;
	}

	.vh-drawer-primary a,
	.vh-drawer-support a,
	.vh-drawer-collection-list a {
		font-size: clamp(11px, .78vw, 15px);
		letter-spacing: .17em;
	}

	.vh-drawer-collection-list a {
		min-height: clamp(40px, 2.75vw, 54px);
	}
}

.vh-drawer-flyout-title {
	display: none !important;
}

.vh-drawer-editorial[hidden] {
	display: none !important;
}

.vh-drawer-editorial {
	display: none;
	grid-template-columns: minmax(280px, .92fr) minmax(380px, 1.08fr);
	grid-template-rows: auto minmax(360px, 1fr);
	grid-template-areas:
		"copy products"
		"hero products";
	gap: clamp(18px, 1.45vw, 28px) clamp(24px, 2vw, 40px);
	align-items: stretch;
	width: 100%;
	min-width: 0;
	min-height: min(720px, calc(100vh - clamp(36px, 2.5vw, 56px)));
	color: #070707;
}

.vh-drawer-editorial.is-visible-in-flyout {
	display: grid;
}

.vh-drawer-editorial-stack {
	display: contents;
}

.vh-drawer-editorial-copy {
	grid-area: copy;
	align-self: start;
	padding-right: 0;
	border-right: 0;
	min-width: 0;
}

.vh-drawer-editorial-copy small {
	display: block;
	margin-bottom: clamp(10px, .75vw, 16px);
	color: rgba(0, 0, 0, .42);
	font-size: clamp(8px, .56vw, 10px);
	font-weight: 800;
	letter-spacing: .34em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-drawer-editorial-copy h3 {
	max-width: 10.5em;
	margin: 0 0 clamp(14px, 1vw, 22px);
	color: #050505;
	font-size: clamp(26px, 1.9vw, 42px);
	font-weight: 850;
	letter-spacing: .16em;
	line-height: .98;
	text-transform: uppercase;
}

.vh-drawer-editorial-copy p {
	max-width: 25em;
	margin: 0 0 clamp(18px, 1.4vw, 30px);
	color: rgba(0, 0, 0, .58);
	font-size: clamp(12px, .76vw, 14px);
	line-height: 1.7;
}

.vh-drawer-editorial-copy a {
	position: relative;
	display: inline-flex;
	align-items: center;
	color: #050505;
	font-size: clamp(9px, .62vw, 11px);
	font-weight: 850;
	letter-spacing: .22em;
	line-height: 1.2;
	text-transform: uppercase;
	text-decoration: none;
}

.vh-drawer-editorial-copy a::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -5px;
	left: 0;
	height: 1px;
	background: currentColor;
	transform-origin: left center;
	transition: transform .72s var(--vh-menu-ease);
}

.vh-drawer-editorial-copy a:hover::after {
	transform: scaleX(.52);
}

.vh-drawer-editorial-hero {
	position: relative;
	grid-area: hero;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	min-height: clamp(360px, 47vh, 620px);
	overflow: hidden;
	background: #050505;
	color: #fff;
	text-decoration: none;
}

@media (min-width: 769px) {
	.vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero {
		align-self: start;
		justify-self: start;
		width: 100%;
		height: clamp(360px, 47vh, 620px);
		max-width: clamp(300px, 24vw, 440px);
		max-height: 620px;
	}

        .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero {
                height: clamp(360px, 44vh, 560px);
                max-height: 560px;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-gifts {
                overflow: hidden;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] {
                grid-template-columns: minmax(300px, 440px) minmax(420px, 1fr);
                grid-template-rows: auto minmax(0, 1fr);
                align-items: stretch;
                height: calc(100vh - clamp(36px, 2.5vw, 56px));
                min-height: 0;
                max-height: calc(100vh - clamp(36px, 2.5vw, 56px));
                overflow: hidden;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-copy {
                align-self: start;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero {
                align-self: stretch;
                justify-self: stretch;
                width: 100%;
                height: auto;
                min-height: 0;
                max-width: none;
                max-height: none;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-products {
                align-self: stretch;
                min-height: 0;
                max-height: 100%;
                overflow-x: hidden;
                overflow-y: auto;
                padding-right: clamp(4px, .5vw, 10px);
        }

	.vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] {
		grid-template-columns: minmax(300px, 440px) minmax(420px, 1fr);
		grid-template-rows: auto minmax(360px, min(48vh, 620px));
		align-items: start;
		height: auto;
		min-height: min(720px, calc(100vh - clamp(36px, 2.5vw, 56px)));
		max-height: calc(100vh - clamp(36px, 2.5vw, 56px));
	}

	.vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero {
		align-self: start;
		justify-self: start;
		width: 100%;
		height: clamp(360px, 47vh, 620px);
		min-height: clamp(360px, 47vh, 620px);
		max-width: clamp(300px, 24vw, 440px);
		max-height: 620px;
		display: flex !important;
		background: #050505 !important;
	}

	.vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero-img {
		display: flex !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero img {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

        .vh-drawer-editorial-full-list .vh-drawer-editorial-products,
        .vh-drawer-editorial-alphafold .vh-drawer-editorial-products {
                align-self: stretch;
                max-height: calc(100vh - clamp(118px, 9vw, 176px));
                overflow-x: hidden;
                overflow-y: auto;
                padding-right: clamp(4px, .5vw, 10px);
        }
}

@media (min-width: 769px) {
        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold.is-visible-in-flyout,
        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"].is-visible-in-flyout {
                display: grid !important;
                grid-template-columns: minmax(300px, 440px) minmax(420px, 1fr) !important;
                grid-template-rows: auto minmax(440px, min(52vh, 620px)) !important;
                grid-template-areas:
                        "copy products"
                        "hero products" !important;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero {
                grid-area: hero !important;
                display: flex !important;
                align-self: start !important;
                justify-self: start !important;
                width: 100% !important;
                max-width: clamp(300px, 24vw, 440px) !important;
                min-height: clamp(440px, 52vh, 620px) !important;
                height: clamp(440px, 52vh, 620px) !important;
                overflow: hidden !important;
                background:
                        radial-gradient(circle at 50% 45%, rgba(255, 255, 255, .1), transparent 34%),
                        linear-gradient(180deg, #050505 0%, #020202 100%) !important;
                isolation: isolate;
                opacity: 1 !important;
                visibility: visible !important;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero-img {
                position: relative;
                display: flex !important;
                width: 100% !important;
                height: 100% !important;
                min-height: inherit;
                opacity: 1 !important;
                visibility: visible !important;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero-img::before {
                content: "";
                position: absolute;
                inset: 17% 14%;
                z-index: 0;
                background: radial-gradient(circle, rgba(255, 255, 255, .16), rgba(255, 255, 255, 0) 66%);
                filter: blur(10px);
                pointer-events: none;
        }

        .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero img {
                position: relative;
                z-index: 1;
                display: block !important;
                width: 100% !important;
                height: 100% !important;
                object-fit: contain !important;
                padding: clamp(34px, 3vw, 66px) !important;
                filter: brightness(1.12) contrast(1.08) drop-shadow(0 24px 44px rgba(255, 255, 255, .1));
                opacity: 1 !important;
                visibility: visible !important;
        }
}

.vh-drawer-editorial-hero::after {
        content: "";
        position: absolute;
        inset: auto 0 0;
	height: 42%;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .72));
	pointer-events: none;
}

.vh-drawer-editorial-hero-img,
.vh-drawer-editorial-product-img {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.vh-drawer-editorial-hero img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: clamp(22px, 2.4vw, 52px);
	transform: scale(1.01);
	transition: transform 1.25s var(--vh-menu-ease), filter .9s var(--vh-menu-ease);
}

.vh-drawer-editorial-hero:hover img {
	filter: contrast(1.05);
	transform: scale(1.06);
}

.vh-drawer-editorial-hero strong {
	position: absolute;
	right: clamp(14px, 1.2vw, 24px);
	bottom: clamp(14px, 1.2vw, 24px);
	left: clamp(14px, 1.2vw, 24px);
	z-index: 2;
	color: #fff;
	font-size: clamp(12px, .85vw, 18px);
	font-weight: 850;
	letter-spacing: .14em;
	line-height: 1.18;
	text-transform: uppercase;
}

.vh-drawer-editorial-products {
	grid-area: products;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-content: start;
	gap: clamp(12px, .9vw, 18px);
	min-width: 0;
	max-height: none;
	overflow: visible;
	padding-right: 0;
	scrollbar-width: thin;
}

.vh-drawer-editorial-product {
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	min-width: 0;
	min-height: clamp(190px, 16vw, 270px);
	border: 1px solid rgba(0, 0, 0, .08);
	background: #fff;
	color: #070707;
	text-align: center;
	text-decoration: none;
	transition: border-color .5s var(--vh-menu-ease), transform .72s var(--vh-menu-ease), box-shadow .72s var(--vh-menu-ease);
}

.vh-drawer-editorial-product:hover {
	border-color: rgba(0, 0, 0, .22);
	box-shadow: 0 20px 48px rgba(0, 0, 0, .06);
	transform: translate3d(0, -3px, 0);
}

.vh-drawer-editorial-product-img {
	min-height: clamp(130px, 11vw, 198px);
	background: #fff;
	overflow: hidden;
}

.vh-drawer-editorial-product img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: clamp(12px, 1vw, 20px);
	transition: transform .9s var(--vh-menu-ease);
}

.vh-drawer-image-failed {
	position: relative;
	background: #fff;
}

.vh-drawer-image-failed img {
	display: none !important;
}

.vh-drawer-image-failed::after {
	content: "VERTU";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: rgba(0, 0, 0, .28);
	font-size: 13px;
	font-weight: 850;
	letter-spacing: .28em;
}

.vh-drawer-editorial-hero-img.vh-drawer-image-failed::after,
.vh-drawer-gift-img.vh-drawer-image-failed::after {
	color: rgba(255, 255, 255, .58);
}

.vh-drawer-editorial-product:hover img {
	transform: scale(1.07);
}

/* Selected personalization menu direction: make the collection catalogue image-led. */
@media (min-width: 1081px) {
	.vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-alphafold):not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-products {
		max-height: calc(100vh - 92px);
		overflow-x: hidden;
		overflow-y: auto;
		padding-right: clamp(6px, .55vw, 12px);
		gap: clamp(16px, 1.25vw, 24px);
	}

	.vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-alphafold):not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-product {
		min-height: clamp(320px, 28vw, 440px);
	}

	.vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-alphafold):not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-product-img {
		min-height: clamp(240px, 23vw, 360px);
	}

	.vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-alphafold):not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-product img {
		padding: clamp(8px, .65vw, 14px);
	}

	.vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-alphafold):not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-product strong {
		min-height: clamp(58px, 4.6vw, 72px);
		padding: 12px 12px 15px;
		font-size: clamp(15px, 1.02vw, 19.5px);
		letter-spacing: .11em;
	}
}

.vh-drawer-editorial-product strong {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 10px 8px 12px;
	color: #070707;
	font-size: clamp(12px, .81vw, 15px);
	font-weight: 850;
	letter-spacing: .1em;
	line-height: 1.25;
	text-transform: uppercase;
}

.vh-drawer-editorial-placeholder {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 120px;
	color: rgba(0, 0, 0, .24);
	font-size: 18px;
	font-weight: 850;
	letter-spacing: .28em;
}

.vh-drawer-editorial-hero .vh-drawer-editorial-placeholder {
	color: rgba(255, 255, 255, .5);
}

.vh-drawer-editorial-copy,
.vh-drawer-editorial-hero,
.vh-drawer-editorial-products,
.vh-drawer-bespoke-gallery {
	opacity: 0;
	transform: translate3d(22px, 0, 0);
	transition: opacity .88s var(--vh-menu-ease-soft), transform 1.08s var(--vh-menu-ease);
}

.vh-drawer-editorial.is-visible-in-flyout .vh-drawer-editorial-copy,
.vh-drawer-editorial.is-visible-in-flyout .vh-drawer-editorial-hero,
.vh-drawer-editorial.is-visible-in-flyout .vh-drawer-editorial-products,
.vh-drawer-editorial.is-visible-in-flyout .vh-drawer-bespoke-gallery {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.vh-drawer-editorial.is-visible-in-flyout .vh-drawer-editorial-hero {
	transition-delay: .08s;
}

.vh-drawer-editorial.is-visible-in-flyout .vh-drawer-editorial-products {
	transition-delay: .16s;
}

.vh-drawer-editorial.is-visible-in-flyout .vh-drawer-bespoke-gallery {
	transition-delay: .18s;
}

.vh-drawer-editorial-bespoke {
	grid-template-columns: minmax(230px, .42fr) minmax(320px, .58fr);
	grid-template-rows: auto auto;
	grid-template-areas:
		"copy hero"
		"products products";
	align-items: stretch;
	gap: clamp(12px, 1vw, 20px) clamp(18px, 1.45vw, 30px);
	min-height: min(460px, calc(100vh - clamp(108px, 8.8vw, 148px)));
}

.vh-drawer-editorial-bespoke .vh-drawer-editorial-copy {
	align-self: start;
	max-width: none;
	padding: clamp(4px, .55vw, 10px) 0;
}

.vh-drawer-editorial-bespoke .vh-drawer-editorial-copy small {
	color: #9d8454;
}

.vh-drawer-editorial-bespoke .vh-drawer-editorial-copy h3 {
	max-width: none;
	font-size: clamp(23px, 1.48vw, 34px);
	line-height: 1.08;
	letter-spacing: .08em;
	overflow-wrap: normal;
}

.vh-drawer-editorial-bespoke .vh-drawer-editorial-copy p {
	max-width: 31em;
	margin-bottom: clamp(10px, .85vw, 16px);
	font-size: clamp(11px, .68vw, 13px);
	line-height: 1.55;
}

.vh-drawer-bespoke-features {
	display: grid;
	max-width: 100%;
	margin: clamp(10px, .85vw, 16px) 0 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid rgba(0, 0, 0, .12);
}

.vh-drawer-bespoke-features li {
	padding: clamp(7px, .52vw, 11px) 0;
	border-bottom: 1px solid rgba(0, 0, 0, .12);
	color: #050505;
	font-size: clamp(8px, .54vw, 10px);
	font-weight: 850;
	letter-spacing: .2em;
	line-height: 1.25;
	text-transform: uppercase;
	transition: color .45s var(--vh-menu-ease), transform .72s var(--vh-menu-ease);
}

.vh-drawer-bespoke-features li:hover {
	color: #9d8454;
	transform: translate3d(8px, 0, 0);
}

.vh-drawer-bespoke-card {
	position: relative;
	grid-area: hero;
	display: flex;
	align-items: flex-end;
	justify-self: stretch;
	width: 100%;
	min-height: clamp(122px, 11vw, 210px);
	overflow: hidden;
	padding: clamp(16px, 1.3vw, 28px);
	background:
		radial-gradient(circle at 78% 18%, rgba(199, 173, 114, .12), transparent 30%),
		linear-gradient(135deg, #030303, #12110f 52%, #050505);
	color: #fff;
	text-decoration: none;
	isolation: isolate;
	transition: transform .9s var(--vh-menu-ease), box-shadow .9s var(--vh-menu-ease);
}

.vh-drawer-bespoke-card::before {
	content: "V";
	position: absolute;
	top: clamp(14px, 1.4vw, 28px);
	right: clamp(16px, 1.5vw, 30px);
	z-index: -1;
	color: rgba(199, 173, 114, .19);
	font-size: clamp(58px, 5.2vw, 104px);
	font-weight: 850;
	line-height: 1;
	letter-spacing: 0;
}

.vh-drawer-bespoke-card::after {
	content: "";
	position: absolute;
	inset: clamp(10px, .9vw, 18px);
	border: 1px solid rgba(199, 173, 114, .28);
	pointer-events: none;
}

.vh-drawer-bespoke-card span {
	position: relative;
	z-index: 1;
	display: grid;
	gap: clamp(5px, .55vw, 10px);
	max-width: 520px;
}

.vh-drawer-bespoke-card small,
.vh-drawer-bespoke-card em {
	color: rgba(255, 255, 255, .62);
	font-size: clamp(7px, .5vw, 9px);
	font-style: normal;
	font-weight: 850;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.vh-drawer-bespoke-card strong {
	color: #fff;
	font-size: clamp(20px, 1.8vw, 32px);
	font-weight: 850;
	letter-spacing: .18em;
	line-height: 1.05;
	text-transform: uppercase;
	overflow-wrap: anywhere;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-card strong {
	font-size: clamp(16px, 1.05vw, 22px);
	letter-spacing: .12em;
	line-height: 1.08;
}

.vh-drawer-bespoke-card em {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	width: fit-content;
	margin-top: 8px;
	color: #fff;
}

.vh-drawer-bespoke-card em::after {
	content: "";
	display: block;
	width: 34px;
	height: 1px;
	background: currentColor;
	transition: width .55s var(--vh-menu-ease);
}

.vh-drawer-bespoke-card:hover em::after {
	width: 62px;
}

.vh-drawer-bespoke-card:hover {
	box-shadow: 0 28px 70px rgba(0, 0, 0, .12);
	transform: translate3d(0, -4px, 0);
}

.vh-drawer-bespoke-gallery {
	grid-area: products;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-template-rows: none;
	align-self: start;
	gap: clamp(8px, .7vw, 14px);
	min-width: 0;
}

.vh-drawer-bespoke-gallery-card {
	position: relative;
	display: grid;
	grid-template-columns: minmax(54px, .36fr) minmax(0, 1fr);
	align-items: stretch;
	min-width: 0;
	min-height: clamp(86px, 6.8vw, 126px);
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, .08);
	background: #f6f6f5;
	color: #050505;
	text-decoration: none;
	transition: border-color .55s var(--vh-menu-ease), box-shadow .75s var(--vh-menu-ease), transform .75s var(--vh-menu-ease);
}

.vh-drawer-bespoke-gallery-card:nth-child(3) {
	grid-column: auto;
	grid-template-columns: minmax(54px, .36fr) minmax(0, 1fr);
}

.vh-drawer-bespoke-gallery-card:first-child {
	border-color: rgba(157, 132, 84, .22);
	background:
		radial-gradient(circle at 16% 18%, rgba(199, 173, 114, .16), transparent 38%),
		linear-gradient(135deg, #070707, #15130f 58%, #050505);
	color: #fff;
}

.vh-drawer-bespoke-gallery-card:hover {
	border-color: rgba(0, 0, 0, .22);
	box-shadow: 0 18px 48px rgba(0, 0, 0, .08);
	transform: translate3d(0, -3px, 0);
}

.vh-drawer-bespoke-gallery-card:first-child:hover {
	border-color: rgba(199, 173, 114, .48);
	box-shadow: 0 22px 58px rgba(0, 0, 0, .14);
}

	.vh-drawer-bespoke-gallery-image {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	background: #fff;
}

.vh-drawer-bespoke-gallery-card:first-child .vh-drawer-bespoke-gallery-image {
	background: #fff;
}

.vh-drawer-bespoke-gallery-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: clamp(7px, .58vw, 12px);
	transform: scale(1.01);
	transition: transform .9s var(--vh-menu-ease), filter .75s var(--vh-menu-ease);
}

.vh-drawer-bespoke-gallery-card:not(:last-child) .vh-drawer-bespoke-gallery-image img {
	transform: scale(1.18);
}

.vh-drawer-bespoke-gallery-card:hover .vh-drawer-bespoke-gallery-image img {
	filter: contrast(1.04);
	transform: scale(1.07);
}

.vh-drawer-bespoke-gallery-card:not(:last-child):hover .vh-drawer-bespoke-gallery-image img {
	transform: scale(1.26);
}

.vh-drawer-bespoke-gallery-text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	padding: clamp(9px, .7vw, 14px) clamp(9px, .78vw, 16px);
}

.vh-drawer-bespoke-gallery-text small,
.vh-drawer-bespoke-gallery-text em {
	color: rgba(0, 0, 0, .45);
	font-size: clamp(6px, .42vw, 8px);
	font-style: normal;
	font-weight: 850;
	letter-spacing: .18em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-drawer-bespoke-gallery-card:first-child .vh-drawer-bespoke-gallery-text small,
.vh-drawer-bespoke-gallery-card:first-child .vh-drawer-bespoke-gallery-text em {
	color: rgba(255, 255, 255, .62);
}

.vh-drawer-bespoke-gallery-text strong {
	display: block;
	margin: clamp(5px, .5vw, 9px) 0 clamp(7px, .62vw, 11px);
	color: inherit;
	font-size: clamp(8px, .57vw, 11px);
	font-weight: 850;
	letter-spacing: .1em;
	line-height: 1.18;
	text-transform: uppercase;
	overflow-wrap: normal;
}

.vh-drawer-bespoke-gallery-text em {
	position: relative;
	width: fit-content;
	color: currentColor;
}

.vh-drawer-bespoke-gallery-text em::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -5px;
	left: 0;
	height: 1px;
	background: currentColor;
	transform-origin: left center;
	transition: transform .6s var(--vh-menu-ease);
}

.vh-drawer-bespoke-gallery-card:hover .vh-drawer-bespoke-gallery-text em::after {
	transform: scaleX(.55);
}

.vh-drawer-collection-list a .vh-drawer-link-copy {
	display: grid;
	width: auto;
	height: auto;
	margin: 0;
	border: 0;
	opacity: 1;
	transform: none;
	transition: transform .72s var(--vh-menu-ease), opacity .55s var(--vh-menu-ease), color .55s var(--vh-menu-ease);
}

.vh-drawer-collection-list a:hover .vh-drawer-link-copy,
.vh-drawer-collection-list a.is-active .vh-drawer-link-copy {
	transform: translate3d(8px, 0, 0);
}

.vh-drawer-collection-list .vh-drawer-link-copy strong {
	font: inherit;
	line-height: inherit;
}

.vh-drawer-collection-list .vh-drawer-link-copy small {
	display: block;
	width: auto;
	height: auto;
	margin: clamp(5px, .4vw, 7px) 0 0;
	border: 0;
	color: rgba(0, 0, 0, .44);
	font-size: clamp(8px, .56vw, 10px);
	font-weight: 800;
	letter-spacing: .18em;
	line-height: 1.25;
	text-transform: uppercase;
	transform: none;
	opacity: 1;
	transition: color .55s var(--vh-menu-ease), transform .72s var(--vh-menu-ease), opacity .55s var(--vh-menu-ease);
}

.vh-drawer-collection-list a:hover .vh-drawer-link-copy small,
.vh-drawer-collection-list a.is-active .vh-drawer-link-copy small {
	color: rgba(0, 0, 0, .62);
	transform: translate3d(3px, 0, 0);
}

@media (min-width: 1900px) {
	.vh-drawer-editorial {
		grid-template-columns: minmax(340px, .9fr) minmax(520px, 1.1fr);
		grid-template-areas:
			"copy products"
			"hero products";
	}

	.vh-drawer-editorial-bespoke {
		grid-template-columns: minmax(340px, .42fr) minmax(700px, .58fr);
		grid-template-areas:
			"copy hero"
			"products products";
		gap: 26px 44px;
	}

	.vh-drawer-editorial-products {
		align-self: start;
	}
}

@media (max-width: 1180px) and (min-width: 769px) {
	.vh-menu-drawer {
		--vh-drawer-total: min(920px, 96vw);
		--vh-drawer-nav: 260px;
		--vh-drawer-flyout: calc(var(--vh-drawer-total) - var(--vh-drawer-nav));
	}

	.vh-menu-drawer.vh-menu-flyout-open {
		width: var(--vh-drawer-total);
	}

	.vh-drawer-gifts {
		width: var(--vh-drawer-flyout);
	}

	.vh-drawer-editorial {
		grid-template-columns: minmax(250px, .95fr) minmax(330px, 1.05fr);
		grid-template-rows: auto minmax(320px, 1fr);
		grid-template-areas:
			"copy products"
			"hero products";
		gap: 18px 22px;
	}

	.vh-drawer-editorial-copy {
		padding: 0;
		border: 0;
	}

	.vh-drawer-editorial-copy h3 {
		font-size: clamp(22px, 2.5vw, 30px);
	}

	.vh-drawer-editorial-copy p {
		font-size: 12px;
		line-height: 1.6;
	}

	.vh-drawer-editorial-hero {
		min-height: 330px;
	}

	.vh-drawer-editorial-products {
		gap: 10px;
	}

	.vh-drawer-editorial-product {
		min-height: 174px;
	}

	.vh-drawer-editorial-product-img {
		min-height: 116px;
	}

	.vh-drawer-editorial-bespoke {
		grid-template-columns: minmax(210px, .42fr) minmax(310px, .58fr);
		grid-template-rows: auto auto;
		grid-template-areas:
			"copy hero"
			"products products";
		gap: 12px 16px;
		min-height: 0;
	}

	.vh-drawer-editorial-bespoke .vh-drawer-editorial-copy {
		max-width: none;
		padding: 0;
	}

	.vh-drawer-bespoke-card {
		width: 100%;
		min-height: 118px;
		padding: 16px;
	}

	.vh-drawer-bespoke-gallery {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
	}

	.vh-drawer-bespoke-gallery-card {
		grid-template-columns: minmax(48px, .35fr) minmax(0, 1fr);
		min-height: 76px;
	}

	.vh-drawer-bespoke-gallery-card:nth-child(3) {
		display: grid;
		grid-column: auto;
		grid-template-columns: minmax(48px, .35fr) minmax(0, 1fr);
	}

	.vh-drawer-bespoke-gallery-text {
		padding: 9px;
	}

	.vh-drawer-bespoke-gallery-text strong {
		font-size: 8px;
		letter-spacing: .09em;
	}
}

@media (min-width: 769px) {
	.vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke {
		--vh-drawer-total: min(1060px, 96vw);
		--vh-drawer-nav: clamp(270px, 20vw, 320px);
		--vh-drawer-flyout: calc(var(--vh-drawer-total) - var(--vh-drawer-nav));
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-gifts {
		padding: clamp(18px, 1.25vw, 26px);
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-editorial-bespoke {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: clamp(190px, 30vh, 270px) auto auto;
		grid-template-areas:
			"hero"
			"copy"
			"products";
		align-content: start;
		gap: clamp(26px, 3.4vh, 46px);
		min-height: min(610px, calc(100vh - 72px));
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-editorial-copy {
		display: grid;
		align-content: start;
		gap: clamp(8px, .6vw, 12px);
		padding: 0;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-editorial-copy small {
		margin: 0;
		font-size: clamp(7px, .48vw, 9px);
		letter-spacing: .28em;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-editorial-copy h3 {
		max-width: 16em;
		margin: 0;
		font-size: clamp(27px, 1.8vw, 36px);
		letter-spacing: .08em;
		line-height: 1.04;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-editorial-copy p {
		max-width: 34em;
		margin: 0;
		font-size: clamp(10px, .64vw, 12px);
		line-height: 1.48;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-features {
		display: none;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-card {
		align-self: stretch;
		width: 100%;
		min-height: 100%;
		padding: clamp(16px, 1.1vw, 22px);
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-card::before {
		top: clamp(8px, .8vw, 16px);
		right: clamp(12px, 1vw, 20px);
		font-size: clamp(74px, 5.6vw, 112px);
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-card::after {
		inset: clamp(8px, .7vw, 14px);
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-card small,
	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-card em {
		font-size: clamp(6px, .42vw, 8px);
		letter-spacing: .2em;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-card strong {
		font-size: clamp(20px, 1.42vw, 28px);
		letter-spacing: .12em;
		line-height: 1.05;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: clamp(10px, .8vw, 14px);
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card,
	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card:nth-child(3) {
		grid-column: auto;
		grid-template-columns: minmax(76px, .34fr) minmax(0, 1fr);
		min-height: clamp(82px, 6.2vw, 106px);
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text {
		padding: clamp(8px, .62vw, 12px);
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text small,
	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text em {
		font-size: clamp(5.5px, .38vw, 7px);
		letter-spacing: .17em;
	}

	.vh-menu-drawer.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text strong {
		margin: clamp(4px, .35vw, 7px) 0 clamp(6px, .46vw, 9px);
		font-size: clamp(8px, .56vw, 10px);
		letter-spacing: .08em;
		line-height: 1.16;
		overflow-wrap: normal;
	}
}

@media (max-width: 768px) {
	.vh-mobile-flyout-panel {
		background: #fff;
	}

	.vh-mobile-flyout-panel.is-open {
		max-height: 5600px;
		padding: 18px 0 28px;
	}

	.vh-mobile-flyout-grid {
		display: block;
	}

	.vh-mobile-flyout-panel h5 {
		display: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) {
		display: grid !important;
		grid-template-columns: 1fr;
		grid-template-areas:
			"showcase"
			"products";
		gap: 12px;
		min-height: 0;
		color: #050505;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy {
		position: relative;
		z-index: 2;
		grid-area: showcase;
		align-self: end;
		width: min(62%, 260px);
		min-width: 0;
		padding: clamp(16px, 4.3vw, 22px) clamp(14px, 4vw, 20px);
		border: 0;
		color: #fff;
		pointer-events: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy small {
		margin-bottom: 8px;
		color: #b69656;
		font-size: 8px;
		letter-spacing: .24em;
		line-height: 1.2;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy h3 {
		display: block;
		max-width: none;
		margin: 0 0 8px;
		color: #fff;
		font-size: clamp(20px, 6.8vw, 28px);
		letter-spacing: .1em;
		line-height: .98;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy p {
		max-width: 22em;
		margin: 0 0 11px;
		color: rgba(255, 255, 255, .68);
		font-size: clamp(10px, 2.8vw, 12px);
		line-height: 1.42;
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 4;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy a {
		color: #fff;
		font-size: 8px;
		letter-spacing: .2em;
		pointer-events: auto;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy a::after {
		background: currentColor;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero {
		position: relative;
		grid-area: showcase;
		display: block;
		min-height: clamp(164px, 42vw, 214px);
		border: 0;
		background: #050505;
		overflow: hidden;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero::after {
		inset: 0;
		height: auto;
		background: linear-gradient(90deg, #050505 0%, rgba(5, 5, 5, .94) 37%, rgba(5, 5, 5, .36) 72%, rgba(5, 5, 5, .08) 100%);
		z-index: 1;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero-img {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		width: clamp(118px, 41%, 176px);
		height: 100%;
		z-index: 0;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero img {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: contain !important;
		object-position: center !important;
		padding: clamp(14px, 3.2vw, 24px) !important;
		filter: none !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero strong {
		display: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-products {
		display: grid;
		grid-area: products;
		grid-template-columns: 1fr;
		gap: 10px;
		align-content: start;
		padding: 0;
		overflow: visible;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product {
		display: flex;
		align-items: stretch;
		min-height: clamp(92px, 25vw, 116px);
		border: 1px solid rgba(0, 0, 0, .08);
		background: #fff;
		overflow: hidden;
		color: #050505;
		text-align: left;
		box-shadow: none;
		transform: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product:hover {
		border-color: rgba(0, 0, 0, .18);
		box-shadow: none;
		transform: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product-img {
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
		flex: 0 0 clamp(98px, 29vw, 118px);
		max-width: clamp(98px, 29vw, 118px);
		margin: 0 !important;
		border: 0 !important;
		background: #fff;
		clip-path: none !important;
		overflow: hidden;
		rotate: 0deg !important;
		transform: none !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product-img::before,
	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product-img::after {
		content: none !important;
		display: none !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product-img img {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: contain !important;
		object-position: center !important;
		padding: clamp(9px, 2.6vw, 14px) !important;
		clip-path: none !important;
		filter: none !important;
		opacity: 1 !important;
		rotate: 0deg !important;
		transform: none !important;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product strong {
		display: flex;
		flex: 1 1 auto;
		min-width: 0;
		align-items: center;
		justify-content: flex-start;
		min-height: 0;
		padding: 12px 14px;
		color: #050505;
		font-size: clamp(13.5px, 3.83vw, 16.5px);
		letter-spacing: .1em;
		line-height: 1.18;
		text-align: left;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial-bespoke {
		grid-template-columns: 1fr;
		grid-template-areas:
			"copy"
			"hero"
			"products";
	}

	.vh-mobile-flyout-grid .vh-drawer-bespoke-card {
		min-height: 360px;
		padding: 28px;
	}

	.vh-mobile-flyout-grid .vh-drawer-bespoke-card strong {
		font-size: clamp(30px, 10vw, 44px);
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial-copy,
	.vh-mobile-flyout-grid .vh-drawer-editorial-hero,
	.vh-mobile-flyout-grid .vh-drawer-editorial-products,
	.vh-mobile-flyout-grid .vh-drawer-bespoke-card,
	.vh-mobile-flyout-grid .vh-drawer-bespoke-gallery {
		opacity: 1;
		transform: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-bespoke-gallery {
		display: grid;
		grid-template-rows: none;
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.vh-mobile-flyout-grid .vh-drawer-bespoke-gallery-card {
		min-height: 128px;
	}
}

@media (min-width: 641px) and (max-width: 768px) {
	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy {
		width: min(58%, 360px);
		padding: 24px 22px;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-copy h3 {
		font-size: clamp(24px, 4.1vw, 34px);
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero {
		min-height: clamp(200px, 27vw, 230px);
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-hero-img {
		width: clamp(170px, 32%, 240px);
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product {
		display: flex;
		min-height: 94px;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product-img {
		flex-basis: 104px;
		max-width: 104px;
	}
}

/* Product category archive showcase */
body.tax-product_cat .main-page-wrapper,
body.tax-product_cat .wd-page-content,
body.tax-product_cat .site-content {
	margin-top: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	background: #fff;
}

body.tax-product_cat .main-page-wrapper > .container,
body.tax-product_cat .wd-content-layout,
body.tax-product_cat .wd-content-area,
body.tax-product_cat .site-content {
	width: 100% !important;
	max-width: none !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

body.tax-product_cat :is(.woocommerce-products-header, .wd-shop-title, .shop-loop-head, .wd-shop-loop-head, .woocommerce-result-count, .woocommerce-ordering, .wd-products-per-page, .wd-shop-tools, .wd-active-filters, .wd-loop-footer, nav.woocommerce-pagination, .term-description) {
	display: none !important;
}

body.tax-product_cat .term-description {
	margin: 0 !important;
	padding: 0 !important;
}

body.tax-product_cat .main-page-wrapper > .container > :not(.vh-category-showcase):not(.row):empty {
	display: none !important;
}

body.tax-product_cat .main-page-wrapper .products,
body.tax-product_cat .main-page-wrapper .wd-products {
	display: none !important;
}

body.vh-cat-request .elementor-29071 .vh-shop-page,
body.tax-product_cat .elementor-29071 .vh-shop-page {
	display: none !important;
}

body.tax-product_cat .vh-category-showcase .products,
body.tax-product_cat .vh-category-showcase .wd-products {
	display: initial !important;
}

.vh-category-showcase {
	width: 100%;
	overflow: clip;
	background: #fff;
	color: #080808;
	font-family: var(--vh-font-body);
}

.vh-category-showcase :is(h1, h2, h3, p, a) {
	color: inherit;
}

.vh-category-showcase a {
	text-decoration: none;
}

.vh-category-hero {
	position: relative;
	min-height: clamp(480px, 54vw, 760px);
	overflow: hidden;
	background: #050505;
	color: #fff;
}

.vh-category-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .72), rgba(0, 0, 0, .12) 52%, rgba(0, 0, 0, .58)),
		linear-gradient(180deg, rgba(0, 0, 0, .15), rgba(0, 0, 0, .62));
	pointer-events: none;
}

.vh-category-hero-media {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #050505;
}

.vh-category-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(.94) contrast(1.04);
}

.vh-category-hero-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: inherit;
	max-width: 760px;
	padding: clamp(76px, 8vw, 118px) clamp(24px, 6vw, 96px) clamp(46px, 5.8vw, 88px);
}

.vh-category-hero h1 {
	max-width: 9em;
	margin: 0;
	font-size: clamp(44px, 7vw, 112px);
	font-weight: 850;
	line-height: .92;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vh-category-hero .elementor-widget-text-editor {
	max-width: 560px;
	margin-top: 18px;
	font-size: clamp(15px, 1.15vw, 18px);
	line-height: 1.65;
}

.vh-category-section-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: clamp(22px, 3vw, 42px);
}

.vh-category-section-head small {
	color: rgba(0, 0, 0, .5);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .26em;
	line-height: 1.1;
	text-transform: uppercase;
}

.vh-category-section-head h2 {
	margin: 0;
	color: #070707;
	font-size: clamp(26px, 3.4vw, 58px);
	font-weight: 850;
	letter-spacing: .12em;
	line-height: .98;
	text-align: right;
	text-transform: uppercase;
}

.vh-category-series,
.vh-category-products {
	padding: clamp(38px, 5vw, 76px) clamp(20px, 5.8vw, 96px);
}

.vh-category-series {
	border-bottom: 1px solid rgba(0, 0, 0, .08);
	background: #f7f7f7;
}

.vh-category-products {
        padding-bottom: clamp(40px, 5vw, 72px);
}

.vh-category-products > .vh-category-section-head {
        display: none !important;
}

body.vh-cat-request .wd-shop-tools,
body.vh-cat-request .filters-area,
body.vh-cat-request .wd-products-element,
body.vh-cat-request .products,
body.vh-cat-request .woocommerce-pagination,
body.vh-cat-request .wd-loop-footer {
	display: none !important;
}

.vh-category-series-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(12px, 1.4vw, 22px);
}

.vh-category-series-card {
	display: grid;
	grid-template-columns: minmax(88px, .48fr) minmax(0, .52fr);
	min-height: 168px;
	border: 1px solid rgba(0, 0, 0, .08);
	background: #fff;
	transition: border-color .45s var(--vh-ease), box-shadow .55s var(--vh-ease), transform .55s var(--vh-ease);
}

.vh-category-series-card:hover {
	border-color: rgba(0, 0, 0, .2);
	box-shadow: 0 20px 48px rgba(0, 0, 0, .07);
	transform: translate3d(0, -3px, 0);
}

.vh-category-series-card-img {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	overflow: hidden;
	background: #f1f1f1;
}

.vh-category-series-card-img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 14px;
	transition: transform .85s var(--vh-ease);
}

.vh-category-series-card:hover img {
	transform: scale(1.07);
}

.vh-category-series-card > span:last-child {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	padding: 18px;
}

.vh-category-series-card small {
	margin-bottom: 10px;
	color: rgba(0, 0, 0, .45);
	font-size: 9px;
	font-weight: 850;
	letter-spacing: .18em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-category-series-card strong {
	color: #080808;
	font-size: clamp(12px, .95vw, 16px);
	font-weight: 850;
	letter-spacing: .12em;
	line-height: 1.25;
	text-transform: uppercase;
}

.vh-category-product-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(18px, 2vw, 34px);
}

.vh-category-product-grid .vh-shop-product-card {
	min-height: 100%;
}

.vh-category-product-grid .vh-shop-product-card > .e-con-inner {
	height: 100%;
}

.vh-category-product-grid .vh-shop-product-card .elementor-widget-image {
	aspect-ratio: 1 / 1.05;
}

.vh-category-product-grid .vh-shop-product-card .elementor-heading-title {
	margin-top: 14px;
}

@media (max-width: 1180px) {
	.vh-category-series-grid,
	.vh-category-product-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	body.tax-product_cat .main-page-wrapper {
		padding-top: 0 !important;
	}

	.vh-category-hero {
		min-height: 620px;
	}

	.vh-category-hero-copy {
		padding: 110px 20px 42px;
	}

	.vh-category-hero h1 {
		font-size: clamp(36px, 12vw, 64px);
	}

	.vh-category-section-head {
		display: block;
	}

	.vh-category-section-head h2 {
		margin-top: 10px;
		text-align: left;
	}

	.vh-category-series,
	.vh-category-products {
		padding: 34px 20px;
	}

	.vh-category-series-grid,
	.vh-category-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px;
	}

	.vh-category-series-card {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.vh-category-series-card-img {
		aspect-ratio: 1 / .8;
	}

	.vh-category-series-card > span:last-child {
		padding: 14px;
	}
}

@media (max-width: 480px) {
	.vh-category-series-grid,
	.vh-category-product-grid {
		grid-template-columns: 1fr;
	}
}

/* Remove the inherited Woodmart top spacer below the fixed VERTU header. */
body:not(.home):not(.elementor-editor-active) .main-page-wrapper,
body:not(.home):not(.elementor-editor-active) .wd-page-content {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body:not(.home):not(.elementor-editor-active) .main-page-wrapper > .container:first-child {
	padding-top: 0 !important;
}

body.vh-constructor-page {
	width: 100%;
	margin: 0;
	overflow-x: hidden;
	background: #f5f4f1;
}

body.vh-constructor-page .main-page-wrapper,
body.vh-constructor-page .content-layout-wrapper.container {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.vh-mto-page-wrap {
	width: 100vw;
	max-width: none;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	background: #f5f4f1;
	color: #070707;
	min-height: 100svh;
}

.vh-mto-page {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(58px, 4vw, 78px) 0 clamp(14px, 2vw, 28px);
}

body.vh-constructor-page .vh-mto-page-wrap {
	width: 100vw;
	min-height: auto;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-top: max(clamp(72px, 10vh, 116px), calc(var(--vh-topbar-height, 44px) + 80px));
	background: #f5f4f1;
}

body.vh-constructor-page {
	overflow-x: clip;
}

body.vh-constructor-page .vh-mto-page {
	min-height: auto;
	padding: 0;
	background: transparent;
}

.vh-mto-native-controls {
	position: fixed;
	top: 18px;
	right: 18px;
	z-index: 100000;
	width: min(420px, calc(100vw - 36px));
	pointer-events: none;
	display: none;
}

.vh-mto-native-controls .vh-mto-request {
	display: block;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.vh-mto-native-controls .vh-mto-status {
	pointer-events: auto;
	box-shadow: 0 18px 44px rgba(0, 0, 0, .14);
}

.vh-mto-native-controls .vh-mto-status[hidden],
.vh-mto-native-controls .vh-mto-form[hidden] {
	display: none !important;
}

body.vh-mto-modal-open {
	overflow: hidden;
}

.vh-mto-contact-modal[hidden] {
	display: none !important;
}

.vh-mto-contact-modal {
	position: fixed;
	inset: 0;
	z-index: 100050;
	display: grid;
	place-items: center;
	padding: clamp(10px, 1.6vw, 28px);
}

.vh-mto-contact-backdrop {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 50% 18%, rgba(218, 181, 96, .12), transparent 34%),
		rgba(5, 5, 5, .72);
	backdrop-filter: blur(12px);
}

.vh-mto-contact-dialog {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(300px, .8fr) minmax(430px, 1.2fr);
	grid-template-rows: minmax(0, 1fr);
	width: min(1120px, calc(100vw - clamp(20px, 3vw, 56px)));
	max-height: min(760px, calc(100svh - clamp(20px, 3vw, 56px)));
	overflow: hidden;
	border: 1px solid rgba(211, 176, 95, .24);
	background: #fff;
	box-shadow:
		0 34px 100px rgba(0, 0, 0, .34),
		inset 0 0 0 1px rgba(255, 255, 255, .68);
	color: #070707;
}

.vh-mto-contact-close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 4;
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border: 1px solid rgba(0, 0, 0, .12);
	background: rgba(255, 255, 255, .94);
	color: #050505;
	font-size: 30px;
	font-weight: 300;
	line-height: 1;
	transition: background .25s ease, color .25s ease, border-color .25s ease;
}

.vh-mto-contact-close:hover,
.vh-mto-contact-close:focus {
	border-color: #050505;
	background: #050505;
	color: #fff;
}

.vh-mto-contact-preview {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(380px, 48vh, 660px);
	overflow: hidden;
	padding: clamp(34px, 4.2vw, 64px) clamp(24px, 3vw, 48px) clamp(116px, 8vw, 142px);
	background:
		radial-gradient(circle at 50% 42%, rgba(217, 193, 141, .22), transparent 32%),
		linear-gradient(135deg, #080808, #191814 58%, #050505);
	color: #fff;
	isolation: isolate;
}

.vh-mto-contact-preview::before {
	content: "";
	position: absolute;
	inset: clamp(20px, 1.8vw, 30px);
	z-index: -1;
	border: 1px solid rgba(217, 193, 141, .24);
}

.vh-mto-contact-preview::after {
	content: "V";
	position: absolute;
	top: clamp(28px, 3vw, 56px);
	right: clamp(28px, 3vw, 56px);
	z-index: -1;
	color: rgba(217, 193, 141, .14);
	font-size: clamp(92px, 10vw, 170px);
	font-weight: 850;
	line-height: 1;
}

.vh-mto-contact-preview img {
	display: block;
	width: min(88%, 390px);
	height: min(72%, 430px);
	max-height: 430px;
	object-fit: contain;
	filter: drop-shadow(0 26px 38px rgba(0, 0, 0, .42));
	transition: opacity .35s ease, transform .7s var(--vh-ease);
}

.vh-mto-contact-dialog.is-preview-loading .vh-mto-contact-preview img {
	opacity: .45;
}

.vh-mto-contact-preview-caption {
	position: absolute;
	right: clamp(26px, 2.2vw, 42px);
	bottom: clamp(28px, 2.5vw, 46px);
	left: clamp(26px, 2.2vw, 42px);
	display: grid;
	gap: 8px;
}

.vh-mto-contact-preview-caption span,
.vh-mto-contact-preview-caption small,
.vh-mto-contact-content > span {
	display: block;
	color: rgba(255, 255, 255, .64);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .28em;
	line-height: 1.25;
	text-transform: uppercase;
}

.vh-mto-contact-preview-caption strong {
	color: #fff;
	font-size: clamp(18px, 1.35vw, 24px);
	font-weight: 850;
	letter-spacing: .18em;
	line-height: 1.1;
	text-transform: uppercase;
}

.vh-mto-contact-preview-caption small {
	max-width: 30em;
	color: rgba(255, 255, 255, .58);
	font-size: 10px;
	letter-spacing: .18em;
	line-height: 1.55;
}

.vh-mto-contact-content {
	display: grid;
	align-content: safe center;
	gap: clamp(18px, 1.5vw, 25px);
	min-width: 0;
	min-height: 0;
	max-height: 100%;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: clamp(30px, 3.4vw, 60px) clamp(30px, 3.4vw, 56px);
}

.vh-mto-contact-content::-webkit-scrollbar {
	width: 6px;
}

.vh-mto-contact-content::-webkit-scrollbar-thumb {
	background: rgba(0, 0, 0, .22);
	border-radius: 3px;
}

.vh-mto-contact-content::-webkit-scrollbar-track {
	background: transparent;
}

.vh-mto-contact-content > span {
	margin: 0;
	color: rgba(0, 0, 0, .46);
}

.vh-mto-contact-dialog h2 {
	max-width: 540px;
	margin: 0;
	color: #050505;
	font-size: clamp(34px, 3.4vw, 54px);
	font-weight: 850;
	letter-spacing: .07em;
	line-height: 1.02;
	text-transform: uppercase;
}

.vh-mto-contact-dialog p {
	max-width: 560px;
	margin: 0;
	color: rgba(0, 0, 0, .62);
	font-size: clamp(14px, .95vw, 16px);
	line-height: 1.65;
}

.vh-mto-contact-dialog .vh-mto-contact-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(16px, 1.3vw, 22px);
	align-items: start;
	margin-top: 2px;
}

.vh-mto-contact-dialog .vh-mto-contact-form > label {
	min-width: 0;
}

.vh-mto-contact-form .vh-mto-comment-field,
.vh-mto-contact-form button {
	grid-column: 1 / -1;
}

.vh-mto-contact-form textarea {
	min-height: 118px;
}

.vh-mto-contact-dialog .vh-mto-contact-form input,
.vh-mto-contact-dialog .vh-mto-contact-form textarea {
	border: 0;
	border-bottom: 1px solid rgba(0, 0, 0, .18);
	background: transparent;
	font-size: 17px;
}

.vh-mto-contact-dialog .vh-mto-contact-form input {
	height: 50px;
	padding: 0;
}

.vh-mto-contact-dialog .vh-mto-contact-form textarea {
	padding: 12px 0;
}

.vh-mto-contact-dialog .vh-mto-contact-form input:focus,
.vh-mto-contact-dialog .vh-mto-contact-form textarea:focus {
	border-color: rgba(0, 0, 0, .64);
	box-shadow: 0 1px 0 rgba(0, 0, 0, .5);
}

.vh-mto-contact-dialog .vh-mto-contact-form input.is-invalid {
	border-color: rgba(159, 45, 32, .76);
	background: #fff8f6;
	box-shadow: 0 1px 0 rgba(159, 45, 32, .36);
}

.vh-mto-contact-dialog .vh-mto-contact-form button {
	min-height: 60px;
	margin-top: 2px;
	background: #050505;
	color: #fff;
	box-shadow: 0 18px 44px rgba(0, 0, 0, .16);
}

.vh-mto-contact-dialog .vh-mto-contact-form button:hover,
.vh-mto-contact-dialog .vh-mto-contact-form button:focus {
	border-color: #b9954e;
	background: linear-gradient(90deg, #d8bd7a, #a7803d);
	color: #060606;
}

.vh-mto-intro {
	display: grid;
	grid-template-columns: minmax(0, .52fr) minmax(420px, .48fr);
	gap: clamp(14px, 2.2vw, 34px);
	align-items: start;
	width: min(1680px, calc(100% - clamp(20px, 3.2vw, 56px)));
	max-width: 1680px;
	margin: 0 auto clamp(10px, 1.4vw, 18px);
	padding: 0 0 clamp(12px, 1.4vw, 18px);
	border-bottom: 1px solid rgba(0, 0, 0, .08);
}

.vh-mto-intro span,
.vh-mto-panel > span {
	color: rgba(0, 0, 0, .48);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .34em;
	text-transform: uppercase;
}

.vh-mto-intro span {
	grid-column: 1 / -1;
}

.vh-mto-intro h1 {
	grid-column: 1;
	margin: 0;
	color: #070707;
	font-size: clamp(30px, 2.8vw, 48px);
	font-weight: 850;
	letter-spacing: .05em;
	line-height: 1;
	text-transform: uppercase;
}

.vh-mto-intro p {
	grid-column: 1;
	max-width: 620px;
	margin: 0;
	color: rgba(0, 0, 0, .62);
	font-size: clamp(14px, .95vw, 16px);
	line-height: 1.55;
}

.vh-mto-request {
	grid-column: 2;
	grid-row: 2 / span 2;
	display: grid;
	gap: 10px;
	align-self: stretch;
	padding: clamp(14px, 1.15vw, 18px);
	border: 1px solid rgba(0, 0, 0, .1);
	background: #fff;
	box-shadow: 0 18px 48px rgba(0, 0, 0, .06);
}

.vh-mto-layout {
	display: block;
	width: 100%;
}

.vh-mto-frame-shell {
	position: relative;
	width: calc(100% - clamp(18px, 2.6vw, 48px));
	max-width: none;
	height: min(70svh, 780px);
	min-height: 520px;
	margin-inline: auto;
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, .1);
	background: #f8f8f8;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .08);
}

body.vh-constructor-page .vh-mto-frame-shell {
	width: min(100%, calc(100vw - clamp(18px, 2.2vw, 44px)));
	height: clamp(640px, 82vh, 900px);
	min-height: 640px;
	margin: 0 auto;
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, .08);
	background: #f8f8f8;
	box-shadow: 0 22px 70px rgba(0, 0, 0, .08);
}

@supports (height: 100svh) {
	body.vh-constructor-page .vh-mto-frame-shell {
		height: clamp(640px, 82svh, 900px);
	}
}

.vh-mto-frame-shell iframe {
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	height: 100%;
	min-height: inherit;
	overflow: hidden;
	border: 0;
	background: #f8f8f8;
}

.vh-mto-frame-loader {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f5f4f1;
	transition: opacity .45s var(--vh-ease), visibility .45s var(--vh-ease);
}

.vh-mto-frame-loader span {
	color: rgba(0, 0, 0, .5);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .28em;
	text-transform: uppercase;
}

.vh-mto-page.is-loaded .vh-mto-frame-loader {
	visibility: hidden;
	opacity: 0;
}

.vh-mto-panel {
	position: sticky;
	top: 74px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-self: start;
	max-height: calc(100vh - 96px);
	overflow-y: auto;
	padding: clamp(22px, 2vw, 32px);
	border: 1px solid rgba(0, 0, 0, .1);
	background: #fff;
	color: #050505;
	box-shadow: 0 20px 55px rgba(0, 0, 0, .07);
}

.vh-mto-panel > span {
	color: rgba(0, 0, 0, .42);
}

.vh-mto-panel h2 {
	margin: 0;
	color: #050505;
	font-size: clamp(22px, 1.7vw, 32px);
	font-weight: 850;
	letter-spacing: .08em;
	line-height: 1.05;
	text-transform: uppercase;
}

.vh-mto-panel p {
	margin: 0;
	color: rgba(0, 0, 0, .62);
	font-size: 13px;
	line-height: 1.62;
}

.vh-mto-status {
	position: relative;
	display: grid;
	gap: 5px;
	overflow: hidden;
	padding: 10px 12px;
	border: 1px solid rgba(0, 0, 0, .1);
	background: #f6f4ef;
	transition: border-color .3s ease, background .3s ease, box-shadow .3s ease;
}

.vh-mto-status strong {
	color: #050505;
	font-size: 13px;
	font-weight: 850;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-mto-status small {
	color: rgba(0, 0, 0, .58);
	font-size: 12px;
	line-height: 1.45;
}

.vh-mto-status.is-loading {
	background: #f2f2f2;
}

.vh-mto-status.is-success {
	border-color: rgba(28, 118, 66, .24);
	background: #eef8f2;
}

.vh-mto-status.is-order-success {
	border-color: rgba(207, 169, 83, .82);
	background:
		linear-gradient(135deg, #050505 0%, #11100c 52%, #2a2010 100%);
	box-shadow:
		0 18px 44px rgba(0, 0, 0, .18),
		0 0 0 1px rgba(207, 169, 83, .14),
		inset 0 0 0 1px rgba(255, 255, 255, .06);
}

.vh-mto-status.is-order-success::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(110deg, transparent 0%, rgba(240, 205, 128, .18) 44%, transparent 70%);
	pointer-events: none;
	transform: translateX(-120%);
	animation: vh-mto-status-shine 2.8s ease-in-out infinite;
}

.vh-mto-status.is-order-success strong {
	position: relative;
	color: #f4d990;
	text-shadow: 0 0 18px rgba(207, 169, 83, .28);
}

.vh-mto-status.is-order-success small {
	position: relative;
	color: rgba(255, 255, 255, .82);
}

.vh-mto-status.is-error {
	border-color: rgba(168, 43, 43, .24);
	background: #fff0ee;
}

.vh-mto-toast[hidden] {
	display: none !important;
}

.vh-mto-toast {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 100090;
	display: grid;
	gap: 10px;
	width: min(460px, calc(100vw - 36px));
	overflow: hidden;
	padding: clamp(24px, 3vw, 34px);
	border: 1px solid rgba(207, 169, 83, .62);
	background:
		radial-gradient(circle at 82% 12%, rgba(207, 169, 83, .18), transparent 38%),
		linear-gradient(135deg, #050505 0%, #11100c 58%, #2b2111 100%);
	color: #fff;
	box-shadow:
		0 30px 90px rgba(0, 0, 0, .34),
		0 0 0 9999px rgba(0, 0, 0, .18),
		inset 0 0 0 1px rgba(255, 255, 255, .07);
	opacity: 0;
	pointer-events: none;
	transform: translate3d(-50%, calc(-50% + 14px), 0) scale(.96);
	transition:
		opacity .35s ease,
		transform .42s var(--vh-menu-ease, cubic-bezier(.22, 1, .36, 1));
}

.vh-mto-toast::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(112deg, transparent 0%, rgba(244, 217, 144, .24) 44%, transparent 70%);
	pointer-events: none;
	transform: translateX(-120%);
	animation: vh-mto-status-shine 3s ease-in-out infinite;
}

.vh-mto-toast::after {
	content: "";
	position: absolute;
	right: 22px;
	bottom: 12px;
	width: 72px;
	height: 72px;
	border: 1px solid rgba(207, 169, 83, .22);
	background: rgba(207, 169, 83, .06);
	clip-path: polygon(50% 0, 100% 32%, 80% 100%, 20% 100%, 0 32%);
	opacity: .55;
}

.vh-mto-toast.is-visible {
	opacity: 1;
	transform: translate3d(-50%, -50%, 0) scale(1);
}

.vh-mto-toast span,
.vh-mto-toast strong,
.vh-mto-toast small {
	position: relative;
	z-index: 1;
}

.vh-mto-toast span {
	color: #cfa953;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .34em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-mto-toast strong {
	color: #f4d990;
	font-size: clamp(22px, 2.1vw, 32px);
	font-weight: 850;
	letter-spacing: .12em;
	line-height: 1.08;
	text-transform: uppercase;
	text-shadow: 0 0 20px rgba(207, 169, 83, .28);
}

.vh-mto-toast small {
	max-width: 34em;
	color: rgba(255, 255, 255, .82);
	font-size: 14px;
	line-height: 1.55;
}

.vh-mto-toast.is-loading {
	border-color: rgba(255, 255, 255, .22);
	background:
		radial-gradient(circle at 82% 12%, rgba(255, 255, 255, .1), transparent 38%),
		linear-gradient(135deg, #080808 0%, #171717 100%);
}

.vh-mto-toast.is-loading strong {
	color: #fff;
}

.vh-mto-toast.is-error {
	border-color: rgba(168, 43, 43, .5);
	background:
		radial-gradient(circle at 82% 12%, rgba(168, 43, 43, .18), transparent 38%),
		linear-gradient(135deg, #150606 0%, #25100d 100%);
}

.vh-mto-toast.is-error strong {
	color: #ffd7cf;
	text-shadow: none;
}

@keyframes vh-mto-status-shine {
	0%,
	42% {
		transform: translateX(-120%);
	}

	72%,
	100% {
		transform: translateX(120%);
	}
}

.vh-mto-form {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, .8fr) minmax(0, 1fr) minmax(146px, .65fr);
	gap: 10px;
	align-items: end;
	margin-top: 0;
}

.vh-mto-form label {
	display: grid;
	gap: 8px;
	margin: 0;
}

.vh-mto-form label span {
	color: rgba(0, 0, 0, .62);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-mto-field-error {
	display: block;
	margin-top: -2px;
	color: #9f2d20;
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.35;
}

.vh-mto-field-error[hidden] {
	display: none !important;
}

.vh-mto-form input,
.vh-mto-form textarea {
	width: 100%;
	border: 1px solid rgba(0, 0, 0, .13);
	border-radius: 0;
	background: #fff;
	color: #050505;
	font-size: 15px;
	line-height: 1.45;
	outline: none;
	transition: border-color .25s ease, box-shadow .25s ease;
}

.vh-mto-form input {
	height: 44px;
	padding: 0 12px;
}

.vh-mto-form textarea {
	min-height: 112px;
	padding: 14px;
	resize: vertical;
}

.vh-mto-form input:focus,
.vh-mto-form textarea:focus {
	border-color: rgba(0, 0, 0, .56);
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .42);
}

.vh-mto-form input.is-invalid {
	border-color: rgba(159, 45, 32, .76);
	background: #fff8f6;
	box-shadow: inset 0 0 0 1px rgba(159, 45, 32, .32);
}

.vh-mto-form button {
	min-width: 0;
	min-height: 44px;
	padding: 0 12px;
	border: 1px solid #050505;
	background: #050505;
	color: #fff;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .14em;
	line-height: 1.15;
	text-transform: uppercase;
	transition: background .3s ease, color .3s ease;
}

.vh-mto-form button:hover {
	background: #fff;
	color: #050505;
}

@media (max-width: 1120px) {
	.vh-mto-intro {
		grid-template-columns: 1fr;
	}

	.vh-mto-intro h1,
	.vh-mto-intro p,
	.vh-mto-request {
		grid-column: auto;
		grid-row: auto;
		max-width: 840px;
	}

	.vh-mto-request {
		max-width: none;
	}

	.vh-mto-frame-shell {
		width: calc(100% - 20px);
		height: min(64svh, 720px);
		min-height: 420px;
	}

	.vh-mto-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vh-mto-form label:last-of-type,
	.vh-mto-form button {
		grid-column: span 2;
	}

	.vh-mto-form button {
		width: 100%;
	}
}

@media (max-width: 760px) {
	body.vh-constructor-page .vh-mto-page-wrap {
		padding-top: clamp(34px, 7vh, 62px);
	}

	.vh-mto-page {
		padding: 62px 0 14px;
	}

	.vh-mto-contact-modal {
		align-items: end;
		padding: 12px;
	}

	.vh-mto-contact-dialog {
		grid-template-columns: 1fr;
		width: 100%;
		max-height: calc(100svh - 24px);
		overflow-y: auto;
		padding: 0;
	}

	.vh-mto-contact-close {
		top: 12px;
		right: 12px;
		width: 42px;
		height: 42px;
		font-size: 27px;
	}

	.vh-mto-contact-preview {
		min-height: 220px;
		padding: 34px 18px 72px;
	}

	.vh-mto-contact-preview::before {
		inset: 14px;
	}

	.vh-mto-contact-preview img {
		width: min(76%, 260px);
		height: 130px;
		max-height: 130px;
	}

	.vh-mto-contact-preview-caption {
		right: 20px;
		bottom: 18px;
		left: 20px;
		gap: 5px;
	}

	.vh-mto-contact-preview-caption strong {
		font-size: 15px;
	}

	.vh-mto-contact-preview-caption small {
		font-size: 9px;
		letter-spacing: .22em;
	}

	.vh-mto-contact-content {
		gap: 13px;
		padding: 20px 18px 18px;
	}

	.vh-mto-contact-content > span {
		padding-right: 42px;
		letter-spacing: .22em;
	}

	.vh-mto-contact-dialog h2 {
		padding-right: 42px;
		font-size: 27px;
	}

	.vh-mto-contact-dialog .vh-mto-contact-form {
		grid-template-columns: 1fr;
	}

	.vh-mto-contact-form .vh-mto-comment-field,
	.vh-mto-contact-form button {
		grid-column: auto;
	}

	.vh-mto-contact-dialog .vh-mto-contact-form input {
		height: 46px;
	}

	.vh-mto-contact-form textarea {
		min-height: 76px;
	}

	.vh-mto-contact-dialog .vh-mto-contact-form button {
		min-height: 54px;
	}

	.vh-mto-intro {
		gap: 12px;
		width: calc(100% - 20px);
		margin: 0 auto 14px;
	}

	.vh-mto-intro h1 {
		font-size: clamp(30px, 10vw, 46px);
		letter-spacing: .04em;
	}

	.vh-mto-intro p {
		font-size: 14px;
		line-height: 1.55;
	}

	.vh-mto-frame-shell {
		width: calc(100% - 12px);
		height: 62svh;
		min-height: 360px;
	}

	body.vh-constructor-page .vh-mto-frame-shell {
		width: calc(100vw - 12px);
		height: clamp(560px, 76svh, 760px);
		min-height: 560px;
	}

	.vh-mto-request {
		padding: 16px;
	}

	.vh-mto-form {
		grid-template-columns: 1fr;
	}

	.vh-mto-form label:last-of-type,
	.vh-mto-form button {
		grid-column: auto;
	}
}

.vh-curated-page {
	--vh-curated-ink: #090909;
	--vh-curated-muted: rgba(9, 9, 9, .58);
	--vh-curated-line: rgba(9, 9, 9, .12);
	width: min(100% - 32px, 1720px);
	margin: 0 auto;
	padding: clamp(22px, 2.4vw, 42px) 0 clamp(70px, 7vw, 120px);
	color: var(--vh-curated-ink);
}

.vh-curated-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 9px;
	margin-bottom: clamp(18px, 2vw, 32px);
	color: rgba(0, 0, 0, .42);
	font-size: 11px;
	font-weight: 760;
	letter-spacing: .18em;
	line-height: 1.4;
	text-transform: uppercase;
}

.vh-curated-breadcrumbs a {
	color: inherit;
	text-decoration: none;
	transition: color .25s ease;
}

.vh-curated-breadcrumbs a:hover,
.vh-curated-breadcrumbs strong {
	color: #060606;
}

.vh-curated-hero {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(420px, .78fr);
	min-height: clamp(520px, 43vw, 720px);
	border-top: 1px solid var(--vh-curated-line);
	border-bottom: 1px solid var(--vh-curated-line);
	background:
		linear-gradient(120deg, rgba(255, 255, 255, .94), rgba(246, 244, 239, .7)),
		#f7f5f0;
	overflow: hidden;
}

.vh-curated-page--dark .vh-curated-hero {
	background:
		radial-gradient(circle at 76% 20%, rgba(184, 145, 74, .18), transparent 32%),
		linear-gradient(120deg, #060606 0%, #14120e 54%, #f6f3ed 54.2%, #f7f5f0 100%);
	color: #fff;
}

.vh-curated-page--dark .vh-curated-hero h1,
.vh-curated-page--dark .vh-curated-hero-product-copy strong {
	color: #fff;
}

.vh-curated-hero-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 760px;
	padding: clamp(42px, 6vw, 104px);
}

.vh-curated-hero-copy > span,
.vh-curated-section-head small,
.vh-curated-hero-product-copy small {
	display: block;
	color: #a9874a;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .32em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-curated-hero h1 {
	max-width: 860px;
	margin: 22px 0 0;
	font-size: clamp(48px, 6.4vw, 112px);
	font-weight: 850;
	letter-spacing: .08em;
	line-height: .94;
	text-transform: uppercase;
}

/* The "New arrivals" headline shares a row with the focused product card. */
.vh-curated-page--novinki .vh-curated-hero h1 {
	max-width: 570px;
	font-size: clamp(44px, 5vw, 82px);
	line-height: .98;
}

.vh-curated-hero p {
	max-width: 650px;
	margin: clamp(24px, 2.7vw, 44px) 0 0;
	color: var(--vh-curated-muted);
	font-size: clamp(17px, 1.25vw, 22px);
	line-height: 1.62;
}

.vh-curated-page--dark .vh-curated-hero p {
	color: rgba(255, 255, 255, .68);
}

.vh-curated-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: clamp(30px, 3.2vw, 54px);
}

.vh-curated-hero-actions a,
.vh-curated-collection-row a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 22px;
	border: 1px solid currentColor;
	color: inherit;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .2em;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	transition: background .28s ease, color .28s ease, transform .28s ease;
}

.vh-curated-hero-actions a:first-child {
	background: #050505;
	border-color: #050505;
	color: #fff;
}

.vh-curated-page--dark .vh-curated-hero-actions a:not(:first-child) {
	color: #fff;
}

.vh-curated-page--dark .vh-curated-hero-actions a:first-child {
	background: #fff;
	border-color: #fff;
	color: #050505;
}

.vh-curated-hero-actions a:hover,
.vh-curated-collection-row a:hover {
	transform: translate3d(0, -2px, 0);
}

.vh-curated-hero-product {
	position: relative;
	display: grid;
	grid-template-rows: 1fr auto;
	min-height: 100%;
	color: inherit;
	text-decoration: none;
}

.vh-curated-hero-product::before {
	content: "";
	position: absolute;
	inset: clamp(18px, 2vw, 34px);
	border: 1px solid rgba(169, 135, 74, .24);
	pointer-events: none;
}

.vh-curated-hero-product-media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	padding: clamp(34px, 4vw, 70px);
	background: linear-gradient(150deg, rgba(0, 0, 0, .04), rgba(0, 0, 0, 0));
}

.vh-curated-hero-product-media img {
	width: min(74%, 520px);
	max-height: clamp(360px, 34vw, 590px);
	object-fit: contain;
	filter: drop-shadow(0 28px 42px rgba(0, 0, 0, .2));
	transition: transform .5s ease;
}

.vh-curated-page--dark .vh-curated-hero-product-media img {
	filter: drop-shadow(0 28px 46px rgba(0, 0, 0, .48));
}

.vh-curated-hero-product:hover img {
	transform: translate3d(0, -8px, 0) scale(1.025);
}

.vh-curated-hero-product-copy {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 10px;
	padding: clamp(26px, 3vw, 48px);
	background: rgba(255, 255, 255, .78);
	backdrop-filter: blur(12px);
}

.vh-curated-page--dark .vh-curated-hero-product-copy {
	background: rgba(5, 5, 5, .72);
}

.vh-curated-hero-product-copy strong {
	max-width: 520px;
	font-size: clamp(22px, 2vw, 34px);
	font-weight: 850;
	letter-spacing: .1em;
	line-height: 1.08;
	text-transform: uppercase;
}

.vh-curated-hero-product-copy em {
	color: var(--vh-curated-muted);
	font-style: normal;
	font-size: 14px;
	font-weight: 700;
}

.vh-curated-page--dark .vh-curated-hero-product-copy em {
	color: rgba(255, 255, 255, .64);
}

.vh-curated-page--dark .vh-curated-hero-product-copy .vh-price-request,
.vh-curated-page--dark .vh-curated-hero-product-copy .price {
	color: rgba(255, 255, 255, .72);
}

/* The focused product in the new arrivals hero remains editorial, not transactional. */
.vh-curated-page--novinki .vh-curated-hero-product-copy em {
	display: none;
}

.vh-curated-collections,
.vh-curated-products {
	padding-top: clamp(48px, 5.6vw, 92px);
}

.vh-curated-section-head {
	display: grid;
	grid-template-columns: minmax(180px, .28fr) minmax(0, 1fr);
	gap: 18px clamp(28px, 4vw, 76px);
	align-items: end;
	margin-bottom: clamp(20px, 2.5vw, 38px);
	padding-top: clamp(18px, 2vw, 28px);
	border-top: 1px solid var(--vh-curated-line);
}

.vh-curated-section-head h2 {
	margin: 0;
	font-size: clamp(30px, 3vw, 58px);
	font-weight: 850;
	letter-spacing: .13em;
	line-height: 1.02;
	text-transform: uppercase;
}

.vh-curated-section-head p {
	grid-column: 2;
	max-width: 680px;
	margin: 0;
	color: var(--vh-curated-muted);
	font-size: 15px;
	line-height: 1.6;
}

.vh-curated-collection-row {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
}

.vh-curated-collection-row a {
	min-height: 76px;
	padding: 0 16px;
	background: #fff;
	color: #050505;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08);
}

.vh-curated-collection-row a:hover {
	background: #050505;
	color: #fff;
}

.vh-curated-product-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(14px, 1.6vw, 28px);
}

.vh-curated-product-grid .vh-shop-product-card {
	min-height: clamp(360px, 33vw, 520px);
}

.vh-curated-product-grid .vh-shop-product-card > .e-con-inner {
	min-height: inherit;
}

.vh-curated-product-grid .vh-shop-product-card .elementor-widget-image {
	min-height: clamp(230px, 23vw, 370px);
}

@media (max-width: 1180px) {
	.vh-curated-hero {
		grid-template-columns: 1fr;
	}

	.vh-curated-page--dark .vh-curated-hero {
		background:
			radial-gradient(circle at 78% 12%, rgba(184, 145, 74, .2), transparent 30%),
			#070707;
	}

	.vh-curated-page--light .vh-curated-hero-product {
		background: #f3f1ec;
	}

	.vh-curated-hero-product-media img {
		width: min(52%, 460px);
	}

	.vh-curated-product-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.vh-curated-page {
		width: min(100% - 20px, 760px);
		padding-top: 18px;
	}

	.vh-curated-hero-copy {
		padding: 34px 24px;
	}

	.vh-curated-hero h1 {
		font-size: clamp(38px, 11vw, 68px);
		letter-spacing: .07em;
	}

	.vh-curated-hero-product-media {
		padding: 22px;
	}

	.vh-curated-hero-product-media img {
		width: min(70%, 360px);
		max-height: 390px;
	}

	.vh-curated-section-head {
		grid-template-columns: 1fr;
	}

	.vh-curated-section-head p {
		grid-column: auto;
	}

	.vh-curated-collection-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vh-curated-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.vh-curated-breadcrumbs {
		font-size: 9px;
		letter-spacing: .14em;
	}

	.vh-curated-hero {
		min-height: 0;
	}

	.vh-curated-hero-actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.vh-curated-hero-actions a {
		width: 100%;
	}

	.vh-curated-hero-product-copy {
		padding: 22px;
	}

	.vh-curated-collection-row,
	.vh-curated-product-grid {
		grid-template-columns: 1fr;
	}

	.vh-curated-product-grid .vh-shop-product-card {
		min-height: 0;
	}
}

.vh-news-page {
	--vh-news-ink: #050505;
	--vh-news-muted: rgba(5, 5, 5, .58);
	--vh-news-soft: #f5f4f1;
	--vh-news-line: rgba(5, 5, 5, .12);
	--vh-news-gold: #a9874a;
	width: calc(100vw - clamp(24px, 4vw, 72px)) !important;
	max-width: 1440px;
	margin: 0 auto;
	padding: clamp(22px, 3.6vw, 58px) 0 clamp(60px, 7vw, 110px);
	color: var(--vh-news-ink);
}

body.blog .wd-page-title.title-blog,
body.single-post .wd-page-title.title-blog,
body.archive .wd-page-title.title-blog {
	display: none !important;
}

.vh-news-page a {
	color: inherit;
	text-decoration: none;
}

.vh-news-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin: 0 0 clamp(22px, 3vw, 42px);
	color: rgba(5, 5, 5, .46);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .22em;
	line-height: 1.4;
	text-transform: uppercase;
}

.vh-news-breadcrumbs a:hover {
	color: var(--vh-news-ink);
}

.vh-news-eyebrow,
.vh-news-feature-copy > span,
.vh-news-card-copy > span,
.vh-news-section-head small,
.vh-news-quick-list small {
	color: var(--vh-news-gold);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .32em;
	line-height: 1.2;
	text-transform: uppercase;
}

.vh-news-hero {
	display: grid;
	grid-template-columns: minmax(320px, .38fr) minmax(0, .62fr);
	min-height: clamp(560px, 55vw, 760px);
	border: 1px solid var(--vh-news-line);
	background: #fff;
}

.vh-news-hero-side {
	display: flex;
	flex-direction: column;
	padding: clamp(32px, 4vw, 64px);
	background: var(--vh-news-soft);
	border-right: 1px solid var(--vh-news-line);
}

.vh-news-hero-side h1,
.vh-news-single-copy h1 {
	max-width: 760px;
	margin: 20px 0 22px;
	font-size: clamp(40px, 4.1vw, 64px);
	font-weight: 900;
	letter-spacing: .1em;
	line-height: 1.02;
	text-transform: uppercase;
}

.vh-news-hero-side p,
.vh-news-single-copy p {
	max-width: 560px;
	margin: 0;
	color: var(--vh-news-muted);
	font-size: clamp(16px, 1.25vw, 20px);
	line-height: 1.65;
}

.vh-news-quick-list {
	display: grid;
	gap: 0;
	margin-top: auto;
	padding-top: clamp(28px, 4vw, 64px);
}

.vh-news-quick-list a {
	display: grid;
	grid-template-columns: 118px minmax(0, 1fr);
	gap: 20px;
	align-items: center;
	padding: 18px 0;
	border-top: 1px solid var(--vh-news-line);
}

.vh-news-quick-list img {
	width: 118px;
	aspect-ratio: 1.4 / 1;
	object-fit: cover;
	background: #080808;
	filter: saturate(.9) contrast(1.06);
	transition: transform .45s ease, filter .45s ease;
}

.vh-news-quick-list strong {
	display: block;
	margin-top: 8px;
	font-size: clamp(15px, 1.1vw, 19px);
	font-weight: 900;
	letter-spacing: .14em;
	line-height: 1.12;
	text-transform: uppercase;
}

.vh-news-quick-list a:hover img,
.vh-news-card-compact:hover img,
.vh-news-feature:hover img {
	transform: scale(1.035);
	filter: saturate(1) contrast(1.12);
}

.vh-news-feature {
	display: grid;
	grid-template-rows: minmax(330px, .56fr) auto;
	min-height: 100%;
	background: #fff;
}

.vh-news-feature-image {
	display: block;
	overflow: hidden;
	background: #050505;
}

.vh-news-feature-image img,
.vh-news-card-media img,
.vh-news-single-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .55s ease, filter .55s ease;
}

.vh-news-feature-copy {
	display: grid;
	gap: 18px;
	align-content: center;
	padding: clamp(34px, 4vw, 64px);
	border-top: 1px solid var(--vh-news-line);
}

.vh-news-feature-copy h2,
.vh-news-card-copy h3 {
	margin: 0;
	font-weight: 900;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.vh-news-feature-copy h2 {
	max-width: 760px;
	font-size: clamp(30px, 3.2vw, 58px);
	line-height: 1.02;
}

.vh-news-feature-copy p,
.vh-news-card-copy p {
	margin: 0;
	color: var(--vh-news-muted);
	line-height: 1.65;
}

.vh-news-read-link {
	justify-self: start;
	margin-top: 8px;
	padding-bottom: 7px;
	border-bottom: 2px solid currentColor;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.vh-news-list-section {
	padding-top: clamp(48px, 6vw, 96px);
}

.vh-news-section-head {
	display: grid;
	grid-template-columns: minmax(180px, .28fr) minmax(0, 1fr);
	gap: 16px clamp(30px, 5vw, 90px);
	align-items: end;
	margin-bottom: clamp(22px, 3vw, 42px);
	padding-top: 24px;
	border-top: 1px solid var(--vh-news-line);
}

.vh-news-section-head h2 {
	margin: 0;
	font-size: clamp(34px, 4vw, 70px);
	font-weight: 900;
	letter-spacing: .14em;
	line-height: .95;
	text-transform: uppercase;
}

.vh-news-card-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-top: 1px solid var(--vh-news-line);
	border-left: 1px solid var(--vh-news-line);
}

.vh-news-card-compact {
	display: grid;
	grid-template-columns: minmax(170px, .34fr) minmax(0, 1fr);
	min-height: 250px;
	border-right: 1px solid var(--vh-news-line);
	border-bottom: 1px solid var(--vh-news-line);
	background: #fff;
}

.vh-news-card-media {
	overflow: hidden;
	background: #070707;
}

.vh-news-card-copy {
	display: grid;
	gap: 12px;
	align-content: center;
	padding: clamp(22px, 2.5vw, 38px);
}

.vh-news-card-copy h3 {
	font-size: clamp(18px, 1.55vw, 28px);
	line-height: 1.1;
}

.vh-news-card-copy p {
	font-size: 14px;
}

.vh-news-page .navigation.pagination {
	margin-top: 34px;
}

.vh-news-page .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.vh-news-page .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	padding: 0 14px;
	border: 1px solid var(--vh-news-line);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh-news-page .page-numbers.current,
.vh-news-page .page-numbers:hover {
	background: #050505;
	color: #fff;
}

.vh-news-single {
	width: calc(100vw - clamp(24px, 4vw, 80px)) !important;
	max-width: 1380px;
}

.vh-news-single-article,
.vh-news-single-hero {
	width: 100%;
}

.vh-news-single-hero {
	display: grid;
	grid-template-columns: minmax(320px, .45fr) minmax(0, .55fr);
	min-height: clamp(520px, 46vw, 700px);
	border: 1px solid var(--vh-news-line);
	background: #fff;
}

.vh-news-single-copy {
	display: grid;
	align-content: center;
	padding: clamp(34px, 5vw, 78px);
	background: var(--vh-news-soft);
}

.vh-news-single-copy h1 {
	margin-top: 20px;
	font-size: clamp(36px, 3.8vw, 62px);
}

.vh-news-single-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 22px;
	margin-top: clamp(28px, 4vw, 54px);
	color: var(--vh-news-muted);
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.vh-news-single-media {
	margin: 0;
	overflow: hidden;
	background: #050505;
	min-height: clamp(420px, 46vw, 700px);
	height: 100%;
}

.vh-news-single-media img {
	min-height: 100%;
	height: 100% !important;
}

.vh-news-single-layout {
	display: grid;
	grid-template-columns: minmax(180px, 250px) minmax(0, 820px);
	gap: clamp(32px, 6vw, 96px);
	padding: clamp(42px, 6vw, 90px) 0;
	border-bottom: 1px solid var(--vh-news-line);
}

.vh-news-single-aside {
	position: sticky;
	top: 110px;
	align-self: start;
	display: grid;
	gap: 10px;
}

.vh-news-single-aside span {
	margin-bottom: 8px;
	color: var(--vh-news-muted);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .28em;
	text-transform: uppercase;
}

.vh-news-single-aside a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	border: 1px solid var(--vh-news-line);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.vh-news-single-aside a:hover {
	background: #050505;
	color: #fff;
}

.vh-news-single-body {
	display: grid;
	gap: 24px;
	font-size: clamp(18px, 1.45vw, 22px);
	line-height: 1.75;
}

.vh-news-single-body p {
	margin: 0;
	color: rgba(5, 5, 5, .72);
}

.vh-news-single-points {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	margin: clamp(18px, 3vw, 34px) 0;
	background: var(--vh-news-line);
	border: 1px solid var(--vh-news-line);
}

.vh-news-single-points span,
.vh-news-single-points strong {
	display: flex;
	align-items: center;
	min-height: 82px;
	padding: 18px;
	background: #fff;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .18em;
	line-height: 1.35;
	text-transform: uppercase;
}

.vh-news-single-points span {
	color: var(--vh-news-gold);
}

.vh-news-single-note {
	padding: 22px 26px;
	background: var(--vh-news-soft);
	border-left: 3px solid var(--vh-news-gold);
}

.vh-news-single-note p {
	color: rgba(5, 5, 5, .62);
	font-size: 15px;
	line-height: 1.6;
}

.vh-news-post-nav {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: clamp(30px, 5vw, 70px);
}

.vh-news-post-nav a {
	display: grid;
	gap: 10px;
	min-height: 128px;
	padding: clamp(22px, 3vw, 36px);
	border: 1px solid var(--vh-news-line);
	background: #fff;
}

.vh-news-post-nav small {
	color: var(--vh-news-gold);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .26em;
	text-transform: uppercase;
}

.vh-news-post-nav span {
	font-size: clamp(17px, 1.5vw, 24px);
	font-weight: 900;
	letter-spacing: .12em;
	line-height: 1.15;
	text-transform: uppercase;
}

.vh-news-post-nav a:hover {
	background: #050505;
	color: #fff;
}

@media (max-width: 1120px) {
	.vh-news-hero,
	.vh-news-single-hero {
		grid-template-columns: 1fr;
	}

	.vh-news-hero-side {
		border-right: 0;
		border-bottom: 1px solid var(--vh-news-line);
	}

	.vh-news-quick-list {
		margin-top: clamp(24px, 4vw, 42px);
	}

	.vh-news-feature {
		grid-template-rows: minmax(300px, 48vw) auto;
	}

	.vh-news-card-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 820px) {
	.vh-news-page {
		width: calc(100vw - 20px) !important;
		max-width: 760px;
		padding-top: 22px;
	}

	.vh-news-hero-side,
	.vh-news-feature-copy,
	.vh-news-single-copy {
		padding: 28px 22px;
	}

	.vh-news-hero-side h1,
	.vh-news-single-copy h1 {
		font-size: clamp(38px, 12vw, 58px);
		letter-spacing: .08em;
	}

	.vh-news-single-copy h1 {
		max-width: 100%;
		font-size: clamp(30px, 8.7vw, 42px);
		letter-spacing: .045em;
		line-height: 1.08;
		overflow-wrap: break-word;
	}

	.vh-news-single-copy p {
		max-width: 100%;
	}

	.vh-news-quick-list a,
	.vh-news-card-compact {
		grid-template-columns: 112px minmax(0, 1fr);
	}

	.vh-news-quick-list img {
		width: 112px;
	}

	.vh-news-feature-copy h2 {
		font-size: clamp(28px, 8vw, 42px);
		letter-spacing: .08em;
	}

	.vh-news-section-head,
	.vh-news-single-layout {
		grid-template-columns: 1fr;
	}

	.vh-news-single-aside {
		position: static;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.vh-news-single-aside span {
		grid-column: 1 / -1;
	}

	.vh-news-single-points,
	.vh-news-post-nav {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 560px) {
        .vh-news-breadcrumbs {
                font-size: 9px;
                letter-spacing: .14em;
        }

	.vh-news-hero {
		min-height: 0;
	}

	.vh-news-quick-list a,
	.vh-news-card-compact {
		grid-template-columns: 1fr;
	}

	.vh-news-quick-list img {
		width: 100%;
		aspect-ratio: 16 / 9;
	}

	.vh-news-card-media {
		aspect-ratio: 16 / 9;
	}

	.vh-news-single-aside {
		grid-template-columns: 1fr;
	}

        .vh-news-single-body {
                font-size: 17px;
        }
}

/* Keep the drawer close control minimal: no theme hover fill, only a precise underline. */
.vh-menu-drawer .vh-drawer-close,
.vh-menu-drawer .vh-drawer-close:hover,
.vh-menu-drawer .vh-drawer-close:focus-visible,
.vh-menu-drawer .vh-drawer-close:active {
        background: transparent !important;
        box-shadow: none !important;
        color: #070707 !important;
}

.vh-menu-drawer .vh-drawer-close {
        opacity: 1;
        text-decoration: none;
        text-underline-offset: 7px;
        text-decoration-thickness: 1px;
        transition:
                color .34s var(--vh-menu-ease),
                opacity .34s var(--vh-menu-ease),
                text-underline-offset .34s var(--vh-menu-ease);
}

.vh-menu-drawer .vh-drawer-close:hover,
.vh-menu-drawer .vh-drawer-close:focus-visible {
        opacity: .72;
        outline: none;
        text-decoration-line: underline;
        text-underline-offset: 9px;
        transform: none !important;
}

/* VERTU color switchers: segmented capsule, variant 03 */
.vh-loop-swatches {
	gap: 0;
	width: auto;
	max-width: min(100%, 310px);
	min-height: 42px;
	padding: 4px;
	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: 999px;
	background: rgba(255, 255, 255, .88);
	box-shadow: 0 16px 42px rgba(0, 0, 0, .08);
	backdrop-filter: blur(12px) saturate(142%);
	-webkit-backdrop-filter: blur(12px) saturate(142%);
}

.vh-loop-swatches.is-many {
	max-height: 96px;
}

.vh-loop-swatches.is-expanded {
	max-height: 230px;
	border-radius: 22px;
}

.vh-loop-swatch {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	min-width: 30px;
	min-height: 30px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	box-shadow: none;
	transition: transform .22s var(--vh-ease);
}

.vh-loop-swatch span {
	position: relative;
	z-index: 1;
	width: 17px;
	height: 17px;
	border: 1px solid rgba(0, 0, 0, .32);
	border-radius: 999px;
	background: var(--vh-swatch-color, #111);
	box-shadow: none;
}

.vh-loop-swatch[data-vh-swatch-style="split"] span {
	background: linear-gradient(135deg, var(--vh-swatch-color, #111) 0 50%, var(--vh-swatch-color-2, #111) 50% 100%);
}

.vh-loop-swatch[data-vh-swatch-style="triple"] span {
	background: linear-gradient(135deg, var(--vh-swatch-color, #111) 0 33.333%, var(--vh-swatch-color-2, #111) 33.333% 66.666%, var(--vh-swatch-color-3, #111) 66.666% 100%);
}

.vh-loop-swatch:hover,
.vh-loop-swatch:focus-visible {
	background: transparent;
	box-shadow: none;
	transform: scale(1.08);
}

.vh-loop-swatch:hover span,
.vh-loop-swatch:focus-visible span {
	border-color: rgba(0, 0, 0, .64);
	box-shadow: none;
	transform: none;
}

.vh-loop-swatch.is-active {
	background: transparent;
	box-shadow: none;
}

.vh-loop-swatch.is-active::after {
	content: "";
	position: absolute;
	inset: 1px;
	z-index: 0;
	display: block;
	border: 1px solid #080808;
	border-radius: 50%;
	pointer-events: none;
}

.vh-loop-swatch.is-active span {
	border-color: rgba(0, 0, 0, .72);
	box-shadow: 0 0 0 2px #fff;
}

.vh-loop-swatches-more {
	min-width: 42px;
	height: 34px;
	border: 0;
	border-radius: 999px;
	background: rgba(0, 0, 0, .06);
	box-shadow: none;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .08em;
}

.vh-loop-swatches-more:hover,
.vh-loop-swatches-more:focus-visible,
.vh-loop-swatches.is-expanded .vh-loop-swatches-more {
	background: #050505;
	color: #fff;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .14);
}

/* VERTU contact page: live map layout */
body.vh-contact-page-body {
        background: #f4f2ed;
}

body.vh-contact-page-body .main-page-wrapper,
body.vh-contact-page-body .content-layout-wrapper.container,
body.vh-contact-page-body .wd-content-layout,
body.vh-contact-page-body .site-content,
body.vh-contact-page-body .entry-content {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
}

body.vh-contact-page-body :is(.page-title, .entry-header, .wd-page-title, .title-size-default) {
        display: none !important;
}

.vh-contact-page {
        --vh-contact-bg: #f4f2ed;
        --vh-contact-paper: #fff;
        --vh-contact-ink: #070707;
        --vh-contact-muted: rgba(7, 7, 7, .62);
        --vh-contact-line: rgba(7, 7, 7, .12);
        --vh-contact-gold: #b28a45;
        width: 100vw;
        max-width: none;
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
        padding: clamp(106px, 9vw, 148px) clamp(18px, 4vw, 64px) clamp(54px, 6vw, 92px);
        background: var(--vh-contact-bg);
        color: var(--vh-contact-ink);
        font-family: var(--vh-font-body);
}

.vh-contact-page a {
        color: inherit;
        text-decoration: none;
}

.vh-contact-breadcrumbs {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: center;
        width: min(1540px, 100%);
        margin: 0 auto clamp(22px, 3vw, 42px);
        color: rgba(7, 7, 7, .48);
        font-size: 11px;
        font-weight: 850;
        letter-spacing: .22em;
        text-transform: uppercase;
}

.vh-contact-breadcrumbs a:hover {
        color: var(--vh-contact-ink);
}

.vh-contact-breadcrumbs a::after {
        content: "/";
        margin-left: 10px;
        color: rgba(7, 7, 7, .22);
}

.vh-contact-hero,
.vh-contact-map-shell,
.vh-contact-addresses,
.vh-contact-service {
        width: min(1540px, 100%);
        margin-right: auto;
        margin-left: auto;
}

.vh-contact-hero {
        display: grid;
        grid-template-columns: minmax(320px, .62fr) minmax(320px, .38fr);
        gap: clamp(28px, 5vw, 86px);
        align-items: end;
        margin-bottom: clamp(28px, 4vw, 54px);
}

.vh-contact-eyebrow {
        display: block;
        color: var(--vh-contact-gold);
        font-size: 11px;
        font-weight: 850;
        letter-spacing: .32em;
        line-height: 1.2;
        text-transform: uppercase;
}

.vh-contact-hero h1 {
        max-width: 980px;
        margin: 18px 0 0;
        color: var(--vh-contact-ink);
        font-size: clamp(46px, 7.2vw, 112px);
        font-weight: 850;
        letter-spacing: .12em;
        line-height: .92;
        text-transform: uppercase;
}

.vh-contact-hero p {
        max-width: 560px;
        margin: 0;
        color: var(--vh-contact-muted);
        font-size: clamp(16px, 1.25vw, 20px);
        line-height: 1.6;
}

.vh-contact-map-shell {
        display: grid;
        grid-template-columns: minmax(320px, 390px) minmax(0, 1fr);
        min-height: clamp(660px, 68vw, 800px);
        border: 1px solid var(--vh-contact-line);
        background: var(--vh-contact-paper);
        box-shadow: 0 30px 90px rgba(18, 16, 12, .09);
}

.vh-contact-rail {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: clamp(28px, 4vw, 52px);
        min-width: 0;
        padding: clamp(32px, 4vw, 54px);
        background:
                radial-gradient(circle at 85% 12%, rgba(178, 138, 69, .17), transparent 34%),
                linear-gradient(145deg, #080808 0%, #15130f 56%, #050505 100%);
        color: #fff;
}

.vh-contact-rail h2 {
        max-width: 340px;
        margin: 18px 0 20px;
        color: #fff;
        font-size: clamp(34px, 3.4vw, 50px);
        font-weight: 850;
        letter-spacing: .1em;
        line-height: 1;
        text-transform: uppercase;
}

.vh-contact-rail p {
        max-width: 360px;
        margin: 0;
        color: rgba(255, 255, 255, .66);
        font-size: 15px;
        line-height: 1.65;
}

.vh-contact-switcher {
        display: grid;
        gap: 10px;
}

.vh-contact-switcher button {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 5px;
        min-height: 62px;
        padding: 13px 16px;
        border: 1px solid rgba(255, 255, 255, .16);
        border-radius: 0;
        background: rgba(255, 255, 255, .045);
        color: #fff;
        font-family: inherit;
        font-size: 12px;
        font-weight: 850;
        letter-spacing: .14em;
        line-height: 1.22;
        text-align: left;
        text-transform: uppercase;
        cursor: pointer;
        transition: border-color .28s var(--vh-ease), background .28s var(--vh-ease), transform .28s var(--vh-ease);
}

.vh-contact-switcher button span {
	display: block;
	width: 100%;
	margin: 0;
	color: rgba(255, 255, 255, .48);
	font-size: 9px;
	letter-spacing: .22em;
	text-align: left;
}

.vh-contact-switcher button .vh-contact-switcher-title {
	color: #fff;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .14em;
	text-align: left;
}

.vh-contact-switcher button:hover,
.vh-contact-switcher button:focus-visible,
.vh-contact-switcher button.is-active {
        border-color: rgba(196, 164, 106, .72);
        background:
                linear-gradient(135deg, rgba(196, 164, 106, .2), rgba(255, 255, 255, .05));
        outline: none;
        transform: translateX(4px);
}

.vh-contact-rail-actions,
.vh-contact-service-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
}

.vh-contact-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 50px;
        padding: 0 24px;
        border: 1px solid #050505;
        background: #050505;
        color: #fff;
        font-size: 11px;
        font-weight: 850;
        letter-spacing: .18em;
        text-transform: uppercase;
        transition: background .28s var(--vh-ease), color .28s var(--vh-ease), border-color .28s var(--vh-ease), transform .28s var(--vh-ease);
}

.vh-contact-btn-mobile {
	display: none;
}

.vh-contact-rail .vh-contact-btn {
        border-color: rgba(196, 164, 106, .72);
        background: linear-gradient(90deg, #c4a46a, #9c7330);
        color: #060606;
}

.vh-contact-btn.is-light {
        background: transparent;
        color: inherit;
}

.vh-contact-rail .vh-contact-btn.is-light {
        border-color: rgba(255, 255, 255, .24);
        color: #fff;
}

.vh-contact-btn:hover,
.vh-contact-btn:focus-visible {
        transform: translateY(-2px);
}

.vh-contact-map-stage {
        position: relative;
        min-width: 0;
        padding: clamp(22px, 2.4vw, 34px);
        background: #f7f6f3;
}

.vh-contact-map-frame {
        position: relative;
        height: 100%;
        min-height: clamp(620px, 62vw, 732px);
        overflow: hidden;
        border: 1px solid var(--vh-contact-line);
        background: #ece9e3;
}

.vh-contact-map-frame::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 2;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .34);
        pointer-events: none;
}

.vh-contact-map-frame iframe {
        position: relative;
        z-index: 1;
        display: block;
        width: 100%;
        height: 100%;
        min-height: inherit;
        border: 0;
        background: #ece9e3;
}

.vh-contact-map-label {
        position: absolute;
        top: 20px;
        left: 20px;
        z-index: 4;
        display: inline-flex;
        align-items: center;
        gap: 9px;
        min-height: 34px;
        padding: 0 14px;
        border: 1px solid rgba(255, 255, 255, .52);
        border-radius: 999px;
        background: rgba(8, 8, 8, .74);
        color: #fff;
        box-shadow: 0 14px 36px rgba(0, 0, 0, .24);
        font-size: 11px;
        font-weight: 850;
        letter-spacing: .16em;
        line-height: 1;
        text-transform: uppercase;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        pointer-events: none;
}

.vh-contact-map-label span {
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: var(--vh-contact-gold);
}

.vh-contact-floating {
        position: absolute;
        top: clamp(54px, 5vw, 74px);
        right: clamp(54px, 5vw, 74px);
        z-index: 5;
        width: min(410px, calc(100% - clamp(54px, 5vw, 74px) * 2));
        padding: clamp(20px, 2vw, 26px);
        border: 1px solid var(--vh-contact-line);
        background: rgba(255, 255, 255, .94);
        box-shadow: 0 26px 76px rgba(0, 0, 0, .16);
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
}

.vh-contact-floating img {
        display: block;
        width: 100%;
        height: clamp(150px, 16vw, 190px);
        margin-bottom: 18px;
        object-fit: cover;
        background: #eee;
}

.vh-contact-floating h3 {
        margin: 10px 0 15px;
        color: var(--vh-contact-ink);
        font-size: clamp(20px, 1.6vw, 26px);
        font-weight: 850;
        letter-spacing: .12em;
        line-height: 1.08;
        text-transform: uppercase;
}

.vh-contact-meta {
        display: grid;
        gap: 8px;
        color: var(--vh-contact-muted);
        font-size: 14px;
        line-height: 1.5;
}

.vh-contact-meta b {
        margin-top: 4px;
        color: var(--vh-contact-ink);
        font-size: 10px;
        font-weight: 850;
        letter-spacing: .22em;
        text-transform: uppercase;
}

.vh-contact-meta a {
        color: var(--vh-contact-ink);
        font-weight: 750;
        text-decoration: none;
}

.vh-contact-addresses {
        padding-top: clamp(50px, 7vw, 92px);
}

.vh-contact-section-head {
        display: grid;
        grid-template-columns: minmax(180px, .28fr) minmax(0, 1fr);
        gap: clamp(22px, 5vw, 86px);
        align-items: end;
        margin-bottom: clamp(24px, 3vw, 40px);
        padding-top: 24px;
        border-top: 1px solid var(--vh-contact-line);
}

.vh-contact-section-head h2 {
        margin: 0;
        color: var(--vh-contact-ink);
        font-size: clamp(34px, 4vw, 72px);
        font-weight: 850;
        letter-spacing: .13em;
        line-height: .96;
        text-transform: uppercase;
}

.vh-contact-address-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 1px;
        border: 1px solid var(--vh-contact-line);
        background: var(--vh-contact-line);
}

.vh-contact-card {
        display: grid;
        grid-template-rows: clamp(150px, 14vw, 210px) 1fr;
        min-height: 410px;
        background: #fff;
        cursor: pointer;
        transition: transform .32s var(--vh-ease), box-shadow .32s var(--vh-ease);
}

.vh-contact-card img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        background: #080808;
        filter: saturate(.92) contrast(1.04);
}

.vh-contact-card > div {
        display: grid;
        align-content: start;
        gap: 13px;
        padding: clamp(20px, 2vw, 28px);
}

.vh-contact-card span {
        color: var(--vh-contact-gold);
        font-size: 10px;
        font-weight: 850;
        letter-spacing: .24em;
        text-transform: uppercase;
}

.vh-contact-card h3 {
        margin: 0;
        color: var(--vh-contact-ink);
        font-size: clamp(18px, 1.25vw, 23px);
        font-weight: 850;
        letter-spacing: .12em;
        line-height: 1.12;
        text-transform: uppercase;
}

.vh-contact-card p {
        margin: 0;
        color: var(--vh-contact-muted);
        font-size: 14px;
        line-height: 1.55;
}

.vh-contact-card a {
        justify-self: start;
        margin-top: auto;
        padding-bottom: 5px;
        border-bottom: 1px solid currentColor;
        color: var(--vh-contact-ink);
        font-size: 11px;
        font-weight: 850;
        letter-spacing: .18em;
        text-transform: uppercase;
}

.vh-contact-card .vh-contact-card-phone {
        margin-top: 0;
        border-bottom: 0;
        color: var(--vh-contact-gold);
        font-size: 13px;
        letter-spacing: .04em;
        text-transform: none;
}

.vh-contact-card .vh-contact-card-phone + a {
        margin-top: 0;
}

.vh-contact-card:hover,
.vh-contact-card.is-active {
        position: relative;
        z-index: 1;
        box-shadow: 0 26px 70px rgba(0, 0, 0, .12);
        transform: translateY(-4px);
}

.vh-contact-service {
        display: grid;
        grid-template-columns: minmax(280px, .42fr) minmax(320px, .38fr) auto;
        gap: clamp(22px, 4vw, 70px);
        align-items: end;
        margin-top: clamp(52px, 7vw, 98px);
        padding: clamp(28px, 3.4vw, 46px);
        border: 1px solid rgba(196, 164, 106, .26);
        background:
                radial-gradient(circle at 88% 12%, rgba(196, 164, 106, .16), transparent 32%),
                linear-gradient(135deg, #080808, #18150f 58%, #060606);
        color: #fff;
}

.vh-contact-service h2 {
        margin: 14px 0 0;
        color: #fff;
        font-size: clamp(26px, 3vw, 44px);
        font-weight: 850;
        letter-spacing: .1em;
        line-height: 1.02;
        text-transform: uppercase;
}

.vh-contact-service p {
        margin: 0;
        color: rgba(255, 255, 255, .68);
        font-size: 15px;
        line-height: 1.65;
}

.vh-contact-service .vh-contact-btn {
        border-color: rgba(255, 255, 255, .28);
        background: #fff;
        color: #050505;
}

.vh-contact-service .vh-contact-btn.is-light {
        background: transparent;
        color: #fff;
}

@media (max-width: 1180px) {
        .vh-contact-hero,
        .vh-contact-map-shell,
        .vh-contact-service {
                grid-template-columns: 1fr;
        }

        .vh-contact-map-shell {
                min-height: 0;
        }

        .vh-contact-map-frame {
                min-height: 620px;
        }

        .vh-contact-rail {
                display: grid;
                grid-template-columns: minmax(0, .9fr) minmax(320px, 1fr);
                align-items: start;
        }

        .vh-contact-rail-actions {
                grid-column: 1 / -1;
        }

        .vh-contact-address-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
        }
}

@media (max-width: 760px) {
	.vh-contact-rail-actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.vh-contact-rail-actions .vh-contact-btn {
		width: 100%;
		height: 62px;
		min-width: 0;
		padding-inline: 10px;
		letter-spacing: .12em;
		white-space: nowrap;
	}

	.vh-contact-btn-desktop {
		display: none;
	}

	.vh-contact-btn-mobile {
		display: inline;
	}

	.vh-contact-service-actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.vh-contact-service-actions .vh-contact-btn {
		min-width: 0;
		padding-inline: 10px;
		letter-spacing: .08em;
	}

	.vh-contact-page {
                padding: 128px 12px 42px;
        }

	body.vh-contact-page-body .vh-contact-switcher button {
		align-items: flex-start;
		justify-content: center;
		text-align: left;
	}

	body.vh-contact-page-body .vh-contact-switcher button span {
		display: block;
		width: 100%;
		text-align: left;
	}

        .vh-contact-hero h1 {
                font-size: clamp(38px, 12vw, 62px);
                letter-spacing: .08em;
        }

        .vh-contact-rail,
        .vh-contact-section-head,
        .vh-contact-address-grid {
                grid-template-columns: 1fr;
        }

        .vh-contact-rail,
        .vh-contact-map-stage,
        .vh-contact-service {
                padding: 22px;
        }

        .vh-contact-map-frame {
                min-height: 560px;
        }

        .vh-contact-floating {
                position: static;
                width: auto;
                margin-top: 16px;
        }

        .vh-contact-map-label {
                top: 14px;
                left: 14px;
        }

	.vh-contact-card {
		min-height: 0;
	}

	.vh-contact-address-grid .vh-contact-card {
		justify-items: center;
		text-align: center;
	}

	.vh-contact-address-grid .vh-contact-card > * {
		justify-self: center;
	}
}

@media (max-width: 390px) {
	.vh-top-contact {
		font-size: 8px;
	}

	.vh-top-contact-inner {
		gap: 3px;
		padding-inline: 8px;
	}

	.vh-top-contact-social:last-child {
		display: none;
	}
}

/* Final AlphaFold drawer guard: keep the hero product card visible before the product list. */
@media (min-width: 769px) {
        body .vh-drawer-editorial-alphafold.is-visible-in-flyout,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold.is-visible-in-flyout,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"].is-visible-in-flyout {
                display: grid !important;
                grid-template-columns: minmax(300px, 440px) minmax(420px, 1fr) !important;
                grid-template-rows: max-content !important;
                grid-template-areas:
                        "stack products" !important;
                align-content: start !important;
                align-items: start !important;
                overflow: hidden !important;
        }

        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-stack,
        body .vh-drawer-editorial-alphafold.is-visible-in-flyout > .vh-drawer-editorial-stack {
                grid-area: stack !important;
                display: flex !important;
                flex-direction: column !important;
                align-items: stretch !important;
                row-gap: clamp(12px, .85vw, 18px) !important;
                min-width: 0 !important;
                width: 100% !important;
        }

        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-stack .vh-drawer-editorial-copy,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-stack .vh-drawer-editorial-hero,
        body .vh-drawer-editorial-alphafold.is-visible-in-flyout > .vh-drawer-editorial-stack > .vh-drawer-editorial-copy,
        body .vh-drawer-editorial-alphafold.is-visible-in-flyout > .vh-drawer-editorial-stack > .vh-drawer-editorial-hero {
                grid-area: auto !important;
        }

        body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-hero,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero {
                display: flex !important;
                align-self: start !important;
                justify-self: start !important;
                width: 100% !important;
                max-width: clamp(300px, 24vw, 440px) !important;
                height: clamp(440px, 52vh, 620px) !important;
                min-height: clamp(440px, 52vh, 620px) !important;
                max-height: 620px !important;
                overflow: hidden !important;
                background:
                        radial-gradient(circle at 50% 44%, rgba(255, 255, 255, .12), transparent 34%),
                        linear-gradient(180deg, #050505 0%, #020202 100%) !important;
                opacity: 1 !important;
                visibility: visible !important;
                transform: none !important;
        }

        body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-hero-img,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero-img,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero-img {
                position: relative !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                width: 100% !important;
                height: 100% !important;
                opacity: 1 !important;
                visibility: visible !important;
        }

        body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-hero img,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero img,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero img {
                position: relative !important;
                z-index: 1 !important;
                display: block !important;
                width: 100% !important;
                height: 100% !important;
                object-fit: contain !important;
                padding: clamp(34px, 3vw, 66px) !important;
                filter: brightness(1.12) contrast(1.08) drop-shadow(0 24px 44px rgba(255, 255, 255, .1)) !important;
                opacity: 1 !important;
                visibility: visible !important;
        }

        body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-products,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-products,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-products {
                grid-area: products !important;
                align-self: stretch !important;
                max-height: calc(100vh - clamp(118px, 9vw, 176px)) !important;
                overflow-x: hidden !important;
                overflow-y: auto !important;
        }

        body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-product,
        body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-product-img,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-product,
        body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-product-img {
                background: #fff !important;
        }
}

@media (prefers-reduced-motion: reduce) {
        html {
                scroll-behavior: auto;
        }

	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
                transition-duration: .001ms !important;
        }
}

/* VERTU news articles: clean editorial view without the theme sidebar. */
.vh-news-single {
	padding: clamp(142px, 11vw, 196px) 24px clamp(72px, 8vw, 128px);
	background: #fff;
}

.vh-news-single__inner {
	width: min(100%, 1180px);
	margin: 0 auto;
}

.vh-news-breadcrumbs {
	display: flex;
	align-items: center;
	gap: 11px;
	margin: 0 0 clamp(34px, 4vw, 64px);
	color: #8e8e8e;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	line-height: 1.35;
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
}

.vh-news-breadcrumbs a {
	color: inherit;
	text-decoration: none;
	transition: color .2s ease;
}

.vh-news-breadcrumbs a:hover {
	color: #b58a3c;
}

.vh-news-breadcrumbs span[aria-current="page"] {
	overflow: hidden;
	text-overflow: ellipsis;
}

.vh-news-article {
	max-width: 960px;
	margin: 0 auto;
}

.vh-news-article__header {
	max-width: 850px;
	margin: 0 auto clamp(34px, 5vw, 72px);
	text-align: center;
}

.vh-news-article__meta {
	display: flex;
	justify-content: center;
	gap: 18px;
	margin-bottom: 22px;
	color: #a7823d;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .2em;
	line-height: 1.3;
	text-transform: uppercase;
}

.vh-news-article__meta time {
	color: #8d8d8d;
}

.vh-news-article__title {
	margin: 0;
	color: #070707;
	font-size: clamp(36px, 5.3vw, 78px);
	font-weight: 700;
	letter-spacing: 0;
	line-height: .98;
	text-transform: uppercase;
}

.vh-news-article__lead {
	max-width: 720px;
	margin: 28px auto 0;
	color: #686868;
	font-size: clamp(18px, 1.7vw, 24px);
	line-height: 1.5;
}

.vh-news-article__image {
	margin: 0 0 clamp(42px, 6vw, 88px);
	background: #f5f5f5;
	aspect-ratio: 16 / 8;
	overflow: hidden;
}

.vh-news-article__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vh-news-article__content {
	width: min(100%, 720px);
	margin: 0 auto;
	color: #272727;
	font-size: clamp(17px, 1.55vw, 21px);
	line-height: 1.65;
}

.vh-news-article__content p {
	margin: 0 0 1.45em;
}

.vh-news-article__content ul {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	margin: clamp(38px, 5vw, 62px) 0 0;
	padding: 1px;
	list-style: none;
	background: #e7e7e7;
}

.vh-news-article__content li {
	padding: 20px;
	background: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.45;
	text-transform: uppercase;
}

/* Quiet editorial key points instead of tab-like cards. */
.vh-news-article__content ul {
	display: flex;
	gap: 0;
	margin-top: clamp(38px, 5vw, 62px);
	padding: 0;
	border-top: 1px solid #dcdcdc;
	border-bottom: 1px solid #dcdcdc;
	background: transparent;
}

.vh-news-article__content li {
	position: relative;
	flex: 1 1 0;
	padding: 18px 22px 18px 18px;
	background: transparent;
	color: #161616;
	font-size: 10px;
	letter-spacing: .16em;
}

.vh-news-article__content li::before {
	content: '';
	display: inline-block;
	width: 5px;
	height: 5px;
	margin: 0 10px 2px 0;
	border-radius: 50%;
	background: #b58a3c;
}

.vh-news-article__content li + li {
	border-left: 1px solid #dcdcdc;
}

.vh-news-pagination {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	gap: 28px;
	align-items: center;
	margin-top: clamp(68px, 9vw, 128px);
	padding-top: 26px;
	border-top: 1px solid #dfdfdf;
}

.vh-news-pagination a {
	min-width: 0;
	color: #111;
	text-decoration: none;
}

.vh-news-pagination__previous,
.vh-news-pagination__next {
	display: grid;
	gap: 8px;
}

.vh-news-pagination__next {
	text-align: right;
}

.vh-news-pagination__previous span,
.vh-news-pagination__next span {
	color: #949494;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.vh-news-pagination__previous strong,
.vh-news-pagination__next strong {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

.vh-news-pagination__archive {
	padding: 13px 18px;
	border: 1px solid #171717;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	transition: background-color .2s ease, color .2s ease;
}

.vh-news-pagination__archive:hover {
	background: #111;
	color: #fff;
}

/* News archive: no author, publication or sharing metadata from the parent theme. */
.vh-news-archive {
	padding: clamp(142px, 11vw, 196px) 24px clamp(72px, 8vw, 128px);
	background: #fff;
}

.vh-news-archive__inner {
	width: min(100%, 1320px);
	margin: 0 auto;
}

.vh-news-archive__header {
	margin-bottom: clamp(42px, 5vw, 76px);
}

.vh-news-archive__header h1 {
	margin: 0 0 20px;
	color: #070707;
	font-size: clamp(44px, 6.5vw, 96px);
	font-weight: 700;
	letter-spacing: 0;
	line-height: .95;
	text-transform: uppercase;
}

.vh-news-archive__header .vh-news-breadcrumbs {
	margin: 0;
}

.vh-news-archive__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(18px, 2.6vw, 38px);
}

.vh-news-archive-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	border: 1px solid #e6e6e6;
	background: #fff;
	transition: transform .25s ease, box-shadow .25s ease;
}

.vh-news-archive-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 18px 42px rgba(0, 0, 0, .08);
}

.vh-news-archive-card__image {
	display: block;
	aspect-ratio: 1.22 / 1;
	overflow: hidden;
	background: #101010;
}

.vh-news-archive-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .45s ease;
}

.vh-news-archive-card:hover .vh-news-archive-card__image img {
	transform: scale(1.035);
}

.vh-news-archive-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: clamp(22px, 2.1vw, 32px);
}

.vh-news-archive-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	margin-bottom: 16px;
	color: #ad8743;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .16em;
	line-height: 1.3;
	text-transform: uppercase;
}

.vh-news-archive-card__meta time {
	color: #909090;
}

.vh-news-archive-card h2 {
	margin: 0;
	font-size: clamp(19px, 1.6vw, 26px);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.12;
	text-transform: uppercase;
}

.vh-news-archive-card h2 a {
	color: #090909;
	text-decoration: none;
}

.vh-news-archive-card p {
	margin: 16px 0 24px;
	color: #6e6e6e;
	font-size: 15px;
	line-height: 1.55;
}

.vh-news-archive-card__link {
	margin-top: auto;
	padding-bottom: 5px;
	border-bottom: 1px solid #1a1a1a;
	color: #161616;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .16em;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
}

.vh-news-load {
	min-height: 38px;
	margin-top: clamp(44px, 6vw, 80px);
	text-align: center;
}

.vh-news-load__sentinel {
	height: 1px;
}

.vh-news-load__status {
	min-height: 1.4em;
	margin: 0;
	color: #8f8f8f;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.vh-news-load__fallback {
	display: inline-flex;
	padding: 13px 18px;
	border: 1px solid #171717;
	color: #171717;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .16em;
	text-decoration: none;
	text-transform: uppercase;
}

.vh-news-load.is-complete {
	min-height: 0;
	margin-top: 0;
}

.vh-news-archive__empty {
	margin: 0;
	color: #777;
	font-size: 18px;
}

@media (max-width: 760px) {
	.vh-news-single {
		padding: 126px 20px 60px;
	}

	.vh-news-breadcrumbs {
		gap: 8px;
		margin-bottom: 32px;
		font-size: 9px;
		letter-spacing: .14em;
	}

	.vh-news-article__header {
		margin-bottom: 34px;
		text-align: left;
	}

	.vh-news-article__meta {
		justify-content: flex-start;
		gap: 12px;
		margin-bottom: 16px;
		font-size: 9px;
		letter-spacing: .14em;
	}

	.vh-news-article__title {
		font-size: clamp(36px, 11.5vw, 52px);
		line-height: 1.02;
	}

	.vh-news-article__lead {
		margin-top: 20px;
		font-size: 18px;
	}

	.vh-news-article__image {
		aspect-ratio: 4 / 3;
		margin-bottom: 36px;
	}

	.vh-news-article__content {
		font-size: 17px;
		line-height: 1.62;
	}

	.vh-news-article__content ul {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0;
		border-bottom: 0;
		margin-top: 34px;
	}

	.vh-news-article__content li {
		padding: 15px 0;
		font-size: 11px;
	}

	.vh-news-article__content li + li {
		border-top: 1px solid #dcdcdc;
		border-left: 0;
	}

	.vh-news-pagination {
		grid-template-columns: 1fr;
		gap: 22px;
		margin-top: 60px;
	}

	.vh-news-pagination > span {
		display: none;
	}

	.vh-news-pagination__next {
		text-align: left;
	}

	.vh-news-pagination__archive {
		justify-self: stretch;
		text-align: center;
	}

	.vh-news-archive {
		padding: 126px 20px 60px;
	}

	.vh-news-archive__header {
		margin-bottom: 38px;
	}

	.vh-news-archive__header h1 {
		margin-bottom: 16px;
		font-size: clamp(44px, 13vw, 62px);
	}

	.vh-news-archive__grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.vh-news-archive-card__image {
		aspect-ratio: 1.32 / 1;
	}

	.vh-news-archive-card__content {
		padding: 22px;
	}

	.vh-news-archive-card h2 {
		font-size: 22px;
	}

.vh-news-archive-card p {
		font-size: 15px;
	}
}

/* VERTU mobile navigation: restrained black-and-gold "Gold Rail" treatment. */
@media (max-width: 1024px) {
	.wd-toolbar {
		height: 74px;
		padding: 4px 6px calc(4px + env(safe-area-inset-bottom));
		border-top: 1px solid rgba(196, 164, 106, .68);
		background: rgba(10, 10, 9, .98);
		box-shadow: 0 -14px 32px rgba(0, 0, 0, .24);
		backdrop-filter: blur(16px);
		-webkit-backdrop-filter: blur(16px);
	}

	.wd-toolbar > a,
	.wd-toolbar > div {
		flex: 1 1 25%;
		min-width: 0;
	}

	.wd-toolbar > a,
	.wd-toolbar > div a {
		height: 63px;
		color: rgba(255, 255, 255, .62);
		transition: color .25s var(--vh-ease), background-color .25s var(--vh-ease);
	}

	.wd-toolbar.wd-toolbar-label-show > a,
	.wd-toolbar.wd-toolbar-label-show > div a {
		padding-bottom: 17px;
	}

	.wd-toolbar .wd-toolbar-label {
		bottom: 3px;
		color: currentColor;
		font-size: 8px;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	.wd-toolbar .wd-tools-icon {
		color: currentColor;
		transition: color .25s var(--vh-ease), transform .25s var(--vh-ease);
	}

	.wd-toolbar .wd-tools-element a:hover,
	.wd-toolbar .wd-tools-element a:focus-visible,
	.wd-toolbar .wd-tools-element a:active,
	.wd-toolbar .wd-tools-element.wd-opened a,
	.wd-toolbar .wd-tools-element.current-menu-item a,
	.wd-toolbar .wd-toolbar-shop a {
		color: #c7a66b;
	}

	.wd-toolbar .wd-toolbar-shop a::before {
		position: absolute;
		top: 3px;
		left: 50%;
		width: 18px;
		height: 2px;
		background: #c7a66b;
		content: '';
		transform: translateX(-50%);
	}

	.wd-toolbar .wd-toolbar-shop .wd-tools-icon::before {
		font-family: var(--vh-font-display);
		font-size: 20px;
		font-weight: 800;
		letter-spacing: 0;
		line-height: 1;
		content: 'V';
	}

	/* Do not expose Woodmart's generic sidebar as an extra mobile action. */
	.wd-toolbar .wd-toolbar-sidebar {
		display: none !important;
	}
}

/* Mobile content must always begin below the fixed contact strip and header.
 * Shop and category templates reset this spacing in their own layout rules. */
@media (max-width: 768px) {
	body.woocommerce-shop .main-page-wrapper,
	body.tax-product_cat .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 58px) !important;
	}
}

/* Mobile contact strip: two compact service lines, with a clear priority. */
@media (max-width: 768px) {
	:root {
		--vh-topbar-height: 44px;
	}

	.vh-top-contact-inner {
		gap: 8px;
	}

	.vh-top-contact-message {
		display: flex;
		align-items: center;
		gap: 0;
		min-height: 36px;
	}

	.vh-top-contact-message .vh-top-contact-divider {
		display: none;
	}

	.vh-top-contact-phone {
		display: flex;
		flex: 1 1 0;
		flex-direction: column;
		gap: 2px;
		min-width: 0;
		color: #fff;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: .005em;
		line-height: 1.1;
		white-space: nowrap;
	}

	.vh-top-contact-phone + .vh-top-contact-phone {
		margin-left: 10px;
		padding-left: 10px;
		border-left: 1px solid rgba(255, 255, 255, .2);
	}

	.vh-top-contact-phone::before {
		content: attr(data-vh-phone-label);
		color: #c7a66b;
		font-size: 7px;
		font-weight: 850;
		letter-spacing: .13em;
		line-height: 1;
		text-transform: uppercase;
	}

	.vh-top-contact-social {
		width: 22px;
		height: 28px;
		flex-basis: 22px;
	}
}

/* Gold Rail on a light surface: the active section is gold, every other action stays legible. */
@media (max-width: 1024px) {
	body .wd-toolbar {
		border-top-color: rgba(196, 164, 106, .72);
		background: rgba(255, 255, 255, .98) !important;
		box-shadow: 0 -14px 32px rgba(0, 0, 0, .13);
	}

	body .wd-toolbar > a,
	body .wd-toolbar > div a,
	body .wd-toolbar .wd-tools-icon,
	body .wd-toolbar .wd-toolbar-label {
		color: #111 !important;
	}

	body .wd-toolbar .wd-tools-element a:hover,
	body .wd-toolbar .wd-tools-element a:focus-visible,
	body .wd-toolbar .wd-tools-element a:active,
	body .wd-toolbar .wd-tools-element.wd-opened a,
	body .wd-toolbar .wd-tools-element.current-menu-item a,
	body .wd-toolbar .wd-toolbar-shop a,
	body .wd-toolbar .wd-toolbar-shop .wd-tools-icon,
	body .wd-toolbar .wd-toolbar-shop .wd-toolbar-label {
		color: #c7a66b !important;
	}
}

/* News flyout: keep the latest stories compact while showing square featured images. */
.vh-drawer-editorial-news .vh-drawer-editorial-products {
	max-height: calc(100vh - clamp(36px, 2.5vw, 56px));
	overflow-y: auto;
	padding-right: 8px;
	overscroll-behavior: contain;
}

.vh-drawer-editorial-news .vh-drawer-editorial-product {
	min-height: 0;
}

.vh-drawer-editorial-news .vh-drawer-editorial-product-img {
	aspect-ratio: 1 / 1;
	min-height: 0;
}

.vh-drawer-editorial-news .vh-drawer-editorial-product img {
	aspect-ratio: 1 / 1;
}

/* Selected menu directions: light two-display catalogue and dark personalization atelier. */
@media (min-width: 1081px) {
	/* Categories: the first concept is a bright two-column product display. */
	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) {
		width: 100vw;
		--vh-drawer-flyout: calc(100vw - var(--vh-drawer-nav));
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-gifts {
		width: var(--vh-drawer-flyout);
		padding: clamp(22px, 2.1vw, 42px) clamp(24px, 3vw, 58px) clamp(28px, 3vw, 58px);
		background: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto minmax(0, 1fr);
		grid-template-areas:
			"copy"
			"products";
		gap: clamp(18px, 1.6vw, 30px);
		min-height: calc(100vh - clamp(52px, 4vw, 80px));
		background: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-hero {
		display: none;
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-copy {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(240px, .55fr);
		align-items: end;
		gap: 24px;
		padding: 0 0 clamp(16px, 1.4vw, 28px);
		border-bottom: 1px solid rgba(0, 0, 0, .12);
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-copy p {
		margin: 0;
		font-size: clamp(12px, .82vw, 15px);
		line-height: 1.55;
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-copy a {
		grid-column: 1 / -1;
		width: fit-content;
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-content: start;
		gap: clamp(18px, 1.8vw, 34px);
		max-height: calc(100vh - clamp(190px, 15vw, 290px));
		overflow-x: hidden;
		overflow-y: auto;
		padding-right: clamp(6px, .6vw, 12px);
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-product {
		min-height: clamp(350px, 38vw, 600px);
		background: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-product-img {
		min-height: clamp(285px, 31vw, 500px);
		background: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-product img {
		padding: clamp(7px, .7vw, 16px);
	}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-product strong {
		min-height: clamp(62px, 5vw, 82px);
		padding: 14px 16px 17px;
		font-size: clamp(15px, 1.125vw, 22.5px);
		letter-spacing: .12em;
	}

	/* Personalization: the fourth concept becomes a full-height black atelier. */
	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke {
		width: 100vw;
		--vh-drawer-flyout: calc(100vw - var(--vh-drawer-nav));
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-gifts {
		width: var(--vh-drawer-flyout);
		padding: clamp(24px, 2.4vw, 48px) clamp(28px, 3vw, 58px) clamp(30px, 3vw, 58px);
		background: #11110f;
		border-left-color: #3d3a34;
		color: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-editorial-bespoke {
		grid-template-columns: minmax(280px, .62fr) minmax(440px, 1.38fr);
		grid-template-rows: minmax(390px, 1fr) auto;
		grid-template-areas:
			"copy hero"
			"gallery gallery";
		align-content: stretch;
		gap: clamp(22px, 2vw, 38px);
		min-height: calc(100vh - clamp(54px, 4.8vw, 96px));
		background: #11110f;
		color: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-editorial-bespoke .vh-drawer-editorial-copy {
		align-self: start;
		padding: clamp(5px, .5vw, 10px) 0;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-editorial-bespoke .vh-drawer-editorial-copy small {
		color: var(--vh-gold, #c7a66b);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-editorial-bespoke .vh-drawer-editorial-copy h3 {
		max-width: 8em;
		margin-bottom: clamp(18px, 1.4vw, 28px);
		color: #fff;
		font-size: clamp(31px, 3.25vw, 66px);
		letter-spacing: .1em;
		line-height: .91;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-editorial-bespoke .vh-drawer-editorial-copy p {
		max-width: 29em;
		color: rgba(255, 255, 255, .68);
		font-size: clamp(13px, .85vw, 17px);
		line-height: 1.55;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-features {
		display: grid;
		margin-top: clamp(22px, 1.6vw, 32px);
		border-top-color: #3d3a34;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-features li {
		border-bottom-color: #3d3a34;
		color: rgba(255, 255, 255, .86);
		font-size: clamp(10px, .7vw, 14px);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-card {
		min-height: 100%;
		padding: clamp(24px, 2.4vw, 48px);
		background:
			radial-gradient(circle at 78% 18%, rgba(199, 173, 114, .16), transparent 30%),
			linear-gradient(135deg, #030303, #181612 54%, #050505);
		box-shadow: inset 0 0 0 1px rgba(199, 173, 114, .18);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-card strong {
		max-width: 11em;
		font-size: clamp(27px, 2.6vw, 54px);
		line-height: .96;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery {
		grid-area: gallery;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(12px, 1.1vw, 22px);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card,
	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card:nth-child(3) {
		grid-template-columns: minmax(120px, .52fr) minmax(0, 1fr);
		min-height: clamp(130px, 10vw, 190px);
		border-color: #3d3a34;
		background: #181816;
		color: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-image {
		background: #fff;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text small {
		color: rgba(255, 255, 255, .55);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text strong {
		font-size: clamp(11px, .78vw, 16px);
	}
}


/* Mobile checkout redesign — Variant A (minimal / full-bleed) */
@media (max-width: 768px) {
	body.woocommerce-checkout form.woocommerce-checkout > :is(.customer-details, .checkout-order-review) {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 16px !important;
	}

	body.woocommerce-checkout .customer-details,
	body.woocommerce-checkout .checkout-order-review,
	body.woocommerce-checkout :is(.woocommerce-form-login, .checkout_coupon) {
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		padding: 0 !important;
	}

	body.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-additional-fields) h3,
	body.woocommerce-checkout #order_review_heading {
		font-size: 18px;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		margin-bottom: 16px;
		padding-bottom: 8px;
		border-bottom: 1px solid rgba(0,0,0,0.08);
	}

	body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
		gap: 14px;
	}

	body.woocommerce-checkout :is(input.input-text, select, textarea),
	body.woocommerce-checkout .select2-container--default .select2-selection--single {
		min-height: 46px;
		border-radius: 0;
		background: #fff;
	}

	body.woocommerce-checkout :is(input.input-text, select) {
		padding: 0 14px;
	}

	body.woocommerce-checkout p.form-row label {
		font-size: 11px;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: rgba(0,0,0,0.55);
	}

	body.woocommerce-checkout .checkout-order-review {
		margin-top: 24px;
		padding: 20px 16px !important;
		background: #fff !important;
		border: 1px solid rgba(0,0,0,0.06) !important;
		box-shadow: 0 8px 30px rgba(0,0,0,0.04) !important;
	}
}

/* Mobile account page fixes */
@media (max-width: 768px) {
	body.woocommerce-account .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 58px) !important;
	}
}

/* Account login button styling */
body.woocommerce-account .woocommerce-form-login .button {
	width: 100%;
	min-height: 48px;
	border: 1px solid rgba(199, 166, 107, .58) !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: #111 !important;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	transition: border-color .3s var(--vh-ease), background .3s var(--vh-ease), color .3s var(--vh-ease), box-shadow .3s var(--vh-ease);
}

body.woocommerce-account .woocommerce-form-login .button:hover,
body.woocommerce-account .woocommerce-form-login .button:focus {
	border-color: #c7a66b !important;
	background: #c7a66b !important;
	color: #fff !important;
	box-shadow: 0 18px 38px rgba(199, 166, 107, .22);
}

/* Mobile account drawer: keep the complete login dialog below the VERTU header. */
@media (max-width: 768px) {
	.login-form-side.wd-side-hidden {
		top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 58px) !important;
		bottom: 0 !important;
		z-index: 10030;
		overflow-x: hidden;
		overflow-y: auto;
	}

	.login-form-side.wd-side-hidden .wd-heading {
		position: sticky;
		top: 0;
		z-index: 2;
		background: rgba(255, 255, 255, .97);
	}

	.login-form-side.wd-side-hidden .woocommerce-form-login {
		box-sizing: border-box;
		width: 100%;
		margin: 0 !important;
		padding: 24px 16px 18px !important;
	}

	.login-form-side.wd-side-hidden.wd-opened .woocommerce-form-login.hidden-form {
		display: block !important;
	}

	.login-form-side.wd-side-hidden .woocommerce-form-login .form-row {
		margin-bottom: 18px;
	}

	.login-form-side.wd-side-hidden .woocommerce-form-login input.input-text {
		box-sizing: border-box;
		width: 100%;
		min-height: 48px;
	}

	.login-form-side.wd-side-hidden .woocommerce-form-login .form-row-btn {
		margin-top: 22px;
		margin-bottom: 16px;
	}

	.login-form-side.wd-side-hidden .woocommerce-form-login .woocommerce-form-login__submit,
	.login-form-side.wd-side-hidden .woocommerce-form-login .button {
		width: 100% !important;
		min-height: 48px;
		border: 1px solid #090909 !important;
		border-radius: 0 !important;
		background: #090909 !important;
		box-shadow: none !important;
		color: #fff !important;
		font-size: 13px;
		font-weight: 700;
		letter-spacing: .1em;
		text-transform: uppercase;
	}

	.login-form-side.wd-side-hidden .woocommerce-form-login .woocommerce-form-login__submit:hover,
	.login-form-side.wd-side-hidden .woocommerce-form-login .woocommerce-form-login__submit:focus-visible,
	.login-form-side.wd-side-hidden .woocommerce-form-login .button:hover,
	.login-form-side.wd-side-hidden .woocommerce-form-login .button:focus-visible {
		border-color: #c4a46a !important;
		background: #c4a46a !important;
		color: #090909 !important;
	}

	.login-form-side.wd-side-hidden .create-account-question {
		padding: 20px 16px 24px;
	}
}

/* Hide cart count in mini-cart header */
.vh-mini-cart-head strong {
	display: none;
}


/* Phone modal overlay (Variant C) */
.vh-phone-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .72);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	opacity: 0;
	visibility: hidden;
	transition: opacity .45s var(--vh-menu-ease-soft), visibility .45s var(--vh-menu-ease);
	z-index: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	padding: 20px;
}

.vh-phone-overlay.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.vh-phone-modal {
	width: 100%;
	max-width: 360px;
	background:
		linear-gradient(145deg, #151515 0%, #030303 54%, #101010 100%);
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 20px;
	box-shadow: 0 24px 60px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(255, 255, 255, .065);
	padding: 32px 28px 28px;
	transform: translateY(18px) scale(.96);
	transition: transform .55s var(--vh-menu-ease-soft), opacity .45s ease;
}

.vh-phone-overlay.is-open .vh-phone-modal {
	transform: translateY(0) scale(1);
}

.vh-phone-modal h3 {
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 6px;
	color: #f8f2e6;
	font-family: var(--wd-title-font, Arial, sans-serif);
}

.vh-phone-modal p {
	font-size: 13px;
	text-align: center;
	color: #888;
	margin-bottom: 22px;
}

.vh-phone-modal .vh-phone-option {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px 18px;
	border-radius: 12px;
	text-decoration: none;
	color: #f8f2e6;
	background: rgba(255, 255, 255, .03);
	border: 1px solid rgba(255, 255, 255, .06);
	margin-bottom: 8px;
	transition: all .35s ease;
}

.vh-phone-modal .vh-phone-option:hover,
.vh-phone-modal .vh-phone-option:focus {
	background: rgba(218, 181, 119, .08);
	border-color: rgba(218, 181, 119, .25);
	transform: translateY(-1px);
}

.vh-phone-modal .vh-phone-option-label {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #dab577;
}

.vh-phone-modal .vh-phone-option-number {
	font-size: 15px;
	font-weight: 500;
	color: #f8f2e6;
}

.vh-phone-modal-close {
	display: block;
	width: 100%;
	margin-top: 10px;
	padding: 12px;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 10px;
	color: #888;
	font-size: 13px;
	font-family: inherit;
	cursor: pointer;
	transition: all .3s ease;
	-webkit-appearance: none;
	appearance: none;
}

.vh-phone-modal-close:hover,
.vh-phone-modal-close:focus {
	border-color: rgba(255, 255, 255, .25);
	color: #f8f2e6;
	background: rgba(255, 255, 255, .04);
}

@media (max-width: 768px) {
	.vh-phone-modal {
		padding: 26px 22px 22px;
		border-radius: 18px;
	}

	.vh-phone-modal h3 {
		font-size: 18px;
	}

	.vh-phone-modal .vh-phone-option {
		padding: 12px 16px;
		margin-bottom: 6px;
	}

	.vh-phone-modal .vh-phone-option-number {
		font-size: 14px;
	}
}


/* Phone trigger button styling — matches legacy quick-contact link appearance */
.vh-quick-contact-links .vh-phone-trigger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 50%;
	color: #f8f2e6;
	background:
		radial-gradient(circle at 50% 18%, rgba(255, 255, 255, .12), transparent 28%),
		linear-gradient(145deg, #151515 0%, #030303 54%, #101010 100%);
	box-shadow: 0 18px 34px rgba(0, 0, 0, .32), inset 0 0 0 1px rgba(255, 255, 255, .065);
	text-decoration: none;
	opacity: 0;
	transform: translate3d(0, 14px, 0) scale(.88);
	transition: opacity .55s var(--vh-menu-ease-soft), transform .75s var(--vh-menu-ease), color .35s ease, border-color .35s ease, box-shadow .35s ease;
	appearance: none;
	padding: 0;
	cursor: pointer;
}

.vh-quick-contact.is-open .vh-quick-contact-links .vh-phone-trigger {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
	transition-delay: .18s;
}

.vh-quick-contact-links .vh-phone-trigger:hover,
.vh-quick-contact-links .vh-phone-trigger:focus {
	color: #fff;
	border-color: rgba(218, 181, 119, .48);
	box-shadow: 0 20px 34px rgba(0, 0, 0, .32), 0 0 0 1px rgba(218, 181, 119, .18), inset 0 0 0 1px rgba(255, 255, 255, .12);
	transform: translate3d(0, -3px, 0) scale(1.03);
}

.vh-quick-contact-links .vh-phone-trigger svg {
	width: 18px;
	height: 18px;
}

/* Checkout - Midnight Ceremony. Header and footer remain theme-owned. */
body.woocommerce-checkout.vh-midnight-checkout,
body.vh-midnight-order-received {
	--vh-midnight-black: #090909;
	--vh-midnight-panel: #121212;
	--vh-midnight-panel-soft: #171715;
	--vh-midnight-gold: #c7a66b;
	--vh-midnight-gold-soft: rgba(199, 166, 107, .44);
	--vh-midnight-line: rgba(255, 255, 255, .14);
	--vh-midnight-copy: #f5f1e9;
	--vh-midnight-muted: rgba(245, 241, 233, .58);
	background: var(--vh-midnight-black);
	color: var(--vh-midnight-copy);
}

body.woocommerce-checkout.vh-midnight-checkout .main-page-wrapper,
body.vh-midnight-order-received .main-page-wrapper {
	background:
		radial-gradient(circle at 78% 8%, rgba(199, 166, 107, .13), transparent 26rem),
		linear-gradient(135deg, #090909 0%, #11110f 56%, #080808 100%);
}

body.woocommerce-checkout.vh-midnight-checkout .site-content,
body.vh-midnight-order-received .site-content {
	margin-bottom: 0;
	padding-block: clamp(50px, 7vw, 110px);
}

body.woocommerce-checkout.vh-midnight-checkout .wd-checkout-steps,
body.woocommerce-checkout.vh-midnight-checkout .checkout-steps {
	margin-inline: auto;
	width: min(1240px, calc(100vw - 48px));
	border-color: var(--vh-midnight-line);
	color: var(--vh-midnight-muted);
}

body.woocommerce-checkout.vh-midnight-checkout .wd-checkout-steps li.active span,
body.woocommerce-checkout.vh-midnight-checkout .checkout-steps li.active span {
	border-color: var(--vh-midnight-gold) !important;
	background: transparent !important;
	color: var(--vh-midnight-gold) !important;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	width: min(1240px, calc(100vw - 48px));
	margin: 0 auto 22px;
	border: 1px solid var(--vh-midnight-gold-soft) !important;
	border-top: 1px solid var(--vh-midnight-gold-soft) !important;
	border-radius: 0;
	background: rgba(20, 20, 18, .96);
	box-shadow: none;
	color: var(--vh-midnight-copy);
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before {
	color: var(--vh-midnight-gold) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-error.vh-checkout-notice-empty,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-error .vh-checkout-notice-hidden {
	display: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-form-login, .checkout_coupon) {
	width: min(1240px, calc(100vw - 48px));
	margin: 0 auto 22px;
	padding: 22px;
	border: 1px solid var(--vh-midnight-line);
	border-radius: 0;
	background: var(--vh-midnight-panel);
	box-shadow: none;
	color: var(--vh-midnight-copy);
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(330px, 420px);
	gap: clamp(28px, 4vw, 62px);
	align-items: start;
	width: min(1240px, calc(100vw - 48px));
	margin: 0 auto;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead {
	grid-column: 1 / -1;
	max-width: 640px;
	padding-bottom: clamp(4px, 1vw, 16px);
}

.vh-midnight-checkout__eyebrow,
.vh-midnight-confirmation__eyebrow {
	display: block;
	margin-bottom: 13px;
	color: var(--vh-midnight-gold);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .24em;
	line-height: 1.2;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead h1 {
	margin: 0;
	color: var(--vh-midnight-copy);
	font-size: clamp(34px, 4.2vw, 62px);
	font-weight: 500;
	letter-spacing: .035em;
	line-height: 1;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead p {
	max-width: 520px;
	margin: 18px 0 0;
	color: var(--vh-midnight-muted);
	font-size: 16px;
	line-height: 1.65;
}

body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > :is(.customer-details, .checkout-order-review) {
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	margin: 0 !important;
	border: 1px solid var(--vh-midnight-line);
	border-radius: 0;
	background: rgba(18, 18, 18, .97);
	box-shadow: none;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details {
	display: block;
	padding: clamp(26px, 3vw, 46px);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review {
	position: sticky;
	top: calc(var(--vh-admin-offset, 0px) + 24px);
	padding: clamp(24px, 2.5vw, 34px);
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-billing-fields, .woocommerce-additional-fields) h3,
body.woocommerce-checkout.vh-midnight-checkout #order_review_heading {
	margin: 0 0 26px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--vh-midnight-line);
	color: var(--vh-midnight-copy);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.25;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields h3 {
	display: none;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields__field-wrapper {
	grid-template-columns: 1fr;
	margin-top: 22px;
}

body.woocommerce-checkout.vh-midnight-checkout p.form-row {
	position: relative;
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

body.woocommerce-checkout.vh-midnight-checkout p.form-row-wide {
	grid-column: 1 / -1;
}

body.woocommerce-checkout.vh-midnight-checkout p.form-row label {
	margin-bottom: 9px;
	color: rgba(245, 241, 233, .7);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.2;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout p.form-row .required {
	color: var(--vh-midnight-gold);
}

body.woocommerce-checkout.vh-midnight-checkout :is(input.input-text, select, textarea),
body.woocommerce-checkout.vh-midnight-checkout .select2-container--default .select2-selection--single {
	min-height: 54px;
	border: 1px solid rgba(255, 255, 255, .24);
	border-radius: 0;
	background: rgba(255, 255, 255, .02);
	box-shadow: none;
	color: var(--vh-midnight-copy);
	font-size: 15px;
	font-weight: 500;
}

body.woocommerce-checkout.vh-midnight-checkout :is(input.input-text, select) {
	padding: 0 16px;
}

body.woocommerce-checkout.vh-midnight-checkout textarea.input-text {
	min-height: 126px;
	padding: 16px;
	resize: vertical;
}

body.woocommerce-checkout.vh-midnight-checkout :is(input.input-text, select, textarea)::placeholder {
	color: rgba(245, 241, 233, .35);
}

body.woocommerce-checkout.vh-midnight-checkout :is(input.input-text, select, textarea):focus,
body.woocommerce-checkout.vh-midnight-checkout .select2-container--open .select2-selection--single {
	border-color: var(--vh-midnight-gold) !important;
	background: rgba(199, 166, 107, .06);
	box-shadow: inset 0 0 0 1px rgba(199, 166, 107, .16) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .select2-container--default .select2-selection--single {
	display: flex;
	align-items: center;
}

body.woocommerce-checkout.vh-midnight-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	padding-right: 38px;
	padding-left: 16px;
	color: var(--vh-midnight-copy);
	line-height: 54px;
}

body.woocommerce-checkout.vh-midnight-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	filter: invert(1);
	opacity: .72;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-field-invalid :is(input.input-text, select, textarea) {
	border-color: var(--vh-midnight-gold) !important;
	box-shadow: inset 3px 0 0 var(--vh-midnight-gold) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-field-error {
	display: block;
	margin-top: 8px;
	color: var(--vh-midnight-gold);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.4;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table {
	display: table !important;
	width: 100%;
	table-layout: fixed;
	margin: 0 0 24px;
	border-color: var(--vh-midnight-line);
	background: transparent;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table :is(th, td) {
	border-color: var(--vh-midnight-line);
	color: var(--vh-midnight-copy);
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table thead th {
	color: rgba(245, 241, 233, .48);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table .product-name {
	padding-right: 14px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table :is(.product-total, td:last-child, th:last-child) {
	width: 132px;
	color: var(--vh-midnight-gold);
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table tfoot tr {
	display: grid !important;
	grid-template-columns: minmax(92px, .42fr) minmax(0, 1fr);
	gap: 16px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table tfoot :is(th, td) {
	display: block !important;
	width: auto !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table tfoot td {
	text-align: right;
	white-space: normal;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table .order-total .amount,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table .order-total .amount bdi {
	color: var(--vh-midnight-gold);
	font-size: clamp(22px, 2.2vw, 30px);
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-payment {
	border-top-color: var(--vh-midnight-line);
}

body.woocommerce-checkout.vh-midnight-checkout #payment :is(label, .payment_box, .woocommerce-privacy-policy-text, .woocommerce-terms-and-conditions-wrapper) {
	color: var(--vh-midnight-muted);
}

body.woocommerce-checkout.vh-midnight-checkout #payment div.payment_box,
body.woocommerce-checkout.vh-midnight-checkout #payment ul.payment_methods .woocommerce-info {
	border: 1px solid rgba(199, 166, 107, .22);
	border-radius: 0;
	background: rgba(199, 166, 107, .07);
	color: var(--vh-midnight-muted);
}

body.woocommerce-checkout.vh-midnight-checkout #payment :is(input[type="radio"], input[type="checkbox"]) {
	accent-color: var(--vh-midnight-gold);
}

body.woocommerce-checkout.vh-midnight-checkout #place_order,
body.vh-midnight-order-received .vh-midnight-confirmation__action {
	width: 100%;
	min-height: 56px;
	border: 1px solid var(--vh-midnight-gold) !important;
	border-radius: 0 !important;
	background: var(--vh-midnight-gold) !important;
	box-shadow: none;
	color: #0a0a0a !important;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout #place_order:hover,
body.woocommerce-checkout.vh-midnight-checkout #place_order:focus,
body.vh-midnight-order-received .vh-midnight-confirmation__action:hover,
body.vh-midnight-order-received .vh-midnight-confirmation__action:focus {
	background: transparent !important;
	color: var(--vh-midnight-gold) !important;
	transform: none;
}

body.vh-midnight-order-received .woocommerce-order {
	width: min(760px, calc(100vw - 48px));
	margin: 0 auto;
}

.vh-midnight-confirmation {
	display: grid;
	place-items: center;
	min-height: min(720px, 72vh);
	padding: clamp(18px, 4vw, 56px) 0;
}

.vh-midnight-confirmation__frame {
	position: relative;
	width: min(620px, 100%);
	padding: clamp(44px, 6vw, 74px) clamp(26px, 6vw, 82px);
	border: 1px solid var(--vh-midnight-gold-soft);
	background:
		linear-gradient(135deg, rgba(199, 166, 107, .08), transparent 52%),
		#10100f;
	box-shadow: inset 0 0 0 7px rgba(255, 255, 255, .012);
	text-align: center;
}

.vh-midnight-confirmation__frame::before {
	position: absolute;
	inset: 12px;
	border: 1px solid rgba(199, 166, 107, .22);
	content: '';
	pointer-events: none;
}

.vh-midnight-confirmation__mark {
	margin-bottom: 20px;
	color: var(--vh-midnight-gold);
	font-size: 54px;
	font-weight: 300;
	letter-spacing: .05em;
	line-height: 1;
}

.vh-midnight-confirmation h1 {
	margin: 0;
	color: var(--vh-midnight-copy);
	font-size: clamp(32px, 4.1vw, 54px);
	font-weight: 500;
	letter-spacing: .035em;
	line-height: 1;
	text-transform: uppercase;
}

.vh-midnight-confirmation__copy {
	max-width: 450px;
	margin: 20px auto 32px;
	color: var(--vh-midnight-muted);
	font-size: 16px;
	line-height: 1.7;
}

.vh-midnight-confirmation__details {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 0 32px;
	border-top: 1px solid var(--vh-midnight-line);
	border-bottom: 1px solid var(--vh-midnight-line);
}

.vh-midnight-confirmation__details > div {
	min-width: 0;
	padding: 18px 12px;
	border-right: 1px solid var(--vh-midnight-line);
}

.vh-midnight-confirmation__details > div:last-child {
	border-right: 0;
}

.vh-midnight-confirmation__details dt {
	margin-bottom: 7px;
	color: var(--vh-midnight-muted);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vh-midnight-confirmation__details dd {
	margin: 0;
	color: var(--vh-midnight-copy);
	font-size: 13px;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.vh-midnight-confirmation__actions {
	position: relative;
	z-index: 1;
	max-width: 320px;
	margin: 0 auto;
}

.vh-midnight-confirmation__frame :is(.woocommerce-notice, .woocommerce-message, .woocommerce-info, .woocommerce-error) {
	position: relative;
	z-index: 1;
	margin: 22px 0 0;
	border: 1px solid rgba(199, 166, 107, .3) !important;
	border-radius: 0;
	background: rgba(199, 166, 107, .08);
	color: var(--vh-midnight-copy);
}

@media (max-width: 900px) {
	body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout {
		grid-template-columns: 1fr;
		width: min(760px, calc(100vw - 40px));
	}

	body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review {
		position: static;
	}
}

@media (max-width: 768px) {
	body.woocommerce-checkout.vh-midnight-checkout .site-content,
	body.vh-midnight-order-received .site-content {
		padding-block: 38px 58px;
	}

	body.woocommerce-checkout.vh-midnight-checkout :is(.wd-checkout-steps, .checkout-steps, .woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-form-login, .checkout_coupon),
	body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout,
	body.vh-midnight-order-received .woocommerce-order {
		width: min(calc(100% - 32px), 560px);
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead {
		padding-bottom: 2px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead h1 {
		font-size: 36px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead p {
		font-size: 15px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .customer-details,
	body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review {
		padding: 22px 18px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper {
		grid-template-columns: 1fr;
		gap: 17px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table thead {
		display: table-header-group !important;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item {
		display: table-row !important;
		padding: 0;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item :is(td, th) {
		display: table-cell !important;
		width: auto !important;
		padding: 13px 0;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table .product-name {
		font-size: 12px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table :is(.product-total, td:last-child, th:last-child) {
		width: 110px;
		font-size: 12px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table tfoot tr {
		grid-template-columns: 1fr;
		gap: 5px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-checkout-review-order-table tfoot td {
		text-align: left;
	}

	.vh-midnight-confirmation {
		min-height: auto;
		padding: 0;
	}

	.vh-midnight-confirmation__frame {
		padding: 44px 25px;
	}

	.vh-midnight-confirmation__details {
		grid-template-columns: 1fr;
	}

	.vh-midnight-confirmation__details > div {
		border-right: 0;
		border-bottom: 1px solid var(--vh-midnight-line);
	}

	.vh-midnight-confirmation__details > div:last-child {
		border-bottom: 0;
	}
}

/* Checkout - Light Ledger split. Selected visual direction. */
body.woocommerce-checkout.vh-midnight-checkout,
body.vh-midnight-order-received {
	background: #f5f4f0;
	color: #111111;
}

body.woocommerce-checkout.vh-midnight-checkout .main-page-wrapper,
body.vh-midnight-order-received .main-page-wrapper {
	background: #f5f4f0;
}

body.woocommerce-checkout.vh-midnight-checkout .site-content,
body.vh-midnight-order-received .site-content {
	padding-block: clamp(44px, 5vw, 76px);
}

body.woocommerce-checkout.vh-midnight-checkout .wd-checkout-steps,
body.woocommerce-checkout.vh-midnight-checkout .checkout-steps {
	border-color: rgba(17, 17, 17, .16);
	color: #77746e;
}

body.woocommerce-checkout.vh-midnight-checkout .wd-checkout-steps li.active span,
body.woocommerce-checkout.vh-midnight-checkout .checkout-steps li.active span {
	border-color: #b98f45 !important;
	color: #8d682d !important;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	border: 1px solid rgba(17, 17, 17, .16) !important;
	border-left: 3px solid #b98f45 !important;
	background: #ffffff;
	color: #1a1a1a;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before {
	color: #b98f45 !important;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-form-login, .checkout_coupon) {
	border-color: rgba(17, 17, 17, .16);
	background: #ffffff;
	color: #171717;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout {
	grid-template-columns: minmax(0, 1fr) minmax(350px, 410px);
	gap: clamp(24px, 3vw, 42px);
	width: min(1240px, calc(100vw - 64px));
}

body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead {
	grid-column: 1;
	grid-row: 1;
	max-width: 650px;
	padding: clamp(12px, 1.8vw, 24px) 0 clamp(8px, 1vw, 16px);
	color: #151515;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__eyebrow,
body.vh-midnight-order-received .vh-midnight-confirmation__eyebrow {
	color: #a77d3e;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead h1 {
	color: #111111;
	font-size: clamp(32px, 3.7vw, 54px);
	font-weight: 600;
	letter-spacing: .025em;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead p {
	color: #6f6c67;
}

body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .customer-details {
	grid-column: 1;
	grid-row: 2;
	border: 1px solid rgba(17, 17, 17, .72);
	border-top: 2px solid #b98f45;
	background: #ffffff;
	box-shadow: none;
	color: #151515;
}

body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
	grid-column: 2;
	grid-row: 1 / span 2;
	border: 0;
	border-top: 2px solid #b98f45;
	background: #11110f;
	box-shadow: 0 18px 44px rgba(18, 16, 12, .1);
	color: #f6f2ea;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-billing-fields, .woocommerce-additional-fields) h3 {
	border-bottom-color: rgba(17, 17, 17, .14);
	color: #171717;
}

body.woocommerce-checkout.vh-midnight-checkout #order_review_heading {
	border-bottom-color: rgba(255, 255, 255, .16);
	color: #f6f2ea;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(label, .woocommerce-input-wrapper, .form-row, .select2-selection__rendered) {
	color: #202020;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(input, textarea, select, .select2-container--default .select2-selection--single) {
	border-color: #d1d0cc !important;
	background: #ffffff !important;
	box-shadow: none;
	color: #171717 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(input, textarea, select):focus,
body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--open .select2-selection--single {
	border-color: #a77d3e !important;
	box-shadow: inset 0 0 0 1px #a77d3e;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(input, textarea)::placeholder {
	color: #9a9791;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .vh-checkout-field-invalid :is(input, textarea, select) {
	border-color: #a77d3e !important;
	box-shadow: inset 0 0 0 1px #a77d3e;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .vh-checkout-field-error {
	margin-top: 8px;
	color: #956d30;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .015em;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review :is(.woocommerce-checkout-review-order-table, .woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td, #payment, #payment label, #payment .payment_box, #payment .woocommerce-privacy-policy-text, #payment .woocommerce-terms-and-conditions-wrapper) {
	color: #f6f2ea;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(th, td) {
	border-color: rgba(255, 255, 255, .14);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount bdi {
	color: #d0ad6a;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #payment div.payment_box,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #payment ul.payment_methods .woocommerce-info {
	border-color: rgba(208, 173, 106, .32);
	background: rgba(208, 173, 106, .09);
	color: rgba(246, 242, 234, .82);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #place_order {
	border-color: #d0ad6a !important;
	background: #d0ad6a !important;
	color: #11110f !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #place_order:hover,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #place_order:focus {
	background: transparent !important;
	color: #d0ad6a !important;
}

body.vh-midnight-order-received .woocommerce-order {
	width: min(760px, calc(100vw - 64px));
}

body.vh-midnight-order-received .vh-midnight-confirmation {
	min-height: min(720px, 70vh);
	padding: clamp(22px, 4vw, 58px) 0;
}

body.vh-midnight-order-received .vh-midnight-confirmation__frame {
	border-color: rgba(185, 143, 69, .82);
	background:
		linear-gradient(135deg, rgba(208, 173, 106, .08), transparent 56%),
		#11110f;
}

body.vh-midnight-order-received .vh-midnight-confirmation :is(h1, .vh-midnight-confirmation__details dd) {
	color: #f6f2ea;
}

body.vh-midnight-order-received .vh-midnight-confirmation__copy,
body.vh-midnight-order-received .vh-midnight-confirmation__details dt {
	color: rgba(246, 242, 234, .62);
}

body.vh-midnight-order-received .vh-midnight-confirmation__details,
body.vh-midnight-order-received .vh-midnight-confirmation__details > div {
	border-color: rgba(255, 255, 255, .14);
}

@media (max-width: 900px) {
	body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout {
		grid-template-columns: 1fr;
		width: min(760px, calc(100vw - 40px));
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead,
	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .customer-details,
	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
		grid-column: 1;
		grid-row: auto;
	}
}

@media (max-width: 768px) {
	body.woocommerce-checkout.vh-midnight-checkout .site-content,
	body.vh-midnight-order-received .site-content {
		padding-block: 30px 48px;
	}

	body.woocommerce-checkout.vh-midnight-checkout :is(.wd-checkout-steps, .checkout-steps, .woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-form-login, .checkout_coupon),
	body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout,
	body.vh-midnight-order-received .woocommerce-order {
		width: min(calc(100% - 32px), 560px);
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead {
		padding-top: 4px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-midnight-checkout__lead h1 {
		font-size: 32px;
	}

	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .customer-details,
	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
		padding: 22px 18px;
	}

body.vh-midnight-order-received .vh-midnight-confirmation {
		padding: 0;
	}
}

/* Checkout - reference layout. The theme header and footer stay untouched. */
body.woocommerce-checkout.vh-midnight-checkout {
	background: #f7f6f3;
	color: #121212;
}

body.woocommerce-checkout.vh-midnight-checkout .main-page-wrapper,
body.woocommerce-checkout.vh-midnight-checkout .site-content {
	background: #f7f6f3;
}

body.woocommerce-checkout.vh-midnight-checkout .site-content {
	padding-block: clamp(38px, 4vw, 66px) clamp(58px, 6vw, 92px);
}

body.woocommerce-checkout.vh-midnight-checkout :is(.wd-checkout-steps, .checkout-steps) {
	display: none;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-form-login, .checkout_coupon) {
	width: min(1340px, calc(100vw - 64px));
	margin: 0 auto 20px;
	border: 1px solid rgba(185, 143, 69, .5) !important;
	border-left: 3px solid #bd934a !important;
	border-radius: 0;
	background: #fff;
	box-shadow: none;
	color: #171717;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(390px, 438px);
	gap: clamp(28px, 3.1vw, 48px);
	align-items: start;
	width: min(1340px, calc(100vw - 64px));
	margin: 0 auto;
}

body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .customer-details,
body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	border-radius: 0;
	box-shadow: none;
}

body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .customer-details {
	grid-column: 1;
	border: 1px solid rgba(22, 22, 20, .76);
	border-top: 2px solid #c29a53;
	background: #fff;
	color: #151515;
	padding: clamp(26px, 3vw, 38px);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-panel-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 24px;
	margin: 0 0 30px;
	padding: 0 0 24px;
	border-bottom: 1px solid rgba(20, 20, 18, .17);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-panel-heading h1 {
	margin: 0;
	color: #121212;
	font-size: clamp(19px, 1.8vw, 26px);
	font-weight: 600;
	letter-spacing: .05em;
	line-height: 1.1;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-panel-heading p {
	margin: 0;
	color: #65625e;
	font-size: 13px;
	line-height: 1.45;
	white-space: nowrap;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-panel-heading a {
	color: #151515;
	text-decoration: underline;
	text-decoration-color: #bd934a;
	text-underline-offset: 4px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields > h3 {
	display: none;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields {
	position: relative;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields > h3 {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0;
	color: #181818;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .09em;
	line-height: 24px;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields > h3::before {
	display: inline-grid;
	place-items: center;
	width: 24px;
	height: 24px;
	background: #111;
	color: #fff;
	content: '1';
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields > h3::after {
	content: 'Контактные данные';
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-auto-flow: row;
	column-gap: clamp(22px, 3vw, 42px);
	row-gap: 16px;
	padding-top: 44px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::before,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::after {
	position: absolute;
	color: #181818;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .09em;
	line-height: 24px;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::before {
	top: 0;
	left: calc(50% + clamp(11px, 1.5vw, 21px));
	display: inline-grid;
	place-items: center;
	width: 24px;
	height: 24px;
	background: #111;
	color: #fff;
	content: '2';
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::after {
	top: 0;
	left: calc(50% + clamp(44px, 4.5vw, 54px));
	content: 'Адрес доставки';
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper > p.form-row {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout :is(#billing_first_name_field, #billing_last_name_field, #billing_phone_field, #billing_email_field) {
	grid-column: 1;
}

body.woocommerce-checkout.vh-midnight-checkout :is(#billing_country_field, #billing_address_1_field) {
	grid-column: 2;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details p.form-row label {
	margin-bottom: 7px;
	color: #31302d;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .02em;
	line-height: 1.4;
	text-transform: none;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(input.input-text, select, textarea, .select2-container--default .select2-selection--single) {
	min-height: 48px;
	border: 1px solid #cfceca !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #171717 !important;
	font-size: 14px;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(input.input-text, select) {
	padding-inline: 13px;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details textarea.input-text {
	min-height: 106px;
	padding: 13px;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(input.input-text, select, textarea):focus,
body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--open .select2-selection--single {
	border-color: #bd934a !important;
	box-shadow: inset 0 0 0 1px #bd934a !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields {
	margin-top: 30px;
	padding-top: 24px;
	border-top: 1px solid rgba(20, 20, 18, .14);
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields__field-wrapper {
	display: block;
}

body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
	grid-column: 2;
	position: sticky;
	top: calc(var(--vh-admin-offset, 0px) + 28px);
	min-height: 620px;
	border-top: 2px solid #c6a15e;
	background: #11110f;
	color: #f6f2eb;
	padding: clamp(28px, 3vw, 38px);
}

body.woocommerce-checkout.vh-midnight-checkout #order_review_heading {
	margin: 0 0 26px;
	padding: 0 0 20px;
	border-bottom: 1px solid rgba(255, 255, 255, .24);
	color: #f6f2eb;
	font-size: 19px;
	font-weight: 500;
	letter-spacing: .06em;
	line-height: 1.1;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table {
	display: table !important;
	width: 100%;
	margin: 0 0 28px;
	border: 0;
	background: transparent;
	table-layout: auto;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table thead {
	display: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(tbody, tfoot, tr, th, td) {
	display: block !important;
	width: auto !important;
	border: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tbody tr.cart_item {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	padding: 0 0 22px;
	margin-bottom: 20px;
	border-bottom: 1px solid rgba(255, 255, 255, .22);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .product-name {
	display: flex !important;
	gap: 15px;
	min-width: 0;
	padding: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-product__image {
	display: grid;
	flex: 0 0 54px;
	place-items: center;
	width: 54px;
	height: 70px;
	border: 1px solid rgba(255, 255, 255, .16);
	background: rgba(255, 255, 255, .04);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-product__image img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-product__details {
	display: block;
	min-width: 0;
	color: rgba(246, 242, 235, .72);
	font-size: 11px;
	line-height: 1.5;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-product__title {
	display: block;
	color: #f6f2eb;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .03em;
	line-height: 1.45;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-product__quantity {
	display: block;
	margin-top: 4px;
	color: rgba(246, 242, 235, .62);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .product-total {
	align-self: start;
	padding: 0;
	color: #f6f2eb;
	font-size: 13px;
	font-weight: 700;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot {
	border-top: 1px solid rgba(255, 255, 255, .22);
	border-bottom: 1px solid rgba(255, 255, 255, .22);
	padding-block: 12px;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot tr {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 16px;
	padding: 9px 0;
	color: rgba(246, 242, 235, .72);
	font-size: 12px;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot td {
	color: #f6f2eb;
	font-weight: 600;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total {
	padding-top: 18px;
	margin-top: 6px;
	border-top: 1px solid rgba(255, 255, 255, .22);
	color: #f6f2eb;
	font-size: 14px;
	font-weight: 700;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total :is(th, td) {
	color: #f6f2eb;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount bdi {
	color: #d4b16d;
	font-size: clamp(22px, 2vw, 28px);
	font-weight: 500;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review :is(#payment, #payment label, #payment .payment_box, #payment .woocommerce-privacy-policy-text, #payment .woocommerce-terms-and-conditions-wrapper) {
	color: rgba(246, 242, 235, .72);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-payment {
	margin-top: 26px;
	padding-top: 24px;
	border-top: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #payment div.payment_box,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #payment ul.payment_methods .woocommerce-info {
	border: 1px solid rgba(212, 177, 109, .25);
	border-radius: 0;
	background: rgba(212, 177, 109, .08);
	color: rgba(246, 242, 235, .78);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #place_order {
	min-height: 56px;
	margin-top: 22px;
	border: 1px solid #d4b16d !important;
	border-radius: 0 !important;
	background: #d4b16d !important;
	box-shadow: none !important;
	color: #11110f !important;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .15em;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #place_order:hover,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #place_order:focus {
	background: transparent !important;
	color: #d4b16d !important;
}

/* Keep WooCommerce order recalculation from washing the dark order panel out. */
body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
	isolation: isolate;
	background: #11110f !important;
	background-image: none !important;
	color: #f6f2eb !important;
	opacity: 1 !important;
	filter: none !important;
	visibility: visible !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review :is(#order_review, .woocommerce-checkout-review-order, .wd-table-wrapper) {
	position: relative;
	z-index: 1;
	background: transparent !important;
	color: #f6f2eb !important;
	opacity: 1 !important;
	filter: none !important;
	visibility: visible !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .blockOverlay {
	background: rgba(17, 17, 15, .16) !important;
	opacity: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review :is(.blockOverlay, .wd-loader-overlay)::after {
	border-color: rgba(246, 242, 235, .22);
	border-top-color: #d4b16d;
}

@media (max-width: 980px) {
	body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout {
		grid-template-columns: 1fr;
		width: min(760px, calc(100vw - 40px));
	}

	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .customer-details,
	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
		grid-column: 1;
	}

	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
		position: static;
	}
}

@media (max-width: 640px) {
	body.woocommerce-checkout.vh-midnight-checkout .site-content {
		padding-block: 28px 48px;
	}

	body.woocommerce-checkout.vh-midnight-checkout :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-form-login, .checkout_coupon),
	body.woocommerce-checkout.vh-midnight-checkout form.checkout.woocommerce-checkout {
		width: min(calc(100vw - 28px), 560px);
	}

	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .customer-details,
	body.woocommerce-checkout.vh-midnight-checkout form.woocommerce-checkout > .checkout-order-review {
		padding: 22px 18px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-panel-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
		margin-bottom: 24px;
		padding-bottom: 18px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper {
		grid-template-columns: 1fr;
		gap: 16px;
		padding-top: 94px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::before {
		top: 48px;
		left: 0;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::after {
		top: 48px;
		left: 34px;
	}

	body.woocommerce-checkout.vh-midnight-checkout :is(#billing_first_name_field, #billing_last_name_field, #billing_phone_field, #billing_email_field, #billing_country_field, #billing_address_1_field) {
		grid-column: 1;
	}

	body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tbody tr.cart_item {
		gap: 12px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-product__image {
		flex-basis: 46px;
		width: 46px;
		height: 62px;
	}
}

/* Checkout reference polish: balanced customer form and a complete order panel. */
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: 18px;
	row-gap: 17px;
}

body.woocommerce-checkout.vh-midnight-checkout :is(#billing_first_name_field, #billing_last_name_field, #billing_phone_field, #billing_email_field) {
	grid-column: 1 / span 2;
}

body.woocommerce-checkout.vh-midnight-checkout :is(#billing_country_field, #billing_city_field, #billing_address_1_field) {
	grid-column: 3 / -1;
}

body.woocommerce-checkout.vh-midnight-checkout #billing_postcode_field {
	grid-column: 3;
}

body.woocommerce-checkout.vh-midnight-checkout #billing_address_2_field {
	grid-column: 4;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .woocommerce-billing-fields__field-wrapper > p.form-row {
	display: block !important;
	min-width: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details :is(#billing_city_field, #billing_postcode_field, #billing_address_2_field) {
	display: block !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields {
	margin-top: 26px;
	padding-top: 22px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle {
	width: min(1340px, calc(100vw - 64px));
	margin: 22px auto 0;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	width: 100%;
	min-height: 0;
	margin: 0;
	padding: 13px 17px 13px 42px;
	border: 1px solid rgba(185, 143, 69, .38) !important;
	border-left: 3px solid #bd934a !important;
	background: #fff;
	color: #2b2926;
	font-size: 13px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
	left: 17px;
	color: #bd934a;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle .showcoupon {
	color: #9b7434;
	font-weight: 700;
	text-decoration-color: #bd934a;
	text-underline-offset: 4px;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon {
	display: flex;
	align-items: end;
	gap: 14px;
	width: min(630px, calc(100vw - 64px));
	margin: 12px auto 0;
	padding: 18px;
	border: 1px solid rgba(185, 143, 69, .38) !important;
	border-left: 3px solid #bd934a !important;
	background: #fff;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon > p:first-child {
	flex: 1 1 auto;
	margin: 0;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon > p:last-child {
	margin: 0;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon .button {
	min-height: 48px;
	border: 1px solid #171717;
	border-radius: 0;
	background: #171717;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurances {
	display: grid;
	gap: 16px;
	margin-top: 30px;
	padding-top: 26px;
	border-top: 1px solid rgba(255, 255, 255, .22);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	color: #f6f2eb;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance > span:last-child {
	display: grid;
	gap: 3px;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance strong {
	color: #f6f2eb;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.25;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance small {
	color: rgba(246, 242, 235, .62);
	font-size: 11px;
	line-height: 1.35;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon {
	position: relative;
	display: block;
	width: 28px;
	height: 28px;
	border: 1px solid rgba(212, 177, 109, .75);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--warranty .vh-checkout-assurance__icon {
	border-radius: 50% 50% 46% 46%;
	clip-path: polygon(50% 0, 94% 16%, 84% 72%, 50% 100%, 16% 72%, 6% 16%);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon {
	border-radius: 50%;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::before {
	position: absolute;
	top: 5px;
	left: 5px;
	width: 10px;
	height: 10px;
	border: solid #d4b16d;
	border-width: 1px 1px 0 0;
	content: '';
	transform: rotate(45deg);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--secure .vh-checkout-assurance__icon {
	width: 22px;
	height: 17px;
	margin: 8px 3px 3px;
	border-radius: 1px;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--secure .vh-checkout-assurance__icon::before {
	position: absolute;
	bottom: 100%;
	left: 4px;
	width: 12px;
	height: 9px;
	border: 1px solid rgba(212, 177, 109, .75);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
	content: '';
}

@media (max-width: 640px) {
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper {
		display: grid;
		grid-template-columns: 1fr;
		gap: 16px;
		padding-top: 44px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::before,
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields__field-wrapper::after {
		display: none;
	}

	body.woocommerce-checkout.vh-midnight-checkout :is(#billing_first_name_field, #billing_last_name_field, #billing_phone_field, #billing_email_field, #billing_country_field, #billing_city_field, #billing_address_1_field, #billing_postcode_field, #billing_address_2_field) {
		grid-column: 1;
	}

	body.woocommerce-checkout.vh-midnight-checkout #billing_country_field {
		position: relative;
		margin-top: 30px !important;
	}

	body.woocommerce-checkout.vh-midnight-checkout #billing_country_field::before {
		display: inline-grid;
		place-items: center;
		width: 24px;
		height: 24px;
		margin: 0 9px 12px 0;
		background: #111;
		color: #fff;
		content: '2';
		font-size: 11px;
		font-weight: 800;
	}

	body.woocommerce-checkout.vh-midnight-checkout #billing_country_field::after {
		position: absolute;
		top: 4px;
		left: 34px;
		content: 'Адрес доставки';
		font-size: 11px;
		font-weight: 800;
		letter-spacing: .09em;
		line-height: 24px;
		text-transform: uppercase;
	}

	body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon {
		align-items: stretch;
		flex-direction: column;
		width: min(calc(100vw - 28px), 560px);
	}

	body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon .button {
		width: 100%;
	}
}

/* Checkout form structure: the two field groups must never reflow into gaps. */
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(28px, 4vw, 52px);
	align-items: start;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-section {
	min-width: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-section__heading {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 18px;
	padding: 0 0 17px;
	border-bottom: 1px solid rgba(20, 20, 18, .14);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-section__heading > span {
	display: inline-grid;
	flex: 0 0 24px;
	place-items: center;
	width: 24px;
	height: 24px;
	background: #111;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-section__heading h2 {
	margin: 0;
	color: #181818;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .09em;
	line-height: 24px;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields {
	position: static;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 17px;
	padding-top: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields::before,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields::after,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields #billing_country_field::before,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields #billing_country_field::after {
	display: none !important;
	content: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields > p.form-row {
	grid-column: auto !important;
	display: block !important;
	min-width: 0;
	margin: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	column-gap: 14px;
	row-gap: 17px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address :is(#billing_country_field, #billing_city_field, #billing_address_1_field) {
	grid-column: 1 / -1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address #billing_postcode_field {
	grid-column: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address #billing_address_2_field {
	grid-column: 2 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-additional-fields {
	margin-top: 28px;
	padding-top: 22px;
}

/* Use simple vector-free line marks that remain crisp across browsers. */
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--warranty .vh-checkout-assurance__icon {
	border-radius: 50%;
	clip-path: none;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--warranty .vh-checkout-assurance__icon::before {
	position: absolute;
	inset: 7px;
	border: 1px solid #d4b16d;
	border-radius: 50%;
	content: '';
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::before {
	top: 7px;
	left: 6px;
	width: 9px;
	height: 9px;
}

@media (max-width: 640px) {
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields,
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
		grid-template-columns: 1fr;
		gap: 16px;
	}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address :is(#billing_country_field, #billing_city_field, #billing_address_1_field, #billing_postcode_field, #billing_address_2_field) {
		grid-column: 1 !important;
		margin-top: 0 !important;
	}
}

/* Final checkout composition: a compact left form and a quiet dark summary. */
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot {
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid rgba(20, 20, 18, .14);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot .vh-checkout-form-section__heading {
	margin-bottom: 17px;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot .woocommerce-checkout-payment {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #181818;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot :is(#payment, #payment label, #payment .payment_box, #payment .woocommerce-privacy-policy-text, #payment .woocommerce-terms-and-conditions-wrapper) {
	color: #181818;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods li {
	margin: 0;
	padding: 0;
	border: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods label {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot :is(input[type='radio'], input[type='checkbox']) {
	accent-color: #111;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment div.payment_box,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods .woocommerce-info {
	margin: 8px 0 0;
	padding: 13px 15px;
	border: 1px solid rgba(185, 143, 69, .34);
	border-radius: 0;
	background: #f8f6f1;
	box-shadow: none;
	color: rgba(24, 24, 24, .74);
	font-size: 12px;
	line-height: 1.55;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment .form-row.place-order {
	margin: 20px 0 0;
	padding: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment .woocommerce-privacy-policy-text {
	margin-top: 12px;
	font-size: 11px;
	line-height: 1.55;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-action-slot {
	margin-top: 26px;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-action-slot #place_order {
	width: 100%;
	min-height: 56px;
	margin: 0;
	border: 1px solid #d4b16d !important;
	border-radius: 0 !important;
	background: #d4b16d !important;
	box-shadow: none !important;
	color: #11110f !important;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .15em;
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-action-slot #place_order:hover,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-action-slot #place_order:focus {
	background: transparent !important;
	color: #d4b16d !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table {
	margin-bottom: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot {
	padding: 0;
	border-top: 0;
	border-bottom: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot tr {
	padding: 10px 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total {
	margin-top: 10px;
	padding: 22px 0;
	border-top: 1px solid rgba(255, 255, 255, .22);
	border-bottom: 1px solid rgba(255, 255, 255, .22);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurances {
	margin-top: 26px;
	padding-top: 0;
	border-top: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review :is(#order_review_heading, .vh-checkout-order-product__title) {
	color: #f6f2eb;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle {
	width: min(1340px, calc(100vw - 64px));
	margin: 26px auto 0;
	border: 1px solid rgba(185, 143, 69, .42);
	border-left-width: 3px;
	background: #fff;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	width: 100%;
	min-height: 54px;
	margin: 0;
	padding: 16px 20px;
	border: 0 !important;
	background: transparent;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	width: min(1340px, calc(100vw - 64px));
	margin: 0 auto;
	padding: 18px 20px;
	border: 1px solid rgba(185, 143, 69, .42) !important;
	border-top: 0 !important;
	border-left: 3px solid #bd934a !important;
	background: #fff;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon > p:first-child,
body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon > p:last-child {
	float: none !important;
	width: auto !important;
	margin: 0;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon input.input-text {
	width: 100%;
	min-height: 48px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields :is(input.input-text, select) {
	width: 100%;
	min-height: 48px;
}

@media (max-width: 640px) {
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot {
		margin-top: 24px;
		padding-top: 20px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle,
	body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon {
		width: min(calc(100vw - 28px), 560px);
	}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon {
		grid-template-columns: 1fr;
		gap: 12px;
	}
}

/* Final alignment lock for WooCommerce fragments injected after checkout refreshes. */
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields > h3 {
	display: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
	display: grid !important;
	grid-auto-flow: row;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	align-content: start;
	column-gap: 14px;
	row-gap: 17px;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > p.form-row {
	float: none !important;
	clear: none !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_country_field {
	order: 1;
	grid-column: 1 / -1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_city_field {
	order: 2;
	grid-column: 1 / -1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_address_1_field {
	order: 3;
	grid-column: 1 / -1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_postcode_field {
	order: 4;
	grid-column: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_address_2_field {
	order: 5;
	grid-column: 2 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment div.payment_box,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods .woocommerce-info {
	margin: 5px 0 2px 28px;
	padding: 0 0 0 13px;
	border: 0;
	border-left: 1px solid rgba(185, 143, 69, .68);
	border-radius: 0;
	background: transparent;
	color: rgba(24, 24, 24, .62);
	font-size: 11px;
	line-height: 1.5;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment div.payment_box::before {
	display: none;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment .payment_box :is(p, ul, ol):last-child {
	margin-bottom: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment .woocommerce-terms-and-conditions-wrapper {
	margin-top: 16px;
	font-size: 11px;
	line-height: 1.5;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
	line-height: 1.4;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
	position: static;
	flex: 0 0 auto;
	margin: 0;
	color: #bd934a;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon {
	column-gap: 12px;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon .form-row-first {
	min-width: 0;
}

body.woocommerce-checkout.vh-midnight-checkout form.checkout_coupon .form-row-last {
	align-self: end;
}

@media (max-width: 640px) {
	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
		grid-template-columns: 1fr !important;
	}

	body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > p.form-row {
		grid-column: 1 !important;
	}
}

/* Match the quiet line icons of the approved checkout reference. */
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--warranty .vh-checkout-assurance__icon {
	border-radius: 0;
	clip-path: polygon(50% 0, 92% 16%, 82% 74%, 50% 100%, 18% 74%, 8% 16%);
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--warranty .vh-checkout-assurance__icon::before {
	display: none;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::before {
	top: 6px;
	left: 6px;
	width: 12px;
	height: 12px;
	border: 1px solid #d4b16d;
	border-left-color: transparent;
	border-radius: 50%;
	transform: none;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::after {
	position: absolute;
	top: 4px;
	right: 4px;
	width: 5px;
	height: 5px;
	border: solid #d4b16d;
	border-width: 1px 1px 0 0;
	content: '';
	transform: rotate(45deg);
}

/* Checkout v3: fixed two-row composition matching the approved reference. */
body.woocommerce-checkout.vh-midnight-checkout .customer-details {
	background: #fff !important;
	color: #171717 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-panel-heading h1,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-section__heading h2,
body.woocommerce-checkout.vh-midnight-checkout #order_review_heading,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(th, td),
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-order-product__title {
	text-transform: uppercase;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-panel-heading h1 {
	font-size: 24px;
	font-weight: 500;
	letter-spacing: .07em;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-section__heading h2 {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .08em;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
	margin-top: 28px;
	padding-top: 24px;
	border-top: 1px solid rgba(20, 20, 18, .14);
}

body.woocommerce-checkout.vh-midnight-checkout :is(.vh-checkout-payment-slot, .vh-checkout-notes-slot) {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

body.woocommerce-checkout.vh-midnight-checkout :is(.vh-checkout-payment-slot, .vh-checkout-notes-slot) .vh-checkout-form-section__heading {
	margin: 0 0 17px;
	padding-bottom: 13px;
	border-bottom: 1px solid rgba(20, 20, 18, .14);
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
	grid-template-columns: 1fr !important;
	gap: 17px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_country_field, #billing_city_field, #billing_address_1_field, #billing_postcode_field, #billing_address_2_field) {
	grid-column: 1 !important;
	width: 100% !important;
	margin: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_country_field {
	order: 1;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_city_field {
	order: 2;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_address_1_field {
	order: 3;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_address_2_field {
	order: 4;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > #billing_postcode_field {
	order: 5;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-fields--address .select2-container,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-fields--address .select2-selection--single,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-fields--address .select2-selection__rendered {
	width: 100% !important;
	color: #171717 !important;
	opacity: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-fields--address .select2-selection__rendered {
	background: #fff !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-additional-fields {
	margin: 0;
	padding: 0;
	border: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-additional-fields__field-wrapper {
	display: block;
	margin: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot textarea.input-text {
	min-height: 122px;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle {
	width: 100%;
	margin: 16px 0 0;
	border: 1px solid rgba(185, 143, 69, .5);
	border-left: 3px solid #bd934a;
	background: #fbfaf7;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle .woocommerce-info {
	min-height: 48px;
	padding: 13px 15px;
	color: #1c1b19;
	font-size: 12px;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #order_review_heading {
	margin: 0 0 24px;
	padding: 0;
	border: 0;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: .1em;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table {
	border: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table thead {
	display: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tbody tr.cart_item {
	border-top: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .18);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot {
	border-top: 0;
	border-bottom: 0;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table tfoot tr {
	padding: 12px 0;
	border-bottom: 1px solid rgba(255, 255, 255, .18);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total {
	margin: 0;
	padding: 19px 0;
	border-top: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .18);
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(.product-total, td:last-child, th:last-child) {
	color: #f6f2eb;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount bdi {
	color: #d4b16d;
	font-size: clamp(22px, 2vw, 28px);
	font-weight: 500;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::before,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::after,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--secure .vh-checkout-assurance__icon::before {
	border-color: rgba(246, 242, 235, .92) !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::before {
	border-left-color: transparent !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance--delivery .vh-checkout-assurance__icon::after {
	border-left-color: transparent !important;
	border-bottom-color: transparent !important;
}

@media (max-width: 700px) {
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns,
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
		margin-top: 24px;
		padding-top: 20px;
	}
}

/* Checkout v4 cascade finalizer: overrides legacy checkout experiments above. */
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 44px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	grid-auto-flow: row !important;
	gap: 17px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields > p.form-row,
body.woocommerce-checkout.vh-midnight-checkout .woocommerce-billing-fields .vh-checkout-fields--address > :is(#billing_country_field, #billing_city_field, #billing_address_1_field, #billing_address_2_field, #billing_postcode_field) {
	grid-column: 1 / -1 !important;
	grid-row: auto !important;
	order: initial !important;
	float: none !important;
	clear: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection--single {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-height: 48px !important;
	background: #fff !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection__rendered {
	padding: 0 42px 0 13px !important;
	color: #171717 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 46px !important;
	opacity: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection__arrow {
	height: 46px !important;
	filter: none !important;
	opacity: 1 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .customer-details .select2-container--default .select2-selection__arrow b {
	border-top-color: #5c5b57 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods {
	display: grid !important;
	gap: 14px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods li {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin: 0 !important;
	color: #191919 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment div.payment_box,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-payment-slot #payment ul.payment_methods .woocommerce-info {
	margin: 7px 0 0 26px !important;
	padding: 0 0 0 12px !important;
	border: 0 !important;
	border-left: 1px solid rgba(185, 143, 69, .65) !important;
	background: transparent !important;
	color: #6b6862 !important;
	font-size: 11px !important;
	line-height: 1.55 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-additional-fields,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-additional-fields__field-wrapper,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .form-row {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot textarea.input-text {
	min-height: 106px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot [data-vh-checkout-coupon-slot] {
	margin-top: 17px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle .woocommerce-info {
	margin: 0 !important;
	background: #fbfaf7 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle {
	border: 1px solid rgba(185, 143, 69, .55) !important;
	border-left: 3px solid #bd934a !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-notes-slot .woocommerce-form-coupon-toggle .woocommerce-info {
	padding: 13px 15px !important;
	border: 0 !important;
	box-shadow: none !important;
	color: #1d1c19 !important;
	font-size: 12px !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #order_review_heading,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-order-product__title,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(th, td),
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .vh-checkout-assurance strong {
	text-transform: uppercase !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review #order_review_heading {
	margin: 0 0 22px !important;
	border: 0 !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	letter-spacing: .1em !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(thead, tbody, tfoot, tr, th, td) {
	border-top: 0 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table thead {
	display: none !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table :is(.product-name, .product-total) {
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .04em !important;
}

body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount,
body.woocommerce-checkout.vh-midnight-checkout .checkout-order-review .woocommerce-checkout-review-order-table .order-total .amount bdi {
	font-size: 28px !important;
	font-weight: 500 !important;
}

body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon::before,
body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-assurance__icon::after {
	border-color: rgba(255, 255, 255, .92) !important;
	color: rgba(255, 255, 255, .92) !important;
}

@media (max-width: 700px) {
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-form-columns,
	body.woocommerce-checkout.vh-midnight-checkout .vh-checkout-lower-grid {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
}

/* Order confirmation: retain the ceremony, remove WooCommerce technical noise. */
body.vh-midnight-order-received .site-content {
	padding-block: clamp(18px, 2vw, 30px) clamp(28px, 3vw, 42px);
}

body.vh-midnight-order-received .woocommerce-order {
	width: min(720px, calc(100vw - 48px));
}

body.vh-midnight-order-received .vh-midnight-confirmation {
	min-height: 0;
	padding: clamp(8px, 1.4vw, 18px) 0;
}

body.vh-midnight-order-received .vh-midnight-confirmation__frame {
	padding: clamp(30px, 3.2vw, 44px) clamp(22px, 4.6vw, 56px) clamp(32px, 3.4vw, 46px);
}

body.vh-midnight-order-received .vh-midnight-confirmation__eyebrow {
	margin-bottom: 10px;
}

body.vh-midnight-order-received .vh-midnight-confirmation__mark {
	margin-bottom: 14px;
	font-size: 46px;
}

body.vh-midnight-order-received .vh-midnight-confirmation h1 {
	font-size: clamp(30px, 3.3vw, 44px);
}

body.vh-midnight-order-received .vh-midnight-confirmation__copy {
	margin: 14px auto 22px;
	line-height: 1.55;
}

body.vh-midnight-order-received .vh-midnight-confirmation__details {
	margin-bottom: 22px;
}

body.vh-midnight-order-received .vh-midnight-confirmation__details > div {
	padding-block: 14px;
}

body.vh-midnight-order-received .woocommerce-order-details {
	margin: 24px 0 0;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, .16);
	color: rgba(246, 242, 234, .92);
	text-align: left;
}

body.vh-midnight-order-received .woocommerce-order-details__title,
body.vh-midnight-order-received .woocommerce-customer-details {
	display: none !important;
}

body.vh-midnight-order-received .woocommerce-order-details .woocommerce-table--order-details {
	width: 100%;
	margin: 0;
	border: 0;
	background: transparent;
	color: rgba(246, 242, 234, .92);
}

body.vh-midnight-order-received .woocommerce-order-details .woocommerce-table--order-details :is(th, td) {
	padding: 13px 0;
	border-color: rgba(255, 255, 255, .14);
	background: transparent;
	color: rgba(246, 242, 234, .92);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.45;
}

body.vh-midnight-order-received .woocommerce-order-details .woocommerce-table--order-details :is(.product-name, .product-name a) {
	color: #f6f2ea;
	font-weight: 700;
}

body.vh-midnight-order-received .woocommerce-order-details .woocommerce-table--order-details :is(.product-total, .product-total *, tfoot td, tfoot td *) {
	color: #d0ad6a;
	font-weight: 700;
	text-align: right;
}

body.vh-midnight-order-received .woocommerce-order-details .woocommerce-table--order-details .order-total :is(th, td, bdi) {
	color: #d0ad6a;
	font-size: 18px;
	font-weight: 700;
}

/* Desktop contact strip: approved "boutique label" header layout. */
.vh-top-contact-socials {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
}

.vh-top-contact-tagline {
	display: none;
}

@media (min-width: 769px) {
	/* Keep the boutique name and its phone number on the same text baseline. */
	.vh-top-contact-phone {
		--vh-phone-label-inset: 7px;
		justify-items: start;
		padding-inline-start: var(--vh-phone-label-inset);
		text-align: left;
	}

	.vh-top-contact-phone::before {
		margin-inline-start: calc(-1 * var(--vh-phone-label-inset));
	}

	:root {
		--vh-topbar-height: 52px;
	}

	.vh-top-contact-inner {
		display: grid;
		grid-template-columns: minmax(340px, 1fr) auto minmax(340px, 1fr);
		align-items: center;
		gap: 24px;
		width: min(100%, 1520px);
		margin-inline: auto;
		padding-inline: clamp(24px, 3vw, 56px);
	}

	.vh-top-contact-message {
		grid-column: 1;
		justify-self: start;
		justify-content: flex-start;
		gap: 9px;
	}

	.vh-top-contact-message > span:first-child,
	.vh-top-contact-divider {
		display: none;
	}

	.vh-top-contact-phone {
		display: grid;
		gap: 4px;
		min-width: 164px;
		color: #fff;
		font-size: 13px;
		font-weight: 700;
		letter-spacing: .02em;
		line-height: 1.2;
		white-space: nowrap;
	}

	.vh-top-contact-phone::before {
		width: max-content;
		padding: 3px 7px 2px;
		border: 1px solid #6d5a31;
		color: #e0bd7d;
		font-size: 8px;
		font-weight: 800;
		letter-spacing: .13em;
		line-height: 1.15;
		content: attr(data-vh-phone-label);
	}

	.vh-top-contact-tagline {
		display: block;
		grid-column: 2;
		color: #d7d4ce;
		font-size: 10px;
		font-weight: 700;
		letter-spacing: .12em;
		line-height: 1.2;
		text-transform: uppercase;
		white-space: nowrap;
	}

	.vh-top-contact-socials {
		grid-column: 3;
		justify-self: end;
		gap: 10px;
	}
}

@media (min-width: 769px) and (max-width: 1080px) {
	:root {
		--vh-topbar-height: 44px;
	}

	.vh-top-contact-inner {
		display: flex;
		justify-content: space-between;
		gap: 12px;
		padding-inline: 18px;
	}

	.vh-top-contact-message {
		justify-content: flex-start;
		gap: 8px;
		min-width: 0;
	}

	.vh-top-contact-message > span:first-child,
	.vh-top-contact-divider,
	.vh-top-contact-tagline {
		display: none;
	}

	.vh-top-contact-phone {
		--vh-phone-label-inset: 5px;
		display: grid;
		gap: 3px;
		min-width: 0;
		font-size: 11px;
		font-weight: 700;
		line-height: 1.15;
		white-space: nowrap;
	}

	.vh-top-contact-phone::before {
		width: max-content;
		padding: 2px 5px;
		border: 1px solid #6d5a31;
		color: #e0bd7d;
		font-size: 7px;
		font-weight: 800;
		letter-spacing: .11em;
		line-height: 1.1;
		content: attr(data-vh-phone-label);
	}

	.vh-top-contact-socials {
		margin-left: auto;
		gap: 8px;
	}
}

@media (max-width: 768px) {
	.vh-top-contact-socials {
		margin-left: auto;
	}

	.vh-top-contact-tagline {
		display: none !important;
	}
}

@media (max-width: 700px) {
	body.vh-midnight-order-received .site-content {
		padding-block: 18px 30px;
	}

	body.vh-midnight-order-received .woocommerce-order {
		width: min(calc(100vw - 32px), 560px);
	}

	body.vh-midnight-order-received .vh-midnight-confirmation__frame {
		padding: 28px 20px 30px;
	}

body.vh-midnight-order-received .woocommerce-order-details .woocommerce-table--order-details :is(th, td) {
		font-size: 12px;
	}
}

/* Contacts page: keep the title compact and readable at every breakpoint. */
.vh-contact-hero h1 {
	max-width: 600px;
	font-size: clamp(34px, 4vw, 58px);
	letter-spacing: .08em;
	line-height: 1;
}

@media (max-width: 760px) {
	.vh-contact-hero h1 {
		font-size: clamp(30px, 8vw, 42px);
		letter-spacing: .08em;
	}
}

/* Remove Woodmart's outer page gutter while preserving component-level spacing. */
.wd-page-content > .wd-content-layout.container {
	padding-inline: 0 !important;
}

/* Persistent contact strip: consultation left, the main Crocus phone centered. */
.vh-top-contact,
body.vh-scrolled .vh-top-contact,
body.home:not(.vh-scrolled) .vh-top-contact {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: translate3d(0, 0, 0) !important;
}

.vh-top-contact-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
	align-items: center;
	width: 100% !important;
	max-width: none !important;
	min-height: var(--vh-topbar-height);
	gap: 16px;
	padding-inline: clamp(18px, 2.2vw, 36px);
	text-align: initial;
}

.vh-top-contact-tagline {
	display: block !important;
	grid-column: 1;
	justify-self: start;
	min-width: 0;
	color: #d7d4ce;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.2;
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.vh-top-contact > .vh-top-contact-inner > .vh-top-contact-phone {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	grid-column: 2;
	grid-row: 1;
	justify-content: center;
	min-width: 150px;
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .04em;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
}

.vh-top-contact > .vh-top-contact-inner > .vh-top-contact-phone::before {
	display: none !important;
	content: none !important;
}

.vh-top-contact-phone-icon {
	display: block;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	color: #e0bd7d;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.vh-top-contact-socials {
	display: inline-flex !important;
	grid-column: 3;
	justify-self: end;
	gap: 10px;
}

.vh-site-header,
body.vh-scrolled .vh-site-header,
body.home:not(.vh-scrolled) .vh-site-header {
	top: calc(var(--vh-admin-offset) + var(--vh-topbar-height)) !important;
}

@media (max-width: 768px) {
	.vh-top-contact-inner {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
		gap: 8px;
		padding-inline: 12px;
	}

	.vh-top-contact-tagline {
		display: none !important;
	}

	.vh-top-contact > .vh-top-contact-inner > .vh-top-contact-phone {
		grid-column: auto;
		grid-row: auto;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: flex-start;
		min-width: 0;
		flex: 0 0 auto;
		flex-direction: row !important;
		gap: 7px;
		color: #fff !important;
		font-size: 11px;
		line-height: 1.15;
		text-align: left;
		white-space: nowrap !important;
	}

	.vh-top-contact-phone-icon {
		flex-basis: 16px;
		width: 16px;
		height: 16px;
		color: #fff !important;
	}

	.vh-top-contact-socials {
		grid-column: auto;
		justify-self: auto;
		margin-left: auto;
		gap: 10px;
	}

	.vh-top-contact-socials a {
		color: #fff !important;
	}
}

/* Selected mobile topbar: keep the product title below both fixed bars. */
@media (max-width: 760px) {
	body.single-product .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 58px) !important;
	}
}

/* Contacts map: use the provider only inside the iframe, without extra overlays. */
.vh-contact-map-label {
	display: none !important;
}

.vh-contact-rail-actions .vh-contact-btn {
	flex: 1 1 0;
	min-width: 0;
}

.vh-contact-btn-icon {
	display: block;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin-inline-end: 9px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

@media (max-width: 760px) {
	.vh-contact-rail-actions .vh-contact-btn {
		width: 100%;
	}
}

/* Mobile product card preview: large media first, then action, details and variants. */
@media (max-width: 760px) {
	body.single-product .main-page-wrapper {
		padding-top: calc(var(--vh-admin-offset) + 104px) !important;
	}

	body.single-product .vh-product-mobile-head {
		padding: 28px 18px 18px;
		border-bottom: 1px solid rgba(0, 0, 0, .12);
	}

	body.single-product .vh-product-mobile-title {
		max-width: none;
		font-size: clamp(27px, 8vw, 38px);
		font-weight: 850;
		letter-spacing: .035em;
		line-height: .98;
	}

	body.single-product .vh-product-mobile-price {
		margin-top: 16px;
		color: #b88c48;
		font-size: 21px;
		font-weight: 800;
	}

	body.single-product .vh-product-media {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "main" "thumbs" "gallery";
		gap: 0;
		padding: 0;
		background: #f0efec;
	}

	body.single-product .vh-product-main-media {
		grid-area: main;
		min-height: min(124vw, 560px);
		background: #f0efec;
	}

	body.single-product .vh-product-main-media img {
		width: 100%;
		height: 100%;
		max-width: none;
		padding: 12px;
		object-fit: contain;
	}

	body.single-product .vh-product-media-label {
		top: 18px;
		left: 18px;
	}

	body.single-product .vh-product-thumb-rail {
		grid-area: thumbs;
		position: relative;
		top: auto;
		display: flex;
		flex-direction: row;
		gap: 8px;
		overflow-x: auto;
		padding: 14px 18px 6px;
		background: #f0efec;
	}

	body.single-product .vh-product-thumb {
		width: 72px;
		min-width: 72px;
		height: 72px;
		background: #fff;
	}

	body.single-product .vh-product-image-grid {
		grid-area: gallery;
		display: flex;
		gap: 10px;
		grid-template-columns: none;
		overflow-x: auto;
		margin: 0;
		padding: 10px 18px 18px;
		background: #f0efec;
	}

	body.single-product .vh-product-image-grid figure {
		min-width: 78vw;
		background: #fff;
	}

	body.single-product .vh-product-image-grid img {
		aspect-ratio: 1 / 1;
		padding: 16px;
	}

	body.single-product .vh-product-summary {
		border: 0;
	}

	body.single-product .vh-product-summary-inner {
		padding: 0 18px 34px;
	}

	body.single-product .vh-product-intro {
		padding-top: 23px;
		font-size: 14px;
		line-height: 1.58;
	}

	body.single-product .vh-product-cart {
		margin-top: 17px;
	}

	body.single-product .vh-product-cart .single_add_to_cart_button,
	body.single-product .vh-product-cart .button,
	body.single-product .vh-product-preorder-form button {
		min-height: 58px;
		background: #050505 !important;
		color: #fff !important;
		font-size: 12px;
		letter-spacing: .15em;
	}

	body.single-product .vh-product-cart .single_add_to_cart_button:hover,
	body.single-product .vh-product-cart .button:hover,
	body.single-product .vh-product-preorder-form button:hover {
		background: #c7a66b !important;
		color: #fff !important;
	}

	body.single-product .vh-product-option-block {
		margin-top: 25px;
		padding-top: 22px;
	}

	body.single-product .vh-product-swatches {
		gap: 10px;
		padding-bottom: 6px;
	}

	body.single-product .vh-product-swatch {
		flex: 0 0 178px;
		min-height: 82px;
		padding: 12px 10px;
	}

	body.single-product .vh-product-swatch-color {
		width: 54px;
		height: 54px;
	}

	body.single-product .vh-product-swatch-name {
		font-size: 11px;
		line-height: 1.25;
	}

	body.single-product .vh-product-care-panel {
		margin-top: 28px;
	}

	body.single-product .vh-product-care-main {
		display: none;
	}

	/* Service row on mobile: three icons in one line, names only. */
	body.single-product .vh-product-care-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0;
		margin-top: 0;
		border-top: 1px solid rgba(0, 0, 0, .12);
		border-bottom: 1px solid rgba(0, 0, 0, .12);
	}

	body.single-product .vh-product-care-grid > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 10px;
		min-height: 0;
		padding: 16px 8px 15px;
		border: 0;
		background: transparent;
		text-align: center;
	}

	body.single-product .vh-product-care-grid > div + div {
		border-top: 0;
		border-left: 1px solid rgba(0, 0, 0, .12);
	}

	body.single-product .vh-product-service-icon {
		width: auto;
		height: auto;
		border: 0;
		border-radius: 0;
		color: #080808;
	}

	body.single-product .vh-product-service-icon svg {
		width: 32px;
		height: 32px;
		fill: none;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.2;
	}

	body.single-product .vh-product-service-icon svg .vh-ic-accent {
		stroke: #b88c48;
	}

	body.single-product .vh-product-service-copy {
		display: grid;
		gap: 4px;
		min-width: 0;
	}

	body.single-product .vh-product-care-grid .vh-product-service-copy > strong {
		font-size: 10px;
		font-weight: 850;
		letter-spacing: .14em;
		text-transform: uppercase;
	}

	body.single-product .vh-product-care-grid .vh-product-service-copy > span {
		display: none;
	}

	body.single-product .vh-product-summary-note {
		margin-top: 18px;
	}

	body.single-product .vh-product-accordions {
		margin-top: 25px;
	}
}

/* Approved mobile product-card composition: one large image, one live gallery and no numbered labels. */
@media (max-width: 760px) {
	body.single-product .main-page-wrapper {
		/* Fixed black contact strip + white navigation + a clear gap before the product title. */
		padding-top: calc(var(--vh-admin-offset) + var(--vh-topbar-height) + 58px + 48px) !important;
	}

	body.single-product .vh-product-mobile-head {
		padding: 24px 18px 18px;
		border-bottom: 1px solid rgba(0, 0, 0, .12);
	}

	body.single-product .vh-product-mobile-title {
		font-size: clamp(28px, 8vw, 34px);
		line-height: 1.02;
	}

	body.single-product .vh-product-media {
		grid-template-areas: "main" "thumbs";
	}

	body.single-product .vh-product-main-media {
		min-height: min(120vw, 530px);
	}

	body.single-product .vh-product-thumb-rail {
		padding: 12px 18px 18px;
	}

	body.single-product .vh-product-thumb {
		width: 76px;
		min-width: 76px;
		height: 76px;
		border-color: rgba(0, 0, 0, .14);
	}

	body.single-product .vh-product-thumb.is-active {
		border-color: #b88c48;
		box-shadow: inset 0 0 0 1px #b88c48;
	}

	/* The thumbnail rail is the interactive gallery; do not repeat the same photos below it. */
	body.single-product .vh-product-image-grid {
		display: none !important;
	}

	body.single-product .vh-product-summary-inner {
		padding: 0 18px 36px;
	}

	body.single-product .vh-product-highlight-rail article > span {
		display: none;
	}

	body.single-product .vh-product-highlight-rail article h3 {
		margin-top: 0;
	}
}

/* Product variants: single horizontal row of square photo tiles with captions (approved variant C). */
.vh-product-summary .vh-product-swatch-media {
	display: grid;
	place-items: center;
	width: 96px;
	height: 96px;
	overflow: hidden;
	background: #f1f1ef;
	border: 1px solid rgba(0, 0, 0, .12);
	transition: border-color .18s ease, box-shadow .18s ease;
}

.vh-product-summary .vh-product-swatch-media img {
	width: 74px;
	height: 88px;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.vh-product-summary .vh-product-swatch-name {
	position: static;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
	padding-bottom: 5px;
	border-bottom: 2px solid transparent;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .18em;
	line-height: 1.25;
	text-align: left;
	text-overflow: ellipsis;
	white-space: nowrap;
	transition: border-color .18s ease;
}

.vh-product-summary .vh-product-swatch:hover .vh-product-swatch-media,
.vh-product-summary .vh-product-swatch:focus-visible .vh-product-swatch-media,
.vh-product-summary .vh-product-swatch:hover .vh-product-swatch-color,
.vh-product-summary .vh-product-swatch:focus-visible .vh-product-swatch-color {
	border-color: rgba(0, 0, 0, .45);
}

.vh-product-summary .vh-product-swatch.is-active .vh-product-swatch-media,
.vh-product-summary .vh-product-swatch.is-active .vh-product-swatch-color {
	border-color: #080808;
	box-shadow: 0 0 0 1px #080808;
}

.vh-product-summary .vh-product-swatch.is-active .vh-product-swatch-name {
	border-bottom-color: #b88c48;
}

@media (max-width: 760px) {
	/* Mobile variations: round dots in a capsule, same style as shop/home listings. */
	body.single-product .vh-product-hero {
		grid-template-columns: minmax(0, 100%) !important;
	}

	body.single-product .vh-product-media,
	body.single-product .vh-product-main-media {
		width: 100% !important;
		max-width: 100% !important;
		grid-template-columns: minmax(0, 100%) !important;
	}

	body.single-product .vh-product-main-media {
		min-height: 0 !important;
		flex-direction: column;
		align-items: stretch;
	}

	body.single-product .vh-product-main-media img {
		height: auto !important;
		aspect-ratio: 1 / 1;
		order: 1;
	}

	/* Название цвета — подложкой под фотографией. */
	body.single-product .vh-product-media-label {
		position: static;
		order: 2;
		padding: 0 16px 14px;
	}

	body.single-product .vh-product-media-label span {
		font-size: 11px;
	}

	body.single-product .vh-product-media-label strong {
		font-size: 14px;
		letter-spacing: .1em;
	}

	/* Характеристики и описания — крупнее для чтения. */
	body.single-product .vh-product-section-head span {
		font-size: 12px;
	}

	body.single-product .vh-product-spec-grid span {
		font-size: 13px;
	}

	body.single-product .vh-product-spec-grid strong {
		font-size: 18px;
		line-height: 1.45;
	}

	body.single-product .vh-product-accordions summary,
	body.single-product .vh-product-faq-list summary {
		font-size: 16px;
	}

	body.single-product .vh-product-accordions details > div,
	body.single-product .vh-product-faq-list p {
		font-size: 17px;
		line-height: 1.6;
	}

	body.single-product .vh-product-highlight-rail p {
		font-size: 16px;
		line-height: 1.6;
	}

	body.single-product .vh-product-summary .vh-product-swatches {
		display: inline-flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 4px;
		width: auto;
		max-width: 100%;
		min-height: 42px;
		padding: 4px;
		border: 1px solid rgba(0, 0, 0, .12);
		border-radius: 999px;
		background: rgba(255, 255, 255, .88);
		box-shadow: 0 16px 42px rgba(0, 0, 0, .08);
		backdrop-filter: blur(12px) saturate(142%);
		-webkit-backdrop-filter: blur(12px) saturate(142%);
		overflow: visible;
		scroll-snap-type: none;
	}

	body.single-product .vh-product-summary .vh-product-swatch {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		width: 30px;
		min-width: 30px;
		min-height: 30px;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: transparent;
		box-shadow: none;
		scroll-snap-align: none;
		text-align: center;
		transform: none;
	}

	body.single-product .vh-product-summary .vh-swatch-has-photo .vh-product-swatch-media {
		display: none;
	}

	body.single-product .vh-product-summary .vh-swatch-has-photo .vh-product-swatch-color {
		display: block;
	}

	body.single-product .vh-product-summary .vh-product-swatch-color {
		display: block;
		width: 17px;
		height: 17px;
		border: 1px solid rgba(0, 0, 0, .32);
		border-radius: 50%;
		box-shadow: none;
	}

	body.single-product .vh-product-summary .vh-product-swatch-name {
		display: none;
	}

	body.single-product .vh-product-summary .vh-product-swatch.is-active {
		border-color: transparent;
		background: transparent;
		box-shadow: none;
	}

	body.single-product .vh-product-summary .vh-product-swatch.is-active::after {
		content: "";
		position: absolute;
		inset: 1px;
		z-index: 0;
		border: 1px solid #080808;
		border-radius: 50%;
		pointer-events: none;
	}

	body.single-product .vh-product-summary .vh-product-swatch.is-active .vh-product-swatch-color {
		border-color: rgba(0, 0, 0, .72);
		box-shadow: 0 0 0 2px #fff;
	}

	body.single-product .vh-product-summary .vh-product-swatch:hover {
		transform: none;
	}

	/* Мобильные шрифты — крупнее для удобства чтения. */
	body.single-product .vh-product-intro {
		font-size: 15px;
		line-height: 1.6;
	}

	body.single-product .vh-product-care-grid .vh-product-service-copy > strong {
		font-size: 11px;
	}

	body.single-product .vh-product-care-grid .vh-product-service-copy > span {
		display: none;
	}

	body.single-product .vh-product-preorder-head p {
		font-size: 13px;
		line-height: 1.5;
	}

	body.single-product .vh-product-preorder-form label > span {
		font-size: 12px;
	}

	body.single-product .vh-product-preorder-form input,
	body.single-product .vh-product-preorder-form textarea {
		font-size: 15px;
	}
}

/* Desktop product information: increase reading size without changing the mobile composition. */
@media (min-width: 761px) {
	body.single-product .vh-product-section-head span {
		font-size: 13px;
	}

	body.single-product .vh-product-intro {
		font-size: 17px;
		line-height: 1.72;
	}

	body.single-product .vh-product-highlight-rail p {
		font-size: 16px;
		line-height: 1.72;
	}

	body.single-product .vh-product-accordions summary,
	body.single-product .vh-product-faq-list summary {
		font-size: 14px;
	}

	body.single-product .vh-product-accordions details > div,
	body.single-product .vh-product-faq-list p {
		font-size: 16px;
		line-height: 1.72;
	}

	body.single-product .vh-product-info-faq .vh-product-spec-grid span {
		font-size: 14px;
	}

	body.single-product .vh-product-info-faq .vh-product-spec-grid strong {
		font-size: 18px;
		line-height: 1.45;
	}

	body.single-product .vh-product-spec-grid span {
		font-size: 14px;
	}

	body.single-product .vh-product-spec-grid strong {
		font-size: 19px;
		line-height: 1.45;
	}

	body.single-product .vh-product-spec-mini span {
		font-size: 11px;
	}

	body.single-product .vh-product-spec-mini strong {
		font-size: 15px;
		line-height: 1.55;
	}
}

/* Menu panel header and collection copy order. */
@media (min-width: 769px) {
	.vh-menu-drawer {
		--vh-drawer-head: clamp(112px, 8.25vw, 156px);
	}
}

.vh-menu-drawer .vh-drawer-head {
	justify-content: center !important;
}

.vh-menu-drawer .vh-drawer-brand {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - clamp(56px, 5vw, 78px));
  max-width: none;
  min-height: calc(var(--vh-drawer-head) - 2px);
  padding-right: clamp(4px, .7vw, 10px);
  color: #070707;
  text-decoration: none;
}

.vh-menu-drawer .vh-drawer-brand img {
  display: block;
  width: 100%;
  max-width: none;
  height: calc(var(--vh-drawer-head) - 4px);
  max-height: none;
  object-fit: contain;
  filter: brightness(0) saturate(100%);
}

.vh-menu-drawer .vh-drawer-brand-wordmark {
  width: 100%;
  color: currentColor;
  font-family: var(--vh-font-body);
  font-size: clamp(48px, 4vw, 76px);
  font-weight: 700;
  letter-spacing: .24em;
  text-align: center;
  line-height: 1;
}

.vh-menu-drawer .vh-drawer-close {
	position: absolute !important;
	top: 50%;
	right: clamp(14px, 2.2vw, 30px);
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 46px !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #070707 !important;
	font-size: 0 !important;
	line-height: 0 !important;
	transform: translateY(-50%) !important;
}

.vh-menu-drawer .vh-drawer-close::before,
.vh-menu-drawer .vh-drawer-close::after {
	position: absolute !important;
	top: 50% !important;
	right: auto !important;
	left: 50% !important;
	display: block !important;
	width: 25px !important;
	height: 1.5px !important;
	margin: 0 !important;
	background: currentColor !important;
	transform-origin: center !important;
}

.vh-menu-drawer .vh-drawer-close::before {
	transform: translate(-50%, -50%) rotate(45deg) !important;
}

.vh-menu-drawer .vh-drawer-close::after {
	transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.vh-menu-drawer .vh-drawer-close:hover,
.vh-menu-drawer .vh-drawer-close:focus-visible {
	opacity: .62;
	outline: none;
	transform: translateY(-50%) rotate(90deg) !important;
}

@media (min-width: 769px) {
	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-copy {
	grid-template-columns: minmax(0, 1fr) minmax(220px, .74fr) !important;
	grid-template-rows: auto !important;
	grid-template-areas: "heading details" !important;
	align-items: start !important;
	gap: clamp(20px, 2.2vw, 42px) !important;
}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-heading {
	grid-area: heading;
	min-width: 0;
}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-details {
	display: flex;
	grid-area: details;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	gap: clamp(16px, 1.3vw, 24px);
}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-details p {
	margin: 0 !important;
}

	body .vh-menu-drawer.vh-menu-flyout-open:not(.vh-menu-flyout-bespoke) .vh-drawer-editorial-full-list .vh-drawer-editorial-details a {
	grid-column: auto !important;
	width: fit-content;
	align-self: flex-start;
}
}

@media (max-width: 768px) {
  /* Кнопка прокрутки вверх — над виджетом обратной связи, не мешает чату. */
  .scrollToTop.button-show {
    right: 15px !important;
    bottom: 185px !important;
  }

  .vh-menu-drawer {
    --vh-drawer-head: 45px;
  }

  body.single-product .vh-product-hero {
    padding-top: 125px !important;
  }

  .vh-menu-drawer .vh-drawer-brand {
    width: calc(100% - 52px);
    max-width: none;
    min-height: calc(var(--vh-drawer-head) - 2px);
    padding-right: 2px;
  }

     .vh-menu-drawer .vh-drawer-brand img {
       width: auto;
       max-width: 100%;
       height: calc(var(--vh-drawer-head) - 4px);
       max-height: none;
       object-fit: contain;
     }

  .vh-menu-drawer .vh-drawer-brand-wordmark {
    width: 100%;
    font-size: 20px;
    letter-spacing: .22em;
  }

	.vh-menu-drawer .vh-drawer-close {
		right: 12px;
		width: 44px !important;
		height: 44px !important;
		min-height: 44px !important;
	}
}

/* "������� ��������": ������ �� ���� ������ � ������������� ��������. */
.vh-product-main-media .vh-product-original {
	position: absolute;
	right: 14px;
	bottom: 14px;
	z-index: 5;
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	padding: 9px 16px;
	border: 1px solid rgba(0, 0, 0, .22);
	background: rgba(255, 255, 255, .92);
	color: #080808;
	font-family: inherit;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .16em;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}

.vh-product-main-media .vh-product-original:hover,
.vh-product-main-media .vh-product-original:focus-visible {
	border-color: #080808;
	background: #080808;
	color: #fff;
	outline: none;
}

.vh-product-main-media .vh-product-original svg {
	width: 14px;
	height: 14px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.vh-product-main-media .vh-product-original .vh-ico-loupe {
	display: none;
}

/* Вариации: фото — на десктопе, цветной квадрат — на мобильном. */
.vh-product-summary .vh-product-swatch.vh-swatch-has-photo .vh-product-swatch-color {
	display: none;
}

.vh-original-viewer {
	position: fixed;
	inset: 0;
	z-index: 99990;
	display: grid;
	place-items: center;
	padding: clamp(16px, 4vw, 48px);
}

.vh-original-viewer-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(8, 8, 8, .93);
}

.vh-original-viewer-figure {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	max-width: 100%;
	max-height: 100%;
	margin: 0;
}

.vh-original-viewer-figure img {
	display: block;
	max-width: min(1400px, 100%);
	max-height: calc(100vh - 120px);
	object-fit: contain;
	background: #fff;
}

.vh-original-viewer-figure figcaption {
	color: rgba(255, 255, 255, .72);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	text-align: center;
}

.vh-original-viewer-close {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(255, 255, 255, .35);
	border-radius: 50%;
	background: transparent;
	color: #fff;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	transition: background-color .18s ease, color .18s ease;
}

.vh-original-viewer-close:hover {
	background: #fff;
	color: #080808;
}

html.vh-original-open,
body.vh-original-open {
	overflow: hidden !important;
}

@media (max-width: 760px) {
	.vh-product-main-media .vh-product-original {
		top: 12px;
		right: 12px;
		bottom: auto;
		width: 40px;
		height: 40px;
		padding: 0;
		justify-content: center;
		border-radius: 50%;
		background: rgba(255, 255, 255, .94);
	}

	.vh-product-main-media .vh-product-original .vh-ico-expand {
		display: none;
	}

	.vh-product-main-media .vh-product-original .vh-ico-loupe {
		display: block;
		width: 19px;
		height: 19px;
	}

	.vh-product-main-media .vh-product-original span {
		display: none;
	}

	.vh-original-viewer-figure img {
		max-height: calc(100vh - 90px);
	}
}


/* ������� ������: ������� ��������� ������ � ����� ��������� �������/�������. */
.vh-product-related-nav {
	display: none !important;
}

/* ����� ����. ���������� ��� ������� ���� ��������� �������� � ������ �� ���� �������. */
.vh-product-image-grid {
	display: none !important;
}

/* �������� �� ��������: ������ ����������, �������� � ������ ��� ��������� (��������� ������). */
.vh-product-summary .vh-product-swatches {
	align-items: flex-start;
	gap: 26px;
	overflow: visible !important;
}

.vh-product-summary .vh-product-swatch {
	width: 96px;
	min-width: 96px;
}

.vh-product-summary .vh-product-swatch-name {
	position: absolute;
	bottom: calc(100% + 10px);
	left: 50%;
	z-index: 60;
	transform: translateX(-50%) translateY(4px);
	display: block;
	max-width: 240px;
	overflow: hidden;
	padding: 8px 13px;
	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: 999px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 14px 30px rgba(0, 0, 0, .14);
	color: #080808;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .12em;
	line-height: 1;
	text-transform: uppercase;
	text-overflow: ellipsis;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transition: opacity .2s ease, visibility .2s ease;
}

.vh-product-summary .vh-product-swatch:hover .vh-product-swatch-name,
.vh-product-summary .vh-product-swatch:focus-visible .vh-product-swatch-name {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}

.vh-product-summary .vh-product-swatch.is-active .vh-product-swatch-name {
	border-bottom: 0;
	padding-bottom: 8px;
}

/* �������� ���������� VERTU�: �������� ��������� � �������� ����. */
body.page-id-30718 .vh-drawer-editorial.vh-drawer-editorial-full-list[hidden] {
	display: grid !important;
	visibility: visible !important;
}
body.page-id-30718 .vh-drawer-editorial.vh-drawer-editorial-full-list[hidden] .vh-drawer-editorial-copy {
	visibility: visible !important;
}

body.page-id-30718 .vh-drawer-editorial-full-list {
	position: relative;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	align-content: end;
	gap: 0;
	min-height: 420px;
	overflow: hidden;
	background-color: #0a0a0a;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-image: var(--vh-col-bg, none);
}

body.page-id-30718 .vh-drawer-editorial-full-list .vh-drawer-editorial-copy {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .82) 55%);
	padding: 90px 7% 48px;
}

body.page-id-30718 .vh-drawer-editorial-full-list .vh-drawer-editorial-heading h3 {
	font-size: clamp(30px, 3.4vw, 52px);
}

body.page-id-30718 .vh-drawer-editorial-full-list .vh-drawer-editorial-details a {
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="agentq"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2026/06/vertu-prod-agent-1.webp); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="alphafold"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2026/07/AlphaFoldHimalayaAlligator-1.webp); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="metavertu"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2023/11/METAVERTU2ndGenerationBlueAlligatorWeb3AIPhone_1.webp); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="quantum"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2025/05/V8.webp); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="signature-v"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2026/01/vertu-banner-agentq-dark-v2.webp); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="metawatch"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2026/06/vertu-crafted-since-1998-personalisation.png); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="koltca-vertu"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2026/06/vertu-crafted-since-1998-personalisation.png); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="naushniki-vertu"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2026/06/vertu-crafted-since-1998-personalisation.png); }
body.page-id-30718 .vh-drawer-editorial-full-list[data-vh-flyout-group="aksessyary"] { --vh-col-bg: url(https://vertu.ru/wp-content/uploads/2026/06/vertu-crafted-since-1998-personalisation.png); }

/* ��������� ��������: �������� � ����� ������, �������� ��� ���. */
.vh-product-care-grid .vh-product-service-copy {
	display: block;
}

.vh-product-care-grid .vh-product-service-copy strong {
	display: block;
	margin-bottom: 7px;
}

.vh-product-care-grid .vh-product-service-copy > span {
	display: block;
}

/* ���� �� �������� ���� � ������-����. */
.vh-product-main-media img[data-vh-product-main-image] {
	cursor: zoom-in;
}

/* ������� (���������): ����������� ������, ������ �� ��������. */
@media (max-width: 768px) {
	body.woocommerce-cart .cart-content-wrapper {
		padding: 14px 14px 30px !important;
	}

	body.woocommerce-cart .woocommerce-cart-form .shop_table_responsive {
		border: 0 !important;
		margin: 0 !important;
	}

	body.woocommerce-cart .shop_table_responsive tr.cart_item {
		display: block !important;
		position: relative;
		padding: 16px 52px 16px 14px !important;
		margin: 0 0 14px !important;
		border: 1px solid rgba(0, 0, 0, .1) !important;
		border-radius: 6px !important;
		background: #fff;
	}

	body.woocommerce-cart .shop_table_responsive tr.cart_item::before {
		display: none !important;
	}

	body.woocommerce-cart .shop_table_responsive td {
		display: block !important;
		width: auto !important;
		padding: 0 !important;
		border: 0 !important;
		text-align: left !important;
	}

	body.woocommerce-cart .shop_table_responsive td::before {
		display: inline-block !important;
		width: auto !important;
		float: none !important;
		margin-right: 10px;
		color: rgba(0, 0, 0, .45);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: .12em;
		text-transform: uppercase;
		position: static !important;
	}

	body.woocommerce-cart .shop_table_responsive .product-thumbnail {
		position: absolute !important;
		top: 16px;
		left: 14px;
		width: 96px !important;
	}

	body.woocommerce-cart .shop_table_responsive .product-thumbnail img {
		width: 96px !important;
		height: 112px !important;
		object-fit: contain;
	}

	body.woocommerce-cart .shop_table_responsive .product-name {
		margin: 0 0 10px 110px !important;
		padding-right: 44px !important;
		font-size: 13px !important;
		line-height: 1.4 !important;
	}

	body.woocommerce-cart .shop_table_responsive .product-name a {
		color: #0a0a0a !important;
		font-weight: 700;
	}

	body.woocommerce-cart .shop_table_responsive .product-remove {
		position: absolute !important;
		top: 12px;
		right: 12px;
	}

	body.woocommerce-cart .shop_table_responsive .product-remove a {
		display: grid !important;
		place-items: center;
		width: 34px !important;
		height: 34px !important;
		margin: 0 !important;
		border: 1px solid rgba(0, 0, 0, .15) !important;
		border-radius: 50% !important;
		background: #fff !important;
		color: #0a0a0a !important;
		font-size: 0 !important;
		text-indent: 0 !important;
	}

	body.woocommerce-cart .shop_table_responsive .product-remove a::before {
		content: "×";
		font-size: 18px;
		font-weight: 700;
		line-height: 1;
	}

	body.woocommerce-cart .shop_table_responsive .product-name .product-remove,
	body.woocommerce-cart .shop_table_responsive .cart_item .product-remove ~ .product-remove,
	body.woocommerce-cart .shop_table_responsive .cart_item .product-name a.wd-remove {
		display: none !important;
	}

	body.woocommerce-cart .shop_table_responsive .product-price,
	body.woocommerce-cart .shop_table_responsive .product-quantity,
	body.woocommerce-cart .shop_table_responsive .product-subtotal {
		margin: 0 0 10px 110px !important;
	}

	body.woocommerce-cart .shop_table_responsive .product-subtotal .amount {
		color: #9d8454 !important;
		font-size: 16px !important;
		font-weight: 800 !important;
	}

	body.woocommerce-cart .shop_table_responsive div.quantity {
		display: inline-flex !important;
		--wd-form-height: 44px;
	}

	body.woocommerce-cart .shop_table_responsive div.quantity input[type=number] {
		width: 44px !important;
	}

	body.woocommerce-cart .shop_table_responsive div.quantity input[type=button] {
		min-width: 38px !important;
	}

	body.woocommerce-cart .woocommerce-cart-form button[name=update_cart] {
		width: 100% !important;
		min-height: 52px !important;
		background: #0a0a0a !important;
		color: #fff !important;
		font-size: 12px !important;
		font-weight: 800 !important;
		letter-spacing: .14em !important;
		text-transform: uppercase !important;
		border: 0 !important;
		border-radius: 4px !important;
	}

	body.woocommerce-cart .wd-coupon-form {
		border: 1px solid rgba(0, 0, 0, .1) !important;
		border-radius: 6px !important;
		padding: 16px 14px !important;
	}

	body.woocommerce-cart .wd-coupon-form .form-style-underlined input[type=text] {
		min-height: 46px !important;
		font-size: 15px !important;
	}

	body.woocommerce-cart .wd-coupon-form button {
		width: 100% !important;
		min-height: 48px !important;
		border: 1px solid #0a0a0a !important;
		border-radius: 4px !important;
		background: #fff !important;
		color: #0a0a0a !important;
		font-size: 11px !important;
		font-weight: 800 !important;
		letter-spacing: .14em !important;
		text-transform: uppercase !important;
	}

	body.woocommerce-cart .cart_totals .cart-totals-inner {
		border: 1px solid rgba(0, 0, 0, .1) !important;
		border-radius: 6px !important;
		padding: 18px 16px !important;
	}

	body.woocommerce-cart .cart_totals .shop_table td {
		padding: 8px 0 !important;
		font-size: 14px !important;
	}

	body.woocommerce-cart .cart_totals .order-total .amount {
		font-size: 19px !important;
		font-weight: 800 !important;
		color: #9d8454 !important;
	}

	body.woocommerce-cart .cart_totals .checkout-button {
		min-height: 52px !important;
		background: #9d8454 !important;
		font-size: 12px !important;
		font-weight: 800 !important;
		letter-spacing: .14em !important;
		text-transform: uppercase !important;
		border-radius: 4px !important;
	}
}

/* �������������� (�������): ������ ����� � 4 �������� ������ � 2 �������, ����� V �� ���� ������ ������. */
.vh-drawer-editorial-bespoke {
	grid-template-areas: "copy gallery";
	grid-template-rows: auto;
	position: relative;
	min-height: min(470px, calc(100vh - clamp(108px, 8.8vw, 148px)));
}

.vh-drawer-editorial-bespoke::after {
	content: "V";
	position: absolute;
	top: clamp(6px, .6vw, 14px);
	right: clamp(14px, 1.3vw, 30px);
	color: rgba(199, 173, 114, .15);
	font-size: clamp(120px, 14vw, 230px);
	font-weight: 850;
	line-height: .9;
	pointer-events: none;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-card {
	display: none;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery {
	grid-area: hero;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-auto-rows: 1fr;
	gap: clamp(12px, 1vw, 18px);
	position: relative;
	z-index: 1;
	align-content: stretch;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-card {
	display: flex;
	flex-direction: column;
	background: linear-gradient(150deg, #0c0c0b, #14130f 55%, #070707);
	border: 1px solid rgba(255, 255, 255, .1);
	overflow: hidden;
	transition: border-color .25s ease, transform .3s ease;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-card:hover {
	border-color: rgba(199, 173, 114, .55);
	transform: translateY(-3px);
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-image {
	display: block;
	height: clamp(120px, 10.5vw, 185px);
	overflow: hidden;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .6s var(--vh-menu-ease, ease);
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-card:hover .vh-drawer-bespoke-gallery-image img {
	transform: scale(1.05);
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-text {
	display: flex;
	flex-direction: column;
	gap: clamp(5px, .5vw, 8px);
	padding: clamp(12px, 1vw, 16px) clamp(14px, 1.1vw, 18px) clamp(14px, 1.1vw, 18px);
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-text small {
	color: #9d8454;
	font-size: clamp(7px, .5vw, 9px);
	font-weight: 850;
	letter-spacing: .24em;
	text-transform: uppercase;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-text strong {
	color: #fff;
	font-size: clamp(12px, .95vw, 16px);
	font-weight: 850;
	letter-spacing: .1em;
	line-height: 1.25;
	text-transform: uppercase;
	overflow-wrap: anywhere;
}

.vh-drawer-editorial-bespoke .vh-drawer-bespoke-gallery-text em {
	color: rgba(255, 255, 255, .55);
	font-size: clamp(7px, .48vw, 9px);
	font-style: normal;
	font-weight: 850;
	letter-spacing: .18em;
	text-transform: uppercase;
	text-decoration: underline;
	text-underline-offset: 4px;
}

/* ���������: �������� ��� ���� � �� ������ ������, ������� ����������, ����� ������. */
.vh-shop-intro-card .elementor-widget-image {
	display: grid;
	place-items: center;
}

.vh-shop-intro-card .elementor-widget-image img {
	width: auto;
	height: auto;
	max-width: 74%;
	max-height: 76%;
	object-fit: contain;
	opacity: 1;
	filter: drop-shadow(0 24px 34px rgba(0, 0, 0, .45));
}

.vh-shop-intro-card::after {
	background: linear-gradient(180deg, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .55) 45%, rgba(0, 0, 0, .86) 100%);
}

.vh-shop-intro-card:hover img {
	transform: scale(1.04);
}

/* ������� �����: ������ ����� �� ������ ���������� (������� 4) � �� ����������� ����, ������ �����. */
.vh-product-media-label {
	top: auto !important;
	bottom: clamp(14px, 1.6vw, 22px) !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	display: flex !important;
	align-items: baseline !important;
	gap: 10px;
	padding: 9px 18px 10px;
	background: rgba(255, 255, 255, .95);
	border: 1px solid rgba(0, 0, 0, .14);
	border-radius: 999px;
	box-shadow: 0 10px 26px rgba(0, 0, 0, .1);
	z-index: 5;
}

.vh-product-media-label span {
	font-size: 9px;
	letter-spacing: .24em;
}

.vh-product-media-label strong {
	font-size: 13px;
	letter-spacing: .1em;
}

/* Цены в карточках товаров меню (все категории флаута). */
.vh-drawer-editorial-product-price {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	padding: 0 10px 13px;
	color: #a9884e;
	font-size: clamp(10px, .62vw, 12px);
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.vh-drawer-editorial-product-price del {
	margin-right: 6px;
	color: rgba(0, 0, 0, .38);
	font-weight: 500;
}

.vh-drawer-editorial-product-price ins {
	text-decoration: none;
}

@media (max-width: 768px) {
	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product {
		display: grid;
		grid-template-columns: clamp(98px, 29vw, 118px) minmax(0, 1fr);
		grid-template-rows: minmax(0, 1fr) auto;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product-img {
		grid-column: 1;
		grid-row: 1 / 3;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product strong {
		grid-column: 2;
		grid-row: 1;
		flex: none;
	}

	.vh-mobile-flyout-grid .vh-drawer-editorial:not(.vh-drawer-editorial-bespoke) .vh-drawer-editorial-product-price {
		grid-column: 2;
		grid-row: 2;
		justify-content: flex-start;
		padding: 0 14px 12px;
		font-size: clamp(10px, 2.9vw, 12px);
	}
}

/* «Важная информация» на странице точек продаж: на всю ширину, с выделением. */
.page-id-30709 .vh-service-grid .vh-service-card:last-child {
	grid-column: 1 / -1;
	min-height: 0;
	padding: 40px 44px;
	border: 1px solid rgba(199, 166, 107, .38);
	border-left: 3px solid #c7a66b;
	background: #141414;
}

.page-id-30709 .vh-service-grid .vh-service-card:last-child h2 {
	color: #c7a66b;
}

.page-id-30709 .vh-service-grid .vh-service-card:last-child p {
	max-width: 1180px;
	color: rgba(255, 255, 255, .85);
}


/* AlphaFold (десктоп): раскладка один в один как в каталоге (Metavertu, Quantum). */
@media (min-width: 769px) {
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-stack,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-stack {
		display: contents !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-hero,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-hero,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-hero {
		display: none !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold.is-visible-in-flyout,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"].is-visible-in-flyout {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-rows: auto minmax(0, 1fr) !important;
		grid-template-areas:
			"copy"
			"products" !important;
		gap: clamp(18px, 1.6vw, 30px) !important;
		min-height: calc(100vh - clamp(52px, 4vw, 80px)) !important;
		max-height: none !important;
		overflow: hidden !important;
		background: #fff !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-copy,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-copy,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-copy {
		grid-area: copy !important;
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(220px, .74fr) !important;
		grid-template-areas: "heading details" !important;
		align-items: start !important;
		gap: clamp(20px, 2.2vw, 42px) !important;
		padding: 0 0 clamp(16px, 1.4vw, 28px) !important;
		border-bottom: 1px solid rgba(0, 0, 0, .12) !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-heading,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-heading,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-heading {
		grid-area: heading !important;
		min-width: 0 !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-details,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-details,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-details {
		grid-area: details !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: clamp(16px, 1.3vw, 24px) !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-details p,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-details p,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-details p {
		margin: 0 !important;
		font-size: clamp(12px, .82vw, 15px) !important;
		line-height: 1.55 !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-details a,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-details a,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-details a {
		width: fit-content !important;
		align-self: flex-start !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-products,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-products,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-products {
		grid-area: products !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		align-content: start !important;
		gap: clamp(18px, 1.8vw, 34px) !important;
		width: 100% !important;
		max-height: calc(100vh - clamp(190px, 15vw, 290px)) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		padding-right: clamp(6px, .6vw, 12px) !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-product,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-product,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-product {
		min-height: clamp(350px, 38vw, 600px) !important;
		background: #fff !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-product-img,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-product-img,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-product-img {
		min-height: clamp(285px, 31vw, 500px) !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-product img,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-product img,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-product img {
		width: 100% !important;
		height: 100% !important;
		max-width: none !important;
		max-height: none !important;
		margin: 0 !important;
		padding: clamp(7px, .7vw, 16px) !important;
	}

	body .vh-drawer-editorial-alphafold.is-visible-in-flyout .vh-drawer-editorial-product strong,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial-alphafold .vh-drawer-editorial-product strong,
	body .vh-menu-drawer.vh-menu-flyout-alphafold .vh-drawer-editorial[data-vh-flyout-group="alphafold"] .vh-drawer-editorial-product strong {
		min-height: clamp(62px, 5vw, 82px) !important;
		padding: 14px 16px 17px !important;
		font-size: clamp(15px, 1.125vw, 22.5px) !important;
		letter-spacing: .12em !important;
	}
}

/* Новости (десктоп): без героя, шапка-строка, сетка на всю ширину в 3 ряда. */
@media (min-width: 769px) {
	body .vh-menu-drawer .vh-drawer-editorial-news.is-visible-in-flyout {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-rows: auto minmax(0, 1fr) !important;
		grid-template-areas:
			"copy"
			"products" !important;
		gap: clamp(18px, 1.6vw, 30px) !important;
		min-height: calc(100vh - clamp(52px, 4vw, 80px)) !important;
		overflow: hidden !important;
		background: #fff !important;
	}

	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-hero {
		display: none !important;
	}

	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-copy {
		grid-area: copy !important;
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(220px, .74fr) !important;
		grid-template-areas: "heading details" !important;
		align-items: start !important;
		gap: clamp(20px, 2.2vw, 42px) !important;
		padding: 0 0 clamp(16px, 1.4vw, 28px) !important;
		border-bottom: 1px solid rgba(0, 0, 0, .12) !important;
	}

	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-heading {
		grid-area: heading !important;
		min-width: 0 !important;
	}

	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-details {
		grid-area: details !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: clamp(16px, 1.3vw, 24px) !important;
	}

	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-details p {
		margin: 0 !important;
		font-size: clamp(12px, .82vw, 15px) !important;
		line-height: 1.55 !important;
	}

	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-details a {
		width: fit-content !important;
		align-self: flex-start !important;
	}

	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-products {
		grid-area: products !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		align-content: start !important;
		gap: clamp(16px, 1.5vw, 26px) !important;
		width: 100% !important;
		max-height: calc(100vh - clamp(190px, 15vw, 290px)) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		padding-right: clamp(6px, .6vw, 12px) !important;
	}
}

@media (min-width: 1081px) {
	body .vh-menu-drawer .vh-drawer-editorial-news .vh-drawer-editorial-products {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

/* Фикс мигания баннеров магазина (vertu.web/shop, /kontakty): анимация transform
   на больших картинках заставляет Chrome/Windows непрерывно перерисовывать слой
   при попадании баннера под курсор при скролле. Hover-состояния применяются
   мгновенно, без transition. */
.vh-shop-intro-card,
.vh-shop-intro-card img,
.vh-banner-tile,
.vh-banner-tile img,
.vh-full-banner,
.vh-full-banner img {
	transition: none !important;
	animation: none !important;
}

.vh-shop-intro-card:hover,
.vh-banner-tile:hover,
.vh-full-banner:hover {
	transform: none;
}

.vh-shop-intro-card:hover img,
.vh-banner-tile:hover img,
.vh-full-banner:hover img {
	transform: none;
	opacity: 1;
}

.vh-shop-series,
.vh-shop-series .vh-shop-series-media img {
	transition: none !important;
	animation: none !important;
}

.vh-shop-series:hover .vh-shop-series-media img {
	filter: none;
	transform: none;
}


/* Персонализация («Эксклюзив от VERTU», страница 30718): крупная редакционная
   сетка 2x2 после текстового блока — в языке остальных разделов (золото,
   тонкие линии, крупная типографика). Нумерация через CSS-счётчик, шахматный
   порядок светлых и тёмных ячеек. Без transform-анимаций (см. фикс выше). */
body.page-id-30718 .vh-service-page {
	max-width: 1320px;
}

body.page-id-30718 .vh-service-grid {
	gap: 1px;
	border: 1px solid rgba(0, 0, 0, .14);
	background: rgba(0, 0, 0, .14);
	counter-reset: vhsvc;
}

body.page-id-30718 .vh-service-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-height: clamp(340px, 30vw, 470px);
	padding: clamp(42px, 4.6vw, 78px);
	border: 0;
	background: #faf9f7;
}

body.page-id-30718 .vh-service-card:nth-child(even) {
	color: #fff;
	background: #0c0c0c;
}

body.page-id-30718 .vh-service-card:nth-child(even) h2 {
	color: #fff;
}

body.page-id-30718 .vh-service-card::before {
	counter-increment: vhsvc;
	content: "0" counter(vhsvc);
	margin-bottom: auto;
	color: #c7a66b;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .3em;
	transition: color .35s var(--vh-ease);
}

body.page-id-30718 .vh-service-card h2 {
	margin: 0 0 16px;
	font-size: clamp(24px, 2.3vw, 40px);
	font-weight: 800;
	letter-spacing: .12em;
	line-height: 1.05;
	text-transform: uppercase;
}

body.page-id-30718 .vh-service-card h2::before {
	content: "";
	display: block;
	width: 30px;
	height: 2px;
	margin-bottom: 20px;
	background: #c7a66b;
}

body.page-id-30718 .vh-service-card p {
	max-width: 46ch;
	margin: 0;
	font-size: clamp(15px, 1.2vw, 19px);
	line-height: 1.7;
	color: rgba(0, 0, 0, .66);
}

body.page-id-30718 .vh-service-card:nth-child(even) p {
	color: rgba(255, 255, 255, .72);
}

body.page-id-30718 .vh-service-card a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid rgba(199, 166, 107, .65);
	transition: color .35s var(--vh-ease), border-color .35s var(--vh-ease);
}

body.page-id-30718 .vh-service-card a:hover {
	color: #c7a66b;
	border-color: #c7a66b;
}

body.page-id-30718 .vh-service-card:hover {
	background: #f2efe9;
}

body.page-id-30718 .vh-service-card:nth-child(even):hover {
	background: #121212;
}

body.page-id-30718 .vh-service-card:hover::before {
	color: #d8b878;
}

@media (max-width: 768px) {
	body.page-id-30718 .vh-service-card {
		min-height: 0;
		padding: 34px 26px;
	}

	body.page-id-30718 .vh-service-card::before {
		margin-bottom: 26px;
	}
}


/* Мобильный товар: ярлык цвета («пилюля») — по центру под фотографией.
   Глобальный блок выше задаёт left:50% + translateX(-50%), что на статичной
   мобильной раскладке уводит ярлык за левый край экрана. */
@media (max-width: 760px) {
	body.single-product .vh-product-media-label {
		position: static !important;
		top: auto !important;
		bottom: auto !important;
		left: auto !important;
		right: auto !important;
		transform: none !important;
		width: fit-content !important;
		max-width: calc(100% - 24px);
		margin: 0 auto 12px !important;
		justify-content: center;
	}
}


/* Карточка товара: ряд действий — «в избранное», «сравнить» (Woodmart,
   переоформлены в круги) и «Поделиться» тонкой ссылкой с золотой чертой. */
.vh-product-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 18px 0 4px;
}

.vh-product-actions .wd-wishlist-btn,
.vh-product-actions .wd-compare-btn {
	flex: none;
}

.vh-product-actions .wd-action-btn > a {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border: 1px solid rgba(0, 0, 0, .14);
	border-radius: 50%;
	background: #fff;
	transition: border-color .3s var(--vh-ease), background-color .3s var(--vh-ease);
}

.vh-product-actions .wd-action-btn > a:hover {
	border-color: rgba(199, 166, 107, .7);
}

.vh-product-actions .wd-action-icon,
.vh-product-actions .wd-action-text {
	display: none !important;
}

.vh-product-actions .wd-wishlist-icon a::before,
.vh-product-actions .wd-compare-icon a::before {
	content: "";
	width: 18px;
	height: 18px;
	background: center / contain no-repeat;
}

.vh-product-actions .wd-wishlist-icon a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E");
}

.vh-product-actions .wd-wishlist-icon a.added::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23c7a66b' stroke='%23c7a66b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E");
}

.vh-product-actions .wd-compare-icon a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c7a66b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M12 8v8M8 12h8'/%3E%3C/svg%3E");
}

.vh-product-share {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-left: 6px;
	padding-bottom: 7px;
	border-bottom: 2px solid #c7a66b;
	color: #111;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .22em;
	text-transform: uppercase;
	text-decoration: none;
	transition: color .35s var(--vh-ease), border-color .35s var(--vh-ease);
}

.vh-product-share svg {
	flex: none;
}

.vh-product-share:hover {
	color: #c7a66b;
}

.vh-product-share.is-done {
	color: #c7a66b;
	border-color: rgba(199, 166, 107, .45);
}

@media (max-width: 760px) {
	.vh-product-actions {
		margin: 14px 0 2px;
	}

	.vh-product-share {
		font-size: 11px;
		letter-spacing: .18em;
	}
}


/* Персонализация (флюаут, десктоп): редакционная сетка 2×2 с номерами —
   крупное фото сверху, подпись снизу; после заголовка «Персонализация VERTU».
   Селекторы усилены, чтобы перекрыть базовые правила флюаута. */
@media (min-width: 1025px) {
	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-editorial-bespoke {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto auto;
		grid-template-areas: "copy" "gallery" "bespoke";
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-editorial-copy {
		grid-area: copy;
		max-width: none;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery {
		grid-area: gallery;
		grid-template-columns: 1fr 1fr;
		gap: 0;
		align-content: start;
		margin-top: 26px;
		padding-top: 26px;
		border-top: 1px solid rgba(255, 255, 255, .12);
		counter-reset: vhgal;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-card {
		grid-area: bespoke;
		margin-top: 6px;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card,
	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card:nth-child(3) {
		display: flex;
		flex-direction: column;
		padding: 22px 24px 26px;
		counter-increment: vhgal;
		border: 0;
		border-color: transparent;
		background: transparent;
		color: #fff;
		min-height: 0;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card:hover {
		background: rgba(255, 255, 255, .03);
		transform: none;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card:nth-child(even) {
		border-left: 1px solid rgba(255, 255, 255, .12);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card:nth-child(n+3) {
		border-top: 1px solid rgba(255, 255, 255, .12);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-image {
		height: clamp(240px, 24vw, 330px);
		background: transparent;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card.vh-has-cutout .vh-drawer-bespoke-gallery-image {
		display: flex;
		align-items: center;
		justify-content: center;
		background: radial-gradient(220px 160px at 50% 55%, rgba(199, 166, 107, .12), rgba(199, 166, 107, 0) 70%);
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-card.vh-has-cutout .vh-drawer-bespoke-gallery-image img {
		width: auto;
		height: auto;
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
		filter: drop-shadow(0 18px 30px rgba(0, 0, 0, .55));
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text {
		gap: 10px;
		padding: 18px 8px 0 2px;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text::before {
		content: "0" counter(vhgal);
		color: rgba(199, 166, 107, .55);
		font-size: 12px;
		font-weight: 850;
		letter-spacing: .3em;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text small {
		color: #9d8454;
		font-size: 9px;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text strong {
		color: #fff;
		font-size: clamp(20px, 1.6vw, 26px);
		letter-spacing: .12em;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-desc {
		color: rgba(255, 255, 255, .62);
		font-size: 12px;
		line-height: 1.6;
		max-width: 40ch;
	}

	body .vh-menu-drawer.vh-menu-flyout-open.vh-menu-flyout-bespoke .vh-drawer-bespoke-gallery-text em {
		color: var(--faint, rgba(255, 255, 255, .42));
		font-size: 9px;
	}
}

/* Мобильные флюауты: описания карточек персонализации не показываем —
   мобильный вид остаётся прежним (вертикальные мини-карточки). */
@media (max-width: 1024px) {
	.vh-drawer-bespoke-gallery-desc {
		display: none;
	}
}

/* Cart page: breathing room between fixed header and the cart table.
   cart-content-wrapper is the top-level div in woocommerce/cart/cart.php. */
body.woocommerce-cart .cart-content-wrapper {
	padding-top: 64px;
}

/* Remove the 55 px body padding-bottom WoodMart JS injects for the sticky
   toolbar — the toolbar sits below the vh-footer and is not visible. */
body {
	padding-bottom: 0 !important;
}

/* ===== MTO: категории конструктора — вариант «Полоса» (без закруглений) ===== */
.vh-mto-tabs {
	position: sticky;
	top: calc(var(--vh-topbar-height, 52px) + 64px);
	z-index: 50;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 100%;
	margin: 0 auto 18px;
	padding: 0 18px;
	background: #050505;
}

.vh-mto-tab {
	appearance: none;
	border: 0;
	background: transparent;
	cursor: pointer;
	font: inherit;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .44);
	padding: 17px 20px 15px;
	position: relative;
	white-space: nowrap;
	transition: color .45s var(--vh-ease);
}

.vh-mto-tabs .vh-mto-tab:hover,
.vh-mto-tabs .vh-mto-tab:focus,
.vh-mto-tabs .vh-mto-tab:focus-visible,
.vh-mto-tabs .vh-mto-tab:active {
	color: rgba(255, 255, 255, .85);
	background: transparent;
	border-color: transparent;
	box-shadow: none;
}

.vh-mto-tabs .vh-mto-tab.is-active,
.vh-mto-tabs .vh-mto-tab.is-active:hover,
.vh-mto-tabs .vh-mto-tab.is-active:focus {
	color: #fff;
	background: transparent;
}

.vh-mto-tab::after {
	content: "";
	position: absolute;
	left: 20px;
	right: 20px;
	bottom: 0;
	height: 2px;
	background: #fff;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .5s var(--vh-ease);
}

.vh-mto-tab.is-active {
	color: #fff;
}

.vh-mto-tab.is-active::after {
	transform: scaleX(1);
}

.vh-mto-tab:focus-visible {
	outline: 2px solid #fff;
	outline-offset: -2px;
}

/* наша кнопка ровно поверх их кнопки предзаказа (их геометрия: right 61, bottom 38, 147×44) */
.vh-mto-acc-cta {
	margin-left: auto;
	appearance: none;
	border: 0;
	cursor: pointer;
	background: #fff;
	color: #050505;
	font: inherit;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
	padding: 12px 26px;
	border-radius: 0;
	transition: background-color .3s var(--vh-ease), transform .2s var(--vh-ease);
}

.vh-mto-tabs .vh-mto-acc-cta:hover {
	background: rgba(255, 255, 255, .86);
	transform: none;
}

.vh-mto-acc-cta:hover {
	transform: translateY(-1px);
	box-shadow: 0 16px 36px rgba(0, 0, 0, .3);
}

.vh-mto-acc-cta[hidden] {
	display: none;
}

/* тема красит button:hover в серый — наша кнопка всегда чёрная */
.vh-mto-frame-shell .vh-mto-acc-cta:hover,
.vh-mto-frame-shell .vh-mto-acc-cta:focus,
.vh-mto-frame-shell .vh-mto-acc-cta:active {
	background: #050505;
	color: #fff;
	border-color: transparent;
}

@media (max-width: 768px) {
	.vh-mto-tabs {
		margin-bottom: 12px;
		padding: 0 12px;
	}

	.vh-mto-tab {
		padding: 13px 13px 11px;
		font-size: 10px;
		letter-spacing: .14em;
	}

	.vh-mto-tab::after {
		left: 13px;
		right: 13px;
	}

	.vh-mto-acc-cta {
		position: fixed;
		right: 12px;
		bottom: calc(64px + env(safe-area-inset-bottom, 0px));
		min-width: 0;
		min-height: 0;
		margin-left: 0;
		padding: 12px 20px;
		font-size: 11px;
		background: #050505;
		color: #fff;
	}
}

/* ===== MTO: прикрепление фото конфигурации (аксессуары) ===== */
.vh-mto-attach-field span {
	display: block;
}

.vh-mto-attach-field small {
	display: block;
	margin-top: 2px;
	color: rgba(0, 0, 0, .45);
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1.45;
}

.vh-mto-attach-field input[type="file"] {
	width: 100%;
	margin-top: 4px;
	font: inherit;
	font-size: 12px;
	color: #333;
}

.vh-mto-attach-field[hidden] {
	display: none;
}

/* ===== MTO: выбор конфигурации аксессуара (материалы из API вендора) ===== */
.vh-mto-acc-slot-field {
	display: block;
}

.vh-mto-acc-slot-field select {
	width: 100%;
	margin-top: 4px;
	padding: 11px 12px;
	font: inherit;
	font-size: 13px;
	color: #111;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, .16);
	border-radius: 2px;
	cursor: pointer;
}

.vh-mto-acc-slot-field select:focus-visible {
	outline: 2px solid #000;
	outline-offset: 1px;
}

/* ===== MTO: краевые зоны — колесо над ними крутит страницу (iframe всегда интерактивен) ===== */
.vh-mto-scroll-edge {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 44px;
	z-index: 5;
}

.vh-mto-scroll-edge.right {
	left: auto;
	right: 0;
}

/* нижняя «крышка» удалена: их бар (сердечко + кнопка) виден, наша кнопка поверх их кнопки */

/* ===== Раздел «Партнерам» (/partners/) — вариант 04 «Золото на чёрном» ===== */
body.vh-partners-page {
	background: #070707;
	overflow-x: clip;
}

/* обёртки Woodmart перекрашиваются в тёмный */
body.vh-partners-page .wd-page-wrapper,
body.vh-partners-page .wd-page-content,
body.vh-partners-page .wd-content-layout,
body.vh-partners-page .container {
	background: #070707;
}

.vh-partners {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 24px 130px;
	color: #fff;
}

/* hero — вариант 04 «Золото на чёрном», во всю ширину страницы */
.vph-hero {
	position: relative;
	overflow: hidden;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	padding: clamp(80px, 15vh, 170px) max(32px, calc(50vw - 556px)) clamp(56px, 8vh, 110px) max(32px, calc(50vw - 556px));
	background: linear-gradient(135deg, #080808, #191814 58%, #050505);
	border-bottom: 1px solid rgba(211, 176, 95, .3);
}
.vph-hero::after {
	content: "V";
	position: absolute;
	right: 24px;
	top: -50px;
	font-size: clamp(180px, 22vw, 320px);
	font-weight: 800;
	line-height: 1;
	color: rgba(255, 255, 255, .05);
	pointer-events: none;
}
.vph-hero-inner { position: relative; z-index: 1; max-width: 980px; }
.vph-eyebrow {
	display: inline-block;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .3em;
	text-transform: uppercase;
	color: #D3B05F;
	margin-bottom: 20px;
}
.vph-title {
	font-size: clamp(34px, 5vw, 66px);
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -.01em;
	text-transform: uppercase;
	color: #fff;
	margin: 0;
}
.vph-title em {
	font-style: normal;
	color: #D3B05F;
}
.vph-lead {
	margin-top: 26px;
	max-width: 720px;
	font-size: clamp(15px, 1.4vw, 18px);
	line-height: 1.7;
	color: rgba(255, 255, 255, .62);
}
.vph-goldline {
	width: 64px;
	height: 2px;
	background: #D3B05F;
	margin-top: 34px;
}

/* секции */
.vph-section {
	padding: clamp(60px, 9vh, 120px) 0 clamp(50px, 7vh, 100px);
	border-bottom: 1px solid rgba(255, 255, 255, .1);
}
.vph-section:last-of-type { border-bottom: 0; }
.vph-conditions-head,
.vph-form-head { max-width: 760px; margin-bottom: 46px; }
.vph-conditions-head h2,
.vph-form-head h2 {
	font-size: clamp(22px, 2.6vw, 36px);
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .02em;
	color: #fff;
	margin: 0;
}
.vph-form-head p {
	margin: 16px 0 0;
	color: rgba(255, 255, 255, .55);
	font-size: 15px;
	line-height: 1.65;
}

/* условия: тёмный реестр 01–09 */
.vph-conditions-grid {
	list-style: none;
	margin: 0;
	padding: 0;
}
.vph-condition {
	display: flex;
	align-items: baseline;
	gap: 26px;
	padding: 20px 8px 22px;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	transition: background-color .45s var(--vh-ease), padding-left .45s var(--vh-ease);
}
.vph-condition:first-child { border-top: 1px solid rgba(255, 255, 255, .1); }
.vph-condition:hover {
	background: rgba(255, 255, 255, .04);
	padding-left: 18px;
}
.vph-condition-num {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #D3B05F;
	min-width: 26px;
}
.vph-condition-text {
	font-size: 15px;
	line-height: 1.6;
	font-weight: 600;
	color: rgba(255, 255, 255, .88);
}

/* форма */
.vph-form-section { padding-bottom: 40px; }
.vph-form {
	background: rgba(255, 255, 255, .03);
	border: 1px solid rgba(255, 255, 255, .12);
	padding: clamp(28px, 4vw, 56px);
}
.vph-form-status {
	margin-bottom: 24px;
	padding: 15px 20px;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
}
.vph-form-status.is-success {
	background: rgba(211, 176, 95, .12);
	color: #D3B05F;
	border: 1px solid rgba(211, 176, 95, .35);
}
.vh-partners .vph-form-status.is-error,
.vh-partners .vph-form-status.is-loading {
	background: rgba(255, 255, 255, .06);
	color: rgba(255, 255, 255, .85);
}
.vph-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 26px 30px;
}
.vph-form-grid label { display: block; min-width: 0; }
.vph-form-grid label > span {
	display: block;
	margin-bottom: 9px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .5);
}
.vh-partners input[type="text"],
.vh-partners input[type="tel"],
.vh-partners input[type="url"],
.vh-partners input[type="email"],
.vh-partners textarea {
	width: 100%;
	font: inherit;
	font-size: 14px;
	color: #fff;
	background: transparent;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .35);
	padding: 9px 0;
	transition: border-color .3s var(--vh-ease);
}
.vh-partners input:focus,
.vh-partners textarea:focus {
	outline: none;
	border-bottom-color: #D3B05F;
}
.vh-partners textarea { resize: vertical; min-height: 96px; }
.vh-partners input[type="file"] {
	width: 100%;
	font-size: 12px;
	color: rgba(255, 255, 255, .65);
	padding: 8px 0;
}
.vh-partners input[type="file"]::file-selector-button {
	appearance: none;
	border: 1px solid rgba(255, 255, 255, .35);
	background: transparent;
	color: #fff;
	font: inherit;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
	padding: 9px 16px;
	margin-right: 14px;
	cursor: pointer;
	transition: border-color .3s var(--vh-ease);
}
.vh-partners input[type="file"]::file-selector-button:hover { border-color: #D3B05F; }
.vph-full { grid-column: 1 / -1; }

.vph-submit {
	margin-top: 40px;
	appearance: none;
	border: 0;
	cursor: pointer;
	background: #D3B05F;
	color: #050505;
	font: inherit;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .2em;
	text-transform: uppercase;
	padding: 19px 52px;
	transition: transform .25s var(--vh-ease), background-color .25s var(--vh-ease);
}
.vph-submit:hover { background: #E2C377; transform: translateY(-1px); }
.vph-submit:active { transform: scale(.98); }
.vph-note {
	margin-top: 18px;
	font-size: 11px;
	color: rgba(255, 255, 255, .35);
}

/* появление блоков */
.vph-hero .vph-title,
.vph-hero .vph-lead,
.vph-conditions,
.vph-form-section {
	opacity: 0;
	transform: translateY(26px);
}
.vph-in {
	opacity: 1 !important;
	transform: none !important;
	transition: opacity .9s var(--vh-ease), transform .9s var(--vh-ease);
}

@media (max-width: 768px) {
	.vh-partners { padding: 0 16px 90px; }
	.vph-hero { padding: 64px 24px 48px; }
	.vph-conditions-head h2 { display: none; }
	.vph-form-grid { grid-template-columns: 1fr; gap: 22px; }
	.vph-form { padding: 26px 18px; }
	.vph-condition { gap: 16px; padding: 17px 4px 19px; }
	.vph-submit { width: 100%; }
}

/* ===== Партнерам: honeypot против ботов ===== */
.vph-hp {
	position: absolute !important;
	left: -5000px !important;
	top: -5000px !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}
