/**
 * Capital Core — Contact Us
 * Exact conversion from capital-glass.html #contact
 */

.elementor-widget-capital_core_contact_us,
.elementor-widget-capital_core_contact_us > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

.capital-core-widget.cc-contact-wrap {
	width: 100%;
	max-width: 100%;
	font-family: "Manrope", sans-serif;
	color: #102c36;
	-webkit-font-smoothing: antialiased;
	background-color: #f6f8f7;
}

/* mx-auto grid max-w-7xl gap-10 px-5 py-20 sm:px-8 lg:grid-cols-[.85fr_1.15fr] lg:py-28 */
.capital-core-widget .cc-contact {
	margin-left: auto;
	margin-right: auto;
	display: grid;
	max-width: var(--cc-contact-max-width, 1280px);
	gap: 40px; /* gap-10 */
	padding: 80px 20px; /* py-20 px-5 */
	width: 100%;
	box-sizing: border-box;
	grid-template-columns: 1fr;
	align-items: start;
	background-color: transparent;
}

@media (min-width: 640px) {
	.capital-core-widget .cc-contact {
		padding-left: 32px; /* sm:px-8 */
		padding-right: 32px;
	}
}

@media (min-width: 1024px) {
	.capital-core-widget .cc-contact {
		grid-template-columns: 0.85fr 1.15fr;
		padding-top: 112px; /* lg:py-28 */
		padding-bottom: 112px;
		align-items: stretch; /* equal height columns (match HTML default) */
	}
}

/* ——— Left column ——— */
.capital-core-widget .cc-contact__intro {
	min-width: 0;
}

@media (min-width: 1024px) {
	.capital-core-widget .cc-contact__intro {
		height: 100%;
	}
}

.capital-core-widget .cc-contact__eyebrow {
	margin: 0;
	padding: 0;
	font-family: "Manrope", sans-serif;
	font-size: 12px; /* text-xs */
	font-weight: 900;
	letter-spacing: 0.18em;
	line-height: 1.25;
	color: #187b8e !important;
	text-transform: uppercase;
}

/* mt-3 font-display text-5xl font-black leading-[.94] tracking-[-0.06em] */
.elementor-widget-capital_core_contact_us .cc-contact__title,
.capital-core-widget .cc-contact__title {
	margin: 12px 0 0 !important; /* mt-3 */
	padding: 0 !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 48px !important; /* text-5xl */
	font-weight: 900 !important; /* font-black */
	line-height: 0.94 !important; /* leading-[.94] */
	letter-spacing: -0.06em !important; /* tracking-[-0.06em] */
	color: #102c36 !important;
	text-transform: none !important;
}

.elementor-widget-capital_core_contact_us .cc-contact__title *,
.capital-core-widget .cc-contact__title * {
	letter-spacing: -0.06em !important;
}

/* mt-6 max-w-sm leading-7 text-[#597078] */
.capital-core-widget .cc-contact__text {
	margin: 24px 0 0; /* mt-6 */
	padding: 0;
	max-width: 24rem; /* max-w-sm */
	font-family: "Manrope", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75rem; /* leading-7 */
	color: #597078 !important;
}

/* mt-7 inline-flex items-center bg-[#ffe21b] px-6 py-4 font-black tracking-[.08em] */
.capital-core-widget .cc-contact__phone-cta {
	display: inline-flex !important;
	align-items: center !important;
	margin: 28px 0 0; /* mt-7 */
	padding: 16px 24px; /* py-4 px-6 */
	background-color: #ffe21b !important;
	font-family: "Manrope", sans-serif !important;
	font-size: 16px;
	font-weight: 900 !important;
	letter-spacing: 0.08em;
	line-height: 1.25;
	color: #102c36 !important;
	text-decoration: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.capital-core-widget .cc-contact__phone-cta:hover,
.capital-core-widget .cc-contact__phone-cta:focus {
	background-color: #187b8e !important;
	color: #ffffff !important;
}

/* mt-10 space-y-4 border-t border-[#102c36]/15 pt-7 text-sm */
.capital-core-widget .cc-contact__details {
	margin: 40px 0 0; /* mt-10 */
	padding: 28px 0 0; /* pt-7 */
	border-top: 1px solid rgba(16, 44, 54, 0.15);
	font-size: 14px; /* text-sm */
}

.capital-core-widget .cc-contact__detail {
	margin: 0 0 16px; /* space-y-4 */
	padding: 0;
	font-family: "Manrope", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: #102c36 !important;
}

.capital-core-widget .cc-contact__detail:last-child {
	margin-bottom: 0;
}

.capital-core-widget .cc-contact__detail-label {
	display: inline;
	margin: 0;
	padding: 0;
	font-family: "Manrope", sans-serif;
	font-size: inherit;
	font-weight: 700;
	color: #102c36 !important;
	text-transform: uppercase;
}

.capital-core-widget .cc-contact__detail-body {
	display: block;
	margin: 0;
	padding: 0;
	font-family: "Manrope", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: #102c36 !important;
}

.capital-core-widget .cc-contact__detail-body a,
.capital-core-widget .cc-contact__detail a {
	color: #187b8e !important;
	text-decoration: none !important;
}

.capital-core-widget .cc-contact__detail-body a:hover,
.capital-core-widget .cc-contact__detail a:hover {
	text-decoration: underline !important;
}

/* ——— Form card: bg-white p-7 sm:p-10 box-shadow: 12px 12px 0 #dcecf0 ——— */
.capital-core-widget .cc-contact__form-card {
	background-color: #ffffff;
	padding: 28px; /* p-7 */
	box-shadow: 12px 12px 0 #dcecf0;
	box-sizing: border-box;
	min-width: 0;
	width: 100%;
}

@media (min-width: 640px) {
	.capital-core-widget .cc-contact__form-card {
		padding: 40px; /* sm:p-10 */
	}
}

/* Desktop: stretch form card to match left column height */
@media (min-width: 1024px) {
	.capital-core-widget .cc-contact__form-card {
		height: 100%;
		min-height: 100%;
		align-self: stretch;
		display: flex;
		flex-direction: column;
	}

	.capital-core-widget .cc-contact__form-body {
		flex: 0 0 auto;
		width: 100%;
	}
}

.capital-core-widget .cc-contact__form-body {
	width: 100%;
	max-width: 100%;
}

/* Prefer to talk? — widget text outside the Elementor Form (you style the Form itself) */
.capital-core-widget .cc-contact__form-footer {
	display: block;
	margin: 16px 0 0; /* mt-4 */
	padding: 0;
	text-align: center;
	font-family: "Manrope", sans-serif;
	font-size: 12px; /* text-xs */
	font-weight: 400;
	line-height: 1.4;
	color: #597078 !important;
}

.capital-core-widget .cc-contact__form-footer a {
	font-weight: 700;
	color: #102c36 !important;
	text-decoration: none;
}

.capital-core-widget .cc-contact__form-footer a:hover {
	color: #187b8e !important;
}

/*
 * Elementor Form: NO field/button overrides.
 * Style labels, inputs, gaps, and submit fully in your Form template (Style tab).
 */

/* Editor notice only */
.capital-core-widget .cc-contact__form-notice {
	margin: 0;
	padding: 10px 12px;
	font-family: "Manrope", sans-serif;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	color: #187b8e;
	background: #dcecf0;
}
