/* Gemeinsames Aussehen für Impressum und Datenschutz */
@font-face { font-family: "Alegreya"; font-style: normal; font-weight: 400 900; font-display: swap; src: url(fonts/alegreya.woff2) format("woff2"); }
@font-face { font-family: "Alegreya"; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/alegreya-italic.woff2) format("woff2"); }
@font-face { font-family: "Alegreya Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/alegreya-sans-400.woff2) format("woff2"); }
@font-face { font-family: "Alegreya Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/alegreya-sans-700.woff2) format("woff2"); }

:root { --primary: #2a6f77; --deep: #1d4f55; --accent: #f2a65a; --bg: #eff6f6; --text: #1f3437; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--text); font: 400 1.125rem/1.65 "Alegreya Sans", system-ui, sans-serif; }
.top { background: var(--primary); padding: 18px 20px; }
.top a { font-family: "Alegreya", Georgia, serif; font-weight: 700; font-size: 1.5rem; text-decoration: none; color: var(--accent); text-shadow: 0 1px 3px rgba(0,0,0,.35); }
.top a span { color: #fff; font-weight: 500; font-style: italic; margin-left: .14em; }
main { max-width: 44rem; margin: 0 auto; padding: 48px 20px 72px; }
h1, h2 { font-family: "Alegreya", Georgia, serif; color: var(--deep); line-height: 1.2; }
h1 { font-size: clamp(2.2rem, 6vw, 3rem); margin: 0 0 24px; }
h2 { font-size: 1.45rem; margin: 36px 0 8px; }
p, ul { margin: 0 0 14px; }
a { color: var(--deep); overflow-wrap: anywhere; }
.back { display: inline-block; margin-top: 32px; font-weight: 700; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
