/**
 * Legendary Contact — pixel-faithful port of legendary_contact_ui_concept.jsx (Tailwind CSS v3 defaults).
 */

:root {
	--tw-n950: #0a0a0a;
	--tw-n900: #171717;
	--tw-n400: #a3a3a3;
	--tw-n300: #d4d4d4;
	--tw-white-10: rgb(255 255 255 / 0.1);
	--tw-white-3: rgb(255 255 255 / 0.03);
	--tw-n900-70: rgb(23 23 23 / 0.7);
	--tw-max-w-7xl: 80rem;
	--tw-max-w-3xl: 48rem;
	--tw-r2xl: 1rem;
	--tw-r32: 2rem;
	--tw-font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
		"Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
		"Segoe UI Symbol", "Noto Color Emoji";
}

body.legendary-contact-page {
	background-color: var(--tw-n950) !important;
	color: #fff !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body.legendary-contact-page #wrapper,
body.legendary-contact-page #inner-wrap,
body.legendary-contact-page .site,
body.legendary-contact-page .content-bg {
	background-color: var(--tw-n950) !important;
}

body.legendary-contact-page .entry-hero,
body.legendary-contact-page .kadence-entry-hero,
body.legendary-contact-page .entry-header,
body.legendary-contact-page .kadence-breadcrumbs,
body.legendary-contact-page .kadence-breadcrumbs-container,
body.legendary-contact-page .page-title,
body.legendary-contact-page h1.entry-title,
body.legendary-contact-page .hero-section {
	display: none !important;
}

body.legendary-contact-page .site-main,
body.legendary-contact-page .entry-content,
body.legendary-contact-page .entry-content-wrap {
	color: #fff !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	padding-top: 0 !important;
}

.legendary-contact-canvas {
	box-sizing: border-box;
	min-height: 100vh;
	background-color: var(--tw-n950);
	color: #fff;
	font-family: var(--tw-font-sans);
	font-size: 1rem;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.legendary-contact-canvas *,
.legendary-contact-canvas *::before,
.legendary-contact-canvas *::after {
	box-sizing: border-box;
}

.legendary-contact-canvas h1,
.legendary-contact-canvas h2,
.legendary-contact-canvas h3 {
	margin: 0;
}

.legendary-contact-canvas p {
	margin: 0;
}

.lc-notice-wrap {
	padding-top: 1rem;
}

.lc-notice {
	padding: 1rem 1.25rem;
	font-size: 0.875rem;
	line-height: 1.25rem;
	border-radius: var(--tw-r2xl);
	border: 1px solid var(--tw-white-10);
}

.lc-notice--success {
	background: rgb(23 23 23 / 0.8);
	color: var(--tw-n300);
}

.lc-notice--error {
	background: rgb(23 23 23 / 0.8);
	color: #fca5a5;
}

.lc-border-b {
	border-bottom: 1px solid var(--tw-white-10);
}

.lc-border-t {
	border-top: 1px solid var(--tw-white-10);
}

.lc-container {
	max-width: var(--tw-max-w-7xl);
	margin-left: auto;
	margin-right: auto;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 1024px) {
	.lc-container {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.lc-container--py16 {
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.lc-container--py10 {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}

.lc-container--footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}

.lc-container--cta {
	text-align: center;
}

.lc-intro-copy {
	max-width: var(--tw-max-w-3xl);
}

.lc-h1 {
	margin: 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-weight: 600 !important;
	color: #fff !important;
	font-size: 2.25rem !important;
	line-height: 2.5rem !important;
	letter-spacing: 0 !important;
}

@media (min-width: 640px) {
	.lc-h1 {
		font-size: 3rem !important;
		line-height: 1 !important;
	}
}

@media (min-width: 1024px) {
	.lc-h1 {
		font-size: 3.75rem !important;
		line-height: 1 !important;
	}
}

.lc-intro-lead {
	margin: 1.25rem 0 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	font-weight: 400 !important;
	color: var(--tw-n300) !important;
}

/* grid gap-10 lg:grid-cols-[1.2fr_0.8fr] */
.lc-main-grid {
	display: grid;
	gap: 2.5rem;
	grid-template-columns: 1fr;
}

@media (min-width: 1024px) {
	.lc-main-grid {
		grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
		align-items: start;
	}
}

/* rounded-[2rem] border border-white/10 bg-white/[0.03] p-8 */
.lc-form-panel {
	border-radius: var(--tw-r32);
	border: 1px solid var(--tw-white-10);
	background-color: var(--tw-white-3);
	padding: 2rem;
}

/* text-2xl font-semibold */
.lc-h2-form {
	margin: 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 1.5rem !important;
	line-height: 2rem !important;
	font-weight: 600 !important;
	color: #fff !important;
}

.lc-hp-wrap {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.lc-form {
	margin-top: 1.5rem;
}

/* mt-6 grid gap-5 sm:grid-cols-2 */
.lc-fields-grid {
	margin-top: 1.5rem !important;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 1fr;
}

@media (min-width: 640px) {
	.lc-fields-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.lc-input--span2 {
	grid-column: 1 / -1;
}

@media (min-width: 640px) {
	.lc-input--span2 {
		grid-column: span 2;
	}
}

/* rounded-2xl border border-white/10 bg-neutral-900 px-4 py-3 text-sm */
.lc-input,
.lc-textarea {
	width: 100%;
	margin: 0;
	padding: 0.75rem 1rem !important;
	border-radius: var(--tw-r2xl) !important;
	border: 1px solid var(--tw-white-10) !important;
	background-color: var(--tw-n900) !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 0.875rem !important;
	line-height: 1.25rem !important;
	color: #fff !important;
	outline: none;
}

.lc-input::placeholder,
.lc-textarea::placeholder {
	color: var(--tw-n400);
}

.lc-input:focus,
.lc-textarea:focus {
	border-color: rgba(255, 255, 255, 0.25);
}

.lc-textarea {
	margin-top: 1.25rem !important;
	min-height: 8rem;
	resize: vertical;
}

/* mt-6 flex gap-4 */
.lc-actions {
	margin-top: 1.5rem !important;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: center;
}

.lc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none !important;
	cursor: pointer;
	font-family: var(--tw-font-sans) !important;
	font-size: 0.875rem !important;
	line-height: 1.25rem !important;
	font-weight: 500 !important;
	border-radius: var(--tw-r2xl) !important;
	transition: background-color 150ms ease, border-color 150ms ease, color 150ms ease;
	border: 1px solid transparent;
	box-sizing: border-box;
}

.lc-btn--primary {
	padding: 0.75rem 1.5rem !important;
	background: #fff !important;
	border-color: #fff !important;
	color: var(--tw-n950) !important;
}

.lc-btn--primary:hover {
	background: #f5f5f5 !important;
	border-color: #f5f5f5 !important;
	color: var(--tw-n950) !important;
}

button.lc-btn--primary {
	-webkit-appearance: none;
	appearance: none;
}

.lc-btn--outline {
	padding: 0.75rem 1.5rem !important;
	background: transparent !important;
	border: 1px solid var(--tw-white-10) !important;
	color: #fff !important;
	font-weight: 400 !important;
}

.lc-btn--outline:hover {
	background: rgb(255 255 255 / 0.06) !important;
	color: #fff !important;
}

.lc-btn--block {
	width: 100%;
	margin-top: 1rem !important;
	padding: 0.75rem 1rem !important;
}

.lc-aside {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

/* rounded-[2rem] border border-white/10 bg-neutral-900/70 p-6 */
.lc-card {
	border-radius: var(--tw-r32);
	border: 1px solid var(--tw-white-10);
	background-color: var(--tw-n900-70);
	padding: 1.5rem;
}

.lc-h3 {
	margin: 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 1.125rem !important;
	line-height: 1.75rem !important;
	font-weight: 600 !important;
	color: #fff !important;
}

.lc-muted {
	margin: 0.75rem 0 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 0.875rem !important;
	line-height: 1.25rem !important;
	color: var(--tw-n400) !important;
}

.lc-map-preview {
	margin-top: 1rem !important;
	height: 10rem;
	border-radius: var(--tw-r2xl);
	background: rgb(0 0 0 / 0.4);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--tw-font-sans) !important;
	font-size: 0.875rem !important;
	line-height: 1.25rem !important;
	color: var(--tw-n400) !important;
}

/* Trust: grid gap-6 md:grid-cols-3 */
.lc-trust-grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: 1fr;
}

@media (min-width: 768px) {
	.lc-trust-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.lc-trust-card {
	border-radius: var(--tw-r32);
	border: 1px solid var(--tw-white-10);
	background-color: var(--tw-n900-70);
	padding: 1.5rem;
}

.lc-trust-title {
	font-family: var(--tw-font-sans) !important;
	font-size: 1.125rem !important;
	line-height: 1.75rem !important;
	font-weight: 500 !important;
	color: #fff !important;
}

.lc-trust-text {
	margin: 0.75rem 0 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 0.875rem !important;
	line-height: 1.25rem !important;
	color: var(--tw-n400) !important;
}

/* Final CTA */
.lc-h2-cta {
	margin: 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 1.875rem !important;
	line-height: 2.25rem !important;
	font-weight: 600 !important;
	color: #fff !important;
}

.lc-cta-sub {
	margin: 1rem 0 0 !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	color: var(--tw-n400) !important;
}

.lc-btn--cta {
	margin-top: 1.5rem !important;
	padding: 0.75rem 1.5rem !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	font-weight: 500 !important;
	background: #fff !important;
	border: 1px solid #fff !important;
	color: var(--tw-n950) !important;
}

.lc-btn--cta:hover {
	background: #f5f5f5 !important;
	border-color: #f5f5f5 !important;
	color: var(--tw-n950) !important;
}

.lc-footer-muted {
	font-family: var(--tw-font-sans) !important;
	font-size: 0.875rem !important;
	line-height: 1.25rem !important;
	color: var(--tw-n400) !important;
}

.lc-btn-footer {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.5rem 1rem !important;
	border-radius: var(--tw-r2xl) !important;
	border: 1px solid var(--tw-white-10) !important;
	background: transparent !important;
	font-family: var(--tw-font-sans) !important;
	font-size: 0.875rem !important;
	line-height: 1.25rem !important;
	font-weight: 400 !important;
	color: #fff !important;
	text-decoration: none !important;
	transition: background-color 150ms ease;
}

.lc-btn-footer:hover {
	background: rgb(255 255 255 / 0.06) !important;
	color: #fff !important;
}

.legendary-contact-canvas .lc-form-panel {
	color-scheme: dark;
}
