/* * main-navigation.js 2.3.0 * Responsive, lightweight, multi-level dropdown menu. * Copyright (c) 2018 Vinny Moreira - http://vinnymoreira.com * Released under the MIT license */ /* all nav */ .main-navigation { position: relative; width: 100%; z-index: 9900; line-height: normal; } .main-navigation ul { margin: 0; padding: 0; text-align: center; } .main-navigation li { list-style: none; display: block; margin: 0; padding: 0; position: relative; line-height: normal; vertical-align: middle; } .main-navigation li a { padding: 6px 15px; display: block; text-decoration: none; text-transform: capitalize; font-size: 16px; color: $white; font-size: inherit; font-family: inherit; box-sizing: border-box; -webkit-transition: all .3s ease-out; -moz-transition: all .3s ease-out; transition: all .3s ease-out; } /* main level */ .main-navigation>ul>li { display: inline-block; } .main-navigation>ul>li>a { padding: 15px 20px; color: $primary_color; font-weight: 500; text-transform: uppercase; } .main-navigation>ul>li>a:hover { color: $secondary_color; } .main-navigation>ul>li>a:first-child { padding-left: 0; } /* first level dd */ .main-navigation ul ul { top: auto; width: 220px; position: absolute; z-index: 9900; text-align: left; display: none; background: $black; } .main-navigation li li { display: block; } /* second level dd */ .main-navigation ul ul ul { top: 0; /* dd animtion - change to auto to remove */ left: 100%; } .main-navigation>ul>li:hover>ul>li:hover>ul { opacity: 1; visibility: visible; top: 0; } /* .drop-left */ .main-navigation>ul>li.drop-left>ul { right: 0; } .main-navigation li.drop-left ul ul { left: auto; right: 100%; } /* light theme */ .main-navigation.light { background: transparent; } .main-navigation.light ul ul { background: $primary_color; } .main-navigation.light li a { letter-spacing: 0.15px; } .main-navigation.light ul li a:hover { color: $white; } .main-navigation.light>ul>li>a:hover { color: $secondary_color; } .main-navigation.light .menu-toggle, .main-navigation.light .call-btn-mobile, .main-navigation.light .location-btn-mobile, .main-navigation.light .close-menu { color: rgba(0, 0, 0, 1); } /* only used when 'scrollbarFix' is set to true in the js. This fixes horizontal scrollbar caused by the dd menus that are very long.*/ body.main-navigation-noscroll-x { overflow-x: hidden; } /* general styling */ .main-navigation li.has-sub>a:after { content: '\f107'; font-family: 'FontAwesome'; margin-left: 5px; color: #262626; } .main-navigation li li.has-sub>a:after { content: '\f105'; font-family: 'FontAwesome'; position: absolute; right: 0; color: $white; margin-left: 10px; margin-right: 10px; } .main-navigation li.drop-left li.has-sub>a:after { float: left; content: '\f104'; font-family: 'FontAwesome'; margin-right: 10px; } .main-navigation.hide-arrows li.has-sub>a:after, .main-navigation.hide-arrows li li.has-sub>a:after, .main-navigation.hide-arrows li.drop-left li.has-sub>a:after { display: none; } .main-navigation .menu-toggle, .main-navigation .close-menu, .main-navigation .call-btn-mobile, .main-navigation .location-btn-mobile { display: none; text-transform: uppercase; text-decoration: none; } .main-navigation .dd-toggle { display: none; position: absolute; top: 0; right: 0; padding: 0; width: 48px; height: 48px; text-align: center; z-index: 9999; border: 0; } .main-navigation .dd-toggle i { position: absolute; margin: auto; top: 33%; left: 0; right: 0; -webkit-transition: transform .3s ease-out; -moz-transition: transform .3s ease-out; transition: transform .3s ease-out; } .main-navigation.mobile>ul>li>a.dd-toggle { padding: 0; } .main-navigation li.call-btn-mobile, .main-navigation li.location-btn-mobile { display: none; } .main-navigation li.open>a.dd-toggle i { -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate(135deg); } /* mobile nav */ a.menu-toggle.full { font-size: 0; } .main-navigation .menu-toggle .fa { font-size: 32px; color: $primary_color; } .main-navigation.light.mobile a:hover, .main-navigation.light.mobile a:focus, .main-navigation.light.mobile a:active, .main-navigation.light.mobile a:visited { color: $primary_color; } .main-navigation .menu-toggle, .main-navigation .call-btn-mobile, .main-navigation .location-btn-mobile, .main-navigation .close-menu { color: #777; padding: 15px; box-sizing: border-box; } .main-navigation .full { width: 100%; } .main-navigation .half { width: 50%; } .main-navigation .third { width: 33%; text-align: center; } .main-navigation .location-btn-mobile.third { text-align: center; } .main-navigation .location-btn-mobile.half { text-align: right; } .main-navigation.light .third, .main-navigation.light .half { border-left: 1px solid rgba(0, 0, 0, .15); } .main-navigation.light.left .third, .main-navigation.light.left .half { border-bottom: 1px solid rgba(0, 0, 0, .15); } .main-navigation.light.right .third, .main-navigation.light.right .half { border-bottom: 1px solid rgba(0, 0, 0, .15); } .main-navigation.light .third:first-child, .main-navigation.light .half:first-child { border-left: 0; } .main-navigation.dark .third, .main-navigation.dark .half { border-left: 1px solid rgba(255, 255, 255, .15); } .main-navigation.dark.left .third, .main-navigation.dark.left .half { border-bottom: 1px solid rgba(255, 255, 255, .15); } .main-navigation.dark.right .third, .main-navigation.dark.right .half { border-bottom: 1px solid rgba(255, 255, 255, .15); } .main-navigation.light.left .menu-toggle, .main-navigation.light.right .menu-toggle { border-bottom: 0; } .main-navigation.dark.left .menu-toggle, .main-navigation.dark.right .menu-toggle { border-bottom: 0; } .main-navigation.dark .third:first-child, .main-navigation.dark .half:first-child { border-left: 0; } .main-navigation.mobile { position: static; } .main-navigation.mobile.fixed { position: static; } .main-navigation.mobile ul { position: relative; display: none; } .main-navigation.mobile.active { padding-bottom: 0; } .main-navigation.mobile.active>ul { display: block; } .main-navigation.mobile ul { text-align: left; } .main-navigation.mobile>ul>li { display: block; } .main-navigation.mobile.light li a { color: $primary_color; } .main-navigation.mobile>ul>li>a { padding: 15px; } .main-navigation.mobile ul { background: rgba(221, 221, 221, 1); } .main-navigation.mobile ul ul { position: relative; opacity: 1; visibility: visible; width: auto; display: none; -moz-transition: none; -webkit-transition: none; -o-transition: color 0 ease-in; transition: none; } .main-navigation.mobile ul ul ul { left: auto; top: auto; } .main-navigation.mobile li.drop-left ul ul { right: auto; } .main-navigation.mobile li a { border-bottom: 1px solid rgba(255, 255, 255, .15); } .main-navigation.mobile>ul { border-top: 1px solid rgba(255, 255, 255, .15); } .main-navigation.mobile.light li a { border-bottom: 1px solid rgba(0, 0, 0, .15); } .main-navigation.mobile.light>ul { border-top: 1px solid rgba(0, 0, 0, .15); } .main-navigation.mobile li a.dd-toggle { border: 0; } .main-navigation.mobile.light li a.dd-toggle { border: 0; } .main-navigation.mobile .menu-toggle, .main-navigation.mobile .dd-toggle, .main-navigation.mobile .close-menu, .main-navigation.mobile .call-btn-mobile, .main-navigation.mobile .location-btn-mobile { display: inline-block; } .main-navigation.mobile li.call-btn-mobile { border-right: 1px solid rgba(255, 255, 255, .1); box-sizing: border-box; } .main-navigation.mobile li.call-btn-mobile, .main-navigation.mobile li.location-btn-mobile { display: inline-block; width: 50%; text-transform: uppercase; text-align: center; } .main-navigation.mobile li.call-btn-mobile.full, .main-navigation.mobile li.location-btn-mobile.full { display: block; width: 100%; text-transform: uppercase; border-right: 0; text-align: left; } .main-navigation.mobile li.call-btn-mobile i, .main-navigation.mobile li.location-btn-mobile i { margin-right: 5px; } .main-navigation.mobile.light ul { background: rgba(255, 255, 255, 1); } .main-navigation.mobile.dark ul { background: rgba(0, 0, 0, 1); } .main-navigation.mobile.dark ul ul { background: rgba(255, 255, 255, .08); } .main-navigation.mobile.light li.call-btn-mobile { border-right: 1px solid rgba(0, 0, 0, .1); } .main-navigation.mobile.top { position: absolute; width: 100%; top: 0; left: 0; z-index: 9999; } .main-navigation.mobile li.has-sub>a:after, .main-navigation.mobile li li.has-sub>a:after, .main-navigation.mobile li.drop-left li.has-sub>a:after { display: none; } /* left and right positions */ .main-navigation.mobile.right>ul, .main-navigation.mobile.left>ul { position: fixed; top: 0; bottom: 0; width: 100%; max-width: 280px; overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; } .main-navigation.mobile.right>ul { right: 0; } .main-navigation.mobile.right .close-menu, .main-navigation.mobile.left .close-menu { display: inline-block; text-align: right; } .main-navigation.mobile.left>ul { left: 0; } .main-navigation.mobile.right .location-btn-mobile.half, .main-navigation.mobile.right .call-btn-mobile.half, .main-navigation.mobile.right .close-menu.half { text-align: center; } .main-navigation.mobile.right .location-btn-mobile.third, .main-navigation.mobile.right .call-btn-mobile.third, .main-navigation.mobile.right .close-menu.third { text-align: center; } .main-navigation.mobile.left .location-btn-mobile.half, .main-navigation.mobile.left .call-btn-mobile.half, .main-navigation.mobile.left .close-menu.half { text-align: center; } .main-navigation.mobile.left .location-btn-mobile.third, .main-navigation.mobile.left .call-btn-mobile.third, .main-navigation.mobile.left .close-menu.third { text-align: center; } .main-navigation.mobile.left .menu-toggle.half, .main-navigation.mobile.left .menu-toggle.third, .main-navigation.mobile.right .menu-toggle.half, .main-navigation.mobile.right .menu-toggle.third { text-align: left; } .main-navigation.mobile.left .close-menu.third span, .main-navigation.mobile.right .close-menu.third span { display: none; } /* left and right positions */ /* mega dd */ .main-navigation.desktop li.mega li { display: inline-block; vertical-align: top; margin-left: -4px; } .main-navigation.desktop li.mega li li { display: block; margin-left: 0; } .main-navigation.desktop li.mega ul ul { width: auto; } .main-navigation.desktop>ul>li.mega { position: inherit; } .main-navigation.desktop>ul>li.mega>ul { width: 100%; } .main-navigation.desktop>ul>li.mega>ul li.has-sub ul { display: block; position: relative; left: auto; } .main-navigation.desktop>ul>li.mega>ul>li { padding-bottom: 15px; box-sizing: border-box; } .main-navigation.desktop li.mega li li a { padding: 5px 15px; } .main-navigation.desktop li.mega li.has-sub a:after { display: none; } .main-navigation.desktop>ul>li.mega>ul>li>a { color: yellow; } /* mega dd */ /* Fallback for slow javascript load */ @media only screen and (max-width: 768px) { .main-navigation { overflow: hidden; display: block; } .main-navigation ul { position: relative; display: none; } } /* mobile nav */ @media only screen and (max-width: 420px) { .main-navigation.mobile .call-btn-mobile.third span, .main-navigation.mobile .location-btn-mobile.third span { display: none; } }