:root{
    --accent: #00b8a9;
    --bg-grad: linear-gradient(135deg, #0f2027, #203a43, #2c5364);
    --surface: rgba(255,255,255,.06);
    --stroke: rgba(255,255,255,.15);
    --text: #f5f8fc;
    --muted: #cbd5e1;
    --shadow: 0 8px 24px rgba(0,0,0,.45);
  }
  
  body.privacy-body{
    margin: 0;
    background: var(--bg-grad);
    color: var(--text);
    font-family: "Inter", sans-serif;
  }
  
  /* Hero */
  .hero-privacy{
    position: relative;
    min-height: 30vh;
    display: flex; align-items: center; justify-content: center;
    text-align: center;
    padding: 40px 0;
  }
  .hero-overlay{ position:absolute; inset:0; background:rgba(0,0,0,.55); z-index:-1; }
  .hero-content h1{ font-size: clamp(1.8rem,3vw,2.4rem); margin-bottom:.4rem; }
  .hero-content .subtitle{ color: var(--muted); }
  
  /* Datenschutz Content */
  .privacy-section{
    padding: 40px 0;
  }
  .privacy-section h2{
    margin-top: 1.6rem;
    margin-bottom: .6rem;
    color: #fff;
  }
  .privacy-section p{
    margin: .2rem 0 1rem;
    color: var(--muted);
    line-height: 1.6;
  }
  
  /* Container */
  .container{
    width: min(1000px, 92vw);
    margin-inline: auto;
  }
  
  
  
  
  
  
  
  
  
  
  /* === Footer === */
  .site-footer{
    margin-top: clamp(40px, 6vw, 80px);
    padding-top: clamp(28px, 3.5vw, 40px);
    background: linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.18));
    border-top: 1px solid var(--stroke);
  }
  
  .footer-grid{
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr 1fr;
    gap: clamp(18px, 3vw, 28px);
    align-items: start;
  }
  
  /* Brand */
  .footer-brand .brand{
    display: inline-block;
    font-weight: 800;
    letter-spacing: .06em;
    text-decoration: none;
    color: #fff;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid var(--stroke);
    background: var(--surface-0);
  }
  .brand-sub{ color: var(--muted); margin: .6rem 0 1rem; }
  .social{
    display: flex; gap: 12px; padding: 0; margin: 0; list-style: none;
  }
  .social a{
    width: 38px; height: 38px; display: grid; place-items: center;
    border: 1px solid var(--stroke); border-radius: 10px; color: var(--text);
    background: var(--surface-0);
    transition: transform var(--t-fast) var(--e-out), border-color var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out);
  }
  .social a:hover{ transform: translateY(-2px); color: var(--accent); border-color: var(--accent); }
  
  /* Columns */
  .footer-col h3{
    font-size: 1rem; margin-bottom: .6rem; color: #fff; font-weight: 700;
  }
  .footer-col ul{ margin: 0; padding: 0; list-style: none; display: grid; gap: .4rem; }
  .footer-col a{
    color: var(--muted); text-decoration: none; border-radius: 8px; padding: 6px 0;
    transition: color var(--t-fast) var(--e-out);
  }
  .footer-col a:hover{ color: var(--accent); }
  
  /* Bottom bar */
  .footer-bottom{
    margin-top: clamp(18px, 2.5vw, 28px);
    border-top: 1px solid var(--stroke);
    background: rgba(0,0,0,.18);
  }
  .bottom-inner{
    display: flex; gap: 14px; align-items: center; justify-content: space-between;
    padding: 14px 0;
  }
  .bottom-inner p{ color: var(--muted); margin: 0; font-size: .95rem; }
  .to-top{
    color: var(--text); text-decoration: none; border: 1px solid var(--stroke);
    padding: 8px 12px; border-radius: 10px; background: var(--surface-0);
    transition: transform var(--t-fast) var(--e-out), border-color var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out);
  }
  .to-top:hover{ transform: translateY(-2px); color: var(--accent); border-color: var(--accent); }
  
  /* Responsive */
  @media (max-width: 980px){
    .footer-grid{ grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 560px){
    .footer-grid{ grid-template-columns: 1fr; }
    .bottom-inner{ flex-direction: column; align-items: flex-start; gap: 8px; }
  }