/**
* Theme Name: Helo Child
* Description: This is a child theme of Helo
* Author: <a href="http://themeforest.net/user/crowdytheme">CrowdyTheme</a>
* Template: helo
* Version: 1.1.6.1
/* ul, li { margin-left: 20px; } */

body.admin-bar #main-navigation { top: 50px; }

body.admin-bar #navigation.aae-pro-sticky-active { top: 31px !important; }
body.admin-bar #navigation:not(.aae-pro-sticky-active) { top: 31px !important; }
body.admin-bar .pin-spacer:has(> #navigation.aae-is-translating) { top:0px !important; }

body.elementor-page-3888:not(.elementor-motion-effects-element-type-background) { background-image: none !important; }

.helo--btn:hover,
.helo--btn:hover > span,
.helo--btn:hover > span::before,
.helo--btn:hover > i,
.helo--btn:hover > i::before { 
	text-decoration: none !important;
    text-align:left !important;
    border:none !important;
    font-size: var( --e-global-typography-text-font-size ) !important;
    left:2px;
    outline:0 !important;
    box-shadow: none !important;
    border-bottom: none !important;
    font-weight:500 !important;
}
@media screen and (max-width: 1024px) {
  .center-btn .helo--btn.btn-text-flip {
    margin:0 auto;
    transform:translateX(-50%);
    left:50%;
    position:relative;
  }
}

h3.wcf--title.has-link a {
    color: rgb(255, 255, 255);
    display: block;
    font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    text-transform: var(--e-global-typography-secondary-text-transform);
    height: auto !important;
    line-height: 1.2em !important;
    width: auto !important;
}

.floating-element-rounded-edge-1 .wcf--floating-elements .floating-element img { border-radius: 20px !important; }

.floating-element-shadow-1 .wcf--floating-elements .floating-element img { box-shadow: 3px 3px 15px 0px rgba(0, 0, 0, 0.26); }
.floating-element-shadow-2 .wcf--floating-elements .floating-element img { box-shadow: 5px 5px 25px 0px rgba(0, 0, 0, 0.26); }
.floating-element-shadow-3 .wcf--floating-elements .floating-element img { box-shadow: 10px 10px 35px 0px rgba(0, 0, 0, 0.26); }

.testimonial-hide-image .image { display: none; }

.wcf__testimonial.style-9 .wcf__slider { margin: 15px 0; }

.btn-no-icon .wc-btn-primary:hover strong::after { display: none; }

.style-5 .wc-btn-group { gap: 20px !important; }
.style-5 .wc-btn-group > *:nth-child(2) { width:92.3% !important; }
.style-5 .wc-btn-group > *:nth-child(3) {width: 7.7% !important; }
.style-5 .wc-btn-group:not(:hover) > *:first-child { margin:-40px !important; }

#main-navigation { transition: margin-top 0.4s ease-in-out !important; }
#main-navigation:not(.aae-pro-sticky-active) { margin-top: 0px !important; }
#main-navigation.aae-pro-sticky-active { margin-top: 80px !important; }

.content.elementor-widget-wcf--text .wcf--text > *,
.elementor-widget-text-editor .elementor-widget-container > *  { margin-bottom: 30px; }

.aae-gsap-popup-builder .popup-content > .elementor > .elementor-element > .e-con-inner { z-index: -1 !important;background:transparent !important; }
.aae-gsap-popup-builder .close-button { z-index: 101 !important;background: #212d57 !important;font-size:24px !important;padding:2px 0 0 0 !important;}
.aae-gsap-popup-builder .close-button:hover { background-color: #2da7dc !important; }
.aae-gsap-popup-builder .popup-content {
    position: relative !important;
    width: 100vw !important;
    max-width: 900px !important;
    min-width: 380px !important;
    height: 90vh !important;
    background: transparent !important;
    border-radius: 25px !important;
    overflow: hidden !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, .3) !important;
}
div#calendly-integration .calendly-inline-widget {
    height: 90vh !important;
    max-width: 1100px;
    margin: 0 !important;
    padding: 0 !important;
    transform: scale(1);
    transform-origin: top center;
    overflow-y: scroll !important;
    transform-origin: top center;
    width: calc(100% + 200px) !important;
    margin-top:-60px !important;
    margin-left: -115px !important;
    margin-right: -115px !important;
    clip-path: inset(60px 115px 0px 115px) !important; 
    overflow: hidden !important;
}
div#calendly-integration .calendly-inline-widget iframe { max-height:700px !important;min-height:600px; }
div#calendly-integration .calendly-inline-widget {
  
  --clip-left-right: 0px;
  --add-spacing-right: 85px;
  
  max-height: 600px !important;
  max-width: 570px !important;
  width: calc(100% + 200px) !important;
  margin-top: 0px !important;
  margin-left: calc(calc( var(--add-spacing-right) + -55px ) * -1) !important; 
  margin-right: calc( calc( var(--clip-left-right) * -1 ) + var(--add-spacing-right) ) !important;
  clip-path: inset( 0px calc( var(--clip-left-right) - var(--add-spacing-right) ) 0px var(--clip-left-right) ) !important;
  overflow: hidden !important;
}
.aae-gsap-popup-builder .popup-content { max-width:1100px !important;}
@media screen and (max-width: 1024px) {
    .aae-gsap-popup-builder .popup-content {
        min-width: unset !important;
        max-width: 100vw !important;
    }
    .elementor-element.elementor-element-0c5dbe5.e-con-full.e-flex.wcf-starter-animations-none.e-con.e-child.wcf-animate.wcf-played {
        flex-direction: row !important;
    }
    div#calendly-integration .calendly-inline-widget { scale:0.9;max-width: 93vw !important; }
    div#calendly-integration .calendly-inline-widget iframe { height: 100%; max-height:440px !important; }
    .aae-gsap-popup-builder .close-button { top: 20px; right: 40px}
    .elementor-element.elementor-element-0c5dbe5 { max-height:440px !important; }
    
    div#calendly-integration { margin-bottom:auto !important;max-height:440px !important;overflow:hidden;width:100%; }
    
    .elementor-element.elementor-element-b41317d.elementor-widget-wcf--title {
        margin-top:auto !important;
        opacity: 1 !important;
        transform: none !important;
    }
}
@media screen and (max-width: 1024px) {     
    div#calendly-integration,
    div#calendly-integration .calendly-inline-widget, 
    div#calendly-integration .calendly-inline-widget iframe {
        min-height: 680px !important;
        max-height: 680px !important;
    }
    div#calendly-integration {
      overflow-y:scroll !important;
    }
}
@media screen and (max-width: 1690px) { div#calendly-integration .calendly-inline-widget { width: calc(100% + 60px) !important; } }
@media screen and (max-width: 1024px) {
	div#calendly-integration .calendly-inline-widget { max-width: unset !important;width: calc(100% + 120px) !important; } 
	.elementor-element.elementor-element-0c5dbe5 { overflow-y: scroll !important;height:900px !important; }
}
@media screen and (max-height: 1000px) {
	div#calendly-integration .calendly-inline-widget { max-width: unset !important;width: calc(100% + 35px) !important;padding-bottom:60px;overflow-x: visible !important; } 
	.elementor-5333 .elementor-element.elementor-element-0c5dbe5 /* column right content container */ { overflow-y: scroll !important;height:100% !important; }
	.elementor-5333 .elementor-element.elementor-element-dde61a5 /* parent container */ { overflow-y: scroll !important; }
	.elementor-5333 .elementor-element.elementor-element-b41317d /* Question? Heading */ { padding-top:30px;position:sticky !important;bottom:00px;display:flex !important; flex-direction: row !important;width:100% !important;max-width: calc(100% - 40px) !important; margin-right:60 !important;background:linear-gradient(#fff0, white); }
	.elementor-5333 .elementor-element.elementor-element-5fe6f4a /* phone */ { position:sticky !important;bottom:0px;display:flex !important; flex-direction: row !important;width:100% !important;max-width: calc(100% - 40px) !important;margin-top:20px !important;margin-right:60 !important; }
	.elementor-5333 .elementor-element.elementor-element-0c5dbe5 { max-height: 95% !important;overflow:hidden !important; /*! flex: 1; */}
	#calendly-integration {
        max-height: 50vh !important;
        overflow-y: scroll !important;
        overflow-x: visible !important;
    }
    #calendly-integration .calendly-inline-widget:before { background: linear-gradient(#f6f6f603,#6060600a);position: absolute;width: 100%;height: 100%;content: ' ';z-index: 100;pointer-events: none;border-radius: 25px;}
	.elementor-5333 .elementor-element.elementor-element-b41317d /* Question? Heading */ { padding-top:30px;position:absolute !important;bottom:40px !important;display:flex !important; flex-direction: row !important;width:100% !important;max-width: calc(100% - 40px) !important; margin-right:60 !important;background:linear-gradient(#ffffffc9, white); z-index: 200000;}
	.elementor-5333 .elementor-element.elementor-element-5fe6f4a /* phone */ { position:absolute !important;bottom:0px;display:flex !important; flex-direction: row !important;width:100% !important;max-width: unset !important; margin-top:20px !important;margin-right:60px !important; width: max-content !important;}
	.elementor-5333 .elementor-element.elementor-element-0c5dbe5 {  position: relative !important;overflow-y: scroll !important;padding-bottom: 150px;flex-grow: 1;padding-bottom: 0;}
}
	
.wcf-scroll-to-top.scroll-to-circle { bottom: 80px;right: 30px; }

.wpcf7-form { font-family: inherit; }
.wpcf7-form p { margin-bottom: 20px; }
.wpcf7-form label { display: block;font-size: 15px;font-weight: 600;color: #2c3e50; /* Matches deep theme slate navy */margin-bottom: 6px; }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea { width: 100%;margin-bottom: 15px;padding: 12px 16px;border: 1px solid #dcdde1;border-radius: 4px;background-color: #fafbfc;font-size: 15px;color: #2c3e50;font-family: inherit;box-sizing: border-box;transition: all 0.25s ease-in-out; }
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form textarea:focus { background-color: #ffffff;border-color: #0b2240; /* Site's deep corporate blue */outline: none;box-shadow: 0 0 0 3px rgba(11, 34, 64, 0.1); }
.wpcf7-form .wpcf7-drag-n-drop-file,
.wpcf7-form .codedropz-upload-handler { border: 2px dashed #b2bec3 !important;background-color: #f8f9fa !important;border-radius: 6px !important;padding: 30px 20px !important;text-align: center !important;transition: all 0.2s ease-in-out !important; }
.wpcf7-form .codedropz-upload-handler .codedropz-label { font-size: 15px !important;font-weight: 500 !important;color: #57606f !important;line-height: 1.5 !important; }
.wpcf7-form .codedropz-upload-handler .codedropz-btn,
.wpcf7-form .wpcf7-drag-n-drop-file-inner span { font-size: 14px !important;font-weight: 600 !important;color: #0b2240 !important; }
.wpcf7-form .codedropz-upload-handler:hover {border-color: #0b2240 !important;background-color: #f1f5f9 !important; }
.wpcf7-form input[type="submit"] { background-color: #0b2240;color: #ffffff;border: none;padding: 14px 35px;font-size: 15px;font-weight: 600;text-transform: uppercase;letter-spacing: 0.5px;border-radius: 4px;cursor: pointer;transition: all 0.25s ease;display: inline-block;box-shadow: 0 4px 6px rgba(11, 34, 64, 0.15); }
.wpcf7-form input[type="submit"]:hover { background-color: #1e3c72;box-shadow: 0 6px 12px rgba(11, 34, 64, 0.25);transform: translateY(-1px); }
.wpcf7-form input[type="submit"]:active { transform: translateY(1px); }
.codedropz-upload-inner h3 { font-size: 21px !important; }
.wpcf7-form label { font-weight: 900 !important; }
.form-row { display: flex;flex-direction: row;width: 100%;gap: 20px; }
.form-row > p { width: 100%; }
.dark-bg .wpcf7-form .codedropz-upload-handler { padding: 20px 10px !important;background-color: #283047 !important; }
.dark-bg .codedropz-upload-container { padding:0 }

.ngg-galleryoverview.default-view { display: flex !important;flex-direction: row;flex-wrap: wrap;justify-content: center;gap: 35px 30px; }
.ngg-galleryoverview.default-view .ngg-gallery-thumbnail-box.ngg-3-columns { width: calc(33.33% - 20px); }
.ngg-galleryoverview.default-view .ngg-gallery-thumbnail a { margin: 0 !important; }
.ngg-galleryoverview.default-view .ngg-gallery-thumbnail img { border-radius:10px;margin: 0 !important;width: 100%;object-fit: cover; }

.reviews-placeholder-shortcode-wrapper .review-5609 { background-color: #fff;padding: 20px !important;border-radius: 15px;}
.reviews-placeholder-shortcode-wrapper .review-5610 { background-color: #fff;padding: 20px !important;border-radius: 15px; }
.elementor-element-7587176 { width: 100%; }
.reviews-placeholder-shortcode-wrapper.google-yelp-review-placeholder > .elementor-element { flex-direction: row;padding:0}
.reviews-placeholder-shortcode-wrapper .trustreviews .trustreviews-powered { font-size:14px;padding:5px 0}
.reviews-placeholder-shortcode-wrapper .trustreviews { padding:0 !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5609 { background: linear-gradient(145deg, #f9f9f9, transparent);box-shadow: 4px 1px 6px 6px #0000000a; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5610 { background: linear-gradient(145deg, #ce2525, #921717);box-shadow: 4px 1px 6px 6px #0000000a;color:#fff !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5609 .trustreviews { padding-bottom: 0px !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5609 .rpi-stars::before { border:none !important;}
.alt-style .reviews-placeholder-shortcode-wrapper .review-5609 .rpi-stars::after { border:none !important;outline:none !important;clip-path: inset(0 calc(100% - clamp(0%, (var(--rating) - 4) * 100%, 100%)) 0 0) !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5610, .alt-style .reviews-placeholder-shortcode-wrapper .review-5610 * { color: #fff !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5610 .trustreviews { padding-bottom: 0px !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5610 .rpi-stars-yelp { --star-color: #ff8383!important;--empty-color: #f81b1b !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5610 .rpi-stars-yelp[data-rating]::before { color: #fff !important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5610 .rpi-stars-yelp i { background-image: linear-gradient(159deg, #ff5656, #c23737) !important;background-image: linear-gradient(90deg,var(--star-color) 0 calc(var(--fill,0) * 1%),transparent calc(var(--fill,0) * 1%))!important; }
.alt-style .reviews-placeholder-shortcode-wrapper .review-5610 .rpi-stars-yelp i:nth-child(5) { clip-path: inset(0 calc(100% - clamp(0%, (var(--rating) - 4) * 100%, 100%)) 0 0); }

.full-width .style-4 .wc-btn-primary, .full-width .style-4 .wc-btn-primary span {
    width: 100%;
    text-align: center !important;
    display: flex;
    flex-direction: row;
    justify-content: center;
}
.full-width .style-4 .wc-btn-primary strong {
    width: 0px !important;
}

.wcf--social-icons ul li { margin-left: 0; }

.bg-focus-hover-style,
.bg-focus-hover-style:hover p { color:#54595F;transition: all 0.5s ease 0s; }

.service-tile-comparison-handle .wcf--image-compare-handle:after { top: 30% !important; }

#make-list .elementor-tab-content { width:100% !important;padding:0 !important; }
#make-list .elementor-tab-content .wcf--content { width: 100%; }
#make-list .elementor-tab-content .wcf--content ul li { margin-left:30px }

/* Text Marquee widget styles */
.dpc-marquee-wrapper {
	
	/* Fallback values in case a property isn't set by Elementor yet */
	--dpc-duration: 20s;
	--dpc-gap: 60px;
	--dpc-fade-width: 80px;
 
	position: relative;
	overflow: hidden;
	width: 100%;
	box-sizing: border-box;
}
.dpc-marquee-track { display: flex;width: max-content;will-change: transform;animation: dpc-marquee-scroll var(--dpc-duration) linear infinite; }
.dpc-marquee-group { display: flex;align-items: center;flex-shrink: 0;gap: var(--dpc-gap);padding-right: var(--dpc-gap); }
.dpc-marquee-item { display: inline-flex;align-items: center;white-space: nowrap; }
.dpc-marquee-separator { display: inline-flex;align-items: center;white-space: nowrap; }
@keyframes dpc-marquee-scroll {
	from 	{ transform: translateX(0); 	}
	to 		{ transform: translateX(-50%); 	}
}
/* Pause on hover — toggled by the "Pause on Hover" switch in the widget's Style tab */
.dpc-marquee-pause-hover:hover .dpc-marquee-track { animation-play-state: paused; }
/* Reverse direction — toggled by the "Direction" dropdown in the widget's Style tab */
.dpc-marquee-reverse .dpc-marquee-track { animation-direction: reverse; }
/* Fade left/right edges — toggled by the "Fade Edges" switch in the widget's Style tab */
.dpc-marquee-fade {
	-webkit-mask-image: linear-gradient( to right, transparent 0, #000 var(--dpc-fade-width), #000 calc(100% - var(--dpc-fade-width)), transparent 100% );
	mask-image: linear-gradient( to right, transparent 0, #000 var(--dpc-fade-width), #000 calc(100% - var(--dpc-fade-width)), transparent 100% );
}
/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) { .dpc-marquee-track { animation: none; } }