/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/***********************************************************/
/** RESET **************************************************/
/***********************************************************/
[class*="elementor"] ul, 
[class*="elementor"] ol {

}
[class*="elementor"] h1,
[class*="elementor"] h2,
[class*="elementor"] h3,
[class*="elementor"] h4,
[class*="elementor"] h5,
[class*="elementor"] h6 {
	margin: 0 0 20px;
}
[class*="elementor"] .white-headline h1,
[class*="elementor"] .white-headline h2,
[class*="elementor"] .white-headline h3,
[class*="elementor"] .white-headline h4,
[class*="elementor"] .white-headline h5,
[class*="elementor"] .white-headline h6 {
	color: white;
}
*:is(p) {
    text-wrap: pretty;
}
[class*="elementor"] p:last-of-type {
    margin: 0;
}

[class*="elementor"] [data-elementor-type="wp-page"] {
	overflow: hidden;
}
[class*="elementor"] [data-elementor-type="wp-page"] a,
[class*="elementor"] [data-elementor-type="wp-post"] a {
	text-decoration: underline;
}
[class*="elementor"] a.elementor-button {
	color: white;
	text-decoration: none;
	border: 1px solid transparent;
	background: var(--e-global-color-primary);
}
[class*="elementor"] a.elementor-button:hover {
	background: var(--e-global-color-accent);
}

[class*="elementor"] a.elementor-button.alt-1:hover,
[class*="elementor"] .alt-1 a.elementor-button:hover,
[class*="elementor"] a.elementor-button.alt-2,
[class*="elementor"] .alt-2 a.elementor-button {
	border: 1px solid white;
	background: transparent;
	color: white;
}

[class*="elementor"] a.elementor-button.alt-2:hover,
[class*="elementor"] .alt-2 a.elementor-button:hover {
	background: white;
	color: var(--e-global-color-accent);
}

[class*="elementor"] .leadin {
	text-transform: uppercase;
	font-weight: 400;
	margin: 0 0 10px;
}
[class*="elementor"] .leadin.green {
	color: var(--e-global-color-accent);
}
[class*="elementor"] .leadin.gray {
	color: #6E7F6C;
}

[class*="elementor"] .mg-top-20 {
	margin: 20px 0 0;
}

[class*="elementor"] strong {
    font-weight: 700;
}
[class*="elementor"] .scroll-margin-top {
	scroll-margin-top: 150px;
}

/***********************************************************/
/** HEADER *************************************************/
/***********************************************************/
#header-main {
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 9998;
}
#header-main.scrolled {
	position: fixed;
	background: var(--e-global-color-accent);
	box-shadow: 0 0 100px rgba(0 0 0 / 20%);
}

/***********************************************************/
/** FOOTER *************************************************/
/***********************************************************/
#footer-bottom .footer-links ul {
    list-style: none;
    display: flex;
    gap: 20px;
	padding: 0;
}
#footer-bottom .footer-links ul li {
	position: relative;
}
#footer-bottom .footer-links ul li:not(:last-child)::after {
	content: '';
	display: block;
	width: 1px;
	height: 100%;
	background: white;
	position: absolute;
	top: 0;
	right: -10px;
	bottom: 0;
	margin: auto;
}

/***********************************************************/
/** HOMEPAGE ***********************************************/
/***********************************************************/
#banner .banner-image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(5%, -50%);
}
#banner .banner-image .elementor-widget-container {
    width: 941px;
    max-width: 941px;
}
#banner .banner-image .elementor-widget-container::before {
    content: '';
    display: block;
    width: 55%;
    height: 100%;
    background: linear-gradient(90deg, var(--e-global-color-accent), transparent);
    position: absolute;
    top: 0;
    left: -1px;
}
#banner .banner-text h6 {
    font-weight: 500;
}

[class*="elementor"] .leaf-bg-v1::after,
[class*="elementor"] .leaf-bg-v2::after {
	content: '';
	display: block;
	width: 533px;
	height: 757px;
	background: url(images/leaf-bg-right.webp) no-repeat center/cover;
	position: absolute;
	top:  0;
	left: 50%;
	z-index: -1;
}
[class*="elementor"] .leaf-bg-v1.pos-right::after {
	transform: translateX(41.5%);
}
[class*="elementor"] .leaf-bg-v2::after {
	background: url(images/leaf-bg-left.webp) no-repeat center/cover;
}
[class*="elementor"] .leaf-bg-v2.pos-left::after {
    transform: translateX(-141%) translateY(-5%);
}

#introduction .how-grid {
	counter-reset: steps;
}
#introduction .how-grid .elementor-widget-image-box {
	counter-increment: steps;
}
#introduction .how-grid .elementor-widget-image-box .elementor-image-box-content::before {
    content: 'STEP ' counter(steps);
    padding: 5px 10px;
    background: #6E7F6C;
    border-radius: 5px;
    color: white;
    font-family: var(--e-global-typography-text-font-family);
    line-height: var(--e-global-typography-text-line-height);
    letter-spacing: 0.15em;
    margin: 0 0 15px;
    display: inline-block;
}

#mmc-special-box::after {
	content: '';
	display: block;
	width: 704px;
	height: 649px;
	background: url(images/mmc-big-icon-effects.webp) no-repeat center/cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-115.2%, -70%);
}
#mmc-special-box .elementor-widget-image .elementor-widget-container {
    width: 829px;
    max-width: 829px;
}

#exclusives .elementor-widget-image .elementor-widget-container {
    width: 664px;
    max-width: 664px;
}

#expect > .e-con-inner {
	position: relative;
	z-index: 1;
}
[class*="elementor"] .leaf-bg-beige::after {
	content: '';
	display: block;
	width: 540px;
	height: 727px;
	background: url(images/leaf-bg-beige.webp) no-repeat center/cover;
	position: absolute;
	top: 0;
	left: 50%;
}
[class*="elementor"] .leaf-bg-beige.pos-right::after {
	transform: translateX(45%);
}

#coach .coach-position .elementor-widget-container > * {
    font-weight: 400;
}
#coach .coach-position .elementor-widget-container h4 {
	margin-bottom: 0;
}
#coach .coach-position .elementor-widget-container h5 {
	color: rgba(255 255 255 / 45%);
	font-size: calc( var( --e-global-typography-53ad2f3-font-size ) - 2px);
}

[class*="elementor"] .more-text {
	display: none;
}
[class*="elementor"] .read-more-link {
    display: block;
    text-align: center;
	cursor: pointer;
	text-underline-offset: 3px;
}
[class*="elementor"] .read-more-link::before {
    content: '';
    display: block;
    width: 100%;
    height: 280px;
    background: linear-gradient(0deg, var(--e-global-color-primary), transparent);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
[class*="elementor"] .read-more-link span {
	position: relative;
	z-index: 1;
}
[class*="elementor"] .read-more-link.active {
	margin: 15px 0 0;
}
[class*="elementor"] .read-more-link.active::before {
	opacity: 0;
}
[class*="elementor"] .read-more-link.white::before {
    background: linear-gradient(0deg, white, transparent), linear-gradient(0deg, white, transparent);
    height: 85%;
}

#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container {
    display: flex;
    flex-direction: column;
    gap: 40px;
	position: relative;
	overflow: hidden;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container::before {
    content: '';
    display: block;
    width: 228px;
    height: 228px;
    background: url(images/single-session-bg.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(45%, -75%);
}
#membership .membership-grid .elementor-widget-text-editor.session-2 .elementor-widget-container::before {
	background: url(images/three-session-bundle-bg.svg) no-repeat center / contain;
}
#membership .membership-grid .elementor-widget-text-editor.session-3 .elementor-widget-container::before {
	width: 272px;
	height: 272px;
	background: url(images/six-session-bundle-bg.svg) no-repeat center / contain;
	transform: translate(55%, -57%);
}
#membership .membership-grid .elementor-widget-text-editor.session-4 .elementor-widget-container::before {
	background: url(images/twelve-session-bundle-bg.svg) no-repeat center / contain;
	transform: translate(55%, -60%);
    width: 220px;
    height: 257px;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container .membership-title > * {
    margin: 0;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container .membership-title h4 {
	color: #2D2D2B;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container .membership-title h5 {
	color: rgba(45 45 43 / 50%);
	font-weight: 400;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container .membership-details h5 {
	font-size: var(--e-global-typography-accent-font-size);
	color: var(--e-global-color-accent);
	margin: 0 0 15px;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container .membership-details ul {
    list-style: none;
    padding: 0;
    display: flex;
    gap: 20px;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container .membership-details ul li {
	position: relative;
}
#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container .membership-details ul li:not(:last-child)::after {
	content: '';
	display: block;
	width: 1px;
	height: 80%;
	background: var(--e-global-color-text);
	position: absolute;
	top: 0;
	right: -10px;
	bottom: 0;
	margin: auto;
}

#faqs .faq-content h6 {
	margin-bottom: 10px;
}
#faqs .faq-content h6:not(:first-child) {
	margin-top: 40px;
}

#cta-container::after {
    content: '';
    display: block;
    width: 445px;
    height: 412px;
    background: url(images/mmc-big-icon-effects.webp) no-repeat center / cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(93.5%, -100%);
    z-index: 1;
}
#cta-container .cta-image .elementor-widget-container {
	width: 913px;
	max-width: 913px;
	position: absolute;
	right: -40px;
	background: var(--e-global-color-accent);
	border-radius: 40px;
}
#cta-container .cta-image .elementor-widget-container::before {
    content: '';
    display: block;
    width: 65%;
    height: 100%;
    background: linear-gradient(90deg, var(--e-global-color-accent), transparent);
    position: absolute;
    top: 0;
    left: -1px;
    bottom: 0;
    z-index: 1;
}
#cta-container .cta-image .elementor-widget-container img {
    mix-blend-mode: luminosity;
}

[class*="elementor"] .booking-widget .elementor-widget-container {
	border-radius: 20px;
	overflow: hidden;
}

/***********************************************************/
/** RESPONSIVE *********************************************/
/***********************************************************/
@media only screen and (max-width: 1280px) {
	section.e-con > .e-con-inner {
		padding-left: 25px;
		padding-right: 25px;
	}
	#banner .banner-image {
		transform: translate(-25%, -50%);
	}
	#banner .banner-image .elementor-widget-container::before {
		width: 100%;
	}
	#expect .expect-grid .elementor-widget-icon-list ul.elementor-icon-list-items {
		flex-direction: column;
		gap: 20px;
	}
	[class*="elementor"] .leaf-bg-beige.pos-right::after {
		transform: translateX(15%);
	}
	#cta-container::after {
		width: 395px;
		height: 362px;
	}
	#mmc-special-box::after {
		width: 554px;
		height: 499px;
	}
}
@media only screen and (max-width: 1024px) {
	[class*="elementor"] .leaf-bg-beige.pos-right::after {
		transform: translateX(5%);
		width: 440px;
		height: 617px;
	}
	[class*="elementor"] .leaf-bg-v1::after, [class*="elementor"] .leaf-bg-v2::after {
		width: 433px;
		height: 627px;
	}
	[class*="elementor"] .leaf-bg-v2.pos-left::after {
		transform: translateX(-123%) translateY(-5%);
	}
	[class*="elementor"] .leaf-bg-v1.pos-right::after {
		transform: translateX(21.5%);
	}
	#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container::before {
		transform: translate(15%, -55%);
		opacity: 0.5;
	}
	#membership .membership-grid .elementor-widget-text-editor.session-3 .elementor-widget-container::before {
		width: 222px;
		height: 222px;
		transform: translate(45%, -57%);
	}
	#membership .membership-grid .elementor-widget-text-editor.session-4 .elementor-widget-container::before {
		transform: translate(35%, -50%);
		width: 190px;
		height: 227px;
	}
	#exclusives .elementor-widget-image .elementor-widget-container {
		width: 100%;
		margin: auto;
		transform: translateX(10%);
	}
	#expect .expect-grid .elementor-widget-icon-list ul.elementor-icon-list-items li span br {
		display: none;
	}
	#cta-container .cta-image .elementor-widget-container {
		width: 700px;
		max-width: 700px;
		right: -30px;
	}
	#cta-container::after {
		width: 245px;
		height: 231px;
		transform: translate(113.5%, -130%);
	}
	#footer-bottom .footer-links ul {
		flex-wrap: wrap;
		justify-content: center;
	}
}
@media only screen and (max-width: 767px) {
	#mmc-special-box::after {
		width: 454px;
		height: 399px;
		transform: translate(-76%, -100%)
	}
	#introduction .how-grid .elementor-widget-image-box .elementor-image-box-img img {
		margin: auto;
	}
	#banner .banner-image .elementor-widget-container {
		width: calc(100% + 50px);
		max-width: calc(100% + 50px);
	}
	#banner .banner-image {
		position: relative;
		top: unset;
		left: unset;
		transform: none;
	}
	#banner .banner-image .elementor-widget-container {
        width: calc(100% + 50px);
        max-width: calc(100% + 50px);
        margin-left: -25px;
    }
	#banner .banner-image .elementor-widget-container::before {
		width: calc(100% + 50px);
		height: 50%;
		background: linear-gradient(180deg, var(--e-global-color-accent), transparent);
		left: -25px;
		right: -25px;
	}
	#membership .membership-grid .elementor-widget-text-editor .elementor-widget-container::before {
		transform: translate(-5%, -53%);
		left: unset;
        right: -40px;
		opacity: 0.5;
	}
	#membership .membership-grid .elementor-widget-text-editor.session-3 .elementor-widget-container::before {
		transform: translate(25%, -51%);
	}
	#membership .membership-grid .elementor-widget-text-editor.session-4 .elementor-widget-container::before {
		transform: translate(-7%, -50%);
	}
	#cta-container .cta-image .elementor-widget-container {
		position: relative;
		right: unset;
		width: 100%;
		max-width: 100%;
		border-radius: 0 0 40px 40px;
		overflow: hidden;
	}
	#cta-container .cta-image .elementor-widget-container::before {
		content: '';
		display: block;
		width: 100%;
		height: 50%;
		background: linear-gradient(180deg, var(--e-global-color-accent), transparent), linear-gradient(180deg, var(--e-global-color-accent), transparent);
	}
	#cta-container::after {
		transform: translate(63.5%, -190%);
		top: 280px;
		left: unset;
		right: 100px;
	}
	#mmc-special-box .elementor-widget-image .elementor-widget-container {
		width: 100%;
		max-width: 100%;
		height: 400px;
		border-radius: 40px;
        overflow: hidden;
	}
	#mmc-special-box::after {
		width: 264px;
		height: 249px;
		transform: translate(-96%, -100%);
		top: 330px;
	}
	#expect .expect-grid .elementor-widget-icon-list ul.elementor-icon-list-items li .elementor-icon-list-icon {
		padding-inline-end: 0;
	}
}
