@import url("typography.css"); /* Reset */ * { margin: 0; padding: 0; box-sizing: border-box; } /* Base Layout */ html, body { overflow-x: hidden; } body { background-image: url("noise.png"); background-color: #234892; display: flex; flex-direction: column; } /* Main Container */ #wrap { margin: 0 auto; background-color: #fff; flex: 1; display: flex; flex-direction: column; width: 70%; max-width: 45em; } /* Header Styles */ header { padding-left: 35px; padding-right: 35px; min-height: 130px; position: relative; } header h1 { font-size: 100px; position: absolute; top: 50%; transform: translate(0, -50%); } /* Navigation Bar */ #navbar { width: 100%; background-color: #03396C; padding: 5px 3em 5px 0; text-align: right; min-width: 100%; color: #ffffff; } #navbar a + a::before { content: "// "; padding: 0 0.1em; } /* Main Content */ #main { padding: 35px; flex: 1; } #main details div { padding-left: 1em; line-height: 115%; } #main details:open { padding-bottom: 1em; } #main details summary { cursor: pointer; padding-bottom: 0.25em; } /* Footer */ #footer { margin-top: auto; text-align: center; } #footer-title { width: 100%; min-width: 100%; background-color: #03396C; color: #ffffff; text-align: center; padding: 0.5em 0; } #footer p { padding-top: 0.5em; padding-bottom: 0.5em; line-height: 1.25; } hr { margin-bottom: 1em; } /* Links */ a:hover { text-decoration: underline; } a { text-decoration: none; color: #005B96; } /* Media Queries */ @media (max-width: 768px) { html, body { min-height: 100dvh; } #wrap { width: 100%; max-width: none; } footer p { margin-bottom: 0.25em; } header h1 { font-size: clamp(2rem, 20dvw, 100px); text-align: center; max-width: 90%; word-wrap: break-word; margin: 20px auto; } }