Files
einundzwanzig.space/src/css/base/header.css
2021-10-01 11:11:11 +02:00

174 lines
3.4 KiB
CSS

.header {
background-color: var(--color-body-bg);
transition-property: color, background-color, box-shadow;
transition-duration: var(--transition-duration-fast);
@media (--up_to_M) {
padding-top: var(--space-l);
padding-bottom: var(--space-m);
}
@media (--M_to_L) {
padding-top: var(--space-l);
padding-bottom: var(--space-l);
}
@media (--L_and_up) {
padding-top: var(--space-xl);
padding-bottom: var(--space-l);
}
@media (--up_to_L) {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 10;
@nest body.topbar & {
box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.1);
}
}
& a {
color: var(--color-body-text);
&[href="#"] {
cursor: context-menu;
}
&:not([href="#"]):hover {
@media not all and (hover: none) {
color: var(--color-accent);
text-decoration: none;
}
}
}
& .wrap {
flex-direction: column;
align-items: center;
}
& .brand {
display: block;
margin-bottom: var(--space-m);
}
& .logo {
display: block;
width: 100%;
height: var(--logo-height);
max-width: 840px;
max-height: 76px;
}
& .nav {
display: flex;
align-self: flex-start;
align-items: center;
justify-content: space-between;
line-height: 1;
font-size: 3.5vw;
@media (--up_to_M) {
margin-bottom: var(--space-s);
margin-top: var(--space-l);
font-size: var(--font-size-l);
}
@media (--M_and_up) {
margin-top: var(--space-l);
font-size: var(--font-size-xl);
}
& nav {
display: flex;
align-items: center;
& .navItem {
position: relative;
margin-right: var(--space-l);
overflow: hidden;
text-transform: uppercase;
min-width: 3em;
z-index: 1;
& a {
position: relative;
display: block;
font-weight: var(--font-weight-bold);
z-index: 1;
&.current {
color: var(--color-accent);
}
}
& .more {
position: absolute;
z-index: 0;
top: calc(var(--space-m) * -1);
left: calc(var(--space-l) * -1);
right: calc(var(--space-l) * -1);
opacity: 0;
padding: 1.5em var(--space-l) var(--space-m);
background: var(--color-flyout-bg);
transition-property: background, position, opacity;
transition-duration: var(--transition-duration-fast);
border-radius: var(--space-m);
& a {
margin-top: var(--space-l);
}
}
&:hover,
&:focus {
overflow: visible;
& .more {
opacity: 1;
}
}
}
}
& button {
display: inline-flex;
align-items: center;
justify-content: center;
position: relative;
top: 1px;
& svg {
height: 4.5vw;
width: 4.5vw;
min-height: 18px;
min-width: 18px;
max-height: 42px;
max-width: 42px;
display: block;
}
}
}
}
.theme {
display: inline-block;
align-items: center;
justify-content: center;
color: inherit;
background: none;
cursor: pointer;
border: 0;
outline: 0;
@media screen and (max-width: 370px) {
visibility: hidden;
}
&:hover {
@media not all and (hover: none) {
color: var(--color-accent);
}
}
}