.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); } } }