/* Keine externen Schriftarten: browserseitige Systemschriften. */
:root {--cream:#f8f5ed;--ink:#24221d;--gold:#b18a49;--muted:#756e61;}
* {box-sizing:border-box;}
html {scroll-behavior:smooth;}
body {margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;}
a {color:inherit;}
header {
  position:relative;
  background:#faf7ef;
  border-bottom:1px solid #e3d2b7;
  padding:24px max(5%,calc((100vw - 1160px)/2));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
header::before {
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,#83612e,#ddbb77,#997136);
}
.brand {font:500 25px/1.1 'Playfair Display',Georgia,serif;text-decoration:none;letter-spacing:-.7px;}
.brand span {
  display:block;margin-top:8px;
  font:600 10px 'DM Sans',Arial,sans-serif;
  letter-spacing:2.8px;text-transform:uppercase;color:#92703c;
}
nav {display:flex;gap:27px;font-size:13px;font-weight:600;}
nav a {text-decoration:none;}
nav a:hover {color:#aa7d40;}
.wrap {max-width:1120px;margin:auto;padding:0 24px;}
main {
  min-height:calc(100vh - 265px);
  padding:65px 0 105px;
  background:
    radial-gradient(circle at 84% 18%,rgba(191,150,84,.12),transparent 30%),
    var(--cream);
}
.back-link {
  display:inline-block;
  text-decoration:none;
  color:#89744e;
  font-size:13px;
  border-bottom:1px solid #cfb786;
  padding-bottom:5px;
}
.back-link:hover {color:#4b3b24;}
.heading {margin:55px 0 47px;}
.eyebrow {color:#a78147;font-size:11px;letter-spacing:3px;font-weight:700;}
h1 {
  font:500 clamp(52px,7vw,80px)/1.08 'Playfair Display',Georgia,serif;
  letter-spacing:-.035em;
  margin:13px 0 18px;
}
.heading p {color:#746c60;font-size:15px;line-height:1.65;}
.legal-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.legal-card {
  background:#fffdf8;
  border:1px solid #e3d6c1;
  border-top:3px solid #b18a49;
  padding:37px 40px 39px;
  box-shadow:0 17px 35px rgba(58,45,30,.055);
  min-height:302px;
}
.card-kicker {color:#a17c47;letter-spacing:2.5px;font-size:10px;font-weight:700;}
.legal-card h2 {
  font:500 30px/1.25 'Playfair Display',Georgia,serif;
  margin:22px 0 17px;
}
.legal-card p, .legal-card address {
  font-size:16px;
  line-height:1.85;
  font-style:normal;
  margin:0;
  color:#534d44;
}
.legal-card address {margin-top:12px;}
.contact-line {border-top:1px solid #e9dfd0;padding:17px 0 0;margin:19px 0;}
.contact-line span {display:block;font-size:10px;letter-spacing:2px;font-weight:700;color:#96703d;margin-bottom:8px;}
.contact-line a {font-weight:600;text-decoration:none;overflow-wrap:anywhere;}
.contact-line a:hover {color:#ab7d3c;text-decoration:underline;}
.legal-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  border-top:1px solid #dfceb1;
  padding:37px 0;
  margin-top:48px;
}
.legal-bottom p {max-width:520px;line-height:1.7;font-size:14px;color:#6f6659;}
.button {
  display:inline-block;text-decoration:none;white-space:nowrap;
  padding:16px 23px;
  background:linear-gradient(110deg,#d6b77d,#b88c49);
  color:#201e18;border-radius:3px;font-size:14px;font-weight:700;
}
.button:hover {background:#eccb91;}
footer {background:#201f1a;border-top:3px solid #b58b4d;color:#d7cdbb;text-align:center;padding:39px 20px;}
footer strong {font:500 27px 'Playfair Display',Georgia,serif;color:#eddec2;}
footer p {font-size:13px;margin:9px 0 18px;}
.footer-links {display:flex;justify-content:center;gap:28px;flex-wrap:wrap;}
.footer-links a {font-size:13px;color:#efe0c8;text-underline-offset:4px;}
.footer-links a:hover {color:#e4c088;}
.privacy-heading {margin-bottom:34px;}
.policy-meta {display:inline-block;margin-top:8px;font-size:12px;color:#938264;letter-spacing:.4px;}
.policy-intro {background:#26241f;color:#eee5d2;padding:34px 39px;margin-bottom:39px;border-left:4px solid #c8a367;box-shadow:0 16px 36px rgba(36,29,19,.09);}
.policy-intro p {font:400 18px/1.7 Georgia,serif;max-width:910px;margin:15px 0 17px;}
.policy-intro a {color:#e8c78e;text-underline-offset:5px;font-size:13px;}
.policy-layout {display:grid;grid-template-columns:250px minmax(0,1fr);gap:42px;align-items:start;}
.policy-toc {display:flex;flex-direction:column;gap:0;position:sticky;top:28px;background:#f0e9dc;padding:24px 26px 23px;border:1px solid #e1d2ba;}
.policy-toc strong {color:#93703e;letter-spacing:2px;font-size:10px;margin-bottom:15px;}
.policy-toc a {padding:10px 0;text-decoration:none;font-size:13px;line-height:1.35;color:#585044;border-bottom:1px solid #dfd3bf;}
.policy-toc a:last-child {border-bottom:0;}
.policy-toc a:hover {color:#a67a3c;}
.policy-article {background:#fffdf8;border:1px solid #e6d9c7;padding:12px 47px;box-shadow:0 14px 40px rgba(58,45,30,.045);}
.policy-section {padding:38px 0 41px;border-bottom:1px solid #e8dfd2;scroll-margin-top:24px;}
.policy-section.policy-last {border-bottom:0;}
.section-number {color:#b28b52;font-weight:700;font-size:11px;letter-spacing:2px;}
.policy-section h2 {font:500 clamp(24px,3vw,33px)/1.24 Georgia,serif;letter-spacing:-.02em;margin:9px 0 20px;}
.policy-section p,.policy-section li,.policy-section address {font-size:15px;line-height:1.82;color:#61594e;}
.policy-section p {margin:0 0 16px;}
.policy-section p:last-child {margin-bottom:0;}
.policy-section address {font-style:normal;margin:0 0 17px;padding:17px 20px;border-left:2px solid #bd985d;background:#f5efe4;}
.policy-section a {color:#8c632d;overflow-wrap:anywhere;text-underline-offset:3px;}
.policy-section ul {margin:0 0 19px;padding-left:22px;}
.policy-section li {margin:7px 0;}
.privacy-status {display:flex;align-items:flex-start;gap:15px;background:#f3f1e6;border:1px solid #e3ddc8;padding:19px 20px;margin-bottom:22px;color:#5d5b4e;font-size:13px;line-height:1.65;}
.privacy-status strong {color:#2d3b2d;}
.status-dot {flex:none;width:10px;height:10px;border-radius:50%;background:#6d8b54;margin-top:7px;box-shadow:0 0 0 4px #dbe6d2;}
.privacy-bottom {margin-top:40px;}
@media(max-width:760px) {
  header {padding:20px 24px;}
  .brand {font-size:22px;}
  nav {gap:12px;font-size:12px;}
  nav a:first-child {display:none;}
  main {padding:38px 0 65px;}
  .heading {margin:43px 0 33px;}
  .legal-grid {grid-template-columns:1fr;gap:17px;}
  .legal-card {padding:29px 27px;min-height:auto;}
  .legal-card h2 {font-size:27px;}
  .legal-bottom {display:block;padding-top:28px;margin-top:34px;}
  .button {margin-top:13px;}
  .privacy-heading {margin-bottom:26px;}
  .policy-intro {padding:28px 24px;}
  .policy-intro p {font-size:17px;}
  .policy-layout {grid-template-columns:1fr;gap:22px;}
  .policy-toc {position:static;padding:20px 24px;}
  .policy-article {padding:0 23px;}
  .policy-section {padding:29px 0 31px;}
}
