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

p:last-child {margin-bottom: 0;padding-bottom: 0;}
p:empty {display: none;}
body .text_MB_10 p:not(:last-child) {margin-bottom: 10px;}
body .body_text {font-family: var(--e-global-typography-text-font-family);}
body .accent_text {color: var(--e-global-color-accent);}
body .title_MT_0 .elementor-image-box-title {margin-top: 0;}

.elementor-widget-text-editor a {text-decoration: underline;}

h1 sup {font-size: 43%;top: -1em;}

body .left-border-img {margin-left: clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem);margin-bottom: clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem) !important;}
body .right-border-img {margin-right: clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem);margin-bottom: clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem) !important;}
body .left-border-img::before,
body .right-border-img::before {content: "";width: 100%;height: 100%;display: block;position: absolute;border: 2px solid var(--e-global-color-primary);border-radius: 4px;z-index: -1;}
body .left-border-img::before {right: calc(clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem) / 2);top: calc(clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem) / 3);}
body .right-border-img::before {left: calc(clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem) / 2);top: calc(clamp(1.25rem, -0.25rem + 7.5vw, 6.875rem) / 3);}

body .heroIMG-border::before {content: "";position: absolute;top: 25px;left: 25px;width: 100%;height: 100%;border: 1px solid var(--e-global-color-primary);border-radius: 4px;z-index: 0;pointer-events: none;}

.fit-img.elementor-widget-image,
.fit-img.elementor-widget-image-box {width: 100%;}
.fit-img.elementor-widget-image > a,
.fit-img.elementor-widget-image > img,
.fit-img.elementor-widget-image > a > img,
.fit-img.elementor-widget-image .elementor-widget-container img,
.fit-img.elementor-widget-image-box .elementor-image-box-img img {height: 100%;width: 100%;-o-object-fit: cover;object-fit: cover;position: absolute;left: 0;top: 0;}

/* --- Header --- */
body:has(.sticky-header) > .elementor-location-header + .elementor > .elementor-element:first-child:has(h1),
body.single-post:has(.sticky-header) > .elementor-location-header + .elementor > .elementor-element:first-child,
body:has(.sticky-header) > .elementor-location-header + .site-main .elementor > .elementor-element:first-child:has(h1) {padding-top: var(--headerHeight);}
body.admin-bar .sticky-header {top: var(--adminBarHeight);}
.sticky-header {position: fixed;top: 0;left: 0;right: 0;transition: top 0.3s ease;z-index: 9999;}
.sticky-header:not(.sticky) {background: transparent !important;}
.sticky-header.hidden {top: calc(-1 * var(--headerHeight)) !important;}
.sticky-header.sticky {box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);}
.sticky-header.sticky > .e-con-inner {padding-top: 15px;padding-bottom: 15px;}

.header_search:not(.active) .e-search-input-wrapper {visibility: hidden;opacity: 0;}
.header_search {position: static;}
.header_search .e-search-input-wrapper {position: fixed !important;left: 0;right: 0;top: -100%;max-width: 1265px;width: 100vw;margin: 0 auto;padding: calc( (var(--headerHeight) - 47px) / 2) 20px;z-index: 9;transition: all 0.3s;}
.header_search .e-search-input-wrapper input.e-search-input {max-width: calc(100% - 30px);}
.header_search .e-search-input-wrapper::before {content: "";width: 100vw;height: 100%;background: white;position: absolute;left: 50%;top: 0;transform: translateX(-50%);z-index: -1;}
.header_search.active .e-search-input-wrapper {top: 0;transition: all 0.3s;z-index: 991;}
.admin-bar .header_search.active .e-search-input-wrapper {top: var(--adminBarHeight);}
.header_search .e-search-input-wrapper .e-fas-times {opacity: 1;visibility: visible;}

.header-btn-icon.elementor-element .elementor-button .elementor-button-icon {display: none;}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu > .menu-item > a > .sub-arrow {padding-left: 5px;font-size: 16px;}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu > .menu-item .sub-menu {min-width: 200px !important;padding: 0px 0px;}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu > .menu-item .sub-menu a {border: 0;}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu > .menu-item > a.elementor-item-active {font-weight: 600;}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu > .menu-item.current-style > a::after {opacity: 1;}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu > .menu-item.current-style > a:hover::after {opacity: 0;}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu > .menu-item > a[aria-expanded="true"] > .sub-arrow {transform: rotateX(180deg);transition: all 0.3s;}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > .menu-item > a:hover .sub-arrow,
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > .menu-item > a.elementor-item-active .sub-arrow,
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > .menu-item > a[aria-expanded="true"] .sub-arrow {fill: #fff;}

.home .elementor-location-header:not(:has(.sticky)) .elementor-widget-nav-menu .elementor-nav-menu > .menu-item > a {color: #fff;fill: #fff;}
.home .elementor-location-header:not(:has(.sticky)) .elementor-widget-nav-menu .elementor-nav-menu > .menu-item > a:hover {color: #EF9B34;fill: #EF9B34;}
.home .elementor-location-header:not(:has(.sticky)) .elementor-widget-theme-site-logo img {opacity: 0;}
.home .elementor-location-header:not(:has(.sticky)) .elementor-widget-theme-site-logo {background-size: auto 120%;}
body:not(.home) .elementor-location-header .elementor-widget-theme-site-logo {background: transparent;}
/* --- #END Header --- */

/* --- Footer --- */
.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > .menu-item .sub-menu,
.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > .menu-item .sub-arrow {display: none !important;}
.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > .menu-item .elementor-item {display: inline-block;}
/* --- #END Footer --- */

/* --- Footer "Get In Touch" form (WPForms) --- */
.footer-form .wpforms-container { margin: 0; }
.footer-form .wpforms-form .wpforms-field-container .wpforms-field { padding: 0 0 16px 0; }
.footer-form .wpforms-form .wpforms-field-container .wpforms-field-label,
.footer-form .wpforms-form .wpforms-field-container .wpforms-required-label { display: none; }
.footer-form .wpforms-form .wpforms-field-container input[type="text"],
.footer-form .wpforms-form .wpforms-field-container input[type=email],
.footer-form .wpforms-form .wpforms-field-container input[type=tel],
.footer-form .wpforms-form .wpforms-field-container input[type=url],
.footer-form .wpforms-form .wpforms-field-container textarea {
	width: 100%;
	max-width: 100%;
	height: auto;
	border: 1px solid color-mix(in srgb, var(--e-global-color-secondary) 25%, transparent);
	border-radius: 8px;
	padding: 15px 20px;
	font-family: var(--e-global-typography-text-font-family);
	font-size: 16px;
	line-height: 1.5;
	color: var(--e-global-color-secondary, #1d1d1d);
	background: #fff;
	box-shadow: none;
	transition: border-color .2s ease;
}
.footer-form .wpforms-form .wpforms-field-container textarea { min-height: 130px; resize: vertical; }
.footer-form .wpforms-form .wpforms-field-container input:focus,
.footer-form .wpforms-form .wpforms-field-container textarea:focus { border-color: var(--e-global-color-primary, #BC541E); outline: none; }
.footer-form .wpforms-form .wpforms-field-container ::placeholder { color: color-mix(in srgb, var(--e-global-color-secondary) 55%, transparent); opacity: 1; }
.footer-form .wpforms-form .wpforms-field-container .wpforms-submit-container { margin-top: 4px; }
.footer-form .wpforms-form .wpforms-submit-container button[type=submit] {
	background-color: var( --e-global-color-primary );
	font-family: var( --e-global-typography-accent-font-family ), Sans-serif;
	font-size: var( --e-global-typography-accent-font-size );
	font-weight: var( --e-global-typography-accent-font-weight );
	text-transform: var( --e-global-typography-accent-text-transform );
	line-height: var( --e-global-typography-accent-line-height );
	letter-spacing: var( --e-global-typography-accent-letter-spacing );
	color: var( --e-global-color-c_white );
	border-style: solid;
	border-width: 2px 2px 2px 2px;
	border-color: var( --e-global-color-primary );
	border-radius: 100px;
	padding: 12px 21px;
	cursor: pointer;
	transition: all .3s ease;box-shadow: none;
}
.footer-form .wpforms-form .wpforms-submit-container button[type=submit]:hover {
	background-color: var( --e-global-color-f7ee76d );color: var( --e-global-color-c_white );border-style: solid;border-width: 2px 2px 2px 2px;border-color: var( --e-global-color-f7ee76d );
}
/* --- #END Footer "Get In Touch" form (WPForms) --- */

/* ===== Products Slider— active-logo state (JS-driven; no native equivalent) ===== */
.prod-prev-new,
.prod-next-new {cursor: pointer;}
.e-loop-item:has(.prod-logo) { position: relative; }
.e-loop-item:has(.prod-logo):hover img,
.e-loop-item.is-active:has(.prod-logo) img { filter: none !important; opacity: 1 !important; }
.e-loop-item:has(.prod-logo):hover .elementor-widget-image,
.e-loop-item.is-active:has(.prod-logo) .elementor-widget-image { opacity: 1 !important; }
.e-loop-item:has(.prod-logo):hover::after,
.e-loop-item.is-active:has(.prod-logo)::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:3px; background:var(--e-global-color-accent); z-index:2; }

.prod-logo-slider.elementor-element .elementor-grid {
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    grid-template-columns:none !important;
    gap:0 !important;
    scrollbar-width:thin;
	scrollbar-width: none;
    -ms-overflow-style: none;
}
.prod-logo-slider.elementor-element .elementor-grid::-webkit-scrollbar {
    display: none;
}
.prod-logo-slider.elementor-element .e-loop-item{
    flex:0 0 auto !important;
    width:calc(100% / 9) !important;
    min-width:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}
.prod-logo-slider.elementor-element .e-loop-item > *{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box;
}
.prod-logo-slider.elementor-element .e-loop-item img{ max-width:100% !important; }

.box_img_slider .swiper-slide {height: auto;}
.box_img_slider .swiper-slide-inner {height: 100%;}
.box_img_slider .swiper-slide-inner img {height: 100%;width: 100%;object-fit: cover;}


@media screen and (min-width: 881px){
	.elementor-element .elementor-nav-menu--main .elementor-nav-menu .d-hide.menu-item {display: none;}
}
@media (max-width:1439px){ 
	.prod-logo-slider.elementor-element .e-loop-item{ width:calc(100% / 5) !important; }
}
@media (max-width:1024px){ 
	.prod-logo-slider.elementor-element .e-loop-item{ width:calc(100% / 4) !important; } 
	
	body .heroIMG-border::before {top: 10px;left: 10px;}
}
@media screen and (max-width:880px) {
	.alignleft,
	.alignright {float: none;clear: both;display: block;margin-right: 0;margin-left: 0;margin-bottom: 20px;}

	.header-btn-icon.elementor-element .elementor-button .elementor-button-icon {display: block;}
	.header-btn-icon.elementor-element .elementor-button .elementor-button-text {display: none;}
	
	.prod-logo-slider.elementor-element .e-loop-item{ width:calc(100% / 3) !important; }
}
@media (max-width:567px) {
	.prod-logo-slider.elementor-element .e-loop-item{ width:calc(100% / 2) !important; } 
}

/* ===== Contact page form (WPForms 110) — Figma match ===== */
.contact-page-form .wpforms-form .wpforms-field-container{ display:flex; flex-wrap:wrap; gap:24px 20px; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field{ width:100% !important; margin:0 !important; padding:0 !important; }
.contact-page-form .wpforms-form .wpforms-field-container #wpforms-110-field_2-container,
.contact-page-form .wpforms-form .wpforms-field-container #wpforms-110-field_3-container{ width:calc(50% - 10px) !important; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field-hidden{ display:none !important; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field .wpforms-field-label,
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field .wpforms-field-sublabel{ display:none !important; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field input,
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field textarea,
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field select{ width:100% !important; background:transparent !important; border:1px solid #DBDBDB !important; border-radius:8px !important; color:#fff !important; padding:12px 20px !important; box-shadow:none !important; font-size:16px !important; height: auto;max-width: 100%;}
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field textarea{ min-height:120px !important; resize:vertical; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field input::placeholder,
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field textarea::placeholder{ color:rgba(255,255,255,0.55) !important; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field select{ color:rgba(255,255,255,0.55) !important; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field select option{ color:#000 !important; }
.contact-page-form .wpforms-form .wpforms-field-container .wpforms-field .wpforms-required-label{ color:#EF9B34 !important; }
.contact-page-form .wpforms-form .wpforms-submit{ background:#BC541E !important; border:none !important; border-radius:35px !important; color:#fff !important; text-transform:uppercase; font-weight:600; letter-spacing:0.14em; font-size:14px !important; padding:13px 30px !important; cursor:pointer; margin-top:8px; width:auto !important; }
.contact-page-form .wpforms-form .wpforms-submit:hover{ background:#EF9B34 !important; }

.contact-page-form .wpforms-form .wpforms-field-container label.wpforms-error {color: red;}

/* Contact page map — rounded */
.elementor-element-cmapw .elementor-widget-container,
.elementor-element-cmapw iframe{ border-radius:10px !important; overflow:hidden; }

@media (max-width:767px) {
	.contact-page-form .wpforms-form .wpforms-field-container #wpforms-110-field_2-container,
	.contact-page-form .wpforms-form .wpforms-field-container #wpforms-110-field_3-container{ width:100% !important; }
}


/* ===== Blog category pill (dynamic post-terms rendered as a heading) ===== */
.cat-pill { display: inline-block; line-height: 1; }
.cat-pill .elementor-heading-title { display: inline-block; }
.cat-pill a { color: inherit !important; text-decoration: none !important; }

/* ===== Blog single — AddToAny share icons (Figma: black glyphs, no square, hide + button) ===== */
.addtoany .a2a_kit { display:inline-flex; align-items:center; gap:10px; line-height:1; }
.addtoany .a2a_kit a { margin:0 !important; padding:0 !important; display:inline-flex; float:none !important; }
.addtoany .a2a_dd { display:none !important; }
.addtoany .a2a_svg { background-color:transparent !important; border-radius:0 !important; width:22px !important; height:22px !important; line-height:22px !important; }
.addtoany .a2a_svg svg { width:25px !important; height:25px !important; }
.addtoany .a2a_svg svg path { fill:#1D1D1D !important; }
.addtoany .a2a_kit a:hover .a2a_svg svg path { fill:#BC541E !important; }

.single-portfolio .elementor-widget-loop-carousel .swiper-pagination-bullets {left: 50%;}
