diff --git a/_includes/head.njk b/_includes/head.njk index 7ae7887..335fb7c 100644 --- a/_includes/head.njk +++ b/_includes/head.njk @@ -27,6 +27,8 @@ + + {# diff --git a/_includes/layouts/base.njk b/_includes/layouts/base.njk index c3cfb82..8e7d33a 100644 --- a/_includes/layouts/base.njk +++ b/_includes/layouts/base.njk @@ -2,13 +2,11 @@ {% include "head.njk" %} -
- {% include "header.njk" %} + {% include "header.njk" %} -
- {{ content | safe }} -
-
+
+ {{ content | safe }} +
{% include "footer.njk" %} diff --git a/_includes/layouts/page.njk b/_includes/layouts/page.njk index fd1aa7f..bdc08dc 100644 --- a/_includes/layouts/page.njk +++ b/_includes/layouts/page.njk @@ -2,10 +2,12 @@ layout: base.njk --- -

{{ title }}

- {% if hero %} - {{ hero.alt }} + {{ hero.alt }} {% endif %} -{{ content | safe }} +
+

{{ title }}

+ + {{ content | safe }} +
diff --git a/css/main.css b/css/main.css index b41005f..5b20fdd 100644 --- a/css/main.css +++ b/css/main.css @@ -1,5 +1,14 @@ :root { color-scheme: light dark; + + --color-light: #ddd; + --color-dark: #222; + --color-teal: #014d4e; + --color-pink: #ffb2d0; + + --color-bg: light-dark(var(--color-light), var(--color-dark)); + --color-text: light-dark(var(--color-dark), var(--color-light)); + --color-accent: light-dark(var(--color-teal), var(--color-pink)); } /* numbered components are from https://www.joshwcomeau.com/css/custom-css-reset/ */ @@ -25,6 +34,27 @@ body { line-height: 1.5; /* 5. Improve text rendering */ -webkit-font-smoothing: antialiased; + color: var(--color-text); + background-color: var(--color-bg); + font-family: sans-serif; +} + +#content { + width: 65%; + max-width: 1800px; + margin: 1rem auto; +} + +@media (max-width: 1100px) { + #content { + width: 85%; + } +} + +@media (max-width: 650px) { + #content { + width: 92%; + } } /* 6. Improve media defaults */ @@ -32,6 +62,7 @@ img, picture, video, canvas, svg { display: block; max-width: 100%; height: auto; + margin: 0 auto; } /* 7. Inherit fonts for form controls */ @@ -58,3 +89,27 @@ h1, h2, h3, h4, h5, h6 { #root, #__next { isolation: isolate; } + +/* Basic elements */ +h1, h2, h3, h4, h5, h6 { + font-family: serif; +} + +h1, h2, h3, h4, h5, h6, +a { + color: var(--color-accent); +} + +a { + padding: .1rem; + border-radius: .05rem; +} + +a:focus-visible { + outline: solid var(--color-accent); +} + +.hero { + aspect-ratio: 32 / 9; + object-fit: cover; +} diff --git a/css/nav.css b/css/nav.css new file mode 100644 index 0000000..d137ba8 --- /dev/null +++ b/css/nav.css @@ -0,0 +1,34 @@ +/* Header, footer, nav */ +#skip { + background-color: var(--color-bg); + position: absolute; + left: -999px; + top: -999px; +} + +#skip:focus-visible { + left: 10%; + top: 5%; +} + +header a[aria-current="page"]::before, +footer a[aria-current="page"]::before { + content: "> " / ""; +} + +header a[aria-current="page"]::after, +footer a[aria-current="page"]::after { + content: " <" / ""; +} + +header h2 a { + text-decoration: none; +} + +nav ul { + display: flex; + justify-content: center; + flex-flow: row wrap; + list-style: none; + gap: 1rem; +} diff --git a/css/print.css b/css/print.css new file mode 100644 index 0000000..e4a75de --- /dev/null +++ b/css/print.css @@ -0,0 +1,23 @@ +/* Print media */ +@media print { + header, + footer, + nav { + display: none; + } + + body { + background-color: #fff; + width: 95vw; + } + + body, + h1, h2, h3, h4, h5, + a { + color: #000; + } + + a::after { + content: " (" attr(href) ")"; + } +}