/*
 * Älterer Live-Workshop von Leo (leofitnesscoaching.com/live-workshop, Juni 2026), nachgebaut aus
 * den acht Onepage-Sektionen der Seite (Stand 14.10.2026). Die Stile der Sektionen sind übernommen,
 * nur die Klassennamen lesbar; was bei Onepage als Inline-Stil am Element stand (Farben, Schrift),
 * steht hier in der Regel. Werte unverändert.
 *
 * Wo eine Sektion keine Schrift setzt, gilt wie bei Onepage die Systemschrift der Seite (basis.css),
 * und wo sie keine Zeilenhöhe setzt, die 24 px der Seite (etwa an den Überschriften im FAQ-Block).
 */

/* ---------- Hero ---------- */
.lwj-held { width: 100%; background: #ffffff; font-family: var(--font-kit-text-font, 'Helvetica Neue', Helvetica, Arial, sans-serif); }
.lwj-held__bildrahmen { position: relative; width: 100%; line-height: 0; overflow: hidden; }
.lwj-held__bild { width: 120%; height: auto; display: block; margin-left: -10%; -webkit-mask-image: linear-gradient(to bottom, black 70%, transparent 100%); mask-image: linear-gradient(to bottom, black 70%, transparent 100%); }
.lwj-held__pill-rahmen { position: absolute; left: 50%; bottom: 3%; transform: translateX(-50%); line-height: normal; width: max-content; z-index: 2; }
.lwj-held__pill { display: inline-flex; align-items: center; gap: 6px; background: #ffffff; font-family: 'Plus Jakarta Sans', var(--font-kit-text-font, 'Helvetica Neue', sans-serif); font-weight: 800; font-size: 11px; letter-spacing: 0.6px; text-decoration: none; padding: 5px 14px; border-radius: 999px; white-space: nowrap; animation: lwj-glanz 1.8s ease-in-out infinite; cursor: default; }
.lwj-held__punkt { display: inline-block; width: 6px; height: 6px; border-radius: 50%; animation: lwj-punkt 1.8s ease-in-out infinite; flex-shrink: 0; }
.lwj-held__inhalt { max-width: 720px; margin: 0 auto; padding: 36px 24px 64px; text-align: center; }
.lwj-held__headline { font-size: clamp(26px, 4.5vw, 48px); font-weight: 800; line-height: 1.12; letter-spacing: -0.02em; color: #0f1520; margin: 0 0 18px; font-family: var(--font-kit-header-font, 'Helvetica Neue', sans-serif); }
.lwj-held__sub { font-size: clamp(15px, 1.8vw, 18px); line-height: 1.65; color: #0f1520; opacity: 0.65; max-width: 580px; margin: 0 auto 28px; font-family: inherit; }
.lwj-held__datum { display: inline-block; font-size: 14px; font-weight: 600; color: #0f1520; padding: 10px 22px; border-radius: 8px; background: #f5f5f5; margin-bottom: 32px; font-family: inherit; }
.lwj-held__countdown { display: flex; justify-content: center; gap: 10px; margin-bottom: 36px; flex-wrap: wrap; }
.lwj-held__einheit { display: flex; flex-direction: column; align-items: center; min-width: 68px; }
.lwj-held__zahl { font-size: clamp(28px, 4vw, 42px); font-weight: 800; line-height: 1; color: #0f1520; padding: 14px 16px; border-radius: 10px; background: #f5f5f5; min-width: 68px; text-align: center; font-family: var(--font-kit-header-font, 'Helvetica Neue', sans-serif); transition: transform 0.15s ease; }
.lwj-held__zahl.lwj-tick { transform: scale(1.07); }
.lwj-held__label { font-size: 10px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; margin-top: 7px; color: #0f1520; opacity: 0.4; font-family: inherit; }
.lwj-held__cta { display: inline-block; font-size: 16px; font-weight: 700; padding: 18px 48px; border-radius: 10px; text-decoration: none; color: #ffffff; transition: transform 0.15s ease, box-shadow 0.15s ease; font-family: inherit; cursor: pointer; border: none; }
.lwj-held__cta:hover { transform: translateY(-2px); }
@keyframes lwj-glanz {
  0%, 100% { box-shadow: 0 0 5px rgba(214,40,40,0.5), 0 0 10px rgba(214,40,40,0.3); border: 1.5px solid rgba(214,40,40,1); }
  50% { box-shadow: 0 0 10px rgba(214,40,40,0.9), 0 0 22px rgba(214,40,40,0.6); border: 1.5px solid rgba(214,40,40,1); }
}
@keyframes lwj-punkt { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.55; transform: scale(0.85); } }
@media (max-width: 600px) {
  .lwj-held__inhalt { padding: 28px 20px 48px; }
  .lwj-held__einheit { min-width: 56px; }
  .lwj-held__zahl { padding: 11px 12px; min-width: 56px; }
  .lwj-held__cta { width: 100%; text-align: center; }
}

/* ---------- Kennst du das? ---------- */
.lwj-schmerz { width: 100%; padding: 90px 24px; box-sizing: border-box; background: #ffffff; }
.lwj-schmerz__innen { max-width: 800px; margin: 0 auto; }
.lwj-schmerz__eyebrow { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; margin-bottom: 16px; color: #d12530; font-family: var(--font-kit-text-font, inherit); }
.lwj-schmerz__headline { font-size: clamp(24px, 4vw, 40px); font-weight: 800; line-height: 1.15; letter-spacing: -0.02em; margin: 0 0 16px; color: #0f1520; font-family: var(--font-kit-header-font, inherit); }
.lwj-schmerz__sub { font-size: clamp(15px, 1.8vw, 18px); line-height: 1.65; opacity: 0.65; max-width: 600px; margin: 0 0 48px; color: #0f1520; font-family: var(--font-kit-text-font, inherit); }
.lwj-schmerz__raster { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 48px; }
.lwj-schmerz__punkt { display: flex; align-items: flex-start; gap: 14px; padding: 20px 22px; border-radius: 12px; border: 1px solid #d1253020; background: #d1253006; transition: transform 0.15s ease; }
.lwj-schmerz__punkt:hover { transform: translateY(-2px); }
.lwj-schmerz__symbol { font-size: 20px; flex-shrink: 0; margin-top: 1px; }
.lwj-schmerz__text { font-size: 15px; font-weight: 500; line-height: 1.5; color: #0f1520; font-family: var(--font-kit-text-font, inherit); }
.lwj-schmerz__cta { display: inline-block; font-size: 15px; font-weight: 700; padding: 16px 36px; border-radius: 10px; text-decoration: none; transition: transform 0.15s ease, box-shadow 0.15s ease; background: #d12530; color: #ffffff; box-shadow: 0 6px 24px #d1253040; font-family: var(--font-kit-text-font, inherit); }
.lwj-schmerz__cta:hover { transform: translateY(-2px); }
@media (max-width: 600px) {
  .lwj-schmerz__raster { grid-template-columns: 1fr; }
  .lwj-schmerz { padding: 60px 20px; }
}

/* ---------- Was du heute lernst ---------- */
.lwj-lernen { width: 100%; padding: 90px 24px; box-sizing: border-box; background: #0f1520; }
.lwj-lernen__innen { max-width: 900px; margin: 0 auto; }
.lwj-lernen__eyebrow { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; margin-bottom: 16px; color: #d12530; font-family: var(--font-kit-text-font, inherit); }
.lwj-lernen__headline { font-size: clamp(22px, 3.5vw, 38px); font-weight: 800; line-height: 1.18; letter-spacing: -0.02em; margin: 0 0 56px; max-width: 680px; color: #ffffff; font-family: var(--font-kit-header-font, inherit); }
.lwj-lernen__saeulen { display: flex; flex-direction: column; gap: 2px; }
.lwj-lernen__saeule { display: grid; grid-template-columns: 80px 1fr; gap: 32px; padding: 36px 0; border-bottom: 1px solid #ffffff12; align-items: start; }
.lwj-lernen__saeule:first-child { border-top: 1px solid #ffffff12; }
.lwj-lernen__nummer { font-size: 48px; font-weight: 800; line-height: 1; letter-spacing: -0.04em; opacity: 0.12; color: #d12530; font-family: var(--font-kit-header-font, inherit); }
.lwj-lernen__titel { font-size: clamp(17px, 2vw, 22px); font-weight: 700; line-height: 1.3; margin: 0 0 12px; color: #ffffff; font-family: var(--font-kit-header-font, inherit); }
.lwj-lernen__text { font-size: 15px; line-height: 1.7; opacity: 0.7; margin: 0; color: #ffffff; font-family: var(--font-kit-text-font, inherit); }
@media (max-width: 600px) {
  .lwj-lernen { padding: 60px 20px; }
  .lwj-lernen__saeule { grid-template-columns: 52px 1fr; gap: 20px; }
  .lwj-lernen__nummer { font-size: 36px; }
}

/* ---------- Leos Reise ---------- */
.lwj-story { width: 100%; padding: 90px 24px; box-sizing: border-box; background: #0f1520; }
.lwj-story__innen { max-width: 960px; margin: 0 auto; display: grid; grid-template-columns: 1fr 420px; gap: 64px; align-items: center; }
.lwj-story__eyebrow { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; margin-bottom: 16px; color: #d12530; font-family: var(--font-kit-text-font, inherit); }
.lwj-story__headline { font-size: clamp(22px, 3.2vw, 36px); font-weight: 800; line-height: 1.2; letter-spacing: -0.02em; margin: 0 0 24px; color: #ffffff; font-family: var(--font-kit-header-font, inherit); }
.lwj-story__text { font-size: 15px; line-height: 1.8; opacity: 0.75; white-space: pre-line; margin: 0; color: #ffffff; font-family: var(--font-kit-text-font, inherit); }
.lwj-story__fotos { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.lwj-story__foto-rahmen { position: relative; }
/* Ohne Breite und Höhe am <img>: die Höhe kommt aus dem Seitenverhältnis 3:4, wie bei Onepage. */
.lwj-story__foto { width: 100%; aspect-ratio: 3/4; object-fit: cover; object-position: top; border-radius: 12px; display: block; }
.lwj-story__label { position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); font-size: 11px; font-weight: 700; letter-spacing: 0.5px; padding: 4px 10px; border-radius: 999px; white-space: nowrap; color: #ffffff; font-family: var(--font-kit-text-font, inherit); }
.lwj-story__label--vorher { background: #00000080; }
.lwj-story__label--heute { background: #d12530; }
@media (max-width: 768px) {
  .lwj-story__innen { grid-template-columns: 1fr; gap: 40px; }
  .lwj-story__fotos { max-width: 320px; margin: 0 auto; }
  .lwj-story { padding: 60px 20px; }
}

/* ---------- Kundenfeedbacks ---------- */
.lwj-feedback { width: 100%; padding: 90px 24px; box-sizing: border-box; background: #ffffff; }
.lwj-feedback__innen { max-width: 960px; margin: 0 auto; }
.lwj-feedback__kopf { margin-bottom: 48px; }
.lwj-feedback__eyebrow { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; margin-bottom: 12px; color: #d12530; font-family: var(--font-kit-text-font, inherit); }
.lwj-feedback__headline { font-size: clamp(22px, 3.5vw, 38px); font-weight: 800; line-height: 1.15; letter-spacing: -0.02em; margin: 0; color: #0f1520; font-family: var(--font-kit-header-font, inherit); }
.lwj-feedback__raster { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 48px; }
.lwj-feedback__eintrag { border-radius: 12px; overflow: hidden; background: #f5f5f5; display: flex; align-items: center; justify-content: center; font-size: 28px; border: 2px dashed #e0e0e0; }
.lwj-feedback__bild { width: 100%; height: auto; display: block; border-radius: 10px; }
.lwj-feedback__cta-reihe { text-align: center; }
.lwj-feedback__cta { display: inline-block; font-size: 15px; font-weight: 700; padding: 16px 40px; border-radius: 10px; text-decoration: none; color: #ffffff; transition: transform 0.15s ease, box-shadow 0.15s ease; background: #d12530; box-shadow: 0 6px 24px #d1253040; font-family: var(--font-kit-text-font, inherit); }
.lwj-feedback__cta:hover { transform: translateY(-2px); }
@media (max-width: 768px) {
  .lwj-feedback__raster { grid-template-columns: repeat(2, 1fr); }
  .lwj-feedback { padding: 60px 20px; }
}
@media (max-width: 480px) { .lwj-feedback__raster { grid-template-columns: 1fr 1fr; gap: 8px; } }

/* ---------- Dein Host ---------- */
.lwj-host { width: 100%; padding: 90px 24px; box-sizing: border-box; background: #ffffff; }
.lwj-host__innen { max-width: 960px; margin: 0 auto; display: grid; grid-template-columns: 380px 1fr; gap: 64px; align-items: center; }
.lwj-host__foto-rahmen { position: relative; }
.lwj-host__foto { width: 100%; aspect-ratio: 3/4; object-fit: cover; object-position: top; border-radius: 16px; display: block; }
.lwj-host__eyebrow { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; margin-bottom: 12px; color: #d12530; font-family: var(--font-kit-text-font, inherit); }
.lwj-host__name { font-size: clamp(32px, 4vw, 52px); font-weight: 800; line-height: 1; letter-spacing: -0.03em; margin: 0 0 8px; color: #0f1520; font-family: var(--font-kit-header-font, inherit); }
.lwj-host__titel { font-size: 16px; font-weight: 500; opacity: 0.55; margin: 0 0 28px; color: #0f1520; font-family: var(--font-kit-text-font, inherit); }
.lwj-host__bio { font-size: 15px; line-height: 1.75; opacity: 0.75; white-space: pre-line; margin: 0 0 36px; color: #0f1520; font-family: var(--font-kit-text-font, inherit); }
@media (max-width: 768px) {
  .lwj-host__innen { grid-template-columns: 1fr; gap: 40px; }
  .lwj-host__foto-rahmen { max-width: 280px; margin: 0 auto; }
  .lwj-host { padding: 60px 20px; }
}

/* ---------- Der Workshop ist für dich, wenn du ---------- */
.lwj-passt { width: 100%; padding: 90px 24px; box-sizing: border-box; background: #0f1520; }
.lwj-passt__innen { max-width: 680px; margin: 0 auto; text-align: center; }
.lwj-passt__headline { font-size: clamp(22px, 3.5vw, 36px); font-weight: 800; line-height: 1.2; letter-spacing: -0.02em; margin: 0 0 40px; color: #ffffff; font-family: var(--font-kit-header-font, inherit); }
.lwj-passt__liste { list-style: none; padding: 0; margin: 0 0 48px; display: flex; flex-direction: column; gap: 12px; text-align: left; }
.lwj-passt__punkt { display: flex; align-items: flex-start; gap: 14px; padding: 18px 22px; border-radius: 12px; border: 1px solid #ffffff14; background: #ffffff08; }
.lwj-passt__haken { width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 12px; font-weight: 700; margin-top: 1px; background: #d12530; color: #ffffff; }
.lwj-passt__text { font-size: 15px; font-weight: 500; line-height: 1.5; color: #ffffff; font-family: var(--font-kit-text-font, inherit); }
.lwj-passt__cta { display: inline-block; font-size: 16px; font-weight: 700; padding: 18px 48px; border-radius: 10px; text-decoration: none; transition: transform 0.15s ease, box-shadow 0.15s ease; margin-bottom: 16px; background: #d12530; color: #ffffff; box-shadow: 0 8px 32px #d1253050; font-family: var(--font-kit-text-font, inherit); }
.lwj-passt__cta:hover { transform: translateY(-2px); }
.lwj-passt__hinweis { font-size: 13px; opacity: 0.45; color: #ffffff; font-family: var(--font-kit-text-font, inherit); }
@media (max-width: 600px) {
  .lwj-passt { padding: 60px 20px; }
  .lwj-passt__cta { width: 100%; text-align: center; }
}

/* ---------- Häufige Fragen und Schluss ---------- */
.lwj-fragen { width: 100%; padding: 90px 24px 80px; box-sizing: border-box; background: #ffffff; }
.lwj-fragen__innen { max-width: 720px; margin: 0 auto; }
.lwj-fragen__headline { font-size: clamp(22px, 3vw, 34px); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 40px; color: #0f1520; font-family: var(--font-kit-header-font, inherit); }
.lwj-fragen__liste { list-style: none; padding: 0; margin: 0 0 80px; display: flex; flex-direction: column; }
.lwj-fragen__eintrag { border-bottom: 1px solid #0f152018; overflow: hidden; }
.lwj-fragen__eintrag:first-child { border-top: 1px solid #0f152018; }
.lwj-fragen__knopf { width: 100%; background: none; border: none; padding: 20px 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; cursor: pointer; text-align: left; font-family: inherit; }
.lwj-fragen__frage { font-size: 16px; font-weight: 600; line-height: 1.4; color: #0f1520; font-family: var(--font-kit-text-font, inherit); }
.lwj-fragen__zeichen { font-size: 20px; flex-shrink: 0; transition: transform 0.2s ease; font-family: inherit; color: #d12530; }
.lwj-fragen__knopf[aria-expanded="true"] .lwj-fragen__zeichen { transform: rotate(45deg); }
/* Eine Frage offen (cm.js, data-akkordeon), die Antwort direkt nach dem Knopf. */
.lwj-fragen__antwort { max-height: 0; overflow: hidden; transition: max-height 0.3s ease, padding 0.2s ease; }
.lwj-fragen__knopf[aria-expanded="true"] + .lwj-fragen__antwort { max-height: 300px; }
.lwj-fragen__antworttext { padding: 0 0 20px; font-size: 15px; line-height: 1.7; color: #0f1520; opacity: 0.65; font-family: var(--font-kit-text-font, inherit); }
.lwj-schluss { text-align: center; padding: 56px 40px; border-radius: 20px; background: #0f1520; }
.lwj-schluss__headline { font-size: clamp(22px, 3.5vw, 36px); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 12px; color: #ffffff; font-family: var(--font-kit-header-font, inherit); }
.lwj-schluss__sub { font-size: 16px; opacity: 0.7; margin: 0 0 32px; color: #ffffff; font-family: var(--font-kit-text-font, inherit); }
.lwj-schluss__cta { display: inline-block; font-size: 16px; font-weight: 700; padding: 18px 48px; border-radius: 10px; text-decoration: none; transition: transform 0.15s ease, box-shadow 0.15s ease; margin-bottom: 16px; background: #d12530; color: #ffffff; box-shadow: 0 8px 32px #d1253050; font-family: var(--font-kit-text-font, inherit); }
.lwj-schluss__cta:hover { transform: translateY(-2px); }
.lwj-schluss__hinweis { font-size: 13px; opacity: 0.45; color: #ffffff; font-family: var(--font-kit-text-font, inherit); }
@media (max-width: 600px) {
  .lwj-fragen { padding: 60px 20px; }
  .lwj-schluss { padding: 40px 24px; }
  .lwj-schluss__cta { width: 100%; text-align: center; }
}
