:root {
    --plugin-default-color: #0f3d4a;
    --header-height: 72px;
    --transition-speed: 0.3s;
    --overlay-bg: rgba(0, 0, 0, 0.5);
}

/* ===============================
   BASE STYLES & RESET
   =============================== */
.sitsel-mega-menu-widget {
    position: relative;
}

/*.sitsel-mega-menu-main {*/
/*    position: relative;*/
/*    z-index: 1000;*/
/*}*/


li.sits-menu-item:not(.sitsel-has-children) {
    position: static;
    list-style: none;
}

.sitsel-mega-template {
    padding: 20px;
}

.sitsel-mega-template img,
.sitsel-mega-template svg {
    max-width: 100%;
    height: auto;
}

.sitsel-mega-template .elementor-widget-wrap {
    padding: 0;
}

/* ===============================
   MENU LAYOUT
   =============================== */
.sitsel-mega-menu-main {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
}

.sitsel-mega-menu-main[data-layout="horizontal"] {
    flex-wrap: wrap;
}

.sitsel-mega-menu-main[data-layout="vertical"] {
    flex-direction: column;
}

.sitsel-mega-menu-main[data-layout="vertical"] .sits-menu-item {
    display: block;
    margin-bottom: 0;
}

/* ===============================
   MENU ALIGNMENT (Desktop)
   =============================== */
.sitsel-mega-menu-widget:not(.sitsel-mobile-version) .sitsel-mega-menu-main[data-align="left"] {
    align-items: flex-start;
    justify-content: flex-start;
}

.sitsel-mega-menu-widget:not(.sitsel-mobile-version) .sitsel-mega-menu-main[data-align="center"] {
    align-items: center;
    justify-content: center;
}

.sitsel-mega-menu-widget:not(.sitsel-mobile-version) .sitsel-mega-menu-main[data-align="right"] {
    align-items: flex-end;
    justify-content: flex-end;
}
.sitsel-mega-menu-widget:not(.sitsel-mobile-version) .sitsel-mega-menu-main[data-layout="vertical"][data-align="center"] .sits-menu-item > a{
    justify-content:center;
}

.sitsel-mega-menu-widget:not(.sitsel-mobile-version) .sitsel-mega-menu-main[data-layout="vertical"][data-align="right"] .sits-menu-item > a{
    justify-content:end;
}





/* ===============================
   MENU ITEMS
   =============================== */
.sitsel-mega-menu-widget[data-mobile-breakpoint="0"] .sitsel-mega-menu-main > .sits-menu-item > a {
    min-height: 100% !important;
}

.sitsel-mega-menu-widget:not(.sitsel-mobile-version) .sitsel-mega-menu-main > .sits-menu-item > a {
    display: flex;
    /*justify-content: center;*/
    align-items: center;
    vertical-align: middle;
}

.sits-menu-item a {
    display: flex;
    width: 100%;
}

/* ===============================
   SUBMENU BASE
   =============================== */
.sitsel-mega-menu-widget:not(.sitsel-mobile-version) li.sits-menu-item.sitsel-has-children {
    position: relative !important;
    list-style: none;
}

 .sitsel-sub-menu {
     list-style:none;
    padding: 0;
    display: none;
    background: #fff;
    z-index: 9999;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.sitsel-has-children.sitsel-sub-open > .sitsel-sub-menu {
    display: block;
    opacity: 1;
}
/*li.sits-menu-item{*/
/*    display:flex;*/
/*}*/
/*li.sits-menu-item> a{*/
/*    width:100%;*/
/*}*/
/* Mega menu styling */
.sitsel-sub-menu .sitsel-mega-sub-menu{
    display:none;
}
.sitsel-mega-open > .sitsel-mega-sub-menu {
    display: block;
    opacity: 1;
}

.sitsel-mega-menu-main[data-layout="horizontal"] .sitsel-has-children > .sitsel-sub-menu {
    list-style: none;
    padding: 0;
    /*min-width: 100%;*/
    min-width: 10em;
}

/* Desktop first-level submenu positioning */
.sitsel-mega-menu-widget:not(.sitsel-mobile-version) .sitsel-mega-menu-main > .sits-menu-item > .sitsel-sub-menu {
    position: absolute;
}

/* ===============================
   SUBMENU ICON
   =============================== */
.sitsel-submenu-icon {
    display: inline-block;
    margin-left: 6px;
    vertical-align: middle;
    transition: transform var(--transition-speed) ease;
}

.sitsel-submenu-icon svg {
    vertical-align: middle;
}

/* ===============================
   HOVER EFFECTS
   =============================== */
.sitsel-mega-menu-widget[data-hover-effect="underline"] .sitsel-mega-menu-main  a {
    position: relative;
}

.sitsel-mega-menu-widget[data-hover-effect="underline"] .sitsel-mega-menu-main .sits-menu-item > a:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 0;
    background: currentColor;
    transition: width 0.2s ease-in-out;
}

.sitsel-mega-menu-widget[data-hover-effect="underline"] .sitsel-mega-menu-main .sits-menu-item a:hover:after {
    width: 100%;
}

.sitsel-mega-menu-widget[data-hover-effect="grow"] .sitsel-mega-menu-main .sits-menu-item a {
    transition: transform 0.18s ease;
    display: inline-block;
}

.sitsel-mega-menu-widget[data-hover-effect="grow"] .sitsel-mega-menu-main .sits-menu-item a:hover {
    transform: scale(1.05);
}

/* ===============================
   MOBILE TOGGLE BUTTON
   =============================== */
.sitsel-mobile-version .sitsel-mega-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: transparent;
    border: none;
    position: relative;
    z-index: 99999;
    margin-left: auto;
}

.sitsel-mega-menu-toggle i,
.sitsel-mega-menu-toggle svg {
    display: inline-block;
}

/* ===============================
   MOBILE MENU CONTAINER
   =============================== */
.sitsel-mega-menu-widget.sitsel-mm-mobile {
    display: flex;
}



.sitsel-mega-menu-widget.sitsel-mm-mobile .sitsel-mega-menu-main-wrapper {
    display: none;
    visibility: hidden;
    opacity: 0;
    max-height: 80vh;
    overflow-x: hidden;
    overflow-y: auto;
    transition: transform var(--transition-speed) ease-in-out, opacity var(--transition-speed) ease-in-out;
}

.sitsel-mega-menu-widget.sitsel-mm-mobile .sitsel-mega-menu-main {
    flex-direction: column;
}

.sitsel-mega-menu-widget.sitsel-mm-open .sitsel-mega-menu-main {
    display: flex !important;
}

.sitsel-mobile-version .sitsel-mega-menu-main > li.sits-menu-item {
    width: 100%;
}

/* ===============================
   MOBILE DROPDOWN STYLE
   =============================== */
/*.sitsel-mega-menu-widget.sitsel-mm-mobile.sitsel-mm-open .sitsel-mega-menu-main-wrapper {*/
/*    display: block;*/
/*    visibility: visible;*/
/*    opacity: 1;*/
/*}*/

/* ===============================
   MOBILE OFF-CANVAS STYLE
   =============================== */
.sitsel-mega-menu-widget.sitsel-mm-offcanvas.sitsel-mobile-version .sitsel-mega-menu-main-wrapper {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    padding: 20px;
    transform: translateX(-100%);
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 99998;
    transition: transform var(--transition-speed) ease-in-out, opacity var(--transition-speed) ease-in-out;
}

.sitsel-mega-menu-widget.sitsel-mm-offcanvas-open.sitsel-mobile-version .sitsel-mega-menu-main-wrapper {
    max-height: 100vh;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateX(0);
}

/* Off-canvas overlay */
/*.sitsel-mega-menu-widget.sitsel-mm-offcanvas-open::after {*/
/*    content: '';*/
/*    position: fixed;*/
/*    top: 0;*/
/*    left: 0;*/
/*    right: 0;*/
/*    bottom: 0;*/
/*    background: var(--overlay-bg);*/
/*    z-index: 99997;*/
/*    animation: fadeIn 0.3s ease;*/
/*}*/

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* ===============================
   MOBILE TEMPLATE
   =============================== */
.sitsel-mobile-template {
    visibility: hidden;
    opacity: 0;
    z-index: 2;
    transition: transform var(--transition-speed) ease-in-out, opacity 0.2s ease;
    display: none;
}

.sitsel-mobile-version .sitsel-mobile-template {
    display: block !important;
}

.sitsel-mobile-link {
    cursor: default;
    color: inherit;
    text-decoration: none;
    display: inline;
}

.sitsel-mobile-template-open > a {
    font-weight: 600;
}

/* ===============================
   BACK BUTTONS
   =============================== */
.sitsel-mobile-back,
.sitsel-mobile-version .sitsel-mobile-back-submenu {
    display: block;
    margin-bottom: 10px;
    cursor: pointer;
    text-align: left;
    border: none;
    /*background: transparent;*/
    padding: 10px;
    width: 100%;
}

.sitsel-mobile-back-submenu {
    display: none;
}

/* ===============================
   MOBILE BACK MODE
   =============================== */
.sitsel-mobile-back-mode .sits-menu-item > .sitsel-sub-menu,
.sitsel-mobile-back-mode ul.sitsel-mega-menu-main > .sits-menu-item .sitsel-sub-menu {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translateX(100%);
    transition: transform 0.32s ease-in-out, opacity 0.2s ease;
    overflow-x: hidden;
}

.sitsel-mobile-back-mode li.sits-menu-item .sitsel-mobile-template.sitsel-mobile-transform {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 10px;
    min-height:100%;
    height: auto;
    transform: translateX(100%);
    transition: transform 0.32s ease-in-out, opacity 0.2s ease;
}

.sitsel-mobile-back-mode.sitsel-mm-offcanvas-open::after {
    background: rgba(0, 0, 0, 0.774);
}

/* ===============================
   MOBILE DEFAULT MODE
   =============================== */
.sitsel-mobile-version.sitsel-mobile-default-mode .sitsel-sub-menu {
    position: relative;
    width: 100%;
    transition: opacity 0.2s ease;
}

/* ===============================
   RESPONSIVE UTILITIES
   =============================== */
@media (max-width: 768px) {
   
    
    .sitsel-mega-menu-widget.sitsel-mm-mobile .sitsel-mega-menu-main-wrapper {
        max-height: 70vh;
    }
}

/* ===============================
   ACCESSIBILITY
   =============================== */
/*.sitsel-mega-menu-widget a:focus,*/
/*.sitsel-mega-menu-toggle:focus,*/
/*.sitsel-mobile-back:focus,*/
/*.sitsel-mobile-back-submenu:focus {*/
/*    outline: 2px solid currentColor;*/
/*    outline-offset: 2px;*/
/*}*/

/* ===============================
   PRINT STYLES
   =============================== */
@media print {
    .sitsel-mega-menu-toggle {
        display: none !important;
    }
    
    .sitsel-mega-menu-main {
        display: block !important;
    }
}