/**
 * Carloop app handoff: trade-in, book service, signup modal (standalone + vehicle page).
 */

.carloop-handoff-page-wrap {
	max-width: min(1200px, 100%) !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 24px 20px 60px !important;
	background: #fdfbf7 !important;
	box-sizing: border-box !important;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif !important;
}

.carloop-handoff-page-wrap *,
.carloop-handoff-page-wrap *::before,
.carloop-handoff-page-wrap *::after {
	box-sizing: border-box !important;
}

.carloop-handoff--standalone .carloop-handoff {
	margin-top: 0 !important;
}

.carloop-handoff {
	margin-top: 48px !important;
	padding: 8px 0 32px !important;
}

.carloop-handoff__grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
	gap: 28px !important;
	align-items: start !important;
}

.carloop-handoff__grid--single {
	grid-template-columns: minmax(0, 560px) !important;
	justify-content: center !important;
}

.carloop-handoff__card {
	background: #ffffff !important;
	border-radius: 16px !important;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.1) !important;
	padding: 28px 28px 32px !important;
	border: 1px solid rgba(0, 33, 71, 0.08) !important;
}

.carloop-handoff__title {
	margin: 0 0 10px !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	color: #002147 !important;
	letter-spacing: -0.02em !important;
}

.carloop-handoff__lead {
	margin: 0 0 24px !important;
	font-size: 15px !important;
	color: #6b7280 !important;
	line-height: 1.5 !important;
}

.carloop-handoff__h3 {
	margin: 0 0 12px !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: #002147 !important;
}

.carloop-handoff__label {
	display: block !important;
	margin: 16px 0 8px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #002147 !important;
}

.carloop-handoff__label:first-of-type {
	margin-top: 0 !important;
}

.carloop-handoff__hint {
	margin: -4px 0 12px !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	color: #6b7280 !important;
}

.carloop-handoff__input,
.carloop-handoff__select,
.carloop-handoff__textarea {
	width: 100% !important;
	padding: 14px 16px !important;
	font-size: 15px !important;
	border: 1px solid #d1d5db !important;
	border-radius: 12px !important;
	background: #fff !important;
	color: #111827 !important;
}

.carloop-handoff__input::placeholder,
.carloop-handoff__textarea::placeholder {
	color: #9ca3af !important;
}

.carloop-handoff__textarea {
	min-height: 96px !important;
	resize: vertical !important;
}

.carloop-handoff__block {
	margin-bottom: 8px !important;
}

.carloop-handoff__or {
	text-align: center !important;
	margin: 20px 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #9ca3af !important;
	letter-spacing: 0.08em !important;
}

.carloop-handoff__cta {
	display: block !important;
	width: 100% !important;
	margin-top: 24px !important;
	padding: 16px 20px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #f29924 !important;
	color: #fff !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	transition: background 0.2s ease, transform 0.15s ease !important;
}

.carloop-handoff__cta:hover {
	background: #e08818 !important;
}

.carloop-handoff__cta:disabled {
	opacity: 0.65 !important;
	cursor: not-allowed !important;
}

.carloop-handoff__inline-error {
	margin: 0 0 12px !important;
	padding: 10px 12px !important;
	border-radius: 10px !important;
	background: #fef2f2 !important;
	color: #b91c1c !important;
	font-size: 14px !important;
}

.carloop-handoff__field-error {
	margin: -4px 0 12px !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	color: #b91c1c !important;
}

/* Single vehicle template shell */
.site-main.site-carloop-vehicle {
	background: #fdfbf7 !important;
}

.carloop-handoff-modal {
	position: fixed !important;
	inset: 0 !important;
	z-index: 100000 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 20px !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transition: opacity 0.2s ease, visibility 0.2s ease !important;
}

.carloop-handoff-modal--open {
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

.carloop-handoff-modal__backdrop {
	position: absolute !important;
	inset: 0 !important;
	background: rgba(0, 20, 40, 0.45) !important;
	cursor: pointer !important;
}

.carloop-handoff-modal__panel {
	position: relative !important;
	z-index: 1 !important;
	width: min(440px, 100%) !important;
	max-height: min(90vh, 720px) !important;
	overflow-y: auto !important;
	background: #fff !important;
	border-radius: 20px !important;
	box-shadow: 0 24px 48px rgba(0, 0, 0, 0.18) !important;
	padding: 28px 24px 24px !important;
}

.carloop-handoff-modal__close {
	position: absolute !important;
	top: 12px !important;
	right: 14px !important;
	border: none !important;
	background: transparent !important;
	font-size: 28px !important;
	line-height: 1 !important;
	color: #6b7280 !important;
	cursor: pointer !important;
	padding: 4px 8px !important;
}

.carloop-handoff-modal__title {
	margin: 0 0 8px !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #002147 !important;
	padding-right: 36px !important;
}

.carloop-handoff-modal__lead {
	margin: 0 0 16px !important;
	font-size: 14px !important;
	color: #6b7280 !important;
	line-height: 1.5 !important;
}

.carloop-handoff-modal__alert {
	margin-bottom: 14px !important;
	padding: 10px 12px !important;
	border-radius: 10px !important;
	background: #fef2f2 !important;
	color: #b91c1c !important;
	font-size: 14px !important;
}

.carloop-handoff-modal__alert--error {
	background: #fef2f2 !important;
}

.carloop-handoff-modal__foot {
	margin: 16px 0 0 !important;
	font-size: 12px !important;
	color: #9ca3af !important;
	line-height: 1.45 !important;
}
