/* =====================================================================
   STARTSEITE NAVY + WEISS (live seit 2026-09-30, Yusuf, Vorbild rumyoniq.de)
   Nur index.html DE+EN (body.is-home). Entwürfe: reference/home-navy-2026-09-30/
   Zwei Flächen: Navy-Verlauf wie der Hero, reines Weiß. Kein Schwarz, kein Grau,
   keine hellblauen Radials. Buttons: auf Weiß Navy, auf Navy Weiß.
   ===================================================================== */
:root {
  --hn-navy: #0b1c3d;
  --hn-grad: linear-gradient(180deg, #0c2149 0%, #0a1a38 55%, #081428 100%);
  --hn-card: #132a52;
  --hn-card-line: rgba(255,255,255,.10);
  --hn-ink: #0b1c3d;
  --hn-btn: #16336a;
}

/* ---------- Flächen ---------- */
body.is-home .gad-platform,
body.is-home .trust-belt,
body.is-home .sw-section,
body.is-home .solutions-decision,
body.is-home .testimonials,
body.is-home .news-ticker-section,
body.is-home .faq-section { background: #fff !important; background-image: none !important; }

body.is-home .context-band--hero,
body.is-home #products,
body.is-home .tile-grid-section.theme-dark,
body.is-home .ueber-final-cta { background: var(--hn-grad) !important; }

/* Navy-Blöcke, die direkt aufeinander folgen, verschmelzen (Kacheln + Abschluss) */
body.is-home .tile-grid-section.theme-dark { background: linear-gradient(180deg, #0c2149 0%, #0a1a38 100%) !important; }
body.is-home .ueber-final-cta { background: linear-gradient(180deg, #0a1a38 0%, #081428 100%) !important; padding-top: 0 !important; }
body.is-home .ueber-final-cta, body.is-home .ueber-final-cta * { color: #fff; }
body.is-home .ueber-final-cta p { color: rgba(232,234,238,.78) !important; }

/* Trennlinien/Divider zwischen Sektionen weg, der Farbwechsel trennt */
body.is-home .section-with-divider::before,
body.is-home .section-with-divider::after { display: none !important; }

/* ---------- Karten auf Navy ---------- */
body.is-home #products .lp-card--dark { background: var(--hn-card); border: 1px solid var(--hn-card-line); }
body.is-home #products .lp-card--redmind { background: var(--hn-card); }
body.is-home .tile-grid-wrap { background: transparent !important; border: 0 !important; box-shadow: none !important; }
body.is-home .tile-grid-section.theme-dark .tile { background: var(--hn-card) !important; border: 1px solid var(--hn-card-line); }
body.is-home .tile-grid-section .tile-img[src*="datacenter-rack"] { mix-blend-mode: screen; }
body.is-home .context-band--hero .context-band-card,
body.is-home .context-band--hero [class*="card"] { background: var(--hn-card); border-color: var(--hn-card-line); }

/* ---------- Karten auf Weiß: eine Handschrift ---------- */
body.is-home .gad-platform .gad-card,
body.is-home .news-ticker-section .nt-card,
body.is-home .solutions-decision .decision-row { border-color: #e3e9f2; }
body.is-home .news-ticker-section [class*="nt-"][class*="panel"] { background: #fff; }

/* ---------- Buttons: auf Weiß Navy, auf Navy Weiß ---------- */
body.is-home .nav-cta,
body.is-home .btn-primary,
body.is-home .ueber-final-cta .btn-primary { background: var(--hn-btn) !important; border-color: var(--hn-navy) !important; color: #fff !important; }
body.is-home .nav-cta:hover,
body.is-home .btn-primary:hover { background: #14315f !important; }

body.is-home .hero-pangolin .btn-primary,
body.is-home #products .btn-primary,
body.is-home .context-band--hero .btn-primary,
body.is-home .tile-grid-section .btn-primary,
body.is-home .ueber-final-cta .btn-primary,
body.is-home .rz-hero .btn-primary { background: #fff !important; border-color: #fff !important; color: var(--hn-navy) !important; }

body.is-home .btn-ghost { background: transparent !important; color: var(--hn-navy) !important; border: 1px solid rgba(11,28,61,.28) !important; }
body.is-home .hero-pangolin .btn-ghost,
body.is-home #products .btn-ghost,
body.is-home .context-band--hero .btn-ghost,
body.is-home .tile-grid-section .btn-ghost,
body.is-home .ueber-final-cta .btn-ghost { color: #fff !important; border-color: rgba(255,255,255,.4) !important; }

/* Textlinks: Navy auf Weiß */
body.is-home .sw-link { color: var(--hn-navy) !important; }
/* Einstieg: Ziel-Links immer blau, damit sofort klar ist, dass man tippen kann (Yusuf 2026-10-02) */
body.is-home .decision-link { color: #0071e3 !important; }
body.is-home .sw-link:hover,
body.is-home .decision-link:hover { color: #0071e3 !important; }

/* Karussell-Steuerung einheitlich */
body.is-home .lp-dot.is-active { background: var(--hn-navy) !important; }
body.is-home #products .lp-dot.is-active { background: #fff !important; }
body.is-home #products .lp-arrow { background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.22); color: #fff; }
body.is-home .sw-section .lp-arrow { border-color: #d6deea; color: var(--hn-navy); }

/* Hero-Buttons + „Demo buchen" (eigene Klassen) */
body.is-home .hero-btn-primary { background: #fff !important; color: var(--hn-navy) !important; border-color: #fff !important; box-shadow: none !important; }
body.is-home .hero-btn-primary:hover { background: #e8eef8 !important; }
body.is-home .hero-btn-ghost { background: transparent !important; color: #fff !important; border: 1px solid rgba(255,255,255,.4) !important; }
body.is-home .nav-mobile-cta { background: var(--hn-btn) !important; color: #fff !important; }
body.is-home .gad-cta-btn { background: var(--hn-btn) !important; color: #fff !important; box-shadow: 0 10px 24px rgba(11,28,61,.22) !important; }
body.is-home .gad-cta-btn:hover { background: #14315f !important; }
body.is-home .site-footer .btn-primary { background: #fff !important; border-color: #fff !important; color: var(--hn-navy) !important; }

/* =====================================================================
   V2 (Yusuf 2026-09-30): weniger Schnitte, lange Navy-Blöcke
   Block A Navy: Dienstleistungen → Führungsaufgabe → Zertifizierungen
   Block B Navy: Das macht uns aus → Nächster Schritt → Live-Nachrichten
   ===================================================================== */
body.is-home #products,
body.is-home .context-band--hero,
body.is-home .trust-belt,
body.is-home .tile-grid-section.theme-dark,
body.is-home .ueber-final-cta,
body.is-home .news-ticker-section { background: var(--hn-navy) !important; background-image: none !important; }

/* Übergänge innerhalb eines Blocks: kein doppeltes Padding */
body.is-home #products { padding-bottom: 40px !important; }
body.is-home .context-band--hero { padding: 48px 0 !important; }
body.is-home .trust-belt { padding-top: 24px !important; padding-bottom: 88px !important; }
body.is-home .ueber-final-cta { padding-bottom: 56px !important; }
body.is-home .news-ticker-section { padding-top: 40px !important; }

/* Zertifizierungen auf Navy */
body.is-home .trust-belt,
body.is-home .trust-belt .trust-belt-compliance-headline,
body.is-home .trust-belt .trust-belt-row-label { color: rgba(232,234,238,.72) !important; }
body.is-home .trust-belt .trust-belt-track .trust-sector { color: rgba(255,255,255,.86) !important; }
body.is-home .trust-belt .trust-belt-track .trust-sector svg { color: rgba(255,255,255,.86) !important; }
body.is-home .trust-belt .trust-belt-row { border-color: rgba(255,255,255,.10) !important; }
body.is-home .trust-belt .trust-belt-compliance-cta { background: transparent !important; color: #fff !important; border-color: rgba(255,255,255,.4) !important; }
body.is-home .trust-belt .trust-belt-marquee img,
body.is-home .trust-belt .trust-belt-row img { filter: brightness(0) invert(1); opacity: .85; }
body.is-home .trust-belt .trust-belt-marquee::before,
body.is-home .trust-belt .trust-belt-marquee::after { background: linear-gradient(90deg, var(--hn-navy), transparent) !important; }
body.is-home .trust-belt .trust-belt-marquee::after { background: linear-gradient(270deg, var(--hn-navy), transparent) !important; }

/* Live-Nachrichten auf Navy: Kopf hell, Karten bleiben weiß */
body.is-home .news-ticker-section h2 { color: #fff !important; }
body.is-home .news-ticker-section .news-ticker-lead,
body.is-home .news-ticker-section .news-ticker-meta,
body.is-home .news-ticker-section .news-ticker-meta a,
body.is-home .news-ticker-section .news-ticker-disclaimer { color: rgba(232,234,238,.66) !important; }
body.is-home .news-ticker-section .nt-live-badge { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.16); }

/* Rechenzentrum: kein Schwarz. Mobil liegt es auf Weiß mit Navy-Schrift */
body.is-home #rechenzentrum.rz-hero { background: #fff !important; }
@media (max-width: 767px) {
  body.is-home #rechenzentrum h2 { color: var(--hn-navy) !important; text-shadow: none !important; }
  body.is-home #rechenzentrum .eyebrow { color: #0071e3 !important; }
  body.is-home #rechenzentrum .rz-bullet-text strong { color: var(--hn-navy) !important; }
  body.is-home #rechenzentrum .rz-bullet-text span { color: #4a5768 !important; }
  body.is-home #rechenzentrum .rz-bullet-dot { color: #0071e3 !important; }
  body.is-home #rechenzentrum .btn-primary { background: var(--hn-navy) !important; border-color: var(--hn-navy) !important; color: #fff !important; }
  body.is-home #rechenzentrum .rz-hero-video { border-radius: 0; }
}
body.is-home .trust-belt .trust-belt-badges img { filter: brightness(0) invert(1); opacity: .92; }
body.is-home .trust-belt .trust-logo,
body.is-home .trust-belt .trust-logo img,
body.is-home .trust-belt .trust-logo svg { filter: brightness(0) invert(1); opacity: .85; }

/* =====================================================================
   V3 (Yusuf 2026-09-30)
   ===================================================================== */
/* 1 · Führungsaufgabe: Foto als Hintergrund, Ränder laufen weich ins Navy aus (siehe V5) */
body.is-home .context-band--hero { padding: 72px 0 !important; }
body.is-home .context-band--hero .context-hero-bg img { opacity: .62; }
body.is-home .context-band--hero .context-hero-overlay { display: block;
  background: linear-gradient(90deg, rgba(11,28,61,.88) 0%, rgba(11,28,61,.55) 55%, rgba(11,28,61,.70) 100%); }
body.is-home .context-band--hero .context-hero-grid { padding: 40px 48px; }
body.is-home .context-hero-point { background: rgba(11,28,61,.55); border-color: rgba(255,255,255,.16); }
@media (max-width: 860px) {
  body.is-home .context-band--hero { padding: 48px 0 !important; }
  body.is-home .context-band--hero .context-hero-grid { padding: 28px 22px; }
}

/* 2 · Dienstleistungen: schmalere Karten, fast drei nebeneinander. Schild klein oben rechts, Text volle Breite */
@media (min-width: 801px) {
  body.is-home #products .lp-card { width: calc((100% - 32px) / 2.55); min-height: 0; }
  body.is-home #products .lp-card-text { min-height: 520px; padding: 36px 34px 32px; }
  body.is-home #products .lp-card h3 { font-size: clamp(24px, 2.1vw, 30px); margin-right: 0; min-height: 0; }
  body.is-home #products .lp-claim { font-size: 16.5px; }
  body.is-home #products .lp-desc,
  body.is-home #products .lp-modules { max-width: 100%; }
  body.is-home #products .lp-desc { font-size: 15px; }
  body.is-home #products .lp-modules li { font-size: 15px; }
  body.is-home #products .lp-card { overflow: hidden; }
  body.is-home #products .lp-card-text { position: relative; z-index: 1; }
  body.is-home #products .lp-card-image { top: auto; right: -34px; bottom: -30px; width: 300px; height: 300px; background: transparent !important; border-radius: 0; z-index: 0; pointer-events: none; }
  body.is-home #products .lp-image-shield { height: 250px !important; max-width: 260px; opacity: .38 !important; filter: drop-shadow(0 20px 40px rgba(0,0,0,.35)) !important; }
  body.is-home #products .lp-card:hover .lp-image-shield { opacity: .5 !important; transform: none; }
  body.is-home #products .lp-card h3 { margin-right: 0; }
  body.is-home #products .lp-cta { margin-top: auto; }
}

/* 4 · Live-Nachrichten: keine Glas-Rahmen um die Kategorien, Inhalte liegen direkt auf Navy */
body.is-home .news-ticker-section .nt-section { background: transparent !important; border: 0 !important; box-shadow: none !important;
  -webkit-backdrop-filter: none !important; backdrop-filter: none !important; padding: 0 !important; }
body.is-home .news-ticker-section .nt-section::before { display: none !important; }
body.is-home .news-ticker-section .nt-section-head { border-bottom-color: rgba(255,255,255,.14) !important; }
body.is-home .news-ticker-section .nt-section-label { color: #fff !important; }
body.is-home .news-ticker-section .news-ticker { gap: 28px 20px !important; }

/* =====================================================================
   V4 (Yusuf 2026-09-30)
   ===================================================================== */
/* Überschriften: auf Weiß Navy (Akzent als helleres Navy-Blau), auf Navy komplett Weiß */
body.is-home main h2 { color: var(--hn-navy); }
body.is-home main h2 .accent-blue { color: #2b8aff !important; } /* Hero-Blau, nur große Überschriften */
body.is-home #products h2, body.is-home #products h2 .accent-blue,
body.is-home .context-band--hero h2, body.is-home .context-band--hero h2 .accent-blue,
body.is-home .tile-grid-section h2, body.is-home .tile-grid-section h2 .accent-blue,
body.is-home .ueber-final-cta h2, body.is-home .ueber-final-cta h2 .accent-blue,
body.is-home .news-ticker-section h2 { color: #fff !important; }
/* Rechenzentrum: Desktop liegt Schrift auf dem Video (weiß), mobil auf Weiß (Navy, siehe unten) */
@media (min-width: 768px) { body.is-home #rechenzentrum h2 { color: #fff !important; } body.is-home #rechenzentrum h2 .accent-datacenter { color: var(--accent-datacenter) !important; } }

/* Konsole: Navy-Akzente statt Hellblau */
body.is-home .gad-platform-eyebrow { color: #0071e3 !important; }
body.is-home .gad-platform-headline { max-width: none !important; }

/* Das macht uns aus: sechs gleich große Kacheln, weiße Icons, größere Schrift */
body.is-home .tile-grid-section .tile, body.is-home .tile-grid-section .tile * { color: #fff; }
body.is-home .tile-grid-section .tile .sub, body.is-home .tile-grid-section .tile .tile-eyebrow { color: rgba(232,234,238,.78) !important; }
body.is-home .tile-grid-section .stat-viz * { stroke: #fff !important; }
body.is-home .tile-grid-section .stat-viz [fill]:not([fill="none"]) { fill: #fff !important; }
body.is-home .tile-grid-section .stat-viz [stroke-opacity], body.is-home .tile-grid-section .stat-viz [opacity] { opacity: .5; }
@media (min-width: 900px) { body.is-home .gad-platform-head { max-width: none !important; } body.is-home .gad-platform-headline { white-space: nowrap; } }

/* Zertifizierungen mittig wie bisher, nur luftiger (Yusuf 2026-09-30) */
body.is-home .trust-belt .trust-belt-badges { gap: 56px !important; }
body.is-home .trust-belt .trust-belt-compliance { margin-bottom: 36px !important; }
body.is-home .trust-belt .trust-belt-row { padding-top: 34px !important; padding-bottom: 34px !important; }
@media (max-width: 860px) { body.is-home .trust-belt .trust-belt-badges { gap: 20px !important; } }
/* Das macht uns aus: kompakt in der Mitte, quadratische Kacheln wie bisher; freigestelltes Rack gleich groß wie die GAD-Engine */
body.is-home .tile-grid-section .tile-img img[src*="datacenter-rack"] { max-height: 118px; width: auto; }

/* =====================================================================
   Feinschliff 2026-09-30 (Yusuf): Elemente auf Navy, Luft, einheitliche Buttons
   ===================================================================== */
/* Hero-Ghost-Button: kein Unschärfe-Effekt (färbte ihn mobil dunkelblau), echter Umriss */
body.is-home .hero-btn-ghost { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
/* Rechenzentrum mobil: Akzent wie bisher blau, Rest Navy; Button wie alle anderen */
@media (max-width: 767px) {
  body.is-home #rechenzentrum h2 .accent-datacenter { color: #0071e3 !important; }
  body.is-home #rechenzentrum .btn-primary { background: var(--hn-btn) !important; border-color: var(--hn-btn) !important; }
}
/* Info-Knöpfe auf Navy weiß */
body.is-home .trust-belt .gc-info-btn,
body.is-home .tile-grid-section .gc-info-btn { color: rgba(255,255,255,.85) !important; }
/* Zertifizierungen/Branchen/Technologie: mehr Luft zwischen Beschriftung und Inhalt */
body.is-home .trust-belt .trust-belt-compliance-headline { margin-bottom: 30px !important; }
body.is-home .trust-belt .trust-belt-row-label { margin-bottom: 28px !important; }
body.is-home .trust-belt .trust-belt-compliance-cta { margin-top: 30px !important; }
body.is-home .trust-belt .trust-belt-partners { gap: 64px !important; }
/* Das macht uns aus: wieder in einer Glaskarte (wie früher der graue Rahmen), nur ab Tablet */
@media (min-width: 768px) {
  body.is-home .tile-grid-wrap { max-width: 760px !important; padding: 44px 48px !important; border-radius: 28px;
    background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,.12) !important;
    -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: 0 30px 70px rgba(0,0,0,.25) !important; }
  body.is-home .tile-grid-section.theme-dark .tile { background: rgba(255,255,255,.06) !important; border-color: rgba(255,255,255,.10); }
}
/* Live-Nachrichten: luftiger, Wisch-Punkte auf Navy sichtbar */
body.is-home .news-ticker-section { padding-top: 72px !important; padding-bottom: 104px !important; }
body.is-home .news-ticker-section h2 { margin-top: 18px !important; margin-bottom: 14px !important; }
body.is-home .news-ticker-section .news-ticker-lead { margin-bottom: 44px !important; }
body.is-home .news-ticker-section .news-ticker { gap: 44px 28px !important; }
body.is-home .news-ticker-section .nt-section-head { margin-bottom: 18px !important; }
body.is-home .news-ticker-section .nt-dots { margin-top: 12px !important; }
body.is-home .news-ticker-section .nt-dot-btn { background: rgba(255,255,255,.38); background-clip: content-box; }
body.is-home .news-ticker-section .nt-dot-btn:hover { background: rgba(255,255,255,.7); background-clip: content-box; }
body.is-home .news-ticker-section .news-ticker-meta { margin-top: 40px !important; }
/* Wisch-Punkte: aktiver Punkt in Kategoriefarbe, alle anderen weiß */
body.is-home .news-ticker-section .nt-dot-btn { background: rgba(255,255,255,.55); background-clip: content-box; }
body.is-home .news-ticker-section .nt-dot-btn.nt-dot-on { background: var(--nt, #fff); background-clip: content-box; }
/* Rechenzentrum mobil: Eyebrow ohne Leucht-Schatten */
@media (max-width: 767px) { body.is-home #rechenzentrum .eyebrow, body.is-home #rechenzentrum h2 { text-shadow: none !important; } }
/* Zitat-Umschalter: aktiver Chip Navy statt Schwarz */
body.is-home .testimonial-avatar.active { background: var(--hn-btn) !important; border-color: var(--hn-btn) !important; }
/* Mindestgröße für Fingertipps (44 px) */
body.is-home main .btn,
body.is-home .trust-belt .trust-belt-compliance-cta { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
body.is-home .hero-pangolin .gc-info-btn { color: rgba(255,255,255,.85) !important; }

/* =====================================================================
   V5 (Yusuf 2026-09-30)
   ===================================================================== */
/* Führungsaufgabe: kein Rahmen, Foto blendet an allen Seiten ins Navy aus */
body.is-home .context-band--hero .context-hero-bg {
  inset: 0 max(0px, calc((100% - 1440px) / 2));
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 22%, #000 78%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 24%, #000 76%, transparent 100%);
  -webkit-mask-composite: source-in;
          mask-image: linear-gradient(90deg, transparent 0%, #000 22%, #000 78%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 24%, #000 76%, transparent 100%);
          mask-composite: intersect; }
body.is-home .context-band--hero .context-hero-overlay { inset: 0; border-radius: 0;
  background: linear-gradient(90deg, rgba(11,28,61,.80) 0%, rgba(11,28,61,.45) 55%, rgba(11,28,61,.62) 100%); }

/* Dienstleistungen: Titel, Text, Stichpunkte, Link unten links; keine Claim-Zeile */
body.is-home #products .lp-card h3 { min-height: 0; margin: 0 0 14px; color: #fff; }
body.is-home #products .lp-desc { margin: 0 0 20px; }
body.is-home #products .lp-card .lp-cta { color: #fff; margin-top: auto; padding-top: 24px; }
body.is-home #products .lp-card-text { height: 100%; box-sizing: border-box; }
/* Servicefarbe als dezenter Verlauf über dem Karten-Navy */
body.is-home #products .lp-card--cyber { background:
  radial-gradient(120% 85% at 100% 100%, rgba(43,138,255,.26) 0%, transparent 62%),
  linear-gradient(160deg, rgba(43,138,255,.12) 0%, transparent 50%), var(--hn-card); }
body.is-home #products .lp-card--grc { background:
  radial-gradient(120% 85% at 100% 100%, rgba(138,148,164,.24) 0%, transparent 62%),
  linear-gradient(160deg, rgba(138,148,164,.12) 0%, transparent 50%), var(--hn-card); }
body.is-home #products .lp-card--ai { background:
  radial-gradient(120% 85% at 100% 100%, rgba(46,170,112,.26) 0%, transparent 62%),
  linear-gradient(160deg, rgba(46,170,112,.12) 0%, transparent 50%), var(--hn-card); }

/* Live-Nachrichten: Wisch-Punkte als voller Punkt (Pseudo-Element), Trefferfläche 24px bleibt */
body.is-home .news-ticker-section .nt-dot-btn,
body.is-home .news-ticker-section .nt-dot-btn:hover,
body.is-home .news-ticker-section .nt-dot-btn.nt-dot-on { background: transparent !important; padding: 0 !important;
  display: inline-flex; align-items: center; justify-content: center; }
body.is-home .news-ticker-section .nt-dot-btn::before { content: ""; width: 8px; height: 8px; border-radius: 50%;
  background: rgba(255,255,255,.72); transition: background .2s, transform .2s; }
body.is-home .news-ticker-section .nt-dot-btn:hover::before { background: #fff; }
body.is-home .news-ticker-section .nt-dot-btn.nt-dot-on::before { background: var(--nt, #fff); transform: scale(1.3); }

/* Meldungen: schmalere, höhere Karten, drei nebeneinander (Desktop) */
@media (min-width: 720px) {
  body.is-home .news-ticker-section .nt-carousel--text .nt-card--text { flex: 0 0 calc((100% - 24px) / 3); min-height: 128px; padding: 18px 18px; }
  body.is-home .news-ticker-section .nt-card--text .nt-card-title { -webkit-line-clamp: 3; }
}
/* FAQ-Akzent „Antworten." wie alle Akzente auf Weiß: Hero-Blau */
body.is-home .faq-section .faq-headline-answer { color: #2b8aff !important; }
/* Mehr Abstand um „Warum jetzt" (Yusuf 2026-09-30): Dienstleistungen ↔ Bild ↔ Compliance-Standards */
body.is-home #products { padding-bottom: 72px !important; }
body.is-home .context-band--hero { padding: 104px 0 !important; }
body.is-home .trust-belt { padding-top: 72px !important; }
@media (max-width: 860px) {
  body.is-home #products { padding-bottom: 48px !important; }
  body.is-home .context-band--hero { padding: 64px 0 !important; }
  body.is-home .trust-belt { padding-top: 48px !important; }
}
/* RedMentis-Kachel: Bordeaux aus dem Schild-Logo statt Orange/Gelb (wie /redmentis, 2026-09-30) */
body.is-home .sw-visual--rm .rm-hero-comp[data-phase="0"] .rm-hero-score__hex { background: #8a0a12 !important; }
body.is-home .sw-visual--rm .rm-hero-comp[data-phase="1"] .rm-hero-score__hex { background: #a8323a !important; }
body.is-home .sw-visual--rm .rm-hero-comp[data-phase="2"] .rm-hero-score__hex { background: #b85a60 !important; }
body.is-home .sw-body--rm .sw-link { color: #8a0a12 !important; }
/* RedMentis-Kachel: Angriffspfad-Grafik wie /redmentis#wie (Yusuf 2026-09-30), Navy wie MedMentis/BsMind */
body.is-home .sw-visual--rmt { flex-direction: column; align-items: stretch; justify-content: space-between; gap: 14px; padding: 28px 30px 22px !important;
  background: linear-gradient(160deg,#0b1c3d 0%,#14315f 62%,#0e2547 100%) !important; border-color: transparent !important; }
body.is-home .rm-logo img { width: 38px; height: 38px; object-fit: contain; filter: drop-shadow(0 6px 16px rgba(138,10,18,.45)); }
body.is-home .rm-logo .bs-logo-txt b { font-size: 22px; }
body.is-home .rm-logo .bs-logo-txt b i { color: #dc7e84; }
.rmt { display: block; width: 100%; height: auto; max-height: 320px; overflow: visible; font-family: inherit; }
.rmt-box { fill: #233250; stroke: rgba(255,255,255,.42); stroke-width: 1.4; }
.rmt-box--atk { fill: #3c223a; stroke: rgba(208,85,92,.85); }
.rmt-box--crown { fill: #2d3c58; stroke: rgba(255,255,255,.6); }
.rmt-ico { fill: none; stroke: #fff; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.rmt-hit { fill: none; stroke: #d0555c; stroke-width: 2.5; opacity: 0; }
.rmt-lbl { font-size: 15px; font-weight: 600; fill: rgba(232,234,238,.9); }
.rmt-name { font-size: 17px; font-weight: 800; fill: #fff; letter-spacing: .04em; }
.rmt-sub { font-size: 13.5px; font-weight: 500; fill: rgba(232,234,238,.75); }
.rmt-base { stroke: rgba(255,255,255,.22); stroke-width: 2; fill: none; }
.rmt-red { stroke: #d0555c; stroke-width: 3; fill: none; stroke-linecap: round; }
.rmt-beam { stroke: #9fd3ff; stroke-width: 1.8; stroke-dasharray: 3 7; fill: none; stroke-linecap: round; }
.rmt-pulse { fill: none; stroke: #dc7e84; stroke-width: 1.4; opacity: 0; }
.rmt-orbit-ring { fill: none; stroke: rgba(255,255,255,.28); stroke-width: 1.2; stroke-dasharray: 3 4; }
.rmt-orbit { transform-origin: 240px 98px; transform-box: view-box; }
.rmt-pill rect { fill: rgba(255,255,255,.12); stroke: rgba(255,255,255,.35); }
.rmt-pilltxt { font-size: 14px; font-weight: 700; fill: #fff; }
.rmt-token-core { fill: #d0555c; stroke: #fff; stroke-width: 2; }
.rmt-token-ring { fill: none; stroke: rgba(208,85,92,.55); stroke-width: 2; }
.rmt-gate, .rmt-pill, .rmt-pulse, .rmt-token { transform-box: fill-box; transform-origin: center; }
.rmt-token { opacity: 0; }
@media (prefers-reduced-motion: no-preference) {
  .rmt-red { stroke-dasharray: 1; stroke-dashoffset: 1; animation: rmtDraw 10s linear infinite; }
  .rmt-token { animation: rmtTok 10s linear infinite; }
  .rmt-hit { animation: rmtHit 10s linear infinite; animation-delay: var(--d); }
  .rmt-gate { animation: rmtGate 10s cubic-bezier(.16,1,.3,1) infinite; }
  .rmt-pill { animation: rmtPill 10s ease-out infinite; }
  .rmt-beam { animation: rmtBeam 1.2s linear infinite; }
  .rmt-pulse { animation: rmtPulse 3.2s ease-out infinite; }
  .rmt-orbit { animation: rmtSpin 14s linear infinite; }
}
@keyframes rmtDraw { 0%, 4% { stroke-dashoffset: 1; } 56% { stroke-dashoffset: 0; } 94% { stroke-dashoffset: 0; opacity: 1; } 100% { stroke-dashoffset: 0; opacity: 0; } }
@keyframes rmtTok { 0% { opacity: 0; transform: none; } 4% { opacity: 1; transform: none; } 56% { opacity: 1; transform: translateX(var(--dist)); } 60%, 100% { opacity: 0; transform: translateX(var(--dist)); } }
@keyframes rmtHit { 0% { opacity: 0; } 2% { opacity: 1; } 8%, 100% { opacity: 0; } }
@keyframes rmtGate { 0%, 44% { opacity: 0; transform: scale(.4); } 50% { opacity: 1; transform: scale(1.12); } 54% { transform: scale(1); } 94% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(1); } }
@keyframes rmtPill { 0%, 58% { opacity: 0; transform: translateY(6px); } 64% { opacity: 1; transform: none; } 94% { opacity: 1; transform: none; } 100% { opacity: 0; transform: none; } }
@keyframes rmtBeam { to { stroke-dashoffset: -20; } }
@keyframes rmtPulse { 0% { opacity: .8; transform: scale(1); } 60%, 100% { opacity: 0; transform: scale(1.7); } }
@keyframes rmtSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .rmt-token { opacity: 1; transform: translateX(var(--dist)); } .rmt-hit { opacity: 0; } }
@media (max-width: 900px) { body.is-home .sw-visual--rmt { padding: 20px 16px 16px !important; gap: 8px; } .rmt { max-height: none; } }
/* Kacheln BsMind + RedMentis ohne Logo, Grafik immer vollständig und mittig (wie MedMentis) */
body.is-home .sw-visual--bs, body.is-home .sw-visual--rmt { justify-content: center !important; align-items: center !important; }
body.is-home .sw-visual--bs .bsi, body.is-home .sw-visual--rmt .rmt { width: 100%; height: 100%; max-height: none; min-height: 0; flex: 1 1 auto; }

/* ===== #defense-engine: Demoansicht 1:1 aus page-redmentis.css (.rmx-*), 2026-09-30 =====
   Quelle: css/page-redmentis.css Abschnitt 1, hier auf die Sektion begrenzt. Bei Änderungen dort hier nachziehen.
   Kopfzeile links trägt das GAD-Defense-Engine-Branding (.gad-dash-brand aus style.css). */
#defense-engine { --rm-navy: #0b1c3d; --rm-btn: #16336a; --rm-line: #e3e9f2;
--rm-red-deep: #4e0308; --rm-red-dark: #6a060d; --rm-red: #8a0a12; --rm-red-600: #a8323a; --rm-red-500: #b85a60; --rm-red-400: #c9787d;
--rm-red-tint: #f7eced; --rm-red-soft: rgba(138,10,18,.07); --rm-red-line: rgba(138,10,18,.24);
--rm-red-text: var(--rm-red); }
@keyframes rmx-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

#defense-engine .rmx-frame { position: relative; max-width: 1180px; margin: 0 auto; background: #fff; border: 1px solid rgba(20,40,80,.10); border-radius: 20px; overflow: hidden;
  box-shadow: 0 30px 90px rgba(20,40,80,.16), 0 4px 12px rgba(20,40,80,.06); font-family: 'Inter', -apple-system, sans-serif; }
#defense-engine .rmx-topbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 10px 18px; background: #fff; border-bottom: 1px solid rgba(20,40,80,.08); }
#defense-engine .rmx-cycle:focus-visible { outline: 2px solid #0071e3; outline-offset: 2px; }
#defense-engine .gad-dash-brand, #defense-engine .rmx-badge { white-space: nowrap; }
#defense-engine .rmx-meta { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
#defense-engine .rmx-badge { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--rm-red-text); padding: 4px 10px; border-radius: 999px; background: var(--rm-red-soft); border: 1px solid var(--rm-red-line); }
#defense-engine .rmx-cycle { width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(20,40,80,.14); background: #fff; color: var(--rm-navy); display: grid; place-items: center; cursor: pointer; transition: background 180ms ease, color 180ms ease; }
#defense-engine .rmx-cycle svg { width: 18px; height: 18px; }
#defense-engine .rmx-cycle:hover { background: var(--rm-btn); border-color: var(--rm-btn); color: #fff; }

#defense-engine .rmx-app { display: grid; grid-template-columns: 184px minmax(0,1fr); min-height: 612px; } 
#defense-engine .rmx-rail { background: var(--rm-navy); padding: 16px 10px; display: flex; flex-direction: column; gap: 4px; }
#defense-engine .rmx-rail-tabs { display: flex; flex-direction: column; gap: 4px; }
#defense-engine .rmx-navitem { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 44px; padding: 10px 12px; border: 0; border-radius: 8px; background: transparent; font: inherit; font-size: 13px; font-weight: 500; text-align: left; color: rgba(232,234,238,.75); white-space: nowrap; cursor: pointer;
  transition: background 180ms ease, color 180ms ease; -webkit-tap-highlight-color: transparent; }
#defense-engine .rmx-navitem:hover { background: rgba(255,255,255,.07); color: #fff; }
#defense-engine .rmx-navitem:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
#defense-engine .rmx-navitem svg { width: 16px; height: 16px; flex-shrink: 0; }
#defense-engine .rmx-navitem.is-active { background: rgba(255,255,255,.12); color: #fff; font-weight: 600; }
#defense-engine .rmx-rail-foot { margin-top: auto; padding: 12px; font-size: 11.5px; line-height: 1.45; color: rgba(232,234,238,.6); border-top: 1px solid rgba(255,255,255,.12); }
#defense-engine .rmx-rail-foot b { display: block; color: #fff; font-weight: 600; }
#defense-engine .rmx-canvas { min-width: 0; display: flex; flex-direction: column; }
#defense-engine .rmx-strip { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 10px 22px; border-bottom: 1px solid rgba(20,40,80,.08); font-size: 12px; color: #5f6b7d; }
#defense-engine .rmx-strip b { color: var(--rm-navy); font-weight: 600; }
#defense-engine .rmx-panel { display: none; padding: 20px 22px 24px; min-width: 0; }
#defense-engine .rmx-panel.is-active { display: block; animation: rmx-in 320ms ease both; }
#defense-engine .rmx-title { font-size: 17px; font-weight: 700; letter-spacing: -.01em; color: var(--rm-navy); margin: 0 0 16px; }

#defense-engine .rmx-stats { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; margin-bottom: 16px; }
#defense-engine .rmx-stat { border: 1px solid rgba(20,40,80,.10); border-radius: 12px; padding: 12px 14px; background: #fff; }
#defense-engine .rmx-stat-label { font-size: 11.5px; color: #4a5768; margin-bottom: 8px; }
#defense-engine .rmx-stat-value { display: flex; align-items: center; gap: 8px; font-size: 26px; font-weight: 700; letter-spacing: -.02em; line-height: 1; color: var(--rm-navy); font-variant-numeric: tabular-nums; }
#defense-engine .rmx-stat-value.is-red { color: var(--rm-red-deep); } #defense-engine .rmx-stat-value.is-orange { color: var(--rm-red); } #defense-engine .rmx-stat-value.is-green { color: #1e7e34; } #defense-engine .rmx-stat-value.is-amber { color: #8a5a00; }
#defense-engine .rmx-grade { display: inline-grid; place-items: center; width: 24px; height: 27px; font-size: 13px; color: #fff; background: var(--rm-red); clip-path: polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }

#defense-engine .rmx-cols { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(0,1fr); gap: 14px; }
#defense-engine .rmx-card { border: 1px solid rgba(20,40,80,.10); border-radius: 12px; padding: 16px 18px; background: #fff; min-width: 0; }
#defense-engine .rmx-card h5 { font-size: 13px; font-weight: 600; color: var(--rm-navy); margin: 0 0 8px; }
#defense-engine .rmx-card-note { font-size: 12px; color: #5f6b7d; margin: 10px 0 0; line-height: 1.5; }
#defense-engine .rmx-trend { width: 100%; height: auto; display: block; }
#defense-engine .rmx-trend text { font-size: 11px; fill: #5f6b7d; font-family: inherit; }
#defense-engine .rmx-trend .rmx-trend-val { font-weight: 700; fill: var(--rm-navy); }

#defense-engine .rmx-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 0; border-top: 1px solid rgba(20,40,80,.07); }
#defense-engine .rmx-row:first-of-type { border-top: 0; }
#defense-engine .rmx-row-main { min-width: 0; }
#defense-engine .rmx-row-title { font-size: 13px; color: #16233e; font-weight: 600; }
#defense-engine .rmx-row-sub { font-size: 11.5px; color: #5f6b7d; margin-top: 3px; }
#defense-engine .rmx-sev { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; padding: 3px 9px; border-radius: 999px; white-space: nowrap; flex-shrink: 0; }
#defense-engine .rmx-sev--crit { background: var(--rm-red-deep); color: #fff; }
#defense-engine .rmx-sev--high { background: var(--rm-red-tint); color: var(--rm-red); }
#defense-engine .rmx-sev--med { background: #f6f1f1; color: #8a4a4f; }
#defense-engine .rmx-sev--low, #defense-engine .rmx-sev--ok { background: #e8f6ee; color: #1e7e34; }
#defense-engine .rmx-sev--info { background: #eef3f9; color: var(--rm-btn); }


#defense-engine .rmx-chain { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 8px; }
#defense-engine .rmx-chip { font-size: 12px; font-weight: 500; color: #16233e; padding: 4px 10px; border-radius: 8px; background: #f3f6fb; border: 1px solid rgba(20,40,80,.08); white-space: nowrap; }
#defense-engine .rmx-chip--target { background: var(--rm-red-tint); border-color: var(--rm-red-line); color: var(--rm-red); font-weight: 600; }
#defense-engine .rmx-chip--cut { text-decoration: line-through; color: #5f6b7d; }
#defense-engine .rmx-arrow { color: #8a94a4; font-size: 12px; }
#defense-engine .rmx-path { padding: 14px 0; border-top: 1px solid rgba(20,40,80,.07); }
#defense-engine .rmx-path:first-of-type { border-top: 0; padding-top: 4px; }
#defense-engine .rmx-path-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }


#defense-engine .rmx-bars { display: grid; gap: 10px; }
#defense-engine .rmx-bar { display: grid; grid-template-columns: 76px minmax(0,1fr) 26px; align-items: center; gap: 10px; font-size: 12px; color: #4a5768; }
#defense-engine .rmx-bar-track { height: 8px; border-radius: 4px; background: #eef3f9; overflow: hidden; }
#defense-engine .rmx-bar-fill { display: block; height: 100%; border-radius: 4px; width: var(--w); }
#defense-engine .rmx-bar b { color: var(--rm-navy); text-align: right; font-variant-numeric: tabular-nums; }

/* Handy/Tablet (Yusuf 2026-10-01): Demo bleibt im Desktop-Layout (1152 x 679 px) und wird als Ganzes
   proportional auf die Containerbreite verkleinert. Faktor rein per CSS: tan(atan2(100cqw, 1152px)) = Breite / 1152.
   Klickflächen skalieren mit, Seitenleiste und Pfeil bleiben bedienbar. */
@media (max-width: 900px) {
  body.is-home #defense-engine .gad-dash-wrap { container-type: inline-size; }
  #defense-engine .rmx-frame { --dash-s: tan(atan2(100cqw, 1152px)); width: 1152px; max-width: none; height: 679px;
    transform: scale(var(--dash-s)); transform-origin: 0 0; margin: 0 0 calc(679px * (var(--dash-s) - 1));
    box-shadow: 0 30px 90px rgba(20,40,80,.16); }
}
@media (prefers-reduced-motion: reduce) { #defense-engine .rmx-panel.is-active { animation: none; } }
/* Abstände #defense-engine: Überschrift → Demo → Button → Sektionsende (2026-09-30, Kacheln entfernt) */
body.is-home #defense-engine { padding: 96px 0; }
body.is-home #defense-engine .gad-platform-head { margin-bottom: 44px; }
body.is-home #defense-engine .gad-dash-cta { margin-top: 40px; }
@media (max-width: 900px) { body.is-home #defense-engine { padding: 80px 0; } body.is-home #defense-engine .gad-platform-head { margin-bottom: 32px; } }
@media (max-width: 480px) { body.is-home #defense-engine { padding: 64px 0; } body.is-home #defense-engine .gad-platform-head { margin-bottom: 24px; } body.is-home #defense-engine .gad-dash-cta { margin-top: 28px; } }
/* Kurze Einführung unter der Konsolen-Überschrift (Yusuf 2026-09-30) */
body.is-home .gad-platform-intro { max-width: 760px; margin: 12px auto 0; text-align: center; font-size: 15px; line-height: 1.55; color: #5f6b7d; }

/* ---------- Zitate + Einstieg als ein weißer Abschnitt (Yusuf 2026-10-01) ----------
   Überschrift + Satz linksbündig wie die anderen Sektionen, darunter 2-spaltiges Kartenraster.
   Ganze Karte klickbar (Link-Fläche per ::after über die Karte gezogen). */
body.is-home .testimonials { padding-bottom: 56px; }
body.is-home .solutions-decision { padding: 56px 0 104px; }
body.is-home .solutions-decision h2 { font-size: clamp(28px,3.4vw,44px); line-height: 1.12; letter-spacing: -.02em; margin: 0; max-width: 30ch; }
body.is-home .decision-lead { margin: 14px 0 0; max-width: 620px; font-size: 17px; line-height: 1.55; color: #5f6b7d; }
body.is-home .decision-grid { list-style: none; margin: 40px 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
body.is-home .decision-card { position: relative; display: flex; align-items: flex-start; gap: 16px; padding: 22px 24px; background: #fff; border: 1px solid #e3e9f2; border-radius: 16px; box-shadow: 0 1px 2px rgba(11,28,61,.04); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
body.is-home .decision-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
body.is-home .decision-card:hover { transform: translateY(-3px); border-color: #b9cbe3; box-shadow: 0 18px 40px rgba(11,28,61,.10); }
body.is-home .decision-card:focus-within { border-color: #0071e3; }
body.is-home .decision-icon { flex: none; width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; background: #eef3f9; color: var(--hn-navy); }
body.is-home .decision-text { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; }
body.is-home .decision-q { font-size: 17px; line-height: 1.4; font-weight: 600; color: var(--hn-ink); }
body.is-home .decision-link { display: inline-flex; align-items: center; gap: 6px; min-height: 24px; font-size: 14px; font-weight: 600; text-decoration: none; }
body.is-home .decision-link::after { content: ''; position: absolute; inset: 0; border-radius: 16px; }
body.is-home .decision-link:focus-visible { outline: none; }
body.is-home .decision-link:focus-visible::after { outline: 2px solid #0071e3; outline-offset: 2px; }
body.is-home .decision-arrow { display: inline-block; transition: transform .25s ease; }
body.is-home .decision-card:hover .decision-arrow { transform: translateX(4px); }
body.is-home .decision-card:hover .decision-link { color: #0071e3 !important; }
@media (max-width: 760px) {
  body.is-home .testimonials { padding-bottom: 40px; }
  body.is-home .solutions-decision { padding: 40px 0 72px; }
  body.is-home .decision-lead { font-size: 16px; }
  body.is-home .decision-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 28px; }
  body.is-home .decision-card { padding: 18px; gap: 14px; }
  body.is-home .decision-q { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { body.is-home .decision-card, body.is-home .decision-arrow { transition: none; } body.is-home .decision-card:hover { transform: none; } }
/* Konsolen-Intro: zwei Sätze, Desktop max. zwei Zeilen */
body.is-home .gad-platform-intro { max-width: 900px; }
/* Einstieg wieder als Zeilen untereinander (Yusuf 2026-10-01): Frage links, Ziel mit Pfeil rechts, größer */
body.is-home .decision-grid { grid-template-columns: 1fr !important; gap: 0 !important; border-top: 1px solid #e3e9f2; }
body.is-home .decision-card { grid-column: auto !important; align-items: center; gap: 20px; padding: 26px 8px; border: 0; border-bottom: 1px solid #e3e9f2; border-radius: 0; box-shadow: none; background: transparent; }
body.is-home .decision-card:hover { transform: none; box-shadow: none; background: #f6f9fd; border-color: #e3e9f2; }
body.is-home .decision-icon { width: 48px; height: 48px; border-radius: 12px; }
body.is-home .decision-icon svg { width: 24px; height: 24px; }
body.is-home .decision-text { flex: 1 1 auto; flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; }
body.is-home .decision-q { font-size: 20px; line-height: 1.35; font-weight: 600; }
body.is-home .decision-link { flex: none; font-size: 15px; white-space: nowrap; }
body.is-home .decision-link::after { border-radius: 0; }
@media (max-width: 760px) {
  body.is-home .decision-card { padding: 20px 4px; align-items: flex-start; }
  body.is-home .decision-text { flex-direction: column; align-items: flex-start; gap: 10px; }
  body.is-home .decision-q { font-size: 17px; }
  body.is-home .decision-link { white-space: normal; }
}
/* Live-Nachrichten in einer Glaskarte wie „Das macht uns aus" (Yusuf 2026-10-01) */
@media (min-width: 768px) {
  body.is-home .news-ticker-section > .container { max-width: 1180px; padding: 48px 52px 44px !important; border-radius: 28px;
    background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12);
    -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: 0 30px 70px rgba(0,0,0,.25); }
}
/* Einstieg jetzt über den Zitaten: Abstände tauschen */
body.is-home .solutions-decision { padding: 104px 0 56px !important; }
body.is-home .testimonials { padding-top: 56px !important; padding-bottom: 104px !important; }

/* ---------- Security-Ticker als Ring (js/news-ticker-ring.js + css/news-ring.css), Navy-Fassung (2026-10-01) ---------- */
body.is-home .news-ticker-section .ntr-tab { background: transparent; border-color: rgba(255,255,255,.28); color: #fff; }
body.is-home .news-ticker-section .ntr-tab:hover { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.6); }
body.is-home .news-ticker-section .ntr-tab[aria-pressed="true"] { background: #fff; border-color: #fff; color: #0b1c3d; }
body.is-home .news-ticker-section .ntr-tab[aria-pressed="true"] .ntr-tab-dot { box-shadow: none; }
body.is-home .news-ticker-section .ntr-tab:focus-visible,
body.is-home .news-ticker-section .nr-ring.is-ring:focus-visible,
body.is-home .news-ticker-section .nr-ctrl button:focus-visible { outline-color: #9fd3ff; }
/* hintere Karten eine Stufe heller als der Grund, damit sie sich abheben */
body.is-home .news-ticker-section .nr-ring.is-ring .nr-card:not(.is-front) { background: #1a3563; border-color: rgba(255,255,255,.16); box-shadow: 0 22px 50px rgba(0,0,0,.35); }
body.is-home .news-ticker-section .nr-ring.is-ring .nr-card.is-front { border-color: #fff; box-shadow: 0 34px 80px rgba(0,0,0,.45); }
body.is-home .news-ticker-section .nr-prev,
body.is-home .news-ticker-section .nr-next { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.3); color: #fff; }
body.is-home .news-ticker-section .nr-prev:hover,
body.is-home .news-ticker-section .nr-next:hover { background: rgba(255,255,255,.16); border-color: #fff; }
body.is-home .news-ticker-section .nr-dots button { background: rgba(255,255,255,.35); background-clip: content-box; }
body.is-home .news-ticker-section .nr-dots button[aria-current="true"] { background: #fff; background-clip: content-box; }
body.is-home .news-ticker-section .ntr-alerts { border-top-color: rgba(255,255,255,.14); }
body.is-home .news-ticker-section .ntr-alerts-head h3 { color: #fff; }
/* Meldungen: weiße Karten auf Navy, Hover nur Rahmen + Schatten, Pfeile wie beim Ring */
body.is-home .news-ticker-section .ntr-alert-card { border-color: rgba(255,255,255,.9); box-shadow: 0 1px 2px rgba(0,0,0,.2);
  background: radial-gradient(120% 90% at 100% 100%, rgba(214,64,52,.34) 0%, rgba(214,64,52,0) 65%),
    linear-gradient(160deg, #fff3f2 0%, #f9dcd9 100%); }
body.is-home .news-ticker-section .ntr-alert-card:hover { border-color: #fff; box-shadow: 0 0 0 2px rgba(159,211,255,.55), 0 14px 32px rgba(0,0,0,.35); }
body.is-home .news-ticker-section .ntr-alert-card:focus-visible,
body.is-home .news-ticker-section .ntr-alerts button:focus-visible { outline-color: #9fd3ff; }
body.is-home .news-ticker-section .ntr-alerts [aria-disabled="true"]:hover { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.3); }

/* ---------- Buttons: Mindestgröße 44 px (Prüfung 2026-10-01, wie site-navy.css) ---------- */
body.is-home .cookie-banner .btn { min-height: 44px; padding: 10px 18px; font-size: 14px; }
body.is-home .cookie-banner .btn-primary { background: #16336a !important; border-color: #16336a !important; color: #fff !important; }
body.is-home .site-footer .footer-newsletter-row .btn { min-height: 44px; }
body.is-home .nav-cta { position: relative; }
body.is-home .nav-cta::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 44px; transform: translateY(-50%); }

/* =====================================================================
   HANDY/TABLET (Yusuf 2026-10-01): Desktop-Optik behalten, nur an den Platz anpassen.
   Alles hier nur ≤ 800/900 px, Desktop (≥ 1280) unverändert.
   ===================================================================== */
/* Dienstleistungen: Wischreihe in exakt der Desktop-Kartenoptik (Schild blass unten rechts,
   Text volle Breite), nächste Karte angeschnitten, Reihe läuft bis an den Bildschirmrand */
@media (max-width: 800px) {
  body.is-home #products .lp-grid { margin: 0 -24px; padding: 6px 24px 20px; scroll-padding-left: 24px; }
  body.is-home #products .lp-card { display: block; position: relative; overflow: hidden; width: calc(100% - 32px); max-width: 420px; min-height: 0; }
  body.is-home #products .lp-card-text { position: relative; z-index: 1; height: 100%; min-height: 480px; padding: 30px 24px 26px; box-sizing: border-box; }
  body.is-home #products .lp-card h3 { font-size: 24px; line-height: 1.15; hyphens: manual; }
  body.is-home #products .lp-desc { font-size: 14.5px; line-height: 1.6; hyphens: manual; }
  body.is-home #products .lp-modules { gap: 6px; }
  body.is-home #products .lp-modules li { font-size: 14.5px; padding-left: 18px; }
  body.is-home #products .lp-modules li::before { top: 9px; }
  body.is-home #products .lp-modules li:nth-child(n+7) { display: list-item; }
  body.is-home #products .lp-card-image,
  body.is-home #products .lp-card-image--shield { position: absolute; top: auto; right: -40px; bottom: -34px; width: 240px; height: 240px !important; min-height: 0 !important;
    padding: 0; display: flex; align-items: center; justify-content: center; background: transparent !important; z-index: 0; pointer-events: none; overflow: visible; }
  body.is-home #products .lp-image-shield,
  body.is-home #products .lp-card:hover .lp-image-shield { height: 195px !important; max-width: 205px; transform: none; opacity: .38 !important; filter: drop-shadow(0 20px 40px rgba(0,0,0,.35)) !important; }
  /* Wischen statt Pfeile; Punkte mit 44-px-Trefferfläche */
  body.is-home #products .lp-arrow,
  body.is-home .sw-section .lp-arrow { display: none; }
  body.is-home .lp-dots { gap: 0; margin-top: 4px; }
  body.is-home .lp-dot,
  body.is-home .lp-dot.is-active,
  body.is-home #products .lp-dot.is-active { width: 24px; height: 44px; background: transparent !important; transform: none; display: inline-flex; align-items: center; justify-content: center; }
  body.is-home .lp-dot::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #b9c4d6; transition: transform .2s, background .2s; }
  body.is-home .lp-dot.is-active::before { background: var(--hn-navy); transform: scale(1.3); }
  body.is-home #products .lp-dot::before { background: rgba(255,255,255,.4); }
  body.is-home #products .lp-dot.is-active::before { background: #fff; }
  body.is-home .lp-dot:focus-visible { outline: 2px solid #0071e3; outline-offset: -8px; border-radius: 8px; }
}
/* Software-Karussell: Reihe bis an den Bildschirmrand, Grafik im Desktop-Seitenverhältnis (ca. 6:5) statt Hochformat */
@media (max-width: 800px) {
  body.is-home .sw-section .sw-rail { margin: 0 -24px; padding: 4px 24px 10px; scroll-padding-left: 24px; gap: 16px; }
  body.is-home .sw-section .sw-item { flex-basis: calc(100% - 32px); max-width: 440px; }
  body.is-home .sw-section .sw-item > .sw-visual { height: auto; aspect-ratio: 6 / 5; }
}
/* Führungsaufgabe: Stichpunkte kompakter, Foto-Ausschnitt auf die Gesprächsrunde */
@media (max-width: 760px) {
  body.is-home .context-band--hero .context-hero-points { gap: 10px; }
  body.is-home .context-band--hero .context-hero-point { padding: 13px 16px; font-size: 15px; line-height: 1.45; }
}
/* Zertifizierungen: weniger Leerraum, Technologie-Logos in einer Zeile */
@media (max-width: 760px) {
  body.is-home .trust-belt { padding-bottom: 48px !important; }
  body.is-home .trust-belt .trust-belt-row { padding-top: 26px !important; padding-bottom: 26px !important; }
  body.is-home .trust-belt .trust-belt-partners { flex-wrap: nowrap; justify-content: space-between; gap: 18px !important; }
  body.is-home .trust-belt .trust-belt-partners .trust-logo { flex: 0 1 auto; min-width: 0; }
  body.is-home .trust-belt .trust-belt-partners .trust-logo img,
  body.is-home .trust-belt .trust-belt-partners .trust-logo svg { max-height: 22px; width: auto; max-width: 100%; }
}

/* Systemplan #system (2026-10-01): Grundlage in css/systemplan.css. Hier nur Startseite.
   Zusammen mit „Das macht uns aus“ harmonisiert (Yusuf 2026-10-01): Navy-Verlauf statt Grau, Glaskarte mit Blauschimmer,
   Kacheln und Bausteine im selben Blauton, Lead weiß. */
body.is-home { --hn-glass-bg: linear-gradient(180deg, rgba(43,138,255,.10) 0%, rgba(43,138,255,.04) 100%); --hn-glass-line: rgba(159,211,255,.16);
  --hn-tile: rgba(120,170,255,.09); }
body.is-home .tile-grid-section.theme-dark { background: linear-gradient(180deg, #0b1c3d 0%, #0e2552 100%) !important; }
body.is-home .tile-grid-section .lead { color: rgba(255,255,255,.85) !important; }
body.is-home .tile-grid-section.theme-dark .tile { background: var(--hn-tile) !important; border-color: rgba(255,255,255,.10); }
body.is-home #system { background: linear-gradient(180deg, #0e2552 0%, #0b1c3d 100%); padding: 0 0 96px; }
@media (min-width: 768px) {
  body.is-home .tile-grid-wrap,
  body.is-home #system .usp-grid { background: var(--hn-glass-bg) !important; border: 1px solid var(--hn-glass-line) !important; border-radius: 28px;
    -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: 0 30px 70px rgba(0,0,0,.25) !important; }
  body.is-home .tile-grid-section.theme-dark .tile { background: var(--hn-tile) !important; }
  body.is-home #system .usp-grid { padding: 44px 48px; }
}
@media (max-width: 760px) { body.is-home #system { padding: 0 0 64px; } }

/* Kachel „Unsere Lösungen“: Produkt-Symbole statt Hardware-Foto (2026-10-01) */
body.is-home .tile-grid-section .tile-sol-viz { display: block; width: min(100%, 190px); height: auto; margin: 0 auto; overflow: visible; }
body.is-home .tile-grid-section .tile-img img[src*="datacenter-rack-v2"] { mix-blend-mode: normal !important; filter: none; }

/* Live-Nachrichten: gleiche Glaskarte und Navy-Verlauf wie „Das macht uns aus“ und Systemplan (Yusuf 2026-10-02) */
body.is-home .news-ticker-section { background: linear-gradient(180deg, #0b1c3d 0%, #0e2552 55%, #0b1c3d 100%) !important; }
@media (min-width: 768px) {
  body.is-home .news-ticker-section > .container { background: var(--hn-glass-bg) !important; border: 1px solid var(--hn-glass-line) !important;
    -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: 0 30px 70px rgba(0,0,0,.25) !important; }
}

/* =====================================================================
   HANDY-UX Runde 2 (2026-10-02, Mobile-Regeln aus dem Brief): nur <= 760 px, Desktop unverändert.
   Wischreihen: Karte 82 % der Bildschirmbreite, Abstand = Seitenrand (24 px), damit nach dem Wischen
   keine Kante der vorigen Karte am linken Rand stehen bleibt. Kein Anheben beim Tippen.
   ===================================================================== */
body.is-home { --nr-gut: 24px; }
body.is-home .news-ticker-section { --nr-dot: #fff; }
@media (max-width: 760px) {
  /* Abstände: Sektionen 48 bis 64 px */
  body.is-home .solutions-decision { padding: 56px 0 !important; }
  body.is-home .testimonials { padding-top: 48px !important; padding-bottom: 56px !important; }
  body.is-home .tile-grid-section { padding-top: 64px !important; padding-bottom: 56px !important; }
  body.is-home .news-ticker-section { padding-top: 56px !important; padding-bottom: 64px !important; }
  body.is-home .news-ticker-section .news-ticker-lead { margin-bottom: 28px !important; }
  body.is-home .faq-section { padding-top: 56px !important; padding-bottom: 64px !important; }

  /* Dienstleistungen + Software: ein Wischmuster */
  body.is-home #products .lp-grid,
  body.is-home .sw-section .sw-rail { gap: 24px; }
  body.is-home #products .lp-card { width: 82vw; max-width: 400px; }
  body.is-home .sw-section .sw-item { flex-basis: 82vw; max-width: 400px; }
  body.is-home #products .lp-card:hover { transform: none; box-shadow: none; }
  body.is-home #products .lp-card-text { min-height: 0; padding: 28px 22px 24px; }
  body.is-home #products .lp-desc { font-size: 16px; line-height: 1.55; }
  body.is-home #products .lp-modules li { font-size: 15px; }
  body.is-home #products .lp-card-image,
  body.is-home #products .lp-card-image--shield { right: -24px; bottom: -22px; width: 150px; height: 150px !important; }
  body.is-home #products .lp-image-shield,
  body.is-home #products .lp-card:hover .lp-image-shield { height: 120px !important; max-width: 130px; opacity: .3 !important; }
  body.is-home .sw-section .sw-link { min-height: 44px; display: inline-flex; align-items: center; }

  /* Zertifizierungen: Beschriftungen nicht unter 13 px */
  body.is-home .trust-belt .trust-belt-compliance-headline,
  body.is-home .trust-belt .trust-belt-row-label { font-size: 13px !important; }

  /* Zitate: Chips mit 44-px-Trefferfläche, Rolle lesbar */
  body.is-home .testimonial-avatar { min-width: 44px; height: 44px; }
  body.is-home .testimonial-role { font-size: 13px; }

  /* Das macht uns aus: Kleintext mindestens 13 px */
  body.is-home .tile-grid-section .tile .tile-eyebrow,
  body.is-home .tile-grid-section .tile .tile-sub,
  body.is-home .tile-grid-section .tile .sub { font-size: 13px !important; line-height: 1.35; }
  /* Info-Hinweis (DSGVO): am Handy an der Kachel statt am Knopf verankert, sonst ragt er links aus dem Bild */
  body.is-home .tile-grid-section .tile { position: relative; }
  body.is-home .tile-grid-section .tile .gc-info-btn { position: static; padding: 14px; margin: -14px -14px -14px -10px; }
  body.is-home .tile-grid-section .tile .gc-info-tip { left: 0; right: auto; bottom: calc(100% + 8px); width: min(300px, calc(100vw - 48px)); font-size: 13px; }
  body.is-home .tile-grid-section .tile:nth-child(even) .gc-info-tip { left: auto; right: 0; }
  body.is-home .tile-grid-section .tile .gc-info-tip::after { display: none; }
  body.is-home .trust-belt .trust-belt-row-label--withinfo { position: relative; }
  body.is-home .trust-belt .trust-belt-row-label--withinfo .gc-info-btn { position: static; padding: 14px; margin: -14px -14px -14px -10px; }
  body.is-home .trust-belt .trust-belt-row-label--withinfo .gc-info-tip { left: 0; right: 0; width: auto; bottom: calc(100% + 8px); }
  body.is-home .trust-belt .trust-belt-row-label--withinfo .gc-info-tip::after { display: none; }
  body.is-home .trust-belt .gc-info-tip-p { font-size: 13px; }

  /* Nächster Schritt: Hauptbutton oben, beide gleich breit untereinander */
  body.is-home .ueber-final-cta .hero-cta { flex-direction: column; align-items: stretch; gap: 12px; max-width: 360px; margin-left: auto; margin-right: auto; }
  body.is-home .ueber-final-cta .hero-cta .btn { width: 100%; }

  /* Live-Nachrichten: Hinweiszeile lesbar */
  body.is-home .news-ticker-section .news-ticker-disclaimer { font-size: 13px; }

  /* Fließtext mindestens 16 px */
  body.is-home .gad-platform-intro,
  body.is-home .sw-section .sw-item p,
  body.is-home .context-band--hero .context-hero-point,
  body.is-home .faq-section .faq-answer p { font-size: 16px; }
  body.is-home .testimonial-teamlink { min-height: 44px; }
}

/* ---------- Yusuf am iPhone (2026-10-02) ---------- */
@media (max-width: 760px) {
  /* Führungsaufgabe: Foto ganz zeigen (oben, volle Breite, ohne seitliche Maske), unten weich ins Navy */
  body.is-home .context-band--hero .context-hero-bg {
    inset: 0 0 auto 0; height: auto; aspect-ratio: 1448 / 1086;
    -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 55%, transparent 100%);
            mask-image: linear-gradient(180deg, #000 0%, #000 55%, transparent 100%);
    -webkit-mask-composite: source-over; mask-composite: add;
  }
  body.is-home .context-band--hero .context-hero-bg img { object-position: center center; opacity: .9; }
  body.is-home .context-band--hero .context-hero-overlay {
    background: linear-gradient(180deg, rgba(11,28,61,.08) 0%, rgba(11,28,61,.2) 90px, rgba(11,28,61,.62) 200px, rgba(11,28,61,.78) 300px, rgba(11,28,61,.78) 100%);
  }
  /* Text beginnt unter den Gesichtern, das Foto bleibt oben frei sichtbar */
  body.is-home .context-band--hero { padding-top: 150px !important; }
}
@media (max-width: 767px) {
  /* Rechenzentrum: Button als kleine Pille unten mittig über dem Video, Pause-Knopf bleibt rechts */
  body.is-home #rechenzentrum .rz-hero-bottom { grid-row: 2; grid-column: 1; align-self: end; justify-self: center; z-index: 2; padding: 0 0 12px; margin: 0; background: none; }
  body.is-home #rechenzentrum .rz-hero-cta { margin: 0; }
  body.is-home #rechenzentrum .rz-hero-cta .btn,
  body.is-home #rechenzentrum .rz-hero-cta .btn-primary {
    min-height: 44px; padding: 0 16px; font-size: 14px; border-radius: 999px; width: auto;
    background: rgba(255,255,255,.9) !important; border-color: rgba(255,255,255,.9) !important; color: #0b1c3d !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.25);
  }
  body.is-home #rechenzentrum .rz-hero-top { padding-bottom: 20px; }
  body.is-home #rechenzentrum { padding-bottom: 0; }
}

/* =====================================================================
   Neue Reihenfolge (Yusuf 2026-10-02): Weiß Software → Rechenzentrum → Einstieg → Zitate → Einblicke ·
   Navy Systemplan → Nächster Schritt → Live-Nachrichten · FAQ.
   „Das macht uns aus“ geparkt (reference/home-parked/das-macht-uns-aus/), dessen Regeln oben greifen nicht mehr.
   Systemplan folgt jetzt direkt auf Weiß: braucht eigenen Abstand oben, Verlauf beginnt im Navy der Nachbarblöcke.
   ===================================================================== */
body.is-home #system { background: linear-gradient(180deg, #0b1c3d 0%, #0e2552 50%, #0b1c3d 100%); padding-top: 96px; }
@media (max-width: 760px) { body.is-home #system { padding-top: 64px; } }

/* Prüfung 2026-10-02: Rechenzentrum Desktop mit „Bewegung reduzieren“: Poster statt leerer weißer Fläche (Schrift ist weiß) */
@media (prefers-reduced-motion: reduce) {
  body.is-home #rechenzentrum .rz-hero-video { visibility: visible; }
}
/* Einstieg: Textlinks mit 44-px-Trefferfläche */
body.is-home .decision-link { display: inline-flex; align-items: center; min-height: 44px; }

/* Einstiege zur NIS-2-Beratung (13.10.2026): Link im Abschnitt „Warum jetzt“, anklickbarer Punkt in der GRC-Karte */
body.is-home .context-hero-point a { color: #fff; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
body.is-home #products .lp-card--grc { position: relative; cursor: pointer; }
body.is-home #products .lp-card--grc .lp-stretch::after { content: ""; position: absolute; inset: 0; z-index: 1; }
/* kein Verschieben beim Überfahren: ein transform würde die Klickfläche auf den Linktext schrumpfen */
body.is-home #products .lp-card--grc .lp-stretch, body.is-home #products .lp-card--grc .lp-stretch:hover { transform: none !important; }
body.is-home #products .lp-card--grc .lp-modules a { position: relative; z-index: 2; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
@media (hover: none) { body.is-home #products .lp-card--grc .lp-modules a { display: inline-block; padding: 13px 0; margin: -13px 0; } }
@media (hover: hover) { body.is-home #products .lp-card--grc .lp-modules a:hover { color: #fff; } }
