* { margin: 0; padding: 0; box-sizing: border-box; letter-spacing: 0.01rem; } /** COLOR VARIABLES */ :root { --black: #111111; --gold: rgb(223, 200, 65); --dark-gold: rgb(158, 141, 44); --light-gold: rgba(255, 215, 0, 0.5); } /** HEADER + NAV STYLING */ header { background-color: var(--black); position: sticky; top: 0; z-index: 999; } .banner { display: flex; justify-content: space-between; max-width: 90%; align-items: center; height: 4.5rem; margin: 0 auto; padding: 1rem 0; } .logo { font-size: 1.5rem; font-weight: bold; transition: color 0.5s ease; color: var(--gold); text-decoration: none; } .logo:hover { color: white; } .navLink { color: var(--gold); text-decoration: none; font-weight: bold; transition: color 0.5s ease; } .navLink:hover { color: #fff; } /** BODY TAGS */ body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; line-height: 1.6; color: #666; background-color: var(--black); } main { display: flex; flex-direction: column; justify-content: flex-start; align-items: center; text-align: center; width: 100%; padding: 0; margin: 0; } section { max-width: 75%; display: flex; flex-direction: column; align-items: center; padding: 1rem 1rem; } /** TEXT TYPES */ a { color: var(--gold); text-align: center; } h1 { font-size: 2.5rem; color: var(--gold); } h2 { font-size: 2rem; color: var(--gold); } h3 { font-size: 1.5rem; color: var(--gold); } p { color: #fff; } /** FOOTER */ footer { display: flex; justify-content: space-between; margin: 5rem auto; max-width: 90%; background-color: var(--black); color: var(--gold); text-align: center; } #footer-left { width: 50%; text-align: left; } #footer-right { width: 50%; text-align: right; } /** "skip link" for screen readers */ .skipLink { position: absolute; top: -50px; left: 6px; background: #fff; color: var(--black); padding: 8px; text-decoration: none; font-weight: bold; border-radius: 4px; z-index: 1000; } .skipLink:focus { top: 6px; } /** DESKTOP RULES */ @media screen and (min-width: 851px) { /** header */ nav { display: flex; flex-direction: row; gap: 3rem; list-style: none; } /** content */ h1 { font-size: 3rem; } } /* MOBILE RULES */ @media screen and (max-width: 850px) { /** header */ header { padding: 0 1rem; } nav { display: flex; flex-direction: column; position: fixed; gap: 2rem; padding: 2rem 0; top: -20rem; left: 0; width: 100%; font-size: 2rem; text-align: center; background-color: var(--black); transition: top 0.5s ease; box-shadow: 0 10px 27px rgba(0, 0, 0, 0.05); z-index: -1; } nav.active { top: 1.5rem; } /** footer */ footer { font-size: 0.9rem; } /** content rules */ h1 { font-size: 2.5rem; } }