body.lgt-quote-open { overflow: hidden; }

.lgt-quote-overlay {
	position: fixed;
	inset: 0;
	z-index: 999996;
	background: rgba(15, 23, 42, .48);
	backdrop-filter: blur(2px);
}

.lgt-quote-panel {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 999997;
	box-sizing: border-box;
	width: min(470px, 100vw);
	height: 100dvh;
	overflow-y: auto;
	padding: 30px 28px 45px;
	background: #fff;
	color: #1d2638;
	box-shadow: -18px 0 50px rgba(15, 23, 42, .22);
	transform: translateX(105%);
	transition: transform 220ms ease;
}
.lgt-quote-panel.is-open { transform: translateX(0); }

.lgt-quote-panel__close {
	position: absolute;
	top: 22px;
	right: 22px;
	display: grid !important;
	place-items: center;
	box-sizing: border-box !important;
	width: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #d6dce6 !important;
	border-radius: 50% !important;
	background: #fff !important;
	color: #273247 !important;
	font-size: 25px !important;
	line-height: 1 !important;
	cursor: pointer;
	appearance: none;
}
.lgt-quote-panel__eyebrow { margin: 0 55px 5px 0; color: #526074; font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.lgt-quote-panel h2 { margin: 0 55px 18px 0; color: #182033; font-size: 28px; }
.lgt-quote-panel__product { margin: 0 0 14px; padding: 13px 15px; border-radius: 8px; background: #f4f6f9; line-height: 1.45; }
.lgt-quote-panel__product span,
.lgt-quote-panel__intro { color: #667085; font-size: 13px; }
.lgt-quote-panel__intro { margin: 0 0 20px; line-height: 1.55; }
.lgt-quote-panel form { display: grid; gap: 14px; }
.lgt-quote-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.lgt-quote-panel form > label,
.lgt-quote-grid label { display: grid; gap: 6px; color: #344054; font-size: 13px; font-weight: 700; }
.lgt-quote-panel input:not([type="checkbox"]):not([type="radio"]),
.lgt-quote-panel textarea {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 11px 12px;
	border: 1px solid #cfd6e1;
	border-radius: 7px;
	background: #fff;
	color: #182033;
	font: inherit;
	font-weight: 400;
}
.lgt-quote-panel input:focus,
.lgt-quote-panel textarea:focus { border-color: #e3ad00; outline: 2px solid rgba(255, 203, 5, .25); }
.lgt-quote-condition { margin: 0; padding: 13px; border: 1px solid #dfe4eb; border-radius: 8px; }
.lgt-quote-condition[hidden] { display: none; }
.lgt-quote-condition legend { padding: 0 5px; color: #344054; font-size: 13px; font-weight: 800; }
.lgt-quote-condition [data-lgt-quote-condition-options] { display: grid; gap: 8px; }
.lgt-quote-condition__option { display: flex; align-items: center; gap: 9px; padding: 10px; border: 1px solid #cfd6e1; border-radius: 7px; cursor: pointer; }
.lgt-quote-condition__option.is-active { border-color: #e3ad00; background: #fff9e5; }
.lgt-quote-condition__option input { width: 17px; height: 17px; margin: 0; accent-color: #ffca08; }
.lgt-quote-consent { display: flex !important; grid-template-columns: 18px 1fr; align-items: flex-start; font-weight: 500 !important; line-height: 1.45; }
.lgt-quote-consent input { width: 17px; height: 17px; margin: 2px 0 0; accent-color: #ffca08; }
.lgt-quote-hp { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.lgt-quote-panel__message { min-height: 20px; color: #475467; font-size: 13px; }
.lgt-quote-panel__message.is-success { color: #087a39; }
.lgt-quote-panel__message.is-error { color: #b42318; }
.lgt-quote-panel__submit {
	box-sizing: border-box !important;
	width: 100% !important;
	min-height: 48px;
	margin: 0 !important;
	padding: 11px 16px !important;
	border: 1px solid #ffca08 !important;
	border-radius: 7px !important;
	background: #ffca08 !important;
	color: #1d2433 !important;
	font-weight: 900 !important;
	cursor: pointer;
}
.lgt-quote-panel__submit:disabled { opacity: .6; cursor: wait; }

@media (max-width: 560px) {
	.lgt-quote-panel { padding: 24px 18px 38px; }
	.lgt-quote-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	.lgt-quote-panel { transition: none; }
}
