/* =====================================================================
   Fensterkonfigurator – Luxus-Theme
   Lädt NACH custom.css und überschreibt nur innerhalb des Konfigurators.
   Palette: Onyx · Champagner-Gold · warmes Elfenbein
   ===================================================================== */

body[data-jouwweb-page="90000002"] {
  --wiz-ink: #14161b;
  --wiz-ink-2: #23272f;
  --wiz-muted: #6b6f78;
  --wiz-soft: #9a9ea6;
  --wiz-line: #e2e7ed;
  --wiz-line-2: #eef2f6;
  --wiz-surface: #ffffff;
  --wiz-canvas: #f1f4f8;
  --wiz-accent: #9aa6b2;
  --wiz-accent-2: #6e7a87;
  --wiz-gold: #dbe3ea;
  --wiz-gold-soft: #eef3f7;
  --wiz-onyx: #101318;
  background:
    radial-gradient(1200px 600px at 50% -10%, #ffffff 0%, rgba(255, 255, 255, 0) 60%),
    var(--wiz-canvas);
}
body[data-jouwweb-page="90000002"] .jw-background { background-color: var(--wiz-canvas); }

/* --- Typografie: elegante Serif für Display --- */
.fb-wiz__h1,
.fb-wiz__q,
.fb-wiz__sumcard h3,
.fb-wiz__review-body h3,
.fb-wiz__real-title,
.fb-wiz__inspo-h2,
.fb-wiz__hero-stat-num,
.fb-wiz__total strong,
.fb-wiz__review-price strong,
.fb-wiz__grouphead-title {
  font-family: "Playfair Display", "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-weight: 600;
  letter-spacing: -0.005em;
}

/* --- Hero --- */
.fb-wiz__hero {
  border-radius: 22px;
  min-height: 500px;
  background: #0b0d11;
  box-shadow: 0 50px 90px -50px rgba(16, 19, 24, 0.75), 0 0 0 1px rgba(219, 227, 234, 0.28) inset;
}
.fb-wiz__hero::after {
  background:
    linear-gradient(180deg, rgba(11, 13, 17, 0.10) 0%, rgba(11, 13, 17, 0.52) 52%, rgba(11, 13, 17, 0.94) 100%),
    linear-gradient(100deg, rgba(11, 13, 17, 0.9) 0%, rgba(11, 13, 17, 0.36) 58%, rgba(11, 13, 17, 0.02) 100%),
    linear-gradient(0deg, rgba(154, 166, 178, 0.12), rgba(154, 166, 178, 0.12));
}
.fb-wiz__hero .fb-wiz__h1 {
  font-weight: 600;
  font-size: clamp(34px, 4.4vw, 58px);
  letter-spacing: 0.005em;
  text-shadow: 0 3px 30px rgba(0, 0, 0, 0.45);
}
.fb-wiz__hero .fb-wiz__h1::after {
  width: 84px;
  height: 2px;
  background: linear-gradient(90deg, var(--wiz-gold), rgba(219, 227, 234, 0));
  margin-top: 22px;
}
.fb-wiz__eyebrow { color: var(--wiz-gold-soft); letter-spacing: 0.32em; font-weight: 700; }
.fb-wiz__eyebrow-line { background: linear-gradient(90deg, var(--wiz-gold), rgba(219, 227, 234, 0)); }
.fb-wiz__hero .fb-wiz__intro { color: rgba(255, 255, 255, 0.8); font-size: 16.5px; }
.fb-wiz__hero-stats { border-top: 1px solid rgba(219, 227, 234, 0.35); }
.fb-wiz__hero-stat-num { color: #ffffff; font-weight: 600; }
.fb-wiz__hero-stat-txt { color: rgba(238, 243, 247, 0.72); letter-spacing: 0.08em; text-transform: uppercase; font-size: 10.5px; }

/* --- Fortschritt --- */
.fb-wiz__track { background: #e2e7ed; height: 2px; }
.fb-wiz__track span { background: linear-gradient(90deg, var(--wiz-gold), #7b8794); }
.fb-wiz__pip::after { height: 1px; background: var(--wiz-line); }
.fb-wiz__pip-num {
  width: 36px; height: 36px;
  background: #ffffff; border: 1px solid var(--wiz-line); color: var(--wiz-soft);
  box-shadow: 0 1px 2px rgba(16, 19, 24, 0.05);
}
.fb-wiz__pip.is-done .fb-wiz__pip-num { background: var(--wiz-onyx); border-color: var(--wiz-onyx); }
.fb-wiz__pip.is-done::after { background: var(--wiz-onyx); }
.fb-wiz__pip.is-active .fb-wiz__pip-num {
  background: linear-gradient(135deg, #e2e7ed, #9aa6b2);
  border-color: #7b8794; color: #141a21;
  box-shadow: 0 0 0 5px rgba(154, 166, 178, 0.16);
}
.fb-wiz__pip.is-active .fb-wiz__pip-label { color: var(--wiz-ink); }
.fb-wiz__pip-label { letter-spacing: 0.08em; text-transform: uppercase; font-size: 10.5px; }

/* --- Förderbanner --- */
.fb-wiz__promo {
  background: linear-gradient(90deg, #f5f8fb, #ffffff);
  border: 1px solid #e2e7ed;
  border-radius: 14px;
}
.fb-wiz__promo-badge { background: linear-gradient(135deg, var(--wiz-gold), #7b8794); color: #141a21; letter-spacing: 0.14em; }
.fb-wiz__promo-text { color: #5c6874; }
.fb-wiz__promo-link { color: var(--wiz-accent-2); border-bottom-color: rgba(154, 166, 178, 0.45); }

/* --- Schritt-Karte --- */
.fb-wiz__step {
  background: var(--wiz-surface);
  border: 1px solid var(--wiz-line);
  border-radius: 20px;
  box-shadow: 0 1px 2px rgba(16, 19, 24, 0.04), 0 30px 60px -34px rgba(16, 19, 24, 0.28);
}
.fb-wiz__qmeta { color: var(--wiz-accent-2); letter-spacing: 0.26em; }
.fb-wiz__q { font-weight: 600; font-size: clamp(23px, 2.5vw, 31px); }
.fb-wiz__hint { color: var(--wiz-muted); }

/* --- Auswahlkarten --- */
.fb-wiz__card {
  background: var(--wiz-surface);
  border: 1px solid var(--wiz-line);
  border-radius: 16px;
  transition: border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}
.fb-wiz__card:hover {
  border-color: #cfd8e0;
  box-shadow: 0 26px 48px -28px rgba(16, 19, 24, 0.4);
  transform: translateY(-4px);
}
.fb-wiz__card.is-active {
  border-color: var(--wiz-accent);
  box-shadow: 0 0 0 1.5px var(--wiz-accent), 0 26px 48px -28px rgba(154, 166, 178, 0.5);
}
.fb-wiz__card.is-active .fb-wiz__card-label { color: var(--wiz-accent-2); }
.fb-wiz__card.is-active .fb-wiz__card-check { background: linear-gradient(135deg, #e2e7ed, #9aa6b2); border-color: #7b8794; }
.fb-wiz__card.is-active .fb-wiz__card-check::after { border-color: #141a21; }
.fb-wiz__card-badge { background: rgba(255, 255, 255, 0.94); color: var(--wiz-accent-2); letter-spacing: 0.14em; }
.fb-wiz__card.is-active .fb-wiz__card-badge { background: linear-gradient(135deg, #e2e7ed, #9aa6b2); color: #141a21; }
.fb-wiz__card-tag { background: rgba(16, 19, 24, 0.85); }
.fb-wiz__card-media::after { background: linear-gradient(180deg, rgba(16, 19, 24, 0.06), rgba(154, 166, 178, 0.08) 100%); }

/* --- Größen --- */
.fb-wiz__size-item { background: var(--wiz-surface); border: 1px solid var(--wiz-line); border-radius: 12px; }
.fb-wiz__size-item:hover { border-color: #cfd8e0; }
.fb-wiz__size-item.is-active { border-color: var(--wiz-accent); box-shadow: 0 0 0 1.5px var(--wiz-accent); }
.fb-wiz__size-item.is-active .fb-wiz__size-code { color: var(--wiz-accent-2); }
.fb-wiz__size-price { color: var(--wiz-muted); }

/* --- Vorschau --- */
.fb-wiz__preview { border-radius: 16px; box-shadow: 0 30px 60px -34px rgba(16, 19, 24, 0.5), 0 0 0 1px rgba(219, 227, 234, 0.25) inset; }
.fb-wiz__preview-chip { background: rgba(16, 19, 24, 0.86); }
.fb-wiz__preview-ctx { background: rgba(255, 255, 255, 0.94); color: var(--wiz-accent-2); }

/* --- Navigation --- */
.fb-wiz__navbtn--primary {
  background: var(--wiz-onyx); color: #eef2f6;
  box-shadow: 0 16px 32px -16px rgba(16, 19, 24, 0.8);
  border: 1px solid rgba(219, 227, 234, 0.35);
}
.fb-wiz__navbtn--primary:hover { background: #000000; color: #ffffff; }
.fb-wiz__navbtn--ghost { background: transparent; border-color: #cfd8e0; color: var(--wiz-ink-2); }
.fb-wiz__navbtn--ghost:hover { border-color: var(--wiz-accent); color: var(--wiz-accent-2); }

/* --- Sidebar Zusammenfassung --- */
.fb-wiz__sumcard {
  background: var(--wiz-surface);
  border: 1px solid var(--wiz-line);
  border-radius: 20px;
  box-shadow: 0 1px 2px rgba(16, 19, 24, 0.04), 0 40px 80px -44px rgba(16, 19, 24, 0.45);
}
.fb-wiz__sumcard::before { height: 3px; background: linear-gradient(90deg, var(--wiz-gold), #7b8794); }
.fb-wiz__sumcard h3 { font-weight: 600; font-size: 19px; }
.fb-wiz__summeta { color: var(--wiz-soft); letter-spacing: 0.14em; }
.fb-wiz__sumlist div { border-bottom: 1px solid var(--wiz-line-2); }
.fb-wiz__sumlist dd { color: var(--wiz-ink); }
.fb-wiz__total strong { color: var(--wiz-accent-2); font-weight: 600; }
.fb-wiz__qty-ctrl { border-color: var(--wiz-line); border-radius: 10px; }
.fb-wiz__qty-ctrl button:hover { background: var(--wiz-onyx); color: #eef2f6; }
.fb-wiz__sum-trust svg { color: var(--wiz-accent); }

.fb-wiz__request.jw-btn {
  background: linear-gradient(135deg, #e2e7ed 0%, #9aa6b2 100%) !important;
  color: #141a21 !important;
  border: 0 !important;
  border-radius: 12px !important;
  box-shadow: 0 20px 40px -18px rgba(154, 166, 178, 0.85) !important;
  letter-spacing: 0.06em;
}
.fb-wiz__request.jw-btn:hover {
  background: linear-gradient(135deg, #eef3f7 0%, #b9c4cf 100%) !important;
  transform: translateY(-1px) !important;
}

/* --- Review --- */
.fb-wiz__review-body h3 { font-weight: 600; font-size: 23px; }
.fb-wiz__review-price strong { color: var(--wiz-accent-2); font-weight: 600; }
.fb-wiz__note { background: #ffffff; border-color: var(--wiz-line); }
.fb-wiz__note:focus { border-color: var(--wiz-accent); box-shadow: 0 0 0 3px rgba(154, 166, 178, 0.14); }
.fb-wiz__note-label { color: var(--wiz-accent-2); letter-spacing: 0.04em; }

/* --- Gruppen & Chips (VELUX-Struktur) --- */
.fb-wiz__grouphead-title { font-weight: 600; font-size: 18px; }
.fb-wiz__group-q { font-weight: 700; color: var(--wiz-ink-2); }
.fb-wiz__chip { background: var(--wiz-surface); border: 1px solid var(--wiz-line); color: var(--wiz-ink-2); }
.fb-wiz__chip:hover { border-color: var(--wiz-accent); color: var(--wiz-accent-2); }
.fb-wiz__chip.is-active {
  background: linear-gradient(135deg, #e2e7ed, #9aa6b2);
  border-color: #7b8794; color: #141a21;
  box-shadow: 0 10px 22px -12px rgba(154, 166, 178, 0.8);
}

/* --- Inspirations-Galerie --- */
.fb-wiz__inspo-eyebrow { color: var(--wiz-accent-2); letter-spacing: 0.28em; }
.fb-wiz__inspo-item { border-radius: 14px; box-shadow: 0 24px 50px -34px rgba(16, 19, 24, 0.45); }

/* --- Realistische Galerie --- */
.fb-wiz__real-thumb.is-active { border-color: var(--wiz-accent); }

/* --- Mobile Bar --- */
.fb-wiz__bar-info strong { color: var(--wiz-accent-2); }
.fb-wiz__bar-btn { background: var(--wiz-onyx); color: #eef2f6; }

/* --- Feine Gold-Trennlinie unter dem Hero-Titelbereich --- */
.fb-wiz__hero-inner::before {
  content: "";
  position: absolute;
  left: 54px;
  top: 30px;
  width: 54px;
  height: 1px;
  background: linear-gradient(90deg, var(--wiz-gold), rgba(219, 227, 234, 0));
  opacity: 0.9;
}
@media (max-width: 560px) {
  .fb-wiz__hero-inner::before { left: 22px; top: 20px; width: 40px; }
}

/* =====================================================================
   Luxus-Schicht 2 – Animationen & Feinschliff
   ===================================================================== */

/* Sanfter Ken-Burns-Zoom im Hero */
.fb-wiz__hero-slides {
  animation: fbKenBurns 30s ease-in-out infinite alternate;
  transform-origin: 62% 38%;
  will-change: transform;
}
@keyframes fbKenBurns {
  from { transform: scale(1) translate3d(0, 0, 0); }
  to   { transform: scale(1.09) translate3d(-1.5%, -1%, 0); }
}

/* Gold-Foil auf der Hero-Headline (mit Fallback) */
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .fb-wiz__hero .fb-wiz__h1 {
    background-image: linear-gradient(100deg, #ffffff 0%, #eef2f6 24%, #e2e7ed 45%, #ffffff 60%, #eef3f7 78%, #ffffff 100%);
    background-size: 220% auto;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    animation: fbGoldFoil 8s linear infinite;
  }
}
@keyframes fbGoldFoil { to { background-position: 220% center; } }

/* Goldene Linie, die sanft atmet */
.fb-wiz__hero .fb-wiz__h1::after { animation: fbGoldLine 3.6s ease-in-out infinite; }
@keyframes fbGoldLine {
  0%, 100% { opacity: 0.55; transform: scaleX(0.85); }
  50%      { opacity: 1;    transform: scaleX(1); }
}

/* Fortschritt: laufender Gold-Schimmer */
.fb-wiz__track span {
  background-image: linear-gradient(90deg, #7b8794, #eef3f7, #9aa6b2, #eef3f7, #7b8794);
  background-size: 220% 100%;
  animation: fbGoldBar 3.4s linear infinite;
}
@keyframes fbGoldBar { to { background-position: -220% 0; } }

/* Aktiver Schritt: sanfter Gold-Puls */
.fb-wiz__pip.is-active .fb-wiz__pip-num { animation: fbPipPulse 2.8s ease-in-out infinite; }
@keyframes fbPipPulse {
  0%, 100% { box-shadow: 0 0 0 5px rgba(154, 166, 178, 0.18); }
  50%      { box-shadow: 0 0 0 10px rgba(154, 166, 178, 0.05); }
}

/* Karten: Gold-Sheen beim Hover */
.fb-wiz__card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 34%, rgba(238, 243, 247, 0.38) 50%, transparent 66%);
  transform: translateX(-130%);
  transition: transform 0.95s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.fb-wiz__card:hover::after { transform: translateX(130%); }
.fb-wiz__card-check, .fb-wiz__card-badge, .fb-wiz__card-tag { z-index: 3; }

/* Vorschau: feiner Goldring-Glow */
.fb-wiz__preview { position: relative; }
.fb-wiz__preview::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: 0 0 0 1px rgba(219, 227, 234, 0.35) inset, 0 0 46px -12px rgba(154, 166, 178, 0.4) inset;
}

/* Sidebar: goldener Lichtschein */
.fb-wiz__sumcard { position: relative; }
.fb-wiz__sumcard::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(160deg, rgba(219, 227, 234, 0.12), transparent 44%);
}

/* Preis mit dezentem Glow */
.fb-wiz__total strong,
.fb-wiz__review-price strong { text-shadow: 0 1px 20px rgba(154, 166, 178, 0.28); }

/* CTA: wandernder Gold-Schimmer */
.fb-wiz__request.jw-btn { position: relative; overflow: hidden; }
.fb-wiz__request.jw-btn::after {
  content: "";
  position: absolute;
  top: -20%;
  bottom: -20%;
  width: 38%;
  left: -60%;
  background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.65), transparent);
  transform: skewX(-18deg);
  animation: fbCtaShimmer 4.2s ease-in-out infinite;
  pointer-events: none;
}
@keyframes fbCtaShimmer {
  0%, 55% { left: -60%; }
  100%    { left: 140%; }
}

/* Scroll-Reveal (modern, ohne JS) */
@supports (animation-timeline: view()) {
  .fb-wiz__inspo-item,
  .fb-wiz__review-card,
  .fb-wiz__real {
    animation: fbReveal 0.95s cubic-bezier(0.2, 0.7, 0.2, 1) both;
    animation-timeline: view();
    animation-range: entry 4% cover 26%;
  }
}
@keyframes fbReveal {
  from { opacity: 0; transform: translateY(26px) scale(0.985); }
  to   { opacity: 1; transform: none; }
}

/* Scrollbar der Schritt-Leiste in Gold */
.fb-wiz__progress::-webkit-scrollbar { height: 6px; }
.fb-wiz__progress::-webkit-scrollbar-thumb {
  background: linear-gradient(90deg, #e2e7ed, #9aa6b2);
  border-radius: 999px;
}

/* Reduzierte Bewegung respektieren */
@media (prefers-reduced-motion: reduce) {
  .fb-wiz__hero-slides,
  .fb-wiz__hero .fb-wiz__h1,
  .fb-wiz__hero .fb-wiz__h1::after,
  .fb-wiz__track span,
  .fb-wiz__pip.is-active .fb-wiz__pip-num,
  .fb-wiz__request.jw-btn::after,
  .fb-wiz__inspo-item,
  .fb-wiz__review-card,
  .fb-wiz__real { animation: none !important; }
}

/* =====================================================================
   Luxus-Schicht 3 – Editoriale Galerie & Lightbox
   ===================================================================== */

/* Editoriale Inspirations-Galerie */
.fb-wiz__inspo-grid {
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 190px;
  gap: 14px;
}
.fb-wiz__inspo-item {
  aspect-ratio: auto !important;
  cursor: pointer;
  outline: none;
}
.fb-wiz__inspo-item.is-wide { grid-column: span 2; }
.fb-wiz__inspo-item.is-tall { grid-row: span 2; }
.fb-wiz__inspo-item img { transition: transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1); }
.fb-wiz__inspo-item:hover img { transform: scale(1.07); }
.fb-wiz__inspo-item::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: 0 0 0 0 rgba(219, 227, 234, 0) inset;
  transition: box-shadow 0.35s ease;
  border-radius: inherit;
}
.fb-wiz__inspo-item:hover::after,
.fb-wiz__inspo-item:focus-visible::after {
  box-shadow: 0 0 0 2px rgba(219, 227, 234, 0.75) inset;
}
.fb-wiz__inspo-item figcaption {
  font-family: "Playfair Display", Georgia, serif;
  letter-spacing: 0.04em;
  font-size: 14px;
}

/* Lightbox */
.fb-wiz__lb { position: fixed; inset: 0; z-index: 200; display: flex; align-items: center; justify-content: center; }
.fb-wiz__lb[hidden] { display: none; }
.fb-wiz__lb-overlay {
  position: absolute; inset: 0;
  background: radial-gradient(80% 80% at 50% 40%, rgba(16, 19, 24, 0.86), rgba(8, 9, 12, 0.94));
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  animation: fbLbFade 0.35s ease;
}
.fb-wiz__lb-figure {
  position: relative; z-index: 1; margin: 0;
  max-width: min(92vw, 1180px); max-height: 88vh;
  display: flex; flex-direction: column; gap: 14px;
  animation: fbLbZoom 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.fb-wiz__lb-figure img {
  max-width: 100%; max-height: 80vh; object-fit: contain;
  border-radius: 14px;
  box-shadow: 0 50px 100px -40px rgba(0, 0, 0, 0.85), 0 0 0 1px rgba(219, 227, 234, 0.35);
  opacity: 0; transition: opacity 0.45s ease;
}
.fb-wiz__lb-figure img.is-in { opacity: 1; }
.fb-wiz__lb-figure figcaption {
  text-align: center; color: #eef3f7;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 15px; letter-spacing: 0.1em; text-transform: uppercase;
}
.fb-wiz__lb-close {
  position: absolute; top: 20px; right: 24px; z-index: 2;
  width: 46px; height: 46px; border-radius: 50%;
  border: 1px solid rgba(219, 227, 234, 0.5);
  background: rgba(16, 19, 24, 0.6); color: #eef2f6;
  font-size: 26px; line-height: 1; cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.fb-wiz__lb-close:hover { background: rgba(154, 166, 178, 0.9); color: #141a21; transform: rotate(90deg); }
.fb-wiz__lb-nav {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 2;
  width: 54px; height: 54px; border-radius: 50%;
  border: 1px solid rgba(219, 227, 234, 0.5);
  background: rgba(16, 19, 24, 0.6); color: #eef2f6;
  font-size: 30px; line-height: 1; cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.fb-wiz__lb-nav:hover { background: rgba(154, 166, 178, 0.9); color: #141a21; }
.fb-wiz__lb-nav--prev { left: 22px; }
.fb-wiz__lb-nav--next { right: 22px; }
@keyframes fbLbFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes fbLbZoom { from { opacity: 0; transform: scale(0.955) translateY(12px); } to { opacity: 1; transform: none; } }
html.fb-wiz-lb-open { overflow: hidden; }

@media (max-width: 980px) {
  .fb-wiz__inspo-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 170px; }
  .fb-wiz__inspo-item.is-wide,
  .fb-wiz__inspo-item.is-tall { grid-column: span 1; grid-row: span 1; }
}
@media (max-width: 560px) {
  .fb-wiz__inspo-grid { grid-auto-rows: 150px; gap: 10px; }
  .fb-wiz__lb-nav { width: 44px; height: 44px; font-size: 24px; }
  .fb-wiz__lb-nav--prev { left: 8px; }
  .fb-wiz__lb-nav--next { right: 8px; }
  .fb-wiz__lb-close { top: 12px; right: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .fb-wiz__lb-overlay,
  .fb-wiz__lb-figure,
  .fb-wiz__lb-figure img,
  .fb-wiz__inspo-item img { animation: none !important; transition: none !important; }
}

/* =====================================================================
   Luxus-Schicht 4 – Hero-Slideshow (6 Motive, Ken-Burns-Überblendung)
   ===================================================================== */
.fb-wiz__hero-slides { animation: none !important; }

.fb-wiz__hero-slide.is-1 { opacity: 0; animation: fbHeroSlide 36s linear infinite 0s, fbHeroKB 16s ease-in-out infinite alternate 0s; }
.fb-wiz__hero-slide.is-2 { opacity: 0; animation: fbHeroSlide 36s linear infinite 6s, fbHeroKB 16s ease-in-out infinite alternate -2.6s; }
.fb-wiz__hero-slide.is-3 { opacity: 0; animation: fbHeroSlide 36s linear infinite 12s, fbHeroKB 16s ease-in-out infinite alternate -5.2s; }
.fb-wiz__hero-slide.is-4 { opacity: 0; animation: fbHeroSlide 36s linear infinite 18s, fbHeroKB 16s ease-in-out infinite alternate -7.8s; }
.fb-wiz__hero-slide.is-5 { opacity: 0; animation: fbHeroSlide 36s linear infinite 24s, fbHeroKB 16s ease-in-out infinite alternate -10.4s; }
.fb-wiz__hero-slide.is-6 { opacity: 0; animation: fbHeroSlide 36s linear infinite 30s, fbHeroKB 16s ease-in-out infinite alternate -13s; }

@keyframes fbHeroSlide {
  0%   { opacity: 0; }
  3%   { opacity: 1; }
  19%  { opacity: 1; }
  22%  { opacity: 0; }
  100% { opacity: 0; }
}
@keyframes fbHeroKB {
  from { transform: scale(1.03) translate3d(0, 0, 0); }
  to   { transform: scale(1.13) translate3d(-1.6%, -1.2%, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .fb-wiz__hero-slide.is-1,
  .fb-wiz__hero-slide.is-2,
  .fb-wiz__hero-slide.is-3,
  .fb-wiz__hero-slide.is-4,
  .fb-wiz__hero-slide.is-5,
  .fb-wiz__hero-slide.is-6 { animation: none !important; opacity: 0; }
  .fb-wiz__hero-slide.is-1 { opacity: 1; }
}

/* =====================================================================
   Chrom-Finish – durchgängig edel (alle Bausteine)
   ===================================================================== */

/* Schritt-Karte: gebürstetes Chrom mit Lichtkante */
.fb-wiz__step {
  position: relative;
  overflow: hidden;
  background-image: linear-gradient(180deg, #ffffff 0%, #fbfcfe 55%, #f2f6fa 100%);
  box-shadow: 0 1px 2px rgba(16, 19, 24, 0.04), 0 34px 70px -38px rgba(16, 19, 24, 0.32), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}
.fb-wiz__step::before {
  content: "";
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, #cdd7e0 18%, #ffffff 50%, #cdd7e0 82%, transparent);
}
.fb-wiz__sumcard { background-image: linear-gradient(180deg, #ffffff 0%, #fafcfe 60%, #f1f5f9 100%); }
.fb-wiz__sumcard::before { background: linear-gradient(90deg, #b9c4cf, #eef3f7 32%, #ffffff 50%, #eef3f7 68%, #b9c4cf); }

/* Auswahlkarten, Größen, Chips, Steuerung: Chromverlauf */
.fb-wiz__card { background-image: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%); }
.fb-wiz__size-item { background-image: linear-gradient(180deg, #ffffff 0%, #f7fafc 100%); }
.fb-wiz__chip { background-image: linear-gradient(180deg, #ffffff 0%, #f7fafc 100%); }
.fb-wiz__qty-ctrl { background-image: linear-gradient(180deg, #ffffff 0%, #f4f7fa 100%); }
.fb-wiz__note { background-image: linear-gradient(180deg, #ffffff 0%, #fafcfe 100%); }

/* Fortschritt & aktiver Schritt: Chrom */
.fb-wiz__pip-num { background-image: linear-gradient(180deg, #ffffff 0%, #f1f5f9 100%); }
.fb-wiz__pip.is-active .fb-wiz__pip-num {
  background: linear-gradient(135deg, #f2f6fa 0%, #c6d0da 45%, #9aa6b2 100%);
  color: #12161c; border-color: #7b8794;
}

/* Primärbutton: dunkles Chrom */
.fb-wiz__navbtn--primary {
  background: linear-gradient(180deg, #2b333d 0%, #10151b 100%);
  border: 1px solid rgba(219, 227, 234, 0.5);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.16) inset, 0 18px 34px -18px rgba(16, 19, 24, 0.85);
}
.fb-wiz__navbtn--primary:hover { background: linear-gradient(180deg, #353e49 0%, #171d24 100%); }

/* CTA: helles Chrom mit dunkler Schrift */
.fb-wiz__request.jw-btn {
  background: linear-gradient(135deg, #f6f9fc 0%, #cdd7e0 42%, #93a0ad 100%) !important;
  color: #12161c !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7) inset, 0 22px 44px -18px rgba(123, 135, 148, 0.85) !important;
}
.fb-wiz__request.jw-btn:hover {
  background: linear-gradient(135deg, #ffffff 0%, #dbe3ea 42%, #a3b0bd 100%) !important;
}

/* Vorschau: Chromrahmen */
.fb-wiz__preview {
  box-shadow: 0 30px 60px -34px rgba(16, 19, 24, 0.5), 0 0 0 1px rgba(219, 227, 234, 0.7) inset, 0 1px 0 rgba(255, 255, 255, 0.6) inset;
}

/* Aktive Karte/Größe: Chromring */
.fb-wiz__card.is-active {
  border-color: #9aa6b2;
  box-shadow: 0 0 0 1.5px #9aa6b2, 0 26px 48px -28px rgba(123, 135, 148, 0.55);
}
.fb-wiz__size-item.is-active { border-color: #9aa6b2; box-shadow: 0 0 0 1.5px #9aa6b2; }

/* Gruppen & Chips im Chrom-Look */
.fb-wiz__grouphead-title { color: var(--wiz-ink); }
.fb-wiz__chip.is-active {
  background: linear-gradient(135deg, #eef3f7 0%, #b9c4cf 100%);
  border-color: #8f9dab; color: #12161c;
  box-shadow: 0 10px 22px -12px rgba(123, 135, 148, 0.8);
}

/* =====================================================================
   Spiegel-Glanz & Metallic-Lichtstreifen
   ===================================================================== */

/* Hero: wandernder Metallic-Lichtstreifen */
.fb-wiz__hero-slides { z-index: 0; }
.fb-wiz__hero::after { z-index: 1; }
.fb-wiz__hero::before {
  content: "";
  position: absolute;
  top: -35%;
  bottom: -35%;
  left: -45%;
  width: 36%;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(100deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.06) 34%,
    rgba(255, 255, 255, 0.38) 50%,
    rgba(255, 255, 255, 0.06) 66%,
    rgba(255, 255, 255, 0) 100%);
  transform: skewX(-16deg);
  mix-blend-mode: screen;
  animation: fbHeroStreak 10s ease-in-out infinite;
}
.fb-wiz__hero-inner { z-index: 3; }
@keyframes fbHeroStreak {
  0%, 62%   { left: -45%; opacity: 0; }
  68%       { opacity: 1; }
  100%      { left: 128%; opacity: 0; }
}

/* Karten: Spiegelstreifen beim Hover */
.fb-wiz__card::after {
  background: linear-gradient(115deg,
    rgba(255, 255, 255, 0) 30%,
    rgba(255, 255, 255, 0.05) 42%,
    rgba(255, 255, 255, 0.62) 50%,
    rgba(255, 255, 255, 0.05) 58%,
    rgba(255, 255, 255, 0) 70%);
  transition: transform 0.85s cubic-bezier(0.2, 0.7, 0.2, 1);
}

/* Kartenbild: feiner Glasglanz oben */
.fb-wiz__card-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0) 38%);
}

/* Größen-Kacheln: Glasglanz */
.fb-wiz__size-item { position: relative; overflow: hidden; }
.fb-wiz__size-item::before {
  content: "";
  position: absolute;
  inset: 0 0 55% 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0));
  border-radius: inherit;
}

/* CTA: Glasglanz + wandernder Chromreflex */
.fb-wiz__request.jw-btn::before {
  content: "";
  position: absolute;
  inset: 1px 1px 52% 1px;
  border-radius: 11px 11px 0 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0));
}

/* Primärbutton: Glasglanz */
.fb-wiz__navbtn--primary { position: relative; overflow: hidden; }
.fb-wiz__navbtn--primary::before {
  content: "";
  position: absolute;
  inset: 1px 1px 55% 1px;
  border-radius: 11px 11px 0 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0));
}

/* Sidebar-Karte: Spiegelkante oben */
.fb-wiz__sumcard::after {
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 30%), linear-gradient(180deg, rgba(219, 227, 234, 0.18), rgba(219, 227, 234, 0));
}

@media (prefers-reduced-motion: reduce) {
  .fb-wiz__hero::before { animation: none !important; opacity: 0; }
}

/* =====================================================================
   Animierter Hintergrund + aufgeräumtes, professionelles Layout
   (nur auf der Konfigurator-Seite)
   ===================================================================== */

body[data-jouwweb-page="90000002"] { position: relative; background: #eef1f5; }

/* Langsam wanderndes, weichgezeichnetes Raumbild */
body[data-jouwweb-page="90000002"]::after {
  content: "";
  position: fixed;
  inset: -6%;
  z-index: -2;
  pointer-events: none;
  background: url("/produkte/fenster/inspiration/insp-livingroom-2.webp") center / cover no-repeat;
  opacity: 0.07;
  filter: blur(26px) saturate(0.75);
  animation: fbBgPan 48s ease-in-out infinite alternate;
}

/* Driftende Chrom-Lichtfelder */
body[data-jouwweb-page="90000002"]::before {
  content: "";
  position: fixed;
  inset: -20vmax;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(38vmax 38vmax at 14% 18%, rgba(154, 166, 178, 0.22), transparent 62%),
    radial-gradient(44vmax 44vmax at 86% 12%, rgba(238, 243, 247, 0.8), transparent 64%),
    radial-gradient(48vmax 48vmax at 72% 88%, rgba(154, 166, 178, 0.18), transparent 62%),
    radial-gradient(40vmax 40vmax at 18% 92%, rgba(219, 227, 234, 0.65), transparent 62%);
  filter: blur(8px);
  animation: fbBgDrift 30s ease-in-out infinite alternate;
}

@keyframes fbBgDrift {
  0%   { transform: translate3d(0, 0, 0) scale(1); }
  50%  { transform: translate3d(-3%, 2%, 0) scale(1.08); }
  100% { transform: translate3d(3%, -2%, 0) scale(1.05); }
}
@keyframes fbBgPan {
  from { transform: scale(1.1) translate3d(-2%, -1%, 0); }
  to   { transform: scale(1.22) translate3d(2%, 1%, 0); }
}

/* Aufgeräumt: klare Abstände & ruhige Kanten */
.fb-wiz { position: relative; z-index: 1; }
.fb-wiz__step { border-radius: 18px; }
.fb-wiz__cards { align-items: stretch; }
.fb-wiz__card-body { min-height: 92px; }
.fb-wiz__layout { gap: 28px; }
.fb-wiz__progress { padding-bottom: 22px; }

@media (prefers-reduced-motion: reduce) {
  body[data-jouwweb-page="90000002"]::before,
  body[data-jouwweb-page="90000002"]::after { animation: none !important; }
}

/* =====================================================================
   Premium-Funktionen: Teilen, PDF, Zoom, Toast, gestaffelte Karten
   ===================================================================== */

.fb-wiz__actions { display: flex; gap: 10px; margin-top: 12px; }
.fb-wiz__act {
  flex: 1; font: inherit; font-size: 12.5px; font-weight: 700; letter-spacing: 0.02em;
  padding: 10px 12px; border-radius: 10px; cursor: pointer;
  border: 1px solid var(--wiz-line);
  background: linear-gradient(180deg, #ffffff, #f4f7fa);
  color: var(--wiz-ink-2);
  transition: border-color 0.18s ease, color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}
.fb-wiz__act:hover { border-color: #9aa6b2; color: #12161c; transform: translateY(-1px); box-shadow: 0 10px 22px -14px rgba(123, 135, 148, 0.7); }

.fb-wiz__toast {
  position: fixed; left: 50%; bottom: 26px; transform: translate(-50%, 20px);
  z-index: 300; pointer-events: none;
  background: rgba(16, 19, 24, 0.92); color: #eef3f7;
  font: inherit; font-size: 13px; font-weight: 600; letter-spacing: 0.02em;
  padding: 11px 18px; border-radius: 999px;
  box-shadow: 0 18px 40px -18px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(219, 227, 234, 0.35) inset;
  opacity: 0; transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.fb-wiz__toast.is-on { opacity: 1; transform: translate(-50%, 0); }

/* Produktbild-Zoom */
.fb-wiz__card-zoom {
  position: absolute; right: 12px; bottom: 12px; z-index: 4;
  width: 34px; height: 34px; border-radius: 50%;
  background: rgba(255, 255, 255, 0.9); border: 1px solid rgba(16, 19, 24, 0.12);
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
  opacity: 0; transform: translateY(6px);
  transition: opacity 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
  cursor: zoom-in;
}
.fb-wiz__card-zoom::before { content: ""; position: absolute; left: 11px; top: 11px; width: 9px; height: 9px; border: 2px solid #12161c; border-radius: 50%; }
.fb-wiz__card-zoom::after { content: ""; position: absolute; left: 20px; top: 21px; width: 8px; height: 2px; background: #12161c; transform: rotate(45deg); border-radius: 2px; }
.fb-wiz__card:hover .fb-wiz__card-zoom { opacity: 1; transform: none; }
.fb-wiz__card-zoom:hover { background: #ffffff; }

/* Gestaffeltes Einblenden der Karten */
@keyframes fbCardIn { from { opacity: 0; transform: translateY(12px) scale(0.985); } to { opacity: 1; transform: none; } }
.fb-wiz__cards .fb-wiz__card { animation: fbCardIn 0.42s cubic-bezier(0.2, 0.7, 0.2, 1) both; }
.fb-wiz__cards .fb-wiz__card:nth-child(1) { animation-delay: 0.02s; }
.fb-wiz__cards .fb-wiz__card:nth-child(2) { animation-delay: 0.05s; }
.fb-wiz__cards .fb-wiz__card:nth-child(3) { animation-delay: 0.08s; }
.fb-wiz__cards .fb-wiz__card:nth-child(4) { animation-delay: 0.11s; }
.fb-wiz__cards .fb-wiz__card:nth-child(5) { animation-delay: 0.14s; }
.fb-wiz__cards .fb-wiz__card:nth-child(6) { animation-delay: 0.17s; }
.fb-wiz__cards .fb-wiz__card:nth-child(7) { animation-delay: 0.2s; }
.fb-wiz__cards .fb-wiz__card:nth-child(8) { animation-delay: 0.23s; }
.fb-wiz__cards .fb-wiz__card:nth-child(n+9) { animation-delay: 0.26s; }

/* Druck / PDF */
@media print {
  .fb-wiz__hero, .fb-wiz__promo, .fb-wiz__progress, .fb-wiz__track, .fb-wiz__nav,
  .fb-wiz__inspo, .fb-wiz__lb, .fb-wiz__actions, .fb-wiz__bar, .block-header, .block-footer,
  .fb-topbar, .fb-consent, .fb-consent-fab, #fb-consent, #fb-consent-modal { display: none !important; }
  body[data-jouwweb-page="90000002"]::before,
  body[data-jouwweb-page="90000002"]::after { display: none !important; }
  .fb-wiz__layout { display: block !important; }
  .fb-wiz__aside { position: static !important; }
  .fb-wiz__step, .fb-wiz__sumcard { box-shadow: none !important; border: 1px solid #dddddd !important; }
  .fb-wiz { padding: 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
  .fb-wiz__cards .fb-wiz__card { animation: none !important; }
}

/* =====================================================================
   Rote Details – silberne Akzente werden zu edlem Rot
   (neutrale Flächen bleiben hell)
   ===================================================================== */
body[data-jouwweb-page="90000002"] {
  --wiz-accent: #b8001a;
  --wiz-accent-2: #8f0014;
  --wiz-gold: #d94a5e;
  --wiz-gold-soft: #f4c9d0;
}

/* Aktive Zustände */
.fb-wiz__pip:hover .fb-wiz__pip-num { border-color: #b8001a; color: #b8001a; }
.fb-wiz__pip.is-active .fb-wiz__pip-num {
  background: linear-gradient(135deg, #e0576a 0%, #b8001a 100%);
  border-color: #8f0014; color: #ffffff;
}
.fb-wiz__card.is-active {
  border-color: #b8001a;
  box-shadow: 0 0 0 1.5px #b8001a, 0 26px 48px -28px rgba(184, 0, 26, 0.5);
}
.fb-wiz__card.is-active .fb-wiz__card-check { background: linear-gradient(135deg, #e0576a, #b8001a); border-color: #8f0014; }
.fb-wiz__card.is-active .fb-wiz__card-check::after { border-color: #ffffff; }
.fb-wiz__card.is-active .fb-wiz__card-badge { background: linear-gradient(135deg, #e0576a, #b8001a); color: #ffffff; }
.fb-wiz__size-item.is-active { border-color: #b8001a; box-shadow: 0 0 0 1.5px #b8001a; }
.fb-wiz__size-item.is-active .fb-wiz__size-code { color: #8f0014; }
.fb-wiz__chip.is-active {
  background: linear-gradient(135deg, #e0576a 0%, #b8001a 100%);
  border-color: #8f0014; color: #ffffff;
  box-shadow: 0 10px 22px -12px rgba(184, 0, 26, 0.8);
}

/* Preis & Links */
.fb-wiz__total strong,
.fb-wiz__review-price strong { color: #b8001a; text-shadow: 0 1px 20px rgba(184, 0, 26, 0.28); }
.fb-wiz__promo-link { color: #8f0014; border-bottom-color: rgba(184, 0, 26, 0.45); }
.fb-wiz__promo-badge { background: linear-gradient(135deg, #d94a5e, #b8001a); color: #ffffff; }
.fb-wiz__sum-trust svg { color: #b8001a; }
.fb-wiz__reset:hover { border-color: #b8001a; color: #b8001a; }
.fb-wiz__navbtn--ghost:hover { border-color: #b8001a; color: #8f0014; }
.fb-wiz__note:focus { border-color: #b8001a; box-shadow: 0 0 0 3px rgba(184, 0, 26, 0.12); }
.fb-wiz__note-label { color: #8f0014; }

/* CTA in Rot */
.fb-wiz__request.jw-btn {
  background: linear-gradient(135deg, #e0576a 0%, #b8001a 55%, #8f0014 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.35) inset, 0 22px 44px -18px rgba(184, 0, 26, 0.8) !important;
}
.fb-wiz__request.jw-btn:hover {
  background: linear-gradient(135deg, #ec6a7c 0%, #c30a24 55%, #96001a 100%) !important;
}

/* Hero: rote Akzente + roter Foil-Schimmer */
.fb-wiz__eyebrow { color: #f4c9d0; }
.fb-wiz__eyebrow-line { background: linear-gradient(90deg, #e0576a, rgba(224, 87, 106, 0)); }
.fb-wiz__hero .fb-wiz__h1::after { background: linear-gradient(90deg, #e0576a, rgba(224, 87, 106, 0)); }
.fb-wiz__hero-stat-txt { color: rgba(244, 201, 208, 0.75); }
.fb-wiz__hero-stats { border-top: 1px solid rgba(184, 0, 26, 0.4); }
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .fb-wiz__hero .fb-wiz__h1 {
    background-image: linear-gradient(100deg, #ffffff 0%, #ffd9de 24%, #e0576a 45%, #ffffff 60%, #f3b8c0 78%, #ffffff 100%);
  }
}

/* Fortschritt & Sidebar-Kopflinie in Rot */
.fb-wiz__track span { background-image: linear-gradient(90deg, #8f0014, #e0576a, #b8001a, #e0576a, #8f0014); }
.fb-wiz__sumcard::before { background: linear-gradient(90deg, #b8001a, #e0576a 35%, #ffffff 50%, #e0576a 65%, #b8001a); }

/* Animierter Hintergrund: rote Lichtfelder */
body[data-jouwweb-page="90000002"]::before {
  background:
    radial-gradient(38vmax 38vmax at 14% 18%, rgba(184, 0, 26, 0.10), transparent 62%),
    radial-gradient(44vmax 44vmax at 86% 12%, rgba(255, 255, 255, 0.8), transparent 64%),
    radial-gradient(48vmax 48vmax at 72% 88%, rgba(184, 0, 26, 0.08), transparent 62%),
    radial-gradient(40vmax 40vmax at 18% 92%, rgba(255, 255, 255, 0.6), transparent 62%);
}

/* =====================================================================
   Bordeaux-Rot + leicht rot getönte Flächen
   ===================================================================== */
body[data-jouwweb-page="90000002"] {
  --wiz-accent: #9b0d22;
  --wiz-accent-2: #700011;
  --wiz-gold: #a82338;
  --wiz-gold-soft: #e9b9c1;
  --wiz-surface: #fffafb;
  --wiz-canvas: #f8f0f1;
  --wiz-line: #ecd9dd;
  --wiz-line-2: #f6e9eb;
}

/* Flächen dezent rötlich */
.fb-wiz__step { background-image: linear-gradient(180deg, #fffafb 0%, #fdf4f6 55%, #f8eaed 100%); border-color: #ecd9dd; }
.fb-wiz__step::before { background: linear-gradient(90deg, transparent, #e7bfc6 18%, #ffffff 50%, #e7bfc6 82%, transparent); }
.fb-wiz__sumcard { background-image: linear-gradient(180deg, #fffafb 0%, #fdf4f6 60%, #f7e9ec 100%); border-color: #ecd9dd; }
.fb-wiz__card { background-image: linear-gradient(180deg, #fffafb 0%, #fdf4f6 100%); }
.fb-wiz__size-item { background-image: linear-gradient(180deg, #fffafb 0%, #fdf4f6 100%); }
.fb-wiz__chip { background-image: linear-gradient(180deg, #fffafb 0%, #fdf4f6 100%); }
.fb-wiz__qty-ctrl { background-image: linear-gradient(180deg, #ffffff 0%, #f9eef1 100%); }
.fb-wiz__note { background-image: linear-gradient(180deg, #ffffff 0%, #fdf4f6 100%); }
.fb-wiz__pip-num { background-image: linear-gradient(180deg, #ffffff 0%, #f8eaed 100%); }

/* Kräftige rote Akzente (Bordeaux) */
.fb-wiz__pip.is-active .fb-wiz__pip-num { background: linear-gradient(135deg, #b8324a 0%, #8f0014 100%); border-color: #700011; }
.fb-wiz__card.is-active { border-color: #9b0d22; box-shadow: 0 0 0 1.5px #9b0d22, 0 26px 48px -28px rgba(143, 0, 20, 0.55); }
.fb-wiz__card.is-active .fb-wiz__card-check { background: linear-gradient(135deg, #b8324a, #8f0014); border-color: #700011; }
.fb-wiz__card.is-active .fb-wiz__card-badge { background: linear-gradient(135deg, #b8324a, #8f0014); }
.fb-wiz__size-item.is-active { border-color: #9b0d22; box-shadow: 0 0 0 1.5px #9b0d22; }
.fb-wiz__size-item.is-active .fb-wiz__size-code { color: #700011; }
.fb-wiz__chip.is-active { background: linear-gradient(135deg, #b8324a 0%, #8f0014 100%); border-color: #700011; }

.fb-wiz__total strong,
.fb-wiz__review-price strong { color: #8f0014; text-shadow: 0 1px 20px rgba(143, 0, 20, 0.3); }
.fb-wiz__promo-link { color: #700011; }
.fb-wiz__promo-badge { background: linear-gradient(135deg, #b8324a, #8f0014); }
.fb-wiz__note-label { color: #700011; }

.fb-wiz__request.jw-btn {
  background: linear-gradient(135deg, #b8324a 0%, #8f0014 55%, #5f000b 100%) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset, 0 22px 44px -18px rgba(143, 0, 20, 0.85) !important;
}
.fb-wiz__request.jw-btn:hover {
  background: linear-gradient(135deg, #c9435b 0%, #a3061e 55%, #70000f 100%) !important;
}

.fb-wiz__eyebrow { color: #e9b9c1; }
.fb-wiz__eyebrow-line { background: linear-gradient(90deg, #b8324a, rgba(184, 50, 74, 0)); }
.fb-wiz__hero .fb-wiz__h1::after { background: linear-gradient(90deg, #b8324a, rgba(184, 50, 74, 0)); }
.fb-wiz__hero-stats { border-top: 1px solid rgba(143, 0, 20, 0.45); }
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .fb-wiz__hero .fb-wiz__h1 {
    background-image: linear-gradient(100deg, #ffffff 0%, #ffd0d7 24%, #b8324a 45%, #ffffff 60%, #e8a6b0 78%, #ffffff 100%);
  }
}

.fb-wiz__track span { background-image: linear-gradient(90deg, #5f000b, #b8324a, #8f0014, #b8324a, #5f000b); }
.fb-wiz__sumcard::before { background: linear-gradient(90deg, #8f0014, #b8324a 35%, #ffffff 50%, #b8324a 65%, #8f0014); }

body[data-jouwweb-page="90000002"]::before {
  background:
    radial-gradient(38vmax 38vmax at 14% 18%, rgba(155, 13, 34, 0.14), transparent 62%),
    radial-gradient(44vmax 44vmax at 86% 12%, rgba(255, 255, 255, 0.8), transparent 64%),
    radial-gradient(48vmax 48vmax at 72% 88%, rgba(155, 13, 34, 0.11), transparent 62%),
    radial-gradient(40vmax 40vmax at 18% 92%, rgba(255, 255, 255, 0.6), transparent 62%);
}

/* =====================================================================
   Typenschild-Ablauf (1:1 ersetzen): Eingabefeld & Hinweis
   ===================================================================== */
.fb-wiz__input-wrap { margin-top: 6px; }
.fb-wiz__input {
  width: 100%; box-sizing: border-box; font: inherit; font-size: 17px; font-weight: 600; letter-spacing: 0.02em;
  padding: 16px 18px; border-radius: 14px; color: var(--wiz-ink);
  border: 1.5px solid var(--wiz-line); background: linear-gradient(180deg, #ffffff, #fdf4f6);
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.fb-wiz__input:focus { outline: none; border-color: var(--wiz-accent); box-shadow: 0 0 0 4px rgba(155, 13, 34, 0.12); }
.fb-wiz__input::placeholder { color: var(--wiz-soft); font-weight: 500; }

.fb-wiz__notice {
  display: flex; gap: 14px; align-items: flex-start;
  margin-top: 6px; padding: 18px 20px; border-radius: 14px;
  border: 1px solid var(--wiz-line); background: linear-gradient(180deg, #fffafb, #fdf4f6);
}
.fb-wiz__notice p { margin: 0; font-size: 14px; line-height: 1.7; color: var(--wiz-muted); }
.fb-wiz__notice-icon { flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%; background: linear-gradient(135deg, #b8324a, #8f0014); position: relative; }
.fb-wiz__notice-icon::after { content: ""; position: absolute; left: 11px; top: 6px; width: 4px; height: 9px; border-radius: 2px; background: #ffffff; }
.fb-wiz__notice-icon::before { content: ""; position: absolute; left: 11px; top: 17px; width: 4px; height: 4px; border-radius: 50%; background: #ffffff; }

/* Bild im Hinweis-Schritt (Typenschild) */
.fb-wiz__notice-media { margin-top: 16px; border-radius: 14px; overflow: hidden; border: 1px solid var(--wiz-line); background: #fffafb; }
.fb-wiz__notice-media img { width: 100%; height: auto; display: block; }

/* Preise pro Auswahl in der Zusammenfassung */
.fb-wiz__sumitem { display: block; }
.fb-wiz__sumitem + .fb-wiz__sumitem { margin-top: 4px; }
.fb-wiz__sumlabel { color: var(--wiz-ink); }
.fb-wiz__sumprice { display: inline-block; margin-left: 8px; font-weight: 800; color: var(--wiz-accent-2); white-space: nowrap; }
.fb-wiz__sumlist .fb-wiz__sumprice,
.fb-wiz__review-list .fb-wiz__sumprice { color: var(--wiz-accent-2); }

/* =====================================================================
   Förderungs-Modal ("Mehr erfahren")
   ===================================================================== */
.fb-wiz__promo-link { background: none; border: 0; padding: 0; cursor: pointer; font: inherit; }
.fb-wiz__modal { position: fixed; inset: 0; z-index: 210; display: flex; align-items: center; justify-content: center; padding: 20px; }
.fb-wiz__modal[hidden] { display: none; }
.fb-wiz__modal-overlay {
  position: absolute; inset: 0;
  background: radial-gradient(80% 80% at 50% 40%, rgba(16, 19, 24, 0.72), rgba(8, 9, 12, 0.86));
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  animation: fbLbFade 0.3s ease;
}
.fb-wiz__modal-dialog {
  position: relative; z-index: 1; width: min(680px, 100%); max-height: 88vh; overflow: auto;
  background: linear-gradient(180deg, #fffafb, #fdf4f6);
  border: 1px solid var(--wiz-line); border-radius: 20px;
  padding: 34px 34px 30px;
  box-shadow: 0 50px 100px -40px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(219, 227, 234, 0.4) inset;
  animation: fbLbZoom 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.fb-wiz__modal-eyebrow { display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: 0.22em; text-transform: uppercase; color: var(--wiz-accent-2); margin-bottom: 12px; }
.fb-wiz__modal-title { font-family: "Playfair Display", Georgia, serif; font-weight: 600; font-size: clamp(21px, 2.6vw, 28px); line-height: 1.25; letter-spacing: -0.01em; color: var(--wiz-ink); margin: 0 0 16px; }
.fb-wiz__modal-dialog p { margin: 0 0 14px; font-size: 14.5px; line-height: 1.75; color: var(--wiz-ink-2); }
.fb-wiz__modal-small { font-size: 11.5px !important; color: var(--wiz-soft) !important; line-height: 1.6 !important; }
.fb-wiz__modal-close {
  position: absolute; top: 16px; right: 16px; width: 42px; height: 42px; border-radius: 50%;
  border: 1px solid var(--wiz-line); background: #ffffff; color: var(--wiz-ink);
  font-size: 24px; line-height: 1; cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.fb-wiz__modal-close:hover { background: var(--wiz-accent); color: #ffffff; transform: rotate(90deg); }
html.fb-wiz-modal-open { overflow: hidden; }
@media (max-width: 560px) { .fb-wiz__modal-dialog { padding: 26px 20px 22px; } }

/* Preis des konfigurierten Fensters im Abschluss */
.fb-wiz__real-price {
  margin-top: 18px; padding: 18px 22px; border-radius: 16px;
  display: flex; flex-direction: column; gap: 2px;
  background: linear-gradient(135deg, #fffafb, #f7e9ec);
  border: 1px solid var(--wiz-line);
}
.fb-wiz__real-price-label { font-size: 11.5px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wiz-muted); }
.fb-wiz__real-price strong { font-family: "Playfair Display", Georgia, serif; font-weight: 600; font-size: 30px; color: var(--wiz-accent-2); letter-spacing: -0.01em; font-variant-numeric: tabular-nums; }
.fb-wiz__real-price small { font-size: 11.5px; color: var(--wiz-soft); }

/* =====================================================================
   "Ihre Auswahl": kein graues Vorschau-Feld mehr
   ===================================================================== */
.fb-wiz__preview {
  background: linear-gradient(135deg, #f7e9ec 0%, #fffafb 100%);
  box-shadow: 0 30px 60px -34px rgba(16, 19, 24, 0.35), 0 0 0 1px rgba(184, 0, 26, 0.12) inset;
}
.fb-wiz__preview-empty {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
  height: 100%; padding: 24px; text-align: center; font-size: 13px; font-weight: 600; color: var(--wiz-muted);
}
.fb-wiz__preview-empty::before {
  content: "";
  width: 58px; height: 58px; border-radius: 16px;
  background: linear-gradient(135deg, #b8324a, #8f0014);
  opacity: 0.16;
  box-shadow: 0 12px 26px -14px rgba(143, 0, 20, 0.6);
}
.fb-wiz__thumb { background: #f7e9ec; border-color: var(--wiz-line); }
.fb-wiz__card-noimg { background: linear-gradient(135deg, #f7e9ec, #fffafb); }

/* "Ihre Auswahl": Kopfbereich aufgeräumt & im Theme */
.fb-wiz__sumhead { margin: 0 0 10px; align-items: center; }
.fb-wiz__sumhead h3 { font-family: "Playfair Display", Georgia, serif; font-weight: 600; font-size: 19px; }
.fb-wiz__summeta {
  margin: 0 0 14px;
  font-size: 10.5px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--wiz-muted);
}
.fb-wiz__summeta.is-complete { color: var(--wiz-accent-2); }
.fb-wiz__reset {
  border: 1px solid var(--wiz-line);
  background: linear-gradient(180deg, #ffffff, #f7e9ec);
  color: var(--wiz-ink-2);
  font-size: 11.5px; font-weight: 700; padding: 7px 14px; border-radius: 999px; cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}
.fb-wiz__reset:hover { border-color: var(--wiz-accent); color: var(--wiz-accent-2); box-shadow: 0 8px 18px -12px rgba(143, 0, 20, 0.6); }

/* "Mehr erfahren" (Förderung): klar statt verschwommen */
.fb-wiz__modal-overlay {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  background: rgba(18, 12, 14, 0.78) !important;
}
.fb-wiz__modal-dialog {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  background: #fffdfb !important;
  filter: none !important;
}
.fb-wiz__modal-dialog p { color: #23272f !important; }
.fb-wiz__promo-link { font-weight: 800; font-size: 13.5px; }
