/* * =================================================== * Navbar * =================================================== */ // SVG positioning and styling of the text to inherit // colour of the navbar .navbar-brand-svg { vertical-align: baseline; .navbar-brand-svg-text { fill: currentColor; } .text-primary { fill: theme-colors('primary'); } } // Absolutely position header, used on the homepage // w/ the image background behind it .header-absolute { position: absolute; top: 0; right: 0; left: 0; width: 100%; z-index: $zindex-fixed; } // Used for navbar w/ transparent background .bg-hover-white { @include simpleTransition; &:hover { background: $white !important; } } // Used for navbar w/ transparent background, when it gets // fixed, it gets also a white background .navbar.fixed-top.bg-fixed-white { background: $white !important; } .navbar { .nav-link { font-size: $navbar-link-size; font-weight: bold; &:focus { outline: none; } } .dropdown-toggle { &::after { position: absolute; width: 10px; height: 10px; margin-left: $caret-width; content: '\f107'; vertical-align: top; border: none; font-family: "Font Awesome\ 5 Free"; font-weight: 900; } } .dropdown-menu { min-width: 200px; margin-top: $navbar-padding-y; transition: transform .2s; transform: translateY(30px); color: #333; border: none; outline: none !important; font-size: 0.9rem; &::after { display: block; width: 0; height: 0; content: ''; border-right: 7px solid transparent; border-bottom: 7px solid #fff; border-left: 7px solid transparent; @include position(absolute, -5px, $left: 30px); } &::before { display: block; width: 0; height: 0; content: ''; border-right: 7px solid transparent; border-bottom: 8px solid #f1f1f1; border-left: 7px solid transparent; @include position(absolute, -8px, $left: 30px); } &.dropdown-menu-right { &::after { @include position(absolute, -5px, $right: 30px, $left: auto); } &::before { @include position(absolute, -8px, $right: 30px, $left: auto); } } } /* align with the navbar bottom */ .megamenu { margin-top: 0px; } } /* * =================================================== * Megamenu * =================================================== */ .megamenu { overflow: hidden; width: 100%; border: none !important; border-radius: 0; z-index: 9999; .megamenu-list { margin-bottom: 1.5rem; padding: 0; font-size: 0.8rem; } .megamenu-list-item { margin-bottom: 5px; } .megamenu-list-link { padding: 5px 0; text-decoration: none; color: $gray-600; &:hover { color: $gray-900; background: none; } } .megamenu-services { padding-top: 1rem; padding-bottom: 1rem; background: $gray-100; .megamenu-services-item { display: flex; margin-top: 1rem; margin-bottom: 1rem; align-items: center; } .megamenu-services-icon { width: 30px; height: 30px; margin-right: 1rem; flex-shrink: 0; } } } // Dropdown menus in navbar offset from the top // and also setting the max-height for the sticky navbar's menu // and white bg for collapsed transparent navbars .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-menu { margin-top: 0; transition: transform .1s; transform: translateY(0); border: none; box-shadow: none; &:before, &:after { display: none; } } &.navbar-sticky { .navbar-collapse { overflow-y: auto; max-height: 80vh; } } &.fixed-top { .navbar-collapse { overflow-y: auto; max-height: 80vh; &.collapsing { overflow-y: hidden; } } } &.bg-transparent { .navbar-collapse { margin-right: -$navbar-padding-x; margin-left: -$navbar-padding-x; padding-top: 1rem; padding-right: $navbar-padding-x; padding-bottom: 1rem; padding-left: $navbar-padding-x; } &.navbar-dark { .navbar-collapse { background: rgba(theme-color(dark), .7); } } &.navbar-light { .navbar-collapse { background: rgba($white, .7); } } } } @include media-breakpoint-up($next) { .navbar-nav { .nav-link.dropdown-toggle { padding-right: $navbar-nav-link-padding-x + .8rem; } } } } } } /* * =================================================== * Multi-level dropdown * =================================================== */ .dropdown-submenu { position: relative; } .dropdown-submenu>.dropdown-menu { top: 0; left: 100%; margin-top: -2px !important; }