/* ===========================================================================
   UNOY · Kundenseiten – Editorial-System (Vorlage: de/kunden/bbmri.html)
   Stand 2026-06 · Aktiv über <main class="ed-main"> bzw. body.kunden-editorial.
   Enthält die vollständigen BBMRI-Editorial-Stile, damit alle Kundenseiten
   exakt identisch aussehen (Breite, Schriften, Größen, Farben).
   =========================================================================== */

/* Canvas + Tailwind-Utility-Overrides (für noch nicht umgebaute Seiten) */
body.kunden-editorial{ --paper-00:#FFFFFF; --paper-10:#FFFFFF; --paper-20:#F6F6F7; --paper-30:#ECECEE; --ink-200:#E6E6E8; background:#FFFFFF; }
body.kunden-editorial .bg-surface,
body.kunden-editorial .bg-surface-container-lowest{ background-color:#FFFFFF !important; }
body.kunden-editorial .bg-surface-container-low,
body.kunden-editorial .bg-surface-container{ background-color:#F6F6F7 !important; }

/* === Editorial-System (1:1 aus BBMRI) === */
.ed-main{ --gold:#F5B800; --gold-deep:#A67800; --ink:#0A0A0B; --ink-700:#2B2B2D; --ink-500:#6E6E72; --ed-line:#E6E6E8; --paper:#FFFFFF; --card:#FFFFFF; --soft:#F2F2F4; --gray:#F6F6F7; background:var(--paper); color:var(--ink); }
  .ed-main .ed-sec--gray{ background:var(--gray); border-top:0; }
  .ed-main *{ box-sizing:border-box; }
  .ed-wrap{ max-width:var(--site-max,1440px); margin:0 auto; padding-inline:48px; } @media(max-width:880px){ .ed-wrap{ padding-inline:24px; } }
  .ed-kick{ font-family:'JetBrains Mono',ui-monospace,monospace; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-500); font-weight:600; margin:0; }

  /* breadcrumb */
  .ed-crumbs{ padding:28px 0 0; display:flex; align-items:center; gap:10px; font-size:13px; color:var(--ink-500); }
  .ed-crumbs a{ color:var(--ink-500); text-decoration:none; }
  .ed-crumbs a:hover{ color:var(--gold-deep); }
  .ed-crumbs b{ color:var(--ink); font-weight:600; }
  .ed-crumbs span{ color:var(--ink-500); }

  /* hero */
  .ed-hero{ padding:clamp(40px,7vw,96px) 0 clamp(28px,4vw,48px); }
  .ed-hero__top{ display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; padding-bottom:24px; border-bottom:1px solid var(--ed-line); }
  .ed-hero__top b{ color:var(--ink); }
  .ed-hero__h{ font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(38px,6.6vw,86px); line-height:1.0; letter-spacing:-0.03em; margin:clamp(28px,5vw,56px) 0 0; max-width:17ch; }
  .ed-hero__h em{ font-style:normal; font-weight:300; letter-spacing:-0.06em; color:var(--gold-deep); }
  .ed-hero__cta{ display:inline-flex; align-items:center; gap:12px; margin-top:36px; font-family:'Inter',sans-serif; font-weight:500; font-size:16px; color:var(--ink); text-decoration:none; }
  .ed-hero__cta .arr{ display:inline-grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--gold); color:var(--ink); transition:transform .25s cubic-bezier(.2,.8,.2,1); }
  .ed-hero__cta:hover .arr{ transform:translateX(5px); }
  .ed-hero__media{ margin-top:clamp(36px,5vw,64px); position:relative; aspect-ratio:21/9; border-radius:14px; overflow:hidden; background:#1A1F26; }
  .ed-hero__media video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
  .ed-hero__media::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(10,10,11,.35)); }
  .ed-hero__cap{ position:absolute; left:22px; bottom:18px; z-index:2; font-family:'JetBrains Mono',monospace; font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.9); font-weight:600; }
  .ed-figs{ margin-top:clamp(40px,6vw,72px); }
  .ed-figs__lbl{ margin:0 0 24px; }
  .ed-figs__row{ display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); }
  .ed-fig{ padding:28px 28px 4px 0; }
  .ed-fig + .ed-fig{ border-left:1px solid var(--ed-line); padding-left:28px; }
  .ed-fig__n{ font-family:'Inter',sans-serif; font-weight:700; font-size:clamp(52px,6.5vw,80px); line-height:.9; letter-spacing:-0.04em; color:var(--ink); }
  .ed-fig__l{ margin:14px 0 0; font-size:14px; line-height:1.5; color:var(--ink-500); max-width:26ch; }
  @media(max-width:780px){ .ed-figs__row{ grid-template-columns:1fr; } .ed-fig{ padding:24px 0 4px; border-top:1px solid var(--ed-line); } .ed-fig+.ed-fig{ border-left:0; padding-left:0; } .ed-figs__row{ border-top:1px solid var(--ink); } }

  /* indexed sections */
  .ed-sec{ padding:clamp(56px,8vw,104px) 0; border-top:1px solid var(--ed-line); }
  .ed-sec__grid{ display:grid; grid-template-columns:minmax(0,0.8fr) minmax(0,2fr); gap:clamp(20px,5vw,72px); }
  @media(max-width:880px){ .ed-sec__grid{ grid-template-columns:1fr; gap:16px; } }
  .ed-idx{ font-family:'Inter',sans-serif; font-weight:300; font-size:clamp(46px,6vw,78px); line-height:.82; letter-spacing:-0.04em; }
  .ed-idx span{ color:var(--gold); }
  .ed-asideKick{ margin-top:18px; }
  .ed-h2{ font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(26px,3.1vw,40px); line-height:1.12; letter-spacing:-0.02em; margin:0 0 28px; max-width:20ch; }
  .ed-h2 em{ font-style:normal; font-weight:300; letter-spacing:-0.06em; color:var(--gold-deep); }
  .ed-prose p{ font-family:'Inter',sans-serif; font-size:clamp(16px,1.4vw,18px); line-height:1.65; color:var(--ink-700); margin:0 0 20px; max-width:68ch; }
  .ed-prose p:last-child{ margin-bottom:0; }
  .ed-prose a{ color:var(--gold-deep); text-decoration:underline; text-underline-offset:2px; }
  .ed-prose strong{ color:var(--ink); font-weight:600; }
  .ed-prose em{ font-style:italic; }

  /* product anchor */
  .ed-spec2{ margin-top:36px; display:grid; grid-template-columns:1fr 1fr; gap:32px 48px; max-width:760px; }
  @media(max-width:620px){ .ed-spec2{ grid-template-columns:1fr; } }
  .ed-spec2 ul{ list-style:none; margin:12px 0 0; padding:0; }
  .ed-spec2 li{ font-size:15px; line-height:1.45; color:var(--ink); padding:11px 0; border-top:1px solid var(--ed-line); }
  .ed-spec2 li:first-child{ border-top:0; }
  .ed-spec2 li strong{ font-weight:600; }
  .ed-anchorlink{ margin-top:32px; font-size:14px; }
  .ed-anchorlink a{ color:var(--gold-deep); text-decoration:underline; font-weight:600; }

  /* quote */
  .ed-quote{ font-family:'Inter',sans-serif; font-weight:500; font-size:clamp(24px,3.3vw,42px); line-height:1.22; letter-spacing:-0.02em; color:var(--ink); margin:0; max-width:24ch; }
  .ed-quote::before{ content:"\201C"; color:var(--gold); }
  .ed-quote::after{ content:"\201D"; color:var(--gold); }
  .ed-quote__by{ margin-top:28px; }
  .ed-quote__by b{ display:block; font-size:14px; color:var(--ink); font-weight:600; }
  .ed-quote__by span{ font-size:13px; color:var(--ink-500); }
  .ed-flow{ margin-top:48px; display:flex; align-items:center; gap:clamp(12px,2.5vw,32px); flex-wrap:wrap; padding-top:24px; border-top:1px solid var(--ed-line); }
  .ed-flow__node b{ display:block; font-size:15px; color:var(--ink); font-weight:600; }
  .ed-flow__node span{ font-size:13px; color:var(--ink-500); }
  .ed-flow__arr{ color:var(--gold-deep); font-family:'JetBrains Mono',monospace; font-size:18px; }

  /* workflows */
  .ed-wfhead{ padding:clamp(56px,8vw,104px) 0 0; border-top:1px solid var(--ed-line); }
  .ed-wf{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,5vw,72px); align-items:center; padding:clamp(40px,5vw,64px) 0; border-top:1px solid var(--ed-line); }
  .ed-wf:nth-child(even) .ed-wf__text{ order:2; }
  @media(max-width:880px){ .ed-wf{ grid-template-columns:1fr; gap:22px; } .ed-wf:nth-child(even) .ed-wf__text{ order:0; } }
  .ed-wf__n{ font-family:'Inter',sans-serif; font-weight:300; font-size:clamp(26px,3vw,40px); line-height:.85; letter-spacing:-0.04em; color:var(--gold); }
  .ed-wf__n span{ color:var(--gold); }
  .ed-wf__h{ font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(20px,2.1vw,26px); line-height:1.2; letter-spacing:-0.015em; margin:14px 0 14px; }
  .ed-wf__p{ font-size:16px; line-height:1.62; color:var(--ink-700); margin:0; max-width:46ch; }
  .ed-mock{ display:block; width:100%; height:auto; border-radius:14px; overflow:hidden; box-shadow:0 26px 64px -28px rgba(10,10,11,.30), 0 4px 14px rgba(10,10,11,.06); }

  /* Screenshot + überlappendes SVG-Badge */
  .ed-shotwrap{ position:relative; margin-bottom:28px; }
  .ed-shot{ display:block; width:100%; height:auto; border-radius:14px; border:1px solid var(--ed-line); background:#fff; box-shadow:0 26px 64px -28px rgba(10,10,11,.22), 0 4px 14px rgba(10,10,11,.05); }
  .ed-shotwrap .ed-mock--badge{ position:absolute; right:-16px; bottom:-26px; width:46%; min-width:190px; border-radius:10px; box-shadow:0 20px 48px -18px rgba(10,10,11,.38), 0 4px 12px rgba(10,10,11,.10); }
  @media(max-width:880px){ .ed-shotwrap .ed-mock--badge{ right:0; bottom:-20px; width:54%; } }
  .ed-shotwrap.ed-noimg{ margin-bottom:0; }
  .ed-shotwrap.ed-noimg .ed-mock--badge{ position:relative; right:auto; bottom:auto; width:100%; min-width:0; border-radius:14px; box-shadow:0 26px 64px -28px rgba(10,10,11,.30), 0 4px 14px rgba(10,10,11,.06); }
  .ed-shotwrap--wide .ed-shot{ box-shadow:0 30px 72px -30px rgba(10,10,11,.25), 0 6px 18px rgba(10,10,11,.06); }

  /* experiences */
  .ed-exp{ display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--ink); }
  @media(max-width:780px){ .ed-exp{ grid-template-columns:1fr 1fr; } }
  .ed-exp__item{ padding:34px 22px 0 0; }
  .ed-exp__item + .ed-exp__item{ border-left:1px solid var(--ed-line); padding-left:22px; }
  @media(max-width:780px){ .ed-exp__item + .ed-exp__item{ border-left:0; padding-left:0; } .ed-exp__item:nth-child(2){ border-left:1px solid var(--ed-line); padding-left:22px; } }
  .ed-exp__n{ font-family:'Inter',sans-serif; font-weight:700; font-size:clamp(54px,7vw,92px); line-height:.85; letter-spacing:-0.05em; color:var(--ink); }
  .ed-exp__l{ margin-top:16px; font-size:14px; line-height:1.5; color:var(--ink-500); }

  /* faq */
  .ed-faq details{ border-top:1px solid var(--ed-line); }
  .ed-faq details:last-of-type{ border-bottom:1px solid var(--ed-line); }
  .ed-faq summary{ cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:24px 0; font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(17px,1.7vw,20px); color:var(--ink); }
  .ed-faq summary::-webkit-details-marker{ display:none; }
  .ed-faq .ic{ flex:none; width:20px; height:20px; position:relative; }
  .ed-faq .ic::before,.ed-faq .ic::after{ content:""; position:absolute; background:var(--gold-deep); transition:transform .3s cubic-bezier(.2,.8,.2,1); }
  .ed-faq .ic::before{ top:9px; left:0; width:20px; height:2px; }
  .ed-faq .ic::after{ top:0; left:9px; width:2px; height:20px; }
  .ed-faq details[open] .ic::after{ transform:scaleY(0); }
  .ed-faq__a{ padding:0 0 26px; font-size:16px; line-height:1.65; color:var(--ink-700); max-width:74ch; }

  /* spec sheet */
  .ed-specsheet{ display:grid; grid-template-columns:1fr 1fr; gap:0 clamp(32px,5vw,72px); }
  @media(max-width:760px){ .ed-specsheet{ grid-template-columns:1fr; } }
  .ed-srow{ padding:22px 0; border-top:1px solid var(--ed-line); }
  .ed-srow h4{ font-family:'Inter',sans-serif; font-size:15px; font-weight:600; color:var(--ink); margin:0 0 6px; }
  .ed-srow p{ font-size:14px; line-height:1.55; color:var(--ink-500); margin:0; }

  /* customer cards */
  .ed-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
  @media(max-width:820px){ .ed-cards{ grid-template-columns:1fr; max-width:420px; } }
  .ed-card{ text-decoration:none; display:block; }
  .ed-card__media{ aspect-ratio:4/3; border-radius:12px; overflow:hidden; background:var(--soft); position:relative; }
  .ed-card__media video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s cubic-bezier(.2,.8,.2,1); }
  .ed-card:hover .ed-card__media video{ transform:scale(1.04); }
  .ed-card__t{ font-family:'Inter',sans-serif; font-size:18px; font-weight:600; color:var(--ink); margin:18px 0 6px; }
  .ed-card__b{ font-size:14px; line-height:1.5; color:var(--ink-500); margin:0; }
  .ed-alllink{ margin-top:44px; }
  .ed-alllink a{ color:var(--gold-deep); font-weight:600; text-decoration:none; font-size:15px; }
  .ed-alllink a:hover{ text-decoration:underline; }

  /* cta */
  .ed-cta{ background:#0E1216; color:#fff; padding:clamp(72px,10vw,140px) 0; }
  .ed-cta__h{ font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(30px,4.2vw,58px); line-height:1.06; letter-spacing:-0.025em; margin:0; max-width:18ch; }
  .ed-cta__h em{ font-style:normal; font-weight:300; letter-spacing:-0.06em; color:var(--gold); }
  .ed-cta__sub{ margin:24px 0 0; color:rgba(255,255,255,.6); font-size:16px; line-height:1.6; max-width:48ch; }
  .ed-cta__row{ margin-top:40px; display:flex; gap:16px; flex-wrap:wrap; }
  .ed-btn-gold{ background:var(--gold); color:#0A0A0B; padding:15px 28px; border-radius:999px; font-weight:600; font-size:15px; text-decoration:none; transition:transform .2s,filter .2s; }
  .ed-btn-gold:hover{ filter:brightness(1.06); transform:translateY(-1px); }
  .ed-btn-ghost{ border:1px solid rgba(255,255,255,.25); color:#fff; padding:15px 26px; border-radius:999px; font-weight:600; font-size:15px; text-decoration:none; transition:background .2s; }
  .ed-btn-ghost:hover{ background:rgba(255,255,255,.1); }

  /* Logo-Leiste (§01) */
  .ed-logos{ margin-top:44px; display:flex; gap:clamp(32px,5vw,64px); flex-wrap:wrap; align-items:center; }
  .ed-logos__chip{ display:flex; align-items:center; }
  .ed-logos__chip img{ height:72px; width:auto; display:block; }
  @media(max-width:620px){ .ed-logos__chip img{ height:56px; } }

  /* Tech-Stack Icons */
  .ed-srow .ico{ width:34px; height:34px; display:block; margin-bottom:12px; color:var(--gold-deep); }
  .ed-srow .ico *{ vector-effect:non-scaling-stroke; }
