/* Gemeinsame Gestaltung für Impressum und Datenschutz */
:root { --wand:#ECEBE7; --weiss:#FAFAF8; --tinte:#1E1E1E; --rot:#EA642A; --rot-text:#B4430F; --grau:#5C5B58; --linie:#D9D7D1; --rand:clamp(1rem,4vw,3.5rem); }
*,*::before,*::after { box-sizing:border-box; }
body { margin:0; font-family:"Plus Jakarta Sans",system-ui,sans-serif; font-size:clamp(1rem,.97rem + .12vw,1.0625rem); line-height:1.65; color:var(--tinte); background:var(--weiss); }
a { color:var(--rot-text); }
:focus-visible { outline:3px solid var(--rot); outline-offset:3px; border-radius:4px; }
.wrap { width:min(100% - 2*var(--rand), 46rem); margin-inline:auto; }
.kopf { background:var(--wand); border-bottom:1px solid var(--linie); }
.kopf .wrap { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:4.25rem; width:min(100% - 2*var(--rand), 70rem); }
.logo { display:inline-flex; flex-direction:column; align-items:center; text-decoration:none; line-height:1; color:var(--tinte); }
.logo b { font-family:"Archivo",system-ui,sans-serif; font-weight:900; font-style:italic; font-stretch:118%; font-size:1.55rem; }
.logo b i { color:var(--rot); font-style:inherit; }
.logo small { font-weight:700; font-size:.72rem; margin-top:.15em; }
.zurueck { font-weight:700; text-decoration:none; color:var(--tinte); }
.zurueck:hover { color:var(--rot-text); }
main { padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(3rem,7vw,5rem); }
h1 { font-family:"Archivo",system-ui,sans-serif; font-weight:800; font-style:italic; font-stretch:108%; font-size:clamp(2rem,1.4rem + 2vw,3rem); line-height:1; letter-spacing:-.015em; margin:0 0 1.5rem; }
h2 { font-size:1.2rem; font-weight:800; margin:2.25rem 0 .5rem; }
h3 { font-size:1.02rem; font-weight:700; margin:1.5rem 0 .35rem; }
p, ul { margin:0 0 1em; max-width:65ch; }
ul { padding-left:1.2rem; }
address { font-style:normal; margin-bottom:1em; }
.hinweis { color:var(--grau); font-size:.9rem; }
.ph { background:#FFEC8A; padding:0 .2em; border-radius:3px; }
.fuss { background:var(--tinte); color:#CFCDC7; padding:2rem 0; font-size:.95rem; }
.fuss .wrap { display:flex; flex-wrap:wrap; gap:1rem 2rem; justify-content:space-between; width:min(100% - 2*var(--rand), 70rem); }
.fuss a { color:#CFCDC7; text-decoration:none; }
.fuss a:hover { color:#fff; text-decoration:underline; }
