/* top nav */ nav { position: relative; margin: 0 auto 1.5rem; } nav div { display: grid; grid-template: "home title links"; row-gap: 1rem; } @media (max-width: 650px) { nav div { grid-template: "title title" "home links"; } } #home { grid-area: home; justify-self: start; } nav h2 { grid-area: title; border: none; text-align: center; align-self: center; margin: 0; } nav a:not(:has(img)) { display: inline-block; text-decoration: none; font-size: 1.2rem; padding: 0 .25rem; border: solid .125rem var(--color-accent); border-radius: .25rem; } @media (any-hover: hover) { nav a:not(:has(img)):hover { color: var(--color-bg); background-color: var(--color-text-alt); border-color: var(--color-accent-flipped); outline: .125rem solid var(--color-accent); outline-offset: 0; } } nav a:not(:has(img)):focus-visible { outline: solid .125rem var(--color-accent); outline-offset: .125rem; } #skip { left: -999px; position: absolute; top: auto; width: 1px; height: 1px; overflow: hidden; z-index: -99; background-color: var(--color-bg); } @media (any-hover: hover) { #skip:hover { background-color: var(--color-text-alt); } } #skip:focus-visible { left: -6rem; width: auto; height: auto; overflow: auto; z-index: 999; } @media (max-width: 750px) { #skip:focus-visible { left: 5rem; } } nav img { max-height: 6.75rem; max-width: 100%; margin: 0 auto; border-radius: 2rem; border: .2rem solid var(--color-accent); } @media (any-hover: hover) { nav img:hover { border-color: var(--color-accent-flipped); outline-offset: 0; outline: .2rem solid var(--color-accent); } } nav a:has(img):focus { border-radius: 2rem; outline-offset: .2rem; outline: .2rem solid var(--color-accent); } nav a:has(img):focus img { outline: none; } nav ul { grid-area: links; justify-self: end; display: flex; justify-content: flex-end; gap: .6rem; align-items: flex-end; flex-flow: column nowrap; } nav li { list-style: none; } /* footer */ footer { width: 95%; margin: 0 auto; padding: 1rem 0; } footer p { background-color: var(--color-text); color: var(--color-bg); text-align: center; font-size: .9rem; padding: .25rem; } footer a { color: var(--color-bg); text-decoration-color: var(--color-accent-flipped); } footer a:focus-visible { outline-color: var(--color-accent-flipped); }