.skip-link { position: absolute; left: .75rem; top: -5rem; z-index: 2000; padding: .75rem 1rem; background: #fff; color: #17232e; box-shadow: 0 2px 8px rgba(0,0,0,.25); }
.skip-link:focus { top: .75rem; }
:focus-visible { outline: 3px solid #194f7d; outline-offset: 3px; }
img { height: auto; }
.zif-pagination { display: flex; justify-content: center; margin-top: 1.5rem; }
.zif-pagination .pagination { flex-wrap: wrap; justify-content: center; gap: .25rem; }
.zif-pagination .page-link { min-width: 2.5rem; text-align: center; }
.zif-archive-switch { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin: 0 0 1.5rem; }
.zif-empty-state { padding: 2rem; border: 1px solid #d7dce0; border-radius: .25rem; background: #fff; }
.zif-breadcrumbs { background: #f7f8f9; border-top: 1px solid #edf0f2; border-bottom: 1px solid #edf0f2; font-size: .9rem; }
.zif-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .35rem; list-style: none; margin: 0; padding: .65rem 0; }
.zif-breadcrumbs li + li::before { content: "/"; margin-right: .35rem; color: #66717b; }
.zif-breadcrumbs [aria-current="page"] { color: #4b5660; }
.zif-card-media { display: block; width: 100%; object-fit: cover; }
.zif-card-media.card-img-top { aspect-ratio: 16 / 10; }
.zif-external-icon { display: inline-flex; align-items: center; gap: .35rem; }
.zif-pagination .disabled .page-link { color: #65717c; }
time.icon { font-size: 1em; display: block; position: relative; width: 4em; height: 4em; background: #fff; border-radius: .5rem; box-shadow: 0 1px 0 #bdbdbd, 0 2px 0 #fff, 0 3px 0 #bdbdbd, 0 4px 0 #fff, 0 5px 0 #bdbdbd, 0 0 0 1px #bdbdbd; overflow: hidden; }
time.icon * { display: block; width: 100%; font-weight: 700; font-style: normal; text-align: center; }
time.icon strong { position: absolute; top: 0; padding: .1em 0; font-size: .8em; color: #fff; background: #8cb404; border-bottom: 1px dashed #729303; box-shadow: 0 2px 0 #8cb404; text-transform: uppercase; }
time.icon span { padding-top: 1em; color: #2f2f2f; font-size: 1.6em; letter-spacing: -.05em; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media (max-width: 575.98px) { .zif-pagination .page-link { min-width: auto; padding: .5rem .65rem; } .navbar-brand img { max-height: 64px; } .display-3, .display-4 { overflow-wrap: anywhere; } }
