@font-face { font-family: 'TitilliumWeb-Regular'; src: url('font/TitilliumWeb-Regular.ttf'); font-display: swap; } @font-face { font-family: 'TitilliumWeb-Bold'; src: url('font/TitilliumWeb-Bold.ttf'); font-display: swap; } :root { --ground: #E7E2F5; --ink: #221A44; --accent: #6E2A7C; --rule: #C9C0E2; } * { box-sizing: border-box; } body { margin: 0; background: var(--ground); color: var(--ink); font-family: 'TitilliumWeb-Regular', system-ui, sans-serif; font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; } .page { max-width: 1000px; margin: 0 auto; padding-inline: 20px; padding-block: 28px 64px; } /* --- Sprachwechsel --- */ .lang { display: flex; justify-content: flex-end; gap: 10px; font-size: 14px; letter-spacing: 0.12em; } .lang a, .lang span { text-decoration: none; padding: 2px 4px; } .lang a { color: var(--accent); } .lang a:hover, .lang a:focus-visible { text-decoration: underline; } .lang [aria-current] { font-family: 'TitilliumWeb-Bold', system-ui, sans-serif; color: var(--ink); } .lang .sep { color: var(--rule); padding: 0; } /* --- Kopf --- */ .masthead { text-align: center; margin-block: 44px 72px; } .masthead img { display: block; width: 250px; height: auto; margin: 0 auto; } .masthead p { margin: 22px 0 0; font-size: 14px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--accent); } h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; } /* --- Ausgaben --- */ .editions { display: flex; flex-direction: column; gap: 48px; } .edition { display: block; text-decoration: none; color: inherit; } .edition img { display: block; width: 100%; height: auto; transition: opacity 0.2s ease; } .edition:hover img, .edition:focus-visible img { opacity: 0.86; } .edition:focus-visible { outline: 2px solid var(--accent); outline-offset: 6px; } .caption { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: baseline; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--rule); font-size: 15px; } .caption .no { font-family: 'TitilliumWeb-Bold', system-ui, sans-serif; } .caption .where { color: var(--accent); } .caption .only { font-size: 13px; letter-spacing: 0.06em; color: var(--accent); opacity: 0.75; } .caption .when { margin-left: auto; color: var(--accent); } /* --- Fuß --- */ footer { margin-top: 72px; padding-top: 20px; border-top: 1px solid var(--rule); display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 14px; } footer a { color: var(--accent); } @media (max-width: 560px) { .page { padding-block: 20px 48px; } .masthead { margin-block: 32px 48px; } .editions { gap: 36px; } .caption .when { margin-left: 0; width: 100%; } } @media (prefers-reduced-motion: reduce) { * { transition: none !important; } }