:root{
  /* **Die Farben der App, nicht die von Luna.** Diese Datei war von der
     LUNA-Seite uebernommen und brachte deren Magenta und Violett mit -
     eine Elektriker-App sieht damit falsch aus und, schlimmer, die Seite
     und die Screenshots im Store erzaehlen zwei verschiedene Marken. Die
     Werte hier sind aus dem Theme der App abgelesen: Hintergrund
     #040d14, Blau #07aaff, Text #f5f8fa, gedaempft #94a5af. */
  --bg:#040d14; --panel:#0c1a24; --panel2:#12222e; --line:#1d3543;
  --text:#f5f8fa; --muted:#94a5af; --magenta:#07aaff; --purple:#00c2ff;
  --cyan:#21c77a;
}
*{box-sizing:border-box}
/* **Alle Bilder behalten ihr Seitenverhaeltnis.**
   Gemessen am 07.10.2026 im Browser: die Regeln `.film img{width:300px}`,
   `.hero-visual img{max-width:360px}` und `.split-bild img` setzen nur die
   *Breite*. Das `height="775"`-Attribut im HTML bleibt aber wirksam - es
   ist ein Praesentationshinweis, und CSS hebt nur auf, was es selbst
   ueberschreibt. Folge: das Galeriebild wurde auf 300x775 gezogen, das
   Hero auf 360x1030, das Teambild auf 330x617. Aus einem Seitenverhaeltnis
   von 1,25 wurde 2,58 - hochgezogen, nicht beschnitten.
   `height:auto` stellt das Verhaeltnis wieder her. */
img{height:auto}
html,body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6}
a{color:var(--cyan);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
header.luna-head{position:sticky;top:0;z-index:10;backdrop-filter:blur(12px);background:rgba(4,13,20,.82);border-bottom:1px solid var(--line)}
.luna-head .inner{display:flex;align-items:center;gap:14px;padding:12px 22px;max-width:1080px;margin:0 auto}
.brand{display:flex;align-items:center;gap:12px;color:var(--text)}
.brand img{width:40px;height:40px;border-radius:10px}
.brand b{display:block;letter-spacing:.14em;font-size:13px}
.brand small{color:var(--muted);letter-spacing:.16em;font-size:10px}
.luna-head nav{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap}
.luna-head nav a{color:var(--muted);font-size:13px}
.hero{padding:64px 0 30px}
/* **Die Heldenzeile ist ein eigenes Raster.** Sie stand vorher als
   `display:contents` auf dem Wrapper - und damit hatte der Wrapper keine
   Box mehr: `padding:0 22px` wurde verworfen, und die Ueberschrift klebte
   am linken Bildrand. Genau die Sorte Fehler, die man auf dem Desktop
   nicht sieht und auf dem Telefon sofort. */
.hero-reihe{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.eyebrow{color:var(--magenta);letter-spacing:.18em;font-size:11px;font-weight:700}
.hero h1{font-size:64px;line-height:1;margin:14px 0 10px;font-weight:900;letter-spacing:-1px}
.hero h1 span{background:linear-gradient(90deg,var(--magenta),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lead{color:var(--muted);font-size:17px;max-width:46ch}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.btn{display:inline-block;padding:13px 22px;border-radius:999px;font-weight:700;font-size:14px;border:1px solid var(--line)}
.btn-primary{background:linear-gradient(90deg,var(--magenta),var(--purple));color:#04121a;border:none}
.btn-ghost{color:var(--text)}
.hero-visual img{width:100%;max-width:360px;display:block;margin:0 auto;border-radius:26px;border:1px solid var(--line);box-shadow:0 30px 70px rgba(7,170,255,.26)}
section{padding:54px 0}
h2{font-size:34px;margin:0 0 8px;font-weight:900}
h2 span{color:var(--magenta)}
.sub{color:var(--muted);margin:0 0 26px;max-width:62ch}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px}
.gallery img{width:100%;border-radius:20px;border:1px solid var(--line)}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.feature{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px}
.feature h3{margin:0 0 6px;font-size:16px}
.feature p{margin:0;color:var(--muted);font-size:14px}
.links{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.link-card{display:block;background:var(--panel2);border:1px solid var(--line);border-radius:18px;padding:22px;color:var(--text)}
.link-card b{display:block;font-size:16px;margin-bottom:4px}
.link-card small{color:var(--muted)}
.note{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--magenta);border-radius:14px;padding:18px 20px;color:var(--muted);font-size:14px}
footer{border-top:1px solid var(--line);color:var(--muted);font-size:13px}
footer .inner{max-width:1080px;margin:0 auto;padding:26px 22px;display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between}

/* ---- fuer die Produktseite ElektroReport ergaenzt ---- */

/* Zwei Spalten: Text und Bild. Im Grundstil von Luna gab es das nicht,
   dort stand alles untereinander. */
.split{display:grid;grid-template-columns:1fr .8fr;gap:44px;align-items:center}
.split.umgekehrt{grid-template-columns:.8fr 1fr}
.split-bild img{width:100%;max-width:480px;display:block;margin:0 auto;border-radius:24px;border:1px solid var(--line);box-shadow:0 24px 60px rgba(7,170,255,.22)}

/* Nummerierte Abschnitte, wie auf der WakeRiot-Seite. */
.kick{display:block;color:var(--magenta);letter-spacing:.16em;font-size:11px;font-weight:700;margin-bottom:8px}

/* Die Preise. */
.preise{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:8px}
.preis{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:22px;position:relative}
.preis.hervor{border-color:var(--magenta)}
.preis em{position:absolute;top:-11px;left:22px;background:var(--magenta);color:#04121a;font-style:normal;font-size:11px;font-weight:800;letter-spacing:.12em;padding:3px 10px;border-radius:999px}
.preis h3{margin:0 0 4px;font-size:16px}
.preis .betrag{font-size:26px;font-weight:900;margin:2px 0 10px}
.preis .betrag small{display:block;font-size:13px;font-weight:400;color:var(--muted)}
.preis ul{margin:0;padding-left:18px;color:var(--muted);font-size:14px}

/* Liste mit Punkten unter dem Text, wie bei WakeRiot. */
.punkte{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.punkte span{border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:13px;color:var(--muted);background:var(--panel)}

/* Bildfolge in voller Breite, fuer die Galerie der Bildschirme. */
/* **`align-items:flex-start` ist nicht Kosmetik.** Ohne diese Zeile
   streckt Flex jedes Bild auf die Hoehe des groessten Geschwisters -
   gemessen waren alle drei 411 px hoch, obwohl sie 375, 412 und 387
   sein muessen. Verzerrt wird dabei in der Breite, nicht gekuerzt. */
.film{display:flex;gap:18px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}
.film img{width:300px;border-radius:18px;border:1px solid var(--line);flex:0 0 auto}

@media(max-width:820px){
  .hero{padding-top:34px}
  .hero-reihe{grid-template-columns:1fr;gap:26px}
  .hero h1{font-size:48px}
  .split,.split.umgekehrt{grid-template-columns:1fr}
  .split-bild img{max-width:330px}
}