/* myBau Infrastructure - Rechtsseiten (Impressum / Datenschutz) */
@font-face{font-family:'Inter';src:url('fonts/inter.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url('fonts/spacegrotesk.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --bg:#ffffff;--cream:#faf7f2;--ink:#131a24;--body:#404a58;--muted:#828c9a;
  --navy:#0c1420;--navy2:#131f31;--orange:#ff7a00;--orange-d:#e85d04;--orange-l:#ff9d3c;
  --line:#ece5db;--line2:#26344a;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:clip}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--body);
  background:var(--bg);line-height:1.75;overflow-x:clip;-webkit-font-smoothing:antialiased;font-size:1.02rem}
img{max-width:100%;height:auto;display:block}
a{color:var(--orange-d);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{font-family:'Space Grotesk',sans-serif;color:var(--ink);line-height:1.15;letter-spacing:-.02em;font-weight:700}
.wrap{width:100%;max-width:940px;margin:0 auto;padding:0 24px}

/* Header */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:76px;max-width:1200px;margin:0 auto;padding:0 24px}
.brand img{height:52px;width:auto;display:block}
.nav-right{display:flex;align-items:center;gap:28px}
.nav-right a{color:var(--ink);font-weight:500;font-size:.98rem}
.nav-right a:hover{color:var(--orange-d);text-decoration:none}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:.98rem;
  padding:12px 22px;border-radius:6px;background:linear-gradient(120deg,var(--orange),var(--orange-d));color:#fff;transition:.2s}
.btn:hover{transform:translateY(-2px);text-decoration:none;color:#fff}

/* Titel-Banner */
.page-hero{background:linear-gradient(120deg,var(--navy),var(--navy2));color:#fff;padding:72px 0 60px;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,122,0,.28),transparent 70%)}
.page-hero .eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:'Space Grotesk',sans-serif;font-size:.8rem;
  font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-l);margin-bottom:16px}
.page-hero .eyebrow::before{content:"";width:26px;height:2px;background:var(--orange)}
.page-hero h1{font-size:clamp(2rem,4.5vw,3rem);color:#fff;position:relative}

/* Inhalt */
.legal{padding:64px 0 88px}
.legal h2{font-size:1.5rem;margin:44px 0 14px;padding-top:8px}
.legal h2:first-child{margin-top:0}
.legal h3{font-size:1.12rem;margin:26px 0 8px;color:var(--ink)}
.legal p{margin-bottom:14px;max-width:72ch}
.legal ul{margin:0 0 16px 22px}
.legal li{margin-bottom:7px}
.legal .box{background:var(--cream);border-left:3px solid var(--orange);padding:22px 26px;margin:20px 0}
.legal .box p:last-child{margin-bottom:0}
.legal strong{color:var(--ink)}
.legal hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.updated{color:var(--muted);font-size:.9rem;margin-top:40px}

/* Footer */
footer{background:var(--navy);color:#9fb0c4;padding:56px 0 26px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:44px;padding-bottom:34px;border-bottom:1px solid var(--line2);max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px}
footer img.flogo{height:56px;margin-bottom:18px;filter:brightness(0) invert(1);opacity:.96}
footer h4{color:#fff;font-family:'Space Grotesk',sans-serif;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px}
footer a{color:#9fb0c4;display:block;margin-bottom:9px}
footer a:hover{color:var(--orange-l);text-decoration:none}
footer .foot-desc{max-width:340px;color:#9fb0c4}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:22px 24px 0;max-width:1200px;margin:0 auto;font-size:.9rem;color:#7f90a4}
.foot-bottom a{display:inline;color:#9fb0c4}

@media(max-width:760px){
  .foot-grid{grid-template-columns:1fr;gap:28px}
  .nav-right{gap:16px}
  .nav-right a.hide-sm{display:none}
}
