/* HAHN – Basis (alle Seiten) */
/* Schrift „Source Sans 3“ (SIL Open Font License), lokal aus dem Theme – keine externen Server */
@font-face { font-family: "Source Sans 3"; src: url("../fonts/source-sans-3-vf.woff2") format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Sans 3"; src: url("../fonts/source-sans-3-vf-italic.woff2") format("woff2"); font-weight: 200 900; font-style: italic; font-display: swap; }
:root {
  --text: #3c3c3b;
  --grey: #636362;
  --gold: #d5b56e;
  --bg-contact: #ededed;
  --ink: #1c2c39;
  --container: 1330px;
  --font: "Source Sans 3", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; font-family: var(--font); font-weight: 300; color: var(--text); background: #fff; }
img { display: block; max-width: 100%; }
a { color: inherit; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 100000; width: auto; height: auto; margin: 0; padding: 10px 16px; clip: auto; clip-path: none; background: #fff; color: var(--text); outline: 2px solid var(--gold); }
.container { width: min(var(--container), 100% - 48px); margin-inline: auto; }
.logo { display: block; width: 348px; }
.logo img { width: 100%; height: auto; }

/* Footer */
.site-footer { background: var(--text); color: #fff; }
.site-footer .container { min-height: 144px; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; padding-block: 24px; }
.site-footer .links { font-size: 14px; letter-spacing: .1em; }
.site-footer .links ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
.site-footer .links li + li::before { content: "|"; margin: 0 .35em; }
.site-footer .links a { text-decoration: none; }
.site-footer .links a:hover, .site-footer .links a[aria-current] { text-decoration: underline; text-decoration-color: var(--gold); text-decoration-thickness: 2px; text-underline-offset: 3px; }

@media (max-width: 1000px) {
  .logo, .site-footer .logo { width: 220px; }
}
