/* 
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
*/

/*
Display 2XL - 	clamp(3rem, 6vw, 6rem)
Display XL - 	clamp(2.5rem, 5vw, 4.5rem)
Heading 1 - 	clamp(2rem, 4vw, 3rem)
Heading 2 - 	clamp(1.75rem, 3vw, 2.25rem)
Heading 3 -		clamp(1.25rem, 2.5vw, 1.5rem)
Heading 4 -		clamp(1.125rem, 2vw, 1.25rem)

BLACK:			--e-global-color-0a54a3b: #000000;
WHITE:			--e-global-color-d713de9: #FFFFFF;
BLUE:			--e-global-color-a5d4fff: #003B74;
DARK NAVY:		--e-global-color-7fa509d: #0C1821;
DARK GRAY:		--e-global-color-de249c3: #282828;
*/


/* ----- GLOBAL ----- */

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

.text-block a{text-decoration: underline;}
.text-block b,
.text-block strong{color: #FFF;}

.list-style-01 ul{margin: 0 0 20px; padding-left: 20px;}
.list-style-01 li{margin-bottom: 10px;}
.list-style-01 li:last-child{margin: 0;}
.list-style-01 li strong,
.list-style-01 li b{color: #FFF;}
.list-style-01 li a{text-decoration: underline; color: #FFF; font-weight: 700;}
.list-style-01 li a:hover{opacity: 0.7;}

.elementor-heading-title .medium{font-weight: 500;}
.elementor-heading-title .normal{font-weight: 400;}

.btn.backtoblog .elementor-button{position: relative;}
.btn.backtoblog .elementor-button:before{content: ""; position: absolute; bottom: -2px; left: 0; height: 1px; width: 100%; background: var(--e-global-color-d713de9);}
.btn.backtoblog .elementor-button:hover{opacity: 0.5;}

.btn-disabled{pointer-events: none; cursor: not-allowed;}


/* ----- BLOG HEADINGS ----- */

.block-text h2,
.block-text h3,
.block-text h4,
.block-text h5,
.block-text h6{font-family: "Europa", sans-serif; color: var(--e-global-color-6e579d0); font-weight: 400;}

.block-text h2{margin: 120px 0px 20px; scroll-margin-top: 180px; font-size: clamp(1.25rem, 2.5vw, 1.5rem);}
.block-text h2:first-child{margin-top: 0;}

.block-text h3{margin: 80px 0px 20px; scroll-margin-top: 180px; font-size: clamp(1.125rem, 2vw, 1.25rem); font-weight: 600;}

.block-text h4,
.block-text h5,
.block-text h6{margin: 40px 0px 20px;}

.block-text ul,
.legacy-text-block ul,
.block-text ol,
.legacy-text-block ol{margin-bottom: 20px; padding-left: 15px;}

.legacy-text-block h1,
.legacy-text-block h2,
.legacy-text-block h3,
.legacy-text-block h4,
.legacy-text-block h5,
.legacy-text-block h6{margin: 40px 0px 20px;}


/* Form Links */
.consultation-form .form-links {position: relative;}
.consultation-form .form-links a {font-size: 0.75rem; color: var(--e-global-color-d713de9);}
.consultation-form .form-links a:hover {border-bottom: 1px solid var(--e-global-color-d713de9);}
.consultation-form .form-links .separator {margin: 0 8px; color: #909BB2;}


/* Acceptance Field */
.consultation-form .elementor-field-type-acceptance .elementor-field-option {display: flex; justify-content: space-between; align-items: flex-start; gap: 16px;}
.consultation-form .elementor-field-type-acceptance .elementor-field-option label {color: rgba(255,255,255,0.7);}
.consultation-form .elementor-field-type-acceptance .elementor-field-option .elementor-acceptance-field {margin-top: 5px; transform: scale(1.2);}


/* Map Embed */
.map-embed {position: relative; width: 100%; height: 190px; overflow: hidden;}
.map-embed iframe {width: 100%; height: 100%; border: 0;}


/* Card Loop Style 1 */
.card-loop-1 {position: relative;}
.card-loop-1 .e-n-tabs-heading {position: absolute; z-index: 1; right: 0;top: -52px;}


/* Content & Icon */
.card-loop-1 .cs-item-content {z-index: 3; pointer-events: none;}
.card-loop-1 .cs-style-1 .cs-icon {opacity: 0; transition: all 0.3s ease; pointer-events: none;}


/* Hover */
.card-loop-1 .cs-style-1:hover .cs-icon {opacity: 1;}
.card-loop-1 .cs-style-1 .cs-item-content .cs-description {display: none;}
.card-loop-1 .cs-style-1:hover .cs-item-content .cs-description {display: block;}


/* ----- HEADER ----- */
.top-header .phone-btn {position: relative;}
.top-header .phone-btn .elementor-button-text {position: relative;}
.top-header .phone-btn .elementor-button-text:before {content: ""; position: absolute; bottom: 0; left: 0; height: 1px; width: 100%; background: var(--e-global-color-d713de9); opacity: 0; transition: all 0.3s ease;}
.top-header .phone-btn:hover .elementor-button-text:before {opacity: 1;}
.top-header .location-list .elementor-icon-list-icon {order: 2; margin-left: 8px;}
.top-header .location-list .elementor-icon-list-text {position: relative; padding: 0;}
.top-header .location-list .elementor-icon-list-item a:before {content: ""; height: 16px; width: 16px; display: flex; justify-content: center; align-items: center; background: url("/wp-content/uploads/2026/04/map-icon-.webp") no-repeat center center; margin-right: 8px;}
.top-header .location-list .elementor-icon-list-text:before {content: ""; position: absolute; bottom: 0; left: 0; height: 1px; width: 100%; background: var(--e-global-color-d713de9); opacity: 0; transition: all 0.3s ease;}
.top-header .location-list .elementor-icon-list-item:hover .elementor-icon-list-text:before {opacity: 1;}

.main-hd {position: relative; transition: background-color 0.3s ease;}
.main-hd.elementor-sticky--effects {background: #000;}
.main-hd .dropdown-column .submenu.concerns ul {display: grid; grid-auto-flow: column; grid-template-rows: repeat(4, auto); gap: 0 120px;}


/* Menu Hover */
.main-hd .hd-menu .e-n-menu-item {transition: opacity 0.3s ease;}
.main-hd .hd-menu:hover .e-n-menu-item {opacity: 0.3;}
.main-hd .hd-menu .e-n-menu-item:hover {opacity: 1;}


/* Submenu Hover */
.main-hd .hd-menu .submenu .menu-item {transition: opacity 0.3s ease;}
.main-hd .hd-menu .submenu:hover .menu-item {opacity: 0.3;}
.main-hd .hd-menu .submenu .menu-item:hover {opacity: 1;}


/* Inline Links */
.main-hd .hd-menu .elementor-item,
.main-hd .hd-menu .e-n-menu-title-container {display: inline-block;	position: relative;}


/* Menu Underline */
.main-hd .hd-menu .elementor-item::after,
.main-hd .hd-menu .e-n-menu-title-container::after {content: ""; position: absolute; left: 0; bottom: -2px; width: 100%; height: 1px; background: currentColor; transition: width 0.3s ease; opacity: 0;}


/* Menu Hover */
.main-hd .hd-menu .elementor-item:hover::after,
.main-hd .hd-menu .e-n-menu-title-container:hover::after {opacity: 1;}


/* Mobile Menu */
.popup-menu .mobile-menu .menu-item {border-bottom: 1px solid rgba(255,255,255,0.1);}
.popup-menu .mobile-menu .elementor-item {justify-content: space-between;}

.popup-menu .mobile-menu .elementor-sub-item,
.popup-menu .mobile-menu .elementor-item {border: 0;line-height: initial !important;}
.popup-menu .mobile-menu .sub-menu .menu-item {border: 0 !important;}

.popup-menu .mobile-menu .nav-group {border: 0 !important;}
.popup-menu .mobile-menu .nav-group.heading .elementor-sub-item {color: rgba(255,255,255,0.7) !important; pointer-events: none; margin-top: 40px; padding-top: 0;}
.popup-menu .mobile-menu .nav-group.heading.first .elementor-sub-item {margin-top: 20px;}
.popup-menu .mobile-menu .nav-group.heading.no-margin .elementor-sub-item {margin-top: 0; padding-top: 20px;}
.popup-menu .mobile-menu .nav-group.last .elementor-sub-item {margin-bottom: 40px; padding-bottom: 0;}
.popup-menu .mobile-menu .menu-item.no-border {border: 0;}
.popup-menu .mobile-menu .nav-group .elementor-sub-item {padding-left: 18px !important; border-left: 1px solid rgba(255,255,255,0.1);}


/* Mobile Menu Hover / Interaction Effect */
.popup-menu .mobile-menu .menu-item {transition: opacity 0.3s ease;}


/* Menu Hover */
.popup-menu .mobile-menu:hover .menu-item {opacity: 0.3;}
.popup-menu .mobile-menu:hover .menu-item.nav-group.heading{opacity: 1;}


/* Highlight active / hovered / tapped item */
.popup-menu .mobile-menu .menu-item:hover,
.popup-menu .mobile-menu .menu-item:active,
.popup-menu .mobile-menu .menu-item:focus-within {opacity: 1;}


/* Default Smooth */
.popup-menu .mobile-menu .sub-arrow svg {transition: all 0.3s ease;}


/* Turn PLUS into MINUS */
.popup-menu .mobile-menu .elementor-item[aria-expanded="true"] .sub-arrow svg {clip-path: inset(45% 0 45% 0); }


/* ----- HOMEPAGE ----- */
.intro-credentials-logo {text-align: center;}
.intro-carousel-logo {transition-timing-function: linear !important;}


/* Founder Section */
.founder-section::before {transform: rotate(180deg) scaleY(-1);}


/* Concerns */
.home-concerns-grid.card-loop-1 .cs-icon,
.before-after-carousel.card-loop-1 .cs-icon {display: none;}
.home-concerns-grid.card-loop-1 .cs-image img,
.before-after-carousel.card-loop-1 .cs-image img {height: 380px;}
.before-after-carousel.card-loop-1 .cs-item-content{display: none;}


/* Testimonials */
.home-testimonials-section{position: relative;}
.home-testimonials-section .heading .elementor-heading-title {font-weight: 400 !important;}
.home-testimonials-section .heading .elementor-heading-title b {font-weight: 600 !important;}

.home-testimonials-section .testimonial-carousel .elementor-swiper-button,
.card-loop-1 .elementor-swiper-button{display: flex; align-items: center; justify-content: center; height: 44px; width: 44px;}
.home-testimonials-section .testimonial-carousel .elementor-swiper-button svg path,
.card-loop-1 .elementor-swiper-button svg path{stroke: #FFF;}
.home-testimonials-section .testimonial-carousel .elementor-swiper-button-prev svg,
.card-loop-1 .elementor-swiper-button-prev svg{transform: rotate(180deg);}

/* ABOUT */
.about-credentials-logo{text-align: left;}

/* SINGLE BLOG POST  */
.dynamic-anchor-sidebar{position: sticky; top: 180px;}
.anchor-menu{display: flex; flex-direction: column; gap: 18px;}
.anchor-menu a{position: relative; padding: 5px 0; text-decoration: none; color: #8B8B8B; transition: all 0.3s ease; font-size: 16px; line-height: 1em;}
.anchor-menu a.active{color: #ffffff; padding-left: 16px;}
.anchor-menu a::before{content: ""; position: absolute; left: 0; top: auto; width: 2px; height: 18px; background: transparent; transition: all 0.3s ease;}
.anchor-menu a.active::before{background: #003B74;}
.anchor-menu a:hover{color: #ffffff;}
.anchor-menu a.is-subheading{font-size: 1rem; opacity: 0.8;}
.anchor-menu a.is-subheading.active{padding-left: 32px;}
.anchor-menu a.is-subheading::before{left: 16px; height: 14px;}


/* Landing Pages  */
.service-landing.card-loop-1 .cs-style-1 .cs-icon,
.service-landing.card-loop-1 .cs-style-1 .cs-item-content .cs-description{display: none;}
.service-landing.card-loop-1 .cs-style-1 .cs-image img{height: 340px;}
.service-landing.card-loop-1.center-grid .elementor-loop-container.elementor-grid{display: flex; flex-wrap: wrap; justify-content: center;}
.service-landing.card-loop-1.center-grid .e-loop-item{width: calc(33.333% - 16px);}


/* Service Pages  */
.faq-section .faq-lists{position: relative;}
.faq-section .faq-lists .faq-item{border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 25px; margin-bottom: 25px;}
.faq-section .faq-lists .faq-item:last-child{margin-bottom: 0; border: none;}


/* ----- FOOTER ----- */
.footer-section .ft-menu .elementor-item {position: relative; display: inline;}
.footer-section .ft-menu .elementor-item:before {content: ""; position: absolute; bottom: -2px; left: 0; height: 1px; width: 100%; background: var(--e-global-color-d713de9);}


/* ----- MEDIA QUERIES ----- */

@media (max-width: 1366px) {

	.main-hd .book-consultation-btn {display: none;}

}

@media (max-width: 1100px) {

	.top-header .phone-btn {display: none;}

}

@media (max-width: 1024px) and (min-width: 768px) {

	.map-embed {height: 400px;}

}

@media (max-width: 1024px) {

	.top-header .location-list {overflow: hidden; position: relative;}

	.top-header .location-list .elementor-icon-list-items {display: flex; gap: 40px; width: max-content; animation: simpleMarquee 20s linear infinite;
		will-change: transform;}
	.top-header .location-list .elementor-icon-list-item {flex-shrink: 0; white-space: nowrap;}

	.featured-services-tab .e-n-tabs-heading {position: relative;}
	.featured-services-tab .cs-style-1 .cs-icon,
	.featured-services-tab .cs-style-1 .cs-item-content .cs-description {opacity: 1; display: block;}

	.about-credentials-logo{text-align: center;}

	.service-landing.card-loop-1.center-grid .elementor-loop-container.elementor-grid{
        display:grid;
        justify-content:unset;
    }

    .service-landing.card-loop-1.center-grid .e-loop-item{
        width:auto;
    }

}

@media (max-width: 767px) {

	.home-testimonials-section .review-btn{position: relative !important;}

	/* Single Blog  */
	.dynamic-anchor-sidebar{display: none;}
	.block-text h2,
	.block-text h3{margin: 40px 0 20px;}
}

@media (max-width: 436px) {

	.footer-section .legacy-menu .menu-item:last-child a {margin-left: 0;}

}


/* ----- ANIMATION ----- */
@keyframes simpleMarquee {

	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-100%);
	}

}