/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
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: 2.0.0
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
*/


/* @font-face {
	font-family: 'Satoshi-Variable';
	src: url( './fonts/Satoshi-Variable.woff2' ) format( 'woff2' ), url( './fonts/Satoshi-Variable.woff' ) format( 'woff' ), url( './fonts/Satoshi-Variable.ttf' ) format( 'truetype' );
	font-weight: 300 900;
	font-display: swap;
	font-style: normal;
} */
/* html,body,h1,h2,h3,h4,h5,h6,p,li,a,button,ol,ul,span,div,nav{
	font-family: 'Satoshi-Variable' !important;
} */
*:focus{ 
outline:0 !important} 

.h2, .h2 h1{
	font-size:3rem !important;
	line-height:3.2rem !important;
}

.dark-bg a:hover{
	color:#f3ede5 !important;
}
.page-id-965 header .hfe-nav-menu{
	display:none !important;
}
.minimal-menu ul.hfe-nav-menu li:first-child a{
	padding-left:0px !important;
}
.social-img a{
	position:relative;
	display:block !important;
}
.social-img a::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
	background:rgb(47 59 84 / 80%);
	border-radius:25px;
	opacity:0;
	transition:all 0.3s ease-in;
	
}
.social-icon:hover + .social-img a::after{
	opacity:1 !important;
}
.social-img:hover a::after , .social-icon:hover a::after{
	opacity:1 !important;
}
.social-icon{
	background:transparent!important;
	padding: 10px !important;
    border-radius: 20px;
	transition:all 0.3s ease-in;
}
.social-img:hover + .social-icon{
	background:#e58671!important;
	
}
.hide-desktop{
	display:none;
}
/* 404 */
.four_zero_four_bg {
    background-image: url('/wp-content/uploads/2024/03/404.gif');
	background-repeat:no-repeat;
    height: 400px;
    background-position: center top;
}
.page_404 {
    padding-top: 60px;
    padding-bottom: 60px;
    text-align: center;
}
.page_404 h1{
	font-size:6rem;
}
.page_404 h3{
	margin-top:30px;
}
.page_404 p{
	font-size:22px;
}
.page_404 .btn_404{
	    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    color: var(--e-global-color-ec0b6a5);
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-radius: 50px 50px 50px 50px;
    padding: 11px 25px 11px 25px;
	font-family: "Satoshi Variable", Sans-serif;
    font-weight: 600;
	    margin-top: 20px;
    display: inline-block;
	transition:all 0.3s ease-in;
    background-color: var(--e-global-color-secondary);
}
.page_404 .btn_404:hover{
    background-color: var(--e-global-color-e73b8ea);	
}

	
	/* 404 */
	
	
.contact-box{
	cursor:pointer;
	text-decoration:none !important;
}

.contact-form .contact-form-cf7 label {
    color: #2F3B54;
    font-size: 20px;
    font-family: var(--font-family);
    font-weight: 700;
    line-height: 24px;
    word-wrap: break-word;
    margin-bottom: 12px;
}

.contact-form-cf7 textarea {
    resize: none;
    overflow: hidden;
    width: 100%;
    height: 130px;
}

:focus {
    outline: 0;
}
.d-flex {
    display: flex !important;
}
.gap-5 {
    gap: 3rem !important;
}
.contact-form  .contact-form-cf7 input[type="text"],.contact-form .contact-form-cf7 input[type="email"],.contact-form .contact-form-cf7 input[type="url"],.contact-form .contact-form-cf7 input[type="password"], .contact-form .contact-form-cf7 input[type="search"],.contact-form .contact-form-cf7 input[type="tel"], .contact-form .contact-form-cf7 input[type="number"],.contact-form .contact-form-cf7 textarea, .contact-form .contact-form-cf7 select {
    width: 100% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    background: white !important;
    border-radius: 6px !important;
    border: 1px #2F3B54 solid !important;
	color:#2F3B54  !important;
}


.contact-form .contact-form-cf7 select option{
	color:#2F3B54  !important;
}

.faq-list-col .elementor-icon-list-items{
	column-count:2;
}
.faq-list-col .elementor-icon-list-items a{
	color:#2f3b54 !important;
}
.section-heading.contact-tag {
	background:var( --e-global-color-secondary );
}
.elementor-slideshow__title{
	display:none !important;
}
.all-albums-grid  .elementor-post__thumbnail__link img{
	transition:all 0.3s ease-in !important;
}
.all-albums-grid  .elementor-post__thumbnail__link:hover img{
	   transform: scale(1.09) translate(-46%, -46%) !important;
}
.all-albums-grid .elementor-portfolio-item__overlay {
	    opacity: 1;
    width: fit-content;
    margin: 0 auto;
    height: fit-content;
    bottom: 25px;
    top: auto;
    border-radius: 8px;
	    padding-top: 3px;
    padding-bottom: 3px;
    padding-left: 20px;
    padding-right: 20px;
}
.all-albums-grid .elementor-portfolio-item__overlay h3{
	font-size:20px !important;
}
.blog-grid  .elementor-post__thumbnail__link img{
	transition:all 0.3s ease-in !important;
}
.blog-grid  .elementor-post__thumbnail__link:hover img{
	      transform: scale(1.09) translate(-46%, -46%) !important;
}
.blog-grid .elementor-post__text{
	display:flex !important; 
	position:relative;
	
}
.blog-grid .elementor-post__text .elementor-post__meta-data{
	order:1;
	display:flex;
	position:relative;
}
.blog-grid .elementor-post__text .elementor-post__meta-data::before
{
	content: "Written by ";
    position: relative;
    margin-right: 5px;
    color: #4E6381;
    font-size: 16px;
}
.blog-grid  .elementor-post__text::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	background:url('images/diag-arrow.svg');
	background-repeat:no-repeat;
	background-position:top right;
	background-size:contain;
	width: 15px;
    height: 15px;
}
.blog-grid .elementor-post__text .elementor-post__title{
	order:2;
	display:flex;
}

.blog-grid .elementor-post__text .elementor-post__excerpt{
	order:3;
	display:flex;
}
/*  */
a .elementor-post-info__item--type-author{
	color:#e58671 !important;
	font-weight:600;
}
.single-post.single h3,.single-post.single h2{
	font-size:30px;
	font-weight:500 !important;
}
.single-post.single h4{
	font-size:26px;
	font-weight:400 !important;
}
/*  */
.hfe-submenu-icon-arrow .hfe-nav-menu .parent-has-child .sub-arrow i:before{
	content:"\f078" !important;
}
.sub-menu{
	padding-top:10px !important;
	padding-bottom:10px !important;
}
.story::before {
    content: "";
    position: absolute;
    left: 50.5%;
    top: 0;
    width: 1px;
    border: 1px black dotted;
}

p.chapter {
    margin-bottom: 0;
}
.faq-acc .elementor-accordion-icon{
	font-size:25px;
}
body.elementor-editor-wp-page .process-description.hidden{
	display:block !important;
}
.process-description.hidden{
	display:none;
}

.h1-inner h1 {
	font-size:3rem !important;
}
.social-box{
	position:relative;
	overflow:hidden;
}
.social-box:before{
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: rgba(47, 59, 84, 0.9);
	opacity:0;
	z-index:1;
   transition:all 0.3s ease-in;
	border-radius:15px;
}
.social-box:hover:before{
	opacity:1;
	
}
.social-box:hover .view-social{
	opacity:1;
	visibility:visible;
}
.view-social{
	opacity:0;
	visibility:hidden;
	transition:all 0.3s ease-in;
	z-index:2;
}

.view-social .elementor-button-icon{
	font-size:25px;
}
.view-social .elementor-button-text{
	line-height:25px;
}
.wpcf7-form input[type="text"],.wpcf7-form input[type="email"]{
	color: #222222;
    background-color: #f7f8f9;
    border-color: #f0f0f0;
	border-radius: 50px !important;
    border-width: 1px;
    padding-top: 0.875rem !important;
    padding-bottom: 0.875rem !important;
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
}
.wpcf7-form input[type="text"]:focus,.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="text"]:focus-visible,.wpcf7-form input[type="email"]:focus-visible
{
	border-color:#b2b2be;
	outline:0 !important;
}

.wpcf7-form-control.wpcf7-submit:focus,.wpcf7-form-control.wpcf7-submit:active{
	outline:0 !important;
}
.wpcf7-form-control.wpcf7-submit
{
	    border-radius: 50px 50px 50px 50px;
    padding: 10px 25px 10px 25px !important;
	font-weight:600 !important;
	    background-color: var(--e-global-color-secondary);
    border-style: solid;
    border-width: 1px 1px 1px 1px;
	color:#fff !important;
    border-color: var(--e-global-color-secondary) !important;

}
.wpcf7-form-control.wpcf7-submit:hover{
	    background-color: var(--e-global-color-e73b8ea);
    border-color: var(--e-global-color-e73b8ea);
	

}
.hfe-site-logo-img{
    height: 80px;
    padding-top: 10px;
    padding-bottom: 10px;	
}
.mid-text, .mid-text p{
	    font-size: 1.25rem !important;
    line-height: 1.75rem !important;
}

.section-heading{
	    padding-left: 21.41px !important;
    padding-right: 21.41px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    border-radius: 25.95px;
    width: max-content;
	    font-weight: 700 !important;
	font-size:17px;
	text-transform: capitalize;
	background: var( --e-global-color-a4af290 );
}
.section-heading.dark{
	background:var( --e-global-color-primary );
	
}

.custom-accord .elementor-accordion-item{
    overflow: hidden;
    margin-bottom: 25px;
}
.custom-accord .elementor-tab-title{
	border-radius: 40px;
	    z-index: 2;
    position: relative;
}
.custom-accord .elementor-tab-title .elementor-accordion-icon{
	font-size: 17px !important;
    line-height: 35px !important;
    background: #C9C4B7;
    text-align: center !important;
    vertical-align: middle;
    width: 31px !important;
    height: 31px !important;
    border-radius: 50px !important;
    margin-right: 18px !important;
	transition:all 0.3s ease-in;
}
.custom-accord .elementor-tab-title.elementor-active .elementor-accordion-icon{
	 background: #e58671;
}

.custom-accord  .elementor-accordion-item .elementor-tab-content{
	    transform: translateY(-25px);
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;

}

.custom-acc-images .acc-img {
    opacity: 0;
    transition: opacity 0.5s linear; /* Transition effect */
    display: none; /* Ensure element does not take up space when not active */
}

.custom-acc-images .acc-img.active {
     opacity: 1;
    display: block; /* Show element */
}
.resource-bullet{
	cursor:pointer;
	position:relative;
}

.resource-bullet:hover h4 a{
	font-weight:600 !important;
}
.resource-bullet::after{
	content:"\2192";
	position:absolute;
	top: 4px;
    right: 13px;
	font-size:28px;
	color:#8DC1E9;
	font-weight:600;
	opacity:0;
	transition:all 0.3s ease;
}
.resource-bullet:hover::after{
	opacity:1;
}
.custom-testimonial .elementor-testimonial .elementor-testimonial__image img{
    width: 100% !important;
    height: 210px !important; 	
}
.custom-testimonial .elementor-testimonial .elementor-testimonial__content .elementor-testimonial__text {
	border-left:5px solid rgba(0,0,0,.05) !important;
	padding-left:20px;
}
.custom-testimonial .elementor-main-swiper {
    width: 100% !important;
}

.elementor-element.custom-testimonial .swiper .elementor-swiper-button{

	top: auto;
    transform: translateY(100%);
    bottom: -35px;
	    width: 50px;
    height: 50px;
    background: var(--e-global-color-secondary);
    border-radius: 50%;
    text-align: center;
    line-height: 56px;
	display:inline-block;
}
.elementor-element.social-swiper  .elementor-swiper-button{
	top: auto;
    transform: translateY(100%);
    bottom: -35px;
	    width: 50px;
    height: 50px;
    background: var(--e-global-color-secondary);
    border-radius: 50%;
    text-align: center;
    line-height: 35px;
	display:inline-block;
}

.elementor-element.custom-testimonial .swiper .elementor-swiper-button-next,
.elementor-element.social-swiper .elementor-swiper-button-next{
	right: auto;
    left: 80px;
}
.custom-testimonial.elementor-widget-testimonial-carousel .swiper-slide {
    padding: 0;
    padding-right: 30px !important;
}
.social-img{
	
}

.checklist-form label {
    font-weight: 700;
    margin-bottom: 10px;
}

.checklist-form input[type="text"], .checklist-form input[type="email"] {
    border: 1px solid #2F3B54 !important;
    border-radius: 9px !important;
    margin-top: 12px;
}

.checklist-form .wpcf7-submit{
	margin-top:10px !important;
}

.wpcf7-spinner:not(:first-of-type) { display: none !important; visibility: hidden !important; }

.checklist-form .wpcf7-not-valid-tip
{
	    position: absolute;
    top: 4px;
    right: 0;
}

.gform_required_legend{
	display:none !important;
}

.gfield_label{
	 color: #2F3B54;
    font-size: 20px !important;
    font-family: var(--font-family);
    font-weight: 700;
    line-height: 24px;
    word-wrap: break-word;
    margin-bottom: 12px;
}

.gform-field-label{
	 color: #2F3B54;
    font-size: 16px !important;
}

.ginput_container input[type="text"], .ginput_container input[type="email"], .ginput_container input[type="url"], .ginput_container input[type="password"], .ginput_container input[type="search"], .ginput_container input[type="tel"], .ginput_container input[type="number"], .ginput_container textarea, .ginput_container select {
    width: 100% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    background: white !important;
    border-radius: 6px !important;
    border: 1px #2F3B54 solid !important;
    color: #2F3B54 !important;
	height:55px !important;
	font-size:16px !important;
	box-shadow:none !important;
}
.ginput_container select
{
	line-height:23px !important;
}
.ginput_container ::placeholder{
	color:#7f7f7f !important;
}
.ginput_container select option{
	color:#2F3B54  !important;
}


.ginput_container  input[type="text"]:focus,.ginput_container  input[type="email"]:focus,
.ginput_container input[type="text"]:focus-visible,.ginput_container  input[type="email"]:focus-visible
{
	border-color:#b2b2be;
	outline:0 !important;
}

.gform-footer .gform_button:focus, .gform-footer .gform_button:active{
	outline:0 !important;
}


.gform-footer .gform_button
{
 	    border-radius:50px !important;
    padding: 10px 25px 10px 25px !important;
	font-weight:600 !important;
	    background-color: var(--e-global-color-secondary) !important;
    border-style: solid !important;
    border-width: 1px 1px 1px 1px !important;
	color:#fff !important;
    border-color: var(--e-global-color-secondary) !important;
	font-size:18px !important;
	line-height:24px !important;

}
.gform-footer .gform_button:hover{
	    background-color: var(--e-global-color-e73b8ea) !important;
    border-color: var(--e-global-color-e73b8ea) !important;
	

}

.checklist-form .gform_confirmation_wrapper{
	 font-size: 18px;
    background: #cfddf2;
    border-radius: 8px;
    padding: 10px;
    font-weight: 500;
}

.gform_confirmation_message .confirmation-message {
    font-size: 18px;
    background: #cfddf2;
    border-radius: 8px;
    padding: 10px;
    font-weight: 500;
	margin-top:25px;
}

.gform_validation_errors, .gfield_description.instruction
{
	display:none !important
}

.newsletter-form .ginput_container input[type="email"]{
	    color: #222222;
    background-color: #f7f8f9 !important;
    border-color: #f0f0f0 !important;
    border-radius: 50px !important;
    border-width: 1px;
    padding-top: 0.875rem !important;
    padding-bottom: 0.875rem !important;
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
}

.checklist-form .gform_fields{
	row-gap:18px !important;
}

@media screen and (max-width: 991px) {
	
	.custom-accord .elementor-tab-title .elementor-accordion-icon{
		    margin-top: -5px;
	}
	
}
@media screen and (max-width: 767px) {
	.h2, .h2 h1{
	font-size:2.2rem !important;
	line-height:2.6rem !important;
}

	.story::before{
		content:none !important;
	}
	.trusted-logos .elementor-widget:nth-child(4)
	{
		    width: 130% !important;
   		 max-width: 130% !important;
	}
	.trusted-logos .elementor-widget:nth-child(5)
	{
		width: 150% !important;
		max-width: 150% !important;
		margin-left: 50% !important;
	}
	
	.minimal-menu ul{
		flex-direction:column;
		margin-bottom:20px;
	}
	.minimal-menu ul li:first-child a{
		padding-left:20px !important;
	}
	.minimal-menu ul li a{
		padding-left:20px !important;
	}
}


@media screen and (max-width: 460px) {
	.custom-accord .elementor-tab-title .elementor-accordion-icon{
		margin-right:10px !important;
	}
	.acc-img.active{
		display:none !important;
	}
	.hide-desktop{
		display:block !important;
	}
	.mob-half {
		width: 47%;
	}
	.contact-form .contact-form-cf7 label{
		    font-size: 17px;
		    margin-top: 15px
	}
	#in-person-service-form-cf7 .d-flex{
		flex-direction:column;
	}
	
	.gap-5 {
		gap: 0rem !important;
	}
	
	.single-post.single h3, .single-post.single h2 {
		font-size: 25px;
		font-weight: 500 !important;
	}
	
	.h1-inner h1 {
		font-size: 2.3rem !important;
	}
	.resource-bullet .elementor-icon{
		margin-top: 6px;
	}
}