/* ============================================================
   WEBROCKER · heavy.css  —  additive „Heavy-GSAP"-Effektschicht
   Läuft ÜBER enhance.css / scrolltrigger-fix. Fasst bestehende
   Elemente nicht an: alles hier sind NEUE Overlays/Deko oder
   Inner-Spans → kein Transform-Krieg mit den getunten Reveals.
   Akzent = --neon (#ecff00, wide-gamut display-p3 s. enhance.css).
   prefers-reduced-motion: alles Bewegte wird still (unten).
   Kill-Switch: <html data-no-heavy> schaltet heavy.js komplett aus.
   ============================================================ */

:root{
  --hv-neon:#ecff00;
  --hv-ink:#0b0b0b;
}
@supports (color: color(display-p3 1 1 1)){
  :root{ --hv-neon: color(display-p3 0.925 1 0); }
}

/* ---------- 1) Neon-Scroll-Progressbar (oben) ---------- */
.wr-hv-progress{
  position:fixed; inset:0 0 auto 0; height:3px; z-index:9985;
  transform:scaleX(0); transform-origin:0 50%; pointer-events:none;
  background:linear-gradient(90deg, rgba(236,255,0,.35), var(--hv-neon));
  box-shadow:0 0 calc(6px + 14px * var(--hv-vel,0)) rgba(236,255,0,.75);
  will-change:transform;
}

/* ---------- 2) Section-Navigator-Dots (rechts) ---------- */
.wr-hv-nav{
  position:fixed; top:50%; right:clamp(10px,1.6vw,22px); transform:translateY(-50%);
  z-index:9970; display:flex; flex-direction:column; gap:14px;
  pointer-events:auto;
}
.wr-hv-dot{
  position:relative; width:11px; height:11px; padding:0; border:0; cursor:pointer;
  background:transparent; -webkit-appearance:none; appearance:none;
}
.wr-hv-dot::before{
  content:""; position:absolute; inset:3px; border-radius:50%;
  background:rgba(255,255,255,.32);
  transition:background .3s ease, transform .3s ease, box-shadow .3s ease;
}
.wr-hv-dot:hover::before{ background:rgba(255,255,255,.7); transform:scale(1.25); }
.wr-hv-dot.is-active::before{
  background:var(--hv-neon); transform:scale(1.55);
  box-shadow:0 0 10px rgba(236,255,0,.9), 0 0 22px rgba(236,255,0,.45);
}
.wr-hv-dot__label{
  position:absolute; right:22px; top:50%; transform:translate(6px,-50%);
  white-space:nowrap; font-size:.72rem; letter-spacing:.04em; font-weight:600;
  color:#0b0b0b; background:var(--hv-neon); padding:3px 9px; border-radius:6px;
  opacity:0; pointer-events:none; transition:opacity .25s ease, transform .25s ease;
}
.wr-hv-dot:hover .wr-hv-dot__label{ opacity:1; transform:translate(0,-50%); }

/* ---------- 3) Custom Magnet-Cursor (Desktop) – schlicht & einheitlich GELB ----------
   Uli-Wunsch 2026-07-22: „einheitlich gelb, sonst wird's zu viel." Spektrum-Ring + Dauer-Rotation
   raus (die conic-gradient+mask+filter-Animation lief permanent → Repaint-Last / wirkte träge).
   Jetzt nur ein gelber Ring + gelber Punkt, keine Endlos-Animation. */
.wr-hv-cur, .wr-hv-cur-dot{
  position:fixed; top:0; left:0; z-index:100002; pointer-events:none;
  border-radius:50%; will-change:transform;
}
.wr-hv-cur{
  width:30px; height:30px; margin:-15px 0 0 -15px;
  border:2px solid #ecff00; border-color:color(display-p3 .925 1 0);
  box-shadow:0 0 10px rgba(236,255,0,.5);
  transition:width .2s ease, height .2s ease, margin .2s ease, background .2s ease, opacity .2s ease;
}
.wr-hv-cur-dot{
  width:6px; height:6px; margin:-3px 0 0 -3px;
  background:#ecff00; background:color(display-p3 .925 1 0);
  box-shadow:0 0 8px rgba(236,255,0,.8);
}
.wr-hv-cur.is-hot{
  width:52px; height:52px; margin:-26px 0 0 -26px;
  background:rgba(236,255,0,.10); background:color(display-p3 .925 1 0 / .10);
}
.wr-hv-cur.is-down{ transform-origin:center; }
/* nativen Cursor verstecken, sobald Custom-Cursor aktiv (nur Desktop/Fine-Pointer) */
html.wr-hv-cursor-on, html.wr-hv-cursor-on a, html.wr-hv-cursor-on button,
html.wr-hv-cursor-on .button-yellow, html.wr-hv-cursor-on [role="button"]{ cursor:none; }
html.wr-hv-cursor-on input, html.wr-hv-cursor-on textarea, html.wr-hv-cursor-on select{ cursor:auto; }

/* ---------- 4) Magnetische CTAs (Inner-Span) ---------- */
.wr-hv-mag{ display:inline-flex; align-items:center; gap:.5em; will-change:transform; }

/* ---------- 5) Velocity-Marquee-Band ---------- */
.wr-hv-marquee{
  position:relative; overflow:hidden; z-index:2;
  padding:clamp(14px,2vw,26px) 0;
  background:var(--hv-neon); color:var(--hv-ink);
  border-top:1px solid rgba(0,0,0,.15); border-bottom:1px solid rgba(0,0,0,.15);
}
.wr-hv-marquee__track{
  display:flex; width:max-content; will-change:transform;
  font-weight:800; letter-spacing:.02em; text-transform:uppercase;
  font-size:clamp(1.15rem,3.4vw,2.4rem); line-height:1;
}
.wr-hv-marquee__track span{ padding:0 .55em; display:inline-block; }
.wr-hv-marquee__track .wr-hv-star{ opacity:.55; }

/* ---------- 7) Underline-Draw unter Section-Headings ---------- */
.wr-hv-underline{
  display:block; height:3px; margin-top:.5rem; border-radius:2px;
  transform:scaleX(0); transform-origin:0 50%; will-change:transform;
  background:linear-gradient(90deg, var(--hv-neon), rgba(236,255,0,.15));
  max-width:min(280px,70%);
}

/* ---------- 8) Feuer-frei-Bild: Hover-Video (Gitarre lebt, Rauch steigt – Higgsfield i2v) ----------
   .wr-fv = die (bereits position:relative) Sektion .hero-component.feuer-frei. Das <video> liegt als
   zweites absolutes Element genau über dem absoluten Foto und blendet beim Hover auf; Text bleibt drüber. */
.wr-fv .wr-fv-vid{
  /* !important + inset-Longhands, weil eine Webflow-Basisregel Position/Größe des <video> sonst
     überschreibt (Video kam als position:relative 900×600 statt Foto-deckend) */
  position:absolute !important; top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
  width:100% !important; height:100% !important; z-index:0;
  object-fit:cover; opacity:0; pointer-events:none; border-radius:inherit;
  transition:opacity .55s ease; will-change:opacity;
}
.wr-fv.is-playing .wr-fv-vid{ opacity:1; }
/* Lesbarkeits-Overlay: dunkelt beim Abspielen die Mitte (wo die Schrift sitzt) ab, damit der Text
   über dem bewegten Video lesbar bleibt. Liegt im DOM NACH dem Video, VOR dem Text → z-index:2 wie beide,
   DOM-Reihenfolge entscheidet: über Video, unter Text. Beim Standbild unsichtbar (nur .is-playing). */
.wr-fv-scrim{
  position:absolute !important; top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
  z-index:2; pointer-events:none; opacity:0; transition:opacity .55s ease; border-radius:inherit;
  background:linear-gradient(180deg,
    rgba(6,8,10,.20) 0%, rgba(6,8,10,.60) 40%, rgba(6,8,10,.62) 66%, rgba(6,8,10,.18) 100%);
}
.wr-fv.is-playing .wr-fv-scrim{ opacity:1; }
.wr-fv-hint{
  position:absolute; left:14px; bottom:14px; z-index:3;
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 11px; border-radius:999px; pointer-events:none;
  font:600 12px/1 "JetBrains Mono", ui-monospace, monospace; letter-spacing:.05em;
  color:#0b0b0b; background:#ecff00; background:color(display-p3 .925 1 0);
  box-shadow:0 0 16px rgba(236,255,0,.5);
  opacity:.9; transition:opacity .35s ease, transform .35s ease;
}
.wr-fv.is-playing .wr-fv-hint{ opacity:0; transform:translateY(6px); }

/* ---------- 9) Buttons: Schwarz↔Gelb-Tausch bei Hover ----------
   Uli-Wunsch 2026-07-22: „einfach nur die Farbe tauschen – Schwarz und Gelb dreht sich um."
   Kein animierter Gradient mehr (war zu viel + Repaint-Last). Spezifität 0,4,0 + !important, weil die
   enhance.css-Hover-Regeln `background: var(--neon) !important` setzen; heavy.css lädt danach → gewinnt. */
.button-yellow{ transition:background-color .25s ease, color .25s ease, border-color .25s ease; }
/* Primär (gefüllt gelb) → Hover: dunkel + gelbe Schrift */
.button-yellow.w-button:not(.wr-cta-secondary):hover,
.button-yellow.w-button:not(.wr-cta-secondary):focus-visible{
  background-image:none !important;
  background-color:#0b0b0b !important;
  color:#ecff00 !important; color:color(display-p3 .925 1 0) !important;
  border-color:#ecff00 !important; border-color:color(display-p3 .925 1 0) !important;
}
/* Sekundär (Outline, gelbe Schrift) → Hover: gelb gefüllt + dunkle Schrift */
.button-yellow.w-button.wr-cta-secondary:hover,
.button-yellow.w-button.wr-cta-secondary:focus-visible{
  background-image:none !important;
  background-color:#ecff00 !important; background-color:color(display-p3 .925 1 0) !important;
  color:#0b0b0b !important;
  border-color:#ecff00 !important; border-color:color(display-p3 .925 1 0) !important;
}

/* ---------- reduced-motion: alles still ---------- */
@media (prefers-reduced-motion: reduce){
  .wr-hv-progress{ transform:scaleX(1); box-shadow:none; }
  .wr-hv-cur, .wr-hv-cur-dot{ display:none !important; }
  html.wr-hv-cursor-on, html.wr-hv-cursor-on *{ cursor:auto !important; }
  .wr-hv-marquee__track{ transform:none !important; }
  .wr-hv-underline{ transform:scaleX(1); }
  .wr-fv-vid, .wr-fv-hint, .wr-fv-scrim{ display:none !important; }
}
/* Touch/kein Fine-Pointer: Cursor-Overlay aus (nur CSS-Sicherheitsnetz; JS aktiviert eh nicht) */
@media (hover: none), (pointer: coarse){
  .wr-hv-cur, .wr-hv-cur-dot{ display:none !important; }
}

/* ---------- Fix: Underline-Draw unter ZENTRIERTEN Überschriften (Uli 2026-07-22) ----------
   Der Strich wird von heavy.js hinter die erste h2 der Sektion gesetzt und startet linksbündig.
   Bei zentrierten Überschriften klebte er dadurch links über der ersten Karte („Zusatzstrich"
   bei Christian Hoffmann). Kundenstimmen: ganz raus. Übrige zentrierte Headings: mittig. */
.section-kunde .wr-hv-underline{ display:none !important; }
.heading-style-h2.text-align-center + .wr-hv-underline{ margin-inline:auto; }

/* ============================================================
   NEUE INHALTS-SEKTIONEN (v14) – Uli 2026-07-22:
   „muss alles in der gleichen Schriftart sein, Spacing muss zusammenpassen"
   → Diese Blöcke setzen BEWUSST keine font-family und keine font-size.
     Überschriften nutzen .heading-style-h2, Texte .copy-large, Abstände
     .spacer-sm-start + .page-padding — also exakt die Seiten-Typografie.
     Hier steht nur Layout (Grid/Position/Rahmen).
   ============================================================ */

/* ---- Wisch-Slider (Vorher/Nachher-Projekte) ---- */
.wr-swipe{ position:relative; }
.wr-swipe__track{
  display:flex; gap:0; overflow-x:auto; scroll-snap-type:x mandatory;
  scroll-behavior:smooth; -webkit-overflow-scrolling:touch; scrollbar-width:none;
}
.wr-swipe__track::-webkit-scrollbar{ display:none; }
.wr-swipe__item{ flex:0 0 100%; scroll-snap-align:center; margin:0; padding:0 clamp(2px,1vw,10px); }
.wr-swipe__cap{ margin:.9em 0 0; text-align:center; opacity:.72; }
.wr-swipe__nav{
  position:absolute; top:calc(50% - 2.2em); transform:translateY(-50%); z-index:6;
  width:44px; height:44px; border-radius:50%; border:1px solid rgba(236,255,0,.5);
  background:rgba(10,10,10,.72); color:var(--hv-neon); cursor:pointer;
  display:grid; place-items:center; line-height:1; padding:0 0 .12em;
  transition:background .25s ease, transform .25s ease;
}
.wr-swipe__nav:hover{ background:rgba(236,255,0,.16); }
.wr-swipe__nav--prev{ left:-6px; } .wr-swipe__nav--next{ right:-6px; }
.wr-swipe__dots{ display:flex; justify-content:center; gap:9px; margin-top:1em; }
.wr-swipe__dot{ width:9px; height:9px; border-radius:50%; border:0; padding:0; cursor:pointer;
  background:rgba(255,255,255,.3); transition:background .25s ease, transform .25s ease; }
.wr-swipe__dot.is-on{ background:var(--hv-neon); transform:scale(1.3); }
@media (max-width:700px){ .wr-swipe__nav{ display:none; } }

/* ---- Vorher/Nachher-Regler ---- */
.wr-ba{ position:relative; border-radius:12px; overflow:hidden; line-height:0; --pos:50%;
  border:1px solid rgba(255,255,255,.12); box-shadow:0 18px 40px rgba(0,0,0,.5); touch-action:pan-y; }
.wr-ba img{ width:100%; height:auto; display:block; -webkit-user-drag:none; user-select:none; }
.wr-ba__before{ position:absolute; inset:0; clip-path:inset(0 calc(100% - var(--pos)) 0 0); }
.wr-ba__before img{ width:100%; height:100%; object-fit:cover; }
.wr-ba__tag{ position:absolute; top:12px; z-index:4; padding:.45em .8em; border-radius:999px;
  font-size:.68em; font-weight:700; letter-spacing:.1em; line-height:1; pointer-events:none; }
.wr-ba__tag--b{ left:12px; background:rgba(0,0,0,.74); color:#fff; border:1px solid rgba(255,255,255,.25); }
.wr-ba__tag--a{ right:12px; background:var(--hv-neon); color:var(--hv-ink); }
.wr-ba__line{ position:absolute; top:0; bottom:0; left:var(--pos); width:2px; background:var(--hv-neon); z-index:5; pointer-events:none; transform:translateX(-1px); }
.wr-ba__knob{ position:absolute; top:50%; left:var(--pos); z-index:6; width:40px; height:40px; margin:-20px 0 0 -20px;
  border-radius:50%; background:var(--hv-neon); pointer-events:none; box-shadow:0 4px 14px rgba(0,0,0,.5);
  display:grid; place-items:center; color:var(--hv-ink); font-size:15px; line-height:1; }
.wr-ba__knob::before{ content:"⟺"; }
.wr-ba__range{ position:absolute; inset:0; z-index:7; width:100%; height:100%; margin:0; opacity:0;
  cursor:ew-resize; -webkit-appearance:none; appearance:none; background:transparent; }
.wr-ba__range::-webkit-slider-thumb{ -webkit-appearance:none; width:46px; height:100%; cursor:ew-resize; }
.wr-ba__range::-moz-range-thumb{ width:46px; height:100%; border:0; background:transparent; cursor:ew-resize; }

/* ---- Software: Laptop + Handy ---- */
.wr-app{ margin:0 auto; max-width:1080px; }
.wr-app__devices{ display:grid; grid-template-columns:1fr auto; gap:clamp(18px,3vw,44px); align-items:end; }
.wr-app__txt{ margin-top:1.4em; }
.wr-lap{ filter:drop-shadow(0 24px 44px rgba(0,0,0,.6)); }
.wr-lap__screen{ background:#0a0c0e; border:10px solid #17191d; border-bottom:0; border-radius:14px 14px 0 0;
  box-shadow:0 0 0 1px rgba(236,255,0,.18), inset 0 0 0 1px rgba(255,255,255,.04); overflow:hidden; line-height:0; }
.wr-lap__screen img{ width:100%; height:auto; display:block; }
.wr-lap__foot{ height:14px; margin:0 -22px; background:linear-gradient(#2a2d33,#15171b);
  border-radius:2px 2px 12px 12px; position:relative; box-shadow:0 14px 22px rgba(0,0,0,.45); }
.wr-lap__foot::after{ content:""; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:82px; height:5px; background:#0a0c0e; border-radius:0 0 8px 8px; }
.wr-pho{ width:clamp(150px,17vw,210px); position:relative; background:#17191d; border-radius:30px; padding:8px;
  box-shadow:0 0 0 1px rgba(236,255,0,.22), 0 24px 44px rgba(0,0,0,.55); }
.wr-pho__screen{ border-radius:23px; overflow:hidden; background:#000; line-height:0; }
.wr-pho__screen img{ width:100%; height:auto; display:block; }
.wr-pho__cam{ position:absolute; top:16px; left:50%; transform:translateX(-50%); width:6px; height:6px;
  border-radius:50%; background:#0a0c0e; box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); z-index:2; }
@media (max-width:760px){
  .wr-app__devices{ grid-template-columns:1fr; justify-items:center; gap:22px; }
  .wr-pho{ width:min(190px,52vw); }
}

/* ---- Ablauf-Schritte ---- */
.wr-steps{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:clamp(20px,3vw,38px); }
.wr-step{ border-top:2px solid rgba(236,255,0,.3); padding-top:1em; }
.wr-step__no{ display:block; color:var(--hv-neon); font-size:.72em; letter-spacing:.16em; margin-bottom:.5em; }
.wr-step .copy-large{ margin:0; }
.wr-step strong{ color:#fff; }

/* ---- FAQ ---- */
.wr-faq{ max-width:760px; margin:0 auto; }
.wr-faq__item{ border-bottom:1px solid rgba(255,255,255,.14); }
.wr-faq__item summary{ list-style:none; cursor:pointer; position:relative;
  padding:.95em 2.2em .95em 0; margin:0; font-weight:700; color:#fff; transition:color .25s ease; }
.wr-faq__item summary::-webkit-details-marker{ display:none; }
.wr-faq__item summary:hover{ color:var(--hv-neon); }
.wr-faq__item summary::after{ content:""; position:absolute; right:.3em; top:45%;
  width:10px; height:10px; border-right:2px solid var(--hv-neon); border-bottom:2px solid var(--hv-neon);
  transform:translateY(-50%) rotate(45deg); transition:transform .25s ease; }
.wr-faq__item[open] summary::after{ transform:translateY(-20%) rotate(-135deg); }
.wr-faq__item p{ margin:0 0 1.2em; opacity:.78; }

/* ---- Software-Projektkarten (klein, nebeneinander) → öffnen das Info-Popup ---- */
.wr-projgrid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:clamp(16px,2.5vw,30px); max-width:940px; margin:0 auto; }
.wr-projcard{
  display:block; text-align:left; padding:0; cursor:pointer; font:inherit; color:inherit;
  background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.12); border-radius:14px; overflow:hidden;
  transition:border-color .3s ease, transform .3s ease, background .3s ease;
}
.wr-projcard:hover, .wr-projcard:focus-visible{ border-color:rgba(236,255,0,.55); transform:translateY(-4px); background:rgba(236,255,0,.05); }
.wr-projcard__shot{ display:block; line-height:0; background:#0a0c0e; border-bottom:1px solid rgba(255,255,255,.1); }
.wr-projcard__shot img{ width:100%; height:auto; display:block; aspect-ratio:16/9; object-fit:cover; object-position:top center; }
.wr-projcard__body{ display:block; padding:1.1em 1.2em 1.3em; }
.wr-projcard__kicker{ display:block; color:var(--hv-neon); font-size:.72em; letter-spacing:.14em; text-transform:uppercase; margin-bottom:.5em; }
.wr-projcard__name{ display:block; font-weight:700; font-size:1.15em; color:#fff; margin-bottom:.35em; }
.wr-projcard__desc{ display:block; opacity:.66; line-height:1.55; margin-bottom:.8em; }
.wr-projcard__more{ display:inline-flex; align-items:center; gap:.4em; color:var(--hv-neon); font-weight:700; font-size:.92em; }
.wr-projcard__more::after{ content:"→"; transition:transform .3s ease; }
.wr-projcard:hover .wr-projcard__more::after{ transform:translateX(4px); }
/* Medien im Info-Popup (Laptop + Handy) */
.wr-info__media{ margin:1.2em 0 .4em; }
.wr-info__media .wr-app__devices{ align-items:end; }
.wr-info__media .wr-pho{ width:clamp(96px,13vw,132px); }
@media (prefers-reduced-motion: reduce){ .wr-projcard{ transition:none } .wr-projcard:hover{ transform:none } }

/* ---- Angebots-Karten (Stacking-Cards, Muster von hk2.mztrommelfell.de) ----
   Übernommen: Kartenaufbau (große Nummer, Titel, Punkte-Liste), Glanz-Overlay,
   Farbstufung je Karte, 3D-Tilt zur Maus + seitlicher Einflug (JS in heavy.js). */
.wr-stack__list{
  display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(1rem,2vw,2rem);
  max-width:1120px; margin:0 auto; align-items:stretch;
  width:100%; min-width:0;              /* .page-padding ist flex */
}
.wr-stack__item{ width:100%; perspective:900px; min-width:0; }
.wr-stack-card{
  position:relative; overflow:hidden; height:100%; min-height:22em;
  display:flex; flex-direction:column; justify-content:space-between;
  border-radius:1.5em; padding:clamp(1.7em,3vw,2.4em);
  border:1px solid rgba(255,255,255,.1);
  transform-style:preserve-3d; will-change:transform;
  box-shadow:0 2px 12px rgba(0,0,0,.28);
}
/* Farbstufung: dunkel → heller, mit Neon-Anteil (statt Trommelfell-Blau) */
.wr-stack-card.is--1{ background:linear-gradient(160deg,#171a0d,#0d0f0a); border-color:rgba(236,255,0,.42); }
.wr-stack-card.is--2{ background:linear-gradient(160deg,#14160e,#0b0c08); border-color:rgba(255,255,255,.16); }
.wr-stack-card.is--3{ background:linear-gradient(160deg,#121309,#0a0b07); border-color:rgba(255,255,255,.13); }
.wr-stack-card::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(ellipse at top right, rgba(236,255,0,.10) 0%, transparent 62%);
}
.wr-card-number{
  font-size:5em; line-height:.9; font-weight:800; letter-spacing:-.02em;
  color:rgba(236,255,0,.13); margin-bottom:.1em;
}
.wr-stack-card.is--1 .wr-card-number{ color:rgba(236,255,0,.2); }
.wr-card-body{ display:flex; flex-direction:column; gap:.75rem; }
.wr-card-title{ font-size:1.55em; font-weight:700; line-height:1.12; color:#fff; margin:0; letter-spacing:-.01em; }
.wr-card-features{ list-style:none; padding:0; margin:.35rem 0 0; display:flex; flex-direction:column; gap:.55rem; }
.wr-card-features li{ font-size:.9em; color:rgba(255,255,255,.74); display:flex; align-items:flex-start; gap:.65rem; line-height:1.45; }
.wr-card-features li::before{
  content:""; width:5px; height:5px; border-radius:50%; background:var(--hv-neon);
  flex-shrink:0; margin-top:.5em;
}
.wr-card-cta{ margin-top:1.6em; align-self:flex-start; display:inline-flex !important; }
.wr-stack__note{ margin:clamp(1.8em,3vw,2.6em) auto 0; max-width:58ch; opacity:.5; font-size:.95em; }
@media (max-width:900px){ .wr-stack__list{ grid-template-columns:1fr; } .wr-stack-card{ min-height:0; } }

/* Vorher/Nachher-Regler in der Projekt-Lightbox */
.wr-detail__ba .wr-ba{ border:0; box-shadow:none; border-radius:0; }
.wr-detail__ba .wr-ba img{ width:100%; height:auto; display:block; }

/* ---- Gradient-Wave-Text (Wörter werden beim Scrollen eingefärbt) ---- */
.wr-wave__w{ display:inline; transition:none; }
@media (prefers-reduced-motion: reduce){ .wr-wave__w{ color:inherit !important; } }
