.brand-color,
a:not(.-unlink):not(.-highlighted):hover,
a:not(.-unlink):not(.-highlighted):hover .title,
a:not(.-unlink):not(.-highlighted):active,
a:not(.-unlink):not(.-highlighted):active .title,
a:not(.-unlink):not(.-highlighted):focus,
a:not(.-unlink):not(.-highlighted):focus .title,
.nav .nav-item.active-main-item > a,
.nav .nav-item.active > a,
.nav .current-menu-ancestor > a,
.nav .current-menu-item > a,
.hamburger-nav .menu li.current-menu-ancestor > a > span,
.hamburger-nav .menu li.current-menu-item > a > span,
.widget_rss a,
.single-post .entry-content a:not(.wp-block-button__link),
.page-id-124 .entry-content a:not(.wp-block-button__link),
ul:not(.-unlist) > li::before,
ol:not(.-unlist) > li::before,
.social-networks.-outlined .network:hover,
.portfolio-filter a.active,
.category-holder:not(.no-divider):after,
.video-button.-outlined .icon-button:hover,
.comments .comment-body time:after,
.button.-outlined:not(.-pagination):hover,
a.button.-outlined:not(.-pagination):hover,
.button.-outlined:active,
.button.-outlined:focus,
.pagination .button:hover,
.pagination.-outlined a.button:not(.-flat):hover,
.pricing-table-features .exist .icon,
.service-table-features .exist .icon,
.lazy-load.-outlined .button.-pagination:hover,
.lazy-load.-flat .button.-pagination:hover,
.button.-primary.-outlined,
a.button.-primary.-outlined,
.button.-primary.-flat,
a.button.-primary.-flat,
.button.-primary.-text,
a.button.-primary.-text {
    color: #f7931e;
}

.custom-cursor .circle-cursor-outer,
a.button.-outlined:active,
a.button.-outlined:focus,
input[type="checkbox"]:checked,
input[type="radio"]:checked,
.button.-primary.-outlined,
a.button.-primary.-outlined {
    border-color: #f7931e;
}

.custom-cursor .circle-cursor-inner,
.custom-cursor .circle-cursor-inner.cursor-link-hover,
.button:not(.-outlined):not(.-text):not(.-flat):not(.-primary):not(.-pagination):hover,
.button:not(.-outlined):not(.-text):not(.-flat):not(.-primary):not(.-pagination):active,
.button:not(.-outlined):not(.-text):not(.-flat):not(.-primary):not(.-pagination):focus,
a.button:not(.-outlined):not(.-text):not(.-flat):not(.-primary):not(.-pagination):hover,
a.button:not(.-outlined):not(.-text):not(.-flat):not(.-primary):not(.-pagination):active,
a.button:not(.-outlined):not(.-text):not(.-flat):not(.-primary):not(.-pagination):focus,
.widget_price_filter .ui-slider-range,
.widget_price_filter .ui-slider-handle:after,
input[type="checkbox"]:checked,
input[type="radio"]:checked,
.video-button:not(.-outlined):not(.-blurred) .icon-button:hover,
.tag.tag-sale,
.social-networks.-contained .network:hover,
input[type="submit"]:not(.-outlined):not(.-flat):not(.-text):not(.-primary):hover,
.button.-primary:not(.-outlined):not(.-flat):not(.-text),
a.button.-primary:not(.-outlined):not(.-flat):not(.-text),
input[type="submit"].-primary:not(.-outlined):not(.-flat):not(.-text),
.icon-buttons-animation .icon-button::before {
    background-color: #f7931e;
}

::selection {
    background-color: #f7931e;
}

.dark-scheme,
.dark-scheme .site-content,
.dark-scheme .site-footer,
.dark-scheme .cart-mini,
.dark-scheme .logo-details,
.dark-scheme .header.-sticky,
.dark-scheme .share-bar .social-networks,
.dark-scheme .header.-mobile .mobile-overlay .holder,
.dark-scheme .horizontal-accordion-item,
.dark-scheme .sticky-product,
.dark-scheme .sticky-nav-holder,
.dark-scheme.with-boxed-container .site,
.dark-scheme .header:not(.-mobile).header-5,
.dark-scheme .horizontal_accordionItem,
.dark-scheme .page-headline:before,
.dark-scheme [class*="type"] .woo-product-details,
.dark-scheme .header:not(.-mobile) .menu li > ul {
    background-color: #eaeaea;
}

@media screen and (max-width: 768px) {
    .header {
        opacity: 1 !important;
    }

    /* Mobile logo max-height override */
    .branding .logo img,
    .branding .logo-mobile img,
    .branding .logo-dynamic img {
        max-height: 70px !important;
    }

    .mobile-overlay {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none;
        overflow: hidden !important;
    }

    .mobile-overlay.visible,
    body.mobile-menu-active .mobile-overlay.visible {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto;
        overflow: hidden !important;
    }

    /* Overlay background - prevent overflow */
    .mobile-overlay .overlay {
        overflow: hidden !important;
    }

    /* Ensure holder is visible when overlay is visible - Professional Design */
    .mobile-overlay .holder {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        height: 100vh !important;
        z-index: 1 !important;
        background: linear-gradient(180deg, #ffffff 0%, #f8f9fa 100%) !important;
        width: calc(100% - 56px) !important;
        max-width: calc(100% - 56px) !important;
        text-align: left !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 0 !important;
        box-shadow: -4px 0 20px rgba(0, 0, 0, 0.1) !important;
        transform: translateX(-100%) !important;
        -webkit-transform: translateX(-100%) !important;
        -ms-transform: translateX(-100%) !important;
        transition: transform 0.35s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.35s ease, visibility 0.35s ease !important;
        opacity: 0 !important;
        visibility: hidden !important;
        border: none !important;
        border-right: none !important;
    }

    body.mobile-menu-active .mobile-overlay.visible .holder {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateX(0) !important;
        -webkit-transform: translateX(0) !important;
        -ms-transform: translateX(0) !important;
    }

    /* Ensure holder returns to initial position when menu is closed */
    .mobile-overlay:not(.visible) .holder,
    body:not(.mobile-menu-active) .mobile-overlay .holder {
        transform: translateX(-100%) !important;
        -webkit-transform: translateX(-100%) !important;
        -ms-transform: translateX(-100%) !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }

    /* Ensure mobile menu list is visible */
    body.mobile-menu-active .mobile-overlay.visible #mobile-menu {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        padding-top: 3.5rem !important;
        position: relative !important;
        z-index: 2 !important;
    }

    /* Holder container - remove extra padding */
    body.mobile-menu-active .mobile-overlay.visible .holder {
        padding-top: 0 !important;
    }

    /* Nav container - ensure no extra spacing */
    body.mobile-menu-active .mobile-overlay.visible .holder .nav-container {
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Close bar wrapper - minimize space */
    .mobile-overlay .close-bar {
        line-height: 1 !important;
    }

    /* Ensure menu starts with proper spacing after close bar */
    body.mobile-menu-active .mobile-overlay.visible .holder #mobile-menu {
        margin-top: 0 !important;
        padding-top: 3.5rem !important;
    }

    /* First menu item - ensure it's clickable and has proper spacing */
    body.mobile-menu-active .mobile-overlay.visible #mobile-menu > li:first-child {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    body.mobile-menu-active .mobile-overlay.visible #mobile-menu > li:first-child > .menu-link {
        margin-top: 0 !important;
        padding-top: 1rem !important;
        z-index: 10 !important;
        position: relative !important;
        pointer-events: auto !important;
    }

    /* Professional close bar styling - Ultra Compact */
    .mobile-overlay .close-bar {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        z-index: 100 !important;
        background: transparent !important;
        padding: 0.75rem 1rem !important;
        border-bottom: none !important;
        border: none !important;
        box-shadow: none !important;
        margin: 0 !important;
        min-height: auto !important;
        height: auto !important;
        width: calc(100% - 56px) !important;
        max-width: calc(100% - 56px) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        pointer-events: auto !important;
        box-sizing: border-box !important;
    }

    .mobile-overlay .close-bar .icon-button.-overlay-button {
        color: #191f23 !important;
        font-size: 1.1rem !important;
        padding: 0.35rem !important;
        border-radius: 50% !important;
        transition: all 0.3s ease !important;
        background-color: transparent !important;
        width: 1.75rem !important;
        height: 1.75rem !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
    }

    .mobile-overlay .close-bar .icon-button.-overlay-button:hover,
    .mobile-overlay .close-bar .icon-button.-overlay-button:focus {
        background-color: #f7931e !important;
        color: #fff !important;
        transform: rotate(90deg) !important;
    }
}

.header:not(.-sticky):not(.-mobile) .menu > li > a,
.header:not(.-sticky):not(.-mobile) .branding,
.header:not(.-sticky):not(.-mobile) .menu-optional > li > a,
.header:not(.-sticky):not(.-mobile) .menu-blank,
.header:not(.-sticky) .cart-button-total,
.header:not(.-sticky) .icon-button:not(.-reset):not(.-overlay-button),
.header:not(.-sticky) .lang-dropdown,
.header:not(.-sticky) .language-switcher .lang-current,
.header:not(.-sticky) .language-switcher .lang-code {
    color: #ffffff !important;
}

#masthead.header:not(.-sticky) {
    background-color: #1a1a1a;
}

.-sticky .menu,
.-sticky .branding,
.-sticky .menu-optional .cart-button-total,
.-sticky .cart-button .icon-button:not(.-small),
.-sticky .icon-button:not(.-small) {
    color: #ffffff;
}

#masthead.header.-sticky {
    background-color: #1a1a1a;
}

.header,
.header:not(.-mobile).header-5,
.header:not(.-mobile).header-6,
.header:not(.-mobile).header-7 {
    border: none;
}

.header.-sticky {
    border: none;
}

.btn-optional.button:not(.-outlined):not(.-text):not(.-flat):not(.-primary):not(.page-link):not(:hover) {
    background-color: #191f23;
}

.page-headline::after {
    background-color: transparent;
}

.header-wrap.page-container {
    max-width: 1300px;
}

/* Hide desktop menu on mobile */
.header.-mobile .nav.with-mobile-menu #menu-primary {
    display: none !important;
}

/* Hide mobile menu list by default */
.header.-mobile .nav.with-mobile-menu #mobile-menu {
    display: none !important;
}

/* Show mobile menu list when active */
body.mobile-menu-open .header.-mobile .nav.with-mobile-menu #mobile-menu,
body.mobile-menu-active .header.-mobile .nav.with-mobile-menu #mobile-menu {
    display: block !important;
}

/* Mobile menu - Professional Styling */
#mobile-menu {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

#mobile-menu > li {
    border-bottom: 1px solid #e5e5e5 !important;
    margin: 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

#mobile-menu > li:first-child {
    margin-top: 0 !important;
}

#mobile-menu > li:last-child {
    border-bottom: none !important;
}

#mobile-menu .menu-link {
    display: block !important;
    padding: 1rem 1.5rem !important;
    color: #191f23 !important;
    text-decoration: none !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
    border-left: 3px solid transparent !important;
    position: relative !important;
    z-index: 2 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
}

#mobile-menu .menu-link:hover,
#mobile-menu .menu-link:focus {
    background-color: #f8f9fa !important;
    color: #f7931e !important;
    border-left-color: #f7931e !important;
    padding-left: 1.75rem !important;
}

#mobile-menu .current-menu-item > .menu-link {
    background-color: #fff5e6 !important;
    color: #f7931e !important;
    border-left-color: #f7931e !important;
    font-weight: 600 !important;
}

/* Mobile menu dropdown styles - Override any mega menu styles */
#mobile-menu li.menu-item-has-children > ul.sub-menu,
#mobile-menu li.menu-item-has-children > ul.sub-menu-wide {
    max-height: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease !important;
    opacity: 0 !important;
    visibility: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    min-width: auto !important;
    max-width: 100% !important;
    background-color: #f8f9fa !important;
    border-top: 1px solid #e5e5e5 !important;
}

#mobile-menu li.menu-item-has-children > ul.sub-menu.active,
#mobile-menu li.menu-item-has-children > ul.sub-menu-wide.active {
    max-height: 2000px !important;
    height: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    padding: 0.5rem 0 !important;
    margin: 0 !important;
    display: block !important;
}

/* Nested submenus (3rd level) - Professional Styling */
#mobile-menu li.menu-item-depth-1 {
    border-bottom: 1px solid #e8e8e8 !important;
    margin: 0 !important;
}

#mobile-menu li.menu-item-depth-1:last-child {
    border-bottom: none !important;
}

#mobile-menu li.menu-item-depth-1 > .menu-link {
    padding: 0.875rem 1.5rem 0.875rem 2.5rem !important;
    font-size: 0.95rem !important;
    font-weight: 400 !important;
    color: #555 !important;
    background-color: transparent !important;
    border-left: 2px solid transparent !important;
}

#mobile-menu li.menu-item-depth-1 > .menu-link:hover,
#mobile-menu li.menu-item-depth-1 > .menu-link:focus {
    background-color: #f0f0f0 !important;
    color: #f7931e !important;
    border-left-color: #f7931e !important;
    padding-left: 2.75rem !important;
}

#mobile-menu li.menu-item-depth-1.menu-item-has-children > ul.sub-menu {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease !important;
    opacity: 0 !important;
    visibility: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    background-color: #f5f5f5 !important;
}

#mobile-menu li.menu-item-depth-1.menu-item-has-children > ul.sub-menu.active {
    max-height: 1000px !important;
    opacity: 1 !important;
    visibility: visible !important;
    padding: 0.25rem 0 !important;
    margin: 0 !important;
}

#mobile-menu .menu-item-has-children > .menu-link {
    position: relative !important;
    cursor: pointer !important;
    padding-right: 3rem !important;
}

#mobile-menu .has-submenu-icon {
    position: absolute !important;
    right: 1rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    transition: transform 0.3s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2rem !important;
    height: 2rem !important;
    pointer-events: auto !important;
    z-index: 10 !important;
    color: #666 !important;
    background-color: #f0f0f0 !important;
    border-radius: 50% !important;
    cursor: pointer !important;
}

/* Fallback chevron (always visible as backup) */
#mobile-menu .has-submenu-icon .chevron-fallback {
    display: none !important;
    font-size: 0.7rem !important;
    color: #191f23 !important;
    opacity: 1 !important;
    visibility: visible !important;
    line-height: 1 !important;
    margin-left: 0.25rem !important;
    position: relative !important;
}

/* Ensure icon is visible */
#mobile-menu .has-submenu-icon i.ion-md-chevron-down {
    display: inline-block !important;
    font-size: 1.2rem !important;
    color: #191f23 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Hide fallback when icon is visible */
#mobile-menu .has-submenu-icon i.ion-md-chevron-down:not([style*="display: none"]) + .chevron-fallback,
#mobile-menu .has-submenu-icon i.ion-md-chevron-down:not([style*="display: none"]) ~ .chevron-fallback {
    display: none !important;
}

#mobile-menu .menu-item-has-children.active > .menu-link .has-submenu-icon {
    transform: translateY(-50%) rotate(180deg) !important;
    background-color: #f7931e !important;
    color: #fff !important;
}

#mobile-menu .menu-item-has-children > .menu-link:hover .has-submenu-icon,
#mobile-menu .menu-item-has-children > .menu-link:focus .has-submenu-icon {
    background-color: #f7931e !important;
    color: #fff !important;
}

#mobile-menu .menu-item-depth-2 {
    border-bottom: 1px solid #ededed !important;
    margin: 0 !important;
}

#mobile-menu .menu-item-depth-2:last-child {
    border-bottom: none !important;
}

#mobile-menu .menu-item-depth-2 > .menu-link {
    padding: 0.75rem 1.5rem 0.75rem 3.5rem !important;
    font-size: 0.9rem !important;
    font-weight: 400 !important;
    color: #777 !important;
    background-color: transparent !important;
    border-left: 2px solid transparent !important;
}

#mobile-menu .menu-item-depth-2 > .menu-link:hover,
#mobile-menu .menu-item-depth-2 > .menu-link:focus {
    background-color: #f0f0f0 !important;
    color: #f7931e !important;
    border-left-color: #f7931e !important;
    padding-left: 3.75rem !important;
}


#mobile-menu .has-submenu-icon .icon,
#mobile-menu .has-submenu-icon i {
    display: inline-block !important;
    font-size: 1.2rem !important;
    color: #191f23 !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-style: normal !important;
    font-weight: normal !important;
    line-height: 1 !important;
}

#mobile-menu .has-submenu-icon .menu-chevron,
#mobile-menu .has-submenu-icon .icon.menu-chevron,
#mobile-menu .has-submenu-icon i.menu-chevron {
    display: inline-block !important;
    font-size: 1.2rem !important;
    color: #191f23 !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-style: normal !important;
    font-weight: normal !important;
    line-height: 1 !important;
}

/* Ensure ionicons are visible */
#mobile-menu .has-submenu-icon i,
#mobile-menu .has-submenu-icon .icon,
#mobile-menu .has-submenu-icon .menu-chevron,
#mobile-menu .has-submenu-icon .ion,
#mobile-menu .has-submenu-icon .ion-md-chevron-down {
    display: inline-block !important;
    font-size: 1.2rem !important;
    color: #191f23 !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-style: normal !important;
    font-weight: normal !important;
    line-height: 1 !important;
    width: auto !important;
    height: auto !important;
}

/* Ionicons chevron-down icon */
#mobile-menu .has-submenu-icon .ion-md-chevron-down::before {
    content: "\f3d0" !important;
    font-family: "Ionicons" !important;
    display: inline-block !important;
    font-size: 1.2rem !important;
    color: #191f23 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Alternative: Use Unicode character if Ionicons font not loaded */
#mobile-menu .has-submenu-icon .ion-md-chevron-down:not([class*="ion-"])::before {
    content: "▼" !important;
    font-family: Arial, sans-serif !important;
    display: inline-block !important;
    font-size: 0.8rem !important;
    color: #191f23 !important;
}

#mobile-menu li.menu-item-has-children.active > .menu-link .has-submenu-icon {
    transform: translateY(-50%) rotate(180deg) !important;
}

/* Language Switcher Styles - Match menu style */
.language-switcher {
    display: inline-flex !important;
    align-items: center !important;
    margin-right: 1rem !important;
    vertical-align: middle !important;
    position: relative !important;
    z-index: 100 !important;
}

/* Hide mobile language switcher on desktop - override Visual Composer classes */
@media (min-width: 768px) {
    .language-switcher-mobile,
    .language-switcher-mobile.vc_visible-sm,
    .language-switcher-mobile.vc_visible-xs {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }
    
    .header .right-part > .language-switcher:not(.language-switcher-mobile) {
        display: inline-flex !important;
    }
}

/* Hide desktop language switcher on mobile */
@media (max-width: 767px) {
    .header .right-part > .language-switcher:not(.language-switcher-mobile) {
        display: none !important;
    }
}

.language-switcher .lang-selector {
    position: relative !important;
}

/* Language switcher - match menu link style exactly */
.header:not(.-mobile) .right-part .language-switcher .lang-current,
.header .right-part .language-switcher:not(.language-switcher-mobile) .lang-current {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
    font-family: 'DM Sans', sans-serif !important;
    border: none !important;
    border-radius: 0 !important;
    transition: all 0.3s ease !important;
    background-color: transparent !important;
    min-width: auto !important;
    text-align: center !important;
    cursor: pointer !important;
    gap: 0.5rem !important;
    line-height: 1.5 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.header:not(.-mobile) .right-part .language-switcher .lang-current:hover,
.header .right-part .language-switcher:not(.language-switcher-mobile) .lang-current:hover {
    color: #ffffff !important;
    opacity: 0.8 !important;
}

.header:not(.-mobile) .right-part .language-switcher .lang-current .icon,
.header .right-part .language-switcher:not(.language-switcher-mobile) .lang-current .icon {
    font-size: 0.875rem !important;
    transition: transform 0.3s ease !important;
    color: #ffffff !important;
    margin-left: 0.25rem !important;
}

.header:not(.-mobile) .right-part .language-switcher .lang-selector.active .lang-current .icon,
.header .right-part .language-switcher:not(.language-switcher-mobile) .lang-selector.active .lang-current .icon {
    transform: rotate(180deg) !important;
}

.header:not(.-mobile) .right-part .language-switcher .lang-code,
.header .right-part .language-switcher:not(.language-switcher-mobile) .lang-code {
    display: inline-block !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    color: #ffffff !important;
}

.language-switcher .lang-dropdown {
    position: absolute !important;
    top: calc(100% + 0.5rem) !important;
    right: 0 !important;
    min-width: 160px !important;
    background: linear-gradient(135deg, #ffffff 0%, #fafafa 100%) !important;
    border: 1px solid rgba(247, 147, 30, 0.2) !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
    list-style: none !important;
    padding: 0.5rem 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(-10px) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 10000 !important;
    pointer-events: none !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
}

.language-switcher .lang-selector.active .lang-dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}

.language-switcher .lang-selector.active .lang-dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.language-switcher .lang-dropdown li {
    margin: 0 !important;
    padding: 0 !important;
}

.language-switcher .lang-dropdown .lang-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0.875rem 1.25rem !important;
    color: #191f23 !important;
    text-decoration: none !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
    font-family: 'DM Sans', sans-serif !important;
    transition: all 0.3s ease !important;
    gap: 0.75rem !important;
    border-radius: 0 !important;
    margin: 0.125rem 0.5rem !important;
    border-radius: 6px !important;
}

.language-switcher .lang-dropdown .lang-link:hover {
    background: linear-gradient(135deg, rgba(247, 147, 30, 0.1) 0%, rgba(247, 147, 30, 0.15) 100%) !important;
    color: #f7931e !important;
    transform: translateX(4px) !important;
    box-shadow: 0 2px 8px rgba(247, 147, 30, 0.15) !important;
}

.language-switcher .lang-dropdown .lang-link.active {
    background: linear-gradient(135deg, rgba(247, 147, 30, 0.15) 0%, rgba(247, 147, 30, 0.2) 100%) !important;
    color: #f7931e !important;
    font-weight: 600 !important;
    border-left: 3px solid #f7931e !important;
    padding-left: calc(1.25rem - 3px) !important;
}

.language-switcher .lang-dropdown .lang-name {
    display: inline-block !important;
    font-weight: 500 !important;
    color: inherit !important;
}

.language-switcher .lang-dropdown .lang-code {
    display: inline-block !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
    padding: 0.25rem 0.5rem !important;
    background: rgba(247, 147, 30, 0.1) !important;
    border-radius: 4px !important;
    color: #f7931e !important;
    min-width: 36px !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
}

.language-switcher .lang-dropdown .lang-link:hover .lang-code,
.language-switcher .lang-dropdown .lang-link.active .lang-code {
    background: rgba(247, 147, 30, 0.2) !important;
    transform: scale(1.05) !important;
}

/* Mobile Language Switcher */
.language-switcher-mobile {
    display: block !important;
    padding: 1rem !important;
    border-top: 1px solid rgba(25, 31, 35, 0.1) !important;
    margin-top: 1rem !important;
}

.language-switcher-mobile .lang-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0.75rem 1rem !important;
    color: #191f23 !important;
    text-decoration: none !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
    border: 1px solid rgba(25, 31, 35, 0.2) !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
    background-color: transparent !important;
}

.language-switcher-mobile .lang-link:hover {
    color: #5e1c1c !important;
    border-color: #5e1c1c !important;
    background-color: rgba(94, 28, 28, 0.05) !important;
}

.language-switcher-mobile .lang-label {
    display: inline-block !important;
    margin-right: 0.5rem !important;
}

.language-switcher-mobile .lang-code {
    display: inline-block !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
    padding: 0.25rem 0.5rem !important;
    background-color: rgba(94, 28, 28, 0.1) !important;
    border-radius: 3px !important;
    color: #5e1c1c !important;
}

/* Ensure hamburger button is visible on mobile */
.header.-mobile .mobile-hamburger {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Hide hamburger on desktop */
.header:not(.-mobile) .mobile-hamburger {
    display: none !important;
}

.spinner .path,
.sk-preloader .sk-circle:before,
.sk-folding-cube .sk-cube:before,
.sk-preloader .sk-child:before,
.sk-double-bounce .sk-child {
    stroke: #f7931e;
    background-color: #f7931e;
}

.sk-percentage .sk-percentage-percent {
    color: #f7931e;
}

.page-preloader:not(.percentage-preloader),
.page-preloader.percentage-preloader .sk-percentage {
    background-color: #1a1a1a;
}

/* Force hide preloader completely */
.page-preloader,
#page-preloader {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.site-footer {
    background-color: #ffffff;
}

.site-footer .widget-title,
.site-footer,
.site-footer h6,
.site-footer .widgets,
.site-footer .button,
.site-footer-copyright .holder {
    color: #191f23;
}

body {
    color: #191f23;
    font-family: 'Oswald', sans-serif;
}

/* Menu font - use DM Sans like original Ohio theme */
.header .menu,
.header .nav,
.header .menu-link,
.header .menu > li > a,
.header .nav-item > a,
.header .menu .sub-menu > li > a {
    font-family: "DM Sans", sans-serif !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.box-count,
.titles-typo,
.hamburger-nav .menu,
.btn,
.button:not(.-reset-color),
a.button:not(.-reset-color),
input[type="submit"],
a.btn-link,
.widget_shopping_cart_content .mini-cart-description .mini-cart-item-title > a,
.woo-c_product_name > a:not(.woo-c_product_category),
.socialbar.inline a,
.vc_row .vc-bg-side-text,
.counter-box-count {
    font-family: 'Oswald', sans-serif;
    color: #191f23;
}

h1 {
    font-size: 40px;
}

.subtitle-font,
.heading .subtitle,
.portfolio-item .subtitle-font,
.woocommerce ul.products li.product .subtitle-font.category,
.woocommerce ul.products li.product .subtitle-font.category > a,
.contact-form.classic input::-webkit-input-placeholder,
.contact-form.classic textarea::-webkit-input-placeholder,
input.classic::-webkit-input-placeholder,
input.classic::-moz-placeholder,
.contact-form.classic input::-moz-placeholder,
.contact-form.classic textarea::-moz-placeholder,
input.classic:-ms-input-placeholder,
.contact-form.classic input:-ms-input-placeholder,
.contact-form.classic textarea:-ms-input-placeholder {
    color: rgba(25, 31, 35, 0.8);
}

.popup-subscribe .thumbnail {
    background-image: url('../../img/wp-content/uploads/2019/11/oh__img100.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

@media screen and (min-width: 1181px) {
    .main-nav .nav-item a {
        padding: 0 2.24vw;
    }
}

/* Mega Menu Professional Styling */
.header:not(.-mobile) .menu > .nav-item.menu-item-has-children {
    position: static !important;
}

.header:not(.-mobile) .menu .sub-menu-wide {
    padding: 2.5rem 2rem !important;
    min-width: 800px !important;
    max-width: 1200px !important;
    top: 5.5rem !important;
    left: 50vw !important;
    transform: translateX(-50%) !important;
    -webkit-transform: translateX(-50%) !important;
    -ms-transform: translateX(-50%) !important;
    position: fixed !important;
    margin-left: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}

.header:not(.-mobile) .menu li:hover > .sub-menu-wide,
.header:not(.-mobile) .menu li.active > .sub-menu-wide {
    left: 50vw !important;
    transform: translateX(-50%) !important;
    -webkit-transform: translateX(-50%) !important;
    -ms-transform: translateX(-50%) !important;
    margin-left: 0 !important;
}

@media screen and (max-width: 1400px) {
    .header:not(.-mobile) .menu .sub-menu-wide {
        max-width: 90vw !important;
        min-width: 90vw !important;
    }
}

.header:not(.-mobile) .menu .sub-menu-wide > li {
    width: calc(25% - 1.5rem) !important;
    margin: 0 0.75rem !important;
    padding: 1rem 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    align-self: stretch !important;
    height: 100% !important;
    justify-content: flex-start !important;
}

.header:not(.-mobile) .menu .sub-menu-wide > li > a.menu-link {
    padding: 0 0 0.75rem 0 !important;
    margin-bottom: 1rem !important;
    border-bottom: 2px solid rgba(94, 28, 28, 0.2) !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    position: relative !important;
    flex-shrink: 0 !important;
    align-self: flex-start !important;
    box-sizing: border-box !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
}

.header:not(.-mobile) .menu .sub-menu-wide > li > a.menu-link::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background-color: rgba(94, 28, 28, 0.2) !important;
}

.header:not(.-mobile) .menu .sub-menu-wide > li > a.menu-link:hover::after {
    background-color: #5e1c1c !important;
}

.header:not(.-mobile) .menu .sub-menu-wide > li > a.menu-link:hover {
    border-bottom-color: #5e1c1c !important;
}

.header:not(.-mobile) .menu .sub-menu-wide .menu-item-title {
    display: block !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    color: #191f23 !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-bottom: 0.5rem !important;
    line-height: 1.4 !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    hyphens: auto !important;
    min-height: auto !important;
    height: auto !important;
    max-width: 100% !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    width: 100% !important;
}

.header:not(.-mobile) .menu .sub-menu-wide .menu-item-description {
    display: block !important;
    font-size: 0.85rem !important;
    color: #666 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-top: 0.25rem !important;
    padding-bottom: 0.75rem !important;
    font-weight: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    min-height: auto !important;
    height: auto !important;
    max-width: 100% !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    width: 100% !important;
    position: relative !important;
    top: 0 !important;
}

.header:not(.-mobile) .menu .sub-menu-wide ul.sub-menu {
    margin-top: 0.5rem !important;
    padding-top: 0.5rem !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.header:not(.-mobile) .menu .sub-menu-wide ul.sub-menu > li {
    margin: 0 !important;
    padding: 0.4rem 0 !important;
}

.header:not(.-mobile) .menu .sub-menu-wide ul.sub-menu > li > a {
    padding: 0.4rem 0 0.4rem 1.5rem !important;
    font-size: 0.9rem !important;
    color: #555 !important;
    transition: all 0.3s ease !important;
    position: relative !important;
}

.header:not(.-mobile) .menu .sub-menu-wide ul.sub-menu > li > a::before {
    content: "→" !important;
    position: absolute !important;
    left: 0 !important;
    color: #5e1c1c !important;
    font-size: 1rem !important;
    font-weight: bold !important;
    transition: transform 0.3s ease !important;
    opacity: 1 !important;
    display: inline-block !important;
}

.header:not(.-mobile) .menu .sub-menu-wide ul.sub-menu > li > a:hover {
    color: #5e1c1c !important;
    background: transparent !important;
    padding-left: 2rem !important;
}

.header:not(.-mobile) .menu .sub-menu-wide ul.sub-menu > li > a:hover::before {
    transform: translateX(0.3rem) !important;
}

/* Products page filter - Desktop: hide mobile elements */
.portfolio-filter-mobile-toggle,
.portfolio-filter-mobile-dropdown {
    display: none !important;
}

/* Products page filter - Mobile responsive with dropdown */
@media screen and (max-width: 768px) {
    .portfolio-filter {
        padding: 0 !important;
        margin-bottom: 1.5rem !important;
        overflow: visible !important;
        position: relative !important;
    }

    /* Hide desktop filter list on mobile */
    .portfolio-filter ul.portfolio-filter-desktop {
        display: none !important;
    }
    
    /* Show mobile elements */
    .portfolio-filter-mobile-toggle,
    .portfolio-filter-mobile-dropdown {
        display: block !important;
    }

    /* Mobile filter button */
    .portfolio-filter::before {
        content: '' !important;
    }

    /* Create mobile filter button wrapper */
    .portfolio-filter {
        position: relative !important;
    }

    /* Mobile filter toggle button */
    .portfolio-filter-mobile-toggle {
        display: block !important;
        width: 100% !important;
        padding: 0.875rem 1rem !important;
        background: linear-gradient(135deg, #f7931e 0%, #e6821a 100%) !important;
        color: #fff !important;
        border: none !important;
        border-radius: 8px !important;
        font-size: 1rem !important;
        font-weight: 600 !important;
        cursor: pointer !important;
        text-align: left !important;
        position: relative !important;
        box-shadow: 0 2px 8px rgba(247, 147, 30, 0.2) !important;
        transition: all 0.3s ease !important;
    }

    .portfolio-filter-mobile-toggle:hover {
        background: linear-gradient(135deg, #e6821a 0%, #d67315 100%) !important;
        box-shadow: 0 4px 12px rgba(247, 147, 30, 0.3) !important;
        transform: translateY(-1px) !important;
    }

    .portfolio-filter-mobile-toggle::after {
        content: '▼' !important;
        position: absolute !important;
        right: 1rem !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        font-size: 0.8rem !important;
        transition: transform 0.3s ease !important;
    }

    .portfolio-filter-mobile-toggle.active::after {
        transform: translateY(-50%) rotate(180deg) !important;
    }

    /* Mobile filter dropdown */
    .portfolio-filter-mobile-dropdown {
        display: none !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        background: #fff !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 8px !important;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1) !important;
        margin-top: 0.5rem !important;
        padding: 0.75rem !important;
        z-index: 100 !important;
        max-height: 70vh !important;
        overflow-y: auto !important;
    }

    .portfolio-filter-mobile-dropdown.active {
        display: block !important;
    }

    /* Filter items in dropdown */
    .portfolio-filter-mobile-dropdown ul {
        display: block !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .portfolio-filter-mobile-dropdown ul li {
        margin: 0 0 0.5rem 0 !important;
        padding: 0 !important;
    }

    .portfolio-filter-mobile-dropdown ul li:last-child {
        margin-bottom: 0 !important;
    }

    .portfolio-filter-mobile-dropdown ul li:first-child {
        display: none !important;
    }

    /* Hide separator items */
    .portfolio-filter-mobile-dropdown ul li:has-text('/') {
        display: none !important;
    }

    .portfolio-filter-mobile-dropdown ul li a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0.75rem 1rem !important;
        border-radius: 6px !important;
        background-color: #f8f9fa !important;
        color: #333 !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        font-size: 0.95rem !important;
    }

    .portfolio-filter-mobile-dropdown ul li a:hover {
        background-color: #f0f0f0 !important;
    }

    .portfolio-filter-mobile-dropdown ul li a.active {
        background-color: #f7931e !important;
        color: #fff !important;
        font-weight: 600 !important;
    }

    .portfolio-filter-mobile-dropdown ul li a .name {
        flex: 1 !important;
    }

    .portfolio-filter-mobile-dropdown ul li a .num {
        background-color: rgba(0, 0, 0, 0.15) !important;
        padding: 0.3rem 0.7rem !important;
        border-radius: 12px !important;
        font-size: 0.85rem !important;
        font-weight: 700 !important;
        margin-left: 0.75rem !important;
        color: #333 !important;
        min-width: 2.2rem !important;
        text-align: center !important;
        transition: all 0.2s ease !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
    }

    .portfolio-filter-mobile-dropdown ul li a:hover .num {
        background-color: rgba(247, 147, 30, 0.2) !important;
        color: #f7931e !important;
        box-shadow: 0 2px 4px rgba(247, 147, 30, 0.2) !important;
        transform: scale(1.05) !important;
    }

    .portfolio-filter-mobile-dropdown ul li a.active .num {
        background-color: rgba(255, 255, 255, 0.35) !important;
        color: #fff !important;
        font-weight: 700 !important;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15) !important;
    }

    .portfolio-filter-mobile-dropdown ul li a.active:hover .num {
        background-color: rgba(255, 255, 255, 0.45) !important;
        transform: scale(1.05) !important;
    }
}


