/* ==========================================================================
   E-Tec Miller GmbH, Konstanz
   Das gesamte Aussehen der Seite. Alles haengt unter .em, damit nichts vom
   WordPress-Theme dazwischenfunkt und umgekehrt.

   Schriften wie auf der bisherigen Seite: Space Grotesk fuer Titel,
   JetBrains Mono fuer die kleinen Kennzeilen ("01 // Meister-Service"),
   Archivo fuer den Lauftext. Glas nur dort, wo etwas ueber Bild oder Dunkel
   schwebt. Bewegung ausschliesslich ueber transform und opacity.
   ========================================================================== */

html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.em{
  --paper:#F4F4F0;
  --paper-2:#EBECE6;
  --ink:#1C1C1B;
  --ink-2:#3A3638;
  --steel:#5F656C;
  --line:rgba(28,28,27,.10);
  --line-dark:rgba(255,255,255,.10);
  --volt:#69C531;
  --volt-deep:#58AD26;
  /* Schriftgruen. Das Logo-Gruen traegt als Text auf hellem Grund nur 2,2:1
     und --volt-deep nur 2,8:1; beides ist zu wenig. Dieser Ton kommt auf
     Weiss auf 6,0:1 und auf dem Papierton auf 5,1:1. Flaechen, Punkte und
     Knoepfe behalten das helle Logo-Gruen. */
  --volt-text:#357016;
  --volt-soft:rgba(105,197,49,.12);
  --font:'Archivo','Helvetica Neue',Arial,sans-serif;
  --display:'Space Grotesk','Archivo','Helvetica Neue',Arial,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --max:1240px;
  --gutter:clamp(20px, 4vw, 56px);
  --r:12px;
  --rl:24px;
  /* --ease ist die Feder selbst (kritisch gedaempft, Response 0,4 s), damit jeder
     Uebergang auf der Seite federt, auch die aelteren Regeln weiter unten. */
  --ease:linear(0, 0.19 7%, 0.44 15%, 0.64 23%, 0.79 31%, 0.89 41%, 0.95 53%, 0.985 70%, 1);
  --shadow:0 24px 48px -20px rgba(28,28,27,.18);

  font-family:var(--font);
  font-size:17px;
  line-height:1.55;
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
.em *{box-sizing:border-box;margin:0;padding:0}
.em img{max-width:100%;display:block}
.em a{color:inherit}
.em h1,.em h2,.em h3,.em h4{font-family:var(--display);font-weight:700;line-height:1.02;letter-spacing:-0.02em}
.em h1{font-size:clamp(42px, 6vw, 84px);letter-spacing:-0.03em}
.em h2{font-size:clamp(32px, 4.2vw, 58px);letter-spacing:-0.025em;max-width:18ch}
.em h3{font-size:clamp(20px, 2vw, 26px);letter-spacing:-0.015em}
.em h4{font-size:19px}
.em p{max-width:62ch}
.em .lede{font-size:clamp(17px, 1.45vw, 21px);color:var(--ink-2);line-height:1.5}
.em .muted{color:var(--steel)}
.em .wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.em section{padding:clamp(80px, 9vw, 136px) 0}
.em :focus-visible{outline:3px solid var(--volt);outline-offset:3px}

/* Kennzeile ueber einer Ueberschrift: Mono, gruen, mit atmendem Punkt */
.em .overline{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--volt-text)}
.em .overline::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--volt);animation:em-breathe 2.6s ease-in-out infinite}
@keyframes em-breathe{0%,100%{box-shadow:0 0 0 0 rgba(105,197,49,.45)}50%{box-shadow:0 0 0 7px rgba(105,197,49,0)}}
/* Kleine Kennung auf Karten */
.em .tag{display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border-radius:8px;background:var(--volt-soft);color:var(--volt-text);border:1px solid rgba(105,197,49,.25);line-height:1.2}
.em .mono{font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase}

/* ---------- Logo ---------- */
.em .logo{display:inline-flex;align-items:center;text-decoration:none;color:#fff}
.em .logo-svg{height:34px;width:auto;display:block}

/* ---------- Buttons ---------- */
.em .btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:15px 26px;border-radius:999px;
  font-weight:600;font-size:16px;text-decoration:none;line-height:1;
  border:1px solid var(--ink);background:var(--ink);color:var(--paper);
  transition:transform .4s var(--ease), background .25s, color .25s, border-color .25s, box-shadow .4s var(--ease);
  cursor:pointer;font-family:inherit;
}
.em .btn i{font-style:normal;transition:transform .4s var(--ease)}
.em .btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px -12px rgba(28,28,27,.45);color:var(--paper)}
.em .btn:hover i{transform:translateX(3px)}
.em .btn:active{transform:translateY(0) scale(.98);box-shadow:none}
.em .btn.volt{background:var(--volt);border-color:var(--volt);color:var(--ink)}
.em .btn.volt:hover{background:var(--volt-deep);border-color:var(--volt-text);color:var(--ink);box-shadow:0 14px 28px -12px rgba(88,173,38,.6)}
.em .btn.ghost{background:transparent;color:var(--ink)}
.em .btn.ghost:hover{background:var(--ink);color:var(--paper)}
.em .btn.glass{
  background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff;
  -webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.em .btn.glass:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.26);color:#fff}

/* ---------- Glas ---------- */
.em .glass-dark{
  background:rgba(28,28,27,.62);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 24px 48px -24px rgba(0,0,0,.55);
  -webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);
  color:#fff;
}

/* ---------- Bilder ---------- */
.em .shot{position:relative;overflow:hidden;border-radius:var(--rl);background:var(--paper-2)}
.em .shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease)}
.em .shot::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(28,28,27,.08);pointer-events:none}
.em .shot .tag{position:absolute;left:14px;top:14px;z-index:2;background:rgba(28,28,27,.62);color:#fff;border-color:rgba(255,255,255,.10);text-transform:none;letter-spacing:.02em;font-family:var(--font);font-weight:600;font-size:12.5px;padding:7px 12px;border-radius:999px}

/* ---------- Kopfzeile: schwebende Glas-Leiste ---------- */
.em .nav{position:sticky;top:0;z-index:20;padding:14px 0;pointer-events:none}
.em .nav .wrap{pointer-events:auto}
.em .nav .bar{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  height:64px;padding:0 10px 0 22px;border-radius:999px;
  background:rgba(28,28,27,.72);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 20px 40px -20px rgba(0,0,0,.6);
  -webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);
  color:#fff;
}
.em .nav ul{display:flex;gap:4px;list-style:none;align-items:center}
.em .nav ul a{display:block;padding:9px 14px;border-radius:999px;text-decoration:none;font-size:14.5px;color:rgba(255,255,255,.78);transition:background .25s,color .25s}
.em .nav ul a:hover{color:#fff;background:rgba(255,255,255,.08)}
.em .nav .btn{padding:12px 20px;font-size:14.5px}
.em .burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;border-radius:50%}
.em .burger span{display:block;height:2px;background:#fff;margin:6px 10px;transition:transform .35s var(--ease),opacity .25s}
.em .nav.open .burger span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.em .nav.open .burger span:nth-child(2){opacity:0}
.em .nav.open .burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.em .nav .nur-mobil{display:none}
@media (max-width:900px){.em .nav.open .nur-mobil.sub-gruppe{display:flex}}
@media (max-width:900px){
  .em .nav ul{display:none}
  .em .nav .bar > .btn{display:none}
  .em .burger{display:block}
  /* Offen: der ganze Container wird zum Vollbild, die Leiste bleibt oben
     drin, die Liste kommt darunter. backdrop-filter auf der Leiste macht
     sie sonst zum Bezugsrahmen fuer position:fixed, deshalb der Umweg. */
  .em .nav.open .wrap{
    position:fixed;inset:0;z-index:1;overflow-y:auto;
    padding:14px var(--gutter) 40px;
    background:rgba(28,28,27,.97);
    -webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);
  }
  .em .nav.open .bar{flex-wrap:wrap;height:auto;padding:0 10px 0 22px;background:none;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
  .em .nav.open .bar > .logo{height:64px;display:flex;align-items:center}
  .em .nav.open .burger{align-self:center}
  .em .nav.open .bar > nav{width:100%;order:10;margin-top:18px}
  .em .nav.open ul{display:flex;flex-direction:column;gap:0}
  .em .nav.open li{animation:em-up .55s var(--ease) both;animation-delay:calc(var(--i, 0) * 45ms)}
  .em .nav.open li:nth-child(1){--i:1}.em .nav.open li:nth-child(2){--i:2}.em .nav.open li:nth-child(3){--i:3}
  .em .nav.open li:nth-child(4){--i:4}.em .nav.open li:nth-child(5){--i:5}.em .nav.open li:nth-child(6){--i:6}
  .em .nav.open li:nth-child(7){--i:7}.em .nav.open li:nth-child(8){--i:8}.em .nav.open li:nth-child(9){--i:9}
  .em .nav.open li:nth-child(10){--i:10}.em .nav.open li:nth-child(11){--i:11}.em .nav.open li:nth-child(12){--i:12}
  .em .nav.open ul a{padding:14px 0;border-radius:0;border-bottom:1px solid var(--line-dark);font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:-0.02em;color:#fff}
  .em .nav.open ul a:hover{background:none;color:var(--volt)}
  .em .nav .nur-mobil{display:block}
  .em .nav.open .sub a{font-family:var(--font);font-weight:500;font-size:17px;padding:11px 0 11px 18px;color:rgba(255,255,255,.78);border-bottom:0;position:relative}
  .em .nav.open .sub a::before{content:"";position:absolute;left:0;top:50%;width:8px;height:1px;background:var(--volt)}
  .em .nav.open .sub:last-of-type a{border-bottom:1px solid var(--line-dark)}
  .em .nav.open li.sub + li:not(.sub) a{margin-top:6px}
  .em .nav.open .aktion{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
  .em .nav.open .aktion a{display:inline-flex;font-family:var(--font);font-size:16px;font-weight:600;padding:15px 24px;border-radius:999px;border-bottom:0}
  .em .nav.open .aktion .btn.volt{color:var(--ink)}
  .em .nav.open .aktion .btn.volt:hover{color:var(--ink)}
  .em .nav.open .klein{margin-top:22px;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45)}
}
@keyframes em-up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.em .nav.open li{animation:none}}

/* ---------- Hero: Text links, Bild rechts ----------
   Das Foto sitzt rechts und laeuft ueber eine Maske nach links in die
   dunkle Flaeche aus. Der Text steht links auf dem Dunkel. */
.em .hero{
  position:relative;overflow:hidden;
  margin-top:-92px;
  padding:clamp(150px, 19vh, 210px) 0 clamp(110px, 13vh, 160px);
  min-height:min(100dvh, 960px);
  background:var(--ink);color:var(--paper);
  display:flex;align-items:center;
}
.em .hero::before{content:"";position:absolute;left:-10%;top:-20%;width:50%;height:70%;
  background:radial-gradient(closest-side, rgba(105,197,49,.10), transparent);pointer-events:none}
.em .hero-bild{
  position:absolute;top:0;right:0;bottom:0;width:56%;
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.35) 24%, #000 55%);
  mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.35) 24%, #000 55%);
}
.em .hero-bild img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block}
/* Schleier von unten, damit der Uebergang zur naechsten Sektion weich ist */
.em .hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:30%;
  background:linear-gradient(180deg, rgba(28,28,27,0), rgba(28,28,27,.85));pointer-events:none}
.em .hero .wrap{position:relative;z-index:2;width:100%}
.em .hero-copy{max-width:600px}
.em .hero-copy .overline{color:rgba(255,255,255,.62);margin-bottom:22px}
.em .hero-copy .overline::before{background:var(--volt)}
.em .hero-copy h1{color:#fff;font-size:clamp(40px, 5.2vw, 74px)}
.em .hero-copy .lede{margin:26px 0 36px;max-width:48ch;color:rgba(255,255,255,.72)}
.em .hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* Kernkompetenzen: Glas-Leiste, ragt aus dem Hero in die helle Sektion */
.em .kompetenzen{position:relative;z-index:4;margin-top:-44px;background:linear-gradient(180deg, transparent 0 44px, #fff 44px)}
.em .kompetenzen ul{
  list-style:none;display:grid;grid-template-columns:1.25fr repeat(5,1fr);
  border-radius:var(--rl);overflow:hidden;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(255,255,255,.7);
  box-shadow:inset 0 1px 0 #fff, var(--shadow);
  -webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);
}
.em .kompetenzen li{display:flex;align-items:center;padding:20px 22px;font-size:14.5px;font-weight:500;color:var(--ink-2)}
.em .kompetenzen li + li{border-left:1px solid var(--line)}
.em .kompetenzen li.label{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--volt-text);line-height:1.4}
.em .kompetenzen li a{text-decoration:none;display:flex;align-items:center;gap:8px;transition:color .2s}
.em .kompetenzen li a::before{content:"";width:6px;height:6px;border-radius:2px;background:var(--volt);flex:none}
.em .kompetenzen li a:hover{color:var(--ink)}

@media (max-width:900px){
  /* Text oben, Bild darunter mit Verlauf von oben */
  .em .hero{padding:116px 0 0;min-height:auto;display:block}
  .em .hero-copy{max-width:none}
  .em .hero-bild{position:relative;width:100%;height:auto;aspect-ratio:4/5;max-height:560px;margin-top:28px;
    -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 40%);mask-image:linear-gradient(180deg, transparent 0%, #000 40%)}
  .em .hero-bild img{object-position:50% 30%}
  .em .hero::after{display:none}
  .em .kompetenzen{margin-top:0}
  .em .kompetenzen ul{grid-template-columns:1fr 1fr;border-radius:0 0 var(--rl) var(--rl)}
  .em .kompetenzen li{padding:15px 18px}
  .em .kompetenzen li.label{grid-column:span 2;border-bottom:1px solid var(--line)}
  .em .kompetenzen li + li{border-left:0}
  .em .kompetenzen li:nth-child(odd):not(.label){border-right:1px solid var(--line)}
  .em .kompetenzen li:nth-child(n+4){border-top:1px solid var(--line)}
}
@media (max-width:520px){
  .em .kompetenzen ul{grid-template-columns:1fr}
  .em .kompetenzen li.label{grid-column:span 1}
  .em .kompetenzen li{border-right:0 !important;border-top:1px solid var(--line)}
  .em .kompetenzen li.label{border-top:0}
}

/* ---------- Abschnittskopf ---------- */
.em .section-head{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end;margin-bottom:clamp(40px, 5vw, 72px)}
.em .section-head .overline{margin-bottom:18px}
.em .section-head p{justify-self:end;max-width:44ch}
@media (max-width:900px){
  .em .section-head{grid-template-columns:1fr}
  .em .section-head p{justify-self:start}
}

/* ---------- Leistungen: Bento ---------- */
.em .services{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.em .svc{
  position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--rl);
  padding:28px;display:flex;flex-direction:column;gap:16px;
  grid-column:span 2;color:inherit;
  transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s;
}
.em .svc:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(28,28,27,.18)}
.em .svc.lead{grid-column:span 3;background:var(--ink);color:var(--paper);border-color:var(--ink);overflow:hidden}
.em .svc.lead::before{content:"";position:absolute;right:-20%;top:-40%;width:70%;height:120%;
  background:radial-gradient(closest-side, rgba(105,197,49,.16), transparent);pointer-events:none}
.em .svc.lead:hover{border-color:rgba(105,197,49,.5)}
.em .svc.lead .muted{color:rgba(255,255,255,.66)}
.em .svc.wide{grid-column:span 3}
.em .svc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.em .svc .ico{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--volt-soft);border:1px solid rgba(105,197,49,.25);color:var(--volt-text)}
.em .svc .ico svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.em .svc.lead .ico{background:rgba(105,197,49,.14);border-color:rgba(105,197,49,.3);color:var(--volt)}
.em .svc.lead .tag{background:rgba(105,197,49,.12);color:var(--volt);border-color:rgba(105,197,49,.28)}
.em .svc h3{margin-top:2px}
.em .svc p{font-size:15.5px}
.em .punkte{list-style:none;display:grid;gap:8px;font-size:14.5px;color:var(--ink-2)}
.em .punkte li{padding-left:22px;position:relative}
.em .punkte li::before{content:"";position:absolute;left:0;top:.5em;width:12px;height:7px;border-left:2px solid var(--volt);border-bottom:2px solid var(--volt);transform:rotate(-45deg)}
.em .svc.lead .punkte{color:rgba(255,255,255,.8)}
.em .svc-foot{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13.5px;color:var(--steel)}
.em .svc.lead .svc-foot{border-top-color:var(--line-dark);color:rgba(255,255,255,.55)}
.em .svc-foot a{text-decoration:none;font-weight:600;color:var(--ink);display:inline-flex;gap:6px;align-items:center}
.em .svc-foot a i{font-style:normal;transition:transform .4s var(--ease)}
.em .svc-foot a:hover i{transform:translateX(3px)}
.em .svc.lead .svc-foot a{color:#fff}
@media (max-width:900px){
  .em .services{grid-template-columns:1fr 1fr}
  .em .svc,.em .svc.lead,.em .svc.wide{grid-column:span 1}
  .em .svc.lead{grid-column:span 2}
}
@media (max-width:560px){
  .em .services{grid-template-columns:1fr}
  .em .svc.lead{grid-column:span 1}
}

/* ---------- Unternehmen ---------- */
.em .about{background:#fff}
.em .about-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(32px, 6vw, 96px);align-items:start}
.em .about .overline{margin-bottom:18px}
.em .about h2{margin-bottom:22px}
.em .about .lede{margin-bottom:20px}
.em .about p + p{margin-top:16px}
.em .about-media{display:grid;gap:14px;position:sticky;top:110px}
.em .about .inhaber{aspect-ratio:4/5}
.em .about .inhaber .tag{top:auto;bottom:14px;left:14px;padding:10px 14px;border-radius:14px;line-height:1.35;font-size:13px}
.em .about .inhaber .tag b{display:block;font-size:15px;font-family:var(--display)}
.em .about .flotte{aspect-ratio:16/10}
.em .flotte-text{position:absolute;left:14px;right:auto;bottom:14px;z-index:2;max-width:min(290px, calc(100% - 28px));padding:12px 15px;border-radius:14px;display:grid;gap:2px}
.em .flotte-text .mono{color:rgba(255,255,255,.65);font-size:11px}
.em .flotte-text b{font-family:var(--display);font-size:16px;letter-spacing:-0.01em;line-height:1.15}
.em .flotte-text .prozent{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--volt)}
@media (max-width:900px){
  .em .about-grid{grid-template-columns:1fr}
  .em .about-media{position:static;grid-template-columns:1fr 1fr}
  .em .about .inhaber{aspect-ratio:3/4}
  .em .about .flotte{aspect-ratio:3/4}
  .em .flotte-text b{font-size:17px}
}
@media (max-width:560px){.em .about-media{grid-template-columns:1fr}.em .about .flotte{aspect-ratio:16/10}}

/* ---------- Team ---------- */
.em .team{background:var(--paper-2)}
.em .roster{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.em .roster figure{margin:0}
.em .roster .shot{aspect-ratio:3/4;border-radius:18px}
.em .roster .shot::after{transition:box-shadow .4s}
.em .roster figure:hover .shot::after{box-shadow:inset 0 0 0 2px var(--volt)}
.em .roster figure:hover .shot img{transform:scale(1.05)}
@media (max-width:900px){.em .roster{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:520px){.em .roster{grid-template-columns:1fr 1fr}}

/* ---------- Karriere ---------- */
/* Vier Vorteile: die Spalten passen sich der Breite an, statt starr drei zu sein. */
.em .vorteile{list-style:none;display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:14px;margin-bottom:14px}
.em .vorteile li{padding:24px 26px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.em .vorteile h4{margin-bottom:8px;padding-left:18px;position:relative}
.em .vorteile h4::before{content:"";position:absolute;left:0;top:.35em;width:8px;height:8px;border-radius:2px;background:var(--volt)}
.em .vorteile p{font-size:15px;color:var(--ink-2)}
.em .stellen{list-style:none;display:grid;gap:14px}
.em .stellen li{
  display:grid;grid-template-columns:1fr auto;gap:12px 40px;align-items:center;
  padding:28px 30px;border-radius:var(--rl);background:#fff;border:1px solid var(--line);
  transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s;
}
.em .stellen li:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:rgba(28,28,27,.18)}
.em .stellen .tag{grid-column:1;justify-self:start}
.em .stellen h3{grid-column:1;font-size:clamp(19px, 1.8vw, 24px)}
.em .stellen p{grid-column:1;font-size:15px;color:var(--ink-2);max-width:70ch}
.em .stellen .meta{grid-column:1;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13.5px;color:var(--steel)}
.em .stellen .meta span{display:inline-flex;align-items:center;gap:7px}
.em .stellen .meta span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--volt)}
.em .stellen .btn{grid-column:2;grid-row:1 / span 4;align-self:center}
@media (max-width:900px){
  .em .vorteile{grid-template-columns:1fr}
  .em .stellen li{grid-template-columns:1fr}
  .em .stellen .btn{grid-column:1;grid-row:auto;justify-self:start;margin-top:6px}
}

/* ---------- Referenzen ---------- */
.em .refs{background:#fff}
.em .ref-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.em .ref{display:flex;flex-direction:column;gap:12px}
.em .ref .shot{aspect-ratio:4/5}
.em .ref:hover .shot img{transform:scale(1.04)}
.em .ref .meta{display:flex;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--steel);margin-top:4px}
.em .ref .meta span + span::before{content:"•";margin-right:10px;color:var(--volt)}
.em .ref h3{font-size:21px}
.em .ref p{font-size:15px;color:var(--ink-2)}
@media (max-width:900px){.em .ref-grid{grid-template-columns:1fr 1fr}.em .ref:last-child{grid-column:span 2}.em .ref:last-child .shot{aspect-ratio:16/9}}
@media (max-width:560px){.em .ref-grid{grid-template-columns:1fr}.em .ref:last-child{grid-column:span 1}.em .ref:last-child .shot{aspect-ratio:4/5}}

/* ---------- Ablauf + FAQ: dunkel ---------- */
.em .process{position:relative;background:var(--ink);color:var(--paper);overflow:hidden}
.em .process::before{content:"";position:absolute;right:-15%;bottom:-30%;width:60%;height:90%;
  background:radial-gradient(closest-side, rgba(105,197,49,.09), transparent);pointer-events:none}
.em .process .wrap{position:relative}
.em .process h2,.em .process h3{color:#fff}
.em .process .lede{color:rgba(255,255,255,.66)}
.em .process .overline{color:var(--volt)}
.em .steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.em .steps li{
  position:relative;padding:28px 24px 30px;border-radius:20px;
  background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .5s var(--ease), background .3s, border-color .3s;
}
.em .steps li:hover{transform:translateY(-3px);background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14)}
.em .steps .n{font-family:var(--mono);font-weight:500;font-size:13px;letter-spacing:.12em;color:var(--volt);display:inline-block;margin-bottom:22px;padding:6px 10px;border-radius:8px;background:rgba(105,197,49,.10);border:1px solid rgba(105,197,49,.25)}
.em .steps h3{font-size:20px;margin-bottom:8px}
.em .steps p{font-size:15px;color:rgba(255,255,255,.66)}
@media (max-width:1000px){.em .steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.em .steps{grid-template-columns:1fr}}
.em .faq{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px, 6vw, 96px);margin-top:clamp(64px, 8vw, 110px);padding-top:clamp(48px, 6vw, 80px);border-top:1px solid var(--line-dark)}
.em .faq .overline{margin-bottom:16px}
.em .faq h3{font-size:clamp(26px, 2.6vw, 36px);margin-bottom:14px}
.em .faq > div > p{color:rgba(255,255,255,.66);font-size:16px}
.em .faq-list{display:grid;gap:10px}
.em .faq details{border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:background .3s,border-color .3s}
.em .faq details[open]{background:rgba(255,255,255,.07);border-color:rgba(105,197,49,.35)}
.em .faq summary{list-style:none;cursor:pointer;padding:20px 56px 20px 22px;font-weight:600;font-size:16.5px;position:relative;color:#fff}
.em .faq summary::-webkit-details-marker{display:none}
.em .faq summary::after{content:"";position:absolute;right:22px;top:50%;width:10px;height:10px;border-right:2px solid var(--volt);border-bottom:2px solid var(--volt);transform:translateY(-70%) rotate(45deg);transition:transform .4s var(--ease)}
.em .faq details[open] summary::after{transform:translateY(-30%) rotate(225deg)}
.em .faq details p{padding:0 22px 22px;color:rgba(255,255,255,.72);font-size:15.5px;max-width:none}
@media (max-width:900px){.em .faq{grid-template-columns:1fr}}

/* ---------- Kontakt ---------- */
.em .contact{position:relative;background:var(--volt);color:var(--ink);overflow:hidden}
.em .contact::before{content:"";position:absolute;left:-10%;bottom:-40%;width:50%;height:100%;
  background:radial-gradient(closest-side, rgba(255,255,255,.22), transparent);pointer-events:none}
.em .contact .wrap{position:relative}
.em .contact .overline{color:#173B0A}
.em .contact .overline::before{background:var(--ink);animation:none;box-shadow:none}
.em .contact h2{max-width:14ch;margin-top:18px}
.em .contact .lede{color:var(--ink);margin-top:20px;max-width:40ch}
.em .contact-info{margin-top:36px;display:grid;gap:22px}
.em .contact-info div{font-size:16px;line-height:1.5}
.em .contact-info b{display:block;font-family:var(--mono);font-size:11.5px;color:#173B0A;font-weight:500;margin-bottom:4px;letter-spacing:.1em;text-transform:uppercase}
.em .contact-info a{display:block;text-decoration:none;font-weight:600;font-size:20px;font-family:var(--display)}
.em .contact-info a:hover{text-decoration:underline;text-underline-offset:5px}
.em .contact-info small{display:block;font-size:13.5px;color:#173B0A;margin-top:2px}
.em .form{
  background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);border-radius:var(--rl);
  box-shadow:inset 0 1px 0 #fff, var(--shadow);
  -webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);
  padding:clamp(24px, 3vw, 40px);display:grid;gap:16px;grid-template-columns:1fr 1fr;position:relative;
}
.em .form label{display:grid;gap:6px;font-size:14px;font-weight:500}
.em .form .full{grid-column:span 2}
.em .form input,.em .form select,.em .form textarea{
  font:inherit;font-size:16px;padding:13px 14px;border:1px solid rgba(28,28,27,.16);border-radius:var(--r);background:#fff;color:var(--ink);width:100%;
  transition:border-color .2s, box-shadow .2s;
}
.em .form textarea{min-height:120px;resize:vertical}
.em .form input:focus,.em .form select:focus,.em .form textarea:focus{outline:0;border-color:var(--ink);box-shadow:0 0 0 3px rgba(28,28,27,.10)}
.em .form fieldset{border:0}
.em .form .pills{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.em .form .pills legend{font-size:14px;font-weight:500;margin-bottom:8px;width:100%}
.em .form .pills label{display:inline-block}
.em .form .pills input{position:absolute;opacity:0;width:1px;height:1px}
.em .form .pills span{display:inline-block;padding:10px 18px;border-radius:999px;border:1px solid rgba(28,28,27,.16);background:#fff;font-size:15px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.em .form .pills input:checked + span{background:var(--ink);color:#fff;border-color:var(--ink)}
.em .form .pills input:focus-visible + span{outline:3px solid var(--volt);outline-offset:2px}
.em .form .check{grid-template-columns:auto 1fr;align-items:start;gap:10px;font-weight:400;font-size:13.5px;color:var(--ink-2)}
.em .form .check input{width:18px;height:18px;margin-top:2px;accent-color:var(--ink)}
.em .form .actions{grid-column:span 2;display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.em .form .hinweis{grid-column:span 2;display:none;padding:14px 16px;background:#fff;border-left:4px solid var(--ink);border-radius:var(--r);font-size:15px}
.em .form.sent .hinweis{display:block}
.em .form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:900px){.em .contact .wrap{grid-template-columns:1fr}}
@media (max-width:560px){
  .em .form{grid-template-columns:1fr}
  .em .form .full,.em .form .actions,.em .form .hinweis{grid-column:span 1}
}

/* ---------- Fusszeile ---------- */
.em .site-footer{background:var(--ink);color:rgba(255,255,255,.7);padding:64px 0 32px;font-size:14px}
.em .site-footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}
.em .site-footer .logo-svg{height:40px}
.em .site-footer h4{color:#fff;font-family:var(--mono);font-size:12px;font-weight:500;margin-bottom:14px;letter-spacing:.1em;text-transform:uppercase}
.em .site-footer ul{list-style:none;display:grid;gap:9px}
.em .site-footer a{text-decoration:none;color:rgba(255,255,255,.7);transition:color .2s}
.em .site-footer a:hover{color:#fff}
.em .site-footer .legal{grid-column:1/-1;border-top:1px solid var(--line-dark);padding-top:20px;margin-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:rgba(255,255,255,.45);font-size:13px}
@media (max-width:900px){.em .site-footer .wrap{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.em .site-footer .wrap{grid-template-columns:1fr}}

/* ---------- Erscheinen beim Scrollen ---------- */
.em .reveal{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease), transform .9s var(--ease)}
.em .reveal.in{opacity:1;transform:none}
.em .reveal[data-delay="1"]{transition-delay:.08s}
.em .reveal[data-delay="2"]{transition-delay:.16s}
.em .reveal[data-delay="3"]{transition-delay:.24s}
.em .reveal[data-delay="4"]{transition-delay:.32s}
.em .reveal[data-delay="5"]{transition-delay:.40s}
@media (prefers-reduced-motion:reduce){.em .reveal{opacity:1;transform:none;transition:none}.em .overline::before{animation:none}}
.em.no-js .reveal{opacity:1;transform:none}

/* ==========================================================================
   Unterseiten
   ========================================================================== */

/* ---------- Kopf einer Unterseite: Text links, Bild rechts ---------- */
.em .page-hero{position:relative;overflow:hidden;margin-top:-92px;padding:clamp(140px, 17vh, 190px) 0 clamp(64px, 8vh, 96px);background:var(--ink);color:var(--paper)}
.em .page-hero::before{content:"";position:absolute;left:-10%;top:-10%;width:50%;height:80%;
  background:radial-gradient(closest-side, rgba(105,197,49,.10), transparent);pointer-events:none}
.em .page-hero .wrap{position:relative;display:grid;grid-template-columns:6fr 6fr;gap:clamp(32px, 5vw, 80px);align-items:center}
.em .page-hero.ohne-bild .wrap{grid-template-columns:1fr}
.em .page-hero.klein{padding-bottom:clamp(48px, 6vh, 72px)}
.em .page-hero .overline{color:rgba(255,255,255,.62);margin-bottom:20px}
.em .page-hero h1{color:#fff;font-size:clamp(34px, 4.2vw, 60px);max-width:20ch}
.em .page-hero .lede{margin:22px 0 32px;max-width:52ch;color:rgba(255,255,255,.72)}
.em .page-hero .lede:empty{display:none}
.em .page-hero-bild .shot{aspect-ratio:4/3}
@media (max-width:900px){
  .em .page-hero{padding-top:116px}
  .em .page-hero .wrap{grid-template-columns:1fr}
  .em .page-hero-bild .shot{aspect-ratio:16/10}
}

/* ---------- Einstieg mit Kurzliste ---------- */
.em .intro{background:#fff}
.em .intro-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(32px, 6vw, 96px);align-items:start}
.em .intro .overline{margin-bottom:16px}
.em .intro h2{margin-bottom:20px}
.em .intro p + p{margin-top:16px}
.em .intro-grid > div:last-child{padding:28px;border-radius:var(--rl);background:var(--paper);border:1px solid var(--line);position:sticky;top:110px}
.em .intro-grid .mono{display:block;color:var(--volt-text);margin-bottom:16px}
.em .intro-grid .punkte{margin-bottom:24px;font-size:15.5px}
@media (max-width:900px){.em .intro-grid{grid-template-columns:1fr}.em .intro-grid > div:last-child{position:static}}

/* ---------- Leistungsbloecke ---------- */
.em .bloecke{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.em .block{padding:28px;border-radius:20px;background:#fff;border:1px solid var(--line);transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s}
.em .block:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(28,28,27,.18)}
.em .block h3{font-size:20px;margin-bottom:10px;padding-left:18px;position:relative}
.em .block h3::before{content:"";position:absolute;left:0;top:.42em;width:8px;height:8px;border-radius:2px;background:var(--volt)}
.em .block p{font-size:15px;color:var(--ink-2)}
@media (max-width:900px){.em .bloecke{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.em .bloecke{grid-template-columns:1fr}}

/* ---------- Fuer wen ---------- */
.em .fuer-wen{background:var(--paper-2)}
.em .fuer-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.em .fuer-grid li{padding:28px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.em .fuer-grid h3{font-size:19px;margin-bottom:8px}
.em .fuer-grid p{font-size:15px;color:var(--ink-2)}
@media (max-width:900px){.em .fuer-grid{grid-template-columns:1fr}}

/* Dauer-Kennung in den Ablaufschritten */
.em .steps .dauer{display:inline-block;margin-top:16px;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5)}

/* ---------- Weitere Fachbereiche ---------- */
.em .related{background:#fff}
.em .related-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:14px}
.em .rel{display:flex;flex-direction:column;gap:12px;padding:26px;border-radius:20px;background:var(--paper);border:1px solid var(--line);text-decoration:none;color:inherit;transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s}
.em .rel:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(28,28,27,.18)}
.em .rel .tag{align-self:flex-start}
.em .rel h3{font-size:19px}
.em .rel p{font-size:14.5px;color:var(--ink-2)}
.em .mehr{margin-top:auto;font-weight:600;font-size:14.5px;display:inline-flex;gap:6px;align-items:center}
.em .mehr i{font-style:normal;transition:transform .4s var(--ease)}
.em .rel:hover .mehr i,.em .ls-karte:hover .mehr i{transform:translateX(3px)}
@media (max-width:1000px){.em .related-grid{grid-template-columns:1fr 1fr}}
@media (max-width:1240px) and (min-width:1001px){.em .related-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.em .related-grid{grid-template-columns:1fr}}

/* ---------- CTA-Band ---------- */
.em .cta{padding:0 0 clamp(80px, 9vw, 136px)}
.em .cta-box{display:grid;grid-template-columns:7fr 5fr;gap:32px;align-items:center;padding:clamp(32px, 4vw, 56px);border-radius:var(--rl);background:var(--volt);color:var(--ink);position:relative;overflow:hidden}
.em .cta-box::before{content:"";position:absolute;left:-10%;bottom:-60%;width:50%;height:120%;background:radial-gradient(closest-side, rgba(255,255,255,.25), transparent);pointer-events:none}
.em .cta-box > *{position:relative}
.em .cta-box .overline{color:#173B0A}
.em .cta-box .overline::before{background:var(--ink);animation:none;box-shadow:none}
.em .cta-box h2{margin-top:14px;font-size:clamp(28px, 3vw, 40px)}
.em .cta-box .lede{margin-top:14px;color:var(--ink);max-width:44ch}
.em .cta-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-self:end}
.em .cta-actions small{width:100%;font-size:13px;color:#173B0A}
@media (max-width:900px){.em .cta-box{grid-template-columns:1fr}.em .cta-actions{justify-self:start}}

/* ---------- Leistungsuebersicht ---------- */
.em .ls-liste .wrap{display:grid;gap:16px}
.em .ls-karte{display:grid;grid-template-columns:5fr 7fr;gap:0;border-radius:var(--rl);overflow:hidden;background:#fff;border:1px solid var(--line);text-decoration:none;color:inherit;transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s}
.em .ls-karte:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(28,28,27,.18)}
.em .ls-karte:hover .shot img{transform:scale(1.04)}
.em .ls-karte .shot{border-radius:0;aspect-ratio:auto;min-height:280px}
.em .ls-karte .shot::after{display:none}
.em .ls-karte .ls-text{padding:clamp(24px, 3vw, 40px);display:flex;flex-direction:column;gap:14px}
.em .ls-karte h2{font-size:clamp(24px, 2.4vw, 32px);max-width:none}
.em .ls-karte p{font-size:15.5px;color:var(--ink-2)}
.em .chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.em .chips li{font-size:13px;padding:6px 11px;border:1px solid var(--line);border-radius:999px;color:var(--ink-2);background:rgba(28,28,27,.03)}
.em .ls-karte:nth-child(even){grid-template-columns:7fr 5fr}
.em .ls-karte:nth-child(even) .shot{order:2}
@media (max-width:900px){.em .ls-karte,.em .ls-karte:nth-child(even){grid-template-columns:1fr}.em .ls-karte:nth-child(even) .shot{order:0}.em .ls-karte .shot{aspect-ratio:16/10;min-height:0}}

/* ---------- Marken ---------- */
.em .marken{margin-top:clamp(48px, 6vw, 80px);padding-top:28px;border-top:1px solid var(--line)}
.em .marken .overline{margin-bottom:18px}
.em .marken ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.em .marken li a{display:inline-block;padding:12px 20px;border-radius:12px;background:#fff;border:1px solid var(--line);font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-0.01em;text-decoration:none;color:var(--ink-2);transition:color .2s,border-color .2s}
.em .marken li a:hover{color:var(--ink);border-color:var(--ink)}

/* ---------- Karriere-Seite ---------- */
.em .karriere .vorteile{margin-bottom:24px}
.em .stellen-liste{display:grid;gap:16px}
.em .stelle{padding:clamp(24px, 3vw, 40px);border-radius:var(--rl);background:#fff;border:1px solid var(--line);scroll-margin-top:110px}
.em .stelle-kopf .tag{margin-bottom:14px}
.em .stelle-kopf h2{font-size:clamp(24px, 2.6vw, 34px);max-width:none}
.em .stelle-kopf .lede{margin-top:12px;font-size:17px}
.em .stelle-kopf .meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13.5px;color:var(--steel);margin-top:14px}
.em .stelle-kopf .meta span{display:inline-flex;align-items:center;gap:7px}
.em .stelle-kopf .meta span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--volt)}
.em .stelle-listen{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}
.em .stelle-listen h3{font-size:14px;font-family:var(--mono);font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--volt-text);margin-bottom:12px}
.em .stelle-listen .punkte{font-size:14.5px}
.em .stelle-fuss{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.em .stelle-fuss small{font-size:13px;color:var(--steel);max-width:44ch}
@media (max-width:900px){.em .stelle-listen{grid-template-columns:1fr}}

/* ---------- Referenz-Seite ---------- */
.em .refs-seite .wrap{display:grid;gap:clamp(48px, 6vw, 96px)}
.em .referenz{scroll-margin-top:110px}
.em .ref-kopf{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end;margin-bottom:24px}
.em .ref-kopf .tag{margin-bottom:14px}
.em .ref-kopf h2{font-size:clamp(26px, 3vw, 42px)}
.em .ref-kopf .meta{display:flex;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--steel);margin-top:10px}
.em .ref-kopf .meta span + span::before{content:"•";margin-right:10px;color:var(--volt)}
.em .ref-bilder{display:grid;grid-template-columns:1fr;gap:14px}
.em .ref-bilder .haupt{aspect-ratio:16/8}
.em .gal{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.em .gal .shot{aspect-ratio:4/5}
.em .referenz:hover .shot img{transform:none}
.em .ref-link{margin-top:18px}
.em .textlink{font-weight:600;text-decoration:none;display:inline-flex;gap:6px;align-items:center;border-bottom:2px solid var(--volt);padding-bottom:2px}
.em .textlink i{font-style:normal}
@media (max-width:900px){.em .ref-kopf{grid-template-columns:1fr}.em .ref-bilder .haupt{aspect-ratio:16/10}}
@media (max-width:560px){.em .gal{grid-template-columns:1fr 1fr}}

/* ---------- Kontaktseite ---------- */
.em .contact-info small a{font-size:13.5px}

/* ---------- Rechtstexte ---------- */
.em .rechts{background:#fff}
.em .rechts-text{max-width:72ch}
.em .rechts-text h2{font-size:clamp(22px, 2.2vw, 30px);margin:36px 0 12px;max-width:none}
.em .rechts-text h2:first-child{margin-top:0}
.em .rechts-text h3{font-size:18px;margin:24px 0 8px}
.em .rechts-text p{margin-bottom:12px;font-size:16px;color:var(--ink-2)}
.em .rechts-text a{color:var(--ink);font-weight:600}

/* ---------- Startseite: Ueber uns mit Teambild ---------- */
.em .ueber{background:#fff}
.em .ueber-grid{display:grid;grid-template-columns:6fr 6fr;gap:clamp(32px, 6vw, 96px);align-items:center}
.em .ueber .overline{margin-bottom:18px}
.em .ueber h2{margin-bottom:20px}
.em .ueber .lede{margin-bottom:16px}
.em .ueber p + p{margin-top:14px}
.em .ueber-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.em .ueber-bild{position:relative}
.em .ueber-bild .shot{aspect-ratio:4/3}
.em .karriere-plakette{position:absolute;right:14px;bottom:14px;max-width:min(280px, calc(100% - 28px));z-index:2;padding:12px 14px;border-radius:14px;display:grid;gap:3px;text-decoration:none;transition:transform .5s var(--ease)}
.em .karriere-plakette:hover{transform:translateY(-3px)}
.em .karriere-plakette .mono{color:var(--volt)}
.em .karriere-plakette b{font-family:var(--display);font-size:15px;letter-spacing:-0.01em;line-height:1.2}
.em .karriere-plakette .mehr{margin-top:2px;font-size:13px;color:rgba(255,255,255,.8)}
@media (max-width:900px){.em .ueber-grid{grid-template-columns:1fr}.em .ueber-bild{order:-1}}

/* ---------- Hero mit Hintergrundvideo (Startseite) ----------
   Das Medium fuellt den ganzen Hero. Bis das Video da ist, zeigt das poster
   das Teamfoto, ruhig abgedunkelt. Der Text steht links auf dem Dunkel,
   rechts laufen die Leiterbahnen. Der Platzhalter-Hinweis ist eine kleine
   Zeile unten links, kein Kasten. */
.em .hero-video{min-height:min(100dvh, 900px);padding:clamp(150px, 20vh, 220px) 0 clamp(120px, 15vh, 170px)}
.em .hero-video .hero-medium{position:absolute;inset:0;z-index:0}
.em .hero-video .hero-medium{overflow:hidden;background:var(--ink)}
.em .hero-video .hero-standbild{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 62%;filter:saturate(.75) brightness(.7)}
/* Der Player wird wie ein Hintergrundbild beschnitten: mindestens so breit
   wie der Hero und mindestens so hoch, bei 16:9, mittig gesetzt. */
.em .hero-video .hero-medium iframe{position:absolute;top:50%;left:50%;width:100%;height:100%;min-width:calc(100vh * 16 / 9);min-height:calc(100vw * 9 / 16);transform:translate(-50%,-50%);border:0;pointer-events:none;filter:saturate(.85) brightness(.75)}
.em .hero-video .hero-medium::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg, rgba(28,28,27,.97) 0%, rgba(28,28,27,.9) 40%, rgba(28,28,27,.5) 68%, rgba(28,28,27,.3) 100%),
             linear-gradient(180deg, rgba(28,28,27,.5) 0%, rgba(28,28,27,0) 30%, rgba(28,28,27,.85) 100%)}
.em .hero-video .hero-bahn{position:absolute;right:-3%;top:0;bottom:0;width:40%;z-index:1;opacity:.8;mix-blend-mode:screen;pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 35%);mask-image:linear-gradient(90deg, transparent 0%, #000 35%)}
.em .hero-video .hero-copy{max-width:640px;position:relative;z-index:2}
.em .hero-video .hero-copy .lede{max-width:50ch}
.em .video-hinweis{position:absolute;left:var(--gutter);bottom:clamp(64px, 8vh, 84px);z-index:2;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4);display:inline-flex;gap:10px;align-items:center}
.em .video-hinweis::before{content:"";width:22px;height:1px;background:rgba(255,255,255,.35)}
.em .video-hinweis .mono{color:var(--volt)}
@media (max-width:900px){
  .em .hero-video{padding:150px 0 90px;min-height:min(92dvh, 760px);display:flex}
  .em .hero-video .hero-standbild{object-position:60% 50%}
  .em .hero-video .hero-medium::after{background:linear-gradient(180deg, rgba(28,28,27,.92) 0%, rgba(28,28,27,.8) 55%, rgba(28,28,27,.75) 100%)}
  .em .hero-video .hero-bahn{width:100%;right:0;opacity:.3;-webkit-mask-image:none;mask-image:none}
  .em .video-hinweis{bottom:40px}
}

/* ==========================================================================
   Fakten-Kacheln (Startseite, Unternehmen)
   ========================================================================== */
.em .facts{display:grid;grid-template-columns:repeat(auto-fit, minmax(205px, 1fr));gap:12px;margin-top:32px}
.em .facts div{padding:18px 18px 16px;border-radius:16px;background:var(--paper);border:1px solid var(--line);position:relative;overflow:hidden}
.em .facts div::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--volt)}
.em .facts b{display:block;font-family:var(--display);font-size:17px;font-weight:700;letter-spacing:-0.01em;line-height:1.2}
.em .facts span{font-size:13.5px;color:var(--steel);display:block;margin-top:5px;line-height:1.4}
.em .ueber .facts div,.em .about .facts div{background:var(--paper)}
@media (max-width:520px){.em .facts{grid-template-columns:1fr}}

/* ==========================================================================
   Leiterbahnen: das Motiv der Fahrzeugbeschriftung
   Gezeichnet, sobald der Traeger .in bekommt. Nur stroke-dashoffset und
   opacity bewegen sich.
   ========================================================================== */
.em .leiterbahn{display:block;width:100%;height:100%;color:var(--volt)}
.em .leiterbahn .zuege path{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:1400;stroke-dashoffset:1400;opacity:.9}
.em .leiterbahn .punkte circle{fill:currentColor;opacity:0}
.em .in .leiterbahn .zuege path,.em .leiterbahn.in .zuege path{animation:em-bahn 2.2s var(--ease) forwards}
.em .in .leiterbahn .zuege path:nth-child(2){animation-delay:.25s}
.em .in .leiterbahn .zuege path:nth-child(3){animation-delay:.5s}
.em .in .leiterbahn .zuege path:nth-child(4){animation-delay:.75s}
.em .in .leiterbahn .punkte circle{animation:em-punkt .4s ease 1.2s forwards}
@keyframes em-bahn{to{stroke-dashoffset:0}}
@keyframes em-punkt{to{opacity:1}}
@media (prefers-reduced-motion:reduce){.em .leiterbahn .zuege path{stroke-dashoffset:0;animation:none}.em .leiterbahn .punkte circle{opacity:1;animation:none}}

/* ---------- Grosser Bildkopf ---------- */
.em .page-hero.gross{padding:clamp(170px, 22vh, 250px) 0 clamp(90px, 12vh, 140px);min-height:min(78dvh, 820px);display:flex;align-items:flex-end}
.em .page-hero.gross .wrap{display:block}
.em .page-hero.gross .hero-bg{position:absolute;inset:0;z-index:0}
.em .page-hero.gross .hero-bg img{width:100%;height:100%;object-fit:cover;object-position:var(--pos, 50% 45%);display:block;filter:saturate(.8) brightness(.9)}
.em .page-hero.gross .hero-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg, rgba(28,28,27,.97) 0%, rgba(28,28,27,.92) 42%, rgba(28,28,27,.55) 66%, rgba(28,28,27,.35) 100%),
             linear-gradient(180deg, rgba(28,28,27,.55) 0%, rgba(28,28,27,0) 35%, rgba(28,28,27,.8) 100%)}
.em .page-hero.gross .hero-bahn{position:absolute;right:-3%;top:0;bottom:0;width:38%;z-index:1;opacity:.75;mix-blend-mode:screen;pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 45%);mask-image:linear-gradient(90deg, transparent 0%, #000 45%)}
.em .page-hero.gross .kennziffer{position:absolute;right:var(--gutter);top:clamp(96px, 13vh, 130px);z-index:1;font-family:var(--mono);font-size:clamp(110px, 15vw, 220px);line-height:.8;font-weight:500;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.2);letter-spacing:-0.06em;pointer-events:none;user-select:none}
.em .page-hero.gross .page-hero-copy{position:relative;z-index:2;max-width:760px}
.em .page-hero.gross h1{font-size:clamp(38px, 5vw, 72px);max-width:16ch}
.em .page-hero.gross .lede{max-width:56ch}
@media (max-width:900px){
  .em .page-hero.gross{padding:130px 0 60px;min-height:min(70dvh, 640px)}
  .em .page-hero.gross .hero-bg::after{background:linear-gradient(180deg, rgba(28,28,27,.92) 0%, rgba(28,28,27,.8) 60%, rgba(28,28,27,.9) 100%)}
  .em .page-hero.gross .hero-bahn{width:100%;right:0;opacity:.35}
  .em .page-hero.gross .kennziffer{font-size:120px;bottom:auto;top:96px;right:16px;-webkit-text-stroke-color:rgba(255,255,255,.14)}
}

/* ---------- Signaturblock: dunkel, links Text, rechts das Prinzip ---------- */
.em .signatur{position:relative;background:var(--ink);color:var(--paper);overflow:hidden}
.em .signatur .overline{color:var(--volt)}
.em .signatur h2{color:#fff}
.em .signatur .lede{color:rgba(255,255,255,.7);margin-top:16px}
.em .signatur-grid{position:relative;z-index:1;display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px, 6vw, 96px);align-items:center}
.em .bahn-unten,.em .bahn-hinten{position:absolute;left:0;right:0;bottom:-10%;height:55%;opacity:.28;pointer-events:none}
.em .bahn-hinten{top:-10%;bottom:auto;height:60%;opacity:.16}
.em .signatur-grid > div:last-child.in .leiterbahn{}
.em .sig{position:relative;border-radius:var(--rl);padding:clamp(20px, 2.5vw, 32px);background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.em .kennwerte{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line-dark)}
.em .kennwerte div{display:grid;gap:3px}
.em .kennwerte dt{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.em .kennwerte dd{margin:0;font-size:14.5px;font-weight:600;color:#fff}
@media (max-width:900px){.em .signatur-grid{grid-template-columns:1fr}.em .kennwerte{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.em .kennwerte{grid-template-columns:1fr}}

/* Verteilung */
.em .schrank{display:grid;gap:10px;padding:18px;border-radius:16px;background:#ECEDE8;border:6px solid #D9DAD3;position:relative}
.em .sch-reihe{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}
.em .ls{display:grid;gap:5px;justify-items:center;padding:8px 2px 6px;border-radius:6px;background:#F7F7F3;border:1px solid #CFD0C8;color:var(--ink)}
.em .ls i{width:100%;height:18px;border-radius:3px;background:#B9BBB3;position:relative;transition:background .3s}
.em .ls i::after{content:"";position:absolute;right:3px;top:3px;width:5px;height:5px;border-radius:50%;background:#8a8c85}
.em .ls b{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:0;white-space:nowrap}
.em .ls.res{opacity:.45}
.em .in .ls:not(.res) i{animation:em-ls .3s ease forwards;animation-delay:calc(.6s + var(--i) * .07s)}
@keyframes em-ls{to{background:var(--ink)}}
.em .in .ls:not(.res) i::after{animation:em-led .3s ease forwards;animation-delay:calc(.6s + var(--i) * .07s)}
@keyframes em-led{to{background:var(--volt);box-shadow:0 0 6px var(--volt)}}
.em .sch-label{display:block;margin-top:4px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}

/* Szenen */
.em .szenen{display:grid;gap:10px}
.em .szene{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.em .szene b{display:block;font-size:15px;color:#fff}
.em .szene .mono{color:rgba(255,255,255,.5);font-size:11px}
.em .szene .wert{color:var(--volt);font-size:13px}
.em .toggle{width:46px;height:26px;border-radius:999px;background:rgba(255,255,255,.18);position:relative;display:block}
.em .toggle i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .5s var(--ease)}
.em .in .szene .toggle{animation:em-tg-bg 6s ease-in-out infinite;animation-delay:calc(var(--i) * 1.3s)}
.em .in .szene .toggle i{animation:em-tg 6s var(--ease) infinite;animation-delay:calc(var(--i) * 1.3s)}
@keyframes em-tg{0%,15%{transform:none}25%,80%{transform:translateX(20px)}90%,100%{transform:none}}
@keyframes em-tg-bg{0%,15%{background:rgba(255,255,255,.18)}25%,80%{background:var(--volt)}90%,100%{background:rgba(255,255,255,.18)}}

/* Lastmanagement */
.em .last-kopf{display:flex;justify-content:space-between;color:rgba(255,255,255,.55);font-size:11px;margin-bottom:14px}
.em .last-balken{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:end;height:180px;padding-top:14px;border-top:1px dashed rgba(105,197,49,.6);position:relative}
.em .last-balken::before{content:"22 kW";position:absolute;right:0;top:-9px;font-family:var(--mono);font-size:10px;color:var(--volt);background:var(--ink);padding:0 6px}
.em .lp{display:grid;gap:8px;justify-items:center;height:100%;grid-template-rows:1fr auto}
.em .lp .saeule{width:100%;height:100%;border-radius:8px 8px 4px 4px;background:rgba(255,255,255,.06);position:relative;overflow:hidden}
.em .lp .saeule i{position:absolute;left:0;right:0;bottom:0;height:100%;background:linear-gradient(180deg, var(--volt), var(--volt-deep));transform:scaleY(.3);transform-origin:bottom;border-radius:inherit}
.em .in .lp .saeule i{animation:em-last 7s ease-in-out infinite;animation-delay:calc(var(--i) * -1.75s)}
@keyframes em-last{0%{transform:scaleY(.3)}25%{transform:scaleY(.85)}50%{transform:scaleY(.45)}75%{transform:scaleY(.65)}100%{transform:scaleY(.3)}}
.em .lp .mono{color:rgba(255,255,255,.55);font-size:11px}
.em .last-label{display:block;margin-top:14px;font-size:10.5px;color:rgba(255,255,255,.5);letter-spacing:.06em}

/* Tagesverlauf */
.em .pv svg{width:100%;height:auto;display:block}
.em .pv-t{font-family:var(--mono);font-size:11px;fill:rgba(255,255,255,.5);letter-spacing:.06em}
.em .pv-t.hell{fill:var(--volt)}
.em .pv-kurve{stroke-dasharray:900;stroke-dashoffset:900}
.em .in .pv-kurve{animation:em-bahn 2s var(--ease) .3s forwards}
.em .pv-flaeche{opacity:0}
.em .in .pv-flaeche{animation:em-punkt 1s ease 1.2s forwards}
.em .pv-sonne{offset-path:path("M40,220 C120,215 160,60 300,50 C440,60 480,215 560,220");offset-distance:0%;filter:drop-shadow(0 0 6px rgba(105,197,49,.8))}
.em .in .pv-sonne{animation:em-sonne 9s ease-in-out infinite}
@keyframes em-sonne{0%{offset-distance:0%}100%{offset-distance:100%}}
.em .akku{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:14px;color:rgba(255,255,255,.55);font-size:11px}
.em .zelle{height:14px;border-radius:5px;border:1px solid rgba(255,255,255,.3);position:relative;overflow:hidden}
.em .zelle i{position:absolute;left:0;top:0;bottom:0;width:100%;background:var(--volt);transform:scaleX(.2);transform-origin:left}
.em .in .zelle i{animation:em-akku 9s ease-in-out infinite}
@keyframes em-akku{0%{transform:scaleX(.2)}55%{transform:scaleX(.95)}100%{transform:scaleX(.35)}}

/* Datenstrom */
.em .netz svg{width:100%;height:auto;display:block}
.em .netz .ader{fill:none;stroke:rgba(255,255,255,.22);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.em .netz .puls{fill:none;stroke:var(--volt);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:28 260;stroke-dashoffset:288;filter:drop-shadow(0 0 4px rgba(105,197,49,.7))}
.em .in .netz .puls{animation:em-puls 2.4s linear infinite}
.em .in .netz .puls:nth-of-type(6){animation-delay:.6s}.em .in .netz .puls:nth-of-type(7){animation-delay:1.2s}.em .in .netz .puls:nth-of-type(8){animation-delay:.3s}
@keyframes em-puls{to{stroke-dashoffset:0}}
.em .netz .knoten rect,.em .netz .knoten circle{fill:rgba(255,255,255,.06);stroke:rgba(255,255,255,.4);stroke-width:1.5}
.em .nz-t{font-family:var(--mono);font-size:11px;fill:rgba(255,255,255,.55);text-anchor:middle;letter-spacing:.06em}

/* ---------- Datenblatt-Zeilen ---------- */
.em .datenblatt{list-style:none;border-top:1px solid var(--line)}
.em .datenblatt li{display:grid;grid-template-columns:70px 4fr 7fr;gap:24px;align-items:start;padding:26px 12px;border-bottom:1px solid var(--line);border-radius:12px;transition:background .3s}
.em .datenblatt li:hover{background:#fff}
.em .datenblatt .nr{color:var(--volt-text);font-size:13px;padding-top:6px}
.em .datenblatt h3{font-size:20px}
.em .datenblatt p{font-size:15.5px;color:var(--ink-2);max-width:none}
@media (max-width:900px){.em .datenblatt li{grid-template-columns:48px 1fr}.em .datenblatt p{grid-column:2}}

/* Fuer wen: Nummern statt Kacheln-Einerlei */
.em .fuer-grid li{position:relative;padding-top:60px}
.em .fuer-grid li .mono{position:absolute;left:28px;top:22px;color:var(--volt-text);font-size:12px}
.em .fuer-grid li::after{content:"";position:absolute;right:24px;top:26px;width:34px;height:1px;background:var(--volt)}

/* ==========================================================================
   Mega-Menue unter "Leistungen" (nur ab 901 px, auf dem Telefon stehen die
   Fachbereiche im Vollbildmenue). Die Selektoren tragen ".nav ul" mit, weil
   die Regel fuer die Menuelinks (.em .nav ul a) sonst gewinnt.
   ========================================================================== */
.em .nav .bar{position:relative}
.em .nav .chev{width:10px;height:10px;margin-left:5px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.em .nav li.hat-mega:hover > a .chev,.em .nav li.hat-mega:focus-within > a .chev{transform:rotate(180deg)}
/* Der Eintrag fuellt die ganze Leistenhoehe, damit zwischen Link und Panel
   kein toter Streifen liegt. Beim Verlassen bleibt das Panel 0,4 s stehen
   und bleibt so lange anklickbar, die Maus kommt also gemuetlich hinunter. */
.em .nav li.hat-mega{height:64px;display:flex;align-items:center}
.em .nav ul .mega{position:absolute;left:0;right:0;top:100%;padding-top:12px;z-index:5;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .25s var(--ease) .4s, transform .3s var(--ease) .4s, visibility 0s .7s}
.em .nav li.hat-mega:hover .mega,.em .nav li.hat-mega:focus-within .mega,.em .nav li.hat-mega.zeigen .mega{opacity:1;visibility:visible;transform:none;transition:opacity .25s var(--ease), transform .35s var(--ease), visibility 0s}
.em .nav ul .mega-inner{border-radius:var(--rl);padding:22px;display:grid;grid-template-columns:7fr 5fr;gap:18px 26px;background:#1F1F1E;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 30px 60px -20px rgba(0,0,0,.7)}
.em .nav ul .mega-liste{display:grid;gap:2px;align-content:start}
.em .nav ul .mega-liste > .mono{color:var(--volt);margin:6px 0 10px 12px;font-size:11px}
.em .nav ul a.mega-item{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;padding:9px 12px;border-radius:12px;font-size:inherit;color:#fff}
.em .nav ul a.mega-item:hover{background:rgba(255,255,255,.07)}
.em .nav ul .mega-item .ico{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:rgba(105,197,49,.12);border:1px solid rgba(105,197,49,.28);color:var(--volt)}
.em .nav ul .mega-item .ico svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.em .nav ul .mega-item b{display:block;font-family:var(--display);font-size:16px;letter-spacing:-0.01em;line-height:1.2}
.em .nav ul .mega-item small{display:block;font-size:12.5px;line-height:1.35;color:rgba(255,255,255,.6);margin-top:3px}
.em .nav ul .mega-item i{font-style:normal;color:rgba(255,255,255,.4);transition:transform .3s var(--ease),color .3s}
.em .nav ul a.mega-item:hover i{transform:translateX(3px);color:var(--volt)}
.em .nav ul a.mega-karte{position:relative;display:block;padding:0;border-radius:18px;overflow:hidden;color:#fff;min-height:250px;background:var(--ink-soft)}
.em .nav ul a.mega-karte:hover{background:var(--ink-soft)}
.em .nav ul .mega-karte img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform 1.2s var(--ease)}
.em .nav ul a.mega-karte:hover img{transform:scale(1.04)}
.em .nav ul .mega-karte-text{position:absolute;left:0;right:0;bottom:0;padding:18px;display:grid;gap:6px;background:linear-gradient(180deg, rgba(28,28,27,0), rgba(28,28,27,.92))}
.em .nav ul .mega-karte-text .mono{color:var(--volt);font-size:11px}
.em .nav ul .mega-karte-text b{font-family:var(--display);font-size:15.5px;letter-spacing:-0.01em;line-height:1.25}
.em .nav ul .mega-karte-text .mehr{font-size:13.5px;color:rgba(255,255,255,.8)}
.em .nav ul .mega-fuss{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:16px;border-top:1px solid var(--line-dark);font-size:14px;color:rgba(255,255,255,.7)}
.em .nav ul .mega-fuss a:not(.btn){display:inline;padding:0;color:#fff;font-weight:600;font-size:14px}
.em .nav ul .mega-fuss a:not(.btn):hover{background:none;color:var(--volt)}
.em .nav ul .mega-fuss a.btn{display:inline-flex;padding:11px 18px;font-size:14px;border-radius:999px;color:var(--ink)}
.em .nav ul .mega-fuss a.btn:hover{background:var(--volt-deep);color:var(--ink)}
@media (max-width:900px){.em .nav ul .mega{display:none}.em .nav .chev{display:none}}

/* Signaturblock: Stichpunkte und Fusszeile auf Dunkel */
.em .signatur .punkte{margin-top:22px;color:rgba(255,255,255,.82);font-size:15.5px}
.em .signatur .svc-foot{margin-top:24px;border-top-color:var(--line-dark);color:rgba(255,255,255,.55)}
.em .signatur .svc-foot a{color:#fff}

/* ---------- Stellen: Karte kompakt, Details im Fenster ---------- */
.em .stelle .tag{margin-bottom:14px}
.em .stelle h2{font-size:clamp(24px, 2.6vw, 34px);max-width:none}
.em .stelle .lede{margin-top:12px;font-size:17px}
.em .stelle .meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13.5px;color:var(--steel);margin-top:14px}
.em .stelle .meta span{display:inline-flex;align-items:center;gap:7px}
.em .stelle .meta span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--volt)}
.em .stelle .stelle-auf{margin-top:22px}
.em .fenster{margin:auto;border:0;padding:0;background:transparent;max-width:min(920px, calc(100vw - 32px));width:100%;max-height:calc(100dvh - 32px);color:var(--ink)}
.em .fenster::backdrop{background:rgba(28,28,27,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.em .fenster-inner{position:relative;background:var(--paper);border-radius:var(--rl);padding:clamp(24px, 3vw, 40px);max-height:calc(100dvh - 32px);overflow-y:auto;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);font-family:var(--font)}
.em .fenster-zu{position:absolute;right:18px;top:18px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer}
.em .fenster-zu span{position:absolute;left:12px;top:19px;width:16px;height:2px;background:var(--ink);transform:rotate(45deg)}
.em .fenster-zu span:last-child{transform:rotate(-45deg)}
.em .fenster-kopf .mono{color:var(--volt-text);font-size:11px}
.em .fenster-kopf h2{font-size:clamp(22px, 2.4vw, 30px);margin:10px 0 10px;max-width:none;padding-right:48px}
.em .fenster-kopf .meta{display:flex;gap:18px;font-size:13.5px;color:var(--steel)}
.em .fenster-kopf .meta span{display:inline-flex;align-items:center;gap:7px}
.em .fenster-kopf .meta span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--volt)}
.em .reiter{margin-top:24px;display:grid;grid-template-columns:auto auto 1fr;grid-template-areas:"a b ." "inhalt inhalt inhalt";column-gap:6px}
.em .reiter > input{position:absolute;opacity:0;width:1px;height:1px}
.em .reiter > label{padding:10px 16px;border-radius:999px;border:1px solid var(--line);font-size:14px;font-weight:600;cursor:pointer;background:#fff;color:var(--ink-2)}
.em .reiter > input:checked + label{background:var(--ink);color:#fff;border-color:var(--ink)}
.em .reiter > input:focus-visible + label{outline:3px solid var(--volt);outline-offset:2px}
.em .reiter-a,.em .reiter-b{grid-area:inhalt;display:none;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.em .reiter > input:nth-of-type(1):checked ~ .reiter-a,.em .reiter > input:nth-of-type(2):checked ~ .reiter-b{display:block}
.em .reiter h3{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--volt-text);margin:22px 0 10px}
.em .reiter h3:first-child{margin-top:0}
.em .reiter p{font-size:15.5px;color:var(--ink-2)}
.em .reiter .punkte{font-size:15px}
.em .nummern{list-style:none;display:grid;gap:8px;font-size:15px;color:var(--ink-2)}
.em .nummern li{display:grid;grid-template-columns:34px 1fr;gap:8px}
.em .nummern .mono{color:var(--volt-text);font-size:12.5px;padding-top:2px}
.em .reiter-weiter{margin-top:26px}
.em .reiter-b .form{background:#fff;border-color:var(--line);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;border:0}
.em .reiter-b .form label{font-size:13.5px}
.em .reiter-b .actions{flex-direction:column;align-items:flex-start;gap:10px}
.em .reiter-b .actions small{color:var(--steel);font-size:12.5px}
@media (max-width:560px){.em .reiter{grid-template-columns:1fr;grid-template-areas:"a" "b" "inhalt";row-gap:6px}}

/* Referenzen: Datenblatt und Meisterleistungen wie im Projektfenster */
.em .ref-details{display:grid;grid-template-columns:5fr 7fr;gap:14px;margin-top:14px}
.em .ref-fakten{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.em .ref-details h3{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--steel);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.em .ref-fakten dl{display:grid;gap:10px;margin:0 0 22px}
.em .ref-fakten dl div{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:14.5px}
.em .ref-fakten dt{color:var(--steel)}
.em .ref-fakten dd{margin:0;font-weight:600;text-align:right}
.em .chips-mono{display:flex;flex-wrap:wrap;gap:8px}
.em .chips-mono span{font-family:var(--mono);font-size:12px;padding:6px 10px;border-radius:8px;background:var(--paper);border:1px solid var(--line)}
.em .ref-text{padding:24px;border-radius:20px;background:var(--paper);border:1px solid var(--line)}
.em .ref-text p{font-size:15.5px;color:var(--ink-2);margin-bottom:22px}
.em .ref-text .punkte{font-size:15px}
.em .ref-text .ref-link{margin:22px 0 0}
.em .ref-bilder .gal{grid-template-columns:repeat(4,1fr)}
.em .ref-bilder .gal .shot{aspect-ratio:1}
@media (max-width:900px){.em .ref-details{grid-template-columns:1fr}.em .ref-bilder .gal{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.em .ref-bilder .gal{grid-template-columns:1fr 1fr}}
.em .hinweis-kasten{margin:0 0 18px;padding:12px 14px;border-radius:12px;background:var(--volt-soft);border:1px solid rgba(105,197,49,.25);font-size:14px;color:var(--ink-2)}

/* ==========================================================================
   Leistungsseiten: Rhythmus statt durchgehend dunkel
   Kopf dunkel, Leistungsblock weiss (Grafik als dunkle Karte), Ablauf
   hellgrau mit weissen Karten, weitere Fachbereiche dunkel, Kontakt gruen.
   ========================================================================== */
.em .typ-leistung .signatur{background:#fff;color:var(--ink)}
.em .typ-leistung .signatur .overline{color:var(--volt-text)}
.em .typ-leistung .signatur h2{color:var(--ink)}
.em .typ-leistung .signatur .lede{color:var(--ink-2)}
.em .typ-leistung .signatur .punkte{color:var(--ink-2)}
.em .typ-leistung .signatur .svc-foot{border-top-color:var(--line);color:var(--steel)}
.em .typ-leistung .signatur .svc-foot a{color:var(--ink)}
.em .typ-leistung .signatur .bahn-unten{display:none}
.em .typ-leistung .sig{background:var(--ink);border-color:var(--ink);box-shadow:var(--shadow);color:var(--paper)}
.em .typ-leistung .sig .last-balken::before{background:var(--ink)}

.em .typ-leistung .process{background:var(--paper-2);color:var(--ink)}
.em .typ-leistung .process::before,.em .typ-leistung .process .bahn-hinten{display:none}
.em .typ-leistung .process h2,.em .typ-leistung .process h3{color:var(--ink)}
.em .typ-leistung .process .lede{color:var(--ink-2)}
.em .typ-leistung .process .overline{color:var(--volt-text)}
.em .typ-leistung .steps li{background:#fff;border-color:var(--line);box-shadow:none}
.em .typ-leistung .steps li:hover{background:#fff;border-color:rgba(28,28,27,.18);box-shadow:var(--shadow)}
.em .typ-leistung .steps .n{color:var(--volt-text);background:var(--volt-soft);border-color:rgba(105,197,49,.3)}
.em .typ-leistung .steps p{color:var(--ink-2)}
.em .typ-leistung .steps .dauer{color:var(--steel)}
.em .typ-leistung .faq{border-top-color:var(--line)}
.em .typ-leistung .faq > div > p{color:var(--ink-2)}
.em .typ-leistung .faq details{background:#fff;border-color:var(--line);box-shadow:none}
.em .typ-leistung .faq details[open]{background:#fff;border-color:rgba(105,197,49,.5)}
.em .typ-leistung .faq summary{color:var(--ink)}
.em .typ-leistung .faq details p{color:var(--ink-2)}

.em .typ-leistung .related{background:var(--ink);color:var(--paper)}
.em .typ-leistung .related h2{color:#fff}
.em .typ-leistung .related .overline{color:var(--volt)}
.em .typ-leistung .rel{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.em .typ-leistung .rel:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.em .typ-leistung .rel p{color:rgba(255,255,255,.66)}
.em .typ-leistung .rel .tag{background:rgba(105,197,49,.12);color:var(--volt);border-color:rgba(105,197,49,.28)}
.em .typ-leistung .cta{padding-top:clamp(80px, 9vw, 136px)}

/* ==========================================================================
   Bewegung nach Apple-Prinzipien (Skill apple-design)
   Federn statt Kurven: linear() naehert eine kritisch gedaempfte Feder
   (Response 0,4 s, kein Ueberschwingen) und eine leicht unterdaempfte fuer
   Bewegungen mit Schwung. Uebergaenge statt Keyframes, damit jede Bewegung
   jederzeit unterbrochen und umgekehrt werden kann. Rueckmeldung beim
   Druecken, nicht erst beim Loslassen. Gleiche Wege hinein und hinaus.
   ========================================================================== */
.em{
  --spring:linear(0, 0.19 7%, 0.44 15%, 0.64 23%, 0.79 31%, 0.89 41%, 0.95 53%, 0.985 70%, 1);
  --spring-bounce:linear(0, 0.36 12%, 0.72 24%, 0.95 36%, 1.045 48%, 1.02 62%, 0.995 78%, 1);
  font-optical-sizing:auto;
}
/* Knoepfe: sofortige Rueckmeldung beim Druecken, federnd zurueck */
.em .btn{transition:transform .5s var(--spring), background .2s, color .2s, border-color .2s, box-shadow .5s var(--spring)}
.em .btn:active{transform:scale(.97);transition:transform 90ms ease-out}
.em .svc,.em .block,.em .rel,.em .ls-karte,.em .stelle,.em .steps li,.em .karriere-plakette{transition:transform .55s var(--spring), box-shadow .55s var(--spring), border-color .3s, background .3s}
.em .shot img{transition:transform 1.1s var(--spring)}
.em .reveal{transition:opacity .7s var(--spring), transform .8s var(--spring)}

/* Mega-Menue: entspringt dem Ausloeser, gleicher Weg hinein und hinaus */
.em .nav ul .mega{transform-origin:120px top}
.em .nav ul .mega{transform:translateY(-8px) scale(.985);transition:opacity .28s var(--spring) .4s, transform .45s var(--spring) .4s, visibility 0s .7s}
.em .nav li.hat-mega:hover .mega,.em .nav li.hat-mega:focus-within .mega,.em .nav li.hat-mega.zeigen .mega{transition:opacity .28s var(--spring), transform .45s var(--spring), visibility 0s}

/* Handy-Menue: Uebergang statt Keyframe, damit Auf und Zu unterbrechbar sind */
@media (max-width:900px){
  .em .nav.open li{animation:none;opacity:1;transform:none}
  .em .nav ul li{opacity:0;transform:translateY(10px);transition:opacity .4s var(--spring), transform .5s var(--spring)}
  .em .nav.open ul li{opacity:1;transform:none;transition-delay:calc(var(--i, 0) * 35ms)}
}

/* Stellenfenster: erscheint wie ein Material (Unschaerfe und Groesse zusammen),
   auf dem Telefon als Sheet von unten, das man herunterziehen kann. */
.em .fenster{opacity:0;transform:translateY(14px) scale(.98);filter:blur(6px);
  transition:opacity .3s var(--spring), transform .5s var(--spring), filter .4s var(--spring), overlay .5s allow-discrete, display .5s allow-discrete}
.em .fenster[open]{opacity:1;transform:none;filter:none}
@starting-style{.em .fenster[open]{opacity:0;transform:translateY(14px) scale(.98);filter:blur(6px)}}
.em .fenster::backdrop{opacity:0;transition:opacity .35s var(--spring), overlay .35s allow-discrete, display .35s allow-discrete}
.em .fenster[open]::backdrop{opacity:1}
@starting-style{.em .fenster[open]::backdrop{opacity:1}}
.em .griff{display:none}
@media (max-width:900px){
  .em .fenster{margin:auto 0 0;max-width:100%;width:100%;max-height:calc(100dvh - 24px);transform:translateY(100%);filter:none;opacity:1}
  .em .fenster[open]{transform:none}
  @starting-style{.em .fenster[open]{transform:translateY(100%);opacity:1;filter:none}}
  .em .fenster-inner{border-radius:24px 24px 0 0;max-height:calc(100dvh - 24px);padding-top:14px;touch-action:pan-y;will-change:transform}
  .em .griff{display:block;padding:4px 0 14px;touch-action:none;cursor:grab}
  .em .griff i{display:block;width:40px;height:5px;border-radius:999px;background:rgba(28,28,27,.22);margin:0 auto}
  .em .fenster.ziehen .fenster-inner{transition:none}
}

/* Materialien: Rueckfall ohne Transparenz oder mit mehr Kontrast */
@media (prefers-reduced-transparency:reduce){
  .em .nav .bar,.em .nav.open .wrap,.em .nav ul .mega-inner{background:#1F1F1E;-webkit-backdrop-filter:none;backdrop-filter:none}
  .em .glass-dark,.em .shot .tag{background:#1F1F1E;-webkit-backdrop-filter:none;backdrop-filter:none}
  .em .kompetenzen ul,.em .form{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media (prefers-contrast:more){
  .em .nav .bar{background:#1F1F1E;border-color:rgba(255,255,255,.4)}
  .em .btn.glass{background:#1F1F1E;border-color:#fff}
}

/* Reduzierte Bewegung: Ueberblenden statt Schieben, keine Endlosschleifen */
@media (prefers-reduced-motion:reduce){
  .em .btn:hover,.em .svc:hover,.em .block:hover,.em .rel:hover,.em .ls-karte:hover,.em .stelle:hover,.em .steps li:hover{transform:none}
  .em .shot img,.em .proj:hover .shot img,.em .ls-karte:hover .shot img,.em .roster figure:hover .shot img{transform:none !important}
  .em .nav ul .mega{transform:none;transition:opacity .2s}
  .em .nav ul li{transform:none;transition:opacity .2s}
  .em .fenster,.em .fenster[open]{transform:none !important;filter:none;transition:opacity .2s, overlay .2s allow-discrete, display .2s allow-discrete}
  .em .in .szene .toggle,.em .in .szene .toggle i,.em .in .lp .saeule i,.em .in .pv-sonne,.em .in .zelle i,.em .in .netz .puls,.em .in .ls:not(.res) i,.em .in .ls:not(.res) i::after{animation:none}
  .em .in .lp .saeule i{transform:scaleY(.6)}
  .em .in .zelle i{transform:scaleX(.7)}
  .em .in .ls:not(.res) i{background:var(--ink)}
  .em .in .ls:not(.res) i::after{background:var(--volt)}
}

/* Rueckmeldung im Formular sofort beim Ausfuellen, nicht erst beim Absenden.
   :user-invalid greift erst, nachdem der Besucher das Feld verlassen hat,
   also kein rotes Feld beim ersten Tippen. */
.em .form input:user-invalid,.em .form select:user-invalid,.em .form textarea:user-invalid,
.em .form [data-beruehrt]:invalid{border-color:#C8412B;box-shadow:0 0 0 3px rgba(200,65,43,.14)}
.em .form input:user-valid:not([type=checkbox]),.em .form select:user-valid,.em .form textarea:user-valid,
.em .form [data-beruehrt]:valid:not([type=checkbox]){border-color:var(--volt-text)}
.em .form label:has(> :user-invalid)::after,.em .form label:has(> [data-beruehrt]:invalid)::after{content:"Bitte prüfen Sie diese Angabe.";font-size:12.5px;color:#C8412B;font-weight:400}
.em .form .check:has(> :user-invalid) span,.em .form .check:has(> [data-beruehrt]:invalid) span{color:#C8412B}

/* FAQ oeffnen sich federnd statt zu springen. Browser ohne ::details-content
   zeigen den Inhalt wie bisher sofort. */
.em{interpolate-size:allow-keywords}
.em .faq details::details-content{block-size:0;overflow:hidden;transition:block-size .55s var(--spring), content-visibility .55s allow-discrete}
.em .faq details[open]::details-content{block-size:auto}
@media (prefers-reduced-motion:reduce){.em .faq details::details-content{transition:none}}

/* ==========================================================================
   Einseiten-Struktur: Rhythmus und Anker
   ========================================================================== */
.em section[id],.em .kompetenzen{scroll-margin-top:100px}
.em .typ-start .ueber{background:#fff}
.em .typ-start #leistungen{background:var(--paper)}
.em .typ-start .team{background:var(--paper-2)}
.em .typ-start .karriere{background:#fff;padding:clamp(80px, 9vw, 136px) 0}
.em .typ-start .refs{background:var(--paper)}
.em .typ-start .ueber-media{display:grid;gap:14px}
.em .typ-start .ueber-media .flotte{aspect-ratio:4/3}
.em .typ-start .ref .btn{align-self:flex-start;margin-top:4px;padding:12px 20px;font-size:14.5px}
.em .fenster-projekt .ref-bilder{margin-top:22px}
.em .fenster-projekt .ref-details{margin-top:14px}
.em .fenster-projekt .ref-bilder .haupt{aspect-ratio:16/9}
.em .fenster-projekt .gal{grid-template-columns:repeat(4,1fr)}
.em .fenster-projekt .gal .shot{aspect-ratio:1}
@media (max-width:900px){.em .fenster-projekt .gal{grid-template-columns:repeat(3,1fr)}.em .typ-start .ueber-media{grid-template-columns:1fr}}

/* ---------- Kontakt: linker Block als weisser Kasten ----------
   Die kleinen Zeilen standen als Dunkelgruen auf Gruen und waren kaum zu
   lesen. Jetzt traegt der Text einen weissen Kasten, wie das Formular
   rechts: zwei helle Flaechen auf dem gruenen Grund. */
.em .contact .kontakt-karte{
  padding:clamp(26px, 3vw, 40px);border-radius:var(--rl);
  background:#fff;color:var(--ink);
  box-shadow:inset 0 1px 0 #fff, var(--shadow);
  align-self:start;
}
.em .contact .kontakt-karte .overline{color:var(--volt-text)}
.em .contact .kontakt-karte .overline::before{background:var(--volt);animation:em-breathe 2.6s ease-in-out infinite}
.em .contact .kontakt-karte h2{color:var(--ink);margin-top:16px}
.em .contact .kontakt-karte .lede{color:var(--ink-2)}
.em .contact .kontakt-karte .contact-info b{color:var(--volt-text)}
.em .contact .kontakt-karte .contact-info a{color:var(--ink)}
.em .contact .kontakt-karte .contact-info div{color:var(--ink-2)}
.em .contact .kontakt-karte .contact-info small{color:var(--steel)}

/* ==========================================================================
   Seiten fuer die oertliche Suche (typ-lokal)
   Gleicher Rhythmus wie die Startseite: hell, Papier, hellgrau, dunkel, gruen.
   ========================================================================== */
/* Die Brotkrumen stehen im Kopf-Abschnitt selbst, nicht davor: zwei dunkle
   Abschnitte uebereinander ergaben eine sichtbare Kante, weil der gruene
   Schimmer des Kopfes an seiner Oberkante abgeschnitten begann. */
.em .brotkrumen{position:relative;z-index:2;color:rgba(255,255,255,.55);font-size:13px;margin:0 0 clamp(28px, 4vh, 48px)}
.em .page-hero .brotkrumen .wrap{display:block}
.em .brotkrumen a{color:rgba(255,255,255,.8);text-decoration:none;border-bottom:1px solid rgba(105,197,49,.5);padding-bottom:1px}
.em .brotkrumen a:hover{color:#fff}
.em .brotkrumen span{margin:0 6px}
.em .brotkrumen [aria-current]{color:rgba(255,255,255,.55);margin:0}
.em .typ-lokal .page-hero{margin-top:-92px;padding-top:110px;padding-bottom:clamp(130px, 15vh, 180px)}
/* Bild oben buendig mit der Kennzeile statt mittig neben dem Text schwebend */
.em .typ-lokal .page-hero .wrap{grid-template-columns:7fr 5fr;align-items:start}
.em .typ-lokal .page-hero h1{font-size:clamp(30px, 3.4vw, 50px);max-width:26ch}
.em .typ-lokal .page-hero .lede{margin-bottom:28px}
.em .typ-lokal .page-hero-bild{padding-top:4px}
.em .typ-lokal .intro{background:#fff}
.em .typ-lokal .leistungsbloecke{background:var(--paper)}
.em .typ-lokal .fuer-wen{background:#fff}
.em .typ-lokal .gebiet{background:var(--paper-2)}
.em .typ-lokal .related{background:#fff}

/* Einsatzgebiet */
.em .gebiet-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px, 4vw, 56px)}
.em .gebiet-grid h3{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--volt-text);margin-bottom:14px}
.em .orte{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.em .orte li{font-size:14.5px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink-2)}
@media (max-width:900px){.em .gebiet-grid{grid-template-columns:1fr}}

/* Verweise auf die anderen beiden Seiten */
.em .related-fuss{margin-top:24px}
.em .typ-lokal .rel p{font-size:14px}
.em .nav ul .mega-orte{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:16px;border-top:1px solid var(--line-dark)}
.em .nav ul .mega-orte .mono{color:var(--volt);font-size:11px;margin-right:4px}
.em .nav ul a.mega-orte-link,.em .nav ul .mega-orte a{display:inline-block;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-size:13.5px;color:rgba(255,255,255,.8)}
.em .nav ul .mega-orte a:hover{background:rgba(255,255,255,.12);color:#fff}

/* ==========================================================================
   Nachgemessen am 04.10.2026 (node _bau/pruefe_design.js)
   ========================================================================== */
/* Die Zeile mit dem Urheberrecht lag bei 4,44:1 und damit knapp unter der
   Schwelle von 4,5:1. */
.em .site-footer .legal{color:rgba(255,255,255,.56)}

/* Tippflaechen: Auf dem Telefon waren Logo, Fusszeilenlinks und Brotkrumen
   nur 16 bis 34 px hoch. Fuer den Finger sind 36 px das Mindestmass, ohne
   dass die Zeilen optisch auseinanderfallen. */
@media (pointer:coarse), (max-width:900px){
  .em .logo{min-height:44px}
  .em .site-footer ul a,.em .site-footer .legal a{display:inline-flex;align-items:center;min-height:38px}
  .em .site-footer ul{gap:0}
  .em .brotkrumen{padding-bottom:4px}
  .em .brotkrumen a,.em .brotkrumen [aria-current]{display:inline-flex;align-items:center;min-height:36px}
  .em .textlink{min-height:36px;align-items:center}
  .em .form .check{min-height:36px;align-items:center}
}
/* Tippflaechen in Karten, Kontaktdaten und Rechtstexten. Gemessen waren sie
   17 bis 30 px hoch, fuer den Finger zu wenig. Inline-Links im Fliesstext
   bekommen senkrechtes Innenabstandspolster, das vergroessert die Flaeche,
   ohne den Zeilenumbruch zu veraendern. */
@media (pointer:coarse), (max-width:900px){
  .em .svc-foot a,.em .contact-info a{display:inline-flex;align-items:center;min-height:36px}
  .em .rechts-text a[href^="tel"],.em .rechts-text a[href^="mailto"]{display:inline-block;padding:9px 0}
  .em .ref-link a,.em .mehr{display:inline-flex;align-items:center;min-height:36px}
  .em .kompetenzen li a{min-height:36px}
}

/* ---------- Kontakt: Text und Formular in einem gemeinsamen Kasten ----------
   Vorher standen links und rechts zwei getrennte Kaesten auf dem Gruen.
   Jetzt ist es eine Flaeche mit zwei Zonen: links weiss, rechts der
   Papierton, damit die weissen Eingabefelder sichtbar bleiben. */
.em .contact .kontakt-box{
  display:grid;grid-template-columns:5fr 7fr;
  background:#fff;border-radius:var(--rl);overflow:hidden;
  box-shadow:inset 0 1px 0 #fff, var(--shadow);
}
.em .contact .kontakt-karte{
  background:none;box-shadow:none;border-radius:0;align-self:stretch;
  padding:clamp(28px, 3.4vw, 48px);
}
.em .contact .form{
  background:var(--paper);border:0;border-left:1px solid var(--line);
  border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;
  padding:clamp(28px, 3.4vw, 48px);align-content:start;
}
.em .contact .form input,.em .contact .form select,.em .contact .form textarea{background:#fff}
.em .contact .form .pills span{background:#fff}
@media (max-width:900px){
  .em .contact .kontakt-box{grid-template-columns:1fr}
  .em .contact .form{border-left:0;border-top:1px solid var(--line)}
}

/* ==========================================================================
   Unterseiten: Bildstrecke, Prinzip-Block, Leistungskarten, Referenz
   ========================================================================== */
.em .typ-lokal .strecke{background:var(--paper);padding-top:0;padding-bottom:clamp(40px, 5vw, 72px)}
.em .strecke-grid{display:grid;grid-template-columns:3fr 2fr;grid-template-rows:1fr 1fr;gap:14px;margin-top:calc(-1 * clamp(40px, 5vw, 72px));position:relative;z-index:2}
.em .strecke-grid .shot:first-child{grid-row:1 / span 2;aspect-ratio:auto;min-height:420px}
.em .strecke-grid .shot{aspect-ratio:16/10}
@media (max-width:900px){
  .em .strecke-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;margin-top:-24px}
  .em .strecke-grid .shot:first-child{grid-column:1 / -1;grid-row:auto;aspect-ratio:16/10;min-height:0}
}

.em .typ-lokal .intro{background:#fff;padding-top:clamp(56px, 7vw, 100px)}
.em .typ-lokal .signatur{background:var(--ink);color:var(--paper)}
.em .typ-lokal .signatur .overline{color:var(--volt)}
.em .typ-lokal .signatur h2{color:#fff}
.em .typ-lokal .signatur .lede{color:rgba(255,255,255,.72)}
.em .typ-lokal .signatur .punkte{margin-top:22px;color:rgba(255,255,255,.82)}
.em .typ-lokal .signatur .bahn-unten{opacity:.22}
.em .inhaber-portrait{aspect-ratio:4/5;max-width:440px;margin-left:auto}
.em .inhaber-portrait .tag{top:auto;bottom:14px;left:14px;padding:10px 14px;border-radius:14px;line-height:1.35;font-size:13px}
.em .inhaber-portrait .tag b{display:block;font-size:15px;font-family:var(--display)}
@media (max-width:900px){.em .inhaber-portrait{margin-left:0;max-width:none}}

.em .typ-lokal .leistungsbloecke{background:var(--paper)}
.em .lk-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.em .lk{position:relative;padding:28px 28px 28px 72px;border-radius:20px;background:#fff;border:1px solid var(--line);transition:transform .55s var(--spring), box-shadow .55s var(--spring), border-color .3s}
.em .lk:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(28,28,27,.18)}
.em .lk .mono{position:absolute;left:28px;top:31px;color:var(--volt-text);font-size:12.5px}
.em .lk h3{font-size:19px;margin-bottom:8px}
.em .lk p{font-size:15px;color:var(--ink-2);max-width:none}
@media (max-width:900px){.em .lk-grid{grid-template-columns:1fr}}

.em .typ-lokal .referenz-block{background:#fff}
.em .rb-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px, 4vw, 56px);align-items:center}
.em .rb-bilder{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:12px}
.em .rb-bilder .shot:first-child{grid-row:1 / span 2;aspect-ratio:auto}
.em .rb-bilder .shot{aspect-ratio:4/5}
.em .rb-text .meta{display:flex;flex-wrap:wrap;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--steel);margin-bottom:16px}
.em .rb-text .meta span + span::before{content:"•";margin-right:10px;color:var(--volt)}
.em .rb-text .lede{margin-bottom:18px}
.em .rb-text .chips-mono{margin-bottom:26px}
@media (max-width:900px){
  .em .rb-grid{grid-template-columns:1fr}
  .em .rb-bilder .shot:first-child{aspect-ratio:16/10}
}
.em .typ-lokal .related{background:var(--paper)}

/* ==========================================================================
   Ortsseiten: Vergleichstabelle, Quellen und Verantwortlicher (GEO, 06.10.2026)
   ========================================================================== */
.em .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.em .typ-lokal .vergleich{background:var(--paper-2)}
/* Breite Tabellen rollen in ihrem Kasten, nie die ganze Seite */
.em .tabelle{overflow-x:auto;border-radius:var(--rl);border:1px solid var(--line);background:#fff;-webkit-overflow-scrolling:touch}
.em .tabelle table{width:100%;min-width:600px;border-collapse:collapse;font-size:15px}
.em .tabelle th,.em .tabelle td{padding:16px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);line-height:1.45}
.em .tabelle thead th{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--volt-text);font-weight:500;background:var(--paper)}
.em .tabelle tbody th{font-weight:600;color:var(--ink);width:26%}
.em .tabelle td{color:var(--ink-2)}
.em .tabelle tbody tr:last-child th,.em .tabelle tbody tr:last-child td{border-bottom:0}

.em .typ-lokal .quellen{background:var(--paper-2)}
.em .quellen-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px, 4vw, 56px);align-items:start}
.em .quellen h3{font-size:clamp(22px, 2.2vw, 30px);margin:14px 0 18px}
.em .belege{list-style:none;display:grid;gap:10px}
.em .belege a{display:inline-flex;align-items:center;gap:8px;min-height:36px;text-decoration:none;font-weight:600;color:var(--ink);border-bottom:2px solid var(--volt);padding-bottom:2px}
.em .belege a:hover{color:var(--volt-text)}
.em .belege i{font-style:normal;color:var(--volt-text)}
.em .autor{padding:24px 26px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.em .autor p{margin-top:12px;font-size:15.5px;color:var(--ink-2);line-height:1.5}
.em .autor b{color:var(--ink);font-family:var(--display);font-size:17px}
.em .autor small{display:block;margin-top:14px;color:var(--steel);font-size:13px}
.em .autor small a{display:inline-flex;align-items:center;min-height:36px;color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1px solid var(--volt)}
@media (max-width:900px){.em .quellen-grid{grid-template-columns:1fr}}

/* Ortsseiten auf dem Telefon: Die 7:5-Regel fuer den Kopf gilt nur breit,
   sonst quetscht sie das Bild neben den Text. Unten weniger Polster, der
   Ueberlapp der Bildstrecke ist dort kleiner. */
@media (max-width:900px){
  .em .typ-lokal .page-hero .wrap{grid-template-columns:1fr}
  .em .typ-lokal .page-hero{padding-bottom:84px}
  .em .typ-lokal .page-hero h1{font-size:clamp(28px, 7.4vw, 36px)}
  .em .typ-lokal .page-hero-bild{padding-top:0}
}

/* Fragen in Themenbloecken nebeneinander statt als Stapel (06.10.2026) */
.em .faq.faq-breit{display:block}
.em .faq-kopf{display:grid;grid-template-columns:5fr 7fr;gap:24px;align-items:end;margin-bottom:clamp(28px, 3vw, 40px)}
.em .faq-kopf h3{margin:0}
.em .faq-gruppen{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}
.em .faq-gruppe h4.mono{color:var(--volt);font-weight:500;margin:0 0 12px 4px}
.em .faq-gruppe .faq-list{gap:8px}
.em .faq-gruppe summary{font-size:15px;padding:16px 46px 16px 18px}
.em .faq-gruppe summary::after{right:18px}
.em .faq-gruppe details p{padding:0 18px 18px;font-size:14.5px}
@media (max-width:1100px){.em .faq-gruppen{grid-template-columns:1fr}.em .faq-kopf{grid-template-columns:1fr}}

/* Lange Einzelwoerter in Ueberschriften ("Eigentuemergemeinschaften") duerfen
   auf schmalen Bildschirmen getrennt werden, sonst sprengen sie die Seite.
   Gemessen am 06.10.2026: 437 px bei 390 px Breite. */
@media (max-width:600px){
  .em h1,.em h2,.em h3{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
}

/* Markenlogos wie auf der alten Seite (07.10.2026): Logoreihe statt Textknoepfe,
   am Ende des Karriere-Blocks. Leicht zurueckgenommen, beim Zeigen volle Farbe. */
.em .marken ul{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(16px, 3vw, 44px);align-items:center}
.em .marken li a{display:flex;align-items:center;justify-content:center;min-height:56px;padding:6px 4px;border:0;background:none;border-radius:10px;opacity:.82;transition:opacity .3s var(--spring), transform .45s var(--spring)}
.em .marken li a:hover{opacity:1;transform:translateY(-2px);border:0;color:inherit}
.em .marken .marke-svg{display:block;width:100%;max-width:150px;height:36px}
@media (max-width:900px){.em .marken ul{grid-template-columns:repeat(3,1fr)}}
@media (max-width:520px){.em .marken ul{grid-template-columns:repeat(2,1fr)}.em .marken .marke-svg{height:30px}}

/* Hero der Startseite rechts heller (07.10.2026): Der Verlauf laeuft nach
   rechts fast ganz aus, das Video ist weniger abgedunkelt. Links bleibt es
   dunkel, damit Ueberschrift und Text lesbar bleiben. */
.em .hero-video .hero-medium video,.em .hero-video .hero-standbild{filter:saturate(.9) brightness(.88)}
.em .hero-video .hero-medium iframe{filter:saturate(.95) brightness(.92)}
.em .hero-video .hero-medium::after{
  background:linear-gradient(90deg, rgba(28,28,27,.94) 0%, rgba(28,28,27,.8) 32%, rgba(28,28,27,.32) 56%, rgba(28,28,27,.06) 100%),
             linear-gradient(180deg, rgba(28,28,27,.45) 0%, rgba(28,28,27,0) 24%, rgba(28,28,27,0) 70%, rgba(28,28,27,.7) 100%)}
@media (max-width:900px){
  .em .hero-video .hero-medium::after{background:linear-gradient(180deg, rgba(28,28,27,.88) 0%, rgba(28,28,27,.72) 55%, rgba(28,28,27,.6) 100%)}
}

/* ==========================================================================
   Kontaktseite minimalistisch (07.10.2026): kein Bild, eine helle Flaeche,
   alles bis zum Absenden auf einem Bildschirm. Das Formular rueckt dafuer
   zusammen: Bereich und Leistungsbereich in einer Zeile, Name, E-Mail und
   Telefon in einer Zeile.
   ========================================================================== */
.em .kontakt-min{background:var(--paper);min-height:calc(100svh - 92px);display:flex;align-items:center;padding:clamp(20px, 4vh, 48px) 0}
.em .kontakt-min .km-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px, 5vw, 80px);align-items:center;width:100%}
.em .kontakt-min h1{font-size:clamp(30px, 3.2vw, 46px);max-width:15ch;margin-top:14px}
.em .kontakt-min .lede{margin-top:14px;max-width:42ch;font-size:clamp(16px, 1.2vw, 18px)}
.em .km-daten{margin:clamp(20px, 3vh, 32px) 0 0;display:grid;gap:14px;padding-top:clamp(16px, 2.5vh, 24px);border-top:1px solid var(--line)}
.em .km-daten dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--volt-text);margin-bottom:2px}
.em .km-daten dd{margin:0;font-size:15px;color:var(--ink-2);line-height:1.45}
.em .km-daten a{display:inline-flex;align-items:center;min-height:36px;font-family:var(--display);font-weight:600;font-size:18px;color:var(--ink);text-decoration:none}
.em .km-daten a:hover{color:var(--volt-text)}
.em .km-daten small{display:block;font-size:13px;color:var(--steel)}

.em .kontakt-min .form{background:#fff;border:1px solid var(--line);border-radius:var(--rl);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;
  padding:clamp(20px, 2.4vw, 32px);grid-template-columns:repeat(6,1fr);gap:12px 14px}
.em .kontakt-min .form > *{grid-column:span 6}
.em .kontakt-min .form .pills{grid-column:span 2}
.em .kontakt-min .form > label:has(select){grid-column:span 4}
.em .kontakt-min .form > label:has(input[name=name]),
.em .kontakt-min .form > label:has(input[name=email]),
.em .kontakt-min .form > label:has(input[name=telefon]){grid-column:span 2}
.em .kontakt-min .form label{font-size:13.5px;gap:5px}
.em .kontakt-min .form .pills legend{font-size:13.5px;margin-bottom:5px}
.em .kontakt-min .form .pills span{padding:9px 14px;font-size:14px}
.em .kontakt-min .form input,.em .kontakt-min .form select{padding:11px 12px;font-size:15px}
.em .kontakt-min .form textarea{min-height:76px;padding:11px 12px;font-size:15px}
.em .kontakt-min .form .check{font-size:12.5px}
@media (max-width:900px){
  .em .kontakt-min{min-height:0;padding:32px 0 56px}
  .em .kontakt-min .km-grid{grid-template-columns:1fr}
}
@media (max-width:620px){
  .em .kontakt-min .form .pills,.em .kontakt-min .form > label:has(select),
  .em .kontakt-min .form > label:has(input[name=name]),
  .em .kontakt-min .form > label:has(input[name=email]),
  .em .kontakt-min .form > label:has(input[name=telefon]){grid-column:span 6}
}

/* Kontaktseite eine Stufe dunkler (07.10.2026, "nicht ganz so hell").
   Auf diesem Grund reicht das Steel-Grau nicht mehr (4,43:1), die kleinen
   Zeilen bekommen deshalb einen dunkleren Ton. */
.em .kontakt-min{background:#DFE0D8}
.em .kontakt-min .km-daten{border-top-color:rgba(28,28,27,.14)}
.em .kontakt-min .km-daten small,.em .kontakt-min .km-daten dd{color:#474C52}
.em .kontakt-min .form{border-color:rgba(28,28,27,.08);box-shadow:0 18px 40px -24px rgba(28,28,27,.25)}
/* Die Flaeche beginnt hinter der schwebenden Leiste, sonst bleibt dort ein
   Streifen im helleren Seitenton stehen. */
.em .kontakt-min{margin-top:-92px;padding-top:calc(92px + clamp(20px, 4vh, 48px));min-height:100svh}
@media (max-width:900px){.em .kontakt-min{padding-top:calc(92px + 32px);min-height:0}}

/* Bewerbungsfenster (07.10.2026): Das Formular lag als weisser Kasten ohne
   Innenabstand auf dem Papiergrund des Fensters, darueber eine gruene Box.
   Jetzt: kein eigener Kastengrund, die Felder sind weiss auf Papier wie im
   Rest der Seite, der Hinweis ist eine ruhige Zeile mit gruener Kante. */
.em .reiter-b .form{background:none}
.em .hinweis-kasten{background:#fff;border:1px solid var(--line);border-left:3px solid var(--volt);border-radius:10px;color:var(--ink-2)}
.em .reiter-b .form input,.em .reiter-b .form select,.em .reiter-b .form textarea{background:#fff}

/* Kontaktseite dunkel (07.10.2026): Das Grau wirkte weder hell noch dunkel.
   Jetzt wie der Start: dunkler Grund mit gruenem Schimmer, heller Kasten fuer
   das Formular. Bereich und Leistungsbereich je halbe Breite, sonst brachen
   die beiden Knoepfe "Privat" und "Gewerblich" untereinander um. */
.em .kontakt-min{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.em .kontakt-min::before{content:"";position:absolute;left:-10%;top:-10%;width:55%;height:80%;
  background:radial-gradient(closest-side, rgba(105,197,49,.12), transparent);pointer-events:none}
.em .kontakt-min .km-grid{position:relative}
.em .kontakt-min .overline{color:var(--volt)}
.em .kontakt-min h1{color:#fff}
.em .kontakt-min .lede{color:rgba(255,255,255,.72)}
.em .kontakt-min .km-daten{border-top-color:var(--line-dark)}
.em .kontakt-min .km-daten dt{color:var(--volt)}
.em .kontakt-min .km-daten a{color:#fff}
.em .kontakt-min .km-daten a:hover{color:var(--volt)}
.em .kontakt-min .km-daten small,.em .kontakt-min .km-daten dd{color:rgba(255,255,255,.66)}
.em .kontakt-min .form{border:0;box-shadow:inset 0 1px 0 #fff, 0 30px 60px -30px rgba(0,0,0,.6)}
.em .kontakt-min .form input,.em .kontakt-min .form select,.em .kontakt-min .form textarea{background:var(--paper)}
.em .kontakt-min .form .pills span{background:var(--paper)}
.em .kontakt-min .form .pills{grid-column:span 3}
.em .kontakt-min .form > label:has(select){grid-column:span 3}
.em .kontakt-min .form .pills{flex-wrap:nowrap}
/* Der Kasten ist hell: Schrift darin dunkel, nicht vom dunklen Grund erben */
.em .kontakt-min .form{color:var(--ink)}
.em .kontakt-min .form .check{color:var(--ink-2)}

/* Markenlogos als Hintergrund (Bilddaten haengt bauen.py an) */
.em .marken li a.marke{display:block;width:100%;max-width:150px;height:36px;margin:0 auto;background:center/contain no-repeat;min-height:0;padding:0}
@media (max-width:520px){.em .marken li a.marke{height:40px;background-size:auto 28px}}

/* Kopfleiste dunkler (07.10.2026) */
.em .nav .bar{background:rgba(22,22,21,.9)}

/* ==========================================================================
   Telefon (07.10.2026): keine Wortumbrueche, Kernkompetenzen kompakt,
   Aufklapp-Menue linksbuendig
   ========================================================================== */
/* Keine Silbentrennung; Bindestrich-Woerter haelt bauen.py mit .nw zusammen */
.em,.em h1,.em h2,.em h3,.em h4,.em p,.em li{hyphens:manual;-webkit-hyphens:manual;overflow-wrap:normal;word-break:normal}
.em .nw{white-space:nowrap}
@media (max-width:600px){
  .em h1{font-size:clamp(28px, 8.4vw, 36px)}
  .em h2{font-size:clamp(25px, 7.4vw, 32px)}
  .em .stelle h2,.em .fenster-kopf h2{font-size:clamp(20px, 5.8vw, 24px)}
  .em .overline{letter-spacing:.06em}
}

/* Kernkompetenzen: auf dem Telefon kleine Knoepfe statt fuenf Zeilen */
@media (max-width:900px){
  .em .kompetenzen{margin-top:-28px}
  .em .kompetenzen ul{display:flex;flex-wrap:wrap;gap:8px;padding:16px;border-radius:var(--rl)}
  .em .kompetenzen li,.em .kompetenzen li + li,.em .kompetenzen li:nth-child(odd):not(.label),.em .kompetenzen li:nth-child(n+4){border:0;padding:0}
  .em .kompetenzen li.label{flex-basis:100%;margin-bottom:2px;border:0}
  .em .kompetenzen li.label{display:block;line-height:1.5}
  .em .kompetenzen li a{min-height:36px;padding:0 12px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-size:13.5px}
  .em .kompetenzen li a::before{display:none}
}

/* Aufklapp-Menue: linksbuendig, durchgehende Linien, Leistungen als Knoepfe */
@media (max-width:900px){
  .em .nav.open ul{align-items:stretch;text-align:left}
  .em .nav.open ul > li > a{display:flex;align-items:center;justify-content:space-between;width:100%}
  .em .nav.open ul > li:not(.sub):not(.sub-gruppe):not(.aktion):not(.klein) > a::after{content:"→";font-family:var(--font);font-size:18px;color:rgba(255,255,255,.35)}
  .em .nav.open .sub{display:inline-block}
  .em .nav.open li.sub{display:block}
  .em .nav.open ul{display:flex}
  .em .nav.open .sub-gruppe{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 16px;border-bottom:1px solid var(--line-dark)}
  .em .nav.open ul .sub-gruppe a{display:inline-flex;width:auto;padding:9px 14px;margin:0;border:1px solid rgba(255,255,255,.16);border-radius:999px;font-family:var(--font);font-weight:500;font-size:14.5px;letter-spacing:0;color:rgba(255,255,255,.85)}
  .em .nav.open ul .sub-gruppe a::after{content:none}
  .em .nav.open .sub a::before{display:none}
  .em .nav.open .sub:last-of-type a{border-bottom:1px solid var(--line-dark)}
  .em .nav.open li.sub + li:not(.sub) a{margin-top:0}
  .em .nav.open .aktion{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
  .em .nav.open .aktion a{justify-content:center;width:100%}
  .em .nav.open .klein{text-align:left}
}
/* Kennzeilen sind ein Flex-Element und brechen dann nicht zwischen Woertern
   um, sobald ein Wortteil geschuetzt ist. Auf dem Telefon als Textzeile. */
@media (max-width:600px){
  .em .overline{display:block;line-height:1.6}
  .em .overline::before{display:inline-block;vertical-align:middle;margin:-2px 10px 0 0}
}

/* ==========================================================================
   Leistungskarten mit Hover-Bild wie auf der alten Seite (08.10.2026)
   Alte Seite: Foto opacity 0 -> .12, scale 1.05 -> 1, Verlauf weiss/gruen,
   Rand gruen, Symbol gruen gefuellt, Linie unten 40 px -> volle Breite.
   Ohne Maus (Telefon) ist das Foto dauerhaft mit .12 sichtbar.
   Die Titelfarbe beim Darueberfahren ist das dunkle Schriftgruen, das
   Logo-Gruen der alten Seite waere auf Weiss nicht lesbar (2,2:1).
   ========================================================================== */
.em .svc{overflow:hidden}
.em .svc > *:not(.svc-hover):not(.svc-linie){position:relative;z-index:1}
.em .svc-hover{position:absolute;inset:0;z-index:0;pointer-events:none}
.em .svc-hover img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transform:scale(1.05);transition:opacity .5s var(--spring), transform .6s var(--spring)}
.em .svc-hover::after{content:"";position:absolute;inset:0;opacity:0;transition:opacity .3s ease;
  background:linear-gradient(135deg, rgba(255,255,255,.1) 0%, rgba(105,197,49,.05) 50%, rgba(255,255,255,.95) 100%)}
.em .svc-linie{position:absolute;left:0;bottom:0;z-index:2;height:3px;width:40px;background:var(--volt);border-radius:0 0 0 var(--rl);transition:width .45s var(--spring)}
.em .svc:hover{border-color:var(--volt);box-shadow:var(--shadow)}
.em .svc:hover .svc-hover img{opacity:.12;transform:none}
.em .svc:hover .svc-hover::after{opacity:1}
.em .svc:hover .svc-linie{width:100%}
.em .svc .ico{transition:background .25s, color .25s, border-color .25s}
.em .svc:hover .ico{background:var(--volt);border-color:var(--volt);color:#fff}
.em .svc h3{transition:color .2s}
.em .svc:hover h3{color:var(--volt-text)}
.em .svc:hover .svc-foot a{color:var(--volt-text)}
@media (hover:none), (max-width:900px){
  .em .svc-hover img{opacity:.12;transform:none}
}
@media (prefers-reduced-motion:reduce){.em .svc-hover img,.em .svc-linie{transition:none}}

/* ==========================================================================
   Cookie-Einwilligung (28.10.2026)
   Aufbau wie der Banner der alten Seite (Kopf mit Cookie-Symbol, Text,
   "Individuell verwalten", drei Gruppen, zwei Knoepfe, Links), aber mittig
   unten ohne Schleier und in den Farben dieser Seite. Gruene Flaechen tragen
   dunkle Schrift: Weiss auf dem Logo-Gruen kommt nur auf gut 2:1.
   ========================================================================== */
.em .cookie-banner{
  position:fixed;left:50%;bottom:clamp(12px, 2.5vh, 24px);z-index:40;
  width:min(576px, calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;
  padding:clamp(20px, 3vw, 30px);display:grid;gap:18px;
  background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;
  box-shadow:0 30px 70px -24px rgba(28,28,27,.5), 0 2px 8px rgba(28,28,27,.08);
  opacity:0;transform:translate(-50%, 24px) scale(.97);
  transition:opacity .3s ease-out, transform .55s var(--ease);
}
.em .cookie-banner[hidden]{display:none}
.em .cookie-banner.offen{opacity:1;transform:translate(-50%, 0)}
.em .cookie-banner p{margin:0}
.em .ck-kopf{display:flex;align-items:flex-start;gap:14px}
.em .ck-symbol{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--volt-soft);color:var(--volt-text)}
.em .ck-titel{font-family:var(--display);font-weight:700;font-size:18px;line-height:1.2;color:var(--ink)}
.em .ck-unter{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel);margin-top:4px}
.em .ck-text{font-size:14px;line-height:1.6;color:var(--ink-2)}
.em .ck-verwalten{justify-self:start;display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0;background:none;border:0;cursor:pointer;
  font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--volt-text)}
.em .ck-verwalten:hover{color:var(--ink)}
.em .ck-pfeil{transition:transform .35s var(--ease)}
.em .ck-verwalten[aria-expanded="true"] .ck-pfeil{transform:rotate(180deg)}
.em .ck-gruppen{display:grid;gap:10px}
.em .ck-gruppen[hidden]{display:none}
.em .ck-gruppe{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px;border-radius:12px;
  border:1px solid rgba(28,28,27,.14);background:#fff;cursor:pointer;transition:border-color .2s, background .2s}
.em .ck-gruppe:hover{border-color:rgba(28,28,27,.28);background:#FBFBF9}
.em .ck-gruppe.fest{background:var(--paper);border-color:var(--line);cursor:default}
.em .ck-g-inhalt{display:grid;gap:4px}
.em .ck-g-titel{font-size:13px;font-weight:700;color:var(--ink);display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.em .ck-marke{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:var(--paper-2);color:var(--ink-2)}
.em .ck-g-text{font-size:12.5px;line-height:1.5;color:var(--steel)}
/* Echte Checkbox fuer Tastatur und Vorleser, unsichtbar ueber dem Kasten */
.em .ck-wahl{position:absolute;opacity:0;width:20px;height:20px;right:14px;top:16px;margin:0;cursor:pointer}
.em .ck-kasten{flex:none;display:grid;place-items:center;width:20px;height:20px;margin-top:2px;border-radius:5px;border:1.5px solid rgba(28,28,27,.3);background:#fff;color:transparent;transition:background .2s, border-color .2s, color .2s}
.em .ck-gruppe.fest .ck-kasten,.em .ck-wahl:checked + .ck-kasten{background:var(--volt);border-color:var(--volt);color:var(--ink)}
.em .ck-wahl:focus-visible + .ck-kasten{outline:2px solid var(--volt-text);outline-offset:2px}
.em .ck-knoepfe{display:flex;gap:10px;padding-top:4px}
.em .ck-haupt,.em .ck-neben{min-height:46px;padding:12px 18px;border-radius:12px;border:0;cursor:pointer;
  font-family:var(--mono);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:background .2s, transform .4s var(--ease)}
.em .ck-haupt{flex:1 1 auto;background:var(--volt);color:var(--ink);box-shadow:0 8px 18px -10px rgba(88,173,38,.7)}
.em .ck-haupt:hover{background:var(--volt-deep)}
.em .ck-neben{flex:0 0 auto;background:var(--paper-2);color:var(--ink-2)}
.em .ck-neben:hover{background:#E0E1DA}
.em .ck-haupt:active,.em .ck-neben:active{transform:scale(.98)}
.em .ck-haupt:focus-visible,.em .ck-neben:focus-visible,.em .ck-verwalten:focus-visible{outline:2px solid var(--volt-text);outline-offset:3px}
.em .ck-links{display:flex;justify-content:center;gap:10px;font-size:12px;color:var(--steel)}
.em .ck-links a{color:var(--steel);text-decoration:underline;text-underline-offset:3px}
.em .ck-links a:hover{color:var(--ink)}
@media (max-width:560px){
  .em .cookie-banner{bottom:calc(10px + env(safe-area-inset-bottom, 0px));gap:16px}
  .em .ck-knoepfe{flex-direction:column}
  .em .ck-neben{flex:1 1 auto}
}

/* Runder Cookie-Knopf unten links, sobald entschieden ist (wie auf der alten Seite) */
.em .cookie-knopf{position:fixed;left:20px;bottom:calc(20px + env(safe-area-inset-bottom, 0px));z-index:39}
.em .cookie-knopf[hidden]{display:none}
.em .cookie-knopf button{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;cursor:pointer;
  background:#fff;color:var(--ink-2);border:1px solid rgba(28,28,27,.14);box-shadow:0 10px 24px -10px rgba(28,28,27,.45);
  transition:color .2s, border-color .2s, transform .4s var(--ease)}
.em .cookie-knopf button:hover{color:var(--volt-text);border-color:rgba(105,197,49,.6);transform:scale(1.05)}
.em .cookie-knopf button:active{transform:scale(.95)}
.em .cookie-knopf button:focus-visible{outline:2px solid var(--volt-text);outline-offset:3px}
.em .ck-tipp{position:absolute;left:56px;bottom:9px;white-space:nowrap;pointer-events:none;
  font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--ink);
  padding:6px 10px;border-radius:8px;box-shadow:0 8px 20px -8px rgba(28,28,27,.5);
  opacity:0;transform:translateX(-6px);transition:opacity .2s, transform .3s var(--ease)}
.em .cookie-knopf:hover .ck-tipp{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .em .cookie-banner{transition:none;transform:translate(-50%, 0)}
  .em .ck-pfeil,.em .cookie-knopf button,.em .ck-tipp{transition:none}
}

/* "Cookie-Einstellungen" in der Fusszeile ist ein Knopf, sieht aber aus wie die Links daneben */
.em .site-footer .einw-oeffnen{background:none;border:0;padding:0;font:inherit;color:rgba(255,255,255,.7);cursor:pointer;transition:color .2s}
.em .site-footer .einw-oeffnen:hover{color:#fff}
.em .site-footer .einw-oeffnen:focus-visible{outline:2px solid var(--volt);outline-offset:3px;border-radius:4px}
@media (pointer:coarse), (max-width:900px){.em .site-footer .einw-oeffnen{min-height:38px}}

/* ==========================================================================
   Handy: Blende ueber der Menueleiste (28.10.2026, Wunsch Maximilian)
   Zwischen Bildschirmrand und der schwebenden Leiste lief der Text sichtbar
   durch, auf dem iPhone bis unter die Uhrzeit. Erster Versuch mit
   backdrop-filter gab oben eine harte Kante: Safari zeichnet die Unschaerfe
   nur bis zum Rand der Seite, nicht unter die Uhrzeit. Jetzt wie bei Gans
   Sauber ein Farbverlauf in der Farbe des Abschnitts, der gerade unter der
   Leiste liegt (page.js setzt --em-blende), deckend bis zur Mitte der Leiste
   (sonst schaut Text durch die runden Ecken), bis zur Unterkante weich aus. Reicht 80 px ueber den Rand, normale
   Flaechen zeichnet Safari dort mit. Erst nach dem Scrollen, ganz oben liegt
   der Kopf mit eigenem Bild. Bei offenem Menue aus, das ist ohnehin Vollbild.
   ========================================================================== */
@media (max-width:900px){
  .em .nav::before{
    content:"";position:absolute;left:0;right:0;top:-80px;height:158px;z-index:-1;pointer-events:none;
    background:linear-gradient(180deg, var(--em-blende, #F4F4F0) 0, var(--em-blende, #F4F4F0) 80%, transparent 100%);
    opacity:0;transition:opacity .25s;
  }
  .em .nav.blende-an::before{opacity:1}
  .em .nav.open::before{content:none}
}

/* Markenlogos, erzeugt von bauen.py aus marken_logos.py */
.em .marke-homematic-ip{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjE3LjEgMjcyLjggNjA3LjQgOTguMiIgY2xhc3M9Im1hcmtlLXN2ZyIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJIb21lbWF0aWMgSVAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiPjxnPjxwYXRoIGZpbGw9IiM2NDYzNjMiIGQ9J000ODkuOCwzNDEuNGMwLDE0LjMsMTAuNSwyNS45LDI2LjgsMjUuOWMxMy4zLDAsMjAuMy04LDIwLjMtOGwtNC43LTguN2MwLDAtNi4yLDYuMy0xNC41LDYuMyBjLTkuNCwwLTE1LjQtNy4yLTE1LjQtMTUuNWMwLTguNCw1LjktMTUuMywxNS0xNS4zYzcuNywwLDEyLjksNS4zLDEyLjksNS4zbDUuNC04LjRjMCwwLTYuMS03LjQtMTktNy40IEM1MDAuMywzMTUuNSw0ODkuOCwzMjcuMyw0ODkuOCwzNDEuNCBNNDY1LjYsMzY2LjFoMTIuM3YtNDkuNGgtMTIuM1YzNjYuMXogTTQ2NS42LDMwOC4zaDEyLjJ2LTEwLjloLTEyLjJWMzA4LjN6IE00MjkuMywzNDggYzAsMTYuNiwxMy43LDE4LjYsMjAuNSwxOC42YzIuMywwLDMuOC0wLjMsMy44LTAuM3YtMTAuN2MwLDAtMC45LDAuMi0yLjIsMC4yYy0zLjQsMC05LjgtMS4yLTkuOC05LjN2LTE5LjJoMTEuMnYtOS44aC0xMS4ydi0xNC4yIGgtMTJ2MTQuMmgtNi43djkuOGg2LjRWMzQ4eiBNMzgyLDM1MS4zYzAtNi45LDEwLjItNy43LDE2LjUtNy43aDIuMXYxLjJjMCw2LTQuNiwxMy0xMS4xLDEzQzM4NC40LDM1Ny42LDM4MiwzNTQuNSwzODIsMzUxLjMgTTM2OS42LDM1MS44YzAsOS45LDcuOSwxNS40LDE2LjgsMTUuNGMxMS4yLDAsMTUuMS04LjcsMTUtOC43aDAuMmMwLDAtMC4yLDEuNi0wLjIsMy41djQuMWgxMS4zdi0zMC45YzAtMTIuNS03LjYtMTkuNy0yMC41LTE5LjcgYy0xMS43LDAtMTkuNCw2LjEtMTkuNCw2LjFsNC42LDguOGMwLDAsNi41LTQuNywxMy42LTQuN2M1LjQsMCw5LjUsMi4yLDkuNSw4Ljd2MC43aC0xLjZDMzkwLjgsMzM1LjEsMzY5LjYsMzM2LjEsMzY5LjYsMzUxLjggTTI4MS41LDM2Ni4xaDEyLjN2LTIxLjdjMC0yLjIsMC4xLTQuNSwwLjYtNi4zYzEuNS02LjMsNS43LTExLjMsMTIuMS0xMS4zYzUuOCwwLDYuNyw0LjUsNi43LDkuOXYyOS40aDEyLjN2LTIxLjcgYzAtMi4zLDAuMS00LjUsMC42LTYuNGMxLjUtNi4yLDUuNi0xMS4yLDExLjktMTEuMmM1LjcsMCw2LjgsNC4zLDYuOCw5Ljl2MjkuNEgzNTd2LTMxLjhjMC0xMy01LjktMTguOC0xNi4yLTE4LjggYy03LjcsMC0xNC4xLDQuOC0xNi45LDEwLjJoLTAuMmMtMi02LjctNi45LTEwLjItMTQuNC0xMC4yYy03LjcsMC0xMy43LDUuNC0xNi4xLDEwLjNoLTAuMmMwLDAsMC4yLTEuNiwwLjItMy40di01LjdoLTExLjhWMzY2LjF6IE0yMzAuOSwzMzYuNmMxLjUtOS44LDguNi0xNC45LDE2LjgtMTQuOWM3LjMsMCwxMy41LDQuNywxMy44LDE0LjlIMjMwLjl6IE0yMjMuOCwzNDEuOGMwLDE1LDEwLjksMjUuNSwyNS41LDI1LjUgYzEwLjksMCwxOC02LjgsMTgtNi44bC0zLTVjMCwwLTUuOSw1LjktMTQuOCw1LjljLTEwLjEsMC0xOC42LTYuOC0xOC45LTE5LjNoMzcuNGMwLDAsMC4yLTIuMiwwLjItMy40YzAtMTIuMS02LjktMjIuNS0yMC4zLTIyLjUgQzIzNC42LDMxNi4yLDIyMy44LDMyNS44LDIyMy44LDM0MS44IE0xMzguNSwzNjYuMWg2LjZ2LTIzYzAtMi4yLDAuMi00LjUsMC43LTYuNWMyLTcuNSw4LTE0LjMsMTYtMTQuM2M5LjIsMCwxMC4zLDcuMiwxMC4zLDE0LjUgdjI5LjNoNi42di0yM2MwLTIuNiwwLjItNC45LDAuOS03LjFjMS44LTcuMiw3LjktMTMuOCwxNS40LTEzLjhjOC45LDAsMTAuNiw2LjYsMTAuNiwxNC41djI5LjNoNi42di0zMWMwLTEyLTQuNC0xOC45LTE2LjItMTguOSBjLTguMiwwLTE1LjMsNS42LTE3LjksMTIuMmgtMC4yYy0xLjUtOC02LjEtMTIuMi0xNS4xLTEyLjJjLTcuNiwwLTE1LjMsNS43LTE3LjYsMTIuM2gtMC4yYzAsMCwwLjItMS43LDAuMi0zLjl2LTcuM2gtNi41VjM2Ni4xeiBNODEuNCwzNDEuNWMwLTExLDguNS0xOS4zLDE5LTE5LjNjMTAuNSwwLDE5LDguMiwxOSwxOS4zYzAsMTEuMy04LjUsMTkuOS0xOSwxOS45QzkwLDM2MS4zLDgxLjQsMzUyLjgsODEuNCwzNDEuNSBNNzQuNywzNDEuNSBjMCwxNC43LDExLjUsMjUuOCwyNS44LDI1LjhzMjUuOC0xMSwyNS44LTI1LjhjMC0xNC40LTExLjUtMjUuMy0yNS44LTI1LjNTNzQuNywzMjcsNzQuNywzNDEuNSBNMjAuOCwzNjYuMWg2LjZ2LTIzLjMgYzAtMi4zLDAuMi00LjYsMC44LTYuNWMyLjItOC4xLDkuNC0xMy44LDE3LjctMTMuOGM5LjQsMCwxMC42LDYuOCwxMC42LDE0LjR2MjkuMkg2M3YtMzFjMC0xMi00LjMtMTguOS0xNi4zLTE4LjkgYy0xMSwwLTE3LjUsNy41LTE5LjQsMTIuMWgtMC4yYzAsMCwwLjItMS43LDAuMi00di0yOS44aC02LjZWMzY2LjF6Jy8+PHBhdGggZmlsbD0iIzY0NjM2MyIgZD0nTTU5MS4zLDMwOHYtOS44aDVjMywwLDQuOCwxLjksNC44LDQuOGMwLDMtMS44LDQuOS00LjksNC45SDU5MS4zeiBNNTg2LDMyMi40aDUuM3YtOS45aDUuOSBjNS40LDAsOS4yLTMuOSw5LjItOS40YzAtNS42LTMuOC05LjMtOS4yLTkuM0g1ODZWMzIyLjR6IE01NzUuMSwzMjIuNGg1LjN2LTI4LjZoLTUuM1YzMjIuNHonLz48cGF0aCBmaWxsPSIjMDA1MjgyIiBkPSdNNjEyLjksMzA4LjFjMCw2LjUtMC4yLDEzLTAuNywxOS41Yy0wLjIsMi41LTEuMiwzLjUtMy43LDMuN2MtNi41LDAuNS0xMywwLjctMTkuNSwwLjcgYy02LjUsMC0xMy0wLjItMTkuNS0wLjdjLTIuNS0wLjItMy41LTEuMi0zLjctMy43Yy0wLjUtNi41LTAuNy0xMy0wLjctMTkuNWMwLTYuNSwwLjItMTMsMC43LTE5LjVjMC4yLTIuNSwxLjItMy41LDMuNy0zLjcgYzYuNS0wLjUsMTMtMC43LDE5LjUtMC43YzYuNSwwLDEzLDAuMiwxOS41LDAuN2MyLjUsMC4yLDMuNSwxLjIsMy43LDMuN0M2MTIuNiwyOTUuMSw2MTIuOSwzMDEuNiw2MTIuOSwzMDguMSBNNjIwLjgsMzA4LjEgYzAtNy45LTAuMy0xNS43LTEtMjMuNWMtMC4zLTMuOC0zLjQtNi45LTcuMi03LjJjLTcuOC0wLjctMTUuNy0xLTIzLjUtMWMtNy45LDAtMTUuNywwLjMtMjMuNSwxYy0zLjgsMC4zLTYuOSwzLjQtNy4yLDcuMiBjLTAuNyw3LjgtMSwxNS43LTEsMjMuNXMwLjQsMTUuNywxLDIzLjVjMC4zLDMuOCwzLjQsNi45LDcuMiw3LjJjNy44LDAuNywxNS43LDEsMjMuNSwxYzcuOSwwLDE1LjctMC40LDIzLjUtMSBjMy44LTAuMyw2LjktMy40LDcuMi03LjJDNjIwLjUsMzIzLjgsNjIwLjgsMzE2LDYyMC44LDMwOC4xJy8+PC9nPjwvc3ZnPg==")}
.em .marke-hager{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjEzLjIgMjEzLjcgNjE2LjAgMjE1LjciIGNsYXNzPSJtYXJrZS1zdmciIHJvbGU9ImltZyIgYXJpYS1sYWJlbD0iSGFnZXIiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiPjxnPjxwYXRoIGZpbGw9IiMwMEFDRTkiIGQ9J00xMjEuNywyNzkuN2wxLjktMS45YzYuMi01LjUsOS45LTcuNSwxNy43LTkuOGM1LTEuNSwxMC45LTEuNywxNS43LTEuNGMyLjcsMC4yLDQuOCwwLjUsNywwLjkgYzYsMC45LDEyLDQuMSwxNy44LDcuOGM0LDIuNSw3LjYsNyw5LjcsMTAuM2MxLDEuNCwxLjUsMi43LDEuOSwzLjNjMC42LDEsMSwyLjEsMS40LDMuM2MxLjUsMy45LDIuMyw5LjEsMi41LDE1Ljh2ODAuM2wtMjkuMSwwIHYtNzIuMmMwLTEuMSwwLjQtNC45LTEuMS0xMWMtMS40LTYtNC4yLTcuOS00LjItNy45Yy0zLjQtMi44LTUuNS0zLjQtNy44LTMuOWMtMi40LTAuNS01LjktMC42LTkuNC0wLjVjLTMuNCwwLjEtNy42LDEuNy05LjMsMi4zIGMtMS42LDAuNy00LjgsMi40LTguNyw2LjdjLTMuOCw0LjItNS44LDEyLjMtNiwxNy43VjM4OEg5Mi41VjIyMS43aDI5LjJWMjc5LjcgTTU4MC41LDI4Ni45di0xOC4ybC0yOC42LDB2MTE5LjRoMjguNXYtNjYuNCBjMC41LTEwLjMsMy4zLTEzLjMsOC45LTE4LjNjNS42LTUsMTMuOS02LjUsMTUuNi02LjZjMS43LTAuMiw4LjYtMSwxNi4zLDAuOHYtMjkuOGMtNS43LTEuMi0xNi44LDEuMS0xOS4yLDEuOSBjLTIuMywwLjgtNy41LDIuNy0xMi41LDYuNkM1ODQuNiwyODAsNTgxLjYsMjg0LjgsNTgwLjUsMjg2LjkgTTUwMi40LDM2NS4xYzguNy00LjMsMTMuMi0xMS45LDE0LjMtMTkuNWgzMC4xdjEuMSBjLTAuOCwxMC4xLTcuNSwyMC4yLTEyLjQsMjUuOGMtNC45LDUuNi0xNi40LDE0LjktMzIuNywxNy40Yy0xNi4zLDIuNi0yNy44LTAuOS0zMC0xLjNjLTIuMS0wLjQtMTQuNi00LjgtMjIuOS0xMi45IGMtOC4yLTguMS0xMi43LTE4LjEtMTIuOS0xOS4zYy0wLjItMS4yLTQuOC05LjQtNC43LTI5LjZjMC4xLTIwLjIsNi42LTMyLDYuNi0zMmM4LjUtMTUuNiwxOC41LTIxLjQsMjYuOS0yNS4xIGM4LjQtMy43LDIyLTcuMSwzOC41LTMuNGMxNi40LDMuOCwyNy45LDEyLjYsMzUuOCwyNi4yYzcuOSwxMy43LDguNCwzMi4xLDcuNiw0Mi4zbC04Ny4zLDBsMCwwYy0wLjEsMC0wLjEsMTMuNiw4LjYsMjMuMyBDNDc4LDM2OS4zLDQ5My42LDM2OS4zLDUwMi40LDM2NS4xIE00NjAuNywzMTIuNWw1Ni41LDAuMWMtMC40LTcuMi0yLjQtMTQuNi0xMy4zLTIxLjhjLTEwLjgtNy4yLTIzLjYtMy44LTI4LjQtMS4xIEM0NzAuNywyOTIuNSw0NjIuMiwyOTguMyw0NjAuNywzMTIuNSBNMzE2LjIsMzg4LjFoLTM0Ljl2LTEwLjhjLTguNCw3LjYtMTYuNiw5LjgtMTguOSwxMC41Yy0yLjIsMC43LTEwLjQsMi44LTIxLjEsMS44IGMtMTAuNi0xLTE3LjktNC0yNS41LTkuNGMtNy42LTUuMy0xMS4zLTEyLjgtMTMuMy0yMS41Yy0yLTguNywxLjItMTcuNywzLjEtMjEuNGMxLjktMy43LDkuMi0xMi44LDE3LjUtMTUuNSBjOC4zLTIuNywxMy42LTQuMywyNi41LTYuNmwyNS43LTUuMmMzLTAuNSw0LjMtMS45LDUuMS0yLjdjMC43LTAuOCwxLjMtNCwxLjEtNi45Yy0wLjItMi45LTAuMi01LjgtNS41LTkuNCBjLTUuMy0zLjUtMTUuMy0zLjItMTUuMy0zLjJjLTExLjYsMC4zLTE3LjcsMi4zLTIxLjYsNi4xYy0zLjksMy44LTMuNSwxMy0zLjUsMTNoLTI4LjFjMC40LTcuNiwxLjUtMTYuNyw1LjktMjMuNiBjNC40LTYuOCwxMi0xMi42LDIzLjYtMTUuN2MwLDAsMTIuNy0yLjUsMjEuOC0yLjNjOS4yLDAuMiwxNiwwLjgsMjEuNywyLjRjNS43LDEuNSwxMi41LDMuMywxOCw3LjRsMS4xLDAuOSBjMTEuMiw4LjgsOS44LDE5LjEsMTAuMSwyMi40djcyLjdDMzA5LjcsMzc3LjgsMzEzLjYsMzg0LjMsMzE2LjIsMzg4LjEgTTI4MS4zLDM0M3YtMTRjMCwwLTcuNCwyLjItMTIuOSwyLjkgYy01LjUsMC44LTE2LjQsMy40LTIxLjcsNWMtNS4zLDEuNi05LjIsNC4xLTkuMiw0LjFjLTYuNywzLjctNi4xLDExLjctNi4xLDExLjdjMS4xLDEwLjcsOC4zLDEyLjUsMTAuOSwxMy45IGMyLjYsMS4zLDE2LjUsMy40LDI4LjMtMy45QzI4Mi4zLDM1NS40LDI4MS4zLDM0MywyODEuMywzNDMgTTM5OS4xLDI2OC44aDI3LjF2MTE2Yy0wLjQsNy44LTAuOCwxMS45LTUuOSwxOS4yIGMwLDAtNy41LDExLjgtMjcuOSwxNS43YzAsMC0zOS43LDYuNy02MC4yLTYuNGMwLDAtMTIuNy02LjYtMTQuNy0yNHYtMS4zaDMwLjVjMC45LDcsNS42LDE0LjUsMjkuMywxMy43IGMyMy43LTAuOCwyMS43LTE2LjQsMjEuNy0xNi40di0xNS42YzAsMC0xNC4xLDEyLjctMzQsMTJjLTIwLTAuNy0zMi44LTkuMi00Mi0yMi42Yy05LjItMTMuMy0xMS4xLTI5LjQtOC41LTQ3LjQgYzIuNi0xOCwxMS41LTI3LjYsMjAuNy0zNC44YzkuMi03LjIsMjEuMy05LjYsMzIuNi05LjZjMTEuMywwLDI0LDUuNCwzMS4yLDEyLjZWMjY4LjggTTM5OS4zLDMyNGwtMC4xLTEuOGMwLDAtMC4xLTcuMi0yLjEtMTMuNSBjLTEuOS02LjMtNy4zLTEwLjctNy4zLTEwLjdjLTE0LjUtMTIuMS0zMC41LTQuNy0zMi40LTMuOWMtMS44LDAuOS0xNC45LDYuMy0xNS45LDI3LjVjLTEsMjEuMSwxMS4zLDMwLjYsMTEuMywzMC42IGMxMi4yLDkuMywyNyw3LjEsMzYuNC0wLjVDMzk4LjYsMzQ0LjMsMzk5LjMsMzM0LjksMzk5LjMsMzI0IE02NC45LDMxMC42di0yMi4xYzAtNS45LTQuOC0xMC44LTEwLjgtMTAuOEgzMiBjLTUuOSwwLTEwLjgsNC45LTEwLjgsMTAuOHYyMi4xYzAsNS45LDQuOSwxMC44LDEwLjgsMTAuOGgyMi4xQzYwLjEsMzIxLjQsNjQuOSwzMTYuNSw2NC45LDMxMC42IE02NC45LDM3Ny4zdi0yMi4yIGMwLTUuOS00LjgtMTAuOC0xMC44LTEwLjhIMzJjLTUuOSwwLTEwLjgsNC45LTEwLjgsMTAuOHYyMi4yYzAsNS45LDQuOSwxMC44LDEwLjgsMTAuOGgyMi4xQzYwLjEsMzg4LjEsNjQuOSwzODMuMiw2NC45LDM3Ny4zJy8+PC9nPjwvc3ZnPg==")}
.em .marke-gira{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xMzcuMiAxOTEuNiA2MTIuMiAxNjcuMSIgY2xhc3M9Im1hcmtlLXN2ZyIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJHaXJhIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0Ij48Zz48ZyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtNTAuMDAwMDAwLCAtMjUuMDAwMDAwKSc+PGc+PGcgdHJhbnNmb3JtPSd0cmFuc2xhdGUoNTAuMDAwMDAwLCAyNS4wMDAwMDApJz48cG9seWdvbiBmaWxsPSIjMDQwNDA0IiBwb2ludHM9JzY1LjcsMzUyLjMgOTguNSwzNTIuMyA5OC41LDIwMi4zIDY1LjcsMjAyLjMgJy8+PHBhdGggZmlsbD0iIzA0MDQwNCIgZD0nTTE4LjgsMjY4LjVoLTcyLjV2MThoMzguMnY0MmMtMy4yLDIuNi0xMi45LDUuOS0yOS40LDUuOWMtNDEuMSwwLTQ4LjQtMzIuMi00OC40LTU5LjUgYzAtMzEuMyw3LjMtNTkuMSw0Mi4zLTU5LjFjMjIsMCwyOS40LDEzLDI5LjQsMjMuOWgzOC4yYzAtMjQuNS0yMC4zLTQxLjktNjcuNS00MS45Yy01Ny44LDAtODAuMSwyOS4xLTgwLjEsNzcuMSBjMCw0NC4xLDI1LjgsNzcuNiw4Ni4zLDc3LjZjMzIsMCw1Ni4xLTkuMyw2My43LTEzLjdWMjY4LjUnLz48cGF0aCBmaWxsPSIjMDQwNDA0IiBkPSdNMTUwLDM1Mi4zaDMzLjVWMjg4aDEzLjJjMzAuNiwwLDM0LjYsOCw0MS41LDMybDkuMSwzMi40aDM0bC0xMi00Mi4yIGMtNC42LTE1LjktNy43LTI4LjctMzUuMi0zMy4zdi0wLjRjMjAuMy0zLjcsMzkuMi0xMS4xLDM5LjItMzQuOGMwLTI5LjQtMjYuMy0zOS4zLTYzLjUtMzkuM0gxNTBWMzUyLjN6IE0xODIuOSwyMjEuMWgyNi41IGMxOSwwLDI5LjcsOC44LDI5LjcsMjUuMWMwLDIzLjEtMjEuOSwyNi41LTQzLDI2LjVoLTEzLjNWMjIxLjF6Jy8+PHBhdGggZmlsbD0iIzA0MDQwNCIgZD0nTTMwNC43LDM1Mi4zaDMyLjdsMTYuMS00MC43SDQyMGwxNi4xLDQwLjdoMzIuN2wtNjMtMTUwSDM2OEwzMDQuNywzNTIuM3ogTTM4Ni41LDIyNS44aDAuNSBsMjUuNSw2NS42SDM2MUwzODYuNSwyMjUuOHonLz48L2c+PC9nPjwvZz48L2c+PC9zdmc+")}
.em .marke-jung{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xNDIuMCAxOTEuNCA2MTIuMiAxNjIuMCIgY2xhc3M9Im1hcmtlLXN2ZyIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJKVU5HIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0Ij48Zz48cGF0aCBmaWxsPSIjNzA3MDZGIiBkPSdNNDY0LDI0MS42di00NC4ySDI3MC40djg0LjdsLTY4LjYtODQuN2gtOTMuMnY5My45YzAsNC4zLTIuNSw4LjEtNi40LDkuOWMtNS45LDIuNi0xMi4zLDMuOS0xOC43LDMuNiBjLTYuNCwwLjMtMTIuOC0wLjktMTguNy0zLjZjLTMuOS0xLjctNi40LTUuNi02LjQtOS45di05My45SC0xMzZ2NDQuMmg5NC41djQ5LjdjMCw0LjMtMi41LDguMS02LjQsOS45IGMtNS45LDIuNi0xMi4zLDMuOS0xOC43LDMuNmMtNi40LDAuMy0xMi44LTAuOS0xOC43LTMuNmMtMy45LTEuNy02LjQtNS42LTYuNC05Ljl2LTIwLjRILTEzNnY0OC43YzAsMTUuMywxMi40LDI3LjgsMjcuOCwyNy44IGg5NC41YzguNywwLDE2LjktNC4xLDIyLjEtMTFjNS4yLDYuOSwxMy40LDExLDIyLjEsMTFoMTA1LjhjNi40LDAsMTIuNi0yLjIsMTcuNS02LjJ2Ni4yaDUzLjh2LTY3LjhsNTQuOSw2Ny44aDYxLjl2LTYuMiBjNC45LDQsMTEuMSw2LjIsMTcuNSw2LjJoOTQuNWMxNS4zLDAsMjcuOC0xMi40LDI3LjgtMjcuOHYtNDguN2gtNjcuN3YxMS4yaDIzLjR2OS4yYzAsNC4zLTIuNSw4LjEtNi40LDkuOSBjLTUuOSwyLjYtMTIuMywzLjktMTguNywzLjZjLTYuNCwwLjMtMTIuOC0wLjktMTguNy0zLjZjLTMuOS0xLjctNi40LTUuNi02LjQtOS45di00OS43SDQ2NHogTTIuOCwzMTkuNmMwLDkuMS03LjQsMTYuNS0xNi41LDE2LjUgaC05NC41Yy05LjEsMC0xNi41LTcuNC0xNi41LTE2LjV2LTM3LjVoMjEuN3Y5LjJjMCw4LjcsNS4xLDE2LjYsMTMsMjAuMWM3LjMsMy4zLDE1LjMsNC45LDIzLjMsNC42YzgsMC4zLDE2LTEuMywyMy4zLTQuNiBjNy45LTMuNiwxMy0xMS40LDEzLTIwLjF2LTYwLjloLTk0LjV2LTIxLjdIMi44VjMxOS42eiBNMTUyLjgsMzE5LjZjMCw5LjEtNy40LDE2LjUtMTYuNSwxNi41SDMwLjVjLTkuMSwwLTE2LjUtNy40LTE2LjUtMTYuNSB2LTExMWgzM3Y4Mi43YzAsOC43LDUuMSwxNi42LDEzLDIwLjFjNy4zLDMuMywxNS4zLDQuOSwyMy4zLDQuNmM4LDAuMywxNi0xLjMsMjMuMy00LjZjNy45LTMuNiwxMy0xMS40LDEzLTIwLjF2LTgyLjdoMzNWMzE5LjZ6IE0zMTQsMzM2LjFoLTQ2LjJsLTYwLjMtNzQuM2gtMTEuMnY3NC4zSDE2NFYyMDguNmgzMi40bDc0LDkxLjVoMTEuMnYtOTEuNUgzMTRWMzM2LjF6IE0zNzEuMywzMTEuNGM3LjMsMy4zLDE1LjMsNC45LDIzLjMsNC42IGM4LDAuMywxNi0xLjMsMjMuMy00LjZjNy45LTMuNiwxMy0xMS40LDEzLTIwLjF2LTkuMmgyMS43djM3LjVjMCw5LjEtNy40LDE2LjUtMTYuNSwxNi41aC05NC41Yy05LjEsMC0xNi41LTcuNC0xNi41LTE2LjV2LTExMSBoMTI3LjV2MjEuN2gtOTQuNXY2MC45QzM1OC4zLDMwMCwzNjMuNCwzMDcuOCwzNzEuMywzMTEuNCcvPjwvZz48L3N2Zz4=")}
.em .marke-mennekes{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xLjMgLTEuMyAyNTguMCAzNS42IiBjbGFzcz0ibWFya2Utc3ZnIiByb2xlPSJpbWciIGFyaWEtbGFiZWw9Ik1FTk5FS0VTIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0Ij4gPHBhdGggZD0iTSAxNi43MzYyNTEsMTYuOSBMIDE3LjAzMTI1MSw4LjQ1NSBMIDAsMjcuMjMxMjUgTCAwLDMuMjIxMjUgTCAyOS4xMDUwMDEsMy4yMjEyNSBMIDE2LjczNjI1MSwxNi45IHogTSAxMy4xMDM3NSwxNy43NzI1IEwgMTIuODcyNSwyNi4yMTc1IEwgMjkuMTA1MDAxLDguMzEzNzUgTCAyOS4xMDUwMDEsMzIuMzI2MjUgTCAwLDMyLjMyNjI1IEwgMTMuMTAzNzUsMTcuNzcyNSB6IiBzdHlsZT0iZmlsbDojZDcwMDNjO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIiAvPiA8cGF0aCBkPSJNIDI0Ni45Njc1LDQuNzIyNSBMIDI0Ny45Nzg3NSw0LjcyMjUgQyAyNDkuMjA3NSw0LjcyMjUgMjQ5LjQ5NSw1LjUzNzUgMjQ5LjQ5NSw2LjAwODc1IEMgMjQ5LjQ5NSw2LjQ1NjI1IDI0OS4yNzc1LDcuMzE3NSAyNDcuOTc4NzUsNy4zMTc1IEwgMjQ2Ljk2NzUsNy4zMTc1IEwgMjQ2Ljk2NzUsNC43MjI1IHogTSAyNDUuMzk1LDExLjc1MTI1IEwgMjQ2Ljk2NzUsMTEuNzUxMjUgTCAyNDYuOTY3NSw4LjUwMTI1IEwgMjQ2Ljk5MTI1LDguNTAxMjUgTCAyNDkuMjQyNSwxMS43NTEyNSBMIDI1MS4xNDg3NSwxMS43NTEyNSBMIDI0OC44NCw4LjYxNjI1IEMgMjQ5LjI2NSw4LjUxMjUgMjQ5Ljc0NzUsOC4zOTc1IDI1MC4yNTI1LDcuOTE1IEMgMjUwLjg2MjUsNy4zMjg3NSAyNTEuMDY4NzUsNi40NDUgMjUxLjA2ODc1LDUuODgyNSBDIDI1MS4wNjg3NSw0LjkwNjI1IDI1MC41NTI1LDQuMjE2MjUgMjUwLjA3LDMuODI2MjUgQyAyNDkuNTg3NSwzLjQzNSAyNDguOTc4NzUsMy4yNTEyNSAyNDguMDAyNSwzLjI1MTI1IEwgMjQ1LjM5NSwzLjI1MTI1IEwgMjQ1LjM5NSwxMS43NTEyNSB6IE0gNDguNTM1MDAxLDMyLjMzMzc1IEwgNTMuOTI1MDAxLDMyLjMzMzc1IEwgNTMuOTI1MDAxLDEwLjQ5NzUgTCA1NC4wMDM3NTEsMTAuNDk3NSBMIDYxLjQ4MDAwMSwzMi4zMzM3NSBMIDY2LjA0Mzc1MSwzMi4zMzM3NSBMIDczLjQ3ODc1MSwxMC40OTc1IEwgNzMuNTU3NTAxLDEwLjQ5NzUgTCA3My41OTc1MDEsMTAuNDk3NSBMIDczLjU5NzUwMSwzMi4zMzM3NSBMIDc4Ljk4NjI1MSwzMi4zMzM3NSBMIDc4Ljk4NjI1MSwzLjIyIEwgNzEuNTExMjUxLDMuMjIgTCA2My44NDAwMDEsMjUuMjUxMjUgTCA2My43NjEyNTEsMjUuMjUxMjUgTCA1Ni4wMTEyNTEsMy4yMiBMIDQ4LjUzNTAwMSwzLjIyIEwgNDguNTM1MDAxLDMyLjMzMzc1IHogTSA4My4yNjI1MDEsMzIuMzMzNzUgTCA5OC45MjEyNTEsMzIuMzMzNzUgTCA5OC45MjEyNTEsMjcuMjk3NSBMIDg4LjY1MjUwMSwyNy4yOTc1IEwgODguNjUyNTAxLDIwLjQxMjUgTCA5OC40ODc1MDEsMjAuNDEyNSBMIDk4LjQ4NzUwMSwxNS4zNzYyNSBMIDg4LjY1MjUwMSwxNS4zNzYyNSBMIDg4LjY1MjUwMSw4LjI1NSBMIDk4LjkyMTI1MSw4LjI1NSBMIDk4LjkyMTI1MSwzLjIyIEwgODMuMjYyNTAxLDMuMjIgTCA4My4yNjI1MDEsMzIuMzMzNzUgeiBNIDEwMy4zLDMyLjMzMzc1IEwgMTA4LjY5LDMyLjMzMzc1IEwgMTA4LjY5LDExLjE2NjI1IEwgMTA4Ljc2NzUsMTEuMTY2MjUgTCAxMjAuOTI1LDMyLjMzMzc1IEwgMTI2Ljk0NSwzMi4zMzM3NSBMIDEyNi45NDUsMy4yMiBMIDEyMS41NTUsMy4yMiBMIDEyMS41NTUsMjQuMzg2MjUgTCAxMjEuNDc2MjUsMjQuMzg2MjUgTCAxMDkuNDM2MjUsMy4yMiBMIDEwMy4zLDMuMjIgTCAxMDMuMywzMi4zMzM3NSB6IE0gMTMxLjI2NzUsMzIuMzMzNzUgTCAxMzYuNjU4NzUsMzIuMzMzNzUgTCAxMzYuNjU4NzUsMTEuMTY2MjUgTCAxMzYuNzM2MjUsMTEuMTY2MjUgTCAxNDguODkzNzUsMzIuMzMzNzUgTCAxNTQuOTEyNSwzMi4zMzM3NSBMIDE1NC45MTI1LDMuMjIgTCAxNDkuNTIyNSwzLjIyIEwgMTQ5LjUyMjUsMjQuMzg2MjUgTCAxNDkuNDQ1LDI0LjM4NjI1IEwgMTM3LjQwNjI1LDMuMjIgTCAxMzEuMjY3NSwzLjIyIEwgMTMxLjI2NzUsMzIuMzMzNzUgeiBNIDE1OS4yMDYyNSwzMi4zMzM3NSBMIDE3NC44NjUsMzIuMzMzNzUgTCAxNzQuODY1LDI3LjI5NzUgTCAxNjQuNTk2MjUsMjcuMjk3NSBMIDE2NC41OTYyNSwyMC40MTI1IEwgMTc0LjQzMjUsMjAuNDEyNSBMIDE3NC40MzI1LDE1LjM3NjI1IEwgMTY0LjU5NjI1LDE1LjM3NjI1IEwgMTY0LjU5NjI1LDguMjU1IEwgMTc0Ljg2NSw4LjI1NSBMIDE3NC44NjUsMy4yMiBMIDE1OS4yMDYyNSwzLjIyIEwgMTU5LjIwNjI1LDMyLjMzMzc1IHogTSAxNzkuMTEsMzIuMzMzNzUgTCAxODQuNSwzMi4zMzM3NSBMIDE4NC41LDE5LjU0NjI1IEwgMTg0LjU3NzUsMTkuNTQ2MjUgTCAxOTMuNjY2MjUsMzIuMzMzNzUgTCAyMDAuMDAxMjUsMzIuMzMzNzUgTCAxODkuMDIzNzUsMTcuNTQgTCAyMDAuMDAxMjUsMy4yMiBMIDE5My42NjYyNSwzLjIyIEwgMTg0LjU3NzUsMTUuODA4NzUgTCAxODQuNSwxNS44MDg3NSBMIDE4NC41LDMuMjIgTCAxNzkuMTEsMy4yMiBMIDE3OS4xMSwzMi4zMzM3NSB6IE0gMjAyLjIxODc1LDMyLjMzMzc1IEwgMjE3Ljg3NzUsMzIuMzMzNzUgTCAyMTcuODc3NSwyNy4yOTc1IEwgMjA3LjYwODc1LDI3LjI5NzUgTCAyMDcuNjA4NzUsMjAuNDEyNSBMIDIxNy40NDUsMjAuNDEyNSBMIDIxNy40NDUsMTUuMzc2MjUgTCAyMDcuNjA4NzUsMTUuMzc2MjUgTCAyMDcuNjA4NzUsOC4yNTUgTCAyMTcuODc3NSw4LjI1NSBMIDIxNy44Nzc1LDMuMjIgTCAyMDIuMjE4NzUsMy4yMiBMIDIwMi4yMTg3NSwzMi4zMzM3NSB6IE0gMjE5Ljk3NSwyMy45OTI1IEMgMjIwLjI5LDMwLjQwNSAyMjUuNzE4NzUsMzIuOTIzNzUgMjI5LjQ1NjI1LDMyLjkyMzc1IEMgMjM0LjAyLDMyLjkyMzc1IDIzOC44OTg3NSwyOS45MzM3NSAyMzguODk4NzUsMjMuNjM4NzUgQyAyMzguODk4NzUsMTcuMzAzNzUgMjMzLjY2NjI1LDE1LjQ1NSAyMzEuMjY2MjUsMTQuNjY4NzUgQyAyMjguMzE1LDEzLjY4NSAyMjYuNDI2MjUsMTMuMTMzNzUgMjI2LjQyNjI1LDEwLjYxNjI1IEMgMjI2LjQyNjI1LDguODg1IDIyNy43MjUsNy42NjUgMjI5LjQxNzUsNy42NjUgQyAyMzAuODcyNSw3LjY2NSAyMzIuNDQ2MjUsOC4zMzM3NSAyMzIuNjgyNSwxMC45MzEyNSBMIDIzOC4xOSwxMC45MzEyNSBDIDIzNy45MTUsNC45OSAyMzIuOTU3NSwyLjYyODc1IDIyOS41NzM3NSwyLjYyODc1IEMgMjI0LjY1NjI1LDIuNjI4NzUgMjIxLjAzNzUsNi4yODg3NSAyMjEuMDM3NSwxMC45MzEyNSBDIDIyMS4wMzc1LDE3LjA2ODc1IDIyNS43MTg3NSwxOC40NDUgMjI3Ljk2MTI1LDE5LjMxMTI1IEMgMjMxLjU4MTI1LDIwLjY4NzUgMjMzLjUwODc1LDIxLjIzODc1IDIzMy41MDg3NSwyNC4yMjg3NSBDIDIzMy41MDg3NSwyNi40MzEyNSAyMzEuNjIsMjcuODg3NSAyMjkuNDk1LDI3Ljg4NzUgQyAyMjcuODQzNzUsMjcuODg3NSAyMjUuOTE1LDI2LjkwMzc1IDIyNS42NCwyMy45OTI1IEwgMjE5Ljk3NSwyMy45OTI1IHogTSAyNDcuOTM2MjUsMCBDIDI0My43NTEyNSwwIDI0MC40OCwzLjM4NzUgMjQwLjQ4LDcuNDM3NSBDIDI0MC40OCwxMS41MDYyNSAyNDMuNzcsMTQuODc1IDI0Ny45MzYyNSwxNC44NzUgQyAyNTEuOTg2MjUsMTQuODc1IDI1NS4zNTM3NSwxMS41NjUgMjU1LjM1Mzc1LDcuNDM3NSBDIDI1NS4zNTM3NSwzLjM2ODc1IDI1Mi4wNjUsMCAyNDcuOTM2MjUsMCBNIDI0Ny45MTc1LDEuNjc1IEMgMjUxLjEzLDEuNjc1IDI1My42MDI1LDQuMzAyNSAyNTMuNjAyNSw3LjQzNzUgQyAyNTMuNjAyNSwxMC42MyAyNTEuMDcxMjUsMTMuMiAyNDcuOTE3NSwxMy4yIEMgMjQ0Ljc0Mzc1LDEzLjIgMjQyLjIzMjUsMTAuNjExMjUgMjQyLjIzMjUsNy40Mzc1IEMgMjQyLjIzMjUsNC4zMDI1IDI0NC42ODUsMS42NzUgMjQ3LjkxNzUsMS42NzUiIHN0eWxlPSJmaWxsOiMwMDAwMDA7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlOm5vbmUiIC8+IDwvc3ZnPg==")}