/*
Theme Name: Total Child Theme
Theme URI: https://your-site.com
Description: Your site description. Go to Appearance > Editor to modify this file.
Author: Your Name
Author URI: https://your-site.com
Template: Total
Version: 1.0
*/


h1, .wpex-h1 {
	font-size: clamp(40px, 5vmax, 60px);
}

h2, .wpex-h2 {
	font-size: clamp(30px, 4vmax, 40px);
}

h3, .wpex-h3, h3.wpex-heading {
	font-size: clamp(18px, 4vmax, 24px);
}
.max-w-800 {
	max-width: 800px;
}

.text-bigger p {
	font-size: 1.1em;
}

.wpb_content_element.equal-height-content .theme-button {
	margin-top: auto;
}

.cta-row {
	background-color: var(--wpex-surface-2);
}

.max-h-500,
.vcex-image.max-h-500 img {
	max-height: 500px;
}

.vcex-image.wpex-object-cover img {
	object-fit: cover;
}

.vcex-teaser-media img,
.wpex-card-thumbnail img {
	border-radius: var(--wpex-rounded-md);
}

.hero-banner h1 {
	margin-bottom: 10px;
}

@media (min-width: 768px) {
	.vc_column-inner {
		margin-bottom: 0;
	}
}

/*** HEADER ***/
.main-navigation-ul {
	column-gap: var(--wpex-main-nav-gutter);
}

.main-navigation-ul>.menu-item:not(:last-child) {
	margin-inline-end: 0
}

#site-header.overlay-header:after {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
	background-color: transparent;
	transition: background-color .3s ease, height .3s ease;
}

#site-header.overlay-header:has(.mobile-menu-toggle[aria-expanded="true"]):after {
	height: 1px;
	background-color: var(--wpex-border-main);
}

.mobile-menu-toggle[aria-expanded="true"] {
	color: #222 !important;
}

#site-header.overlay-header .wpex-mobile-menu {
	top: 0;
	padding-top: 101px;
}

#site-header.overlay-header #site-header-inner {
	z-index: 10002;
}


@media (max-width: 499px) {
	.header-aside-content .theme-button {
		--wpex-btn-padding: 10px 20px;
	}
}

html:has(.mobile-menu-is-open) {
	overflow-y: hidden;
	scrollbar-gutter: stable;
}

.wpex-mobile-menu {
	height: 100dvh;
	border-top: 1px solid var(--wpex-border-main);
	position: absolute;
    z-index: 999;
    left: 0;
    width: 100%;
}

.mobile-menu-toggle,
.mobile-menu-toggle__label {
	color: #222;
}

#site-header.overlay-header.dyn-styles:not(.core-style) .mobile-menu-toggle__label {
	color: inherit;
}

.page-header-row {
	background-color: var(--wpex-surface-2);
	padding-top: 40px;
	padding-bottom: 120px;
}

/*** CONTACT ***/
.wpcf7 {
	max-width: 800px;
	margin: 0 auto;
}

.wpcf7-form p {
	margin-bottom: 20px;
}

/*** FOOTER ***/
.wpex-surface-dark {
    --wpex-surface-1: #222;
}