/*
* CT Dropdowns
* 
* @package WP Pro Real Estate 7
* @subpackage CSS
*
*/

.ct-menu {
    font-size: 14px;
    z-index: 999;
    text-transform: capitalize;
}

    .ct-menu > li {
        display: flex;
        align-items: stretch;
        position: relative;
    }

        /* Hover bridge — keeps li:hover active while mouse crosses the gap */
        .ct-menu > li::after {
            content: '';
            position: absolute;
            bottom: -8px;
            left: 0;
            right: 0;
            height: 8px;
        }

        .ct-menu > li > a {
            display: flex;
            align-items: center;
            text-align: center;
            height: 100%;
            margin: 0;
            padding: 0 20px;
            color: #b9bfc6;
            z-index: 0;
            border-top: 3px solid transparent;
            border-bottom: 3px solid transparent;
            transition: all 0.2s ease;
        }

            .header-style-three .ct-menu > li > a {
                padding: 0 15px;
            }

            #nav-full-width .ct-menu > li > a {
                margin: 0;
                padding: 0 20px;
                color: #fff;
            }
                #nav-full-width nav > ul.ct-menu > li:hover > a,
                #nav-full-width .ct-menu li.current-menu-item > a,
                #nav-full-width .ct-menu li.current_page_parent > a,
                #nav-full-width .ct-menu li.current-menu-ancestor > a { color: #fff; opacity: 0.85; }

                .ct-menu > li.btn-outline > a {
                    height: auto;
                    padding: 6px 14px;
                    border-radius: 6px;
                    border: 1px solid #03b5c3;
                    color: #03b5c3;
                    align-self: center;
                }

.ct-menu li.current-menu-item > a,
.ct-menu li.current_page_parent > a {
    color: #03b5c3;
}
    .header-style-three .ct-menu li.current-menu-item > a,
    .header-style-three .ct-menu li.current_page_parent > a { color: #03b5c3; }

    .ct-menu li#menu-item-665 a,
    .ct-menu li.current_page_parent#menu-item-665 a {
        background: none;
        border-radius: 0;
    }

        .ctmenu.current_page_parent li.current_menu_item {
            border-bottom-color: #03b5c3;
        }

        /* Sub Menu */
        .ct-menu > li > .sub-menu {
            margin-top: 8px;
        }

        .ct-menu .sub-menu {
            position: absolute;
            top: 100%;
            left: 0;
            display: none;
            padding: 4px 0;
            font-size: 14px;
            text-align: left;
            z-index: 999999;
            border-radius: 10px;
            overflow: hidden;
            background: #fff;
            box-shadow: 0 2px 8px rgba(15,23,42,0.10), 0 8px 24px rgba(15,23,42,0.07);
        }

            nav ul.ct-menu .sub-menu li {
                position: relative;
            }

                nav ul.ct-menu > li:not(.multicolumn) .sub-menu li.menu-item-has-children:hover > ul.sub-menu {
                    left: 192px;
                    right: auto;
                    top: 0;
                    padding-right: 0;
                    padding-left: 5px;
                    background: transparent;
                    box-shadow: 6px 6px 3px -5px rgba(0,0,0,0.15);
                }

                    nav.right ul.ct-menu > li:not(.multicolumn) .sub-menu li.menu-item-has-children:hover > ul.sub-menu {
                        left: -197px;
                        top: 0;
                        padding-right: 5px;
                        padding-left: 0;
                        background: transparent;
                        box-shadow: -6px 6px 3px -5px rgba(0,0,0,0.15);
                    }

                        nav ul.ct-menu > li:not(.multicolumn) .sub-menu li.menu-item-has-children > ul.sub-menu li > a {
                            border-right: 1px solid rgba(0,0,0,0.15);
                            border-left: 1px solid rgba(0,0,0,0.15);
                        }

                                nav ul.ct-menu li:hover > .sub-menu,
                                nav ul.ct-menu li:focus-within > .sub-menu {
                                    display: block;
                                    margin-left: 0;
                                }

                                    nav ul.ct-menu > li.multicolumn {
                                        position: static;
                                    }

                                        nav ul.ct-menu > li.multicolumn:hover .sub-menu,
                                        nav ul.ct-menu > li.multicolumn:focus-within .sub-menu {
                                            display: block;
                                            margin-left: 0;
                                        }

/* Touch open support */
nav ul.ct-menu li.ct-touch-open > .sub-menu {
    display: block;
}

/* Menu Ancestor Current State */
nav > ul.ct-menu > li:hover > a,
.ct-menu li.current-menu-item > a,
.ct-menu li.current-menu-ancestor > a {
    color: #03b5c3;
}
    .header-style-three nav > ul.ct-menu > li:hover > a,
    .header-style-three .ct-menu li.current-menu-item > a,
    .header-style-three .ct-menu li.current-menu-ancestor > a { color: #03b5c3; }

    nav ul.ct-menu .sub-menu li:hover > a,
    .ct-menu .sub-menu li.current-menu-ancestor > a,
    .ct-menu .sub-menu li.current-menu-parent > a,
    .ct-menu .sub-menu li.current-menu-item > a {
        background: rgba(255,255,255,0.07);
        border-radius: 6px;
        margin: 2px 6px;
        padding: 10px 14px;
        color: #fff;
        font-weight: 400;
        transition: background 0.15s ease;
    }

/* Mega Menu */

.ct-menu .multicolumn > .sub-menu {
    width: 100%;
    left: 0;
    display: flex;
    flex-wrap: wrap;
    padding: 8px 1% 24px 1%;
    background: #29333d;
}

    #nav-full-width .ct-menu .multicolumn > .sub-menu {
        max-width: 1100px;
        margin: 0 auto;
    }

        #nav-full-width nav {
            position: relative;
        }

            .ct-menu .multicolumn > .sub-menu > li {
                display: block;
            }

                .ct-menu .multicolumn .col-title {
                    color: rgba(255,255,255,0.4);
                    padding: 24px 2% 0 2%;
                    border-bottom: none;
                    font-size: 0.6rem;
                    font-weight: 700;
                    letter-spacing: 2px;
                    text-transform: uppercase;
                }

                    .ct-menu .multicolumn .sub-menu .sub-menu {
                        position: relative;
                        margin-top: 15px;
                    }

                        .ct-menu .multicolumn-2 .sub-menu > li { width: 50%; }
                            .ct-menu .multicolumn-3 .sub-menu > li { width: 33.33%; }
                                .ct-menu .multicolumn-4 .sub-menu > li { width: 25%; }
                                    .ct-menu .multicolumn-5 .sub-menu > li { width: 20%; }
                                        .ct-menu .multicolumn-6 .sub-menu > li { width: 16.667%; }

                                            .ct-menu .multicolumn .sub-menu li li { width: 100% !important; }

                                                .ct-menu .multicolumn .sub-menu li .sub-menu li a {
                                                    margin: 0;
                                                    padding-left: 2%;
                                                    font-weight: 400;
                                                }

                                                    .ct-menu .multicolumn .sub-menu li .sub-menu li:last-child a {
                                                        border-bottom: none;
                                                    }

                                                        .ct-menu .sub-menu > .sub-menu {
                                                            right: 18em !important;
                                                        }

                                                            .ct-menu .sub-menu > li {
                                                                display: block;
                                                                width: 16em;
                                                                line-height: normal;
                                                                background: #29333d;
                                                            }

                                                                .ct-menu .multicolumn .sub-menu > li {
                                                                    float: left;
                                                                }

                                                                    .ct-menu .sub-menu > li i {
                                                                        display: none;
                                                                    }

                                                                        .ct-menu .sub-menu > li > a {
                                                                            padding: 10px 14px;
                                                                            margin: 2px 6px;
                                                                            display: block;
                                                                            color: #fff;
                                                                            font-size: 13px;
                                                                            border-bottom: 1px solid rgba(255,255,255,0.06);
                                                                            transition: background 0.15s ease, padding-left 0.15s ease;
                                                                        }

                                                                            .ct-menu .sub-menu > li:last-child,
                                                                            .ct-menu .sub-menu > li:last-child > a { border-bottom: none; }

                                                                        .ct-menu .sub-menu > li > a:hover {
                                                                            background: rgba(255,255,255,0.07);
                                                                            border-radius: 6px;
                                                                            cursor: pointer;
                                                                        }

                                                                            .ct-menu .multicolumn .sub-menu > li > a:hover {
                                                                                padding-left: 6% !important;
                                                                            }
