// Navbar
.navbar {

    @include transition($transition-base);

    .nav-link {
        position: relative;
    }
}

// Navbar Dropdown

// Navbar dropdown


.navbar {
    .nav-link {
        padding-top: $navbar-nav-link-padding-y;
        padding-bottom: $navbar-nav-link-padding-y;
        font-weight: $navbar-nav-link-font-weight;
    }

    .dropdown-menu {
        min-width: $navbar-dropdown-menu-width;
        padding: $navbar-dropdown-padding-y $navbar-dropdown-padding-x;
        background-color: $navbar-dropdown-bg;
        border: $navbar-dropdown-border-width solid $navbar-dropdown-border-color;
        z-index: 1040;
        @include border-radius($navbar-dropdown-border-radius);
        box-shadow: $navbar-dropdown-box-shadow;

    }

    // Dropdown items

    .dropdown-header {
        padding: .5rem 0;
        color: $navbar-dropdown-heading-color;
    }

    .dropdown-item {
        padding: $navbar-dropdown-item-padding-y $navbar-dropdown-item-padding-x;
        color: $navbar-dropdown-link-color;
        font-size: $navbar-dropdown-link-font-size;

        &:first-child {
            @include border-top-radius($navbar-dropdown-border-radius);
        }

        &:last-child {
            @include border-bottom-radius($navbar-dropdown-border-radius);
        }

        &:hover,
        &.active,
        &:active {
            color: $navbar-dropdown-link-active-color;
            text-decoration: none;
            @include gradient-bg($navbar-dropdown-link-active-bg);
        }
    }

    // Dropdowm xl elements

    .dropdown-menu-xl,
    .dropdown-menu-lg {
        padding: 2rem 2.5rem;
        min-width: 20rem;

        .dropdown-header {
            padding-top: $navbar-dropdown-heading-padding-y;
            padding-bottom: $navbar-dropdown-heading-padding-y;
            color: theme-color("primary");
        }
    }
}

// Generate series of `.navbar-expand-*` responsive classes for configuring
// where your navbar collapses.

.navbar-expand {
    @each $breakpoint in map-keys($grid-breakpoints) {
        $next: breakpoint-next($breakpoint, $grid-breakpoints);
        $infix: breakpoint-infix($next, $grid-breakpoints);

        &#{$infix} {
            @include media-breakpoint-down($breakpoint) {

                .dropdown {
                    position: static;
                }

                .navbar-top {
                    .dropdown-menu {
                        position: absolute;
                    }
                }

                .navbar-collapse {
                    .dropdown-menu {
                        padding-left: 0;
                        padding-right: 0;
                        background: transparent;
                        @include border-radius(0);
                        box-shadow: none;

                        &.show {
                            border-bottom: 1px solid $navbar-dropdown-divider-bg;
                        }
                    }

                    .dropdown-menu-single {
                        padding-left: 1rem;
                        padding-top: 0;
                        padding-bottom: 0;
                        border-left: 3px solid theme-color("primary");

                    }

                    .dropdown-item {
                        position: relative;
                    }

                    .dropdown-img-left {
                        @include border-radius($dropdown-border-radius);
                    }

                    .dropdown-submenu {
                        .dropdown-menu {
                            padding-top: 0;
                            padding-bottom: 0;
                            padding-left: 1rem;
                        }

                        &.show {
                            .dropdown-toggle:after {
                                transform: rotate(90deg);
                                @include transition($transition-base);
                            }
                        }
                    }

                    .delimiter {
                        border-top: 1px solid $border-color;
                        padding-top: 2.5rem;
                    }

                    .navbar-btn {
                        width: 100%;
                        margin-top: 1rem;
                        padding: 1rem 1.75rem;
                        background-color: transparent;
                        color: theme-color("primary");
                        border: 0;
                        border-top: 1px solid $border-color;
                        @include border-top-radius(0);
                    }

                    .nav-item.dropdown {
                        .dropdown-toggle {
                            &.nav-link {
                                &:after {
                                    transform: rotate(-90deg);
                                    @include transition($transition-base);
                                }
                            }

                            &:after {
                                font-size: .75rem;
                                float: right;
                            }
                        }

                        &.show {
                            .dropdown-toggle {
                                &.nav-link {
                                    &:after {
                                        transform: rotate(0);
                                    }
                                }
                            }
                        }
                    }
                }
            }

            @include media-breakpoint-up($next) {
                .dropdown:not(.dropdown-submenu):not(.dropdown-fluid) {}


                .dropdown:not(.dropdown-submenu):not(.dropdown-fluid) {
                    >.dropdown-menu:not(.dropdown-menu-end) {
                        margin-left: -1rem;
                    }

                    >.dropdown-menu-end {
                        right: 0;
                    }
                }

                // Additional dropdown background

                .bg-dropdown-secondary {
                    background-color: darken($navbar-dropdown-bg, 2%);
                }


                // Dropdown submenu
                .dropdown-submenu {
                    .dropdown-menu {
                        left: 100%;
                        top: -1rem;
                        margin-left: 1rem;

                        &:before {
                            content: '';
                            border-left: 1.5rem solid transparent;
                            position: absolute;
                            left: -1rem;
                            top: 0;
                            height: 100%;
                        }
                    }

                    .dropdown-item {
                        &:after {
                            right: $navbar-dropdown-item-padding-x;
                        }
                    }
                }

                // Inner elements
                .dropdown-body {
                    padding: 1rem 2rem;
                }

                .delimiter {
                    border-right: 1px solid $border-color;
                }
            }
        }
    }
}

// Navbar search
.navbar-search {
    border-radius: 100px;
    display: flex;
    align-items: center;
    max-width: 100%;
    width: 340px;

    .form-control {
        padding: 1rem 1rem;
        border: 0;
        background-color: transparent;
    }

    .navbar-search-btn {
        color: $gray-500;
        margin-left: 1.5rem;

        svg {
            vertical-align: middle;
            position: relative;
            top: -1px;
        }
    }
}