:root {
    --color-primary-rgb: 34, 34, 34;
    --color-secondary-rgb: 255, 255, 255;
    --color-text-rgb: 136, 136, 136;
    --color-accent-rgb: 212, 137, 29;
    --base-unit: 8px;

    --text-2xs: 10px;
    --text-xs: 12px;
    --text-sm: 14px;
    --text-rg: 16px;
    --text-md: 18px;
    --text-lg: 22px;
    --text-xl: 28px;
    --text-2xl: 32px;
    --text-3xl: 42px;
    --text-4xl: 48px;
    --text-5xl: 56px;

    --c-box-shadow1: var(--color-primary-rgb) 0px 8px 24px;
    --c-box-shadow2: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
}

body {
    
}

.site-header-topbar {
    
}

.site-header-topbar h6.elementor-heading-title {
    color: var(--e-global-color-accent);
}

.site-header-topbar a:hover {
    color: var(--e-global-color-accent);
}

.site-header {

}

div.elementor-heading-title,
p.elementor-heading-title {
    font-weight: 400 !important;
}

.site-footer {
    padding: calc(var(--base-unit) * 12) 0;
}

.site-footer .elementor-widget-heading .elementor-heading-title {
    color: var(--e-global-color-secondary);
    
}

.site-footer-bottom .e-con-inner {
    padding: calc(var(--base-unit) * 2) 0 calc(var(--base-unit) * 6);
    border-top: 1px solid rgba(var(--color-accent-rgb), 0.2) !important;
}

/* site menus */

.nav-menu,
.nav-menu ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.nav-menu {
	display: flex;
	gap: 20px;
}

.nav-menu ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.nav-menu > li {
	position: relative;
}

.nav-menu:not(.vertical) > li > a {
	padding: 15px 0;
	display: block;
}

.nav-menu li a {
	text-wrap: nowrap;
	color: var(--e-global-color-primary);
	font-weight: 500;
}

.nav-menu li a:hover {
	color: var(--e-global-color-accent);
}

.nav-menu .sub-menu {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 1;
	background: var(--e-global-color-secondary);
	box-shadow: var(--c-box-shadow1);
	border-radius: 5px;
	border-top: 1px solid var(--e-global-color-accent);
	padding: 15px 0;
}

.nav-menu .sub-menu li {
	padding: 5px 20px;
}

.nav-menu > li:hover .sub-menu {
	display: block;
}

.nav-menu.vertical {
	flex-direction: column;
	gap: 10px;
}

.site-footer .nav-menu a {
	color: var(--e-global-color-secondary);
}

/* end site menus */

/* global text styles */

.text-2xs,
.text-2xs * {
    font-size: var(--text-2xs);
}
.text-xs,
.text-xs * {
    font-size: var(--text-xs);
}
.text-sm,
.text-sm * {
    font-size: var(--text-sm);
}
.text-rg,
.text-rg * {
    font-size: var(--text-rg);
}
.text-md,
.text-md * {
    font-size: var(--text-md);
}
.text-lg,
.text-lg * {
    font-size: var(--text-lg);
}
.text-xl,
.text-xl * {
    font-size: var(--text-xl);
}
.text-2xl,
.text-2xl * {
    font-size: var(--text-2xl);
}
.text-3xl,
.text-3xl * {
    font-size: var(--text-3xl);
}
.text-4xl,
.text-4xl * {
    font-size: var(--text-4xl);
}
.text-5xl,
.text-5xl * {
    font-size: var(--text-5xl);
}

/* end global text styles */

/* buttons */

.btn {

}

.btn.simple .elementor-button {
    background: none !important;
    padding: 0 !important;
}

/* end buttons */
