/* VipVize professional form skin; scoped only to the full-width product form. */
body.vv-woo.single-product .vv-single-full-width-content {
	--vv-form-accent: #176db2;
	--vv-form-accent-dark: #0f5d99;
	--vv-form-text: #17324d;
	--vv-form-muted: #687f94;
	--vv-form-border: #c9d8e5;
	--vv-form-soft: #f5f9fc;
	color: var(--vv-form-text);
}
body.vv-woo.single-product .vv-single-full-width-content :where(form, .cart, .booking-form, .wc-bookings-booking-form, .tm-extra-product-options, .product-addon, .wc-pao-addons-container) {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
}
body.vv-woo.single-product .vv-single-full-width-content :where(fieldset, .wc-pao-addon, .product-addon, .booking-form, .wc-bookings-booking-form, .tm-box, .cpf-section) {
	min-width: 0 !important;
	margin: 0 0 20px !important;
	padding: clamp(18px, 2.2vw, 28px) !important;
	border: 1px solid #dce7f1 !important;
	border-radius: 16px !important;
	background: var(--vv-form-soft) !important;
	box-shadow: none !important;
}
body.vv-woo.single-product .vv-single-full-width-content legend {
	max-width: 100%;
	padding: 0 8px;
	color: #123d68;
	font-size: 16px;
	font-weight: 800;
}
body.vv-woo.single-product .vv-single-full-width-content :where(h2, h3, h4, h5, h6) {
	margin: 0 0 15px !important;
	color: #123d68 !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}
body.vv-woo.single-product .vv-single-full-width-content h2 { font-size: clamp(22px, 2.2vw, 30px) !important; }
body.vv-woo.single-product .vv-single-full-width-content h3 { font-size: clamp(18px, 1.8vw, 23px) !important; }
body.vv-woo.single-product .vv-single-full-width-content p { color: #526b83; line-height: 1.7; }
body.vv-woo.single-product .vv-single-full-width-content label {
	display: block !important;
	margin: 0 0 8px !important;
	color: #173b5d !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
}
body.vv-woo.single-product .vv-single-full-width-content :where(.required, abbr.required) {
	color: #d92d20 !important;
	text-decoration: none !important;
}
body.vv-woo.single-product .vv-single-full-width-content :where(
	input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
	input[type="date"], input[type="time"], input[type="url"], input[type="password"],
	input[type="search"], select, textarea
) {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	min-height: 52px !important;
	margin: 0 !important;
	padding: 13px 15px !important;
	border: 1px solid var(--vv-form-border) !important;
	border-radius: 12px !important;
	outline: 0 !important;
	background: #fff !important;
	box-shadow: 0 1px 2px rgba(14, 51, 83, .03) !important;
	color: var(--vv-form-text) !important;
	font: inherit !important;
	font-size: 15px !important;
	line-height: 1.35 !important;
	appearance: auto;
	transition: border-color .18s ease, box-shadow .18s ease !important;
}
body.vv-woo.single-product .vv-single-full-width-content select { padding-right: 42px !important; cursor: pointer; }
body.vv-woo.single-product .vv-single-full-width-content textarea { min-height: 128px !important; resize: vertical; }
body.vv-woo.single-product .vv-single-full-width-content :where(input, select, textarea):focus {
	border-color: var(--vv-form-accent) !important;
	box-shadow: 0 0 0 4px rgba(23, 109, 178, .13) !important;
}
body.vv-woo.single-product .vv-single-full-width-content :where(input, select, textarea):disabled {
	cursor: not-allowed;
	background: #edf2f6 !important;
	color: #74879a !important;
	opacity: 1 !important;
}
body.vv-woo.single-product .vv-single-full-width-content ::placeholder { color: #8a9bad; opacity: 1; }
body.vv-woo.single-product .vv-single-full-width-content .form-row {
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 18px !important;
	padding: 0 !important;
	float: none !important;
}
body.vv-woo.single-product .vv-single-full-width-content :where(.form-row-first, .form-row-last) {
	display: inline-block !important;
	width: calc(50% - 10px) !important;
	vertical-align: top;
}
body.vv-woo.single-product .vv-single-full-width-content .form-row-first { margin-right: 16px !important; }
body.vv-woo.single-product .vv-single-full-width-content :where(input[type="checkbox"], input[type="radio"]) {
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	margin: 0 9px 0 0 !important;
	accent-color: var(--vv-form-accent);
	vertical-align: middle;
}
body.vv-woo.single-product .vv-single-full-width-content table {
	width: 100% !important;
	margin: 0 0 22px !important;
	border: 1px solid #dce7f1 !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border-radius: 14px !important;
	overflow: hidden;
	background: #fff;
}
body.vv-woo.single-product .vv-single-full-width-content :where(th, td) {
	padding: 14px 16px !important;
	border: 0 !important;
	border-bottom: 1px solid #e5edf4 !important;
	text-align: left;
	vertical-align: middle !important;
}
body.vv-woo.single-product .vv-single-full-width-content th {
	background: #f1f6fb !important;
	color: #173b5d !important;
	font-size: 13px;
	font-weight: 800 !important;
}
body.vv-woo.single-product .vv-single-full-width-content form.cart > .quantity {
	display: inline-flex !important;
	width: auto !important;
	max-width: 130px !important;
	margin: 0 12px 12px 0 !important;
	vertical-align: top;
}
body.vv-woo.single-product .vv-single-full-width-content .quantity .qty { width: 100% !important; text-align: center; }
body.vv-woo.single-product .vv-single-full-width-content :where(button, input[type="submit"], input[type="button"], .button, .single_add_to_cart_button) {
	min-height: 52px !important;
	padding: 13px 24px !important;
	border: 1px solid var(--vv-form-accent) !important;
	border-radius: 12px !important;
	background: var(--vv-form-accent) !important;
	box-shadow: 0 10px 22px rgba(23, 109, 178, .18) !important;
	color: #fff !important;
	font: inherit !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-align: center !important;
	text-decoration: none !important;
	cursor: pointer;
}
body.vv-woo.single-product .vv-single-full-width-content :where(button, input[type="submit"], input[type="button"], .button, .single_add_to_cart_button):hover {
	background: var(--vv-form-accent-dark) !important;
	border-color: var(--vv-form-accent-dark) !important;
}
body.vv-woo.single-product .vv-single-full-width-content :where(.description, .field-description, small) {
	display: block;
	margin-top: 6px;
	color: var(--vv-form-muted) !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
}
@media (max-width: 782px) {
	body.vv-woo.single-product .vv-single-full-width-content :where(.form-row-first, .form-row-last) {
		display: block !important;
		width: 100% !important;
		margin-right: 0 !important;
	}
	body.vv-woo.single-product .vv-single-full-width-content :where(fieldset, .wc-pao-addon, .product-addon, .booking-form, .wc-bookings-booking-form, .tm-box, .cpf-section) {
		padding: 16px !important;
	}
	body.vv-woo.single-product .vv-single-full-width-content :where(button, input[type="submit"], input[type="button"], .button, .single_add_to_cart_button) {
		width: 100% !important;
	}
}
@media (prefers-reduced-motion: reduce) {
	body.vv-woo.single-product .vv-single-full-width-content * { transition-duration: .01ms !important; }
}
