/* Page-Builder Pro v2 - Frontend-Widget-Styles
   Themen-agnostisch: Marken-Farben kommen aus den globalen Styles
   (--pbv2-color-*), Flaechen nutzen neutrales Grau das auf hellem wie
   dunklem Hintergrund funktioniert. */

.pbv2-w{
  --pbv2-primary: var(--pbv2-color-primary,#a78bfa);
  --pbv2-secondary: var(--pbv2-color-secondary,#22d3ee);
  --pbv2-accent: var(--pbv2-color-accent,#f59e0b);
  --pbv2-surface: rgba(128,128,128,.08);
  --pbv2-surface2: rgba(128,128,128,.14);
  --pbv2-line: rgba(128,128,128,.24);
  --pbv2-rad: var(--pbv2-radius,12px);
  --pbv2-sh: var(--pbv2-shadow,0 6px 20px rgba(0,0,0,.14));
  font-family: var(--pbv2-font-body,inherit);
}
.pbv2-w *{box-sizing:border-box;}
.pbv2-w h1,.pbv2-w h2,.pbv2-w h3,.pbv2-w h4{font-family:var(--pbv2-font-heading,inherit);}
.pbv2-w img{max-width:100%;}
/* Marken-Farbe nur fuer Links in Textinhalten - Buttons behalten ihre Stilfarbe */
.pbv2-richtext a,.pbv2-accordion__body a,.pbv2-tabs__panel a{color:var(--pbv2-primary);}

/* Admin-Hinweis (nur fuer eingeloggte Redakteure sichtbar) */
.pbv2-hint{
  background:rgba(245,158,11,.10);border:1px solid rgba(245,158,11,.34);
  color:#f59e0b;border-radius:8px;padding:.7rem 1rem;font-size:.86rem;
}

/* ── Animationen (frontend.js setzt is-in) ────────────────────────────── */
.pbv2-anim{opacity:0;transition:opacity var(--pbv2-d,700ms) ease,transform var(--pbv2-d,700ms) cubic-bezier(.2,.7,.2,1);will-change:opacity,transform;}
.pbv2-anim[data-pbv2-anim="fade-in"]{transform:none;}
.pbv2-anim[data-pbv2-anim="slide-up"]{transform:translateY(38px);}
.pbv2-anim[data-pbv2-anim="slide-down"]{transform:translateY(-38px);}
.pbv2-anim[data-pbv2-anim="slide-left"]{transform:translateX(38px);}
.pbv2-anim[data-pbv2-anim="slide-right"]{transform:translateX(-38px);}
.pbv2-anim[data-pbv2-anim="zoom-in"]{transform:scale(.86);}
.pbv2-anim[data-pbv2-anim="zoom-out"]{transform:scale(1.14);}
.pbv2-anim[data-pbv2-anim="flip-in"]{transform:perspective(800px) rotateX(28deg);}
.pbv2-anim[data-pbv2-anim="blur-in"]{filter:blur(14px);}
.pbv2-anim.is-in{opacity:1;transform:none;filter:none;}
@media (prefers-reduced-motion:reduce){.pbv2-anim{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;}}

/* ── Button ───────────────────────────────────────────────────────────── */
.pbv2-btn-wrap{display:flex;}
.pbv2-btn-wrap[style*="center"]{justify-content:center;}
.pbv2-btn-wrap[style*="right"]{justify-content:flex-end;}
.pbv2-btn{
  display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;
  font-weight:700;border-radius:var(--pbv2-rad);cursor:pointer;border:2px solid transparent;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease,filter .15s;
  line-height:1.2;white-space:nowrap;
}
.pbv2-btn--sm{padding:.5rem 1rem;font-size:.86rem;}
.pbv2-btn--md{padding:.72rem 1.5rem;font-size:.98rem;}
.pbv2-btn--lg{padding:.95rem 2rem;font-size:1.08rem;}
.pbv2-btn--block{display:flex;justify-content:center;width:100%;}
.pbv2-btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.22);}
.pbv2-btn:active{transform:translateY(0);}
.pbv2-btn--primary{background:var(--pbv2-primary);color:#fff;}
.pbv2-btn--secondary{background:var(--pbv2-secondary);color:#06121a;}
.pbv2-btn--outline{border-color:var(--pbv2-primary);color:var(--pbv2-primary);background:transparent;}
.pbv2-btn--outline:hover{background:var(--pbv2-primary);color:#fff;}
.pbv2-btn--ghost{background:var(--pbv2-surface2);color:inherit;}
.pbv2-btn--light{background:#fff;color:#15151f;}
.pbv2-btn--dark{background:#15151f;color:#fff;}

/* ── Rich-Text ────────────────────────────────────────────────────────── */
.pbv2-richtext{line-height:1.7;}
.pbv2-richtext p:last-child{margin-bottom:0;}
.pbv2-text--small{font-size:.9rem;}
.pbv2-text--large{font-size:1.18rem;}
.pbv2-richtext ul,.pbv2-richtext ol{padding-left:1.3rem;}

/* ── Icon-Box ─────────────────────────────────────────────────────────── */
.pbv2-iconbox{display:flex;flex-direction:column;gap:.65rem;}
.pbv2-iconbox--center{align-items:center;text-align:center;}
.pbv2-iconbox--left{align-items:flex-start;text-align:left;}
.pbv2-iconbox__icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:62px;height:62px;font-size:1.7rem;color:var(--pbv2-ic,#a78bfa);flex-shrink:0;
}
.pbv2-iconbox__icon--circle,.pbv2-iconbox__icon--square{background:var(--pbv2-surface2);}
.pbv2-iconbox__icon--circle{border-radius:50%;background:color-mix(in srgb,var(--pbv2-ic,#a78bfa) 16%,transparent);}
.pbv2-iconbox__icon--square{border-radius:14px;background:color-mix(in srgb,var(--pbv2-ic,#a78bfa) 16%,transparent);}
.pbv2-iconbox__title{margin:0;font-size:1.16rem;font-weight:700;}
.pbv2-iconbox__text{margin:0;opacity:.78;line-height:1.6;}
.pbv2-iconbox__link{font-weight:600;text-decoration:none;font-size:.92rem;}

/* ── Feature-Liste ────────────────────────────────────────────────────── */
.pbv2-flist{list-style:none;margin:0;padding:0;display:grid;gap:.7rem;}
.pbv2-flist--cols2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.pbv2-flist li{display:flex;align-items:flex-start;gap:.6rem;line-height:1.5;}
.pbv2-flist li i{color:var(--pbv2-ic,#22d3ee);font-size:1.15rem;flex-shrink:0;margin-top:.05rem;}

/* ── Hinweis-Box ──────────────────────────────────────────────────────── */
.pbv2-alert{display:flex;gap:.8rem;padding:1rem 1.1rem;border-radius:var(--pbv2-rad);border:1px solid;align-items:flex-start;}
.pbv2-alert__icon{font-size:1.3rem;flex-shrink:0;margin-top:.05rem;}
.pbv2-alert__title{font-weight:700;margin-bottom:.15rem;}
.pbv2-alert__text{opacity:.85;line-height:1.55;}
.pbv2-alert--info{background:rgba(56,189,248,.10);border-color:rgba(56,189,248,.4);}
.pbv2-alert--info .pbv2-alert__icon{color:#38bdf8;}
.pbv2-alert--success{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.4);}
.pbv2-alert--success .pbv2-alert__icon{color:#22c55e;}
.pbv2-alert--warning{background:rgba(245,158,11,.10);border-color:rgba(245,158,11,.4);}
.pbv2-alert--warning .pbv2-alert__icon{color:#f59e0b;}
.pbv2-alert--danger{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.4);}
.pbv2-alert--danger .pbv2-alert__icon{color:#ef4444;}

/* ── Zitat ────────────────────────────────────────────────────────────── */
.pbv2-quote{margin:0;border-left:4px solid var(--pbv2-primary);padding:.5rem 0 .5rem 1.3rem;position:relative;}
.pbv2-quote--center{border-left:0;padding:0;text-align:center;}
.pbv2-quote__mark{font-size:2rem;color:var(--pbv2-primary);opacity:.5;}
.pbv2-quote__text{font-size:1.22rem;font-style:italic;line-height:1.55;margin:.2rem 0 .6rem;}
.pbv2-quote__cite{display:flex;flex-direction:column;gap:.1rem;}
.pbv2-quote--center .pbv2-quote__cite{align-items:center;}
.pbv2-quote__author{font-weight:700;}
.pbv2-quote__role{font-size:.86rem;opacity:.65;}

/* ── Inhalts-Karte ────────────────────────────────────────────────────── */
.pbv2-card{
  background:var(--pbv2-surface);border:1px solid var(--pbv2-line);
  border-radius:var(--pbv2-rad);overflow:hidden;display:flex;flex-direction:column;height:100%;
  transition:transform .18s ease,box-shadow .18s ease;
}
.pbv2-card:hover{transform:translateY(-4px);box-shadow:var(--pbv2-sh);}
.pbv2-card__media{position:relative;}
.pbv2-card__media img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
.pbv2-card__badge{
  position:absolute;top:.7rem;left:.7rem;background:var(--pbv2-accent);color:#1a1505;
  font-size:.72rem;font-weight:800;padding:.22rem .6rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;
}
.pbv2-card__badgerow{padding:1rem 1rem 0;}
.pbv2-card__body{padding:1.1rem;display:flex;flex-direction:column;gap:.5rem;flex:1;}
.pbv2-card__title{margin:0;font-size:1.18rem;font-weight:700;}
.pbv2-card__text{margin:0;opacity:.78;line-height:1.6;flex:1;}
.pbv2-card__foot{margin-top:.4rem;}

/* ── Bildverhaeltnisse ────────────────────────────────────────────────── */
.pbv2-ratio--16x9{aspect-ratio:16/9;}
.pbv2-ratio--4x3{aspect-ratio:4/3;}
.pbv2-ratio--1x1{aspect-ratio:1/1;}
.pbv2-ratio--21x9{aspect-ratio:21/9;}

/* ── Galerie ──────────────────────────────────────────────────────────── */
.pbv2-gallery{display:grid;grid-template-columns:repeat(var(--pbv2-cols,3),1fr);gap:var(--pbv2-gap,10px);}
.pbv2-gallery__item{margin:0;position:relative;overflow:hidden;border-radius:var(--pbv2-rad,10px);}
.pbv2-gallery[style*="--pbv2-rad"] .pbv2-gallery__item{border-radius:var(--pbv2-rad);}
.pbv2-gallery__item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease;cursor:zoom-in;}
.pbv2-gallery__item.pbv2-ratio--auto img{height:auto;}
.pbv2-gallery__item:hover img{transform:scale(1.06);}
.pbv2-gallery__item figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:.5rem .7rem;font-size:.82rem;color:#fff;
  background:linear-gradient(transparent,rgba(0,0,0,.72));opacity:0;transition:opacity .2s;
}
.pbv2-gallery__item:hover figcaption{opacity:1;}

/* Lightbox */
.pbv2-lightbox{
  position:fixed;inset:0;z-index:99999;background:rgba(8,8,14,.94);
  display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;
  opacity:0;pointer-events:none;transition:opacity .2s;
}
.pbv2-lightbox.is-open{opacity:1;pointer-events:auto;}
.pbv2-lightbox img{max-width:92vw;max-height:82vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.6);}
.pbv2-lightbox__cap{color:#cbd5e1;font-size:.9rem;}
.pbv2-lightbox__close,.pbv2-lightbox__nav{
  position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;cursor:pointer;
  width:48px;height:48px;border-radius:50%;font-size:1.4rem;display:flex;align-items:center;justify-content:center;
}
.pbv2-lightbox__close{top:1.2rem;right:1.2rem;}
.pbv2-lightbox__nav--prev{left:1.2rem;top:50%;transform:translateY(-50%);}
.pbv2-lightbox__nav--next{right:1.2rem;top:50%;transform:translateY(-50%);}
.pbv2-lightbox__close:hover,.pbv2-lightbox__nav:hover{background:rgba(255,255,255,.26);}

/* ── Video ────────────────────────────────────────────────────────────── */
.pbv2-video{position:relative;overflow:hidden;background:#000;}
.pbv2-video iframe,.pbv2-video video{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}

/* ── Hero-Slider ──────────────────────────────────────────────────────── */
.pbv2-slider{position:relative;overflow:hidden;border-radius:var(--pbv2-rad);height:var(--pbv2-h,460px);}
.pbv2-slider__track{display:flex;height:100%;transition:transform .55s cubic-bezier(.4,0,.2,1);}
.pbv2-slide{
  min-width:100%;height:100%;position:relative;display:flex;align-items:center;
  background-size:cover;background-position:center;background-color:#1a1d2e;
}
.pbv2-slide__overlay{position:absolute;inset:0;background:#000;}
.pbv2-slide__inner{position:relative;max-width:760px;padding:2.2rem;color:#fff;margin:0 auto;}
.pbv2-slide--left{justify-content:flex-start;} .pbv2-slide--left .pbv2-slide__inner{margin:0;text-align:left;}
.pbv2-slide--center{justify-content:center;} .pbv2-slide--center .pbv2-slide__inner{text-align:center;}
.pbv2-slide--right{justify-content:flex-end;} .pbv2-slide--right .pbv2-slide__inner{margin:0;text-align:right;}
.pbv2-slide__heading{font-size:clamp(1.6rem,4vw,2.8rem);font-weight:800;margin:0 0 .6rem;line-height:1.15;}
.pbv2-slide__sub{font-size:clamp(.98rem,2vw,1.2rem);opacity:.92;margin:0 0 1.2rem;}
.pbv2-slider__arrow{
  position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;
  background:rgba(0,0,0,.42);color:#fff;border:0;cursor:pointer;font-size:1.2rem;
  display:flex;align-items:center;justify-content:center;transition:background .15s;
}
.pbv2-slider__arrow:hover{background:rgba(0,0,0,.7);}
.pbv2-slider__arrow--prev{left:1rem;} .pbv2-slider__arrow--next{right:1rem;}
.pbv2-slider__dots{position:absolute;bottom:1rem;left:0;right:0;display:flex;gap:.4rem;justify-content:center;}
.pbv2-slider__dot{width:10px;height:10px;border-radius:50%;border:0;cursor:pointer;background:rgba(255,255,255,.42);padding:0;}
.pbv2-slider__dot.is-active{background:#fff;width:26px;border-radius:6px;}

/* ── Logo-Raster ──────────────────────────────────────────────────────── */
.pbv2-logos{display:grid;grid-template-columns:repeat(var(--pbv2-cols,4),1fr);gap:1rem;align-items:center;}
.pbv2-logos__item{display:flex;align-items:center;justify-content:center;padding:.8rem;}
.pbv2-logos__item img{max-height:54px;width:auto;object-fit:contain;transition:filter .2s,opacity .2s,transform .2s;}
.pbv2-logos--gray .pbv2-logos__item img{filter:grayscale(1);opacity:.65;}
.pbv2-logos--gray .pbv2-logos__item img:hover{filter:none;opacity:1;transform:scale(1.05);}

/* ── Karte ────────────────────────────────────────────────────────────── */
.pbv2-map{overflow:hidden;border:1px solid var(--pbv2-line);}

/* ── Accordion ────────────────────────────────────────────────────────── */
.pbv2-accordion{display:flex;flex-direction:column;gap:.6rem;}
.pbv2-accordion__item{border:1px solid var(--pbv2-line);border-radius:var(--pbv2-rad);overflow:hidden;background:var(--pbv2-surface);}
.pbv2-accordion__head{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;
  background:transparent;border:0;color:inherit;cursor:pointer;
  padding:1rem 1.15rem;font-size:1.02rem;font-weight:700;text-align:left;font-family:inherit;
}
.pbv2-accordion__head i{transition:transform .25s;color:var(--pbv2-primary);}
.pbv2-accordion__item.is-open .pbv2-accordion__head i{transform:rotate(180deg);}
.pbv2-accordion__panel{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.pbv2-accordion__body{padding:0 1.15rem 1.1rem;opacity:.85;line-height:1.65;}

/* ── Tabs ─────────────────────────────────────────────────────────────── */
.pbv2-tabs__nav{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.1rem;}
.pbv2-tabs__nav--center{justify-content:center;}
.pbv2-tabs__tab{
  background:transparent;border:0;color:inherit;cursor:pointer;font-family:inherit;
  padding:.6rem 1rem;font-size:.94rem;font-weight:600;opacity:.62;transition:all .15s;border-radius:8px;
}
.pbv2-tabs__tab.is-active{opacity:1;}
.pbv2-tabs--line .pbv2-tabs__nav{border-bottom:2px solid var(--pbv2-line);gap:.2rem;}
.pbv2-tabs--line .pbv2-tabs__tab{border-bottom:2px solid transparent;margin-bottom:-2px;border-radius:0;}
.pbv2-tabs--line .pbv2-tabs__tab.is-active{border-bottom-color:var(--pbv2-primary);color:var(--pbv2-primary);}
.pbv2-tabs--box .pbv2-tabs__tab.is-active{background:var(--pbv2-surface2);}
.pbv2-tabs--pill .pbv2-tabs__tab{border-radius:999px;}
.pbv2-tabs--pill .pbv2-tabs__tab.is-active{background:var(--pbv2-primary);color:#fff;}
.pbv2-tabs__panel{display:none;line-height:1.65;}
.pbv2-tabs__panel.is-active{display:block;animation:pbv2-fade .25s ease;}
@keyframes pbv2-fade{from{opacity:0;}to{opacity:1;}}

/* ── Counter ──────────────────────────────────────────────────────────── */
.pbv2-counters{display:grid;grid-template-columns:repeat(var(--pbv2-cols,3),1fr);gap:1.4rem;text-align:center;}
.pbv2-counter{display:flex;flex-direction:column;gap:.3rem;align-items:center;}
.pbv2-counter__icon{font-size:1.9rem;color:var(--pbv2-ic,#a78bfa);}
.pbv2-counter__num{font-size:2.5rem;font-weight:800;color:var(--pbv2-ic,#a78bfa);line-height:1;font-family:var(--pbv2-font-heading,inherit);}
.pbv2-counter__label{opacity:.75;font-size:.95rem;}

/* ── Fortschrittsbalken ───────────────────────────────────────────────── */
.pbv2-progress{display:flex;flex-direction:column;gap:1rem;}
.pbv2-progress__top{display:flex;justify-content:space-between;margin-bottom:.35rem;font-size:.92rem;}
.pbv2-progress__label{font-weight:600;}
.pbv2-progress__pct{opacity:.7;}
.pbv2-progress__track{height:10px;background:var(--pbv2-surface2);border-radius:999px;overflow:hidden;}
.pbv2-progress__bar{
  height:100%;width:0;border-radius:999px;
  background:linear-gradient(90deg,var(--pbv2-ic,#22d3ee),var(--pbv2-primary));
  transition:width 1.1s cubic-bezier(.2,.7,.2,1);
}

/* ── Countdown ────────────────────────────────────────────────────────── */
.pbv2-countdown--center{text-align:center;}
.pbv2-countdown__title{font-weight:700;font-size:1.15rem;margin-bottom:.8rem;}
.pbv2-countdown__units{display:flex;gap:.7rem;flex-wrap:wrap;}
.pbv2-countdown--center .pbv2-countdown__units{justify-content:center;}
.pbv2-countdown__unit{display:flex;flex-direction:column;align-items:center;min-width:74px;}
.pbv2-countdown--box .pbv2-countdown__unit{
  background:var(--pbv2-surface);border:1px solid var(--pbv2-line);
  border-radius:var(--pbv2-rad);padding:.8rem .6rem;
}
.pbv2-countdown__val{font-size:2rem;font-weight:800;color:var(--pbv2-primary);line-height:1;font-variant-numeric:tabular-nums;}
.pbv2-countdown__lab{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;opacity:.65;margin-top:.25rem;}
.pbv2-countdown.is-done .pbv2-countdown__units{display:none;}
.pbv2-countdown__done{font-size:1.3rem;font-weight:800;color:var(--pbv2-accent);display:none;}
.pbv2-countdown.is-done .pbv2-countdown__done{display:block;}

/* ── Testimonials ─────────────────────────────────────────────────────── */
.pbv2-testimonials{display:grid;grid-template-columns:repeat(var(--pbv2-cols,3),1fr);gap:1.2rem;}
.pbv2-testimonial{
  margin:0;background:var(--pbv2-surface);border:1px solid var(--pbv2-line);
  border-radius:var(--pbv2-rad);padding:1.4rem;display:flex;flex-direction:column;gap:.8rem;
}
.pbv2-testimonial__stars{color:var(--pbv2-accent);font-size:.92rem;letter-spacing:.1em;}
.pbv2-testimonial__quote{margin:0;font-style:italic;line-height:1.6;flex:1;}
.pbv2-testimonial__cite{display:flex;align-items:center;gap:.7rem;}
.pbv2-testimonial__avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.pbv2-testimonial__avatar--ph{display:flex;align-items:center;justify-content:center;background:var(--pbv2-surface2);color:var(--pbv2-primary);}
.pbv2-testimonial__meta{display:flex;flex-direction:column;}
.pbv2-testimonial__author{font-weight:700;}
.pbv2-testimonial__role{font-size:.82rem;opacity:.65;}

/* ── Preistabelle ─────────────────────────────────────────────────────── */
.pbv2-pricing{display:grid;grid-template-columns:repeat(var(--pbv2-cols,3),1fr);gap:1.2rem;align-items:start;}
.pbv2-plan{
  background:var(--pbv2-surface);border:1px solid var(--pbv2-line);border-radius:var(--pbv2-rad);
  padding:1.6rem 1.4rem;display:flex;flex-direction:column;gap:.5rem;position:relative;text-align:center;
}
.pbv2-plan--featured{border-color:var(--pbv2-primary);border-width:2px;box-shadow:var(--pbv2-sh);}
.pbv2-plan__badge{
  position:absolute;top:-.8rem;left:50%;transform:translateX(-50%);
  background:var(--pbv2-primary);color:#fff;font-size:.72rem;font-weight:800;
  padding:.25rem .8rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;
}
.pbv2-plan__name{font-weight:700;font-size:1.1rem;opacity:.85;}
.pbv2-plan__price{display:flex;align-items:baseline;justify-content:center;gap:.2rem;}
.pbv2-plan__amount{font-size:2.6rem;font-weight:800;color:var(--pbv2-primary);line-height:1;}
.pbv2-plan__cur{font-size:1rem;font-weight:700;opacity:.7;}
.pbv2-plan__period{font-size:.85rem;opacity:.6;margin-bottom:.4rem;}
.pbv2-plan__features{list-style:none;margin:.5rem 0;padding:0;display:flex;flex-direction:column;gap:.5rem;text-align:left;}
.pbv2-plan__features li{display:flex;gap:.5rem;align-items:flex-start;font-size:.92rem;}
.pbv2-plan__features li i{color:var(--pbv2-secondary);margin-top:.15rem;}
.pbv2-plan__foot{margin-top:auto;padding-top:.6rem;}

/* ── CTA-Banner ───────────────────────────────────────────────────────── */
.pbv2-cta{padding:2.4rem 2rem;display:flex;gap:1.4rem;align-items:center;}
.pbv2-cta--inline{justify-content:space-between;flex-wrap:wrap;}
.pbv2-cta--stacked{flex-direction:column;text-align:center;}
.pbv2-cta__heading{margin:0 0 .3rem;font-size:1.6rem;font-weight:800;}
.pbv2-cta__sub{margin:0;opacity:.92;}
.pbv2-cta__action{flex-shrink:0;}

/* ── Teilen-Buttons ───────────────────────────────────────────────────── */
.pbv2-share{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;}
.pbv2-share--center{justify-content:center;} .pbv2-share--right{justify-content:flex-end;}
.pbv2-share__label{font-weight:600;font-size:.92rem;opacity:.8;}
.pbv2-share__btns{display:flex;gap:.45rem;}
.pbv2-share__btn{
  width:42px;height:42px;display:flex;align-items:center;justify-content:center;
  border:0;cursor:pointer;color:#fff;background:var(--pbv2-net,#888);font-size:1.1rem;transition:transform .15s,filter .15s;
}
.pbv2-share__btn--circle{border-radius:50%;}
.pbv2-share__btn--flat{border-radius:8px;}
.pbv2-share__btn:hover{transform:translateY(-3px);filter:brightness(1.1);}
.pbv2-share__btn.is-copied{background:#22c55e!important;}

/* ── Now-Playing ──────────────────────────────────────────────────────── */
.pbv2-np{
  position:relative;overflow:hidden;border-radius:var(--pbv2-rad);
  padding:1.5rem 1.7rem;display:flex;align-items:center;gap:1.3rem;flex-wrap:wrap;
}
.pbv2-np--gradient{background:linear-gradient(125deg,var(--pbv2-primary),var(--pbv2-secondary));color:#fff;}
.pbv2-np--solid{background:var(--pbv2-primary);color:#fff;}
.pbv2-np--glass{background:var(--pbv2-surface2);border:1px solid var(--pbv2-line);}
.pbv2-np__main{flex:1;min-width:200px;}
.pbv2-np__status{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:.4rem;opacity:.92;}
.pbv2-np__dot{width:9px;height:9px;border-radius:50%;background:#94a3b8;}
.pbv2-np__dot.is-live{background:#22c55e;box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:pbv2-pulse 1.8s infinite;}
@keyframes pbv2-pulse{70%{box-shadow:0 0 0 9px rgba(34,197,94,0);}100%{box-shadow:0 0 0 0 rgba(34,197,94,0);}}
.pbv2-np__label{font-size:.84rem;opacity:.75;margin-top:.45rem;}
.pbv2-np__track{font-size:1.4rem;font-weight:800;line-height:1.2;margin-top:.1rem;}
.pbv2-np__listeners{font-size:.84rem;opacity:.8;margin-top:.4rem;}
.pbv2-np__play{
  display:flex;align-items:center;gap:.5rem;border:0;cursor:pointer;
  background:rgba(255,255,255,.95);color:#15151f;font-weight:800;font-size:1rem;
  padding:.8rem 1.4rem;border-radius:999px;transition:transform .15s;
}
.pbv2-np__play:hover{transform:scale(1.05);}
.pbv2-np__bars{display:flex;align-items:flex-end;gap:3px;height:34px;}
.pbv2-np__bars span{width:4px;background:currentColor;opacity:.5;border-radius:2px;height:30%;}
.pbv2-np.is-playing .pbv2-np__bars span{animation:pbv2-eq .9s ease-in-out infinite;}
.pbv2-np.is-playing .pbv2-np__bars span:nth-child(2){animation-delay:.15s;}
.pbv2-np.is-playing .pbv2-np__bars span:nth-child(3){animation-delay:.3s;}
.pbv2-np.is-playing .pbv2-np__bars span:nth-child(4){animation-delay:.45s;}
.pbv2-np.is-playing .pbv2-np__bars span:nth-child(5){animation-delay:.6s;}
@keyframes pbv2-eq{0%,100%{height:25%;}50%{height:95%;}}

/* ── Sendeplan heute ──────────────────────────────────────────────────── */
.pbv2-sched__title{font-size:1.2rem;font-weight:700;margin:0 0 .8rem;}
.pbv2-sched__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;}
.pbv2-sched__item{
  display:flex;align-items:center;gap:.85rem;padding:.6rem .8rem;border-radius:var(--pbv2-rad);
  background:var(--pbv2-surface);border:1px solid var(--pbv2-line);
}
.pbv2-sched__item.is-live{border-color:var(--pbv2-primary);}
.pbv2-sched__item.is-past{opacity:.5;}
.pbv2-sched__time{font-weight:800;font-variant-numeric:tabular-nums;color:var(--pbv2-primary);}
.pbv2-sched__photo{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.pbv2-sched__photo--ph{display:flex;align-items:center;justify-content:center;background:var(--pbv2-surface2);color:var(--pbv2-primary);}
.pbv2-sched__info{display:flex;flex-direction:column;flex:1;min-width:0;}
.pbv2-sched__show{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pbv2-sched__dj{font-size:.82rem;opacity:.6;}
.pbv2-sched__badge{
  font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;
  background:var(--pbv2-primary);color:#fff;padding:.2rem .5rem;border-radius:999px;flex-shrink:0;
}
.pbv2-sched__empty{opacity:.6;padding:1rem;text-align:center;}

/* ── Section-FX: Parallax / Background-Video / Sticky ─────────────────── */
.page-builder-section.pbv2-has-bgvideo{position:relative;overflow:hidden;}
.pbv2-bgvideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none;}
.pbv2-bgvideo-overlay{position:absolute;inset:0;z-index:1;pointer-events:none;}
.page-builder-section.pbv2-has-bgvideo>*:not(.pbv2-bgvideo):not(.pbv2-bgvideo-overlay){position:relative;z-index:2;}
.page-builder-section.pbv2-sticky{position:sticky;top:0;z-index:30;}
.pbv2-section-hidden{display:none!important;}

/* ── Erweitert-Tab: Hover-Effekte (Widget + Section) ──────────────────── */
.pbv2-hover-lift,.pbv2-hover-grow,.pbv2-hover-shadow,.pbv2-hover-glow{
  transition:transform .24s cubic-bezier(.2,.7,.2,1),box-shadow .24s ease;
}
.pbv2-hover-lift:hover{transform:translateY(-6px);}
.pbv2-hover-grow:hover{transform:scale(1.03);}
.pbv2-hover-shadow:hover{box-shadow:0 14px 38px rgba(0,0,0,.28);}
.pbv2-hover-glow:hover{
  box-shadow:0 0 0 1px var(--pbv2-color-primary,#a78bfa),
             0 8px 32px color-mix(in srgb,var(--pbv2-color-primary,#a78bfa) 45%,transparent);
}
@media (prefers-reduced-motion:reduce){
  .pbv2-hover-lift:hover,.pbv2-hover-grow:hover{transform:none;}
}

/* ── Responsiv ────────────────────────────────────────────────────────── */
@media (max-width:860px){
  .pbv2-counters,.pbv2-testimonials,.pbv2-pricing{grid-template-columns:1fr 1fr;}
  .pbv2-logos{grid-template-columns:repeat(3,1fr);}
  .pbv2-cta--inline{flex-direction:column;text-align:center;}
}
@media (max-width:560px){
  .pbv2-gallery,.pbv2-counters,.pbv2-testimonials,.pbv2-pricing{grid-template-columns:1fr;}
  .pbv2-logos{grid-template-columns:repeat(2,1fr);}
  .pbv2-flist--cols2{grid-template-columns:1fr;}
  .pbv2-np{flex-direction:column;align-items:flex-start;}
  .pbv2-slide__inner{padding:1.3rem;}
}

/* ══ Erweiterung: neue Widgets ══════════════════════════════════════════ */

/* ── Team-Karten ──────────────────────────────────────────────────────── */
.pbv2-team{display:grid;grid-template-columns:repeat(var(--pbv2-cols,3),1fr);gap:1.2rem;}
.pbv2-team__card{
  background:var(--pbv2-surface);border:1px solid var(--pbv2-line);border-radius:var(--pbv2-rad);
  overflow:hidden;text-align:center;transition:transform .18s ease,box-shadow .18s ease;position:relative;
}
.pbv2-team__card:hover{transform:translateY(-4px);box-shadow:var(--pbv2-sh);}
.pbv2-team__photo{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;}
.pbv2-team__photo--ph{display:flex;align-items:center;justify-content:center;background:var(--pbv2-surface2);font-size:3rem;color:var(--pbv2-primary);}
.pbv2-team__body{padding:1rem;display:flex;flex-direction:column;gap:.25rem;}
.pbv2-team__name{font-weight:700;font-size:1.1rem;}
.pbv2-team__role{font-size:.85rem;color:var(--pbv2-primary);font-weight:600;}
.pbv2-team__bio{margin:.35rem 0 0;font-size:.88rem;opacity:.75;line-height:1.5;}
.pbv2-team__link{
  position:absolute;top:.6rem;right:.6rem;width:34px;height:34px;border-radius:50%;
  background:var(--pbv2-primary);color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;
}

/* ── Zeitstrahl ───────────────────────────────────────────────────────── */
.pbv2-timeline{position:relative;padding-left:2.4rem;}
.pbv2-timeline::before{content:'';position:absolute;left:13px;top:6px;bottom:6px;width:2px;background:var(--pbv2-line);}
.pbv2-timeline__item{position:relative;padding-bottom:1.6rem;}
.pbv2-timeline__item:last-child{padding-bottom:0;}
.pbv2-timeline__marker{
  position:absolute;left:-2.4rem;top:0;width:28px;height:28px;border-radius:50%;
  background:var(--pbv2-ic,#a78bfa);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;
}
.pbv2-timeline__date{font-size:.8rem;font-weight:700;color:var(--pbv2-ic,#a78bfa);text-transform:uppercase;letter-spacing:.04em;}
.pbv2-timeline__title{font-weight:700;font-size:1.08rem;margin:.1rem 0;}
.pbv2-timeline__text{margin:0;opacity:.78;line-height:1.55;}

/* ── Flip-Card ────────────────────────────────────────────────────────── */
.pbv2-flip{perspective:1200px;height:var(--pbv2-h,280px);}
.pbv2-flip__inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d;}
.pbv2-flip:hover .pbv2-flip__inner,.pbv2-flip__inner.is-flipped{transform:rotateY(180deg);}
.pbv2-flip__face{
  position:absolute;inset:0;backface-visibility:hidden;border-radius:var(--pbv2-rad);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:1.5rem;color:#fff;
}
.pbv2-flip__back{transform:rotateY(180deg);}
.pbv2-flip__icon{font-size:2.6rem;margin-bottom:.5rem;}
.pbv2-flip__t{font-size:1.25rem;font-weight:800;}
.pbv2-flip__text{margin:.5rem 0 0;opacity:.95;line-height:1.5;}
.pbv2-flip__btn{margin-top:.8rem;}

/* ── Tabelle ──────────────────────────────────────────────────────────── */
.pbv2-table-wrap{overflow-x:auto;}
.pbv2-table{width:100%;border-collapse:collapse;border:1px solid var(--pbv2-line);border-radius:var(--pbv2-rad);overflow:hidden;}
.pbv2-table th,.pbv2-table td{padding:.7rem .9rem;text-align:left;border-bottom:1px solid var(--pbv2-line);}
.pbv2-table th{background:var(--pbv2-surface2);font-weight:700;}
.pbv2-table tr:last-child td{border-bottom:0;}
.pbv2-table--striped tbody tr:nth-child(odd){background:var(--pbv2-surface);}

/* ── Sterne-Bewertung ─────────────────────────────────────────────────── */
.pbv2-rating{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
.pbv2-rating__label{font-weight:600;opacity:.8;}
.pbv2-rating__stars{color:var(--pbv2-ic,#f59e0b);letter-spacing:.1em;white-space:nowrap;}
.pbv2-rating__num{font-weight:800;}
.pbv2-rating--sm .pbv2-rating__stars{font-size:.95rem;}
.pbv2-rating--md .pbv2-rating__stars{font-size:1.3rem;}
.pbv2-rating--lg .pbv2-rating__stars{font-size:1.8rem;}

/* ── Ankuendigungs-Banner ─────────────────────────────────────────────── */
.pbv2-announce{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:var(--pbv2-rad);}
.pbv2-announce.is-dismissed{display:none;}
.pbv2-announce__inner{flex:1;display:flex;align-items:center;gap:.6rem;justify-content:center;flex-wrap:wrap;font-size:.92rem;}
.pbv2-announce__text{font-weight:600;}
.pbv2-announce__link{color:inherit;font-weight:800;text-decoration:underline;white-space:nowrap;}
.pbv2-announce__close{background:transparent;border:0;color:inherit;cursor:pointer;opacity:.7;font-size:.95rem;padding:.2rem;}
.pbv2-announce__close:hover{opacity:1;}

/* ── Track-Liste ──────────────────────────────────────────────────────── */
.pbv2-tracks__title{font-size:1.2rem;font-weight:700;margin:0 0 .8rem;}
.pbv2-tracks__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;}
.pbv2-tracks__item{
  display:flex;align-items:center;gap:.8rem;padding:.55rem .7rem;border-radius:var(--pbv2-rad);
  background:var(--pbv2-surface);border:1px solid var(--pbv2-line);
}
.pbv2-tracks__pos{font-weight:800;color:var(--pbv2-primary);min-width:1.4rem;text-align:center;font-variant-numeric:tabular-nums;}
.pbv2-tracks__cover{width:44px;height:44px;border-radius:6px;object-fit:cover;flex-shrink:0;}
.pbv2-tracks__cover--ph{display:flex;align-items:center;justify-content:center;background:var(--pbv2-surface2);color:var(--pbv2-primary);}
.pbv2-tracks__meta{display:flex;flex-direction:column;flex:1;min-width:0;}
.pbv2-tracks__t{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pbv2-tracks__a{font-size:.82rem;opacity:.6;}
.pbv2-tracks__dur{font-size:.85rem;opacity:.6;font-variant-numeric:tabular-nums;}

/* ── Kontaktformular ──────────────────────────────────────────────────── */
.pbv2-form{
  display:flex;flex-direction:column;gap:.85rem;
  background:var(--pbv2-surface);border:1px solid var(--pbv2-line);border-radius:var(--pbv2-rad);padding:1.5rem;
}
.pbv2-form__title{margin:0;font-size:1.3rem;font-weight:800;}
.pbv2-form__intro{margin:0;opacity:.75;}
.pbv2-form__field{display:flex;flex-direction:column;gap:.3rem;}
.pbv2-form__label{font-size:.85rem;font-weight:600;}
.pbv2-form__label em{color:var(--pbv2-primary);font-style:normal;}
.pbv2-form input,.pbv2-form textarea{
  background:rgba(128,128,128,.10);border:1px solid var(--pbv2-line);color:inherit;
  border-radius:8px;padding:.6rem .75rem;font-size:.92rem;font-family:inherit;width:100%;
}
.pbv2-form input:focus,.pbv2-form textarea:focus{outline:0;border-color:var(--pbv2-primary);}
.pbv2-form input.pbv2-invalid,.pbv2-form textarea.pbv2-invalid{border-color:#ef4444;}
.pbv2-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.pbv2-form__msg{font-size:.92rem;}
.pbv2-form__msg.is-ok{color:#22c55e;font-weight:700;}
.pbv2-form__msg.is-err{color:#ef4444;font-weight:700;}
.pbv2-form.is-sent .pbv2-form__field,.pbv2-form.is-sent>button,.pbv2-form.is-sent .pbv2-form__intro{display:none;}

@media (max-width:860px){
  .pbv2-team{grid-template-columns:1fr 1fr;}
}
@media (max-width:560px){
  .pbv2-team{grid-template-columns:1fr;}
}

/* ── Popups / Banner ──────────────────────────────────────────────────── */
.pbv2-popup{position:fixed;z-index:9998;}
.pbv2-popup[hidden]{display:none!important;}
body.pbv2-popup-open{overflow:hidden;}

.pbv2-popup__overlay{
  position:fixed;inset:0;background:rgba(8,8,14,.74);
  opacity:0;transition:opacity .3s ease;cursor:pointer;
}
.pbv2-popup.is-open .pbv2-popup__overlay{opacity:1;}

.pbv2-popup__box{
  position:relative;
  background:var(--pbv2-color-bg,#0f172a);color:var(--pbv2-color-text,#e2e8f0);
  box-shadow:0 30px 80px rgba(0,0,0,.6);overflow:hidden;
}
.pbv2-popup__body{overflow-y:auto;}

.pbv2-popup__close{
  position:absolute;top:.55rem;right:.55rem;z-index:3;
  width:36px;height:36px;border-radius:50%;border:0;cursor:pointer;
  background:rgba(128,128,128,.28);color:var(--pbv2-color-text,#e2e8f0);
  display:flex;align-items:center;justify-content:center;font-size:1rem;transition:background .15s;
}
.pbv2-popup__close:hover{background:rgba(128,128,128,.52);}

/* Modal in der Bildschirmmitte */
.pbv2-popup--modal-center{inset:0;display:flex;align-items:center;justify-content:center;padding:1.2rem;}
.pbv2-popup--modal-center .pbv2-popup__box{
  width:100%;border-radius:14px;
  transform:scale(.88);opacity:0;
  transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .3s ease;
}
.pbv2-popup--modal-center .pbv2-popup__body{max-height:86vh;}
.pbv2-popup--modal-center.is-open .pbv2-popup__box{transform:scale(1);opacity:1;}

/* Modal in der Ecke unten rechts */
.pbv2-popup--modal-corner{right:1.1rem;bottom:1.1rem;max-width:calc(100vw - 2.2rem);}
.pbv2-popup--modal-corner .pbv2-popup__box{
  width:360px;max-width:100%;border-radius:13px;
  transform:translateY(28px);opacity:0;
  transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .3s ease;
}
.pbv2-popup--modal-corner .pbv2-popup__body{max-height:78vh;}
.pbv2-popup--modal-corner.is-open .pbv2-popup__box{transform:translateY(0);opacity:1;}

/* Balken oben / unten */
.pbv2-popup--bar-top,.pbv2-popup--bar-bottom{left:0;right:0;}
.pbv2-popup--bar-top{top:0;}
.pbv2-popup--bar-bottom{bottom:0;}
.pbv2-popup--bar-top .pbv2-popup__box,
.pbv2-popup--bar-bottom .pbv2-popup__box{width:100%;}
.pbv2-popup--bar-top .pbv2-popup__body,
.pbv2-popup--bar-bottom .pbv2-popup__body{max-height:62vh;}
.pbv2-popup--bar-top .pbv2-popup__box{
  transform:translateY(-100%);transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.pbv2-popup--bar-bottom .pbv2-popup__box{
  transform:translateY(100%);transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.pbv2-popup--bar-top.is-open .pbv2-popup__box,
.pbv2-popup--bar-bottom.is-open .pbv2-popup__box{transform:translateY(0);}

@media (prefers-reduced-motion:reduce){
  .pbv2-popup__box,.pbv2-popup__overlay{transition:none!important;}
}
@media (max-width:560px){
  .pbv2-popup--modal-corner{left:1.1rem;right:1.1rem;}
  .pbv2-popup--modal-corner .pbv2-popup__box{width:100%;}
}

/* ─────────────────────────  v2.1  ────────────────────────────────── */

/* Shape Divider */
.pbv2-shape-divider{
  position:absolute;left:0;width:100%;overflow:hidden;
  line-height:0;pointer-events:none;z-index:2;
}
.pbv2-shape-divider--bottom{bottom:-1px;}
.pbv2-shape-divider--top{top:-1px;}
.pbv2-shape-divider svg{display:block;width:100%;height:60px;}
@media(max-width:768px){
  .pbv2-shape-divider svg{height:36px;}
}

/* Hintergrund-Diashow */
.pbv2-bg-slideshow{
  position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:center;
  transition:background-image .8s ease;
}
.page-builder-section:has(.pbv2-bg-slideshow){position:relative;overflow:hidden;}
.page-builder-section:has(.pbv2-bg-slideshow)>*:not(.pbv2-bg-slideshow):not(.pbv2-shape-divider){
  position:relative;z-index:1;
}

/* Bild Pro - Masken-Formen */
.pbv2-image-pro{max-width:100%;height:auto;display:block;}
img.pbv2-mask-circle,.pbv2-image-figure img[style*="circle"]{
  clip-path:circle(50%);object-fit:cover;
}
.pbv2-image-zoom{transition:transform .4s ease;}
.pbv2-image-zoom:hover{transform:scale(1.05);}
.pbv2-image-caption{
  display:block;font-size:.8rem;color:rgba(128,128,128,.75);
  margin-top:.4rem;text-align:center;
}

/* Editor-Canvas: Shape Divider Preview */
.pbv2e-shape-divider{
  position:absolute;left:0;width:100%;overflow:hidden;
  pointer-events:none;z-index:5;
}
.pbv2e-shape-divider--bottom{bottom:-1px;}
.pbv2e-shape-divider--top{top:-1px;}
.pbv2e-shape-divider svg{display:block;width:100%;height:40px;}

/* ─────────────────────────  v2.1 Neu  ────────────────────────────── */

/* Bild-Filter: PHP setzt filter:... direkt auf den Widget-Wrapper.
   Sanfter Transition damit Hover-States nicht ruckeln. */
.page-builder-section [style*="filter"]{transition:filter .3s ease;}

/* Bild-Maske: PHP setzt clip-path:... direkt auf den Widget-Wrapper. */
.page-builder-section [style*="clip-path"]{transition:clip-path .3s ease;}

/* Responsive Padding: Tablet (max 991px) */
@media(max-width:991px){
  [style*="--pbv2-pt-t"]{padding-top:var(--pbv2-pt-t)!important;}
  [style*="--pbv2-pb-t"]{padding-bottom:var(--pbv2-pb-t)!important;}
  [style*="--pbv2-pl-t"]{padding-left:var(--pbv2-pl-t)!important;}
  [style*="--pbv2-pr-t"]{padding-right:var(--pbv2-pr-t)!important;}
}

/* Responsive Padding: Handy (max 575px) */
@media(max-width:575px){
  [style*="--pbv2-pt-m"]{padding-top:var(--pbv2-pt-m)!important;}
  [style*="--pbv2-pb-m"]{padding-bottom:var(--pbv2-pb-m)!important;}
  [style*="--pbv2-pl-m"]{padding-left:var(--pbv2-pl-m)!important;}
  [style*="--pbv2-pr-m"]{padding-right:var(--pbv2-pr-m)!important;}
}

/* ══════════════════════════ v2.2 ══════════════════════════════════════════ */

/* ── Floating Contact Button ──────────────────────────────────────────── */
.pbv2-floatbtn{
  position:fixed;
  right:20px;bottom:24px;left:auto;
  width:56px;height:56px;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1.5rem;color:#fff;text-decoration:none;
  box-shadow:0 4px 18px rgba(0,0,0,.28);
  z-index:9999;
  transition:transform .2s ease,box-shadow .2s ease;
  /* Verhindert Selektion beim schnellen Klicken */
  user-select:none;-webkit-user-select:none;
}
.pbv2-floatbtn--left{right:auto;left:20px;}
.pbv2-floatbtn:hover{transform:scale(1.12);box-shadow:0 8px 28px rgba(0,0,0,.38);}
.pbv2-floatbtn:active{transform:scale(0.96);}
/* Tooltip via Pseudo-Element */
.pbv2-floatbtn::after{
  content:attr(title);
  position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);
  background:#1a1d2e;color:#fff;
  padding:.28rem .64rem;border-radius:6px;
  font-size:.82rem;white-space:nowrap;font-weight:500;
  opacity:0;pointer-events:none;
  transition:opacity .2s ease;
}
.pbv2-floatbtn--left::after{right:auto;left:calc(100% + 10px);}
.pbv2-floatbtn:hover::after{opacity:1;}

/* ── Scroll Snap ──────────────────────────────────────────────────────── */
.pbv2-snap-section{scroll-snap-align:start;}

/* ── 3D-Tilt ──────────────────────────────────────────────────────────── */
/* Kein eigener CSS-Block noetig: JS setzt transform direkt als Inline-Style.
   Transition-Override verhindert Ruckeln beim Eintreten. */
.page-builder-section{transform-origin:center center;}

/* ── Page Transitions ─────────────────────────────────────────────────── */
.pbv2-pt-ready{
  transition:opacity .26s ease, transform .26s ease;
  opacity:0;
  /* Sicherstellen dass der Body schon da ist bevor fade laeuft */
}
.pbv2-pt-ready.pbv2-pt-in{opacity:1;transform:none;}
.pbv2-pt-ready.pbv2-pt-out{opacity:0;}
/* Slide-Variante */
.pbv2-pt-ready.pbv2-pt--slide{transform:translateX(18px);}
.pbv2-pt-ready.pbv2-pt--slide.pbv2-pt-in{transform:translateX(0);}
.pbv2-pt-ready.pbv2-pt--slide.pbv2-pt-out{transform:translateX(-18px);}

/* Fallback: prefers-reduced-motion */
@media(prefers-reduced-motion:reduce){
  .pbv2-pt-ready{transition:none!important;opacity:1!important;transform:none!important;}
}

/* ════════════════════════════════════════════════════════════════════
   v2.3 - Radio-Power-Widgets
   ════════════════════════════════════════════════════════════════════ */

/* ── DJ-Profil ─────────────────────────────────────────────────────── */
.pbv2-djprofile{
  background:var(--pbv2-surface);border-radius:var(--pbv2-rad);
  overflow:hidden;
}
.pbv2-djprofile--card .pbv2-djprofile__header{
  display:flex;align-items:center;gap:1.2rem;
  padding:1.4rem 1.4rem .8rem;
}
.pbv2-djprofile__photo{
  width:80px;height:80px;border-radius:50%;object-fit:cover;
  border:3px solid var(--pbv2-primary);flex-shrink:0;
}
.pbv2-djprofile__photo--ph{
  display:flex;align-items:center;justify-content:center;
  background:var(--pbv2-surface2);font-size:2.4rem;
  color:var(--pbv2-primary);
}
.pbv2-djprofile__photo--sm{width:52px;height:52px;}
.pbv2-djprofile__name{margin:0 0 .25rem;font-size:1.15rem;font-weight:700;}
.pbv2-djprofile__show-badge{
  margin:0;font-size:.8rem;color:var(--pbv2-primary);
  display:flex;align-items:center;gap:.35rem;
}
.pbv2-djprofile__bio{
  padding:.6rem 1.4rem .8rem;margin:0;
  font-size:.9rem;line-height:1.55;opacity:.85;
}
.pbv2-djprofile__social{
  display:flex;gap:.5rem;padding:.4rem 1.4rem 1.2rem;flex-wrap:wrap;
}
.pbv2-djprofile__social-link{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:50%;
  background:var(--pbv2-surface2);color:inherit;text-decoration:none;
  font-size:1rem;transition:background .2s,color .2s;
}
.pbv2-djprofile__social-link:hover{background:var(--pbv2-primary);color:#fff;}
/* Kompakt-Layout */
.pbv2-djprofile--compact .pbv2-djprofile__compact{
  display:flex;align-items:center;gap:.9rem;padding:1rem 1.2rem;
}
.pbv2-djprofile--compact .pbv2-djprofile__compact-info{flex:1;}
.pbv2-djprofile--compact .pbv2-djprofile__name{font-size:1rem;margin-bottom:.15rem;}
.pbv2-djprofile--compact .pbv2-djprofile__bio{padding:.2rem 1.2rem .8rem;}
.pbv2-djprofile--compact .pbv2-djprofile__social{padding:.2rem 1.2rem .8rem;}

/* ── Stream-Status-Badge ───────────────────────────────────────────── */
.pbv2-streambadge{display:inline-block;}
.pbv2-sb__pill{
  display:inline-flex;align-items:center;gap:.45rem;
  padding:.35rem .85rem;border-radius:99px;
  font-size:.82rem;font-weight:700;letter-spacing:.04em;
  transition:background .3s;
}
.pbv2-sb--live .pbv2-sb__pill{background:rgba(34,197,94,.18);color:#22c55e;}
.pbv2-sb--offline .pbv2-sb__pill{background:var(--pbv2-surface2);color:#94a3b8;}
.pbv2-sb__dot{
  width:9px;height:9px;border-radius:50%;
  background:currentColor;flex-shrink:0;
  animation:pbv2-dot-pulse 1.6s ease-in-out infinite;
}
@keyframes pbv2-dot-pulse{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:.5;transform:scale(.7);}
}
.pbv2-sb__count{font-size:.77rem;font-weight:500;opacity:.8;}
/* Karten-Stil */
.pbv2-sb__card{
  background:var(--pbv2-surface);border-radius:var(--pbv2-rad);
  padding:1rem 1.2rem;border:1px solid var(--pbv2-line);
}
.pbv2-sb__top{
  display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.4rem;
}
.pbv2-sb--live .pbv2-sb__label{color:#22c55e;font-weight:700;font-size:.95rem;}
.pbv2-sb--offline .pbv2-sb__label{color:#94a3b8;font-weight:700;font-size:.95rem;}
.pbv2-sb__song{font-size:.86rem;opacity:.8;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;}
.pbv2-sb__song-title{font-weight:600;}
/* Gross-Variante */
.pbv2-streambadge--large .pbv2-sb__card{padding:1.4rem 1.8rem;}
.pbv2-streambadge--large .pbv2-sb__label{font-size:1.3rem;}
.pbv2-streambadge--large .pbv2-sb__dot{width:14px;height:14px;}

/* ── Wunschbox ─────────────────────────────────────────────────────── */
.pbv2-wishbox{
  --pbv2-wb-accent:var(--pbv2-primary);
  background:var(--pbv2-surface);border-radius:var(--pbv2-rad);padding:1.4rem;
}
.pbv2-wishbox__title{margin:0 0 1rem;font-size:1.1rem;font-weight:700;}
.pbv2-wishbox__form{display:flex;flex-direction:column;gap:.6rem;}
.pbv2-wishbox__row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;}
@media(max-width:540px){.pbv2-wishbox__row{grid-template-columns:1fr;}}
.pbv2-wishbox__input{
  width:100%;padding:.6rem .85rem;
  background:var(--pbv2-surface2);border:1px solid var(--pbv2-line);
  border-radius:8px;color:inherit;font-size:.9rem;font-family:inherit;
  transition:border-color .2s;
}
.pbv2-wishbox__input:focus{outline:none;border-color:var(--pbv2-wb-accent);}
.pbv2-wishbox__textarea{resize:vertical;min-height:60px;}
.pbv2-wishbox__hp{position:absolute;opacity:0;height:0;overflow:hidden;pointer-events:none;}
.pbv2-wishbox__btn{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--pbv2-wb-accent);color:#fff;border:none;
  padding:.65rem 1.3rem;border-radius:8px;font-size:.9rem;
  font-weight:600;cursor:pointer;transition:opacity .2s;align-self:flex-start;
}
.pbv2-wishbox__btn:hover{opacity:.88;}
.pbv2-wishbox__btn:disabled{opacity:.5;cursor:not-allowed;}
.pbv2-wishbox__feedback{font-size:.85rem;min-height:1.1em;margin-top:.1rem;}
.pbv2-wishbox__feedback--ok{color:#22c55e;}
.pbv2-wishbox__feedback--err{color:#f87171;}
/* Wunschliste */
.pbv2-wishbox__list{margin-top:1.4rem;border-top:1px solid var(--pbv2-line);padding-top:1rem;}
.pbv2-wishbox__list-title{margin:0 0 .7rem;font-size:.92rem;font-weight:600;display:flex;align-items:center;gap:.4rem;}
.pbv2-wishbox__items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;}
.pbv2-wishbox__item{
  display:flex;justify-content:space-between;align-items:center;gap:.8rem;
  background:var(--pbv2-surface2);border-radius:8px;padding:.6rem .9rem;
}
.pbv2-wishbox__item-info{display:flex;flex-direction:column;gap:.1rem;flex:1;min-width:0;}
.pbv2-wishbox__song{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pbv2-wishbox__artist{font-size:.8rem;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pbv2-wishbox__requester{font-size:.75rem;opacity:.6;}
.pbv2-wishbox__votes{
  display:flex;align-items:center;gap:.25rem;
  font-size:.8rem;color:var(--pbv2-wb-accent);flex-shrink:0;font-weight:600;
}

/* ── Replay-Player ─────────────────────────────────────────────────── */
.pbv2-replay{background:var(--pbv2-surface);border-radius:var(--pbv2-rad);padding:1.2rem;}
.pbv2-replay__title{margin:0 0 1rem;font-size:1.1rem;font-weight:700;}
.pbv2-replay__empty{margin:0;opacity:.6;display:flex;align-items:center;gap:.5rem;}
.pbv2-replay__player-bar{
  display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;
  background:var(--pbv2-surface2);border-radius:8px;padding:.7rem 1rem;
  margin-bottom:1rem;
}
.pbv2-replay__stop{
  background:none;border:none;cursor:pointer;color:inherit;
  font-size:1.4rem;padding:0;line-height:1;flex-shrink:0;opacity:.7;
  transition:opacity .2s;
}
.pbv2-replay__stop:hover{opacity:1;}
.pbv2-replay__now{flex:1;min-width:0;}
.pbv2-replay__now-title{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pbv2-replay__audio{flex:1;min-width:200px;height:36px;}
.pbv2-replay__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem;}
.pbv2-replay__item{
  display:flex;align-items:center;gap:.8rem;
  background:var(--pbv2-surface2);border-radius:8px;padding:.65rem .9rem;
  cursor:pointer;transition:background .18s;
}
.pbv2-replay__item:hover,.pbv2-replay__item--active{background:var(--pbv2-surface);}
.pbv2-replay__item--active{border-left:3px solid var(--pbv2-primary);}
.pbv2-replay__play{
  background:none;border:none;cursor:pointer;color:var(--pbv2-primary);
  font-size:1.65rem;padding:0;line-height:1;flex-shrink:0;
  transition:opacity .18s;
}
.pbv2-replay__play:hover{opacity:.75;}
.pbv2-replay__info{flex:1;min-width:0;}
.pbv2-replay__name{display:block;font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pbv2-replay__meta{display:flex;flex-wrap:wrap;gap:.5rem .9rem;font-size:.76rem;opacity:.65;margin-top:.15rem;}
.pbv2-replay__meta span{display:flex;align-items:center;gap:.25rem;}
.pbv2-replay__desc{margin:.3rem 0 0;font-size:.8rem;opacity:.7;}

/* ── Membership Gate ────────────────────────────────────────────────── */
.pbv2-mgate__content{/* Kein eigenes Styling - nutzt pbv2-richtext */}
.pbv2-mgate__cta{
  background:var(--pbv2-surface);border-radius:var(--pbv2-rad);
  padding:2.2rem 1.6rem;text-align:center;
  border:2px dashed var(--pbv2-line);
}
.pbv2-mgate__icon{font-size:2.4rem;color:var(--pbv2-primary);margin-bottom:.7rem;}
.pbv2-mgate__title{margin:0 0 .6rem;font-size:1.2rem;font-weight:700;}
.pbv2-mgate__text{margin:0 0 1.2rem;opacity:.8;font-size:.92rem;line-height:1.55;}
.pbv2-mgate__btn{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--pbv2-primary);color:#fff;text-decoration:none;
  padding:.65rem 1.4rem;border-radius:8px;font-weight:600;font-size:.9rem;
  transition:opacity .2s;
}
.pbv2-mgate__btn:hover{opacity:.85;}

/* ── Event-Karte ────────────────────────────────────────────────────── */
.pbv2-evcard--grid{display:flex;flex-wrap:wrap;gap:1.2rem;}
.pbv2-evcard--grid .pbv2-evcard{flex:1 1 280px;}
.pbv2-evcard{
  background:var(--pbv2-surface);border-radius:var(--pbv2-rad);
  overflow:hidden;box-shadow:var(--pbv2-sh);
}
.pbv2-evcard__img img{width:100%;height:180px;object-fit:cover;display:block;}
.pbv2-evcard__body{padding:1.2rem;}
.pbv2-evcard__date{
  font-size:.78rem;font-weight:600;color:var(--pbv2-primary);
  margin-bottom:.5rem;display:flex;align-items:center;gap:.35rem;
}
.pbv2-evcard__title{margin:0 0 .5rem;font-size:1.1rem;font-weight:700;}
.pbv2-evcard__desc{margin:0 0 .5rem;font-size:.88rem;opacity:.8;}
.pbv2-evcard__meta{margin:0 0 .35rem;font-size:.82rem;opacity:.7;display:flex;align-items:center;gap:.4rem;}
/* Event-Countdown */
.pbv2-evcard__countdown{
  display:flex;gap:.6rem;align-items:center;justify-content:flex-start;
  margin:.9rem 0;flex-wrap:wrap;
}
.pbv2-cd-box{
  background:var(--pbv2-surface2);border-radius:8px;
  min-width:52px;padding:.45rem .6rem;text-align:center;
}
.pbv2-cd-n{display:block;font-size:1.35rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;}
.pbv2-cd-l{display:block;font-size:.65rem;opacity:.6;margin-top:.15rem;text-transform:uppercase;letter-spacing:.06em;}
.pbv2-evcard__btn{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--pbv2-primary);color:#fff;text-decoration:none;
  padding:.6rem 1.2rem;border-radius:8px;font-size:.88rem;font-weight:600;
  margin-top:.8rem;transition:opacity .2s;
}
.pbv2-evcard__btn:hover{opacity:.85;}

/* ── Loop-Grid ──────────────────────────────────────────────────────── */
.pbv2-loopgrid{display:grid;gap:1.2rem;}
.pbv2-loopgrid--cols2{grid-template-columns:repeat(2,1fr);}
.pbv2-loopgrid--cols3{grid-template-columns:repeat(3,1fr);}
.pbv2-loopgrid--cols4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){
  .pbv2-loopgrid--cols3,.pbv2-loopgrid--cols4{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:560px){
  .pbv2-loopgrid--cols2,.pbv2-loopgrid--cols3,.pbv2-loopgrid--cols4{grid-template-columns:1fr;}
}
.pbv2-loopgrid__empty{margin:0;opacity:.6;display:flex;align-items:center;gap:.5rem;}
.pbv2-loopgrid__card{background:var(--pbv2-surface);border-radius:var(--pbv2-rad);overflow:hidden;}
.pbv2-loopgrid__img{overflow:hidden;}
.pbv2-loopgrid__img img{width:100%;height:180px;object-fit:cover;display:block;transition:transform .4s ease;}
.pbv2-loopgrid__card:hover .pbv2-loopgrid__img img{transform:scale(1.04);}
.pbv2-loopgrid__body{padding:1rem;}
.pbv2-loopgrid__date{font-size:.75rem;opacity:.6;display:flex;align-items:center;gap:.3rem;margin-bottom:.4rem;}
.pbv2-loopgrid__title{margin:0 0 .4rem;font-size:.98rem;font-weight:700;line-height:1.3;}
.pbv2-loopgrid__text{margin:0 0 .7rem;font-size:.84rem;opacity:.75;line-height:1.5;}
.pbv2-loopgrid__btn{
  display:inline-flex;align-items:center;gap:.35rem;
  font-size:.83rem;font-weight:600;color:var(--pbv2-primary);text-decoration:none;
  transition:gap .18s;
}
.pbv2-loopgrid__btn:hover{gap:.55rem;}
/* Horizontal-Stil */
.pbv2-loopgrid__card--horizontal{display:flex;flex-direction:row;}
.pbv2-loopgrid__card--horizontal .pbv2-loopgrid__img{flex-shrink:0;width:120px;}
.pbv2-loopgrid__card--horizontal .pbv2-loopgrid__img img{width:120px;height:100%;}

/* ════════════════════════════════════════════════════════════════════
   v2.4 - Marketing-Widgets
   ════════════════════════════════════════════════════════════════════ */

/* ── Multi-Step-Formular ──────────────────────────────────────────── */
.pbv2-msf{background:var(--pbv2-surface);border-radius:var(--pbv2-rad);padding:2rem;}
.pbv2-msf__title{margin:0 0 1.4rem;font-size:1.3rem;font-weight:700;}
.pbv2-msf__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

/* Fortschrittsbalken */
.pbv2-msf__progress{display:flex;align-items:center;gap:0;margin-bottom:2rem;}
.pbv2-msf__step-dot{
  display:flex;align-items:center;justify-content:center;
  width:2rem;height:2rem;border-radius:50%;background:var(--pbv2-border,#334155);
  color:rgba(255,255,255,.5);font-size:.8rem;font-weight:700;
  transition:background .25s,color .25s;flex-shrink:0;
}
.pbv2-msf__step-dot.is-active,.pbv2-msf__step-dot.is-done{background:var(--pbv2-primary);color:#fff;}
.pbv2-msf__step-line{flex:1;height:2px;background:var(--pbv2-border,#334155);transition:background .25s;}
.pbv2-msf__step-dot.is-done + .pbv2-msf__step-line{background:var(--pbv2-primary);}

/* Schritte */
.pbv2-msf__pane{display:none;}
.pbv2-msf__pane.is-active{display:block;}
.pbv2-msf__fields{display:flex;flex-direction:column;gap:1rem;}
.pbv2-msf__field{display:flex;flex-direction:column;gap:.35rem;}
.pbv2-msf__label{font-size:.85rem;font-weight:600;opacity:.85;}
.pbv2-msf__label em{color:#f87171;font-style:normal;}
.pbv2-msf__field input,
.pbv2-msf__field textarea,
.pbv2-msf__field select{
  width:100%;padding:.6rem .85rem;background:var(--pbv2-input-bg,rgba(255,255,255,.06));
  border:1px solid var(--pbv2-border,#475569);border-radius:8px;
  color:inherit;font-size:.9rem;font-family:inherit;transition:border-color .2s;
}
.pbv2-msf__field input:focus,
.pbv2-msf__field textarea:focus,
.pbv2-msf__field select:focus{outline:none;border-color:var(--pbv2-primary);}
.pbv2-msf__field input.pbv2-invalid,
.pbv2-msf__field textarea.pbv2-invalid,
.pbv2-msf__field select.pbv2-invalid{border-color:#ef4444;}
.pbv2-msf__checkbox-wrap{display:flex;align-items:flex-start;gap:.5rem;}
.pbv2-msf__checkbox-label{font-size:.88rem;line-height:1.4;cursor:pointer;}

/* Navigation */
.pbv2-msf__nav{display:flex;justify-content:space-between;align-items:center;margin-top:1.4rem;}
.pbv2-msf__btn{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.55rem 1.3rem;border-radius:8px;border:none;cursor:pointer;
  font-size:.9rem;font-weight:600;font-family:inherit;transition:opacity .18s;
}
.pbv2-msf__btn--back{background:var(--pbv2-surface-2,rgba(255,255,255,.07));color:inherit;}
.pbv2-msf__btn--next,
.pbv2-msf__btn--submit{background:var(--pbv2-primary);color:#fff;}
.pbv2-msf__btn:hover:not(:disabled){opacity:.85;}
.pbv2-msf__btn:disabled{opacity:.5;cursor:not-allowed;}

/* Bestätigungsmeldung */
.pbv2-msf__msg{margin-top:1rem;padding:.6rem .9rem;border-radius:8px;font-size:.88rem;font-weight:500;}
.pbv2-msf__msg.is-ok{background:rgba(34,197,94,.15);color:#16a34a;}
.pbv2-msf__msg.is-err{background:rgba(239,68,68,.12);color:#ef4444;}
.pbv2-msf--sent .pbv2-msf__pane,
.pbv2-msf--sent .pbv2-msf__nav,
.pbv2-msf--sent .pbv2-msf__progress{opacity:.35;pointer-events:none;}

/* ── Cookie-Consent-Banner ───────────────────────────────────────── */
.pbv2-cookiebanner{
  position:fixed;left:0;right:0;z-index:9990;
  background:var(--pbv2-surface,#1e2a3a);border-top:1px solid var(--pbv2-border,#334155);
  box-shadow:0 -4px 24px rgba(0,0,0,.25);padding:1rem 1.5rem;
}
.pbv2-cookiebanner--bottom{bottom:0;}
.pbv2-cookiebanner--top{top:0;border-top:none;border-bottom:1px solid var(--pbv2-border,#334155);}
.pbv2-cookiebanner__inner{
  max-width:900px;margin:0 auto;
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
}
.pbv2-cookiebanner__text{margin:0;flex:1;font-size:.88rem;line-height:1.5;opacity:.9;}
.pbv2-cookiebanner__link{color:var(--pbv2-primary);text-decoration:underline;}
.pbv2-cookiebanner__btns{display:flex;gap:.6rem;flex-shrink:0;}
.pbv2-cookiebanner__btn{
  padding:.45rem 1rem;border-radius:7px;border:none;cursor:pointer;
  font-size:.85rem;font-weight:600;font-family:inherit;transition:opacity .18s;
}
.pbv2-cookiebanner__btn--accept{background:var(--pbv2-primary);color:#fff;}
.pbv2-cookiebanner__btn--decline{background:var(--pbv2-surface-2,rgba(255,255,255,.1));color:inherit;}
.pbv2-cookiebanner__btn:hover{opacity:.85;}

/* ── Coming Soon ─────────────────────────────────────────────────── */
.pbv2-comingsoon{
  position:relative;min-height:500px;display:flex;align-items:center;justify-content:center;
  background:#0f172a;overflow:hidden;
}
.pbv2-comingsoon__overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
}
.pbv2-comingsoon__content{
  position:relative;z-index:2;text-align:center;padding:3rem 1.5rem;max-width:640px;
}
.pbv2-comingsoon__logo{max-height:70px;margin-bottom:1.5rem;}
.pbv2-comingsoon__headline{
  margin:0 0 .8rem;font-size:clamp(1.8rem,5vw,3rem);font-weight:800;color:#fff;
}
.pbv2-comingsoon__subline{margin:0 0 2rem;color:rgba(255,255,255,.75);font-size:1.05rem;line-height:1.6;}

/* Countdown */
.pbv2-comingsoon__countdown{
  display:flex;gap:1.2rem;justify-content:center;margin-bottom:2rem;
}
.pbv2-comingsoon__cd-unit{
  background:rgba(255,255,255,.1);border-radius:12px;padding:.8rem 1.2rem;min-width:4.5rem;
}
.pbv2-comingsoon__cd-unit .pbv2-countdown__val{
  display:block;font-size:2rem;font-weight:800;color:#fff;line-height:1;
}
.pbv2-comingsoon__cd-lab{
  display:block;font-size:.7rem;color:rgba(255,255,255,.6);margin-top:.2rem;text-transform:uppercase;letter-spacing:.06em;
}

/* E-Mail-Sammler */
.pbv2-comingsoon__email-form{
  display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;max-width:460px;margin:0 auto;
}
.pbv2-comingsoon__email-input{
  flex:1;min-width:220px;padding:.65rem 1rem;border-radius:9px;border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.08);color:#fff;font-size:.9rem;font-family:inherit;
}
.pbv2-comingsoon__email-input::placeholder{color:rgba(255,255,255,.45);}
.pbv2-comingsoon__email-input:focus{outline:none;border-color:var(--pbv2-primary);}
.pbv2-comingsoon__email-btn{
  padding:.65rem 1.3rem;border-radius:9px;border:none;cursor:pointer;
  background:var(--pbv2-primary);color:#fff;font-size:.9rem;font-weight:700;font-family:inherit;
  transition:opacity .2s;
}
.pbv2-comingsoon__email-btn:hover{opacity:.85;}
.pbv2-comingsoon__email-msg{
  width:100%;margin:.5rem 0 0;font-size:.85rem;font-weight:500;
}
.pbv2-comingsoon__email-msg.is-ok{color:#4ade80;}
.pbv2-comingsoon__email-msg.is-err{color:#f87171;}
.pbv2-cs--sent .pbv2-comingsoon__email-input,
.pbv2-cs--sent .pbv2-comingsoon__email-btn{opacity:.4;pointer-events:none;}

/* ── Bild-Carousel ───────────────────────────────────────────────── */
.pbv2-carousel{
  position:relative;overflow:hidden;border-radius:var(--pbv2-rad);
  user-select:none;-webkit-user-select:none;
}
.pbv2-carousel__track{
  display:flex;height:100%;transition:transform .4s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
.pbv2-carousel__slide{
  flex-shrink:0;width:100%;height:100%;position:relative;overflow:hidden;
}
.pbv2-carousel__link{display:block;width:100%;height:100%;}
.pbv2-carousel__caption{
  position:absolute;bottom:0;left:0;right:0;
  background:linear-gradient(transparent,rgba(0,0,0,.65));
  color:#fff;padding:.7rem 1rem;font-size:.88rem;text-align:center;
}
/* Pfeile */
.pbv2-carousel__arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  background:rgba(0,0,0,.45);color:#fff;border:none;cursor:pointer;
  width:2.4rem;height:2.4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;transition:background .2s,opacity .2s;z-index:2;
}
.pbv2-carousel__arrow:hover{background:rgba(0,0,0,.65);}
.pbv2-carousel__arrow--prev{left:.6rem;}
.pbv2-carousel__arrow--next{right:.6rem;}
/* Dots */
.pbv2-carousel__dots{
  position:absolute;bottom:.7rem;left:50%;transform:translateX(-50%);
  display:flex;gap:.4rem;z-index:2;
}
.pbv2-carousel__dot{
  width:.55rem;height:.55rem;border-radius:50%;border:none;padding:0;cursor:pointer;
  background:rgba(255,255,255,.45);transition:background .2s,transform .15s;
}
.pbv2-carousel__dot.is-active{background:#fff;transform:scale(1.3);}

/* ── Vorher/Nachher ──────────────────────────────────────────────── */
.pbv2-ba{
  position:relative;overflow:hidden;border-radius:var(--pbv2-rad);
  user-select:none;-webkit-user-select:none;cursor:ew-resize;
}
.pbv2-ba__img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
}
.pbv2-ba__before{
  position:absolute;top:0;left:0;bottom:0;overflow:hidden;
  border-right:2px solid rgba(255,255,255,.8);
}
.pbv2-ba__img--before{
  position:absolute;top:0;left:0;height:100%;
  width:auto;min-width:100vw; /* wird via parent-clip gezeigt, daher fix 100vw */
}
.pbv2-ba__img--after{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
/* Labels */
.pbv2-ba__label{
  position:absolute;top:.7rem;padding:.25rem .7rem;border-radius:6px;
  font-size:.78rem;font-weight:700;color:#fff;background:rgba(0,0,0,.45);pointer-events:none;
}
.pbv2-ba__label--before{left:.7rem;}
.pbv2-ba__label--after{right:.7rem;}
/* Handle */
.pbv2-ba__handle{
  position:absolute;top:0;bottom:0;width:2.4rem;
  transform:translateX(-50%);display:flex;align-items:center;justify-content:center;
  cursor:ew-resize;z-index:3;
}
.pbv2-ba__handle::before{
  content:'';position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);
  width:2px;background:rgba(255,255,255,.85);
}
.pbv2-ba__handle i{
  position:relative;z-index:1;background:#fff;color:#1e293b;
  border-radius:50%;width:1.8rem;height:1.8rem;display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.3);font-size:.7rem;
}

/* ── Hotspot-Bild ────────────────────────────────────────────────── */
.pbv2-hotspot{position:relative;display:inline-block;width:100%;}
.pbv2-hotspot__img{width:100%;height:auto;display:block;border-radius:var(--pbv2-rad);}

/* Punkte */
.pbv2-hs__point{
  position:absolute;width:1.5rem;height:1.5rem;border-radius:50%;
  background:var(--pbv2-primary);border:2px solid rgba(255,255,255,.7);
  transform:translate(-50%,-50%);cursor:pointer;z-index:2;
  display:flex;align-items:center;justify-content:center;
}
.pbv2-hs__pulse{
  position:absolute;inset:-4px;border-radius:50%;
  background:var(--pbv2-primary);opacity:.35;
  animation:pbv2HsPulse 1.8s ease-in-out infinite;
}
@keyframes pbv2HsPulse{
  0%,100%{transform:scale(1);opacity:.35;}
  50%{transform:scale(1.5);opacity:0;}
}

/* Tooltip */
.pbv2-hs__tooltip{
  position:absolute;bottom:calc(100% + .7rem);left:50%;transform:translateX(-50%);
  background:var(--pbv2-surface,#1e2a3a);border:1px solid var(--pbv2-border,#334155);
  border-radius:10px;padding:.7rem 1rem;min-width:160px;max-width:220px;
  box-shadow:0 6px 20px rgba(0,0,0,.3);pointer-events:none;
  opacity:0;visibility:hidden;transition:opacity .18s,visibility .18s;
  white-space:normal;z-index:10;
}
.pbv2-hs__point.is-open .pbv2-hs__tooltip{
  opacity:1;visibility:visible;pointer-events:auto;
}
/* Hover-Modus */
[data-pbv2-hs-trigger="hover"] .pbv2-hs__point:hover .pbv2-hs__tooltip,
[data-pbv2-hs-trigger="hover"] .pbv2-hs__point:focus .pbv2-hs__tooltip{
  opacity:1;visibility:visible;pointer-events:auto;
}
.pbv2-hs__tooltip-title{display:block;font-weight:700;font-size:.88rem;margin-bottom:.3rem;}
.pbv2-hs__tooltip-text{display:block;font-size:.82rem;opacity:.8;line-height:1.4;}
.pbv2-hs__tooltip-link{
  display:inline-flex;align-items:center;gap:.3rem;margin-top:.5rem;
  color:var(--pbv2-primary);font-size:.82rem;font-weight:600;text-decoration:none;
}
/* Tooltip nach links kippen wenn zu weit rechts */
.pbv2-hs__point:last-child .pbv2-hs__tooltip,
.pbv2-hs__point[style*="left:8"] .pbv2-hs__tooltip,
.pbv2-hs__point[style*="left:9"] .pbv2-hs__tooltip{
  left:auto;right:0;transform:none;
}
@media(max-width:560px){
  .pbv2-comingsoon__countdown{gap:.7rem;}
  .pbv2-comingsoon__cd-unit{padding:.6rem .8rem;min-width:3.5rem;}
  .pbv2-comingsoon__cd-unit .pbv2-countdown__val{font-size:1.5rem;}
  .pbv2-msf{padding:1.2rem;}
  .pbv2-cookiebanner__inner{flex-direction:column;align-items:flex-start;}
}

/* ── v2.5 – Live-Ticker ─────────────────────────────────────────── */
.pbv2-ticker{
  display:flex;align-items:stretch;overflow:hidden;
  background:var(--pbv2-ticker-bg,#7c3aed);
  color:var(--pbv2-ticker-color,#fff);
  border-radius:var(--pbv2-rad,6px);
  min-height:2.4rem;
}
.pbv2-ticker__label{
  flex-shrink:0;display:flex;align-items:center;
  padding:0 .8rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;
  background:var(--pbv2-ticker-label-bg,#5b21b6);
  white-space:nowrap;
}
.pbv2-ticker__track{
  flex:1;overflow:hidden;display:flex;align-items:center;
  position:relative;
}
.pbv2-ticker__inner{
  display:flex;align-items:center;white-space:nowrap;
  animation:pbv2TickerScroll var(--pbv2-ticker-dur,20s) linear infinite;
  will-change:transform;
}
@keyframes pbv2TickerScroll{
  0%  { transform:translateX(0); }
  100%{ transform:translateX(-50%); }
}
.pbv2-ticker__item{
  display:inline-block;padding:0 var(--pbv2-ticker-gap,80px) 0 0;
  font-size:.88rem;
}
@media(prefers-reduced-motion:reduce){
  .pbv2-ticker__inner{animation:none;}
  .pbv2-ticker__track{overflow:auto;}
}

/* ── v2.5 – Global Widget Ref ───────────────────────────────────── */
.pbv2-global-ref{display:contents;}
.pbv2-global-ref--empty{
  display:flex;align-items:center;gap:.5rem;
  padding:.7rem 1rem;border:1px dashed var(--pbv2-border,#334155);
  border-radius:var(--pbv2-rad,6px);color:var(--pbv2-muted,#94a3b8);
  font-size:.85rem;
}
