/*
 * Request a Quote — standalone public lead-intake form (2026-09-09).
 *
 * Reuses the same "public card" visual language as quote-view.css
 * (.quote-view__card) rather than inventing a new one — both are public,
 * unauthenticated pages that should read as the same product. Enqueued
 * from incubesocial_enqueue_request_quote_assets() in inc-enqueue.php,
 * gated to page-templates/page-request-quote.php only.
 */

.request-quote {
	display: flex;
	justify-content: center;
}

.request-quote__card {
	width: 100%;
	max-width: 640px;
	box-sizing: border-box;
	background: var(--color-surface, #FFFFFF);
	border: 1px solid var(--color-border, #DDDDE3);
	border-radius: var(--radius-lg, 20px);
	box-shadow: var(--shadow-md, 0 8px 24px rgba(13, 19, 43, 0.12));
	padding: 2.25rem clamp(1.5rem, 4vw, 2.75rem);
}

.request-quote__card h1 {
	font-family: var(--font-heading);
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1.25;
	color: var(--color-ink-1, #1A1A1F);
	margin: 0 0 0.75rem;
}

.request-quote__card > p {
	font-size: 0.95rem;
	line-height: 1.6;
	color: var(--color-ink-2, #4A4A55);
	margin: 0 0 1.5rem;
}

.request-quote__alert {
	border-radius: 10px;
	padding: 0.85rem 1rem;
	margin-bottom: 1.25rem;
	font-size: 0.9rem;
}

.request-quote__alert--success {
	background: #ECFDF5;
	color: #065F46;
	border: 1px solid #A7F3D0;
}

.request-quote__alert--error {
	background: #FEF2F2;
	color: #991B1B;
	border: 1px solid #FECACA;
}

.request-quote__row {
	margin-bottom: 1.1rem;
}

.request-quote__row label {
	display: block;
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--color-ink-1, #1A1A1F);
	margin-bottom: 0.35rem;
}

.request-quote__row input,
.request-quote__row textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 0.7rem 0.9rem;
	border: 1px solid var(--color-border, #DDDDE3);
	border-radius: 10px;
	font-family: var(--font-body);
	font-size: 0.92rem;
	color: var(--color-ink-1, #1A1A1F);
}

.request-quote__row textarea {
	resize: vertical;
}

.request-quote__row--honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.request-quote__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	box-sizing: border-box;
	padding: 0.75rem 1.75rem;
	border: none;
	border-radius: var(--radius-pill, 999px);
	background: var(--gradient-signature);
	color: #FFFFFF;
	font-family: var(--font-body);
	font-size: 0.9rem;
	font-weight: 700;
	cursor: pointer;
	transition: filter 0.16s ease-out, transform 0.16s ease-out;
}

.request-quote__btn:hover,
.request-quote__btn:focus-visible {
	filter: brightness(1.07);
	transform: translateY(-1px);
}

@media (max-width: 480px) {
	.request-quote__card {
		padding: 1.75rem 1.25rem;
	}
}
