/* 
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
Developer: https://www.upwork.com/freelancers/~010872383c2265d9ae
*/

/*
====
Misc
====
*/

body {
	position: relative;
}

a.elementor-button {
	/*min-width: 200px;*/
	min-width: 150px;
	min-height: 60px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

p:last-child {
	margin-bottom: 0;
}

h3 {
	margin: 0;
}

.h3.elementor-widget-icon-box svg,
.h3.elementor-widget-icon-box .elementor-icon-box-icon {
	height: 13px;
	line-height: 13px;
}

.h3 .elementor-icon-box-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	    -ms-flex-flow: column-reverse nowrap;
	        flex-flow: column-reverse nowrap;
}

img {
	-o-object-fit: cover;
	   object-fit: cover;
}

/*
======
Header
======
*/
body.home div.ekit-template-content-header {
	position: absolute;
	width: 100%;
	top: 0;
	z-index: 10;
}

/*
====
Hero
====
*/
.hero_slider figure {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row nowrap;
	        flex-flow: row nowrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.hero_slider figure .swiper-slide-image {
	max-width: 700px;
	max-height: 365px;
}

.hero_slider .elementor-image-carousel-caption {
	margin: -30px 0px 0px -53px;
	text-align: left !important;
}

.hero_slider .elementor-image-carousel-caption > span,
.elementor-heading-title > span {
	color: var( --e-global-color-secondary );
}

/*
========
Benefits
========
*/
.benefits_custom_box svg {
	margin: 0 -1px -3px -2px;
}

/*
============
Testimonials
============
*/
div.elementor-widget.elementor-widget-elementskit-testimonial {
	width: calc(100% + 30px);
	margin-left: -15px;
}

div.elementskit-single-testimonial-slider {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-flow: column nowrap;
	        flex-flow: column nowrap;
}

div.elementor-widget.elementor-widget-elementskit-testimonial .slick-dotted.slick-slider {
	margin-bottom: 0px;
}

div.elementskit-single-testimonial-slider .elementskit-commentor-content {
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
}

div.elementskit-single-testimonial-slider .elementskit-commentor-bio {
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
}

div.elementskit-single-testimonial-slider .elementskit-commentor-bio .elementskit-watermark-icon {
	position: absolute;
	top: 52px;
	left: 68px;
}

div.elementskit-single-testimonial-slider .elementkit-commentor-details,
div.elementskit-single-testimonial-slider .elementkit-commentor-details .elementskit-profile-info,
div.elementskit-single-testimonial-slider .elementkit-commentor-details .elementskit-profile-info .elementskit-author-des {
	width: 100%;
	display: block;
	position: relative;
}

div.elementskit-single-testimonial-slider .elementkit-commentor-details .elementskit-profile-info .elementskit-author-des {
	margin-top: -2px;
}

div.elementskit-single-testimonial-slider .elementkit-commentor-details .elementskit-profile-info .elementskit-author-des > span {
	display: none;

}

.ekit-wid-con .slick-dots {
	display: none;
}

/*
======
Footer
======
*/
footer .ekit-wid-con li:not(:last-child) {
	margin-right: 20px !important;
}
/*
======
Tablet
======
*/
@media screen and (max-width: 1279px) {
	.hero_slider figure .swiper-slide-image {
		max-width: 560px;
		max-height: 292px;
	}
	
	.benefits_one br {
		display: none;
	}
	
	div.elementor-widget.elementor-widget-elementskit-testimonial .elementskit-testimonial-slider .swiper-slide .slick-slide {
		margin-right: 0px;
		margin-left: 0px;
	}
	
	div.elementskit-single-testimonial-slider .elementskit-commentor-bio .elementskit-watermark-icon {
		left: 30px;
	}
}

/*
======
Mobile
======
*/
@media screen and (max-width: 1023px) {
	.elementor-section.elementor-section-boxed:not(.elementor-inner-section) > .elementor-container {
		max-width: 100% !important;
	}
	
	section.elementor-section.elementor-element.elementor-section-boxed:not(.elementor-inner-section),
	header.elementor-section.elementor-element.elementor-section-boxed,
	footer.elementor-section.elementor-element.elementor-section-boxed {
		padding-left: 30px;
		padding-right: 30px;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container {
		max-width: 100% !important;
		padding: 0px !important;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile button.elementskit-menu-hamburger {
		padding: 0;
		width: auto;
		border-radius: 0;
		background-color: transparent;
		border: none;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile button.elementskit-menu-close {
		display: none;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container {
		max-width: 80%;
		padding: 38px 40px;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container .elementskit-nav-identity-panel {
		padding: 0px;
		margin-bottom: 30px;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container .elementskit-navbar-nav > li > a {
		padding: 0px;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container .elementskit-navbar-nav > li {
		margin-bottom: 0;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container .elementskit-navbar-nav > li:not(:last-child) {
		margin-right: 15px;
	}
	
	.hero_slider figure .swiper-slide-image {
		display: none;
	}
	
	.hero_slider .elementor-image-carousel-caption {
		margin: 0px;
	}
	
	.benefits_one .elementor-icon-box-wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	
	.benefits_one .elementor-widget-container div.elementor-icon-box-wrapper div.elementor-icon-box-icon {
		margin-right: 28px !important;
		line-height: 1;
	}
	
	.benefits_one .elementor-icon-box-wrapper div.elementor-icon-box-icon span.elementor-icon {
		padding: 11.5px;
	}
	
	.benefits_custom_box .elementor-icon-box-icon {
		display: none !important;
	}
	
	.benefits_two br {
		display: none;
	}
	
	.h3.elementor-widget-icon-box .elementor-icon-box-icon {
		margin-left: 0 !important;
	}
	
	.switch .elementor-widget-heading {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
	
	.switch .elementor-widget-elementskit-testimonial {
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
	}
	
	.switch .elementor-widget-button {
		-webkit-box-ordinal-group: 4;
		    -ms-flex-order: 3;
		        order: 3;
	}
	
	ul.slick-dots {
		position: unset;
		text-align: left;
		margin-top: 43px !important;
		margin-left: 15px;
		margin-right: 15px;
	}
	
	div.elementor-widget.elementor-widget-elementskit-testimonial {
		width: calc(100% + 30px);
	}
	
	div.elementskit-single-testimonial-slider .elementskit-commentor-bio .elementskit-watermark-icon {
		top: 31px;
		left: 33px;
	}
	
	.ekit-wid-con .elementskit-commentor-content {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 767px) {
	.elementor-section.elementor-section-boxed:not(.elementor-inner-section) > .elementor-container {
		max-width: 100% !important;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container {
		max-width: 70% !important;
		padding: 38px 40px !important;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container .elementskit-navbar-nav > li:not(:last-child) {
		margin-right: 0;
	}
	
	header div.elementor-widget.elementor-widget-ekit-nav-menu div.ekit_menu_responsive_mobile .elementskit-menu-container .elementskit-navbar-nav > li {
		margin-bottom: 15px;
	}
	
	.ekit-wid-con .slick-dots {
		display: block;
		margin-left: 15px;
		margin-right: 15px;
	}
}

.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure img{
	margin-right: 77px;
}


.post .wp-post-image{
  object-fit: contain;
}

body.wp-singular.post-template-default.single.single-post header.page-header {
  padding-bottom: 0;
}

@media (max-width: 1024px) {
	body.wp-singular button.elementskit-menu-close, button.elementskit-menu-hamburger {
		background-color: transparent !important;
		position: relative;
		z-index: 10;
		border: 1px solid rgba(0, 0, 0, .2) !important;
	}
}


/* SafePoint fix 2026-09-23 (Dmitry + Claude): the Elementor 4.3.0 auto-update left the
   ElementsKit absolute header overlapping page content site-wide (header sat on top of the
   hero). Making the header wrapper sticky keeps it stuck to the top on scroll AND makes it
   reserve its own height in normal flow, so content sits below it at every screen width.
   Remove this block (or restore style.css.bak-20260923) to revert. */
.ekit-template-content-header { position: sticky !important; top: 0; }

/* SafePoint fix 2026-09-23 (Dmitry + Claude): Elementor 4.3.x renders the ElementsKit team
   widget with the image grid-row stretched, distorting/oversizing the headshots (about-us).
   Force the team images back to their natural aspect so they render uniformly. Remove this
   block (or restore a style.css.bak-*) to revert. */
.profile-card{grid-template-rows:auto !important;}
.profile-card .ekit-team-img{height:auto !important;}
.profile-card .ekit-team-img img{height:auto !important;aspect-ratio:auto !important;}
