/* End custom CSS */

.elementor-kit-12595 {
	--e-global-color-primary: #132c4a;
	--e-global-color-secondary: #ecebe6;
	--e-global-color-text: #232323;
	--e-global-color-accent: #d2c4a1;
	--e-global-color-accentsecondary: #132c4a;
	--e-global-color-white: #f3f2ee;
	--e-global-color-black: #232323;
	--e-global-color-divider: #dfe1de;
	--e-global-color-darkdivider: #f3f2ee;
	--e-global-typography-primary-font-family: "Inter";
	--e-global-typography-primary-font-size: 50px;
	--e-global-typography-primary-font-weight: 300;
	--e-global-typography-primary-line-height: 1.1em;
	--e-global-typography-secondary-font-family: "Inter";
	--e-global-typography-secondary-font-size: 22px;
	--e-global-typography-secondary-font-weight: 700;
	--e-global-typography-secondary-line-height: 1.4em;
	--e-global-typography-text-font-family: "Inter";
	--e-global-typography-text-font-size: 16px;
	--e-global-typography-text-font-weight: 400;
	--e-global-typography-text-line-height: 1.7em;
	--e-global-typography-accent-font-family: "Inter";
	--e-global-typography-accent-font-size: 16px;
	--e-global-typography-accent-font-weight: 700;
	--e-global-typography-accent-line-height: 1em;
	background-color: #f6f6f4;
	color: var(--e-global-color-text);
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	line-height: var(--e-global-typography-text-line-height);
}

.elementor-kit-12595 button:hover, .elementor-kit-12595 button:focus, .elementor-kit-12595 input[type="button"]:hover, .elementor-kit-12595 input[type="button"]:focus, .elementor-kit-12595 input[type="submit"]:hover, .elementor-kit-12595 input[type="submit"]:focus, .elementor-kit-12595 .elementor-button:hover, .elementor-kit-12595 .elementor-button:focus {
	background-color: rgba(255, 255, 255, 0);
}

.elementor-kit-12595 e-page-transition {
	background-color: #ffbc7d;
}

.elementor-kit-12595 a:hover {
	color: #967300;
}

.elementor-kit-12595 h1 {
	color: var(--e-global-color-primary);
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
	font-size: var(--e-global-typography-primary-font-size);
	font-weight: var(--e-global-typography-primary-font-weight);
	line-height: var(--e-global-typography-primary-line-height);
}

.elementor-kit-12595 h2 {
	color: var(--e-global-color-primary);
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-size: var(--e-global-typography-secondary-font-size);
	font-weight: var(--e-global-typography-secondary-font-weight);
	line-height: var(--e-global-typography-secondary-line-height);
}

.elementor-kit-12595 h3 {
	color: #042a2d;
	font-family: "Poppins", Sans-serif;
	font-size: 25px;
	font-weight: 600;
	line-height: 40px;
	letter-spacing: 1.3px;
	word-spacing: 2px;
}

.elementor-kit-12595 h4 {
	color: var(--e-global-color-primary);
	font-family: "Poppins", Sans-serif;
	font-weight: 400;
}

.elementor-kit-12595 h5 {
	color: var(--e-global-color-primary);
}

.elementor-kit-12595 h6 {
	color: var(--e-global-color-primary);
}

.elementor-kit-12595 button, .elementor-kit-12595 input[type="button"], .elementor-kit-12595 input[type="submit"], .elementor-kit-12595 .elementor-button {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-size: var(--e-global-typography-accent-font-size);
	font-weight: var(--e-global-typography-accent-font-weight);
	line-height: var(--e-global-typography-accent-line-height);
	color: var(--e-global-color-white);
	border-radius: 100px 100px 100px 100px;
	padding: 13px 20px 13px 20px;
}

.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 1300px;
}

.e-con {
	--container-max-width: 1300px;
}

.elementor-widget:not(:last-child) {
	margin-block-end: 20px;
}

.elementor-element {
	--widgets-spacing: 20px 20px;
	--widgets-spacing-row: 20px;
	--widgets-spacing-column: 20px;
}

h1.entry-title {
	display: var(--page-title-display);
}

@media (max-width:1024px) {
	.elementor-kit-12595 {
		--e-global-typography-primary-font-size: 40px;
		--e-global-typography-secondary-font-size: 20px;
		font-size: var(--e-global-typography-text-font-size);
		line-height: var(--e-global-typography-text-line-height);
	}
	
	.elementor-kit-12595 h1 {
		font-size: var(--e-global-typography-primary-font-size);
		line-height: var(--e-global-typography-primary-line-height);
	}
	
	.elementor-kit-12595 h2 {
		font-size: var(--e-global-typography-secondary-font-size);
		line-height: var(--e-global-typography-secondary-line-height);
	}
	
	.elementor-kit-12595 button, .elementor-kit-12595 input[type="button"], .elementor-kit-12595 input[type="submit"], .elementor-kit-12595 .elementor-button {
		font-size: var(--e-global-typography-accent-font-size);
		line-height: var(--e-global-typography-accent-line-height);
	}
	
	.elementor-section.elementor-section-boxed > .elementor-container {
		max-width: 1024px;
	}
	
	.e-con {
		--container-max-width: 1024px;
	}
}

@media (max-width:767px) {
	.elementor-kit-12595 {
		--e-global-typography-primary-font-size: 28px;
		--e-global-typography-secondary-font-size: 18px;
		font-size: var(--e-global-typography-text-font-size);
		line-height: var(--e-global-typography-text-line-height);
	}
	
	.elementor-kit-12595 h1 {
		font-size: var(--e-global-typography-primary-font-size);
		line-height: var(--e-global-typography-primary-line-height);
	}
	
	.elementor-kit-12595 h2 {
		font-size: var(--e-global-typography-secondary-font-size);
		line-height: var(--e-global-typography-secondary-line-height);
	}
	
	.elementor-kit-12595 h3 {
		font-size: 20px;
		line-height: 2em;
		letter-spacing: 1.3px;
		word-spacing: 0em;
	}
	
	.elementor-kit-12595 h4 {
		font-size: 18px;
		line-height: 2.2em;
		word-spacing: 1em;
	}
	
	.elementor-kit-12595 button, .elementor-kit-12595 input[type="button"], .elementor-kit-12595 input[type="submit"], .elementor-kit-12595 .elementor-button {
		font-size: var(--e-global-typography-accent-font-size);
		line-height: var(--e-global-typography-accent-line-height);
		padding: 10px 15px 10px 15px;
	}
	
	.elementor-section.elementor-section-boxed > .elementor-container {
		max-width: 767px;
	}
	
	.e-con {
		--container-max-width: 767px;
	}
}

/* Start custom CSS */

/* Minnesota Hypnotherapy Typography System
   Cohesive global stylesheet
   Notes:
   - Fluid sizing via clamp()
   - Headings inherit color so bg-dark works
   - Links underline only in content areas
   - ElementsKit containers (including menus) do not underline
*/

/* -----------------------------
   Design tokens
------------------------------ */
:root {
	--mh-font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--mh-font-heading: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--mh-size-body: clamp(18px, calc(15.09px + .24vw), 20px);
	--mh-size-h1: clamp(36px, calc(29.64px + 1.7vw), 50px);
	--mh-size-h2: clamp(25px, calc(21.82px + .85vw), 32px);
	--mh-size-h3: clamp(22px, calc(20.64px + .36vw), 25px);
	--mh-size-h4: clamp(20px, calc(15.09px + .24vw), 22px);
	--mh-lh-body: 2;
	--mh-lh-h2: 1.6;
	--mh-lh-h3: 1.6;
	--mh-lh-h4: 2;
	--mh-color-text: #232323;
	--mh-color-bg-light: #f6f6f4;
	--mh-color-bg-dark: #232323;
	--mh-color-text-on-dark: #f6f6f4;
}

/* -----------------------------
   Base typography
------------------------------ */
body {
	font-family: var(--mh-font-body);
	font-size: var(--mh-size-body);
	line-height: var(--mh-lh-body);
	font-weight: 400;
	color: var(--mh-color-text);
	background-color: var(--mh-color-bg-light);
	letter-spacing: .1px;
	word-spacing: .1px;
}

/* Elementor overall text color (keeps Elementor consistent with body) */
.elementor {
	color: var(--mh-color-text);
}

/* Elementor text editor content */
.elementor-widget-text-editor, .elementor-widget-text-editor p {
	font-family: var(--mh-font-body);
	font-size: var(--mh-size-body);
	line-height: var(--mh-lh-body);
}

/* Headings (native + Elementor heading widget) */
h1, h2, h3, h4, h5, h6, .elementor-widget-heading .elementor-heading-title {
	font-family: var(--mh-font-heading);
	color: inherit;
}

/* H1 */
h1, .elementor-widget-heading h1.elementor-heading-title {
	font-size: var(--mh-size-h1);
	line-height: 1.1;
	font-weight: 600;
	font-style: italic;
	text-transform: capitalize;
	letter-spacing: 1.3px;
	word-spacing: .1px;
}

/* H2 */
h2, .elementor-widget-heading h2.elementor-heading-title {
	font-size: var(--mh-size-h2);
	line-height: var(--mh-lh-h2);
	font-weight: 500;
	font-style: normal;
	text-transform: capitalize;
}

/* H3 */
h3, .elementor-widget-heading h3.elementor-heading-title {
	font-size: var(--mh-size-h3);
	line-height: var(--mh-lh-h3);
	font-weight: 600;
	font-style: normal;
	text-transform: none;
	letter-spacing: 1.3px;
	word-spacing: .1px;
}

/* H4 */
h4, .elementor-widget-heading h4.elementor-heading-title {
	font-size: var(--mh-size-h4);
	line-height: var(--mh-lh-h4);
	font-weight: 400;
	font-style: normal;
	text-transform: none;
	letter-spacing: 1.3px;
	word-spacing: .1px;
}

/* Safer heading spacing (avoids collapsing grid rhythm) */
.elementor-widget-heading .elementor-heading-title {
	margin-top: 0;
	margin-bottom: .6em;
}

/* -----------------------------
   ElementsKit typography alignment
   (Prevents ElementsKit widget defaults from overriding your system)
------------------------------ */
.elementor .ekit-wid-con .elementor-heading-title, .elementor .ekit-wid-con h1, .elementor .ekit-wid-con h2, .elementor .ekit-wid-con h3, .elementor .ekit-wid-con h4, .elementor .ekit-wid-con h5, .elementor .ekit-wid-con h6 {
	font-family: var(--mh-font-heading);
	color: inherit;
}

.elementor .ekit-wid-con h1, .elementor .ekit-wid-con h1.elementor-heading-title {
	font-size: var(--mh-size-h1);
	line-height: 1.1;
	font-weight: 600;
	font-style: italic;
	text-transform: capitalize;
	letter-spacing: 1.3px;
	word-spacing: .1px;
}

.elementor .ekit-wid-con h2, .elementor .ekit-wid-con h2.elementor-heading-title {
	font-size: var(--mh-size-h2);
	line-height: var(--mh-lh-h2);
	font-weight: 500;
	text-transform: capitalize;
}

.elementor .ekit-wid-con h3, .elementor .ekit-wid-con h3.elementor-heading-title {
	font-size: var(--mh-size-h3);
	line-height: var(--mh-lh-h3);
	font-weight: 600;
	text-transform: none;
	letter-spacing: 1.3px;
	word-spacing: .1px;
}

.elementor .ekit-wid-con h4, .elementor .ekit-wid-con h4.elementor-heading-title {
	font-size: var(--mh-size-h4);
	line-height: var(--mh-lh-h4);
	font-weight: 400;
	text-transform: none;
	letter-spacing: 1.3px;
	word-spacing: .1px;
}

/* -----------------------------
   Links
   Goal:
   - Underline only in content areas
   - No underline in ElementsKit containers (menus, headers, many widgets)
   - Buttons never underline
------------------------------ */

/* Underline content links only */
.elementor-widget-text-editor a, .elementor-widget-theme-post-content a, .elementor-widget-theme-post-excerpt a, .elementor-widget-theme-post-title a {
	color: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: .15em;
}

.elementor-widget-text-editor a:hover, .elementor-widget-theme-post-content a:hover, .elementor-widget-theme-post-excerpt a:hover, .elementor-widget-theme-post-title a:hover, .elementor-widget-text-editor a:focus, .elementor-widget-theme-post-content a:focus, .elementor-widget-theme-post-excerpt a:focus, .elementor-widget-theme-post-title a:focus {
	text-decoration-thickness: 2px;
}

/* Prevent color shifts on hover for content links */
.elementor-widget-text-editor a:hover, .elementor-widget-theme-post-content a:hover, .elementor-widget-theme-post-excerpt a:hover, .elementor-widget-theme-post-title a:hover, .elementor-widget-text-editor a:focus, .elementor-widget-theme-post-content a:focus, .elementor-widget-theme-post-excerpt a:focus, .elementor-widget-theme-post-title a:focus {
	color: inherit;
}

/* Buttons never underline */
.elementor .elementor-button, .elementor .elementor-button:link, .elementor .elementor-button:visited, .elementor .elementor-button:hover, .elementor .elementor-button:focus, .elementor .elementor-button:active {
	text-decoration: none;
}

/* ElementsKit areas never underline (includes nav links) */
.ekit-wid-con a, .ekit-wid-con a:link, .ekit-wid-con a:visited, .ekit-wid-con a:hover, .ekit-wid-con a:focus, .ekit-wid-con a:active {
	text-decoration: none;
}

/* -----------------------------
   Dark sections (opt-in)
   Add class bg-dark to the section or container in Elementor Advanced tab
------------------------------ */
.bg-dark {
	color: var(--mh-color-text-on-dark);
}

/* If you want bg-dark to also set the background, uncomment:
.bg-dark { background-color: var(--mh-color-bg-dark); }
*/
.bg-dark a, .bg-dark a:link, .bg-dark a:visited, .bg-dark a:hover, .bg-dark a:focus, .bg-dark a:active {
	color: var(--mh-color-text-on-dark);
}
