nav { background: var(--color-nav-dark); a { font-family: "Elegant Typewriter", serif; text-decoration: none; color: var(--color-nav-light); } a[aria-current="page"] { text-decoration: underline solid .2em var(--color-title-bg); } a[aria-current="page"]:focus-visible { text-decoration: none; } } header nav { --font-size: 1.4rem; --header-height: 12vh; display: flex; justify-content: space-between; align-items: center; font-size: var(--font-size); line-height: 1; #skip { position: absolute; left: -999px; top: auto; width: 1px; height: 1px; overflow: hidden; z-index: -99; background: var(--color-nav-dark); } #skip:focus-visible { display: inline-block; left: 10%; top: calc((var(--header-height) - var(--font-size)) / 2); width: auto; height: auto; overflow: auto; z-index: 99; } a:has(img) { height: calc(var(--header-height) - 1rem); margin: .5rem; border-radius: 1.25em; outline-offset: .15em; img { height: 100%; width: auto; } } ul { display: flex; flex-flow: row wrap; list-style: none; padding: 0; margin-inline: 1rem; gap: 2rem; z-index: 999; } button { display: none; } } @media (max-width: 650px) { header nav { display: grid; grid-template-areas: "home button" "links links"; padding: 0; a:has(img) { grid-area: home; height: calc(var(--header-height) - 1rem); margin: .5rem; } button { grid-area: button; display: unset; margin-inline: 1rem; padding: .5rem .75rem; border: none; background: var(--color-nav-dark); color: var(--color-nav-light); cursor: pointer; border-radius: .5em; } button:focus-visible { outline: .1em solid var(--color-title-bg); } ul[aria-hidden="true"] { display: none; } ul { grid-area: links; flex-flow: column; align-items: center; background: var(--color-nav-light); margin: 0; padding-block: 1rem; border-top: .5rem solid var(--color-title-bg); border-bottom: .5rem solid var(--color-title-bg); position: absolute; top: var(--header-height); width: 100%; a { color: var(--color-nav-dark); } } } } footer nav { padding-block: 1rem; border-top: .5rem solid var(--color-title-bg); ul { list-style: none; font-size: 1.1rem; text-align: center; } } @media (max-width: 650px) { footer nav ul { font-size: .95rem; } }