@font-face{font-family:"Barlow Semi Condensed";font-weight:600;font-style:normal;font-display:swap;src:url("../fonts/BarlowSemiCondensed-SemiBold-latin.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/SourceSans3-Regular.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-weight:600;font-style:normal;font-display:swap;src:url("../fonts/SourceSans3-Semibold.woff2") format("woff2")}
:root{--tinte:#10202E;--papier:#FFFFFF;--flaeche:#F3F5F4;--gruen:#0E7C5A;--gruen-dunkel:#0A5A42;--graphit:#5B6770;--linie:#D5DAD8;--bg:#10202E;--fg:#FFFFFF;--surface:rgba(255,255,255,.06);--akzent:#3FCF9B;--link:#3FCF9B;--neben:#B8C2C8;--trenn:rgba(255,255,255,.15);color-scheme:dark;
--head:"Barlow Semi Condensed","Arial Narrow",sans-serif;--body:"Source Sans 3",Calibri,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papier);color:var(--tinte);font:400 1.125rem/1.5 var(--body);min-height:100vh;display:flex;flex-direction:column}
.wrap{width:100%;max-width:60rem;margin:0 auto;padding:0 1.5rem}
header{padding:2.5rem 0 0}
.logo{display:block;width:16rem;max-width:70%;height:auto}
main{flex:1;padding:3rem 0 4rem}
h1{font:600 clamp(2rem,5vw,3.25rem)/1.1 var(--head);margin:0 0 1rem;letter-spacing:.005em}
h2{font:600 1.5rem/1.2 var(--head);margin:0 0 .75rem}
.lead{font-size:1.25rem;max-width:36rem;margin:0}
.motiv{display:block;width:100%;height:auto;margin:2.5rem 0 3rem}
.kontakt{background:var(--flaeche);border-top:3px solid var(--gruen);padding:1.5rem;max-width:36rem}
.kontakt p{margin:.25rem 0}
a{color:var(--gruen-dunkel);text-underline-offset:.15em}
a:hover{color:var(--tinte)}
a:focus-visible{outline:3px solid var(--gruen);outline-offset:2px}
.offen{color:var(--graphit)}
footer{border-top:1px solid var(--linie);padding:1.5rem 0;color:var(--graphit);font-size:1rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:space-between}
footer p{margin:0}
.dl dt{font-weight:600;margin-top:1rem}
.dl dd{margin:0}
.zurueck{display:inline-block;margin-top:2rem}
@media (max-width:30rem){body{font-size:1.0625rem}.wrap{padding:0 1.25rem}header{padding-top:1.75rem}main{padding:2rem 0 3rem}.kontakt{padding:1.25rem}}

html[data-theme=hell]{--bg:var(--papier);--fg:var(--tinte);--surface:var(--flaeche);--akzent:var(--gruen);--link:var(--gruen-dunkel);--neben:var(--graphit);--trenn:var(--linie);color-scheme:light}
body{background:var(--bg);color:var(--fg)}
.kontakt{background:var(--surface);border-top-color:var(--akzent)}
a{color:var(--link)}a:hover{color:var(--fg)}a:focus-visible{outline-color:var(--akzent)}
footer{border-top-color:var(--trenn);color:var(--neben)}
.hell-only{display:none}html[data-theme=hell] .hell-only{display:block}html[data-theme=hell] .dunkel-only{display:none}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.theme{font:600 .95rem var(--body);color:var(--fg);background:transparent;border:1px solid var(--trenn);border-radius:2rem;padding:.4rem .9rem;cursor:pointer}
.theme:hover{border-color:var(--akzent)}.theme:focus-visible{outline:3px solid var(--akzent);outline-offset:2px}
