/* ============================================================
   Stylesheet für Impressum & Datenschutz
   Farben und Schriften wie auf der Startseite
   ============================================================ */
:root{
  --bg:#0A1422; --bg-2:#0E1C2E; --bg-3:#14263C;
  --text:#E7EEF7; --muted:#92A6BC; --dim:#6C8099;
  --teal:#45BFA6; --aqua:#2F9BA8; --blue:#3B8FE0;
  --line:rgba(146,182,220,.16); --line-soft:rgba(146,182,220,.08);
  --display:'Bricolage Grotesque','Helvetica Neue',sans-serif;
  --body:'IBM Plex Sans',system-ui,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  --wrap:820px; --pad:clamp(20px,5vw,56px); --r:4px;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:var(--body); font-size:17px; line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:radial-gradient(58% 40% at 78% 0%, rgba(59,143,224,.16), transparent 66%),
             radial-gradient(44% 32% at 10% 8%, rgba(69,191,166,.10), transparent 68%);
}
img{ max-width:100%; display:block; }
a{ color:var(--teal); text-decoration:none; border-bottom:1px solid var(--line); }
a:hover{ border-color:var(--teal); }
::selection{ background:var(--blue); color:#04101d; }
:focus-visible{ outline:2px solid var(--teal); outline-offset:3px; border-radius:2px; }

.wrap{ width:100%; max-width:var(--wrap); margin-inline:auto; padding-inline:var(--pad); position:relative; z-index:1; }

/* Kopf */
.masthead{
  position:sticky; top:0; z-index:60;
  background:rgba(10,20,34,.85);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.masthead__inner{
  display:flex; align-items:center; justify-content:space-between; gap:20px; height:78px;
  width:100%; max-width:1180px; margin-inline:auto; padding-inline:var(--pad);
}
.brand{ display:flex; align-items:center; border:0; }
.brand img{ height:38px; width:auto; }
.back{
  font-family:var(--mono); font-size:.75rem; letter-spacing:.08em;
  color:var(--muted); border:1px solid var(--line); border-radius:var(--r);
  padding:9px 15px; transition:.2s;
}
.back:hover{ color:var(--teal); border-color:var(--teal); }

/* Inhalt */
main{ padding:clamp(44px,7vw,80px) 0 clamp(60px,8vw,100px); }
h1{
  font-family:var(--display); font-weight:800; letter-spacing:-.028em; line-height:1.05;
  font-size:clamp(2.1rem,5vw,3.2rem); margin:0 0 14px;
}
h2{
  font-family:var(--display); font-weight:700; letter-spacing:-.02em; line-height:1.2;
  font-size:1.35rem; margin:52px 0 14px; padding-top:26px; border-top:1px solid var(--line);
}
h3{ font-family:var(--display); font-weight:700; font-size:1.05rem; margin:28px 0 8px; }
p{ margin:0 0 1em; color:#C3D2E2; }
ul{ padding-left:1.1em; margin:0 0 1.2em; color:#C3D2E2; }
li{ margin-bottom:.45em; }
.eyebrow{
  font-family:var(--mono); font-size:.72rem; font-weight:500; letter-spacing:.18em;
  text-transform:uppercase; color:var(--teal); display:flex; align-items:center; gap:10px; margin:0 0 22px;
}
.eyebrow::before{ content:""; width:26px; height:1px; background:var(--teal); flex:none; }
.stand{ font-family:var(--mono); font-size:.74rem; color:var(--dim); margin-bottom:36px; }

/* Datenblock */
.daten{
  list-style:none; padding:0; margin:0 0 8px;
  border:1px solid var(--line); border-radius:var(--r); background:var(--bg-2); overflow:hidden;
}
.daten li{
  display:grid; grid-template-columns:210px 1fr; gap:16px;
  padding:14px 20px; margin:0; border-bottom:1px solid var(--line-soft); font-size:.96rem;
}
.daten li:last-child{ border-bottom:0; }
.daten .k{
  font-family:var(--mono); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase;
  color:var(--dim); padding-top:4px;
}

/* Ausfüllhinweis – vor dem Livegang entfernen */
.hinweis{
  border:1px dashed rgba(69,191,166,.5); border-radius:var(--r);
  background:rgba(69,191,166,.07); padding:20px 22px; margin:0 0 40px;
  font-size:.93rem; color:#C3D2E2;
}
.hinweis strong{ color:var(--teal); }
.hinweis p:last-child{ margin-bottom:0; }

/* Platzhalter sichtbar machen */
.p{ color:var(--teal); background:rgba(69,191,166,.10); padding:1px 6px; border-radius:3px; font-family:var(--mono); font-size:.9em; }

/* Fuß */
.foot{ border-top:1px solid var(--line); padding:34px 0 44px; background:var(--bg-2); }
.foot__inner{
  display:flex; flex-wrap:wrap; gap:16px 28px; align-items:center; justify-content:space-between;
  width:100%; max-width:1180px; margin-inline:auto; padding-inline:var(--pad);
}
.foot nav{ display:flex; flex-wrap:wrap; gap:22px; }
.foot a{ font-family:var(--mono); font-size:.73rem; letter-spacing:.06em; color:var(--dim); border:0; }
.foot a:hover{ color:var(--teal); }
.foot__copy{ font-family:var(--mono); font-size:.7rem; color:var(--dim); }

@media (max-width:640px){
  body{ font-size:16px; }
  .masthead__inner{ height:70px; }
  .brand img{ height:30px; }
  .daten li{ grid-template-columns:1fr; gap:2px; }
  .daten .k{ padding-top:0; }
}
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *{ transition-duration:.001ms !important; }
}
