/* ===========================================================================
   branchen.css — Styles für den Bereich "Branchenlösungen"
   Allgemeiner Hub · Branchen-Hubs · Leistungs-Detailseiten
   Prefix: .brl-   |  Brand: #b146f8 / #5ccbf9
   =========================================================================== */

/* ── Hero (Hub & Detail) ──────────────────────────────────────────────── */
.brl-hero{background:linear-gradient(140deg,#05050f 0%,#0e0a25 45%,#04111d 100%);padding:5rem 1.5rem 4rem;position:relative;overflow:hidden}
.brl-hero--detail{padding:4.5rem 1.5rem 3.5rem}
.brl-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 78% 30%,rgba(177,70,248,.14) 0%,transparent 65%),radial-gradient(ellipse 50% 70% at 15% 80%,rgba(92,203,249,.08) 0%,transparent 65%);pointer-events:none}
.brl-hero-inner{max-width:1140px;margin:0 auto;position:relative}
.brl-breadcrumb{display:flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.5);font-size:.8rem;margin-bottom:1rem;flex-wrap:wrap}
.brl-breadcrumb a{color:rgba(255,255,255,.7);text-decoration:none;transition:color .15s}
.brl-breadcrumb a:hover{color:#5ccbf9}
.brl-breadcrumb svg{width:12px;height:12px}
.brl-eyebrow{display:inline-flex;align-items:center;gap:.45rem;background:rgba(177,70,248,.14);border:1px solid rgba(177,70,248,.28);color:#c4a8ff;padding:.32rem .95rem;border-radius:9999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;margin-bottom:1.1rem}
.brl-hero h1{color:#fff;font-size:clamp(2rem,3.8vw,3.2rem);font-weight:900;line-height:1.08;letter-spacing:-.028em;margin-bottom:1.1rem;max-width:820px}
.brl-hero--detail h1{font-size:clamp(2rem,3.6vw,3rem);max-width:760px}
.brl-hero h1 em{font-style:normal;background:linear-gradient(90deg,#b146f8,#5ccbf9);-webkit-background-clip:text;background-clip:text;color:transparent}
.brl-hero-sub{color:rgba(255,255,255,.65);font-size:1.05rem;line-height:1.7;margin-bottom:2rem;max-width:660px}
.brl-hero--detail .brl-hero-sub{font-size:1rem;margin-bottom:1.75rem;max-width:640px}
.brl-hero-cta{display:flex;gap:.75rem;flex-wrap:wrap}
.brl-hero-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.6rem;border-radius:12px;font-size:.92rem;font-weight:800;text-decoration:none;transition:all .2s}
.brl-hero-btn--primary{background:linear-gradient(135deg,#b146f8,#5ccbf9);color:#fff;box-shadow:0 8px 24px rgba(177,70,248,.3)}
.brl-hero-btn--primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(177,70,248,.4)}
.brl-hero-btn--ghost{background:rgba(255,255,255,.06);color:#fff;border:1.5px solid rgba(255,255,255,.18)}
.brl-hero-btn--ghost:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3)}
.brl-hero-trust{display:flex;gap:1.25rem;flex-wrap:wrap;font-size:.82rem;color:rgba(255,255,255,.55);margin-top:2rem}
.brl-hero-trust span{display:inline-flex;align-items:center;gap:.35rem}
.brl-hero-trust svg{color:#4ade80;flex-shrink:0}

/* ── Wrap & headings ──────────────────────────────────────────────────── */
.brl-wrap{max-width:1140px;margin:0 auto;padding:4.5rem 1.5rem}
.brl-wrap--detail{padding:4rem 1.5rem}
.brl-lbl{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.5rem}
.brl-hd{font-size:clamp(1.55rem,2.5vw,2.1rem);font-weight:900;letter-spacing:-.022em;margin-bottom:.6rem}
.brl-sub{color:var(--text-muted);font-size:.95rem;line-height:1.7;margin-bottom:2.5rem;max-width:720px}
.brl-section{margin-bottom:3.75rem}

/* ── Branch / industry cards (Hub) ────────────────────────────────────── */
.brl-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem;margin-bottom:4.5rem}
.brl-cat{background:var(--surface);border:1.5px solid var(--border);border-radius:20px;padding:1.85rem;display:flex;flex-direction:column;text-decoration:none;color:var(--text);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden}
.brl-cat--active:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:0 14px 38px rgba(124,58,237,.1)}
[data-theme="dark"] .brl-cat{background:#13131f;border-color:#2a2a3d}
[data-theme="dark"] .brl-cat--active:hover{border-color:#b146f8;box-shadow:0 14px 38px rgba(177,70,248,.18)}
.brl-cat--soon{opacity:.78;cursor:default}
.brl-cat-ico{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1.2rem;background:var(--brand-light);color:var(--brand)}
[data-theme="dark"] .brl-cat-ico{background:rgba(177,70,248,.14);color:#c084fc}
.brl-cat-ico svg{width:26px;height:26px}
.brl-cat-title{font-size:1.18rem;font-weight:800;letter-spacing:-.01em;margin-bottom:.45rem;color:var(--text);display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}
.brl-badge-soon{font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:.18rem .5rem;border-radius:6px;background:rgba(92,203,249,.12);color:#0e8bbf;border:1px solid rgba(92,203,249,.3)}
[data-theme="dark"] .brl-badge-soon{color:#5ccbf9}
.brl-cat-desc{font-size:.88rem;color:var(--text-muted);line-height:1.65;margin-bottom:1.15rem;flex:1}
.brl-cat-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.15rem}
.brl-cat-tags span{font-size:.7rem;font-weight:700;padding:.22rem .65rem;border-radius:8px;background:var(--brand-light);color:var(--brand);border:1px solid rgba(103,61,230,.15)}
[data-theme="dark"] .brl-cat-tags span{background:rgba(177,70,248,.14);color:#c084fc;border-color:rgba(177,70,248,.25)}
.brl-cat-link{font-size:.86rem;font-weight:700;color:var(--brand);display:inline-flex;align-items:center;gap:.35rem;margin-top:auto}
[data-theme="dark"] .brl-cat-link{color:#c084fc}
.brl-cat-link svg{width:15px;height:15px;transition:transform .18s ease}
.brl-cat--active:hover .brl-cat-link svg{transform:translateX(4px)}

/* ── Service cards (Branch hub: lists Leistungen) ─────────────────────── */
.brl-svc{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1rem;margin-bottom:4.5rem}
.brl-svc-item{background:var(--surface);border:1.5px solid var(--border);border-radius:18px;padding:1.6rem;display:flex;flex-direction:column;text-decoration:none;color:var(--text);transition:border-color .2s,transform .2s,box-shadow .2s}
.brl-svc-item--link:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:0 12px 30px rgba(124,58,237,.1)}
[data-theme="dark"] .brl-svc-item{background:#13131f;border-color:#2a2a3d}
[data-theme="dark"] .brl-svc-item--link:hover{border-color:#b146f8;box-shadow:0 12px 30px rgba(177,70,248,.16)}
.brl-svc-ico{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;background:var(--brand-light);color:var(--brand)}
[data-theme="dark"] .brl-svc-ico{background:rgba(177,70,248,.14);color:#c084fc}
.brl-svc-ico svg{width:23px;height:23px}
.brl-svc-title{font-size:1.05rem;font-weight:800;letter-spacing:-.01em;margin-bottom:.4rem;color:var(--text)}
.brl-svc-desc{font-size:.86rem;color:var(--text-muted);line-height:1.65;margin-bottom:1rem;flex:1}
.brl-svc-link{font-size:.84rem;font-weight:700;color:var(--brand);display:inline-flex;align-items:center;gap:.35rem;margin-top:auto}
[data-theme="dark"] .brl-svc-link{color:#c084fc}
.brl-svc-link svg{width:14px;height:14px;transition:transform .18s ease}
.brl-svc-item--link:hover .brl-svc-link svg{transform:translateX(4px)}
.brl-svc-soon{font-size:.78rem;font-weight:700;color:var(--text-muted);display:inline-flex;align-items:center;gap:.35rem;margin-top:auto}

/* ── Scope grid (Detail) ──────────────────────────────────────────────── */
.brl-scope{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1rem}
.brl-scope-item{background:var(--surface);border:1.5px solid var(--border);border-radius:16px;padding:1.6rem;display:flex;flex-direction:column;gap:.55rem}
[data-theme="dark"] .brl-scope-item{background:#13131f;border-color:#2a2a3d}
.brl-scope-ico{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--brand-light);color:var(--brand);margin-bottom:.35rem}
[data-theme="dark"] .brl-scope-ico{background:rgba(177,70,248,.14);color:#c084fc}
.brl-scope-title{font-size:1.02rem;font-weight:800;letter-spacing:-.01em;color:var(--text)}
.brl-scope-desc{font-size:.85rem;color:var(--text-muted);line-height:1.65}
.brl-scope-list{list-style:none;padding:0;margin:.4rem 0 0;display:flex;flex-direction:column;gap:.35rem}
.brl-scope-list li{display:flex;align-items:flex-start;gap:.45rem;font-size:.83rem;color:var(--text);line-height:1.55}
.brl-scope-list li svg{color:#15803d;flex-shrink:0;margin-top:.18rem}
[data-theme="dark"] .brl-scope-list li svg{color:#4ade80}

/* ── Steps / process ──────────────────────────────────────────────────── */
.brl-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.1rem;margin-bottom:4rem}
.brl-step{background:var(--surface);border:1.5px solid var(--border);border-radius:16px;padding:1.5rem;position:relative}
[data-theme="dark"] .brl-step{background:#13131f;border-color:#2a2a3d}
.brl-step-num{position:absolute;top:-14px;left:1.4rem;width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,#b146f8,#5ccbf9);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:900;box-shadow:0 4px 14px rgba(177,70,248,.3)}
.brl-step-title{font-size:1rem;font-weight:800;letter-spacing:-.01em;margin-top:.8rem;margin-bottom:.45rem;color:var(--text)}
.brl-step-desc{font-size:.82rem;color:var(--text-muted);line-height:1.65}

/* ── Trust grid ───────────────────────────────────────────────────────── */
.brl-trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:4rem}
.brl-trust-item{background:var(--surface);border:1.5px solid var(--border);border-radius:14px;padding:1.4rem}
[data-theme="dark"] .brl-trust-item{background:#13131f;border-color:#2a2a3d}
.brl-trust-ico{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:.8rem;background:var(--brand-light);color:var(--brand)}
[data-theme="dark"] .brl-trust-ico{background:rgba(177,70,248,.14);color:#c084fc}
.brl-trust-title{font-size:.95rem;font-weight:800;margin-bottom:.3rem;color:var(--text)}
.brl-trust-desc{font-size:.83rem;color:var(--text-muted);line-height:1.65}

/* ── FAQ ──────────────────────────────────────────────────────────────── */
.brl-faq{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:4rem}
@media(max-width:760px){.brl-faq{grid-template-columns:1fr}}
.brl-faq details{background:var(--surface);border:1.5px solid var(--border);border-radius:14px;padding:1.1rem 1.25rem;transition:border-color .2s}
[data-theme="dark"] .brl-faq details{background:#13131f;border-color:#2a2a3d}
.brl-faq details[open]{border-color:rgba(177,70,248,.4)}
.brl-faq summary{font-size:.95rem;font-weight:800;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--text)}
.brl-faq summary::-webkit-details-marker{display:none}
.brl-faq summary::after{content:'+';font-size:1.4rem;font-weight:400;color:var(--text-muted);transition:transform .25s}
.brl-faq details[open] summary::after{transform:rotate(45deg);color:#b146f8}
.brl-faq summary:hover{color:var(--brand)}
.brl-faq-body{font-size:.88rem;color:var(--text-muted);line-height:1.7;margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--border)}

/* ── CTA ──────────────────────────────────────────────────────────────── */
.brl-cta{background:linear-gradient(135deg,#1a0533 0%,#0f1628 100%);border-radius:24px;padding:3.25rem 2rem;text-align:center;position:relative;overflow:hidden;margin-top:1.5rem}
.brl-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 90% at 50% -10%,rgba(177,70,248,.28) 0%,transparent 65%);pointer-events:none}
.brl-cta h2{color:#fff;font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:.75rem;position:relative;letter-spacing:-.02em}
.brl-cta p{color:rgba(255,255,255,.7);margin-bottom:1.85rem;position:relative;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.7}
.brl-cta-btns{display:flex;gap:.85rem;justify-content:center;flex-wrap:wrap;position:relative}

/* ── Hinweis-/Kontakt-Callout (Leistungen = Beispiele) ────────────────────── */
.brl-note{background:linear-gradient(135deg,rgba(177,70,248,.07),rgba(92,203,249,.06));border:1.5px solid rgba(177,70,248,.25);border-radius:20px;padding:2rem 1.85rem;margin-bottom:4.5rem;display:flex;flex-direction:column;gap:.9rem}
[data-theme="dark"] .brl-note{background:linear-gradient(135deg,rgba(177,70,248,.12),rgba(92,203,249,.07));border-color:rgba(177,70,248,.32)}
.brl-note-ico{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:var(--brand-light);color:var(--brand)}
[data-theme="dark"] .brl-note-ico{background:rgba(177,70,248,.16);color:#c084fc}
.brl-note-ico svg{width:24px;height:24px}
.brl-note-title{font-size:1.18rem;font-weight:800;letter-spacing:-.015em;color:var(--text)}
.brl-note-text{font-size:.92rem;color:var(--text-muted);line-height:1.7;max-width:680px}
.brl-note-btns{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:.35rem}
.brl-note-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.35rem;border-radius:11px;font-size:.88rem;font-weight:800;text-decoration:none;transition:all .2s}
.brl-note-btn--primary{background:linear-gradient(135deg,#b146f8,#5ccbf9);color:#fff;box-shadow:0 6px 18px rgba(177,70,248,.28)}
.brl-note-btn--primary:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(177,70,248,.38)}
.brl-note-btn--ghost{background:var(--surface);color:var(--text);border:1.5px solid var(--border)}
.brl-note-btn--ghost:hover{border-color:var(--brand)}
[data-theme="dark"] .brl-note-btn--ghost{background:#13131f;border-color:#2a2a3d}
.brl-note-btn svg{width:15px;height:15px}

/* ── Querverweis-Block "Auch relevant" ────────────────────────────────────── */
.brl-related{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:4rem}
.brl-related-item{display:flex;align-items:center;gap:.9rem;background:var(--surface);border:1.5px solid var(--border);border-radius:14px;padding:1.1rem 1.25rem;text-decoration:none;color:var(--text);transition:border-color .2s,transform .2s}
.brl-related-item:hover{border-color:var(--brand);transform:translateY(-2px)}
[data-theme="dark"] .brl-related-item{background:#13131f;border-color:#2a2a3d}
[data-theme="dark"] .brl-related-item:hover{border-color:#b146f8}
.brl-related-ico{width:40px;height:40px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--brand-light);color:var(--brand)}
[data-theme="dark"] .brl-related-ico{background:rgba(177,70,248,.14);color:#c084fc}
.brl-related-ico svg{width:21px;height:21px}
.brl-related-tx{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.brl-related-tt{font-size:.92rem;font-weight:800;color:var(--text)}
.brl-related-sb{font-size:.78rem;color:var(--text-muted);line-height:1.4}
.brl-related-ar{margin-left:auto;color:var(--brand);flex-shrink:0;display:flex}
[data-theme="dark"] .brl-related-ar{color:#c084fc}
.brl-related-ar svg{width:16px;height:16px;transition:transform .18s}
.brl-related-item:hover .brl-related-ar svg{transform:translateX(4px)}

/* ── Fixes ─────────────────────────────────────────────────────────────────
   1) Icon-SVGs ohne width/height zwingen (Hero-Badge + "Details auf Anfrage")
   2) Button-Textfarbe gegen darkmode-Regel
      [data-theme="dark"] a:not(.btn):not(.nav-link):not(.mega-item){color:#c084fc}
      mit höherer Priorität überschreiben.                                       */
.brl-eyebrow svg{width:16px;height:16px;flex-shrink:0}
.brl-svc-soon svg{width:14px;height:14px;flex-shrink:0}
.brl-hero-btn--primary,
[data-theme="dark"] .brl-hero-btn--primary{color:#fff!important;-webkit-text-fill-color:#fff}
.brl-hero-btn--ghost,
[data-theme="dark"] .brl-hero-btn--ghost{color:#fff!important;-webkit-text-fill-color:#fff}
.brl-note-btn--primary,
[data-theme="dark"] .brl-note-btn--primary{color:#fff!important;-webkit-text-fill-color:#fff}
.brl-note-btn--ghost,
[data-theme="dark"] .brl-note-btn--ghost{color:var(--text)!important}

/* Icon-Größen für Container, die bisher keine hatten (Trust-/Scope-Icons, Hero-Button-Pfeil) */
.brl-trust-ico svg{width:19px;height:19px}
.brl-scope-ico svg{width:22px;height:22px}
.brl-hero-btn svg{width:18px;height:18px;flex-shrink:0}
.brl-hero-trust svg{width:14px;height:14px}
