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

/* Add your custom styles here */

/* Disable all Elementor entrance animations */
.elementor-invisible,
.animated,
.elementor-animated-item,
[class*="elementor-animation-"],
[class*="fadeIn"],
[class*="fadeInUp"],
[class*="fadeInDown"],
[class*="fadeInLeft"],
[class*="fadeInRight"],
[class*="slideIn"],
[class*="zoomIn"],
[class*="rotateIn"],
[class*="bounceIn"],
[class*="flipIn"],
[class*="lightSpeedIn"],
[class*="jackInTheBox"] {
    opacity: 1 !important;
    visibility: visible !important;
    animation: none !important;
    transition: none !important;
}
.no-scroll{overflow:hidden;}

/**__.Mobile Navigation__**/
.mob-menu {
    /* overflow-y: scroll!important; */
    /* height:100vh; */
}

.mob-menu a {width: 100%;justify-content: space-between;}
.mob-menu span.sub-arrow {background: transparent;padding: 15px 18px!important;position: absolute; right: 3px; top: 9px; border-left: 1px solid #1721333d;}
.mob-menu .elementor-nav-menu .sub-arrow svg { font-size: 20px;position: relative;z-index: -1;}
.mob-menu .has-submenu.highlighted .sub-arrow svg {transform: rotate(180deg);}
.mob-menu .menu-item-has-children .sub-menu {background: #aed7df47!important;border-top: solid 1px #000}
.mob-menu .menu-item-has-children .sub-menu a {font-size: 14px!important;}
.mob-menu a:focus {background: transparent!important;}

/* edit the hamburger and close icon colors here */
.smdev-button {
    --hamburger-color: #000;
    --close-x-color: #000;
    display: block;
    height: 18px;
    cursor: pointer;
    position: relative;
    z-index: 101;
}
/* must add in elementor template ID number to make the menu full width */
.elementor-241 {width: 100%;}
.smdev-navigation {
    position: fixed;
    top: 0;
    left: 0;
    transform: translateX(-100%);
    overflow: hidden;
    transition: transform 0.2s;
    width: 100%;
    height: 100vh;
    z-index: 100;
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
}
.smdev-navigation {display: flex;justify-content: center;align-items: center;}
/* toggle hamburger*/
.smdev-button .smdev-hamburger {position: relative;}
.smdev-button .smdev-hamburger span {
    display: block;
    height: 2px;
    width: 34px;
    background: var(--hamburger-color);
    transform-origin: 50% 50%;
    transition: all 0.1s 0.2s ease, transform 0.2s ease;
}
.smdev-button .smdev-hamburger span:nth-child(2) {
    transform: translate(0, 6px);
    -webkit-transform: translate(0, 6px);
    -moz-transform: translate(0, 6px);
    -ms-transform: translate(0, 6px);
    -o-transform: translate(0, 6px);
}
.smdev-button .smdev-hamburger span:nth-child(3) {
    transform: translate(0, 12px);
    -webkit-transform: translate(0, 12px);
    -moz-transform: translate(0, 12px);
    -ms-transform: translate(0, 12px);
    -o-transform: translate(0, 12px);
}
.smdev-nav_control {
    position: absolute;
    left: -9999px;
    width: 100%;
    clip: rect(0, 0, 0, 0);
}
.smdev-nav_control:checked~.smdev-navigation {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.3s, opacity 0.3s;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
}
.smdev-nav_control:checked~.smdev-button .smdev-hamburger {
    top: 24px;
    position: fixed;
    right: 17px;
    padding: 17px 0px;
}
/* closed X */
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span {
    background: var(--close-x-color);
    transition: all 0.1s ease, transform 0.1s 0.2s ease;
}
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span:first-child {
    opacity: 0;
    display: none;
}
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span:nth-child(2) {
    transform: translate(0, 6px) rotate(45deg);
    -webkit-transform: translate(0, 6px) rotate(45deg);
    -moz-transform: translate(0, 6px) rotate(45deg);
    -ms-transform: translate(0, 6px) rotate(45deg);
    -o-transform: translate(0, 6px) rotate(45deg);
}
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span:nth-child(3) {
    transform: translate(0, 4px) rotate(-45deg);
    -webkit-transform: translate(0, 4px) rotate(-45deg);
    -moz-transform: translate(0, 4px) rotate(-45deg);
    -ms-transform: translate(0, 4px) rotate(-45deg);
    -o-transform: translate(0, 4px) rotate(-45deg);
}
@media (max-width:1024px) {
	header.elementor-9 {
		position: fixed;
    	top: 0;
    	left: 0;
    	width: 100%;
    	z-index: 100;
	}
	.elementor-element.elementor-element-166935de {box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;}

}

.custom-ul ul {list-style: none;padding: 0;}
.custom-ul li {position: relative;padding-left: 36px;padding-bottom: 20px;}
.custom-ul li:before {content: ''; background:#f6a206;height: 20px;width: 20px;display: inline-block;border-radius: 50%;position: absolute;left: 3px;top: 2px;}
.custom-ul li:after {content: '';border-top: 3px solid #fff;border-right: 3px solid #fff;transform: rotate(45deg);height: 8px;width: 8px;display: inline-block;position: absolute;left: 8px;top: 8px;}

.sidebar-form-container .elementor-field-group .elementor-field:not(.elementor-select-wrapper) {background-color:#fff!important;}
.sidebar-form-container .elementor-column {width:100%;}
.icon-box-adjust .elementor-icon-box-icon {position: relative;top: 9px;}
.sidebar-form-container span.elementor-field-option {margin-bottom:15px;}
.sidebar-form-container span.elementor-field-option:last-child {margin-bottom:0;} 

@media (max-width:992px) {
	/* Target the specific container ID for max specificity, if known. 
   Otherwise, use a double-class selector for high specificity. */
.elementor-field-subgroup.elementor-field-subgroup {
    /* Layout */
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important; 
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-field-subgroup .elementor-field-option {
    display: block !important;
    position: relative !important;
    padding: 0 !important; /* Ensure option doesn't have internal padding */
    margin: 0 !important;
}

/* Style the clickable label - MAKE THIS LARGE AND TOUCH FRIENDLY */
.elementor-field-subgroup .elementor-field-option label {
display: block !important;
        cursor: pointer !important;
        padding: 15px 15px !important;
        border: 3px solid #ccc !important;
        border-radius: 10px !important;
        background-color: #ffffff !important;
        transition: background-color 0.2s, border-color 0.2s;
        font-size: 16px !important;
        line-height: 1.4 !important;
        text-align: left !important;
        user-select: none;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* Hide the native checkbox */
.elementor-field-subgroup .elementor-field-option input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important; 
    height: 1px !important;
    width: 1px !important;
    overflow: hidden !important;
}

/* Style the active/checked state */
.elementor-field-subgroup .elementor-field-option input[type="checkbox"]:checked + label {
    background-color: #e3f2fd !important; /* Light blue */
    border-color: #007bff !important; /* Primary blue */
    color: #000 !important;
    box-shadow: 0 0 10px rgba(0, 123, 255, 0.7) !important;
}

/* Hover/Focus state */
.elementor-field-subgroup .elementor-field-option label:hover,
.elementor-field-subgroup .elementor-field-option input[type="checkbox"]:focus + label {
    background-color: #f0f4f7;
    border-color: #007bff;
}
}
	
	
@media (min-width:767px) {
	.sidebar-form-container span.elementor-field-option {margin-bottom:5px;}
}

/* Safari-only fix for footer colours */
@supports (-webkit-touch-callout: none) {

    /* TEXT should stay #B8B8B8 */
    .elementor-icon-list-text,
    .elementor-icon-list-item a,
    .elementor-icon-list-item a:visited,
    .elementor-icon-list-item a:active,
    .elementor-icon-list-item a:hover {
        color: #B8B8B8 !important;
        -webkit-text-fill-color: #B8B8B8 !important;
    }

    /* ICONS should stay #fc9d12 */
    .elementor-icon-list-icon svg,
    .elementor-icon-list-icon svg path {
        fill: #fc9d12 !important;
        stroke: #fc9d12 !important;
        color: #fc9d12 !important;
    }

    /* Prevent Safari contrast boosting on dark backgrounds */
    .elementor-icon-list-item,
    .elementor-icon-list-items,
    .elementor-widget-icon-list {
        -webkit-text-size-adjust: 100% !important;
        opacity: 1 !important;
        -webkit-filter: none !important;
    }
}

.elementor-field-subgroup .elementor-field-option label {
  position: relative;
  top: -2px;
  left: 5px;
}


