@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(montserrat.woff2) format('woff2');}
:root{
  color-scheme:light;
  --bg:#F8F6F3;
  --bg-alt:#E9E2DA;
  --ink:#36393A;
  --ink-soft:#6A6056;
  --accent:#B8A185;
  --accent-dark:#8C7556;
  --line:rgba(54,57,58,0.15);
  --display:Georgia,'Iowan Old Style','Times New Roman',serif;
  --body:'Montserrat','Helvetica Neue',Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  min-height:100vh;
  display:flex;flex-direction:column;
  background:var(--bg);color:var(--ink);
  font-family:var(--body);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;}
a:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px;border-radius:2px;}
img{max-width:100%;height:auto;display:block;}
h1,h2,h3{font-family:var(--display);font-weight:400;margin:0;color:var(--ink);text-wrap:balance;}
h1 em{font-style:italic;color:var(--accent);}
p{margin:0;}

/* Startseite */
.cs{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 24px 40px;gap:0;}
.cs-logo{width:min(520px,86vw);margin:0 auto 48px;}
.cs-rule{width:56px;height:3px;background:var(--accent);margin:0 auto 32px;border-radius:2px;}
.cs h1{font-size:clamp(30px,5vw,48px);line-height:1.18;}
.cs-sub{margin:20px auto 0;max-width:46ch;color:var(--ink-soft);font-size:16.5px;line-height:1.7;}
.cs-contact{margin:36px auto 0;display:flex;flex-direction:column;gap:6px;font-size:15.5px;}
.cs-contact a{font-weight:600;font-size:clamp(13px,3.7vw,15.5px);white-space:nowrap;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:1px;text-underline-offset:5px;align-self:center;}
.cs-contact a:hover{color:var(--accent-dark);}
.cs-contact span{color:var(--ink-soft);}

/* Fußzeile */
footer{padding:22px 24px 28px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px 28px;align-items:center;justify-content:center;font-size:13px;color:var(--ink-soft);}
footer nav{display:flex;gap:24px;}
footer a{text-decoration:none;font-weight:600;color:var(--ink);}
footer a:hover{color:var(--accent-dark);text-decoration:underline;}

/* Rechtstexte */
.legal{flex:1;width:100%;max-width:780px;margin:0 auto;padding:40px 24px 56px;}
.legal .back{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--ink-soft);margin-bottom:28px;}
.legal .back:hover{color:var(--accent-dark);}
.legal h1{font-size:clamp(30px,4.5vw,42px);}
.legal .stand{margin-top:10px;font-size:13px;color:var(--ink-soft);}
.legal h2{font-size:22px;margin-top:40px;margin-bottom:12px;}
.legal h3{font-family:var(--body);font-size:15px;font-weight:700;margin-top:24px;margin-bottom:6px;}
.legal p{color:var(--ink-soft);font-size:15px;line-height:1.75;margin-bottom:12px;}
.legal ul{margin:0 0 12px;padding-left:20px;color:var(--ink-soft);font-size:15px;line-height:1.75;}
.legal li{margin-bottom:4px;}
.legal a{color:var(--ink);text-decoration:underline;}
.legal-logo{width:160px;margin-bottom:28px;}
