/**
 * Shared interior-page styles — Contact, News/Insights.
 * Matches Home Bolier / alt-home-2 design language.
 */

body.vb-site-page {
	--vb-purple: #785788;
	--vb-purple-deep: #3d2b47;
	--vb-gold: #F1C677;
	--vb-mist: #f7f4f8;
	--vb-ink: #3d2b47;
	--vb-muted: #6b6170;
	--vb-shadow: 0 18px 40px rgba(120, 87, 136, 0.16);
}

body.vb-site-page .elementor-heading-title em {
	font-style: italic;
	color: var(--vb-purple);
}

/* Typography helpers only — section backgrounds live in Elementor */
body.vb-site-page .vb-page-hero .elementor-heading-title {
	font-family: "DM Serif Display", Georgia, serif;
	font-weight: 400;
	color: var(--vb-purple-deep);
}

body.vb-site-page .vb-page-eyebrow .elementor-heading-title {
	font-family: "IBM Plex Mono", ui-monospace, monospace;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	color: var(--vb-purple);
}

body.vb-site-page .vb-page-lede .elementor-heading-title,
body.vb-site-page .vb-page-lede {
	font-family: "DM Sans", system-ui, sans-serif;
	font-weight: 400;
	color: var(--vb-muted);
}

body.vb-site-page .vb-section-label .elementor-heading-title {
	font-family: "DM Sans", system-ui, sans-serif !important;
	font-weight: 700 !important;
	color: var(--vb-purple-deep) !important;
}

body.vb-site-page .vb-contact-meta .elementor-heading-title {
	font-family: "DM Serif Display", system-ui, sans-serif !important;
	color: #3c2b48 !important;
}

body.vb-site-page .vb-contact-meta a {
	color: var(--vb-purple);
	text-decoration: none;
	border-bottom: 1px solid rgba(120, 87, 136, 0.25);
	transition: border-color 0.2s ease, color 0.2s ease;
}

body.vb-site-page .vb-contact-meta a:hover {
	color: var(--vb-purple-deep);
	border-bottom-color: var(--vb-gold);
}

/* —— Gravity Forms on contact —— */
body.vb-site-page .gform_wrapper.gform-theme--orbital,
body.vb-site-page .gform_wrapper {
	--gf-color-primary: #785788;
	--gf-color-primary-rgb: 120, 87, 136;
	--gf-color-primary-darker: #3d2b47;
	--gf-color-primary-lighter: #9a7aad;
	--gf-ctrl-btn-bg-color-primary: #F1C677;
	--gf-ctrl-btn-bg-color-primary-hover: #e8b85f;
	--gf-ctrl-btn-color-primary: #3d2b47;
	--gf-ctrl-label-color-primary: #3d2b47;
}

body.vb-site-page .gform_wrapper .gform_button,
body.vb-site-page .gform_wrapper input[type="submit"] {
	background: var(--vb-gold) !important;
	color: var(--vb-purple-deep) !important;
	border: none !important;
	font-family: "DM Sans", system-ui, sans-serif !important;
	font-weight: 700 !important;
	padding: 14px 28px !important;
	box-shadow: none !important;
}

body.vb-site-page .gform_wrapper .gform_button:hover,
body.vb-site-page .gform_wrapper input[type="submit"]:hover {
	background: #e8b85f !important;
}

body.vb-site-page .gform_wrapper input[type="text"],
body.vb-site-page .gform_wrapper input[type="email"],
body.vb-site-page .gform_wrapper input[type="tel"],
body.vb-site-page .gform_wrapper input[type="number"],
body.vb-site-page .gform_wrapper select,
body.vb-site-page .gform_wrapper textarea {
	border-color: rgba(120, 87, 136, 0.22) !important;
	background: #ffffff !important;
	font-family: "DM Sans", system-ui, sans-serif !important;
}

body.vb-site-page .gform_wrapper .gfield_label,
body.vb-site-page .gform_wrapper .gform-field-label {
	font-family: "DM Sans", system-ui, sans-serif !important;
	color: #baacc1 !important;
}

/* —— News / posts —— */
body.vb-site-page .vb-posts-band {
	background: #ffffff !important;
}

body.vb-site-page .raven-posts article,
body.vb-site-page .raven-post,
body.vb-site-page .elementor-post {
	box-shadow: var(--vb-shadow);
	background: #ffffff;
	transition: transform 0.28s ease, box-shadow 0.28s ease;
}

body.vb-site-page .raven-posts article:hover,
body.vb-site-page .raven-post:hover,
body.vb-site-page .elementor-post:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 48px rgba(120, 87, 136, 0.2);
}

body.vb-site-page .raven-post-title,
body.vb-site-page .raven-post-title a,
body.vb-site-page .raven-post-title-link,
body.vb-site-page .elementor-post__title,
body.vb-site-page .elementor-post__title a {
	font-family: "DM Serif Display", Georgia, serif !important;
	font-weight: 400 !important;
	color: var(--vb-purple-deep) !important;
}

/* Load more */
body.vb-site-page .raven-load-more a,
body.vb-site-page a.raven-load-more-button,
body.vb-site-page .elementor-button {
	font-family: "DM Sans", system-ui, sans-serif !important;
}

body.vb-site-page .raven-load-more a {
	background: var(--vb-gold) !important;
	color: var(--vb-purple-deep) !important;
	border: none !important;
	font-weight: 700 !important;
	padding: 12px 28px !important;
	box-shadow: none !important;
}

body.vb-site-page .raven-post-meta,
body.vb-site-page .elementor-post-date,
body.vb-site-page .elementor-post__meta-data {
	font-family: "IBM Plex Mono", ui-monospace, monospace !important;
	font-size: 11.5px !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--vb-purple) !important;
}

body.vb-site-page .raven-post-excerpt,
body.vb-site-page .elementor-post__excerpt {
	font-family: "DM Sans", system-ui, sans-serif !important;
	color: var(--vb-muted) !important;
}

body.vb-site-page .raven-post-link,
body.vb-site-page .elementor-post__read-more,
body.vb-site-page a.raven-post-button {
	font-family: "DM Sans", system-ui, sans-serif !important;
	font-weight: 600 !important;
	color: var(--vb-purple) !important;
	border-bottom: 2px solid var(--vb-gold);
	text-decoration: none !important;
}

body .elementor-widget-raven-advanced-posts .vb-posts-grid .raven-posts-item,
body .elementor-widget-raven-advanced-posts .vb-posts-grid .raven-posts-item[class*="elementor-animation-"],
body .elementor-widget-raven-advanced-posts .vb-posts-grid .raven-posts-item:hover {
	-webkit-transition: transform 0.25s ease-in-out !important;
	transition: transform 0.25s ease-in-out !important;
}

@media (prefers-reduced-motion: reduce) {

	body.vb-site-page .raven-posts article,
	body.vb-site-page .raven-post,
	body.vb-site-page .elementor-post {
		transition: none;
	}

	body.vb-site-page .raven-posts article:hover,
	body.vb-site-page .raven-post:hover,
	body.vb-site-page .elementor-post:hover {
		transform: none;
	}
}