/* ===== Registrations Mega Menu CSS ===== */


.reg-mega-parent {
    position: static;
}

/* Registrations Mega Menu */
.reg-mega-menu-registrations {
    position: absolute;
    left: -300px;
    top: 100%;
    width: 1100px;
    background: #ffffff;
    padding: 20px 10px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 0.3s ease;
    z-index: 999;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

/* Hover Effect */
.reg-mega-parent:hover .reg-mega-menu-registrations {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* IP & Legal Mega Menu */
.reg-mega-menu-ip-legal {
    position: absolute;
    left: -170px;
    top: 100%;
    width: 510px;
    background: #ffffff;
    padding: 20px 10px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 0.3s ease;
    z-index: 999;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

/* Hover Effect */
.reg-mega-parent:hover .reg-mega-menu-ip-legal {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}



/* Fundraising Mega Menu */
.reg-mega-menu-fundraising {
    position: absolute;
    left: -350px;
    top: 100%;
    width: max-content;
    background: #ffffff;
    padding: 20px 10px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 0.3s ease;
    z-index: 999;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

/* Hover Effect */
.reg-mega-parent:hover .reg-mega-menu-fundraising {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* Virtual CFO Mega Menu */
.reg-mega-menu-virtual-cfo {
    position: absolute;
    left: -400px;
    top: 100%;
    width: 900px;
    background: #ffffff;
    padding: 20px 10px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 0.3s ease;
    z-index: 999;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

/* Hover Effect */
.reg-mega-parent:hover .reg-mega-menu-virtual-cfo {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* Virtual CFO Mega Menu */
.reg-mega-menu-it-services {
    position: absolute;
    left: -800px;
    top: 100%;
    width: 1200px;
    background: #ffffff;
    padding: 20px 10px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 0.3s ease;
    z-index: 999;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

/* Hover Effect */
.reg-mega-parent:hover .reg-mega-menu-it-services {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}



/* Title */
.reg-mega-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--primary-black-color);
    margin-bottom: 10px !important;
    position: relative;
}

.reg-mega-title::after {
    content: "";
    width: 40px;
    height: 2px;
    background: #0b2c5d;
    display: block;
    margin-top: 6px;
}

/* List */
.reg-mega-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.reg-mega-list li {
    margin-bottom: 15px !important;
    margin-left: 0px !important;
}

.reg-mega-list li a {
    color: #555 !important;
    font-size: 14px !important;
    text-decoration: none;
    transition: all 0.3s ease;
    padding: 0px !important;
    margin: 0px !important;
    text-wrap: nowrap !important;
}

.reg-mega-list li a:hover {
    color: var(--primary-black-color) !important;
    padding-left: 5px;
}

/* ================================
   MOBILE MEGA MENU FIX
================================ */

@media (max-width: 1199px) {

    /* Parent item */
    .reg-mega-parent {
        position: relative !important;
    }

    /* ALL mega menus common */
    .reg-mega-menu-registrations,
    .reg-mega-menu-ip-legal,
    .reg-mega-menu-fundraising,
    .reg-mega-menu-virtual-cfo,
    .reg-mega-menu-it-services {
        position: static !important;
        width: 100% !important;
        max-width: 100%;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        box-shadow: none !important;
        padding: 5px 0px;
        display: none; /* default closed */
        background: #fff;
    }

    /* Open state */
    .reg-mega-parent.active
    .reg-mega-menu-registrations,
    .reg-mega-parent.active
    .reg-mega-menu-ip-legal,
    .reg-mega-parent.active
    .reg-mega-menu-fundraising,
    .reg-mega-parent.active
    .reg-mega-menu-virtual-cfo,
    .reg-mega-parent.active
    .reg-mega-menu-it-services {
        display: block;
    }

    /* Remove bootstrap grid side by side */
    .reg-mega-menu-registrations .row,
    .reg-mega-menu-ip-legal .row,
    .reg-mega-menu-fundraising .row,
    .reg-mega-menu-virtual-cfo .row,
    .reg-mega-menu-it-services .row {
        flex-direction: column;
    }

    /* Force single column */
    .reg-mega-menu-registrations [class*="col-"],
    .reg-mega-menu-ip-legal [class*="col-"],
    .reg-mega-menu-fundraising [class*="col-"],
    .reg-mega-menu-virtual-cfo [class*="col-"],
    .reg-mega-menu-it-services [class*="col-"] {
        width: 100%;
        max-width: 100%;
        margin-bottom: 20px;
    }

    .reg-mega-list li a{
        padding-top: 5px !important;
        padding-bottom: 7px !important;
    }

    /* Titles spacing */
    .reg-mega-title {
        font-size: 15px;
        margin-bottom: 10px !important;
    }

    .reg-mega-list li {
        margin-bottom: 10px !important;
    }

    .reg-mega-list li a {
        font-size: 14px;
        /* white-space: normal !important; */
    }
}
