:root {
	--vcq-navy: var(--vc-navy-900, #071e41);
	--vcq-blue: var(--vc-blue-700, #0b4a8b);
	--vcq-yellow: var(--vc-yellow-500, #ffb400);
	--vcq-green: var(--vc-green-600, #1f9f3a);
	--vcq-text: var(--vc-text-900, #17223b);
	--vcq-muted: var(--vc-text-500, #667085);
	--vcq-border: var(--vc-border, #dfe5ed);
	--vcq-light: var(--vc-surface-soft, #f7f9fc);
	--vcq-radius: var(--vc-radius-md, 12px);
}
.vc-quote-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 28px 0 16px;
}
.vc-quote-button {
	min-height: 54px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 14px 20px;
	border-radius: var(--vcq-radius);
	border: 0;
	font: inherit;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.vc-quote-button::before {
	content: "";
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	background: currentColor;
	-webkit-mask: center / contain no-repeat;
	mask: center / contain no-repeat;
}
.vc-quote-button--primary::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='currentColor' d='M4 3h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H8l-6 3V5a2 2 0 0 1 2-2Zm2 5v2h12V8H6Zm0 4v2h8v-2H6Z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='currentColor' d='M4 3h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H8l-6 3V5a2 2 0 0 1 2-2Zm2 5v2h12V8H6Zm0 4v2h8v-2H6Z'/%3E%3C/svg%3E");
}
.vc-quote-button--whatsapp::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='currentColor' d='M12 2a10 10 0 0 0-8.63 15.04L2 22l5.08-1.33A10 10 0 1 0 12 2Zm0 18a8 8 0 0 1-4.08-1.11l-.29-.17l-3.02.79l.81-2.94l-.19-.3A8 8 0 1 1 12 20Zm4.38-5.45c-.24-.12-1.42-.7-1.64-.78c-.22-.08-.38-.12-.54.12c-.16.24-.62.78-.76.94c-.14.16-.28.18-.52.06c-.24-.12-1.01-.37-1.93-1.19c-.71-.64-1.2-1.42-1.34-1.66c-.14-.24-.02-.37.1-.49c.11-.11.24-.28.36-.42c.12-.14.16-.24.24-.4c.08-.16.04-.3-.02-.42c-.06-.12-.54-1.3-.74-1.78c-.2-.47-.4-.4-.54-.41h-.46c-.16 0-.42.06-.64.3c-.22.24-.84.82-.84 2c0 1.18.86 2.32.98 2.48c.12.16 1.69 2.58 4.1 3.62c.57.25 1.02.4 1.37.51c.58.18 1.1.16 1.51.1c.46-.07 1.42-.58 1.62-1.14c.2-.56.2-1.04.14-1.14c-.06-.1-.22-.16-.46-.28Z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='currentColor' d='M12 2a10 10 0 0 0-8.63 15.04L2 22l5.08-1.33A10 10 0 1 0 12 2Zm0 18a8 8 0 0 1-4.08-1.11l-.29-.17l-3.02.79l.81-2.94l-.19-.3A8 8 0 1 1 12 20Zm4.38-5.45c-.24-.12-1.42-.7-1.64-.78c-.22-.08-.38-.12-.54.12c-.16.24-.62.78-.76.94c-.14.16-.28.18-.52.06c-.24-.12-1.01-.37-1.93-1.19c-.71-.64-1.2-1.42-1.34-1.66c-.14-.24-.02-.37.1-.49c.11-.11.24-.28.36-.42c.12-.14.16-.24.24-.4c.08-.16.04-.3-.02-.42c-.06-.12-.54-1.3-.74-1.78c-.2-.47-.4-.4-.54-.41h-.46c-.16 0-.42.06-.64.3c-.22.24-.84.82-.84 2c0 1.18.86 2.32.98 2.48c.12.16 1.69 2.58 4.1 3.62c.57.25 1.02.4 1.37.51c.58.18 1.1.16 1.51.1c.46-.07 1.42-.58 1.62-1.14c.2-.56.2-1.04.14-1.14c-.06-.1-.22-.16-.46-.28Z'/%3E%3C/svg%3E");
}
.vc-quote-button:hover { transform: translateY(-1px); box-shadow: 0 12px 28px rgba(7,30,65,.14); filter: brightness(1.03); }
.vc-quote-button--primary { background: var(--vcq-navy); color: #fff; }
.vc-quote-button--whatsapp { background: var(--vcq-green); color: #fff; }
.vc-quote-panel {
	margin: 24px 0 38px;
	padding: clamp(22px, 4vw, 36px);
	border: 1px solid var(--vcq-border);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 20px 54px rgba(7,30,65,.09);
}
.vc-quote-panel[hidden] { display: none !important; }
.vc-quote-panel__header { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 24px; }
.vc-quote-panel__header h2 { margin: 4px 0 0; color: var(--vcq-navy); font-size: clamp(26px, 4vw, 36px); line-height: 1.1; }
.vc-quote-panel__eyebrow { color: #f26a21; text-transform: uppercase; letter-spacing: .11em; font-size: 12px; font-weight: 800; }
.vc-quote-panel__close { width: 44px; height: 44px; min-height: 44px; border: 0; border-radius: 50%; background: var(--vcq-light); color: var(--vcq-navy); font-size: 26px; line-height: 1; cursor: pointer; }
.vc-quote-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.vc-quote-form label { display: grid; gap: 8px; color: var(--vcq-text); font-size: 14px; font-weight: 700; }
.vc-quote-form input, .vc-quote-form textarea {
	width: 100%;
	min-height: 50px;
	padding: 12px 14px;
	border: 1px solid var(--vcq-border);
	border-radius: 10px;
	background: #fff;
	color: var(--vcq-text);
	font: inherit;
	font-size: 16px;
}
.vc-quote-form textarea { min-height: 124px; resize: vertical; }
.vc-quote-form input:focus, .vc-quote-form textarea:focus { outline: none; box-shadow: 0 0 0 4px rgba(11,74,139,.11); border-color: var(--vcq-blue); }
.vc-quote-form__full { grid-column: 1 / -1; }
.vc-quote-submit { margin-top: 20px; min-height: 52px; padding: 13px 22px; border: 0; border-radius: var(--vcq-radius); background: var(--vcq-yellow); color: var(--vcq-navy); font: inherit; font-size: 16px; font-weight: 800; cursor: pointer; }
.vc-quote-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.vc-quote-notice { margin-bottom: 18px; padding: 14px 16px; border-radius: 10px; font-weight: 600; }
.vc-quote-notice--success { background: #eaf8ee; color: #176a2b; }
.vc-quote-notice--error { background: #fff0f0; color: #9b1c1c; }
@media (max-width: 720px) {
	.vc-quote-actions { grid-template-columns: 1fr; }
	.vc-quote-button { width: 100%; }
	.vc-quote-form__grid { grid-template-columns: 1fr; }
	.vc-quote-form__full { grid-column: auto; }
}

/* Presentation selector — v0.5.3 */
.vc-quote-panel__product {
	margin: 8px 0 0;
	color: var(--vcq-muted);
	font-size: 15px;
	font-weight: 700;
}
.vc-quote-presentation {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
.vc-quote-presentation legend {
	margin: 0 0 8px;
	padding: 0;
	color: var(--vcq-text);
	font-size: 14px;
	font-weight: 700;
}
.vc-quote-presentation__options {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}
.vc-quote-presentation__option {
	position: relative;
	display: block !important;
	gap: 0 !important;
	cursor: pointer;
}
.vc-quote-presentation__option input {
	position: absolute;
	width: 1px !important;
	height: 1px !important;
	min-height: 0 !important;
	margin: 0;
	opacity: 0;
	pointer-events: none;
}
.vc-quote-presentation__option span {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 12px 18px;
	border: 1px solid var(--vcq-border);
	border-radius: 12px;
	background: #fff;
	color: var(--vcq-navy);
	font-size: 16px;
	font-weight: 800;
	text-align: center;
	transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.vc-quote-presentation__option:hover span {
	border-color: var(--vcq-blue);
	transform: translateY(-1px);
}
.vc-quote-presentation__option input:checked + span {
	border-color: var(--vcq-navy);
	background: var(--vcq-navy);
	color: #fff;
	box-shadow: 0 10px 24px rgba(7, 30, 65, .14);
}
.vc-quote-presentation__option input:focus-visible + span {
	outline: 0;
	box-shadow: 0 0 0 4px rgba(11, 74, 139, .14);
}
@media (max-width: 420px) {
	.vc-quote-presentation__options { gap: 8px; }
	.vc-quote-presentation__option span { min-height: 50px; padding-inline: 10px; }
}
