143 lines
2.7 KiB
SCSS
143 lines
2.7 KiB
SCSS
.main-nav {
|
|
width: 100%;
|
|
background: $secondary-color url('EXT:my_sitepackage/Resources/Public/Images/linen-texture.png') repeat;
|
|
position: relative;
|
|
z-index: 1000;
|
|
|
|
&.sticky {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
|
|
}
|
|
|
|
.container {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
margin: 0 auto;
|
|
padding: 1rem;
|
|
}
|
|
|
|
.nav-logo {
|
|
img {
|
|
display: block;
|
|
max-height: 50px;
|
|
height: auto;
|
|
width: auto;
|
|
}
|
|
}
|
|
|
|
.nav-toggle {
|
|
background: none;
|
|
border: none;
|
|
cursor: pointer;
|
|
display: none; // hidden by default on desktop
|
|
position: relative;
|
|
width: 30px;
|
|
height: 30px;
|
|
|
|
.nav-toggle-icon {
|
|
width: 100%;
|
|
height: 2px;
|
|
background: $primary-color;
|
|
display: block;
|
|
position: relative;
|
|
@include transition(all, 0.3s);
|
|
|
|
&::before,
|
|
&::after {
|
|
content: '';
|
|
width: 100%;
|
|
height: 2px;
|
|
background: $primary-color;
|
|
position: absolute;
|
|
left: 0;
|
|
@include transition(all, 0.3s);
|
|
}
|
|
|
|
&::before {
|
|
top: -8px;
|
|
}
|
|
|
|
&::after {
|
|
top: 8px;
|
|
}
|
|
}
|
|
|
|
&.active .nav-toggle-icon {
|
|
background: transparent;
|
|
|
|
&::before {
|
|
transform: rotate(45deg) translate(5px, 5px);
|
|
}
|
|
|
|
&::after {
|
|
transform: rotate(-45deg) translate(5px, -5px);
|
|
}
|
|
}
|
|
}
|
|
|
|
.nav-links {
|
|
display: flex;
|
|
list-style: none;
|
|
|
|
.nav-item {
|
|
margin: 0 1rem;
|
|
|
|
.nav-link {
|
|
text-decoration: none;
|
|
color: $primary-color;
|
|
font-weight: 700;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.05em;
|
|
font-size: 1rem;
|
|
@include transition(color);
|
|
|
|
&:hover {
|
|
color: $brand-color;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Responsive: show hamburger and collapse menu on smaller screens
|
|
@media (max-width: $breakpoint-lg) {
|
|
.nav-toggle {
|
|
display: block;
|
|
}
|
|
|
|
// Hide links by default on mobile and show only when toggled
|
|
.nav-links {
|
|
position: absolute;
|
|
top: 100%;
|
|
left: 0;
|
|
right: 0;
|
|
flex-direction: column;
|
|
background: $secondary-color url('EXT:my_sitepackage/Resources/Public/Images/linen-texture.png') repeat;
|
|
max-height: 0;
|
|
overflow: hidden;
|
|
@include transition(max-height, 0.4s);
|
|
|
|
.nav-item {
|
|
margin: 0;
|
|
padding: 1rem;
|
|
border-top: 1px solid rgba(0,0,0,0.1);
|
|
|
|
&:first-child {
|
|
border-top: none;
|
|
}
|
|
|
|
.nav-link {
|
|
display: block;
|
|
}
|
|
}
|
|
}
|
|
|
|
&.open .nav-links {
|
|
max-height: 500px; // Adjust to fit all items
|
|
}
|
|
}
|
|
}
|