/* =========================================================
   style.css  — Global
   ========================================================= */

:root{
  --bg:#071423;
  --card:#0b1b23;
  --accent:#6ee7b7;
  --accent-2:#14b37d;
  --muted:#94a3b8;
  --glass: rgba(255,255,255,0.03);
  --radius:12px;
  --maxw:1200px;
  --mono: 'JetBrains Mono', ui-monospace, Menlo, Monaco, monospace;
  --sans: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, Arial;
}

/* Reset + Background */
*{box-sizing:border-box}
html, body {
  height:100%;
  margin:0;
  font-family:var(--sans);
  color:#e8f6f2;

  background:
    radial-gradient(1200px 600px at 10% 10%, rgba(18,50,40,0.18), transparent 6%),
    linear-gradient(180deg,#041018 0%, #071423 100%);
  background-attachment: fixed;
}

/* Container utility */
.container{max-width:var(--maxw);margin:28px auto;padding:18px}

/* Header / nav basics (global) */
.header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-radius:14px;background:linear-gradient(90deg, rgba(255,255,255,0.02), transparent);border:1px solid rgba(255,255,255,0.02);margin:18px auto;max-width:var(--maxw);backdrop-filter: blur(6px)}
.brand{display:flex;align-items:center;gap:14px}
.brand img{width:62px;height:62px;border-radius:14px;object-fit:cover;border:1px solid rgba(255,255,255,0.03)}
.brand h1{margin:0;font-size:20px}
.nav{display:flex;gap:10px;align-items:center}
.nav a{padding:8px 12px;border-radius:10px;color:var(--muted);font-weight:600;font-size:14px}
.nav a:hover{color:var(--accent);background:var(--glass)}

/* Cards / grid / common components */
.grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}
@media(max-width:900px){.grid{grid-template-columns:1fr}}
.card{background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.008));padding:18px;border-radius:var(--radius);border:1px solid rgba(255,255,255,0.02)}
.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.title{font-size:18px;color:#eafff6}
.meta{color:var(--muted);font-size:13px}

/* Common form + lists */
.input, textarea{background:transparent;border:1px solid rgba(255,255,255,0.04);padding:10px;border-radius:8px;color:#e6f9f1}
.small{font-size:13px;color:var(--muted)}

/* Impressum-card base (visual styling only — layout in footer.css) */
.impressum-card {
  background: linear-gradient(180deg, rgba(255,255,255,0.015), rgba(255,255,255,0.01));
  border: 1px solid rgba(255,255,255,0.04);
  border-radius: var(--radius);
  padding: 50px 60px;
  max-width: 650px;
  width: 100%;
  text-align: center;
  box-shadow: 0 0 25px rgba(0,0,0,0.35);
  position: relative;
  overflow: hidden;
}
.impressum-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--radius);
  padding: 1.5px;
  background: linear-gradient(120deg, var(--accent-2), var(--accent), transparent 90%);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: 0.8;
}
.impressum-card h2{font-size:1.8rem;margin-bottom:1rem;background:linear-gradient(90deg,var(--accent-2),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.impressum-card p{font-size:15px;color:var(--muted);line-height:1.6}
.impressum-card a{color:var(--accent);font-weight:600}

/* Footer global baseline — simple, no background override */
.footer{margin-top:28px;padding:20px;border-top:1px solid rgba(255,255,255,0.02);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.footer .links{display:flex;gap:12px}
.badge{background:linear-gradient(90deg,var(--accent-2),var(--accent));padding:8px 12px;border-radius:10px;color:#022; font-weight:800}
.kv{display:flex;gap:8px;align-items:center}
.logo-mini{width:44px;height:44px;border-radius:10px;object-fit:cover;border:1px solid rgba(255,255,255,0.03)}
.footer small{color:var(--muted)}
