/* Legal pages (Datenschutz, Nutzungsbedingungen, Impressum, Konto löschen).
   Web rules of the Flâneur corporate design, see flaneur-concept
   Brand_Assets/Corporate_Design.md → "Web und App". */
@font-face{ font-family:"Brown Std"; src:url("/fonts/Brown-Regular.otf") format("opentype"); font-weight:400; font-style:normal; font-display:swap; }
@font-face{ font-family:"Brown Std"; src:url("/fonts/Brown-Regular-Italic.otf") format("opentype"); font-weight:400; font-style:italic; font-display:swap; }
@font-face{ font-family:"Brown Std"; src:url("/fonts/Brown-Bold.otf") format("opentype"); font-weight:700; font-style:normal; font-display:swap; }
@font-face{ font-family:"Brown Std"; src:url("/fonts/Brown-Light.otf") format("opentype"); font-weight:300; font-style:normal; font-display:swap; }

:root{
  --red:#EB5A4F;      /* Flâneur Rot: headline accent, link underline */
  --ink:#231F20;      /* Fast-Schwarz: text */
  --paper:#FFFFFF;    /* Weiß: ground */
  --muted:#4A4A4A;    /* Textgrau: secondary text */
  --line:#E8E8E8;     /* Liniengrau: rules */
}
@media (prefers-color-scheme: dark){
  :root{ --ink:#FFFFFF; --paper:#231F20; --muted:#C9C6C4; --line:#3F3A3B; }
}
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"Brown Std", system-ui, -apple-system, "Segoe UI", sans-serif; font-weight:400;
  line-height:1.6; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
main{ max-width:42rem; margin:0 auto; padding:2rem 1rem 4rem; }
/* The logo, never the name set in type. One SVG, coloured by the theme. */
.wordmark{
  display:block; width:6rem; aspect-ratio:214.556/180; background:var(--ink);
  -webkit-mask:url("/images/flaneur_logo_min_tight.svg") no-repeat left center / contain;
          mask:url("/images/flaneur_logo_min_tight.svg") no-repeat left center / contain;
}
h1{ color:var(--red); font-size:2.25rem; line-height:1.15; font-weight:700; margin:2.5rem 0 .4rem; }
.stand{ color:var(--muted); font-weight:300; margin:0 0 2.5rem; }
h2{ font-size:1.3rem; line-height:1.3; font-weight:700; margin:2.6rem 0 .7rem; padding-top:1rem; border-top:1px solid var(--line); }
h3{ font-size:1.08rem; font-weight:400; margin:1.6rem 0 .4rem; }
p, li{ font-size:1.05rem; }
ul{ padding-left:1.2rem; }
li::marker{ color:var(--red); }
a{ color:var(--ink); text-decoration:underline; text-decoration-color:var(--red); text-decoration-thickness:2px; text-underline-offset:.2em; }
a:hover, a:focus-visible{ color:var(--red); }
strong{ font-weight:700; }
table{ border-collapse:collapse; width:100%; font-size:.95rem; margin:.6rem 0 1rem; }
th, td{ text-align:left; vertical-align:top; padding:.5rem .5rem .5rem 0; border-bottom:1px solid var(--line); }
th{ font-weight:300; color:var(--muted); }
.table-wrap{ overflow-x:auto; }
footer{ margin-top:3.5rem; padding-top:1rem; border-top:1px solid var(--line); color:var(--muted); font-weight:300; font-size:.9rem; display:flex; flex-wrap:wrap; gap:.4rem 1.2rem; }
footer a{ color:var(--muted); text-decoration-thickness:1px; }
