/*
Theme Name: EngageHub
Description: Custom child theme for EngageHub
Author: EngageHub
Template: hello-elementor
Version: 1.0.0
Text Domain: engagehub
*/

/* Custom styles */

:root {
	/* Font family */
	--eh-font-serif: "Manrope", sans-serif;

	/* Size scale */
	--eh-size-3xs: 2px;
	--eh-size-2xs: 4px;
	--eh-size-xs: 6px;
	--eh-size-s: 8px;
	--eh-size-m: 12px;
	--eh-size-l: 14px;
	--eh-size-xl: 16px;
	--eh-size-2xl: 20px;
	--eh-size-3xl: 24px;
	--eh-size-4xl: 32px;
	--eh-size-5xl: 40px;
	--eh-size-full: 99px;

	/* Font weights */
	--eh-weight-thin: 100;
	--eh-weight-extralight: 200;
	--eh-weight-light: 300;
	--eh-weight-regular: 400;
	--eh-weight-medium: 500;
	--eh-weight-semibold: 600;
	--eh-weight-bold: 700;
	--eh-weight-extrabold: 800;
	--eh-weight-black: 900;
}

/* Base typography */
html {
	font-size: 16px;
}

/* * {
	border: 1px solid red;
} */

body,
.elementor {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-xl);
	font-weight: var(--eh-weight-regular);
	line-height: 1.6;
}

/* Base button */
.elementor-widget-button.eh-button .elementor-button,
.e-con.e-atomic-element.e-tab-base {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 12px 22px;
	border: 1px solid transparent;
	border-radius: 6px;
	font-family: inherit;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.e-con.e-atomic-element.e-tab-base {
	width: fit-content;
}

/* Purple primary */
.elementor-widget-button.eh-button--primary .elementor-button,
.e-con.e-atomic-element.e-tab-base.e--selected{
	color: #fff;
	background: #5b2e91;
	border-color: #5b2e91;
}

.elementor-widget-button.eh-button--primary .elementor-button:hover {
	color: #fff;
	background: #47216f;
	border-color: #47216f;
	transform: translateY(-1px);
}

/* Coral */
.elementor-widget-button.eh-button--coral .elementor-button {
	color: #fff;
	background: #ff6f61;
	border-color: #ff6f61;
}

.elementor-widget-button.eh-button--coral .elementor-button:hover {
	color: #fff;
	background: #e8574a;
	border-color: #e8574a;
	transform: translateY(-1px);
}

/* Outline */
.elementor-widget-button.eh-button--outline .elementor-button {
	color: #5b2e91;
	background: transparent;
	border-color: #5b2e91;
}

.elementor-widget-button.eh-button--outline .elementor-button:hover {
	color: #fff;
	background: #5b2e91;
}

/* Keyboard accessibility */
.elementor-widget-button.eh-button .elementor-button:focus-visible {
	outline: 3px solid rgba(91, 46, 145, 0.3);
	outline-offset: 3px;
}

/* Headings */
h1,
.elementor h1.elementor-heading-title {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-5xl);
	font-weight: var(--eh-weight-bold);
	line-height: 1.15;
	letter-spacing: -0.02em;
}

h2,
.elementor h2.elementor-heading-title {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-4xl);
	font-weight: var(--eh-weight-bold);
	line-height: 1.2;
	letter-spacing: -0.015em;
}

h3,
.elementor h3.elementor-heading-title {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-3xl);
	font-weight: var(--eh-weight-bold);
	line-height: 1.25;
}

h4,
.elementor h4.elementor-heading-title {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-2xl);
	font-weight: var(--eh-weight-bold);
	line-height: 1.3;
}

h5,
.elementor h5.elementor-heading-title {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-xl);
	font-weight: var(--eh-weight-medium);
	line-height: 1.4;
}

/* Paragraphs */
p,
.elementor-widget-text-editor p {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-l);
	font-weight: var(--eh-weight-regular);
	line-height: 1.6;
}

/* Buttons */
button,
input[type="button"],
input[type="submit"],
.elementor-button {
	font-family: var(--eh-font-serif);
	font-size: var(--eh-size-l);
	font-weight: var(--eh-weight-semibold);
	line-height: 1;
}