@charset "UTF-8";
/* Theme Settings
 *
 * Theme configuration variables - edit these to customize
 * Similar to Bootstrap's _settings.scss pattern
 */
:root {
  color-scheme: light dark;
  scrollbar-gutter: stable;
  --layout-border-top-width: 1em;
  --font-size:               100%;
  --font-size-large:         100%;
  --font-size-small:         0.75rem;
  --font-line-height:        1.5;
  --font-family-serif:       Literata, Georgia, Times New Roman, Times, serif;
  --font-family-sans:        Geist, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-family-heading:     Geist, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-family-fixed:       Geist Mono, ui-monospace, SFMono-Regular, Consolas, monospace;
  --color-bg: #eaeaea;
  --color-bg-alt: #252a34;
  --color-background: #eaeaea;
  --color-surface: #252a34;
  --color-alt: #252a34;
  --color-text: #252a34;
  --color-primary: #ff2e63;
  --color-secondary: #08d9d6;
  --color-link: #ff2e63;
  --color-link-hover: #08d9d6;
  --color-hover: #08d9d6;
  --color-border: #252a34;
  --color-border-light: #313244;
  --color-border-lighter: #45475a;
  --color-code-bg: #252a34;
  --color-code-text: #ffffff;
  --color-selection-bg: #ff2e63;
  --color-selection-text: #ffffff;
  --color-figure-bg: #eaeaea;
  --color-footer-bg: #252a34;
  --color-footer-text: #ffffff;
  --syntax-bg: #252a34;
  --syntax-fg: #ffffff;
  --syntax-keyword: #66d9ef;
  --syntax-keyword-alt: #f92672;
  --syntax-function: #a6e22e;
  --syntax-string: #e6db74;
  --syntax-number: #ae81ff;
  --syntax-comment: #bac2be;
  --syntax-operator: #f92672; }

.theme-vault-light {
  --color-bg: #eaeaea;
  --color-bg-alt: #252a34;
  --color-background: #eaeaea;
  --color-surface: #252a34;
  --color-alt: #252a34;
  --color-text: #252a34;
  --color-primary: #ff2e63;
  --color-secondary: #08d9d6;
  --color-link: #ff2e63;
  --color-link-hover: #08d9d6;
  --color-hover: #08d9d6;
  --color-border: #252a34;
  --color-border-light: #313244;
  --color-border-lighter: #45475a;
  --color-code-bg: #252a34;
  --color-code-text: #ffffff;
  --color-selection-bg: #ff2e63;
  --color-selection-text: #ffffff;
  --color-figure-bg: #eaeaea;
  --color-footer-bg: #252a34;
  --color-footer-text: #ffffff;
  --syntax-bg: #252a34;
  --syntax-fg: #ffffff;
  --syntax-keyword: #66d9ef;
  --syntax-keyword-alt: #f92672;
  --syntax-function: #a6e22e;
  --syntax-string: #e6db74;
  --syntax-number: #ae81ff;
  --syntax-comment: #bac2be;
  --syntax-operator: #f92672; }

.theme-vault-dark {
  --color-bg: #181825;
  --color-bg-alt: #252a34;
  --color-background: #181825;
  --color-surface: #252a34;
  --color-alt: #252a34;
  --color-text: #cdd6f4;
  --color-primary: #ff2e63;
  --color-secondary: #08d9d6;
  --color-link: #ff2e63;
  --color-link-hover: #08d9d6;
  --color-hover: #08d9d6;
  --color-border: #252a34;
  --color-border-light: #313244;
  --color-border-lighter: #45475a;
  --color-code-bg: #252a34;
  --color-code-text: #ffffff;
  --color-selection-bg: #ff2e63;
  --color-selection-text: #ffffff;
  --color-figure-bg: #181825;
  --color-footer-bg: #252a34;
  --color-footer-text: #ffffff;
  --syntax-bg: #252a34;
  --syntax-fg: #ffffff;
  --syntax-keyword: #66d9ef;
  --syntax-keyword-alt: #f92672;
  --syntax-function: #a6e22e;
  --syntax-string: #e6db74;
  --syntax-number: #ae81ff;
  --syntax-comment: #a6adc8;
  --syntax-operator: #f92672; }

.theme-nord {
  --color-bg: #2e3440;
  --color-bg-alt: #3b4252;
  --color-background: #2e3440;
  --color-surface: #3b4252;
  --color-alt: #3b4252;
  --color-text: #d8dee9;
  --color-primary: #bf616a;
  --color-secondary: #d08770;
  --color-link: #bf616a;
  --color-link-hover: #d08770;
  --color-hover: #d08770;
  --color-border: #3b4252;
  --color-border-light: #434c5e;
  --color-border-lighter: #4c566a;
  --color-code-bg: #3b4252;
  --color-code-text: #eceff4;
  --color-selection-bg: #bf616a;
  --color-selection-text: #eceff4;
  --color-figure-bg: #2e3440;
  --color-footer-bg: #3b4252;
  --color-footer-text: #eceff4;
  --syntax-bg: #3b4252;
  --syntax-fg: #eceff4;
  --syntax-keyword: #ebcb8b;
  --syntax-keyword-alt: #81a1c1;
  --syntax-function: #a3be8c;
  --syntax-string: #8fbcbb;
  --syntax-number: #b48ead;
  --syntax-comment: #4c566a;
  --syntax-operator: #81a1c1; }

.theme-catppuccin-mocha {
  --color-bg: #1e1e2e;
  --color-bg-alt: #313244;
  --color-background: #1e1e2e;
  --color-surface: #313244;
  --color-alt: #313244;
  --color-text: #cdd6f4;
  --color-primary: #f38ba8;
  --color-secondary: #fab387;
  --color-link: #f38ba8;
  --color-link-hover: #fab387;
  --color-hover: #fab387;
  --color-border: #313244;
  --color-border-light: #45475a;
  --color-border-lighter: #585b70;
  --color-code-bg: #313244;
  --color-code-text: #cdd6f4;
  --color-selection-bg: #f38ba8;
  --color-selection-text: #cdd6f4;
  --color-figure-bg: #1e1e2e;
  --color-footer-bg: #313244;
  --color-footer-text: #cdd6f4;
  --syntax-bg: #313244;
  --syntax-fg: #cdd6f4;
  --syntax-keyword: #f9e2af;
  --syntax-keyword-alt: #89b4fa;
  --syntax-function: #a6e3a1;
  --syntax-string: #f5c2e7;
  --syntax-number: #cba6f7;
  --syntax-comment: #6c7086;
  --syntax-operator: #89b4fa; }

.theme-catppuccin-frappe {
  --color-bg: #303446;
  --color-bg-alt: #414559;
  --color-background: #303446;
  --color-surface: #414559;
  --color-alt: #414559;
  --color-text: #c6d0f5;
  --color-primary: #e78284;
  --color-secondary: #ef9f76;
  --color-link: #e78284;
  --color-link-hover: #ef9f76;
  --color-hover: #ef9f76;
  --color-border: #414559;
  --color-border-light: #51576d;
  --color-border-lighter: #626880;
  --color-code-bg: #414559;
  --color-code-text: #c6d0f5;
  --color-selection-bg: #e78284;
  --color-selection-text: #c6d0f5;
  --color-figure-bg: #303446;
  --color-footer-bg: #414559;
  --color-footer-text: #c6d0f5;
  --syntax-bg: #414559;
  --syntax-fg: #c6d0f5;
  --syntax-keyword: #e5c890;
  --syntax-keyword-alt: #8caaee;
  --syntax-function: #a6d189;
  --syntax-string: #f4b8e4;
  --syntax-number: #ca9ee6;
  --syntax-comment: #737994;
  --syntax-operator: #8caaee; }

/* Font paths use absolute paths (/fonts/) for Hugo Modules compatibility.
 * Geist fonts are loaded locally for optimal performance.
 * Literata is loaded from Google Fonts CDN.
 */
/* Geist - Variable sans-serif (weight 100-900) */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/fonts/Geist-Variable.woff2") format("woff2"); }

@font-face {
  font-family: 'Geist';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("/fonts/Geist-Variable-Italic.woff2") format("woff2"); }

/* Geist Mono - Variable monospace (weight 100-900) */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/fonts/GeistMono-Variable.woff2") format("woff2"); }

@font-face {
  font-family: 'Geist Mono';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("/fonts/GeistMono-Variable-Italic.woff2") format("woff2"); }

*,
*::before,
*::after {
  box-sizing: border-box; }

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  min-block-size: 100dvh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5; }

ul[class],
ol[class] {
  list-style: none; }

a:not([class]) {
  text-decoration-skip-ink: auto; }

img {
  max-width: 100%;
  display: block; }

article > * + * {
  margin-top: 1em; }

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important; } }

html {
  background-color: var(--color-bg, #eaeaea);
  font-size: var(--font-size, 100%);
  transition: background-color 0.3s ease; }

body {
  background-color: var(--color-bg, #eaeaea);
  border-top: var(--layout-border-top-width, 1em) solid var(--color-primary, #ff2e63);
  color: var(--color-text, #252a34);
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
  font-family: var(--font-family-serif, "Literata", Georgia, "Times New Roman", Times, serif);
  font-feature-settings: "kern", "liga", "clig", "calt";
  font-kerning: normal;
  font-size: 1em;
  font-variant-ligatures: common-ligatures contextual;
  line-height: var(--font-line-height, 1.5);
  text-rendering: optimizeLegibility; }

a {
  color: var(--color-link, #ff2e63);
  text-decoration: underline;
  text-decoration-thickness: .1rem;
  text-underline-offset: .15em;
  transition: color 0.2s; }
  a:visited {
    color: var(--color-link, #ff2e63); }
  a:focus-visible {
    outline: 0.15rem solid color-mix(in srgb, var(--color-primary) 55%, transparent);
    outline-offset: .2rem;
    color: var(--color-link-hover, #08d9d6); }
  a:hover, a:active {
    color: var(--color-link-hover, #08d9d6); }

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-family-heading);
  font-weight: 700;
  margin: 1.5rem 0 .345rem 0;
  text-wrap: balance; }

img {
  display: block; }

p {
  margin-bottom: 1.5rem; }

main {
  padding: 1em 1em 2em;
  position: relative; }

code,
kbd,
pre {
  font-family: var(--font-family-fixed, "Geist Mono", ui-monospace, SFMono-Regular, Consolas, monospace);
  font-size: .9rem; }

kbd {
  font-style: italic; }

pre {
  background-color: var(--color-bg-alt, #252a34);
  margin: 1rem 0;
  overflow-x: scroll;
  padding: 1rem; }
  pre > code {
    color: var(--color-code-text, #D0D4A5);
    display: block; }

em {
  font-style: italic; }

hr {
  border-bottom: 1px solid var(--color-border-light);
  border-width: 0 0 .1rem 0;
  clear: both;
  margin: 1.5rem 0; }

strong {
  font-weight: 700; }

sub,
sup {
  font-size: .75rem;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.5em; }

sup {
  inset-block-start: -.5rem;
  inset-inline-start: .25rem; }

svg {
  color: inherit;
  fill: currentColor; }

table {
  border-collapse: collapse;
  width: 100%; }
  table td, table th {
    padding: .5rem;
    border-bottom: 1px solid var(--color-border-light); }
  table th {
    font-weight: 600;
    text-align: start; }
  table.bordered td, table.bordered th {
    border: 1px solid var(--color-border-light); }

::selection {
  background: var(--color-primary, #ff2e63);
  color: var(--color-selection-text); }

.site-layout {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-block-size: calc(100dvh - var(--layout-border-top-width, 1em)); }

.site-container {
  margin: 0 auto;
  padding: 1em;
  width: 95vw; }

@media only screen and (min-width: 992px) {
  .site-container {
    max-width: 1200px;
    width: 65vw; } }

header .description {
  margin: .5rem 0; }

#home-welcome h1,
header h1 {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1;
  margin-top: 0; }

#site-header {
  font-family: var(--font-family-sans, "Geist", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);
  text-align: center;
  text-transform: uppercase; }
  #site-header a {
    text-decoration: none; }
  #site-header li {
    display: inline;
    padding: 0 .25rem; }
  @media only screen and (min-width: 768px) {
    #site-header li {
      padding: 0 .5rem; } }
  #site-header .branding {
    float: left; }
  @media only screen and (min-width: 768px) {
    #site-header {
      text-align: right; } }
#site-footer {
  background-color: var(--color-footer-bg, #252a34);
  color: var(--color-footer-text, #ffffff); }
  #site-footer::before {
    background-color: var(--color-footer-bg, #252a34);
    content: "";
    inset-inline: 0;
    inset-block-start: 2em;
    min-block-size: calc(100dvh - 2em);
    position: absolute;
    z-index: -1; }
  #site-footer a {
    opacity: 0.7; }
    #site-footer a:link, #site-footer a:visited {
      color: var(--color-footer-text); }
    #site-footer a:hover, #site-footer a:active {
      color: var(--color-link, #ff2e63);
      opacity: 1; }
  #site-footer p:only-child {
    margin: 0; }

.copyright {
  font-family: var(--font-family-sans, "Geist", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: 0.75rem; }

.pagination {
  display: grid;
  grid-template-columns: 30% auto 30%;
  margin-top: 1.5rem; }
  .pagination .previous {
    grid-column: 1;
    text-align: start; }
  .pagination span {
    grid-column: 2;
    text-align: center; }
  .pagination .next {
    grid-column: 3;
    text-align: end; }

#home-welcome p {
  margin: 1rem 0; }

@media only screen and (min-width: 992px) {
  .browse {
    display: grid;
    grid-template-columns: 55% auto 40%; }
    .browse .taxonomy {
      grid-column: 3; } }

article > h1 {
  font-size: clamp(2rem, calc(1.7rem + 1.2vw), 2.3rem); }

article > h2 {
  font-size: clamp(1.65rem, calc(1.45rem + 0.9vw), 1.85rem);
  line-height: 1.2; }

article > h3 {
  font-size: clamp(1.35rem, calc(1.2rem + 0.6vw), 1.5rem); }

article > h4 {
  font-style: italic;
  font-weight: 400; }

article ol, article ul {
  margin: 1.5rem 0 1.5rem 1rem;
  list-style: none; }

article dt {
  font-weight: bold; }

article dd {
  margin-bottom: 1rem; }

article ol {
  counter-reset: start-from 0; }
  article ol li::before {
    counter-increment: start-from;
    content: counter(start-from) ".";
    margin-top: .05rem; }

article ul li::before {
  content: "▪";
  font-weight: bold; }

article li {
  position: relative; }
  article li > ul, article li > ol {
    margin: 0 0 0 1.5rem; }
  article li::before {
    color: var(--color-primary, #ff2e63);
    font-family: var(--font-family-sans, "Geist", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);
    font-weight: normal;
    inset-inline-start: -5em;
    padding-inline-end: 0.5em;
    position: absolute;
    text-align: end;
    width: 5em; }

article blockquote {
  background-color: color-mix(in srgb, var(--color-text) 8%, var(--color-bg));
  border-inline-start: 0.1rem solid var(--color-secondary, #08d9d6);
  font-family: var(--font-family-sans, "Geist", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);
  padding: 1rem;
  margin-inline: -1rem;
  text-wrap: pretty; }
  article blockquote p:last-of-type {
    margin-bottom: 0; }

article pre:not(.highlight pre) {
  margin-inline: -1rem;
  padding: 1rem; }

.description {
  font-family: var(--font-family-serif, "Literata", Georgia, "Times New Roman", Times, serif);
  font-size: .9rem;
  font-style: italic;
  font-weight: normal;
  line-height: 1.5rem;
  text-wrap: pretty; }

.metadata {
  color: var(--color-text);
  font-family: var(--font-family-sans, "Geist", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: 0.75rem; }
  .metadata:not(.browse):not(.pagination) {
    opacity: 0.7; }

.page > header {
  margin-bottom: 1rem; }
  .page > header > * + * {
    margin-top: 1rem; }

.post :not(pre) > code {
  background-color: color-mix(in srgb, var(--color-text) 8%, var(--color-bg));
  border: 1px solid color-mix(in srgb, var(--color-border-light) 60%, transparent);
  border-radius: 0.25rem;
  color: var(--color-text, #252a34);
  font-size: 0.9em;
  padding-block: 0.05rem;
  padding-inline: 0.3rem; }

.post footer {
  clear: both;
  font-family: var(--font-family-sans, "Geist", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: .75rem;
  margin-top: 1rem; }
  .post footer ul {
    margin: 0 0 .5rem; }
  .post footer li::before {
    content: ""; }

.post .taxonomy {
  display: inline; }
  .post .taxonomy li {
    display: inline;
    position: relative; }
    .post .taxonomy li::after {
      content: ","; }
    .post .taxonomy li:last-child::after {
      content: ""; }
    .post .taxonomy li a {
      text-decoration: none;
      opacity: 0.7; }
      .post .taxonomy li a:link, .post .taxonomy li a:visited {
        color: var(--color-text); }
      .post .taxonomy li a:hover, .post .taxonomy li a:active {
        color: var(--color-link, #ff2e63);
        opacity: 1; }
      .post .taxonomy li a:focus-visible {
        color: var(--color-link, #ff2e63);
        opacity: 1;
        outline: 0.15rem solid color-mix(in srgb, var(--color-primary) 55%, transparent);
        outline-offset: .2rem; }

@media only screen and (min-width: 992px) {
  .dual {
    display: grid;
    gap: 1rem;
    grid-auto-columns: 50fr 50fr;
    grid-auto-flow: column; }
  .inset,
  .vault-image.inset {
    float: right;
    margin: 0 0 1rem 1rem;
    max-width: 50%; }
  .inset-left,
  .vault-image.inset-left {
    float: left;
    margin: 0 1rem 1rem 0;
    max-width: 50%; }
  .dual,
  .highlight {
    margin-inline: -1rem; } }

.vault-figure {
  background-color: color-mix(in srgb, var(--color-text) 8%, var(--color-bg));
  display: block;
  font-family: var(--font-family-sans, "Geist", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);
  padding: 1rem; }
  .vault-figure > .vault-image {
    width: 100%; }
  .vault-figure img {
    display: block;
    height: auto;
    max-width: 100%;
    width: 100%; }
  .vault-figure figcaption {
    font-size: 0.75rem;
    padding: .75rem 0 0 0;
    text-wrap: pretty; }
    .vault-figure figcaption :last-child {
      margin-bottom: 0; }

.vault-image {
  display: block;
  max-width: 100%; }
  .vault-image img {
    display: block;
    height: auto;
    width: 100%; }

img.vault-image {
  height: auto; }

@media only screen and (min-width: 992px) {
  .dual .vault-figure {
    margin: 0;
    max-width: 100%; }
  article > .vault-figure:not(.inset):not(.inset-left) {
    margin-inline: -1rem; } }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0; }

.theme-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--color-text);
  vertical-align: middle; }
  .theme-toggle:focus-visible {
    outline: 0.15rem solid color-mix(in srgb, var(--color-primary) 55%, transparent);
    outline-offset: .2rem; }
  .theme-toggle svg {
    height: 18px;
    transition: scale 300ms ease-in-out, rotate 500ms cubic-bezier(0.4, 0, 0.2, 1);
    width: 18px; }
  .theme-toggle #sun-icon {
    position: absolute;
    scale: 1; }
  .theme-toggle #moon-icon {
    rotate: 0turn;
    scale: 0; }

:root:has(input#theme-toggle:checked),
:root.dark {
  --color-bg: #181825;
  --color-bg-alt: #252a34;
  --color-background: #181825;
  --color-surface: #252a34;
  --color-alt: #252a34;
  --color-text: #cdd6f4;
  --color-primary: #ff2e63;
  --color-secondary: #08d9d6;
  --color-link: #ff2e63;
  --color-link-hover: #08d9d6;
  --color-hover: #08d9d6;
  --color-border: #252a34;
  --color-border-light: #313244;
  --color-border-lighter: #45475a;
  --color-code-bg: #252a34;
  --color-code-text: #ffffff;
  --color-selection-bg: #ff2e63;
  --color-selection-text: #ffffff;
  --color-figure-bg: #181825;
  --color-footer-bg: #252a34;
  --color-footer-text: #ffffff;
  --syntax-bg: #252a34;
  --syntax-fg: #ffffff;
  --syntax-keyword: #66d9ef;
  --syntax-keyword-alt: #f92672;
  --syntax-function: #a6e22e;
  --syntax-string: #e6db74;
  --syntax-number: #ae81ff;
  --syntax-comment: #a6adc8;
  --syntax-operator: #f92672; }
  :root:has(input#theme-toggle:checked) .theme-toggle,
  :root.dark .theme-toggle {
    color: var(--color-primary); }
    :root:has(input#theme-toggle:checked) .theme-toggle #sun-icon,
    :root.dark .theme-toggle #sun-icon {
      scale: 0; }
    :root:has(input#theme-toggle:checked) .theme-toggle #moon-icon,
    :root.dark .theme-toggle #moon-icon {
      scale: 1;
      rotate: 1turn; }

.icon {
  height: 1rem;
  width: 1rem;
  vertical-align: middle; }
  .icon.large {
    height: 2rem;
    width: 2rem; }
  .icon.small {
    height: .75rem;
    width: .75rem; }
  .icon.left {
    float: left;
    margin-right: .25rem; }
  .icon.right {
    float: right;
    margin-left: .25rem; }

.section-group {
  border-color: var(--color-text, #252a34);
  border-style: solid;
  border-width: .125rem 0 .0;
  margin-top: 2rem; }
  .section-group .section-title {
    color: var(--color-text, #252a34);
    border-color: var(--color-text, #252a34);
    border-style: solid;
    border-width: 0 0 .1rem;
    margin: 0;
    padding: .325rem 0;
    text-transform: uppercase; }
  .section-group a {
    text-decoration: none; }
    .section-group a span {
      display: block; }

.taxonomy-list li {
  border-bottom: 1px solid var(--color-border-light); }
  .taxonomy-list li > a {
    display: block;
    padding: 5px 5px 5px 0;
    position: relative;
    text-transform: uppercase; }

.taxonomy-list .taxonomy-count {
  position: absolute;
  right: 0;
  top: .3rem; }

.taxonomy-list::after {
  clear: both;
  content: "";
  display: table; }

.teaser {
  border-color: var(--color-border-lighter);
  border-style: solid;
  border-width: 0 0 1px;
  font-size: 1rem;
  padding: .5rem 0; }
  .teaser .title {
    margin: 0; }
  .teaser .description {
    margin: 0; }
  .teaser a {
    text-decoration: none; }
  .teaser time {
    font-size: 0.75rem;
    opacity: 0.7; }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .teaser time {
    float: right; } }

@media only screen and (min-width: 768px) {
  .taxonomy-list li {
    float: left;
    width: 48%; }
    .taxonomy-list li:nth-child(2n) {
      margin-left: 4%; } }
