/**
 * Front-end theme token consumers.
 *
 * @package CalumetMedia\ThemeBuilder
 */

body.calumet-theme-active {
	color: var(--cm-color-text, #0f172a);
	background-color: var(--cm-color-background, #ffffff);
	font-family: var(--cm-font-body, "DM Sans", system-ui, sans-serif);
}

body.calumet-theme-active h1,
body.calumet-theme-active h2,
body.calumet-theme-active h3,
body.calumet-theme-active h4,
body.calumet-theme-active h5,
body.calumet-theme-active h6 {
	font-family: var(--cm-font-heading, var(--cm-font-body, "DM Sans", system-ui, sans-serif));
	color: var(--cm-color-text, #0f172a);
}

body.calumet-theme-active a {
	color: var(--cm-color-link, var(--cm-color-primary, #1e70ea));
}

.elementor-section.elementor-section-boxed > .elementor-container,
.e-con-boxed > .e-con-inner {
	max-width: var(--container-max-width, var(--cm-content-width, 1140px));
}

.site-header .header-inner,
.site-footer .footer-inner,
.page-header .entry-title {
	max-width: var(--container-max-width, var(--cm-content-width, 1140px));
}

.custom-logo,
.site-logo img,
.cm-theme-brand-logo {
	max-height: 80px;
	width: auto;
	height: auto;
}

/* Native Theme Builder chrome */
.tb-site-header {
	background: var(--cm-color-header-bg, var(--cm-color-background, #ffffff));
	color: var(--cm-color-header-text, var(--cm-color-text, #0f172a));
	border-bottom: 1px solid var(--cm-color-border, #e2e8f0);
}

.tb-site-header a {
	color: var(--cm-color-header-text, var(--cm-color-text, #0f172a));
}

.tb-site-footer {
	background: var(--cm-color-footer-bg, #0f172a);
	color: var(--cm-color-footer-text, #ffffff);
}

.tb-site-footer a {
	color: var(--cm-color-footer-text, #ffffff);
}

/* Soft fallbacks when Elementor widgets ignore globals */
body.calumet-theme-active .elementor-button {
	border-radius: var(--cm-button-radius, 6px);
}
