/* ======================================================
   FORCE CLEAN HEADER ALIGNMENT - CSS ONLY
   ====================================================== */

/* Reset header */
#header {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #168d99 !important;
    position: relative !important;
    z-index: 99999 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}

/* Remove unwanted old spacing */
#header,
#header .elementor,
#header .elementor-section,
#header .elementor-container,
#header .elementor-column,
#header .elementor-widget-wrap,
#header .elementor-widget,
#header .elementor-widget-container,
#header .e-con,
#header .e-con-inner {
    min-height: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
}

/* ======================================================
   LOGO AREA
   ====================================================== */

/* First Elementor container = logo row */
#header .elementor-element-fd5589d {
    background: #168d99 !important;
    padding: 10px 0 6px !important;
    height: auto !important;
}

#header .elementor-element-fd5589d .e-con-inner {
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 30px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

/* Logo */
#header .elementor-widget-theme-site-logo,
#header .elementor-widget-image {
    width: auto !important;
    max-width: none !important;
    text-align: center !important;
}

#header .elementor-widget-theme-site-logo img,
#header .elementor-widget-image img {
    width: 160px !important;
    max-width: 160px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
}

/* ======================================================
   SEARCH AREA
   ====================================================== */

/* Second Elementor container = search/social row */
#header .elementor-element-e15b3b7 {
    background: linear-gradient(90deg, #10aa58, #35d687) !important;
    padding: 12px 30px 16px !important;
    height: auto !important;
}

/* Inner alignment */
#header .elementor-element-e15b3b7 .e-con-inner {
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 16px !important;
    position: relative !important;
}

/* Search widget container */
#header .elementor-element-13c8339,
#header .elementor-widget-text-editor {
    width: 700px !important;
    max-width: 700px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: block !important;
}

/* Ajax Search Lite wrapper */
#header .asl_w_container {
    width: 700px !important;
    max-width: 700px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Search main box */
#header div[id*="ajaxsearchlite"].asl_m {
    width: 100% !important;
    height: 44px !important;
    background: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    box-shadow: none !important;
    overflow: hidden !important;
    margin: 0 auto !important;
}

/* Search inside box */
#header .asl_m .probox {
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    background: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 12px !important;
}

/* Search icon button */
#header .asl_m .promagnifier {
    width: 38px !important;
    min-width: 38px !important;
    height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    order: 2 !important;
}

/* Search icon */
#header .asl_m .promagnifier svg {
    width: 22px !important;
    height: 22px !important;
    fill: #168d99 !important;
}

/* Input area */
#header .asl_m .proinput {
    flex: 1 1 auto !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    order: 1 !important;
}

#header .asl_m .proinput form {
    width: 100% !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
}

#header .asl_m .proinput input,
#header .asl_m input[type="search"] {
    width: 100% !important;
    height: 44px !important;
    line-height: 44px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #555 !important;
    font-size: 15px !important;
    font-family: "Montserrat", Arial, sans-serif !important;
}

#header .asl_m .proinput input::placeholder,
#header .asl_m input[type="search"]::placeholder {
    color: #777 !important;
    opacity: 1 !important;
}

/* Hide close/loading/settings icons if they disturb layout */
#header .proclose,
#header .proloading,
#header .prosettings,
#header div[id*="ajaxsearchlitesettings"],
#header .searchsettings,
#header .asl_s {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* ======================================================
   SOCIAL ICONS / FACEBOOK INSTAGRAM
   ====================================================== */

/* Force social icons to right side of search row if they exist */
#header .elementor-social-icons-wrapper,
#header .elementor-widget-social-icons {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Make round icon like first screenshot */
#header .elementor-social-icon,
#header a.elementor-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 50% !important;
    background: #73ebb1 !important;
    color: #168d99 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 4px !important;
    text-decoration: none !important;
}

/* If text "Facebook Instagram" is showing, hide text but keep icon area clean */
#header .elementor-widget-text-editor p,
#header .elementor-widget-text-editor span:not(.highlighted) {
    margin: 0 !important;
}

/* ======================================================
   MENU / NAVIGATION
   ====================================================== */

/* Hide duplicated raw menu list outside header nav style */
#header > ul,
#header > li,
#header .menu-toggle,
#header .elementor-widget-wp-widget-nav_menu .widget-title {
    display: none !important;
}

/* Any menu inside header becomes horizontal */
#header ul.menu,
#header .menu ul,
#header nav ul,
#header .elementor-nav-menu {
    list-style: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 34px !important;
    flex-wrap: wrap !important;
}

/* Menu item */
#header ul.menu li,
#header nav ul li,
#header .elementor-nav-menu li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Menu link */
#header ul.menu li a,
#header nav ul li a,
#header .elementor-nav-menu li a {
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    font-family: "Montserrat", Arial, sans-serif !important;
    padding: 10px 0 !important;
    display: block !important;
    line-height: 1.2 !important;
}

/* Create nav bar area if menu is inside e15b3b7 */
#header .elementor-element-e15b3b7 + nav,
#header nav {
    background: #168d99 !important;
    padding: 0 30px 14px !important;
}

/* Active Home underline */
#header ul.menu li:first-child a,
#header nav ul li:first-child a,
#header .elementor-nav-menu li:first-child a {
    position: relative !important;
}

#header ul.menu li:first-child a::after,
#header nav ul li:first-child a::after,
#header .elementor-nav-menu li:first-child a::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: -8px !important;
    width: 78px !important;
    height: 5px !important;
    background: #73ebb1 !important;
    border-radius: 5px !important;
}

/* ======================================================
   STOP RAW LIST FROM APPEARING BELOW HEADER
   ====================================================== */

/* This targets the ugly bullet menu showing in your second screenshot */
body > ul,
body > li,
body > .menu,
body > .menu-menu-container {
    display: none !important;
}

/* If the duplicated menu is directly after header, hide it */
#header + ul,
#header + .menu,
#header + .menu-menu-container,
#header + div.menu {
    display: none !important;
}

/* Hide visible "Menu" text if it is printed as plain text */
#header ~ .menu,
#header ~ ul.menu {
    display: none !important;
}

/* ======================================================
   CONTENT SPACING
   ====================================================== */

#wrapper {
    margin-top: 0 !important;
}

/* ======================================================
   RESPONSIVE
   ====================================================== */

@media (max-width: 991px) {
    #header .elementor-element-e15b3b7 .e-con-inner {
        flex-direction: column !important;
        gap: 12px !important;
    }

    #header .elementor-element-13c8339,
    #header .elementor-widget-text-editor,
    #header .asl_w_container {
        width: 90% !important;
        max-width: 700px !important;
    }

    #header ul.menu,
    #header nav ul,
    #header .elementor-nav-menu {
        gap: 18px !important;
    }

    #header ul.menu li a,
    #header nav ul li a,
    #header .elementor-nav-menu li a {
        font-size: 15px !important;
    }
}

@media (max-width: 575px) {
    #header .elementor-element-fd5589d {
        padding: 8px 0 5px !important;
    }

    #header .elementor-widget-theme-site-logo img,
    #header .elementor-widget-image img {
        width: 130px !important;
        max-width: 130px !important;
    }

    #header .elementor-element-e15b3b7 {
        padding: 10px 14px 14px !important;
    }

    #header .elementor-element-13c8339,
    #header .elementor-widget-text-editor,
    #header .asl_w_container {
        width: 100% !important;
    }

    #header div[id*="ajaxsearchlite"].asl_m,
    #header .asl_m .probox,
    #header .asl_m .proinput,
    #header .asl_m .proinput input,
    #header .asl_m input[type="search"] {
        height: 40px !important;
        line-height: 40px !important;
    }

    #header .asl_m .promagnifier {
        height: 40px !important;
    }

    #header ul.menu,
    #header nav ul,
    #header .elementor-nav-menu {
        gap: 12px !important;
    }

    #header ul.menu li a,
    #header nav ul li a,
    #header .elementor-nav-menu li a {
        font-size: 13px !important;
    }
}