lumeweb.com/src/components/Layout/Navbar/Navbar.scss

102 lines
1.6 KiB
SCSS

@import "../../../styles/mixins.scss";
@import "../../../styles/vars.scss";
nav {
display: flex;
justify-content: space-between;
align-items: center;
padding: 2em 3.75%;
@include fluid-font-size(1.25rem);
white-space: nowrap;
.logo {
flex-shrink: 0;
img {
@include fluid-width-height(13.125rem, 4.375rem);
}
}
}
menu {
display: flex;
align-items: center;
li > a {
display: block;
padding: 0.55em 0.9em;
}
.download-btn {
margin-left: 0.9em;
}
}
.hamburger {
display: none;
font-size: 2rem;
cursor: pointer;
z-index: 1;
margin: 0 3.75% 0 2rem;
}
@media screen and (max-width: 56rem) {
nav {
position: sticky;
top: 0;
background: rgba($color-body-bg, 0.85);
z-index: 1;
}
menu {
display: flex;
align-items: flex-start;
flex-direction: column;
position: fixed;
top: 0;
right: min(-20rem, -100vw);
bottom: 0;
padding: 7.5em 7.5% 1em;
background: rgba($color-body-bg, 0.85);
transition: right $transition-duration;
overflow-y: auto;
&.active {
right: 0;
&::before {
content: "";
position: fixed;
inset: 0;
background: $color-black;
animation: $transition-duration bg-opacity forwards;
z-index: -1;
}
}
li > a {
font-size: 1.25rem;
padding-left: 0.8em;
}
.download-btn {
font-size: 1.25rem;
margin: 1.1em 0 0 0;
}
}
.hamburger {
display: block;
}
}
@keyframes bg-opacity {
0% {
opacity: 0;
}
100% {
opacity: 0.85;
}
}