:root {
  --bg: #070b14;
  --bg-soft: #0d1422;
  --card: rgba(16, 25, 42, 0.84);
  --card-solid: #111b2d;
  --text: #f6f8fc;
  --muted: #aeb9ca;
  --primary: #2b7fff;
  --primary-2: #56b7ff;
  --accent: #e53935;
  --line: rgba(255, 255, 255, 0.09);
  --success: #4ade80;
  --shadow: 0 24px 80px rgba(0,0,0,.38);
  --radius: 22px;
  --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 10% 0%, rgba(43,127,255,.17), transparent 34%),
    radial-gradient(circle at 100% 20%, rgba(229,57,53,.10), transparent 30%),
    var(--bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .23;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, #000, transparent 82%);
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, textarea, select { font: inherit; }

.container { width: min(calc(100% - 32px), var(--max)); margin-inline: auto; }
.section { padding: 92px 0; }
.section.compact { padding: 62px 0; }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #c8dcff;
  font-weight: 800;
  font-size: .82rem;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.eyebrow::before {
  content: "";
  width: 28px;
  height: 2px;
  background: linear-gradient(90deg, var(--primary), var(--primary-2));
  border-radius: 999px;
}

h1, h2, h3, p { margin-top: 0; }
h1 { font-size: clamp(2.7rem, 7vw, 6rem); line-height: .98; letter-spacing: -.055em; }
h2 { font-size: clamp(2rem, 4vw, 3.55rem); line-height: 1.05; letter-spacing: -.035em; }
h3 { font-size: 1.15rem; }
.lead { color: var(--muted); font-size: clamp(1rem, 2vw, 1.24rem); max-width: 760px; }
.muted { color: var(--muted); }

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(7, 11, 20, .72);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid var(--line);
}
.navbar {
  min-height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.brand { display: inline-flex; align-items: center; gap: 13px; font-weight: 900; letter-spacing: -.02em; }
.brand img { width: 46px; height: 46px; object-fit: contain; filter: drop-shadow(0 10px 22px rgba(43,127,255,.24)); }
.brand span small { display: block; color: var(--muted); font-weight: 650; letter-spacing: .16em; font-size: .62rem; text-transform: uppercase; }
.nav-links { display: flex; align-items: center; gap: 8px; }
.nav-links a { padding: 10px 13px; border-radius: 12px; color: #d9e1ef; font-weight: 750; font-size: .94rem; }
.nav-links a:hover, .nav-links a.active { background: rgba(255,255,255,.07); color: white; }
.nav-toggle { display: none; background: transparent; color: white; border: 0; padding: 9px; border-radius: 10px; }
.nav-toggle span { display: block; width: 25px; height: 2px; background: currentColor; margin: 5px 0; }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 20px;
  border: 1px solid transparent;
  border-radius: 14px;
  font-weight: 850;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary { background: linear-gradient(135deg, var(--primary), #145dd0); box-shadow: 0 12px 32px rgba(43,127,255,.28); }
.btn-secondary { background: rgba(255,255,255,.06); border-color: var(--line); }
.btn-danger { background: linear-gradient(135deg, var(--accent), #aa2421); }
.btn-sm { min-height: 42px; padding: 0 16px; font-size: .9rem; }

.hero { min-height: calc(100svh - 78px); display: grid; align-items: center; padding: 72px 0; position: relative; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.18fr .82fr; align-items: center; gap: 56px; }
.hero h1 span { color: transparent; background: linear-gradient(135deg, #fff 12%, #94c9ff 50%, #2b7fff); background-clip: text; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.hero-points { display: flex; gap: 22px; flex-wrap: wrap; margin-top: 34px; color: #dce6f5; font-weight: 700; font-size: .92rem; }
.hero-points span::before { content: "✓"; color: var(--success); margin-right: 8px; }

.hero-panel {
  position: relative;
  min-height: 500px;
  display: grid;
  place-items: center;
}
.logo-orbit {
  width: min(100%, 470px);
  aspect-ratio: 1;
  border: 1px solid var(--line);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: radial-gradient(circle, rgba(43,127,255,.18), transparent 62%);
  box-shadow: inset 0 0 80px rgba(43,127,255,.07), var(--shadow);
  animation: float 6s ease-in-out infinite;
}
.logo-orbit::before, .logo-orbit::after {
  content: "";
  position: absolute;
  border: 1px dashed rgba(86,183,255,.25);
  border-radius: 50%;
}
.logo-orbit::before { width: 83%; aspect-ratio: 1; animation: spin 28s linear infinite; }
.logo-orbit::after { width: 62%; aspect-ratio: 1; animation: spin 18s linear reverse infinite; }
.logo-orbit img { width: 54%; position: relative; z-index: 2; filter: drop-shadow(0 28px 50px rgba(0,0,0,.45)); }
.hero-badge {
  position: absolute;
  right: 2%; bottom: 12%;
  width: 190px;
  padding: 15px;
  border-radius: 18px;
  background: rgba(13,20,34,.88);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.hero-badge strong { display: block; font-size: 1.1rem; }
.status-dot { width: 10px; height: 10px; background: var(--success); border-radius: 50%; display: inline-block; box-shadow: 0 0 18px var(--success); margin-right: 8px; }

@keyframes spin { to { transform: rotate(360deg); } }
@keyframes float { 50% { transform: translateY(-10px); } }

.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.card {
  background: linear-gradient(180deg, rgba(17,27,45,.94), rgba(11,18,31,.94));
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 26px;
  box-shadow: 0 18px 45px rgba(0,0,0,.18);
}
.card:hover { border-color: rgba(86,183,255,.26); }
.icon-box {
  width: 48px; height: 48px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, rgba(43,127,255,.24), rgba(86,183,255,.08));
  border: 1px solid rgba(86,183,255,.18);
  font-size: 1.3rem;
  margin-bottom: 18px;
}

.section-head { display: flex; justify-content: space-between; gap: 30px; align-items: end; margin-bottom: 34px; }
.section-head p { margin-bottom: 0; max-width: 640px; }

.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.stat { padding: 24px; border-radius: 18px; border: 1px solid var(--line); background: rgba(255,255,255,.035); }
.stat strong { display: block; font-size: 2.1rem; line-height: 1; margin-bottom: 10px; }
.stat span { color: var(--muted); font-size: .92rem; }

.feature-band {
  border-block: 1px solid var(--line);
  background: linear-gradient(90deg, rgba(43,127,255,.06), rgba(229,57,53,.035));
}
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 42px; align-items: center; }
.check-list { display: grid; gap: 14px; margin-top: 24px; }
.check-item { display: flex; gap: 12px; align-items: flex-start; color: #dfe8f6; }
.check-item b { color: var(--primary-2); }

.faction-card { min-height: 260px; display: flex; flex-direction: column; justify-content: end; position: relative; overflow: hidden; }
.faction-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at top right, rgba(43,127,255,.22), transparent 44%); }
.faction-card > * { position: relative; }
.tag { display: inline-flex; align-self: flex-start; padding: 6px 10px; border: 1px solid var(--line); border-radius: 999px; color: #c9d7ea; background: rgba(255,255,255,.04); font-size: .78rem; font-weight: 850; margin-bottom: 12px; }

.cta {
  padding: 42px;
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(43,127,255,.92), rgba(19,73,154,.88)),
    var(--card-solid);
  box-shadow: 0 30px 80px rgba(43,127,255,.25);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.cta p { color: #e7f0ff; max-width: 680px; margin-bottom: 0; }
.cta .btn-secondary { background: white; color: #0b1730; }

.page-hero { padding: 96px 0 60px; border-bottom: 1px solid var(--line); }
.breadcrumb { color: var(--muted); font-size: .92rem; margin-bottom: 18px; }
.breadcrumb a { color: #dce8fa; }

.role-group { margin-bottom: 28px; }
.role-group h3 { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.role-list { display: flex; flex-wrap: wrap; gap: 10px; }
.role { padding: 10px 13px; border-radius: 12px; font-weight: 800; font-size: .9rem; border: 1px solid var(--line); background: rgba(255,255,255,.04); }
.role.red { border-color: rgba(239,68,68,.35); color: #ffb3b3; background: rgba(239,68,68,.08); }
.role.teal { border-color: rgba(45,212,191,.35); color: #a7fff0; background: rgba(45,212,191,.08); }
.role.orange { border-color: rgba(251,146,60,.35); color: #ffd2ac; background: rgba(251,146,60,.08); }
.role.yellow { border-color: rgba(250,204,21,.35); color: #fff0a5; background: rgba(250,204,21,.08); }
.role.purple { border-color: rgba(168,85,247,.35); color: #dfb8ff; background: rgba(168,85,247,.08); }
.role.pink { border-color: rgba(236,72,153,.35); color: #ffb4dc; background: rgba(236,72,153,.08); }
.role.green { border-color: rgba(74,222,128,.35); color: #b6ffd0; background: rgba(74,222,128,.08); }
.role.darkgreen { border-color: rgba(22,163,74,.35); color: #a2ffc0; background: rgba(22,163,74,.08); }
.role.blue { border-color: rgba(59,130,246,.35); color: #b6d5ff; background: rgba(59,130,246,.08); }

.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.field { display: grid; gap: 8px; }
.field.full { grid-column: 1 / -1; }
label { font-weight: 800; font-size: .9rem; color: #dce7f7; }
input, select, textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #0b1321;
  color: white;
  padding: 14px 15px;
  outline: none;
}
input:focus, select:focus, textarea:focus { border-color: rgba(86,183,255,.55); box-shadow: 0 0 0 4px rgba(43,127,255,.10); }
textarea { min-height: 145px; resize: vertical; }
.form-note { color: var(--muted); font-size: .85rem; }
.notice { display: none; margin-top: 18px; padding: 15px 17px; border-radius: 14px; background: rgba(74,222,128,.10); border: 1px solid rgba(74,222,128,.25); color: #c6ffd9; }
.notice.show { display: block; }

.timeline { display: grid; gap: 16px; }
.timeline-item { display: grid; grid-template-columns: 54px 1fr; gap: 16px; align-items: start; }
.timeline-number { width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; background: rgba(43,127,255,.14); border: 1px solid rgba(86,183,255,.22); font-weight: 900; }

.site-footer { padding: 54px 0 24px; border-top: 1px solid var(--line); background: #060a12; }
.footer-grid { display: grid; grid-template-columns: 1.4fr repeat(2, .8fr); gap: 40px; }
.footer-links { display: grid; gap: 10px; color: var(--muted); }
.footer-links a:hover { color: white; }
.footer-bottom { margin-top: 38px; padding-top: 20px; border-top: 1px solid var(--line); color: #7f8da3; display: flex; justify-content: space-between; gap: 20px; font-size: .86rem; }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 920px) {
  .hero-grid, .split, .footer-grid { grid-template-columns: 1fr; }
  .hero { min-height: auto; }
  .hero-panel { min-height: 420px; }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .grid-3, .stats { grid-template-columns: repeat(2, 1fr); }
  .cta { align-items: flex-start; flex-direction: column; }
  .nav-toggle { display: block; }
  .nav-links {
    position: absolute;
    left: 16px;
    right: 16px;
    top: 86px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(8,13,23,.98);
    box-shadow: var(--shadow);
    display: none;
    flex-direction: column;
    align-items: stretch;
  }
  .nav-links.open { display: flex; }
  .nav-links a { text-align: center; }
  .desktop-cta { display: none; }
}

@media (max-width: 620px) {
  .section { padding: 70px 0; }
  .grid-3, .grid-4, .stats, .form-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .hero-panel { min-height: 340px; }
  .hero-badge { width: 160px; right: 0; bottom: 4%; }
  .section-head, .footer-bottom { align-items: flex-start; flex-direction: column; }
  .cta { padding: 28px; }
  h1 { font-size: clamp(2.65rem, 17vw, 4.4rem); }
}


/* Team application and job intranet */
.job-card {
  min-height: 330px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
}
.job-card .btn { width: 100%; }
.btn-intranet {
  background: linear-gradient(135deg, rgba(43,127,255,.18), rgba(86,183,255,.08));
  border-color: rgba(86,183,255,.30);
  color: #dcecff;
}
.btn-intranet:hover {
  background: linear-gradient(135deg, rgba(43,127,255,.32), rgba(86,183,255,.14));
  border-color: rgba(86,183,255,.55);
}
.btn-intranet span { font-size: 1.18rem; transition: transform .2s ease; }
.btn-intranet:hover span { transform: translateX(4px); }

.application-layout { align-items: start; }
.requirements-card { margin-top: 30px; }
.compact-list { gap: 10px; margin-top: 16px; }
.form-heading { margin-bottom: 24px; }
.form-heading h2 { font-size: clamp(1.8rem, 3vw, 2.55rem); margin-bottom: 8px; }
.submit-wide { width: 100%; }
.consent {
  grid-column: 1 / -1;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  cursor: pointer;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255,255,255,.025);
}
.consent input { width: 18px; height: 18px; margin-top: 3px; accent-color: var(--primary); flex: 0 0 auto; }
.consent span { color: var(--muted); font-size: .88rem; font-weight: 600; }

.intranet-page { min-height: 100vh; }
.intranet-hero { min-height: calc(100vh - 78px); display: grid; align-items: center; padding: 74px 0; }
.intranet-grid { display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 60px; }
.intranet-grid h1 { font-size: clamp(2.8rem, 6vw, 5.4rem); }
.intranet-features { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.intranet-features span { padding: 9px 12px; border-radius: 999px; border: 1px solid var(--line); background: rgba(255,255,255,.04); color: #cbd8e9; font-size: .86rem; font-weight: 750; }
.login-card { max-width: 520px; width: 100%; justify-self: end; padding: 34px; }
.login-card .field { margin-bottom: 17px; }
.login-emblem { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 22px; background: rgba(43,127,255,.10); border: 1px solid rgba(86,183,255,.20); margin-bottom: 20px; }
.login-emblem img { width: 58px; height: 58px; object-fit: contain; }
.back-link { display: block; text-align: center; color: var(--muted); font-weight: 750; margin-top: 18px; }
.back-link:hover { color: white; }
.intranet-footer { margin-top: 0; }

@media (max-width: 920px) {
  .intranet-grid { grid-template-columns: 1fr; }
  .login-card { justify-self: stretch; max-width: none; }
}


/* Separate job portal directory */
.portal-home-section { background: linear-gradient(180deg, rgba(255,255,255,.018), transparent); }
.portal-quick-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.portal-quick-card { --portal-accent: var(--primary); min-height:112px; padding:18px; border:1px solid var(--line); border-radius:18px; background:linear-gradient(145deg,color-mix(in srgb,var(--portal-accent) 15%,rgba(17,27,45,.95)),rgba(11,18,31,.95)); display:flex; align-items:center; gap:14px; transition:.2s ease; box-shadow:0 16px 40px rgba(0,0,0,.14); }
.portal-quick-card:hover { transform:translateY(-4px); border-color:color-mix(in srgb,var(--portal-accent) 48%,var(--line)); }
.portal-quick-card div { min-width:0; flex:1; }
.portal-quick-card strong,.portal-quick-card small { display:block; }
.portal-quick-card strong { font-size:1.02rem; }
.portal-quick-card small { color:var(--muted); margin-top:2px; }
.portal-quick-card b { font-size:1.3rem; color:color-mix(in srgb,var(--portal-accent) 75%,white); }
.portal-quick-icon { width:48px; height:48px; flex:0 0 auto; border-radius:15px; display:grid; place-items:center; font-size:1.35rem; background:color-mix(in srgb,var(--portal-accent) 18%,transparent); border:1px solid color-mix(in srgb,var(--portal-accent) 34%,transparent); }
.center-action { display:flex; justify-content:center; margin-top:24px; }
.portal-directory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.portal-directory-card { --portal-accent:var(--primary); min-height:360px; display:flex; flex-direction:column; justify-content:space-between; gap:28px; background:linear-gradient(150deg,color-mix(in srgb,var(--portal-accent) 14%,rgba(17,27,45,.96)),rgba(9,15,27,.96)); border-color:color-mix(in srgb,var(--portal-accent) 24%,var(--line)); }
.portal-directory-card h2 { font-size:clamp(1.65rem,3vw,2.45rem); margin:22px 0 8px; }
.portal-directory-top { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.portal-badge { display:inline-flex; padding:6px 10px; border-radius:999px; font-size:.76rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; color:color-mix(in srgb,var(--portal-accent) 70%,white); border:1px solid color-mix(in srgb,var(--portal-accent) 35%,transparent); background:color-mix(in srgb,var(--portal-accent) 10%,transparent); }
.portal-actions { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.portal-actions .btn { padding-inline:12px; }
.portal-polizei { --portal-accent:#3b82f6; }
.portal-rettung { --portal-accent:#14b8a6; }
.portal-klinikum { --portal-accent:#06b6d4; }
.portal-luft { --portal-accent:#ef4444; }
.portal-feuerwehr { --portal-accent:#f97316; }
.redirect-shell { min-height:100vh; display:grid; place-items:center; padding:30px; }
.redirect-shell .card { width:min(620px,100%); text-align:center; }
.redirect-shell .btn { margin-top:18px; }
@media(max-width:1040px){.portal-quick-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.portal-directory-grid,.portal-actions{grid-template-columns:1fr}.portal-quick-grid{grid-template-columns:1fr}.portal-directory-card{min-height:auto}.portal-actions .btn{width:100%}}
/* =========================================================
   PADERBORN ROLEPLAY – DARK ORANGE CONTROL-PANEL THEME
   Angelehnt an das bereitgestellte Referenzdesign
   ========================================================= */
:root{
  --accent:#ff5a1f;
  --accent-2:#ffb000;
  --accent-red:#ff3b2f;
  --bg:#070a0f;
  --surface:#10151d;
  --surface-2:#171d27;
  --line:#2b3545;
  --line-soft:#202938;
  --text:#f6f7fb;
  --muted:#9da9bb;
  --shadow:0 18px 55px rgba(0,0,0,.42);
}

body{
  background:
    radial-gradient(circle at 78% -10%,rgba(255,176,0,.07),transparent 30%),
    radial-gradient(circle at 12% 10%,rgba(255,59,47,.06),transparent 28%),
    linear-gradient(rgba(7,10,15,.97),rgba(7,10,15,.985)),
    repeating-linear-gradient(135deg,rgba(255,255,255,.012) 0 1px,transparent 1px 24px);
  color:var(--text);
}

.site-header{
  background:rgba(8,11,16,.96);
  border-bottom:1px solid var(--line);
  box-shadow:0 8px 28px rgba(0,0,0,.28);
  backdrop-filter:blur(15px);
}
.brand img{filter:drop-shadow(0 0 12px rgba(255,176,0,.28))}
.brand span small{color:#8ea0b8}

.nav-links a{
  border:1px solid transparent;
  border-radius:9px;
  color:#c3cad5;
}
.nav-links a:hover,.nav-links a.active{
  color:#fff;
  background:#171d27;
  border-color:#303a4b;
}
.nav-links .nav-cta,
.btn-primary{
  color:#fff;
  background:linear-gradient(100deg,var(--accent-red),var(--accent-2));
  border:0;
  box-shadow:0 10px 28px rgba(255,90,31,.2);
}
.nav-links .nav-cta:hover,.btn-primary:hover{
  background:linear-gradient(100deg,#ff4937,#ffc01b);
  transform:translateY(-1px);
}

.menu-btn,.btn{
  border-color:#303a4b;
  background:#171d27;
  border-radius:9px;
  color:#f7f8fb;
}
.btn:hover{background:#202735;border-color:#3b4659}

.eyebrow{
  border-color:rgba(255,176,0,.45);
  background:rgba(255,176,0,.09);
  color:#ffb000;
  border-radius:8px;
}
.eyebrow:before{background:#ffb000;box-shadow:0 0 0 5px rgba(255,176,0,.1)}
h1 span,.portal-card span,.card-icon{color:#ffb000}

.hero-card,.login-card,.panel,.card,.portal-card,.cta-panel{
  border-color:var(--line);
  background:linear-gradient(150deg,rgba(18,24,33,.98),rgba(11,15,22,.98));
  border-radius:12px;
  box-shadow:var(--shadow);
}
.hero-card:after{background:linear-gradient(145deg,#10151d,#080c12);border-radius:11px}
.hero-card:before{background:conic-gradient(from 180deg,transparent,#ffb000,transparent 34%);opacity:.16}
.card:hover,.portal-card:hover{background:#171d27;border-color:#465267}
.card-icon{background:rgba(255,176,0,.1);border:1px solid rgba(255,176,0,.2);border-radius:8px}

.section-soft{background:rgba(13,17,24,.78);border-color:var(--line-soft)}
.stat,.side-item{
  background:#10151d;
  border-color:var(--line);
  border-radius:9px;
}
.cta-panel{background:linear-gradient(110deg,rgba(255,59,47,.09),rgba(255,176,0,.065),#10151d)}

input,select,textarea{
  background:#0c1118;
  border-color:#303a4b;
  border-radius:8px;
  color:#fff;
}
input:focus,select:focus,textarea:focus{
  border-color:#ff9f0a;
  box-shadow:0 0 0 3px rgba(255,159,10,.12);
}
option{background:#0d1219}
.check input,.permission-fieldset input,.permission-editor input{accent-color:#ff9f0a}
.notice,.demo-credentials,.admin-hint{
  border-color:rgba(255,176,0,.32);
  background:rgba(255,176,0,.065);
  border-radius:9px;
}

/* Intranet im Look des Referenz-Dashboards */
.intranet-body{
  background:
    radial-gradient(circle at 80% -15%,rgba(255,176,0,.065),transparent 34%),
    linear-gradient(145deg,#070a0f,#0a0e14 55%,#05070a);
}
.intranet-shell.active{grid-template-columns:292px minmax(0,1fr)}
.intranet-sidebar{
  background:#0c1118;
  border-right:1px solid #2e394a;
  padding:18px 16px;
  box-shadow:10px 0 30px rgba(0,0,0,.18);
}
.user-card{
  background:#10161f;
  border-color:#2d3747;
  border-radius:9px;
  padding:13px;
}
.user-avatar{
  background:linear-gradient(145deg,#ff3b2f,#ffb000);
  color:#fff;
  border-radius:8px;
  box-shadow:0 5px 18px rgba(255,90,31,.2);
}
.side-nav{gap:9px}
.side-nav button{
  min-height:44px;
  color:#f3f5f8;
  background:#151b25;
  border:1px solid #303a4b;
  border-radius:7px;
  padding:11px 13px;
}
.side-nav button:hover{background:#1c2330;border-color:#3b475b}
.side-nav button.active{
  color:#111;
  background:linear-gradient(95deg,#ff4c2f,#ffb000);
  border-color:#ff9d08;
  box-shadow:0 8px 22px rgba(255,91,29,.16);
}
.logout-btn{background:#151b25}

.intranet-main{padding:26px 30px;background:rgba(7,10,15,.54)}
.dashboard-top{
  padding-bottom:19px;
  border-bottom:1px solid #283243;
  margin-bottom:20px;
}
.dashboard-top h1{font-size:clamp(2rem,4vw,3.35rem);letter-spacing:-.04em}
.dashboard-top .eyebrow{border-radius:999px}
.live-pill{border-radius:999px}

.dashboard-stats{gap:12px}
.dash-stat,.dashboard-card,.vehicle-card,.legend-item,.member-table-wrap{
  background:#10151d;
  border-color:#2d3747;
  border-radius:9px;
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.dash-stat{
  position:relative;
  overflow:hidden;
  padding:17px 18px;
}
.dash-stat:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:3px;
  background:linear-gradient(#ff3b2f,#ffb000);
}
.dash-stat strong{color:#fff}
.dashboard-card{padding:19px;margin-bottom:16px}
.dashboard-card-head{
  padding-bottom:13px;
  border-bottom:1px solid #283243;
  margin-bottom:15px;
}
.dashboard-card h2,.legend-item strong{color:#fff}
.dashboard-card-head h2:after{
  content:"";
  display:block;
  width:42px;
  height:2px;
  margin-top:7px;
  background:linear-gradient(90deg,#ff3b2f,#ffb000);
}

.vehicle-grid{gap:12px}
.vehicle-card{background:#0d1219;padding:15px}
.vehicle-card:hover{border-color:#465267;background:#111821}
.vehicle-meta{border-top-color:#283243}
.status-legend{gap:9px}
.legend-item{background:#0d1219}

.member-table-wrap{border-radius:8px}
.member-table th{
  color:#aeb8c8;
  background:#151b25;
  border-color:#2b3545;
}
.member-table td{border-color:#252f3e}
.member-table tbody tr:hover{background:rgba(255,176,0,.025)}
.role-chip,.permission-chip{
  background:rgba(255,176,0,.09);
  color:#ffbd24;
  border:1px solid rgba(255,176,0,.18);
  border-radius:999px;
}
.permission-fieldset{border-color:#303a4b;border-radius:8px;background:#0d1219}
.danger-btn{background:rgba(255,59,47,.1);border-color:rgba(255,59,47,.35)}

.login-card{border-radius:12px}
.login-visual{
  background:
    linear-gradient(145deg,rgba(255,59,47,.1),rgba(255,176,0,.055)),
    #0d1219;
}
.login-visual img{filter:drop-shadow(0 0 20px rgba(255,176,0,.22))}
.login-form{background:#10151d}

.empty-state{border-color:#344054;border-radius:8px;background:#0d1219}
.toast{border-radius:8px}

@media(max-width:1050px){.intranet-shell.active{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:780px){
  .intranet-main{padding:18px 12px}
  .intranet-sidebar{box-shadow:none}
  .side-nav button{min-height:42px}
  .nav-links{background:#0c1118;border-color:#303a4b;border-radius:9px}
}

/* =========================================================
   PADERBORN ROLEPLAY – NXT UI 2.0
   Moderne Animationen, Tiefenwirkung und Premium-Dashboard
   ========================================================= */
:root{
  --accent:#ff5a1f;
  --accent-2:#ffb000;
  --accent-hot:#ff3b2f;
  --bg:#05070b;
  --surface:#0d121a;
  --surface-2:#141b26;
  --surface-3:#1a2330;
  --line:#263244;
  --line-bright:#3b4a60;
  --text:#f7f9fc;
  --muted:#9eabbc;
  --glow:0 0 34px rgba(255,126,24,.18);
  --shadow:0 28px 80px rgba(0,0,0,.48);
  --mx:50vw;
  --my:20vh;
}

html{background:#05070b;scrollbar-color:#ff8b12 #0b1017}
body{isolation:isolate}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 88%);
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(520px circle at var(--mx) var(--my),rgba(255,148,17,.09),transparent 62%),
    radial-gradient(720px circle at 100% -5%,rgba(255,62,42,.07),transparent 55%);
}
::selection{background:rgba(255,152,17,.32);color:#fff}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#0a0f16}
::-webkit-scrollbar-thumb{background:linear-gradient(#ff4d2c,#ffb000);border:3px solid #0a0f16;border-radius:999px}

.site-header{
  background:linear-gradient(180deg,rgba(7,10,15,.96),rgba(7,10,15,.84));
  border-bottom:1px solid rgba(70,83,105,.48);
  box-shadow:0 14px 45px rgba(0,0,0,.3);
  overflow:visible;
}
.site-header::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,176,0,.8),rgba(255,70,42,.72),transparent);
  opacity:.58;
}
.site-header::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:var(--scroll-progress,0%);
  height:2px;
  background:linear-gradient(90deg,#ff3b2f,#ffb000);
  box-shadow:0 0 16px rgba(255,135,16,.75);
  transition:width .08s linear;
}
.site-header.is-scrolled{background:rgba(7,10,15,.94);box-shadow:0 18px 55px rgba(0,0,0,.42)}
.navbar{min-height:82px}
.brand{position:relative;transition:transform .25s ease}
.brand:hover{transform:translateY(-1px)}
.brand img{transition:transform .32s ease,filter .32s ease;filter:drop-shadow(0 0 16px rgba(255,157,16,.34))}
.brand:hover img{transform:scale(1.06) rotate(-2deg);filter:drop-shadow(0 0 23px rgba(255,157,16,.55))}
.brand span{font-size:1rem}
.brand span small{background:linear-gradient(90deg,#ffb000,#ff6b25);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:850}
.nav-links{padding:5px;border:1px solid rgba(57,70,91,.55);background:rgba(14,19,27,.62);border-radius:13px;box-shadow:inset 0 1px rgba(255,255,255,.025)}
.nav-links a{position:relative;overflow:hidden}
.nav-links a::after{content:"";position:absolute;left:50%;right:50%;bottom:4px;height:2px;background:linear-gradient(90deg,#ff3b2f,#ffb000);border-radius:999px;transition:left .25s ease,right .25s ease}
.nav-links a:hover::after,.nav-links a.active::after{left:15px;right:15px}
.nav-links .nav-cta::after{display:none}

.btn,.side-nav button,.portal-quick-card,.portal-directory-card,.card,.faction-card,.job-card,.vehicle-card,.dash-stat{
  -webkit-tap-highlight-color:transparent;
}
.btn{
  position:relative;
  overflow:hidden;
  min-height:52px;
  border-radius:11px;
  background:linear-gradient(180deg,#19212d,#121923);
  border-color:#344157;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 10px 24px rgba(0,0,0,.18);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
}
.btn::before{content:"";position:absolute;inset:0;transform:translateX(-120%) skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);transition:transform .55s ease}
.btn:hover::before{transform:translateX(120%) skewX(-20deg)}
.btn:hover{transform:translateY(-3px);border-color:#53627a;box-shadow:0 15px 34px rgba(0,0,0,.3)}
.btn:active{transform:translateY(-1px) scale(.985)}
.btn-primary,.nav-links .nav-cta{
  background:linear-gradient(105deg,#ff3e2f 0%,#ff751a 47%,#ffb000 100%);
  box-shadow:0 13px 34px rgba(255,89,31,.25),inset 0 1px rgba(255,255,255,.25);
}
.btn-primary:hover,.nav-links .nav-cta:hover{box-shadow:0 18px 44px rgba(255,111,23,.34),0 0 20px rgba(255,176,0,.13)}
.ui-ripple{position:absolute;border-radius:50%;pointer-events:none;background:rgba(255,255,255,.32);transform:translate(-50%,-50%) scale(0);animation:ui-ripple .58s ease-out forwards}
@keyframes ui-ripple{to{transform:translate(-50%,-50%) scale(1);opacity:0}}

.hero{min-height:min(780px,calc(100vh - 82px));display:flex;align-items:center;padding:105px 0 82px}
.hero::before{content:"";position:absolute;width:560px;height:560px;left:-290px;top:-130px;border:1px solid rgba(255,176,0,.09);border-radius:50%;box-shadow:0 0 0 80px rgba(255,176,0,.018),0 0 0 160px rgba(255,176,0,.012);pointer-events:none}
.hero-grid{gap:64px}
h1{filter:drop-shadow(0 16px 42px rgba(0,0,0,.3))}
h1 span{background:linear-gradient(93deg,#ffbf16 0%,#ff7b1c 48%,#ff4935 100%);background-size:190% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:title-flow 6s ease-in-out infinite}
@keyframes title-flow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
.eyebrow{box-shadow:inset 0 1px rgba(255,255,255,.06),0 7px 25px rgba(255,151,17,.07);backdrop-filter:blur(12px)}
.lead{font-size:1.16rem;text-wrap:pretty}
.hero-points span{position:relative;background:rgba(16,22,31,.78);border:1px solid #2b374a;box-shadow:inset 0 1px rgba(255,255,255,.035)}
.hero-points span::before{content:"✓";display:inline-grid;place-items:center;width:18px;height:18px;margin-right:7px;border-radius:50%;background:rgba(255,176,0,.12);color:#ffb000;font-size:.7rem;font-weight:950}
.hero-panel,.hero-card{
  isolation:isolate;
  border:1px solid rgba(82,97,122,.64);
  background:linear-gradient(155deg,rgba(23,31,43,.94),rgba(8,12,18,.98));
  box-shadow:0 35px 100px rgba(0,0,0,.56),inset 0 1px rgba(255,255,255,.06),var(--glow);
}
.hero-panel::before,.hero-card::before{opacity:.23;filter:blur(.2px)}
.hero-panel::after,.hero-card::after{box-shadow:inset 0 0 80px rgba(255,138,17,.035)}
.hero-emblem,.logo-orbit{animation:emblem-float 5.5s ease-in-out infinite}
.hero-emblem img,.logo-orbit img{filter:drop-shadow(0 28px 42px rgba(0,0,0,.45)) drop-shadow(0 0 20px rgba(255,155,17,.22))}
.logo-orbit::before,.logo-orbit::after{border-color:rgba(255,161,17,.24);box-shadow:0 0 35px rgba(255,130,20,.07)}
@keyframes emblem-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hero-badge{background:rgba(11,16,23,.78);border:1px solid #344258;backdrop-filter:blur(14px);box-shadow:0 16px 40px rgba(0,0,0,.34)}
.status-dot{box-shadow:0 0 0 6px rgba(34,197,94,.1),0 0 18px rgba(34,197,94,.75);animation:status-pulse 2s ease infinite}
@keyframes status-pulse{50%{box-shadow:0 0 0 10px rgba(34,197,94,0),0 0 24px rgba(34,197,94,.9)}}

.section{position:relative}
.section-head h2{background:linear-gradient(180deg,#fff,#c8d1de);-webkit-background-clip:text;background-clip:text;color:transparent}
.feature-band{background:linear-gradient(90deg,rgba(255,70,42,.035),rgba(255,176,0,.055),rgba(255,70,42,.035))}
.stats,.dashboard-stats{perspective:900px}
.stat,.dash-stat{
  background:linear-gradient(150deg,rgba(22,29,40,.98),rgba(11,16,23,.98));
  border-color:#2b374a;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 14px 36px rgba(0,0,0,.18);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.stat:hover,.dash-stat:hover{transform:translateY(-5px);border-color:#53617a;box-shadow:0 20px 45px rgba(0,0,0,.32),0 0 24px rgba(255,145,17,.06)}
.stat strong,.dash-stat strong{background:linear-gradient(90deg,#fff,#ffbd1d);-webkit-background-clip:text;background-clip:text;color:transparent}

.card,.portal-card,.portal-quick-card,.portal-directory-card,.faction-card,.job-card,.panel,.requirements-card,.role-group,.timeline-item,.dashboard-card,.vehicle-card,.login-card,.cta-panel{
  position:relative;
  overflow:hidden;
  border-color:#2b374a;
  background:linear-gradient(145deg,rgba(18,25,35,.97),rgba(10,14,21,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.04),0 18px 48px rgba(0,0,0,.22);
}
.card::before,.portal-quick-card::before,.portal-directory-card::before,.faction-card::before,.job-card::before,.vehicle-card::before,.dashboard-card::before,.panel::before,.login-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:2px;
  background:linear-gradient(180deg,transparent,#ffb000,#ff472e,transparent);
  opacity:.55;
}
.card::after,.portal-quick-card::after,.portal-directory-card::after,.faction-card::after,.job-card::after,.vehicle-card::after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-95px;
  top:-95px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,176,0,.12),transparent 68%);
  pointer-events:none;
  transition:transform .35s ease,opacity .35s ease;
}
.card:hover,.portal-quick-card:hover,.portal-directory-card:hover,.faction-card:hover,.job-card:hover,.vehicle-card:hover{
  transform:translateY(-7px);
  border-color:#526078;
  box-shadow:0 26px 58px rgba(0,0,0,.38),0 0 26px rgba(255,145,17,.07);
}
.card:hover::after,.portal-quick-card:hover::after,.portal-directory-card:hover::after,.faction-card:hover::after,.job-card:hover::after,.vehicle-card:hover::after{transform:scale(1.35);opacity:1}
.icon-box,.card-icon,.portal-quick-icon{
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 11px 25px rgba(255,113,22,.12);
  background:linear-gradient(145deg,rgba(255,58,46,.15),rgba(255,176,0,.12));
  border:1px solid rgba(255,151,18,.26);
}
.portal-quick-card b,.portal-directory-card b{transition:transform .25s ease,color .25s ease}
.portal-quick-card:hover b,.portal-directory-card:hover b{transform:translateX(6px);color:#ffb000}
.cta-panel{border-color:rgba(255,132,18,.34);background:linear-gradient(120deg,rgba(255,62,46,.1),rgba(255,176,0,.07) 46%,rgba(16,22,31,.98));box-shadow:0 30px 70px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.055)}

input,select,textarea{
  min-height:50px;
  background:linear-gradient(180deg,#0c121a,#0a0f16);
  border-color:#2f3b50;
  box-shadow:inset 0 2px 9px rgba(0,0,0,.25);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
textarea{min-height:130px}
input:hover,select:hover,textarea:hover{border-color:#46556d}
input:focus,select:focus,textarea:focus{transform:translateY(-1px);border-color:#ff9812;box-shadow:0 0 0 4px rgba(255,152,18,.1),0 10px 25px rgba(0,0,0,.2)}
.field label{color:#edf2f8}
.notice,.admin-hint,.demo-credentials{box-shadow:inset 0 1px rgba(255,255,255,.035)}

.site-footer{position:relative;background:linear-gradient(180deg,rgba(8,12,18,.75),#05070b);border-top-color:#253044}
.site-footer::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#ffb000,#ff4930,transparent);opacity:.45}
.footer-links a{transition:color .2s ease,transform .2s ease}.footer-links a:hover{color:#ffb000;transform:translateX(3px)}

/* Premium-Intranet */
.intranet-sidebar{
  background:
    radial-gradient(circle at 0 0,rgba(255,176,0,.055),transparent 32%),
    linear-gradient(180deg,#0d131c,#090d14);
  border-right-color:#29364a;
}
.user-card{box-shadow:inset 0 1px rgba(255,255,255,.05),0 16px 32px rgba(0,0,0,.2)}
.user-avatar{position:relative;box-shadow:0 11px 28px rgba(255,97,27,.28),inset 0 1px rgba(255,255,255,.25)}
.side-nav button{position:relative;overflow:hidden;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.side-nav button::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 5px 5px 0;background:linear-gradient(#ff3c2e,#ffb000);transform:scaleY(0);transition:transform .2s ease}
.side-nav button:hover{transform:translateX(3px)}
.side-nav button.active::before{transform:scaleY(1)}
.side-nav button.active{box-shadow:0 12px 28px rgba(255,100,26,.2),inset 0 1px rgba(255,255,255,.25)}
.intranet-main{background:radial-gradient(circle at 94% 0,rgba(255,176,0,.04),transparent 26%),rgba(6,9,14,.68)}
.dashboard-top{position:relative}
.dashboard-top::after{content:"";position:absolute;left:0;bottom:-1px;width:110px;height:2px;background:linear-gradient(90deg,#ff3b2f,#ffb000);box-shadow:0 0 12px rgba(255,130,20,.42)}
.live-pill{background:rgba(34,197,94,.09);border-color:rgba(34,197,94,.3);color:#bdf7ce;box-shadow:0 0 22px rgba(34,197,94,.08)}
.live-pill::before{content:"";width:7px;height:7px;margin-right:7px;display:inline-block;border-radius:50%;background:#22c55e;box-shadow:0 0 12px #22c55e;animation:status-pulse 2s ease infinite}
.dashboard-card-head h2{position:relative;padding-left:13px}.dashboard-card-head h2::before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:3px;border-radius:3px;background:linear-gradient(#ff3b2f,#ffb000)}
.vehicle-card{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.status-badge{box-shadow:inset 0 1px rgba(255,255,255,.1)}
.status-1,.status-2{box-shadow:0 0 18px rgba(34,197,94,.1)}
.status-3,.status-4,.status-7,.status-8{box-shadow:0 0 18px rgba(245,158,11,.1)}
.status-5,.status-9{box-shadow:0 0 18px rgba(239,68,68,.12)}
.member-table tbody tr{transition:background .18s ease}.member-table tbody tr:hover{background:rgba(255,176,0,.035)}
.member-table th{background:linear-gradient(180deg,#151c27,#111721);color:#b6c1cf}
.toast{backdrop-filter:blur(16px);box-shadow:0 18px 50px rgba(0,0,0,.45)}
.login-shell{position:relative}
.login-shell::before{content:"";position:absolute;left:6%;top:14%;width:250px;height:250px;border-radius:50%;background:rgba(255,176,0,.055);filter:blur(70px);pointer-events:none}
.login-card{border-color:#3b485d;box-shadow:0 40px 120px rgba(0,0,0,.58),0 0 50px rgba(255,122,18,.055)}
.login-visual{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 38%,rgba(255,164,17,.13),transparent 45%),linear-gradient(150deg,#141c27,#090d14)}
.login-visual::after{content:"";position:absolute;width:360px;height:360px;right:-210px;bottom:-230px;border:1px solid rgba(255,176,0,.16);border-radius:50%;box-shadow:0 0 0 50px rgba(255,176,0,.025),0 0 0 100px rgba(255,176,0,.016)}
.login-visual img{animation:emblem-float 5.5s ease-in-out infinite;filter:drop-shadow(0 25px 34px rgba(0,0,0,.4)) drop-shadow(0 0 20px rgba(255,154,17,.24))}

/* Reveal / Motion */
.ui-reveal{opacity:0;transform:translateY(24px);filter:blur(3px);transition:opacity .7s cubic-bezier(.2,.75,.25,1),transform .7s cubic-bezier(.2,.75,.25,1),filter .7s ease;transition-delay:var(--reveal-delay,0ms)}
.ui-reveal.ui-visible{opacity:1;transform:translateY(0);filter:blur(0)}
.ui-ready .hero h1{animation:hero-enter .72s cubic-bezier(.16,.78,.25,1) both,title-flow 6s ease-in-out infinite .72s}
@keyframes hero-enter{from{opacity:0;transform:translateY(24px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
  .ui-reveal{opacity:1;transform:none;filter:none}
}
@media(max-width:900px){
  .hero{min-height:auto;padding:82px 0 68px}
  .nav-links{padding:12px;background:rgba(8,12,18,.985);border-radius:0 0 14px 14px}
  .hero-grid{gap:42px}
}
@media(max-width:780px){
  body::after{display:none}
  .navbar{min-height:72px}
  .hero{padding:65px 0 55px}
  .hero-card,.hero-panel{min-height:350px}
  .intranet-main{padding:20px 13px}
  .dashboard-top h1{font-size:2.15rem}
  .card:hover,.portal-quick-card:hover,.portal-directory-card:hover,.faction-card:hover,.job-card:hover,.vehicle-card:hover{transform:none}
}


/* === COMPLETE REBUILD 2026 === */
.site-header::after{left:0;right:0;width:100%!important;transition:none!important;background:linear-gradient(90deg,#ff432f 0%,#ff8f12 45%,#ffbf18 100%)!important;box-shadow:0 0 16px rgba(255,145,17,.55)}
body.rebuild-public{background:radial-gradient(circle at top right,rgba(255,136,17,.08),transparent 28%),#05070b}
body.rebuild-public .site-header{position:sticky;top:0;z-index:100}
.command-main{padding-top:0}
.header-stack{display:flex;align-items:center;gap:18px;flex:1}
.header-meta{display:flex;align-items:center;gap:10px;margin-left:auto}
.top-chip{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border-radius:14px;border:1px solid #334157;background:linear-gradient(145deg,rgba(20,26,37,.96),rgba(10,14,20,.98));box-shadow:inset 0 1px rgba(255,255,255,.05),0 12px 32px rgba(0,0,0,.22)}
.top-chip strong,.top-chip span{display:block;line-height:1.1}.top-chip small{display:block;color:#8f9cb0;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.top-chip .dot{width:9px;height:9px;border-radius:50%;background:#ff5d4d;box-shadow:0 0 14px rgba(255,93,77,.8)}
.top-chip .chip-avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,#202937,#131a24);border:1px solid #425169;font-weight:900;color:#ffb000}
.command-hero{padding:74px 0 38px;min-height:auto}
.command-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:26px;align-items:stretch}
.command-panel{position:relative;padding:28px;border:1px solid #2d394b;border-radius:24px;background:linear-gradient(160deg,rgba(14,20,29,.98),rgba(8,11,17,.98));box-shadow:0 25px 70px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.05);overflow:hidden}
.command-panel::before{content:"";position:absolute;inset:auto -60px -80px auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,176,0,.14),transparent 66%);pointer-events:none}
.command-panel::after{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;border-radius:0 999px 999px 0;background:linear-gradient(180deg,#ff472e,#ffb000)}
.command-badge{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,176,0,.28);background:rgba(255,176,0,.08);color:#ffc04b;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}
.command-title{margin:18px 0 14px;font-size:clamp(2.7rem,6vw,5rem);line-height:.96;letter-spacing:-.05em}
.command-title span{display:block;background:linear-gradient(90deg,#fff,#ffbf18 48%,#ff6e1e 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.command-lead{max-width:760px;font-size:1.08rem;color:#b1bdd0}
.command-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.inline-points{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.inline-points span{padding:10px 14px;border-radius:999px;border:1px solid #2b374a;background:rgba(255,255,255,.03);font-size:.9rem;color:#dbe4f3;font-weight:750}
.panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;height:100%}
.mini-panel{padding:20px;border:1px solid #2b374a;border-radius:20px;background:linear-gradient(145deg,rgba(19,26,36,.96),rgba(10,14,21,.98));box-shadow:inset 0 1px rgba(255,255,255,.04)}
.mini-panel h3,.mini-panel h4{margin-bottom:10px}.mini-panel .value{font-size:2rem;font-weight:900;line-height:1;background:linear-gradient(90deg,#fff,#ffbb18);-webkit-background-clip:text;background-clip:text;color:transparent}
.mini-panel ul{padding-left:18px;margin:10px 0 0}.mini-panel li{color:#afbbcd;margin-bottom:8px}
.section-ribbon{display:flex;align-items:center;gap:18px;margin-bottom:26px}.section-ribbon::before,.section-ribbon::after{content:"";height:2px;flex:1;background:linear-gradient(90deg,#ff472e,#ffb000);opacity:.92;border-radius:999px}.section-ribbon span{padding:9px 18px;border-radius:999px;border:1px solid rgba(255,176,0,.25);background:rgba(255,176,0,.08);font-size:.83rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#ffbd31;white-space:nowrap;box-shadow:0 0 24px rgba(255,176,0,.08)}
.dashboard-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:14px}.strip-card{padding:18px;border-radius:18px;border:1px solid #2b374a;background:linear-gradient(145deg,rgba(18,24,34,.97),rgba(10,14,21,.98));box-shadow:inset 0 1px rgba(255,255,255,.04)}.strip-card small{display:block;color:#97a5b8;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;margin-bottom:10px}.strip-card strong{font-size:1.65rem;line-height:1}.strip-card p{margin:6px 0 0;color:#b8c2cf;font-size:.9rem}
.control-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:22px;align-items:start}.control-sidebar{position:sticky;top:108px;display:grid;gap:16px}.side-card{padding:20px;border-radius:22px;border:1px solid #2b374a;background:linear-gradient(145deg,rgba(18,25,35,.97),rgba(10,14,21,.98));box-shadow:inset 0 1px rgba(255,255,255,.04),0 18px 48px rgba(0,0,0,.22)}
.side-card .card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.side-card .card-title strong{font-size:1rem}.side-nav-links{display:grid;gap:10px}.side-nav-links a{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border-radius:14px;border:1px solid #2b374a;background:rgba(255,255,255,.025);font-weight:800;color:#dde6f2;transition:transform .2s ease,border-color .2s ease,background .2s ease}.side-nav-links a:hover{transform:translateX(3px);border-color:#ff9912;background:rgba(255,176,0,.06)}
.info-list{display:grid;gap:12px}.info-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05)}.info-row:last-child{border-bottom:0;padding-bottom:0}.info-row small{display:block;color:#91a0b2;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.info-row strong{font-size:1rem}
.content-stack{display:grid;gap:22px}.content-card{padding:26px;border-radius:24px;border:1px solid #2b374a;background:linear-gradient(145deg,rgba(18,25,35,.97),rgba(10,14,21,.98));box-shadow:inset 0 1px rgba(255,255,255,.04),0 18px 48px rgba(0,0,0,.22)}
.content-card h2{font-size:2rem;margin-bottom:10px}.content-card p{color:#b1bdd0}.feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.feature-item{padding:18px;border-radius:18px;border:1px solid #2b374a;background:rgba(255,255,255,.025)}.feature-item .number{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(145deg,#ff472e,#ffb000);font-size:.85rem;font-weight:950;color:#180d03;margin-bottom:12px}.feature-item h3{margin-bottom:8px}.feature-item p{margin-bottom:0;font-size:.95rem}
.portal-grid-xl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.portal-tile{display:flex;gap:16px;align-items:flex-start;padding:22px;border-radius:22px;border:1px solid #2b374a;background:linear-gradient(145deg,rgba(18,25,35,.98),rgba(10,14,21,.98));transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.portal-tile:hover{transform:translateY(-6px);border-color:#ff9912;box-shadow:0 24px 60px rgba(0,0,0,.34)}.portal-tile .tile-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-size:1.55rem;background:linear-gradient(145deg,rgba(255,64,46,.16),rgba(255,176,0,.14));border:1px solid rgba(255,151,18,.26);flex:none}.portal-tile .tile-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.portal-tile h3{margin-bottom:8px}.portal-tile p{margin-bottom:0;color:#b6c1cf}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.step-card{padding:20px;border-radius:20px;border:1px solid #2b374a;background:linear-gradient(145deg,rgba(18,25,35,.97),rgba(10,14,21,.98))}.step-card .step-index{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#ff472e,#ffb000);font-weight:950;color:#1f1102;margin-bottom:14px}.step-card p{margin-bottom:0;color:#b5c0cf;font-size:.95rem}
.banner-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border-radius:28px;border:1px solid rgba(255,145,17,.26);background:linear-gradient(120deg,rgba(255,62,46,.12),rgba(255,176,0,.08) 42%,rgba(13,18,26,.98));box-shadow:0 28px 70px rgba(0,0,0,.35)}
.banner-panel p{margin:0;color:#d8e1ed}
.section-note{margin-top:6px;color:#95a4b7;font-size:.95rem}
.kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.kpi-card{padding:18px;border-radius:18px;border:1px solid #2b374a;background:rgba(255,255,255,.025)}.kpi-card small{display:block;color:#90a0b3;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.kpi-card strong{display:block;margin-top:8px;font-size:1.55rem}
.quick-split{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
@media(max-width:1100px){.command-grid,.quick-split,.control-layout{grid-template-columns:1fr}.control-sidebar{position:static}.dashboard-strip,.steps,.kpi-row{grid-template-columns:repeat(2,1fr)}.portal-grid-xl,.feature-list{grid-template-columns:1fr}}
@media(max-width:760px){.header-meta{display:none}.command-title{font-size:clamp(2.3rem,12vw,3.6rem)}.section-ribbon{gap:10px}.section-ribbon span{padding:8px 14px;font-size:.72rem;letter-spacing:.14em}.dashboard-strip,.steps,.kpi-row,.panel-grid{grid-template-columns:1fr}.banner-panel{flex-direction:column;align-items:flex-start}.side-card,.content-card,.command-panel{padding:20px}}


/* Gap fix */
.hero{min-height:auto!important;padding:48px 0 36px!important;}
.page-hero{padding:40px 0 24px!important;}
.command-main{padding-top:0!important;}
.command-hero{padding:18px 0 18px!important;min-height:auto!important;}
.command-grid{align-items:start!important;}
.command-panel{padding:22px!important;}
main > section:first-child{margin-top:0!important;}
.section{padding:72px 0;}
.section.compact{padding:44px 0;}


/* final gap + emblem fix */
.reveal{opacity:1!important;transform:none!important;filter:none!important;}
.page-hero{padding:18px 0 12px!important;min-height:auto!important;}
.page-hero .container{display:grid;gap:8px;}
main > .page-hero + .section{padding-top:24px!important;}
.hero{min-height:auto!important;padding:26px 0 24px!important;}
.command-hero{padding:8px 0 12px!important;min-height:auto!important;}
.command-panel,.hero-card,.hero-panel{margin-top:0!important;}
.site-header + main{padding-top:0!important;}
.portal-logo-wrap{width:64px;height:64px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(20,26,36,.95),rgba(9,13,19,.98));border:1px solid #364458;box-shadow:inset 0 1px rgba(255,255,255,.05),0 10px 24px rgba(0,0,0,.22);overflow:hidden;flex:none}
.portal-logo{max-width:90%;max-height:90%;object-fit:contain;display:block}
.portal-logo-fallback{font-size:1.65rem;color:#ffb000}
.portal-directory-top,.portal-quick-card{align-items:center}
.portal-directory-top{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.hero-card img,.hero-panel img,.login-visual img,.acp-brand img,.brand img,.profile-logo-wrap img{object-fit:contain}
.brand img,.acp-brand img{background:transparent}
.profile-logo-wrap{background:#080b10}


/* logo visibility improvement */
.job-card .portal-logo-wrap,
.portal-directory-card .portal-logo-wrap{
  width:88px!important;
  height:88px!important;
  padding:8px!important;
  border-radius:20px!important;
  margin-bottom:16px;
}
.job-card .portal-logo,
.portal-directory-card .portal-logo{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block;
}
.job-card .portal-logo-fallback,
.portal-directory-card .portal-logo-fallback{
  width:88px!important;
  height:88px!important;
  font-size:2rem!important;
  margin-bottom:16px;
}
.portal-directory-top{align-items:flex-start!important;}
.job-card .portal-badge{display:inline-flex;margin-bottom:14px;}


/* Fraktionen: mehr Luft und Wappen höher */
body.rebuild-public .section{
  padding:88px 0;
}
body.rebuild-public .section.compact{
  padding:58px 0;
}
body.rebuild-public .section-head{
  margin-bottom:46px;
  gap:44px;
}
body.rebuild-public .section-head .lead{
  line-height:1.75;
}
body.rebuild-public .portal-directory-grid{
  gap:34px 32px;
}
body.rebuild-public .grid-3,
body.rebuild-public .grid-4{
  gap:28px;
}
body.rebuild-public .job-card{
  min-height:390px;
  padding:34px;
  gap:32px;
}
body.rebuild-public .job-card > div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
body.rebuild-public .job-card .portal-logo-wrap{
  transform:translateY(-10px);
  margin-top:-4px;
  margin-bottom:20px;
}
body.rebuild-public .job-card .portal-logo{
  transform:translateY(-2px) scale(1.03);
}
body.rebuild-public .job-card .portal-badge{
  margin-bottom:18px;
}
body.rebuild-public .job-card h3{
  margin-bottom:14px;
  line-height:1.2;
}
body.rebuild-public .job-card p{
  line-height:1.75;
  margin-bottom:0;
}
body.rebuild-public .job-card .btn{
  min-height:54px;
  margin-top:4px;
}
body.rebuild-public .portal-directory-card{
  padding:34px;
  gap:34px;
}
body.rebuild-public .portal-directory-card .portal-directory-top{
  margin-bottom:24px;
}
body.rebuild-public .portal-directory-card h2{
  margin:26px 0 14px;
}
body.rebuild-public .portal-directory-card p{
  line-height:1.72;
}
body.rebuild-public .portal-actions{
  gap:14px;
}
body.rebuild-public .page-hero{
  padding:28px 0 22px!important;
}
body.rebuild-public main > .page-hero + .section{
  padding-top:64px!important;
}
@media(max-width:760px){
  body.rebuild-public .section{padding:64px 0;}
  body.rebuild-public .section-head{margin-bottom:32px;gap:18px;}
  body.rebuild-public .portal-directory-grid{gap:24px;}
  body.rebuild-public .job-card,
  body.rebuild-public .portal-directory-card{padding:26px;min-height:auto;}
  body.rebuild-public .job-card .portal-logo-wrap{transform:translateY(-6px);}
}
