/* Mentanura — Stylesheet für Rechtsseiten (Impressum, Datenschutz) */
:root{
  --paper:#F5F4EF; --paper-2:#EDEBE3; --paper-3:#2B3A30;
  --ink:#2C3D33; --ink-soft:#5E6F62; --sage:#8A9A8C;
  --gold:#A98B5D; --line:rgba(44,61,51,.14); --line-2:rgba(44,61,51,.08);
  --serif:"Cormorant Garamond",Georgia,serif;
  --sans:"Mulish",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; overflow-x:hidden; scroll-behavior:smooth; }
body{
  font-family:var(--sans); background:var(--paper); color:var(--ink);
  font-weight:300; line-height:1.75; overflow-x:hidden;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  -webkit-tap-highlight-color:transparent; text-rendering:optimizeLegibility;
}
.wrap{ max-width:820px; margin:0 auto; padding:0 32px; }

/* top bar */
header.topbar{
  position:sticky; top:0; z-index:50;
  display:flex; align-items:center; justify-content:space-between;
  padding:18px 32px; background:rgba(245,244,239,.9);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line-2);
}
.topbar .mark{
  font-family:var(--sans); font-weight:500; font-size:13px;
  letter-spacing:.46em; text-transform:uppercase; color:var(--ink);
  text-indent:.46em; text-decoration:none;
}
.topbar .back{
  font-size:12.5px; letter-spacing:.1em; color:var(--ink-soft);
  text-decoration:none; display:inline-flex; align-items:center; gap:8px;
  transition:color .25s;
}
.topbar .back:hover{ color:var(--gold); }

/* page header */
.page-head{ padding:84px 0 30px; }
.page-head .kicker{
  font-size:12px; letter-spacing:.42em; text-transform:uppercase;
  color:var(--gold); font-weight:500;
}
.page-head h1{
  font-family:var(--serif); font-weight:400; letter-spacing:.02em;
  font-size:clamp(34px,6vw,56px); line-height:1.08; color:var(--ink);
  margin-top:16px;
}
.page-head .updated{ margin-top:18px; font-size:12.5px; color:var(--sage); letter-spacing:.04em; }

/* prose */
main.prose{ padding:20px 0 90px; }
.prose h2{
  font-family:var(--serif); font-weight:500; letter-spacing:.01em;
  font-size:clamp(22px,3vw,30px); line-height:1.2; color:var(--ink);
  margin:48px 0 14px; padding-top:30px; border-top:1px solid var(--line);
}
.prose h2:first-of-type{ border-top:0; padding-top:0; margin-top:8px; }
.prose h3{
  font-family:var(--sans); font-weight:600; font-size:15px;
  letter-spacing:.02em; color:var(--ink); margin:26px 0 8px;
}
.prose p, .prose li{ font-size:15.5px; color:var(--ink-soft); max-width:70ch; }
.prose p{ margin:10px 0; }
.prose strong{ color:var(--ink); font-weight:600; }
.prose a{ color:var(--gold); text-decoration:none; border-bottom:1px solid var(--line); padding-bottom:1px; }
.prose a:hover{ border-color:var(--gold); }
.prose ul{ margin:10px 0 10px 2px; padding-left:20px; }
.prose li{ margin:6px 0; }
.prose .addr{ font-style:normal; line-height:1.7; }
.prose .note{
  font-size:13.5px; color:var(--ink-soft); background:var(--paper-2);
  border-left:2px solid var(--gold); padding:16px 20px; border-radius:0 8px 8px 0; margin:20px 0;
}
.prose .lead{ font-size:17px; color:var(--ink); max-width:64ch; }

/* footer (shared with onepager) */
footer.foot{ border-top:1px solid var(--line); padding:48px 0 38px; }
.foot-inner{ display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:28px 48px; }
.foot-brand .fm{ font-family:var(--sans); font-size:12px; letter-spacing:.4em; text-transform:uppercase; color:var(--ink); text-indent:.4em; }
.foot-brand .fc{ font-size:11.5px; letter-spacing:.08em; color:var(--sage); margin-top:8px; }
.foot-col-title{ font-size:10.5px; letter-spacing:.26em; text-transform:uppercase; color:var(--sage); margin-bottom:14px; }
.foot-links, .foot-social{ display:flex; flex-direction:column; gap:11px; }
.foot-links a, .foot-social a, .foot-link-btn{
  font-size:13px; letter-spacing:.04em; color:var(--ink-soft); text-decoration:none;
  transition:color .25s; width:fit-content; border:0;
}
.foot-links a:hover, .foot-social a:hover, .foot-link-btn:hover{ color:var(--gold); }
.foot-link-btn{ font-family:var(--sans); font-weight:300; background:none; padding:0; cursor:pointer; text-align:left; }
.foot-social a{ display:inline-flex; align-items:center; gap:9px; }
.foot-social svg{ width:16px; height:16px; flex:none; }
.foot-base{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-top:40px; padding-top:20px; border-top:1px solid var(--line-2); }
.foot-base span{ font-size:11.5px; letter-spacing:.06em; color:var(--sage); }
@media(max-width:560px){ .foot-inner{ gap:24px; } }
