Files
caldwell/assets/sass/header.scss
Nikolaos Karaolidis a3f3795ba7 Add header
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
2025-08-06 01:21:42 +02:00

124 lines
2.2 KiB
SCSS

.header {
padding: 2rem;
.header-container {
max-width: $maxwidth;
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
.site-title {
font-size: 1.5rem;
a {
text-decoration: none;
color: inherit;
}
}
.nav {
ul {
display: flex;
gap: 2.5rem;
margin: 0;
padding: 0;
list-style: none;
li a {
font-size: 0.85rem;
text-decoration: none;
color: inherit;
display: block;
}
}
}
.nav-toggle {
display: none;
}
.nav-toggle-label {
display: none;
}
}
}
@media (max-width: $mobilewidth) {
.header {
padding: 1rem;
.header-container {
.site-title {
z-index: 1;
}
.nav {
position: fixed;
inset: 0;
display: flex;
flex-direction: column;
justify-content: center;
opacity: 0;
background: $color-bg;
transition: opacity 0.3s ease;
pointer-events: none;
ul {
flex-direction: column;
align-items: center;
gap: 2rem;
li a {
font-size: 1.25rem;
}
}
}
.nav-toggle-label {
z-index: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
width: 1.5rem;
height: 0.75rem;
cursor: pointer;
span {
display: block;
height: 0.125rem;
width: 100%;
border-radius: 1px;
background: currentColor;
transition:
transform 0.3s ease,
opacity 0.3s ease;
}
span+span {
margin-top: 0.25rem;
}
}
.nav-toggle:checked+.nav-toggle-label+.nav {
opacity: 1;
pointer-events: auto;
}
.nav-toggle:checked+.nav-toggle-label span:nth-child(1) {
transform: translateY(0.3rem) rotate(45deg);
}
.nav-toggle:checked+.nav-toggle-label span:nth-child(2) {
transform: translateY(-0.3rem) rotate(-45deg);
}
}
}
}