/* =================================================================
   CheerNutritions – LIGHT THEME  (style-light.css)
   Finaler Stil: Warm Soft · schwarzer Ticker & Footer
   Lime  = FILL accent (buttons, dots, active fills)
   Violet(--ink-accent) = TEXT/ICON accent (legible on white)
   ================================================================= */

/* ---------- 1. Variablen ---------- */
:root{
  --accent:#c7f03a;            /* Lime – Füllakzent */
  --accent-ink:#14141a;        /* Text auf Lime */
  --accent-2:#8b5cf6;          /* Violett */
  --berry:#ff3b6b;
  --berry-ink:#e11d54;         /* Berry als Text (Kontrast auf Weiß) */
  --ink-accent:#6a34c9;        /* Violett-Tinte für Akzent-TEXT/Icons */

  --bg:#f5f4f0;
  --bg-2:#f1efe9;
  --card:#ffffff;
  --card-2:#ffffff;
  --section-alt:#efece6;
  --tile-top:#ffffff;
  --tile-bot:#f1ede6;

  --line:rgba(46,38,24,0.10);
  --line-strong:rgba(46,38,24,0.17);
  --text:#211d17;
  --text-soft:#4d483f;
  --text-mute:#6f695d;
  --text-faint:#938c7e;

  --glow-lime:rgba(199,240,58,0.20);
  --glow-violet:rgba(139,92,246,0.14);
  --glow-berry:rgba(255,59,107,0.10);

  --shadow-sm:0 1px 2px rgba(60,50,35,0.06);
  --shadow-md:0 14px 36px rgba(60,50,35,0.11);
  --shadow-lg:0 28px 66px rgba(60,50,35,0.15);

  --ticker-bg:#0b0b0e;
  --ticker-tx:#9a9aa0;
  --header-bg:rgba(245,244,240,0.85);
  --footer-bg:#0b0b0e;

  --radius:18px;
  --radius-lg:26px;
  --maxw:1360px;
  --maxw-header:1830px;
  --space-section-lg:clamp(50px,6vw,84px);
  --space-section-md:clamp(40px,5vw,70px);
  --space-section-sm:clamp(28px,4vw,56px);
  --font-display:'Archivo',system-ui,sans-serif;
  --font-body:'Hanken Grotesk',system-ui,sans-serif;
  --font-mono:'Space Mono',ui-monospace,monospace;
  --accent-glow:rgba(199,240,58,0.35);
  --accent-glow-strong:rgba(199,240,58,0.45);
  --accent-dot-glow:rgba(199,240,58,0.75);
}

/* ---------- 2. Reset ---------- */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg);
  color:var(--text);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  transition:background .35s ease,color .35s ease;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}
input,textarea,select{font-family:inherit}
::selection{background:var(--accent);color:var(--accent-ink)}
:focus-visible{outline:2px solid var(--ink-accent);outline-offset:3px}

/* ---------- 3. Layout-Helfer ---------- */
.container{max-width:var(--maxw);margin:0 auto;padding-left:24px;padding-right:24px;width:100%}
.accent{color:var(--ink-accent)}

.eyebrow{
  font-family:var(--font-mono);font-size:12px;letter-spacing:0.22em;
  text-transform:uppercase;color:var(--text-mute);margin-bottom:14px;
}
.eyebrow--accent{color:var(--ink-accent)}
.eyebrow--berry{color:var(--berry-ink)}
.eyebrow--muted{font-size:11px;letter-spacing:0.18em;color:var(--text-faint);margin-bottom:18px}

.section-title{
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(28px,4vw,48px);letter-spacing:-0.03em;
  color:var(--text);line-height:1.02;
}
.section-title--center{text-align:center;margin-left:auto;margin-right:auto}
.section-lead{font-size:15.5px;color:var(--text-mute);line-height:1.6;margin-top:14px}

/* ---------- 4. Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;justify-content:center;
  border:none;border-radius:999px;padding:14px 26px;
  font-weight:800;font-size:14.5px;letter-spacing:0.01em;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.btn--accent{background:var(--accent);color:var(--accent-ink);box-shadow:0 8px 20px var(--accent-glow)}
.btn--accent:hover{transform:translateY(-2px);box-shadow:0 12px 26px var(--accent-glow-strong)}
.btn--ghost{background:transparent;color:var(--text);border:1px solid var(--line-strong)}
.btn--ghost:hover{border-color:var(--text);background:rgba(18,18,26,0.03)}
.btn-row{display:flex;flex-wrap:wrap;gap:13px}

.btn-logo{
  display:inline-flex;align-items:center;border-radius:14px;padding:8px 12px;
  border:1px solid var(--line);background:var(--card-2);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.btn-logo img{height:38px;width:auto}
.btn-logo:hover{transform:translateY(-2px) scale(1.02);border-color:rgba(139,92,246,0.45);box-shadow:var(--shadow-sm)}

.link-arrow{font-size:14px;font-weight:700;color:var(--text-soft);display:inline-flex;align-items:center;gap:9px;transition:color .2s}
.link-arrow span{color:var(--ink-accent)}
.link-arrow:hover{color:var(--ink-accent)}
.link-inline{font-size:13px;font-weight:700;color:var(--text);display:inline-flex;align-items:center;gap:8px}
.link-inline span{color:var(--ink-accent)}

.grad-text{
  background:linear-gradient(100deg,#7c3aed,var(--berry));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

/* ---------- 5. Ticker ---------- */
.ticker{background:var(--ticker-bg);border-bottom:1px solid var(--line);overflow:hidden;padding:13px 0;transition:background .35s ease}
.ticker__track{display:flex;width:max-content;animation:tickerScroll 38s linear infinite}
.ticker__group{display:flex;align-items:center;flex-shrink:0}
.ticker__item{
  font-family:var(--font-mono);font-size:11px;letter-spacing:0.22em;
  color:var(--ticker-tx);text-transform:uppercase;white-space:nowrap;padding:0 26px;
}
.ticker__dot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}
.ticker__dot{box-shadow:0 0 8px var(--accent-dot-glow)}

/* ---------- 6. Header ---------- */
.header{
  position:sticky;top:0;z-index:50;
  background:var(--header-bg);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
  transition:background .35s ease,border-color .35s ease;
}
.header__inner{
  max-width:var(--maxw-header);margin:0 auto;padding:0 34px;height:88px;
  display:flex;align-items:center;justify-content:space-between;gap:32px;
}
.brand{flex-shrink:0;display:flex;align-items:center}
.brand__logo{height:68px;width:auto}
.nav{display:flex;align-items:center;gap:24px;flex-wrap:nowrap;justify-content:center;flex:1}
.nav__link{font-size:17px;font-weight:600;color:var(--text-soft);white-space:nowrap;transition:color .15s}
.nav__link:hover{color:var(--text)}
.nav__link--active{font-weight:700;color:var(--ink-accent)}
.header__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.btn-cart{
  position:relative;display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;background:transparent;color:var(--text);
  border:none;border-radius:14px;padding:0;cursor:pointer;
  transition:transform .2s,background .2s;
}
.btn-cart:hover{transform:translateY(-1px);background:rgba(18,18,26,0.06)}
.btn-cart__count{
  position:absolute;top:-2px;right:-4px;
  background:var(--accent);color:var(--accent-ink);border:2px solid var(--bg);border-radius:999px;
  min-width:19px;height:19px;padding:0 4px;
  display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:800;
}
.lang-switch{display:inline-flex;align-items:center;border:1px solid var(--line-strong);border-radius:14px;overflow:hidden;height:42px;flex-shrink:0}
.lang-switch__btn{min-width:34px;height:100%;padding:0 9px;background:transparent;border:0;font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:0.04em;color:var(--text-soft);cursor:pointer;transition:background .18s,color .18s}
.lang-switch__btn.is-active{background:var(--accent);color:var(--accent-ink)}
.lang-switch__btn:not(.is-active):hover{background:rgba(18,18,26,0.06)}
html.cn-translating body{visibility:hidden}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:1px solid var(--line-strong);border-radius:10px;padding:9px 10px}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--text);border-radius:2px;transition:transform .25s,opacity .25s}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- 7. Hero (Split: Text + schwarzes Produkt auf Hell) ---------- */
.hero{position:relative;overflow:hidden;background:var(--bg)}
.hero--image{background:#fff}
.hero__media{position:relative;display:block;width:100%;height:auto;margin:calc(-1*clamp(80px,10.5vw,160px)) 0 0 auto;z-index:0;
  mask-image:linear-gradient(90deg,transparent 0,#000 14%),linear-gradient(180deg,transparent 0,#000 28%);
  mask-composite:intersect;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14%),linear-gradient(180deg,transparent 0,#000 28%);
  -webkit-mask-composite:source-in}
.hero--image::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,0.94) 0%,rgba(255,255,255,0.9) 26%,rgba(255,255,255,0) 56%)}
.hero__inner{
  position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);
  z-index:2;width:100%;max-width:var(--maxw-header);
  padding:clamp(30px,7vh,120px) 24px 0;display:flex;align-items:flex-start;
}
.hero__content{max-width:720px}
.hero__title{font-family:var(--font-display);font-weight:700;font-size:clamp(42px,6.4vw,84px);line-height:0.96;letter-spacing:-0.035em;color:var(--text);margin-bottom:18px}
.hero__kicker{font-family:var(--font-mono);font-size:13px;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-mute);margin-bottom:24px}
.hero__lead{font-size:17px;line-height:1.65;color:var(--text-soft);max-width:480px;margin-bottom:36px}
.hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:52px}
.hero .btn{padding:16px 30px;font-size:15px}

.hero__edge{height:1px;background:linear-gradient(90deg,transparent,var(--accent),var(--berry),transparent);opacity:.55;position:absolute;left:0;right:0;bottom:0;z-index:3}

.eyebrow-pill{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line-strong);border-radius:999px;padding:8px 16px;margin-bottom:30px;background:var(--card-2)}
.eyebrow-pill__dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent-dot-glow)}
.eyebrow-pill__text{font-family:var(--font-mono);font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-mute)}

.hero__badges{display:flex;flex-wrap:nowrap;align-items:center;margin-top:4px}
.hbadge{display:flex;align-items:center;gap:12px;padding:0 18px;flex-shrink:0}
.hbadge:first-child{padding-left:0}
.hbadge svg{flex-shrink:0}
.hbadge__label{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--text);line-height:1.2}
.hbadge__sep{width:1px;height:42px;background:var(--line-strong)}

/* ---------- 8. Fundament / Buch ---------- */
.fundament{
  position:relative;overflow:hidden;border-bottom:1px solid var(--line);
  background:
    radial-gradient(70% 90% at 82% 8%,var(--glow-violet),transparent 60%),
    radial-gradient(60% 80% at 10% 92%,var(--glow-lime),transparent 60%),
    var(--bg);
}
/* Foto-Hintergrund — rechts farbig, nach links weiß auslaufend */
.fundament::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,1) 0%,rgba(255,255,255,0.98) 30%,rgba(255,255,255,0.88) 52%,rgba(255,255,255,0.62) 72%,rgba(255,255,255,0.44) 88%,rgba(255,255,255,0.48) 100%),
    linear-gradient(180deg,rgba(255,255,255,0.55) 0%,rgba(255,255,255,0) 22%,rgba(255,255,255,0) 78%,rgba(255,255,255,0.6) 100%),
    url("../images/fundament-reading.webp") calc(100% + 90px) center/auto 102% no-repeat}
[data-style="mono"] .fundament::before{filter:grayscale(1)}
@media (max-width:880px){
  .fundament::before{background:
    linear-gradient(180deg,rgba(255,255,255,0.62) 0%,rgba(255,255,255,0.64) 36%,rgba(255,255,255,0.80) 48%,rgba(255,255,255,0.96) 58%,rgba(255,255,255,1) 66%),
    url("../images/fundament-reading-mobile.webp?v=book1") 30% top/118% auto no-repeat}
}
.fundament__grid{position:relative;z-index:1;padding:var(--space-section-lg) 24px;display:flex;flex-wrap:wrap;gap:clamp(30px,4vw,56px);align-items:center}
.fundament__cover{flex:0 0 auto;position:relative}
.fundament__cover-glow{position:absolute;inset:-14% -10%;background:radial-gradient(circle at 50% 46%,rgba(139,92,246,0.22),rgba(199,240,58,0.14) 46%,transparent 70%);filter:blur(22px)}

/* ---- Hyperreales 3D-Buch (Cover unverändert, nur perspektivisch) ---- */
.book3d{--bw:clamp(210px,22vw,280px);--bt:32px;position:relative;width:var(--bw);perspective:1300px}
.book3d__body{position:relative;width:100%;aspect-ratio:971/1500;transform-style:preserve-3d;
  transform:rotateX(-8deg) rotateY(27deg) rotateZ(-1.2deg);
  transition:transform .75s cubic-bezier(.23,.86,.3,1)}
.book3d:hover .book3d__body{transform:rotateX(0deg) rotateY(0deg) rotateZ(0deg)}
/* Frontcover — Original-Artwork, um halbe Buchdicke nach vorn */
.book3d__front{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transform:translateZ(calc(var(--bt) / 2));
  border-radius:2px 7px 7px 2px;backface-visibility:hidden}
.book3d__gloss{position:absolute;inset:0;border-radius:2px 7px 7px 2px;pointer-events:none;
  transform:translateZ(calc(var(--bt) / 2 + 0.5px));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.05),inset 0 0 34px rgba(0,0,0,0.16);
  background:
    linear-gradient(90deg,rgba(255,255,255,0.14) 0%,rgba(0,0,0,0.30) 2%,rgba(0,0,0,0.06) 4%,rgba(255,255,255,0.12) 6%,rgba(0,0,0,0.10) 8.5%,transparent 12%),
    linear-gradient(112deg,rgba(255,255,255,0.16) 0%,rgba(255,255,255,0.04) 18%,transparent 34%,transparent 78%,rgba(255,255,255,0.06) 100%)}
/* Buchrücken links — steht senkrecht zwischen Front- und Backcover */
.book3d__spine{position:absolute;left:0;top:0;width:var(--bt);height:100%;
  transform:translateX(calc(var(--bt) / -2)) rotateY(-90deg);
  background:
    linear-gradient(90deg,rgba(255,255,255,0.10) 0%,rgba(0,0,0,0.42) 10%,rgba(0,0,0,0.16) 30%,rgba(0,0,0,0.12) 68%,rgba(0,0,0,0.44) 90%,rgba(255,255,255,0.08) 100%),
    url("../images/book-fuel-your-performance.jpg?v=real") left center/auto 100% no-repeat #0b0b10}
/* Papierschnitt oben — sichtbar durch leichte Aufsicht */
.book3d__top{position:absolute;left:2px;right:3px;top:0;height:var(--bt);
  transform:translateY(calc(var(--bt) / -2)) rotateX(90deg);
  background:
    linear-gradient(180deg,#100d16 0,#100d16 2px,rgba(60,50,35,0.20) 2px,transparent 30%,transparent 72%,rgba(60,50,35,0.18) calc(100% - 2px),#141018 calc(100% - 2px)),
    repeating-linear-gradient(180deg,#f7f4eb 0 1.7px,#dcd5c5 1.7px 2.7px)}
/* Seitenblock rechts (Fore-Edge) — minimal eingesetzt wie beim Hardcover */
.book3d__pages{position:absolute;right:0;top:1%;width:calc(var(--bt) - 6px);height:98%;
  transform:translateX(calc((var(--bt) - 6px) / 2 - 2px)) rotateY(90deg);
  background:
    linear-gradient(180deg,rgba(60,50,35,0.22),transparent 12%,transparent 88%,rgba(60,50,35,0.24)),
    repeating-linear-gradient(90deg,#f7f4eb 0 1.7px,#dcd5c5 1.7px 2.7px)}
/* Backcover */
.book3d__back{position:absolute;inset:0;border-radius:7px 2px 2px 7px;
  transform:translateZ(calc(var(--bt) / -2));
  background:linear-gradient(105deg,#191423 0%,#100d16 60%,#171320 100%)}
.book3d__shadow{position:absolute;left:-10%;right:-14%;bottom:-24px;height:42px;
  background:radial-gradient(50% 50% at 44% 50%,rgba(18,18,26,0.35),rgba(18,18,26,0.14) 52%,transparent 75%);
  filter:blur(10px);transform:skewX(-14deg);
  transition:left .75s cubic-bezier(.23,.86,.3,1),right .75s cubic-bezier(.23,.86,.3,1),transform .75s cubic-bezier(.23,.86,.3,1)}
.book3d:hover .book3d__shadow{left:-4%;right:-4%;transform:skewX(0deg)}
.fundament__body{flex:1 1 380px;min-width:300px}
.fundament__text{font-size:16px;line-height:1.68;color:var(--text-soft);max-width:540px;margin:20px 0}
.fundament__text strong{color:var(--text)}
.flow{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:34px}
.flow__chip{font-family:var(--font-mono);font-size:11.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-soft);border:1px solid var(--line-strong);border-radius:999px;padding:8px 14px}
.flow__chip--accent{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);font-weight:700}
.flow__arrow{color:var(--text-faint)}
.flow__arrow--accent{color:var(--ink-accent)}

/* ---------- 9. C.H.E.E.R. Method ---------- */
.method{
  position:relative;border-top:1px solid var(--line);
  background:
    radial-gradient(70% 90% at 50% 0,var(--glow-lime),transparent 62%),
    radial-gradient(64% 76% at 88% 44%,var(--glow-berry),transparent 70%),
    var(--section-alt);
}
.method__inner{padding:var(--space-section-lg) 24px;text-align:center}
.method-logo{
  display:block;width:clamp(160px,13vw,225px);height:auto;margin:0 auto 16px;
}
.method .section-lead{max-width:560px;margin:14px auto 36px}
.method__tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:28px}
.method-tab{
  min-height:96px;cursor:pointer;padding:15px 16px;border-radius:18px;text-align:left;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;
  color:var(--text);background:var(--card);
  border:1px solid var(--line);box-shadow:var(--shadow-sm);
  transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;
}
.method-tab:hover{transform:translateY(-2px);border-color:var(--line-strong)}
.method-tab.is-active{
  background:linear-gradient(160deg,rgba(199,240,58,0.22),rgba(199,240,58,0.06) 60%,var(--card));
  border-color:rgba(159,196,40,0.9);
  box-shadow:0 16px 34px rgba(140,170,40,0.16);
}
.method-tab__word{
  display:flex;align-items:baseline;gap:1px;font-family:var(--font-display);
  font-size:clamp(20px,1.7vw,27px);font-weight:700;letter-spacing:-0.035em;line-height:1;
}
.method-tab__initial{font-size:clamp(34px,3vw,48px);line-height:.78;color:var(--text)}
.method-tab.is-active .method-tab__initial{color:var(--ink-accent)}
.method-tab__hint{
  font-family:var(--font-mono);font-size:10px;letter-spacing:0.16em;text-transform:uppercase;
  color:var(--text-faint);
}
.method-tab__book{display:none}
.method-tab:has(.method-tab__book){position:relative;overflow:hidden}
.method-tab > *{position:relative;z-index:1}
.method-tab:has(.method-tab__book):before{
  content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;
  background:conic-gradient(from var(--particle-angle,0deg),transparent 0 322deg,rgba(159,196,40,0.28) 334deg,rgba(159,196,40,1) 354deg,rgba(159,196,40,0.9) 358deg,transparent 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:methodParticleOrbit 3s linear infinite;
  pointer-events:none;
}
@property --particle-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes methodParticleOrbit{to{--particle-angle:360deg}}
.method__panel{
  position:relative;overflow:hidden;text-align:left;
  background:var(--card);
  border:1px solid var(--line);border-radius:24px;
  padding:clamp(28px,3.4vw,44px);
  display:grid;grid-template-columns:minmax(0,0.86fr) minmax(320px,1fr);gap:clamp(26px,4vw,54px);
  align-items:center;
  box-shadow:var(--shadow-lg);
}
.method__panel:before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(199,240,58,0.7),rgba(255,59,107,0.4),transparent);
}
.method__col{min-width:0;position:relative;z-index:2}
.method__kicker{
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--ink-accent);margin-bottom:16px;
}
.method__head{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.method__chip{
  width:46px;height:46px;border-radius:14px;background:var(--accent);color:var(--accent-ink);
  font-family:var(--font-display);font-size:22px;font-weight:700;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:0 12px 26px rgba(199,240,58,0.3);
}
.method__title{
  font-family:var(--font-display);font-size:clamp(32px,3.5vw,50px);
  line-height:.96;letter-spacing:-0.045em;color:var(--text);
}
.method__title-initial{color:var(--ink-accent)}
.method__desc{font-size:16px;line-height:1.68;color:var(--text-soft);margin-bottom:24px;max-width:520px}
.method__points{display:flex;flex-wrap:wrap;gap:10px}
.method__point{
  font-size:13px;font-weight:800;color:var(--text);
  background:rgba(18,18,26,0.04);border:1px solid var(--line);
  border-radius:999px;padding:10px 14px;
}
.method__book-note{border:1px solid rgba(159,196,40,0.4);background:rgba(199,240,58,0.1);border-radius:16px;padding:15px 16px;margin:20px 0}
.method__book-eyebrow{font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-accent);margin-bottom:8px}
.method__book-title{font-size:15.5px;font-weight:800;color:var(--text);line-height:1.4}
.method__visual{
  min-width:0;position:relative;aspect-ratio:16/10;border-radius:24px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--line);
  background:linear-gradient(160deg,#f4f4f7,#e9e9ee);
}
.method__image{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  filter:saturate(1.03);
}
.method__video{
  position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;background:#e9e9ee;
  filter:saturate(1.03);
}
.method__visual--video{
  width:100%;aspect-ratio:16/10;justify-self:stretch;align-self:center;background:#e9e9ee;
}
.method__video-cover{
  position:absolute;inset:0;z-index:5;width:100%;height:100%;box-sizing:border-box;
  object-fit:contain;padding:clamp(22px,4vw,40px);
  background:radial-gradient(70% 58% at 50% 45%,rgba(199,240,58,0.18),transparent 62%),#f2f2f5;
  opacity:0;pointer-events:none;transition:opacity .35s ease;
}
.method__visual--video.is-ended .method__video-cover{opacity:1}
.method__visual--image:before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,rgba(255,255,255,0.14),rgba(255,255,255,0) 42%,rgba(255,255,255,0.10));
}
.method__visual:after{
  content:"";position:absolute;inset:0;z-index:2;
  background:
    linear-gradient(rgba(18,18,26,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(18,18,26,0.05) 1px,transparent 1px);
  background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,black 22%,black 78%,transparent);
  opacity:.5;pointer-events:none;
}
.method__visual-word{
  position:absolute;left:22px;top:20px;z-index:3;
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-mute);
}
.method__visual-letter{position:absolute;right:-8px;bottom:-42px;font-family:var(--font-display);font-size:clamp(120px,17vw,210px);color:rgba(18,18,26,0.06);letter-spacing:-0.04em;line-height:1;z-index:1}
.method__visual--image .method__visual-letter{z-index:3;color:rgba(18,18,26,0.10)}
.method__visual-icon{position:relative;z-index:2;filter:drop-shadow(0 10px 26px rgba(18,18,26,0.2))}
.method__visual--book{background:
  radial-gradient(68% 90% at 50% 36%,rgba(139,92,246,0.16),transparent 60%),
  radial-gradient(60% 80% at 72% 82%,rgba(199,240,58,0.16),transparent 62%),
  linear-gradient(160deg,#f4f2f8,#eceaf1)}
.method__visual--book img{height:82%;width:auto;max-width:60%;border-radius:6px;box-shadow:var(--shadow-lg),0 0 0 1px var(--line)}
.method__visual-cap{position:absolute;bottom:16px;left:20px;font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-mute)}

/* ---------- 10. Trust Features ---------- */
.trust .trust__grid{padding-top:var(--space-section-md)}
.trust__grid,.funding__benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.feature{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;transition:border-color .2s,box-shadow .2s;box-shadow:var(--shadow-sm)}
.feature:hover{border-color:rgba(139,92,246,0.35);box-shadow:var(--shadow-md)}
.feature__icon{width:42px;height:42px;border-radius:12px;background:rgba(139,92,246,0.1);border:1px solid rgba(139,92,246,0.22);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.feature__icon--text{font-family:var(--font-display);font-size:18px;color:var(--ink-accent)}
.feature__title{font-size:17px;font-weight:800;color:var(--text);margin-bottom:9px}
.feature__desc{font-size:14px;line-height:1.55;color:var(--text-mute)}

/* ---------- 11. Hinweisbanner ---------- */
.koeln .container{padding-top:28px}
.koeln__banner{background:var(--card);border:1px solid rgba(255,59,107,0.25);border-radius:var(--radius);padding:18px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:16px;box-shadow:var(--shadow-sm)}
.koeln__tag{font-family:var(--font-mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--berry-ink);border:1px solid rgba(255,59,107,0.35);border-radius:999px;padding:7px 14px;white-space:nowrap}
.koeln__text{font-size:15px;color:var(--text-soft);line-height:1.5}
.koeln__text strong{color:var(--text)}

/* ---------- 12. Produkt-Showcase ---------- */
.product-showcase .container{padding-top:var(--space-section-lg);padding-bottom:var(--space-section-lg)}
.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:32px}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
@media (min-width:881px){
  .product-showcase .product-grid{grid-template-columns:repeat(4,minmax(240px,1fr));gap:18px}
}
.product-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  display:flex;flex-direction:column;color:inherit;box-shadow:var(--shadow-sm);
  transition:transform .22s ease,border-color .2s ease,box-shadow .22s ease;
}
.product-card:hover{border-color:var(--line-strong);transform:translateY(-5px) scale(1.02);box-shadow:var(--shadow-lg)}
.product-card__media{
  position:relative;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;
  overflow:hidden;padding:14px;border-bottom:1px solid var(--line);
}
.product-card__media img,.world-card__media img{position:relative;z-index:1;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
/* Helle Produktkacheln: sanfter Bodenschatten + Akzent-Halo oben, schwarze Produkte poppen */
.product-card__media--lime{background:
  radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),
  radial-gradient(120% 88% at 50% -8%,rgba(199,240,58,0.24),transparent 60%),
  linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.product-card__media--violet{background:
  radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),
  radial-gradient(120% 88% at 50% -8%,rgba(139,92,246,0.22),transparent 60%),
  linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.product-card__media--amber{background:
  radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),
  radial-gradient(120% 88% at 50% -8%,rgba(255,168,76,0.24),transparent 60%),
  linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.product-card__media--ice{background:
  radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),
  radial-gradient(120% 88% at 50% -8%,rgba(99,200,255,0.24),transparent 60%),
  linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.product-card__media--berry{background:
  radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),
  radial-gradient(120% 88% at 50% -8%,rgba(255,59,107,0.22),transparent 60%),
  linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.badge{
  position:absolute;top:14px;left:14px;z-index:2;
  font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--accent-ink);background:var(--badge-bg,var(--accent));border-radius:999px;padding:6px 11px;font-weight:700;
  box-shadow:var(--shadow-sm);
}
.product-card__body{padding:15px 16px 17px;display:flex;flex-direction:column;flex:1}
.product-card__flavor{font-family:var(--font-mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-accent);margin-bottom:8px}
.product-card__name{font-size:15.5px;font-weight:800;color:var(--text);margin-bottom:5px;line-height:1.2}
.product-card__size{font-size:12px;color:var(--text-faint);margin-bottom:14px}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.chip{font-size:11.5px;color:var(--text-soft);background:rgba(18,18,26,0.04);border:1px solid var(--line);border-radius:7px;padding:5px 9px}
.product-card__foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
/* Preise duerfen NIE innerhalb einer Zahl umbrechen (sonst rutscht auf
   schmalen Kacheln das "€" in die zweite Zeile, 07.08.2026). Bricht der
   Platz nicht, wandert der Streichpreis komplett unter den Preis. */
.price-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;row-gap:2px}
.price{font-family:var(--font-display);font-size:20px;color:var(--text);letter-spacing:-0.02em;white-space:nowrap}
.price-old{font-size:13px;color:var(--text-faint);text-decoration:line-through;white-space:nowrap}
.per-portion{font-size:12px;color:var(--text-faint);margin-top:3px}
.add-btn{position:relative;overflow:hidden;width:40px;height:40px;border-radius:11px;background:var(--accent);color:var(--accent-ink);font-size:18px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:0;transition:transform .2s,box-shadow .2s;box-shadow:0 6px 14px rgba(199,240,58,0.3)}
.product-card:hover .add-btn{transform:translateY(-2px)}
.add-btn.is-adding{animation:addBtnReact .52s cubic-bezier(.2,.9,.2,1);box-shadow:0 10px 24px rgba(199,240,58,0.5)}
.add-btn.is-adding:after{content:"";position:absolute;inset:-7px;border:2px solid rgba(199,240,58,0.62);border-radius:inherit;animation:addBtnRing .52s ease-out;pointer-events:none}
.btn-cart.is-bumped{animation:cartReact .42s cubic-bezier(.2,.9,.2,1)}
@keyframes addBtnReact{
  0%{transform:scale(1)}
  38%{transform:scale(.88) rotate(-8deg)}
  72%{transform:scale(1.16) rotate(4deg)}
  100%{transform:scale(1)}
}
@keyframes addBtnRing{
  0%{opacity:.8;transform:scale(.78)}
  100%{opacity:0;transform:scale(1.45)}
}
@keyframes cartReact{
  0%{transform:translateY(0) scale(1)}
  45%{transform:translateY(-3px) scale(1.13)}
  100%{transform:translateY(0) scale(1)}
}

/* ---------- 13. Produktwelten ---------- */
.worlds{background:radial-gradient(60% 60% at 50% 0%,var(--glow-violet),transparent 60%),var(--bg);border-top:1px solid var(--line)}
.worlds__inner{padding:var(--space-section-lg) 24px;text-align:center}
.worlds .section-title{margin-bottom:36px}
.worlds__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;text-align:left}
.world-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;color:inherit;box-shadow:var(--shadow-sm);transition:transform .22s ease,border-color .2s ease,box-shadow .22s ease}
.world-card:hover{border-color:var(--line-strong);transform:translateY(-5px) scale(1.02);box-shadow:var(--shadow-lg)}
.world-card__media{position:relative;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:16px;border-bottom:1px solid var(--line)}
.world-card__media--violet{background:radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),radial-gradient(120% 88% at 50% -8%,rgba(139,92,246,0.22),transparent 60%),linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.world-card__media--ice{background:radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),radial-gradient(120% 88% at 50% -8%,rgba(99,200,255,0.24),transparent 60%),linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.world-card__media--lime{background:radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),radial-gradient(120% 88% at 50% -8%,rgba(199,240,58,0.24),transparent 60%),linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.world-card__media--berry{background:radial-gradient(44% 13% at 50% 88%,rgba(18,18,26,0.12),transparent 72%),radial-gradient(120% 88% at 50% -8%,rgba(255,59,107,0.22),transparent 60%),linear-gradient(180deg,var(--tile-top),var(--tile-bot))}
.world-card__body{padding:18px 20px 22px}
.world-card__title{font-family:var(--font-display);font-size:21px;letter-spacing:-0.02em;color:var(--text);margin-bottom:7px}
.world-card__sub{font-size:13.5px;color:var(--text-mute);margin-bottom:16px}

/* ---------- 14. Community ---------- */
.community .container{padding-top:var(--space-section-md);padding-bottom:var(--space-section-md)}
.community__card{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);background:radial-gradient(70% 90% at 85% 20%,var(--glow-berry),transparent 60%),radial-gradient(60% 80% at 12% 90%,var(--glow-lime),transparent 60%),var(--card);padding:clamp(24px,3vw,38px);max-width:960px;margin:0 auto;box-shadow:var(--shadow-md);
  display:grid;grid-template-columns:1fr;gap:clamp(20px,3vw,36px);align-items:center}
.community__main{max-width:620px}
.community__text{font-size:16px;line-height:1.65;color:var(--text-soft);max-width:560px;margin:18px 0 24px}
.community .btn-row{gap:10px;align-items:center}
.community__side{display:flex;flex-direction:column;gap:14px}
.community__stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.stat{background:var(--card-2);border:1px solid var(--line);border-radius:16px;padding:18px}
.stat__icon{font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-accent);margin-bottom:10px}
.stat__value{font-family:var(--font-display);font-size:30px;color:var(--text);line-height:1;letter-spacing:-0.02em}
.stat__label{font-size:12px;color:var(--text-mute);margin-top:5px}
.community__season{background:var(--card-2);border:1px solid var(--line);border-radius:16px;padding:18px}
.community__season-title{font-family:var(--font-display);font-size:18px;color:var(--text);letter-spacing:-0.02em;margin-bottom:5px;line-height:1.15}
.community__season-sub{font-size:13px;color:var(--text-mute)}


/* ---------- 15. Education / Artikel ---------- */
.education .container{padding-top:var(--space-section-md);padding-bottom:var(--space-section-md)}
.education .section-title{margin-bottom:32px}
.article-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.article-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;min-height:210px;box-shadow:var(--shadow-sm);transition:border-color .2s,transform .2s,box-shadow .2s}
.article-card:hover{border-color:rgba(139,92,246,0.35);transform:translateY(-3px);box-shadow:var(--shadow-md)}
.article-card__tag{align-self:flex-start;font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent-ink);background:var(--tag-bg,var(--accent));border-radius:999px;padding:6px 11px;font-weight:700;margin-bottom:18px}
.article-card__title{font-size:16px;font-weight:800;color:var(--text);line-height:1.3;margin-bottom:11px}
.article-card__excerpt{font-size:13.5px;line-height:1.55;color:var(--text-mute);margin-bottom:18px}
.article-card__more{margin-top:auto;font-size:13px;font-weight:700;color:var(--ink-accent);display:inline-flex;align-items:center;gap:7px}

/* ---------- 15b. Warum anders ---------- */
.why{
  background:radial-gradient(55% 60% at 50% 0%,var(--glow-lime),transparent 60%),var(--bg);
  border-top:1px solid var(--line);
}
.why .why__inner{padding-top:clamp(64px,8vw,104px);padding-bottom:clamp(64px,8vw,104px)}
.why__head{position:relative;text-align:center;max-width:760px;margin:0 auto 56px}
.why__glow{position:absolute;left:50%;top:0;transform:translateX(-50%);width:min(560px,84%);height:160px;background:radial-gradient(50% 60% at 38% 50%,rgba(199,240,58,0.16),transparent 70%),radial-gradient(50% 60% at 66% 50%,rgba(139,92,246,0.16),transparent 70%);filter:blur(26px);pointer-events:none}
.why__eyebrow-row{position:relative;display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:20px}
.why__eyebrow-text{font-family:var(--font-mono);font-size:11.5px;letter-spacing:0.26em;text-transform:uppercase;color:var(--text-mute)}
.why__line{width:84px;height:1px;flex-shrink:0}
.why__line--l{background:linear-gradient(90deg,transparent,var(--line-strong))}
.why__line--r{background:linear-gradient(90deg,var(--line-strong),transparent)}
.why__title{position:relative;font-family:var(--font-display);font-weight:700;font-size:clamp(34px,5.2vw,62px);letter-spacing:-0.035em;color:var(--text);line-height:1.04}
.why__brand{background:linear-gradient(95deg,#6a34c9 5%,#d81b60 95%);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}
.why__underline{position:relative;display:inline-block}
.why__dot{color:var(--ink-accent)}
.why__swoosh{position:absolute;left:4%;bottom:-15px;width:92%;height:15px}
.why__lead{position:relative;font-size:17px;color:var(--text-soft);line-height:1.6;margin-top:28px}
.why__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.why-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:260px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:32px 30px;box-shadow:var(--shadow-sm);transition:transform .22s ease,border-color .2s ease,box-shadow .22s ease}
.why-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.why-card:nth-child(4n+1),.why-card:nth-child(4n){grid-column:span 7}
.why-card:nth-child(4n+2),.why-card:nth-child(4n+3){grid-column:span 5}
.why-card__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9;pointer-events:none}
.why-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0.12),rgba(255,255,255,0.82) 62%,rgba(255,255,255,0.95));pointer-events:none}
.why-card__wm{position:absolute;right:-8px;bottom:-34px;font-family:var(--font-display);font-weight:700;font-size:150px;line-height:1;letter-spacing:-0.05em;color:rgba(18,18,26,0.05);pointer-events:none}
.why-card__num{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-strong);background:rgba(255,255,255,0.7);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;color:var(--text);margin-bottom:48px;backdrop-filter:blur(4px)}
.why-card__title{position:relative;font-family:var(--font-display);font-size:24px;letter-spacing:-0.02em;color:var(--text);margin:auto 0 12px}
.why-card__text{position:relative;font-size:15px;line-height:1.6;color:var(--text-soft)}
.text-nowrap{white-space:nowrap}
.why-card__tags{position:relative;display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.why-card__tag{font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-mute);border:1px solid var(--line-strong);border-radius:999px;padding:5px 10px;background:rgba(255,255,255,0.6)}
.why-card--lime{--wa:#7c9a12}
.why-card--lime:hover{border-color:rgba(159,196,40,0.55)}
.why-card--violet{--wa:#8b5cf6}
.why-card--violet:hover{border-color:rgba(139,92,246,0.5)}
.why-card--ice{--wa:#2a93d6}
.why-card--ice:hover{border-color:rgba(99,200,255,0.6)}
.why-card--berry{--wa:#e11d54}
.why-card--berry:hover{border-color:rgba(255,59,107,0.5)}
.why-card__num{color:var(--wa,var(--text))}
.why-card--lime .why-card__title,.why-card--violet .why-card__title{margin-top:clamp(78px,7vw,104px)}
.why-card--ice .why-card__title,.why-card--berry .why-card__title{margin-top:clamp(78px,7vw,104px)}
.why-card--ice .why-card__text,.why-card--berry .why-card__text{min-height:72px}

@media (max-width:880px){
  .why-card:nth-child(n){grid-column:1/-1}
  .why-card{min-height:0}
  .why-card__num{margin-bottom:32px}
}

/* ---------- 16. Team Funding ---------- */
.funding{
  position:relative;overflow:hidden;
  background:
    radial-gradient(70% 70% at 50% 0%,var(--glow-lime),transparent 62%),
    radial-gradient(60% 82% at 92% 26%,var(--glow-berry),transparent 66%),
    var(--section-alt);
  border-top:1px solid var(--line);
}
.funding:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.6;
  background:
    linear-gradient(rgba(18,18,26,0.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(18,18,26,0.03) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(180deg,black,transparent 74%);
}
.funding .container{position:relative;z-index:1;padding-top:var(--space-section-lg);padding-bottom:var(--space-section-lg)}
.funding__head{text-align:center;max-width:720px;margin:0 auto 38px}
.funding__head .section-lead{margin-top:16px}
.funding-example{
  position:relative;overflow:hidden;
  max-width:760px;margin:0 auto 20px;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:20px;
  padding:clamp(18px,2.2vw,26px);
  box-shadow:var(--shadow-md);
}
.funding-example:before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(199,240,58,0.8),transparent);
}
.funding-example__title{
  font-family:var(--font-display);font-size:clamp(18px,2vw,24px);line-height:1.1;
  color:var(--text);margin-bottom:12px;
}
.funding-example__rows{display:flex;flex-wrap:wrap;gap:10px 22px}
.funding-example__rows p{font-size:15px;line-height:1.45;color:var(--text-mute);margin:0}
.funding-example__rows strong{color:var(--ink-accent);font-weight:800}
.funding__benefits{margin-bottom:20px}
.funding-card{
  position:relative;overflow:hidden;
  background:var(--card);
  border-color:var(--line);
}
.funding-card:before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(199,240,58,0.8),transparent);
}
.funding-card .feature__icon{
  width:50px;height:50px;border-radius:16px;
  font-size:13px;background:rgba(199,240,58,0.16);border-color:rgba(159,196,40,0.4);color:var(--ink-accent);
}
.funding__detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:20px;margin-bottom:20px}
.program-panel,.usage{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:20px;
  padding:clamp(22px,2.6vw,32px);
  box-shadow:var(--shadow-md);
}
.program-steps{display:grid;gap:14px;margin-top:4px}
.program-step{
  display:grid;grid-template-columns:42px 1fr;gap:15px;align-items:start;
  padding:14px;border-radius:16px;
  background:var(--card-2);border:1px solid var(--line);
}
.program-step__num{
  width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:var(--accent);color:var(--accent-ink);font-family:var(--font-display);font-size:19px;font-weight:700;
}
.program-step strong{display:block;font-size:16px;color:var(--text);margin-bottom:5px}
.program-step p{font-size:14px;line-height:1.5;color:var(--text-mute);margin:0}
.usage__tags{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 24px}
.usage__tag{
  font-size:13px;font-weight:700;color:var(--text);
  background:var(--card-2);border:1px solid var(--line-strong);
  border-radius:999px;padding:10px 14px;
}
.funding-note{
  border-top:1px solid var(--line);padding-top:22px;
  display:grid;gap:7px;color:var(--text-soft);
}
.funding-note strong{font-size:16px;color:var(--ink-accent)}
.funding-note span{font-size:14px;line-height:1.55;color:var(--text-mute)}
.funding__form{
  background:
    radial-gradient(70% 90% at 88% 12%,rgba(199,240,58,0.12),transparent 58%),
    var(--card);
  border:1px solid var(--line);border-radius:24px;padding:clamp(24px,3.4vw,40px);
  box-shadow:var(--shadow-md);
}
.funding__form-head{margin-bottom:22px}
.funding__form-title{font-family:var(--font-display);font-size:clamp(23px,2.6vw,30px);letter-spacing:-0.02em;color:var(--text);line-height:1.05;margin-bottom:8px}
.funding__form-sub{font-size:14px;color:var(--text-mute)}
.funding__form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:14px}
.funding__form input,.funding__form textarea{width:100%;background:var(--card-2);border:1px solid var(--line-strong);border-radius:12px;padding:14px 16px;color:var(--text);font-size:15px;outline:none;transition:border-color .15s,box-shadow .15s}
.funding__form input::placeholder,.funding__form textarea::placeholder{color:var(--text-faint)}
.funding__form input:focus,.funding__form textarea:focus{border-color:var(--ink-accent);box-shadow:0 0 0 3px rgba(106,52,201,0.12)}
.funding__form textarea{resize:vertical;margin-bottom:18px}

/* ---------- 16b. Kontaktseite ---------- */
.contact-section{padding-top:clamp(28px,3.4vw,52px);padding-bottom:var(--space-section-md)}
.contact-form{max-width:680px;margin:0 auto}
.contact-form__grid{grid-template-columns:1fr 1fr}
.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.select-wrap{position:relative}
.select-wrap::after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;pointer-events:none;
  border-right:1.8px solid var(--text-mute);border-bottom:1.8px solid var(--text-mute);
  transform:translateY(-70%) rotate(45deg)}
.funding__form select{width:100%;appearance:none;-webkit-appearance:none;background:var(--card-2);border:1px solid var(--line-strong);border-radius:12px;padding:14px 44px 14px 16px;color:var(--text);font-size:15px;outline:none;cursor:pointer;transition:border-color .2s,box-shadow .2s;font-family:inherit}
.funding__form select:focus{border-color:var(--ink-accent);box-shadow:0 0 0 3px rgba(106,52,201,0.12)}
.funding__form select:has(option:checked[disabled]){color:var(--text-faint)}
.contact-success{max-width:680px;margin:0 auto;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(38px,5vw,56px);box-shadow:var(--shadow-md)}
.contact-success__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--accent);color:var(--accent-ink);margin-bottom:18px}
.contact-success__title{font-family:var(--font-display);font-size:clamp(22px,2.6vw,28px);letter-spacing:-0.02em;margin-bottom:8px}
.contact-success__text{font-size:15px;color:var(--text-mute);margin-bottom:22px}
@media (max-width:640px){.contact-form__grid{grid-template-columns:1fr}}

/* 3-Schritte-Story im Fundament-Block */
.fundament__steps{list-style:none;margin:24px 0 28px;padding:0;display:flex;flex-direction:column;gap:0;position:relative}
.fundament__steps li{display:flex;gap:16px;align-items:flex-start;position:relative;padding-bottom:18px}
.fundament__steps li:last-child{padding-bottom:0}
.fundament__steps li:not(:last-child)::before{content:"";position:absolute;left:15px;top:34px;bottom:2px;width:2px;border-radius:2px;background:var(--line-strong)}
.fundament__step-num{flex:0 0 auto;width:32px;height:32px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11.5px;font-weight:700;position:relative;z-index:1}
.fundament__step-num--1{background:var(--accent);color:var(--accent-ink)}
.fundament__step-num--2{background:#8b5cf6;color:#fff}
.fundament__step-num--3{background:var(--text);color:#fff}
.fundament__steps strong{display:block;font-size:15.5px;font-weight:800;color:var(--text);margin:5px 0 3px}
.fundament__steps p{font-size:13.5px;line-height:1.55;color:var(--text-mute);max-width:420px}

/* ---------- 17. Testimonials ---------- */
.testimonials{background:var(--section-alt);border-top:1px solid var(--line)}
.testimonials__inner{padding:var(--space-section-lg) 24px;text-align:center}
.stars-lg{color:#e0a500;font-size:18px;letter-spacing:0.15em;margin-bottom:14px}
.testimonials .section-title{margin-bottom:36px}
.testi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;text-align:left}
.testi{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}
.testi__stars{color:#e0a500;font-size:14px;letter-spacing:0.1em;margin-bottom:18px}
.testi__quote{font-size:16px;line-height:1.65;color:var(--text-soft);margin-bottom:26px;flex:1;font-style:normal}
.testi__person{display:flex;align-items:center;gap:13px}
.avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;color:#fff;background:linear-gradient(135deg,var(--a1),var(--a2))}
.testi__name{display:block;font-size:14.5px;font-weight:800;color:var(--text)}
.testi__role{display:block;font-size:12.5px;color:var(--text-faint)}

/* ---------- 18. Payment Bar ---------- */
.paybar .container{padding-top:clamp(26px,3.5vw,42px);padding-bottom:clamp(26px,3.5vw,42px)}
.paybar__grid{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:clamp(16px,1.8vw,22px);display:grid;grid-template-columns:minmax(250px,1.1fr) minmax(270px,0.9fr) minmax(280px,1.2fr);gap:clamp(18px,2.1vw,28px);align-items:start;box-shadow:var(--shadow-sm)}
.paybar__line{display:flex;align-items:center;gap:9px;margin-bottom:8px;font-size:13.5px;font-weight:700;color:var(--text)}
.paybar__line--top{align-items:flex-start}
.paybar__line--top .check{margin-top:2px}
.check{color:var(--ink-accent)}
.paybar__sub{font-size:12.5px;color:var(--text-mute);line-height:1.4;font-weight:400}
.pay-icons{display:flex;flex-wrap:nowrap;gap:7px;align-items:center}
.pay-chip{background:#fff;border:1px solid var(--line);border-radius:7px;height:28px;min-width:46px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}
.pay-chip--klarna{background:#ffb3c7;border-color:transparent}
.pay-visa{font-family:var(--font-display);font-style:italic;font-size:13px;letter-spacing:-0.02em;color:#1a1f71;font-weight:700}
.pay-mc{position:relative;display:inline-block;width:29px;height:17px}
.pay-mc__a{position:absolute;left:0;top:0;width:17px;height:17px;border-radius:50%;background:#eb001b}
.pay-mc__b{position:absolute;left:12px;top:0;width:17px;height:17px;border-radius:50%;background:#f79e1b;mix-blend-mode:multiply}
.pay-paypal{font-style:italic;font-weight:800;font-size:13px;letter-spacing:-0.01em}
.pay-paypal span:first-child{color:#003087}
.pay-paypal span:last-child{color:#009cde}
.pay-klarna{font-weight:800;font-size:12.5px;letter-spacing:-0.01em;color:#0a0a0a}
.paybar--compact .container{padding-top:clamp(22px,3vw,36px);padding-bottom:clamp(22px,3vw,36px)}
.paybar--compact .paybar__grid{padding:clamp(14px,1.6vw,20px);border-radius:18px;gap:clamp(16px,1.8vw,24px)}

/* ---------- 19. Instagram CTA (Community Updates) ---------- */
.social-cta .container{padding-top:var(--space-section-sm);padding-bottom:var(--space-section-md)}
.social-cta__card{position:relative;overflow:hidden;border-radius:22px;border:1px solid var(--line);background:var(--card);
  padding:clamp(16px,2vw,22px) clamp(20px,3vw,36px);
  display:flex;align-items:center;justify-content:space-between;gap:18px 28px;flex-wrap:wrap;box-shadow:var(--shadow-md)}
.social-cta__copy{position:relative;min-width:260px}
.social-cta__card .eyebrow{position:relative;margin-bottom:3px}
.social-cta__blob{position:absolute;border-radius:50%;filter:blur(36px);pointer-events:none}
.social-cta__blob--a{width:200px;height:200px;left:-70px;top:-90px;background:rgba(199,240,58,0.5)}
.social-cta__blob--b{width:240px;height:240px;right:-90px;bottom:-140px;background:linear-gradient(135deg,rgba(214,41,118,0.30),rgba(139,92,246,0.36))}
.social-cta__title{position:relative;font-size:clamp(20px,2.2vw,27px);margin:0}
.social-cta__ig-word{background:linear-gradient(100deg,#f58529,#dd2a7b 45%,#8134af 75%,#515bd4);-webkit-background-clip:text;background-clip:text;color:transparent}
.social-cta__sub{position:relative;font-size:14px;color:var(--text-mute);line-height:1.5;margin-top:3px}
.social-cta__feed{position:relative;display:flex;gap:10px;flex:0 1 auto}
.social-cta__feed img{width:clamp(72px,7.5vw,94px);aspect-ratio:1/1;object-fit:cover;border-radius:14px;
  border:1px solid var(--line);box-shadow:0 8px 16px -8px rgba(18,18,26,0.22);
  transition:transform .25s cubic-bezier(.34,1.4,.64,1)}
.social-cta__feed img:hover{transform:translateY(-4px) scale(1.05)}
@media (max-width:640px){.social-cta__feed{order:3;width:100%;justify-content:flex-start}.social-cta__feed img{width:clamp(64px,26vw,94px)}}
.ig-fab{position:relative;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:17px;color:#fff;flex:0 0 auto;
  background:linear-gradient(135deg,#f58529 0%,#dd2a7b 50%,#8134af 78%,#515bd4 100%);
  box-shadow:0 12px 26px -10px rgba(221,42,123,0.55),0 4px 10px rgba(18,18,26,0.12);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}
.ig-fab:hover{transform:translateY(-4px) rotate(-6deg) scale(1.07);box-shadow:0 18px 36px -10px rgba(221,42,123,0.62),0 6px 14px rgba(18,18,26,0.14)}

.funding__photo{position:relative;margin:36px 0 44px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-md)}
.funding__photo img{display:block;width:100%;aspect-ratio:21/9;object-fit:cover;object-position:center 30%}
.funding__photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 52%,rgba(10,10,14,0.42))}
.funding__photo-card{position:absolute;z-index:1;right:20px;bottom:20px;
  background:rgba(255,255,255,0.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-radius:16px;padding:14px 20px;box-shadow:0 14px 34px -14px rgba(10,10,14,0.55)}
.funding__photo-card-title{font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-faint);margin-bottom:6px}
.funding__photo-card-rows{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--text-soft)}
.funding__photo-card-rows strong{color:var(--text);font-weight:800}
.funding__photo-card-sep{width:1px;height:20px;background:var(--line-strong)}
@media (max-width:640px){
  .funding__photo{border-radius:18px;margin:26px 0 34px}
  .funding__photo img{aspect-ratio:4/3;object-position:center 40%}
  .funding__photo-card{left:12px;right:12px;bottom:12px;padding:12px 16px}
  .funding__photo-card-rows{flex-wrap:wrap;gap:6px 14px}
}

/* Datenschutzhinweis + Teilnahmebedingungen im Funding-Formular */
.funding__privacy{margin:14px 0 0;padding:14px 16px;border:1px solid rgba(159,196,40,0.4);border-radius:14px;background:rgba(199,240,58,0.08);font-size:12.5px;line-height:1.5;color:var(--text-mute)}
.funding__privacy strong{color:var(--ink-accent);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.funding__privacy a{color:var(--text);text-decoration:underline;text-decoration-color:rgba(159,196,40,0.8);text-underline-offset:3px}
.funding__terms-link{display:flex;width:fit-content;margin:12px 0 2px;color:var(--ink-accent);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.funding__terms-link:hover{text-decoration:underline}
.funding__form .btn{margin-top:12px}
.funding__form-status{margin:12px 0 0;font-size:13px;line-height:1.45;color:var(--text-mute)}
.funding__form-status.is-error{color:#b4232a}
.funding__form-status.is-success{color:var(--ink-accent)}
.shop-hero__lead{position:relative;margin-top:14px;font-size:15.5px;color:var(--text-mute);max-width:640px;line-height:1.6}

/* ---------- 20. Footer ---------- */
.footer{background:var(--footer-bg);border-top:1px solid var(--line);transition:background .35s ease}
.footer .container{padding-top:clamp(34px,4vw,50px)}
.footer__grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:26px}
.footer__brand{min-width:220px}
.footer__logo{height:38px;width:auto;margin-bottom:12px}
.footer__logo--light{display:none}
.footer__about{font-size:13.5px;line-height:1.55;color:var(--text-mute);max-width:300px;margin-bottom:16px}
.socials{display:flex;gap:11px}
.social{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:var(--text-mute);transition:color .2s,border-color .2s,transform .2s}
.social:hover{border-color:var(--ink-accent);color:var(--ink-accent);transform:translateY(-2px)}
.footer__col{min-width:150px;display:flex;flex-direction:column}
.footer__heading{font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-faint);margin-bottom:12px}
.footer__link{font-size:13.5px;color:var(--text-soft);margin-bottom:8px;transition:color .15s;width:fit-content}
.footer__link:hover{color:var(--text)}
.footer__bottom{margin-top:26px;padding:15px 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--text-faint)}
.footer__claim{font-family:var(--font-mono);font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-accent)}

.footer{border-color:rgba(255,255,255,0.08)}
.footer__logo--dark{display:none}
.footer__logo--light{display:block}
.footer__about{color:#9a9aa0}
.footer__social,.social{border-color:rgba(255,255,255,0.14);color:#c7c7cc}
.social:hover{border-color:var(--accent);color:var(--accent)}
.footer__heading{color:#76767d}
.footer__link{color:#a6a6ad}
.footer__link:hover{color:#fff}
.footer__bottom{border-color:rgba(255,255,255,0.08);color:#76767d}
.footer__claim{color:var(--accent)}

/* ---------- 21. Reveal-Animation ---------- */
.reveal{opacity:0;transform:translate3d(0,30px,0);transition:opacity .85s cubic-bezier(.16,.84,.32,1),transform .85s cubic-bezier(.16,.84,.32,1);will-change:opacity,transform}
.reveal.is-in{opacity:1;transform:translate3d(0,0,0)}
.reveal.stagger{transform:none}

/* Kinder huschen gestaffelt rein */
@keyframes revealUp{from{opacity:0;transform:translate3d(0,32px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes revealLeft{from{opacity:0;transform:translate3d(-48px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes revealRight{from{opacity:0;transform:translate3d(48px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.reveal:not(.is-in) .stagger>*,.reveal.stagger:not(.is-in)>*{opacity:0}
.reveal.is-in .stagger>*,.reveal.is-in.stagger>*{animation:revealUp .65s cubic-bezier(.16,.84,.32,1) backwards}
.reveal.is-in .stagger>:nth-child(1),.reveal.is-in.stagger>:nth-child(1){animation-delay:.05s}
.reveal.is-in .stagger>:nth-child(2),.reveal.is-in.stagger>:nth-child(2){animation-delay:.13s}
.reveal.is-in .stagger>:nth-child(3),.reveal.is-in.stagger>:nth-child(3){animation-delay:.21s}
.reveal.is-in .stagger>:nth-child(4),.reveal.is-in.stagger>:nth-child(4){animation-delay:.29s}
.reveal.is-in .stagger>:nth-child(5),.reveal.is-in.stagger>:nth-child(5){animation-delay:.37s}
.reveal.is-in .stagger>:nth-child(6),.reveal.is-in.stagger>:nth-child(6){animation-delay:.45s}
.reveal.is-in .stagger>:nth-child(7),.reveal.is-in.stagger>:nth-child(7){animation-delay:.53s}
.reveal.is-in .stagger>:nth-child(8),.reveal.is-in.stagger>:nth-child(8){animation-delay:.61s}

/* Fundament: Buch huscht von links, Text von rechts */
.fundament.reveal{transform:none}
.fundament.reveal:not(.is-in) .fundament__cover,.fundament.reveal:not(.is-in) .fundament__body{opacity:0}
.fundament.reveal.is-in .fundament__cover{animation:revealLeft .8s cubic-bezier(.16,.84,.32,1) .05s backwards}
.fundament.reveal.is-in .fundament__body{animation:revealRight .8s cubic-bezier(.16,.84,.32,1) .16s backwards}

@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-25%)}}


/* ---------- 21c. Overlay-Scrollbar: nativ versteckt, Bild läuft durch ---------- */
html{scrollbar-width:none}
html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0;display:none}
.osb{position:fixed;top:0;right:0;bottom:0;width:14px;z-index:130;pointer-events:none}
.osb.is-visible{pointer-events:auto}
.osb__thumb{
  position:absolute;left:50%;transform:translateX(-50%);width:6px;min-height:44px;
  border-radius:999px;background:rgba(18,18,26,0.34);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.45);
  opacity:0;transition:opacity .3s ease,width .15s ease,background .15s ease;
  pointer-events:auto;cursor:grab;touch-action:none;
}
.osb.is-visible .osb__thumb{opacity:1}
.osb__thumb:hover,.osb.is-dragging .osb__thumb{width:9px;background:rgba(18,18,26,0.52)}
.osb.is-dragging .osb__thumb{cursor:grabbing}
@media (hover:none){.osb{display:none}}

/* ---------- 21d. Foto-Hintergrund (Produktseite) ---------- */
.page-photo{position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:url("../images/bg-stadium.webp") center top/cover no-repeat}
.page-photo::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,0.60) 0%,rgba(255,255,255,0.72) 55%,rgba(255,255,255,0.85) 100%)}
body.photo-bg{background:transparent}
body.photo-bg .pd-hero{background:none}
.page-photo::after{background:linear-gradient(180deg,rgba(245,244,240,0.80) 0%,rgba(245,244,240,0.88) 55%,rgba(245,244,240,0.94) 100%)}

/* Persistente Method-Bühne: alle Visuals gestapelt, Wechsel ohne Nachladen */
.method__stage{position:relative;width:100%;aspect-ratio:16/10;justify-self:stretch;align-self:center}
.method__stage .method__visual{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity .28s ease;z-index:1}
.method__stage .method__visual.is-on{opacity:1;pointer-events:auto;z-index:2}

/* ---------- 22. Responsive ---------- */
@media (max-width:1080px){
  .header__inner{padding:0 24px;gap:20px}
  .footer__grid{grid-template-columns:1fr 1fr 1fr;gap:32px}
  .footer__brand{grid-column:1 / -1}
}

@media (max-width:980px){
  .community__card{grid-template-columns:1fr}
  .hero--image{display:flex;flex-direction:column}
  .hero--image picture{display:contents}
  .hero--image .hero__media{width:100%;height:auto;min-height:0;max-width:none;margin-top:0;order:2}
  .hero--image .hero__inner{position:static;transform:none;left:auto;order:1;padding:clamp(28px,6vw,44px) 24px 8px}
  .hero--image .hero__content{max-width:640px}
  .hero--image::before{display:none}
}

@media (max-width:880px){
  .header__inner{gap:16px}
  .nav{
    position:fixed;top:74px;left:0;right:0;
    flex-direction:column;align-items:flex-start;gap:0;
    background:var(--header-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    border-bottom:1px solid var(--line);
    padding:8px 24px 18px;
    transform:translateY(-12px);opacity:0;pointer-events:none;
    transition:transform .25s ease,opacity .25s ease;
    max-height:calc(100vh - 74px);overflow-y:auto;
  }
  .nav.is-open{transform:translateY(0);opacity:1;pointer-events:auto}
  .nav__link{width:100%;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}
  .nav-toggle{display:flex}
  .hero__content{max-width:520px}
  .method__tabs{grid-template-columns:repeat(2,1fr)}
  .method__panel{grid-template-columns:1fr}
  .method__visual{width:100%;min-height:280px}
  .method__visual--video{width:100%;min-height:280px}
  .funding__detail{grid-template-columns:1fr}
}

@media (max-width:640px){
  .header__inner{height:64px}
  .ticker__item{font-size:10px;padding:0 18px}
  .hero__content{max-width:none}
  .hero__cta{gap:12px}
  .btn{padding:14px 24px;font-size:14px}
  .hero__badges{flex-wrap:wrap;gap:0}
  .hbadge{padding:0 16px}
  .hbadge__sep{height:36px}
  .section-head{flex-direction:column;align-items:flex-start}
  .fundament__grid{flex-direction:column;text-align:left}
  .fundament__cover{align-self:flex-start}
  .method-tab{min-height:88px;padding:15px 16px}
  .method__panel{padding:26px 20px;border-radius:22px}
  .method__head{align-items:flex-start}
  .method__chip{width:44px;height:44px;border-radius:14px}
  .method__visual{min-height:240px}
  .method__visual--video{width:100%;min-height:240px}
  .community__card{flex-direction:column;align-items:flex-start}
  .footer__grid{grid-template-columns:1fr 1fr}
  .footer__bottom{flex-direction:column;align-items:flex-start}
  .funding__form-grid{grid-template-columns:1fr}
}

@media (max-width:420px){
  .method__tabs{grid-template-columns:1fr}
  .product-grid{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
}

/* ---------- 23. Reduced Motion ---------- */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important;transition:none!important}
  .reveal .stagger>*,.reveal.stagger>*,.fundament.reveal .fundament__cover,.fundament.reveal .fundament__body{opacity:1!important;animation:none!important}
  .ticker__track{animation:none}
}

/* =================================================================
   24. SHOP-SEITE
   ================================================================= */
.shop-hero{position:relative;background:radial-gradient(60% 130% at 88% 35%,var(--glow-violet),transparent 60%),radial-gradient(40% 100% at 8% 80%,var(--glow-berry),transparent 60%),var(--bg);border-bottom:1px solid var(--line)}
.shop-hero__inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:var(--space-section-lg) 24px;overflow:visible}
.shop-hero__logo{position:absolute;right:3%;top:-26px;height:clamp(200px,30vw,360px);width:auto;opacity:0.1;pointer-events:none;z-index:5}
.shop-hero__title{position:relative;font-family:var(--font-display);font-weight:800;font-size:clamp(40px,6vw,76px);letter-spacing:-0.035em;color:var(--text);line-height:0.94;text-shadow:0 1px 0 rgba(255,255,255,0.6);overflow-wrap:break-word;hyphens:auto}

.filterbar{background:var(--header-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky;top:68px;z-index:40}
/* Shop: Produktmotiv als dezenter Seitenhintergrund hinter Filterleiste und Grid */
.page-shop::before{content:"";position:fixed;inset:0;z-index:-1;background:url(../images/hero-new-white3.webp) center 30%/cover no-repeat;opacity:.14;pointer-events:none}
.page-shop .filterbar{background:rgba(248,247,243,0.82)}
/* Mobil: Filter-Chips in zwei definierte Reihen umbrechen (Daily Essentials + Flavor in Reihe 2) */
.filter-break{display:none}
@media (max-width:640px){.filter-break{display:block;flex-basis:100%;height:0}}
.filterbar__inner{max-width:var(--maxw);margin:0 auto;padding:20px 24px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.filters{display:flex;flex-wrap:wrap;gap:10px}
.filter-chip{cursor:pointer;font-family:var(--font-body);font-size:13.5px;font-weight:700;border-radius:999px;padding:10px 18px;white-space:nowrap;background:var(--card);color:var(--text-soft);border:1px solid var(--line-strong);transition:background .15s,color .15s,border-color .15s}
.filter-chip:hover{border-color:var(--text);color:var(--text)}
.filter-chip.is-active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.shop-search{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line-strong);border-radius:999px;padding:11px 18px;min-width:230px}
.shop-search__ic{color:var(--text-faint);font-size:15px}
.shop-search input{background:transparent;border:none;outline:none;color:var(--text);font-size:14px;width:100%}
.shop-search input::placeholder{color:var(--text-faint)}
.shop-section{background:var(--bg)}
.shop-section .container{padding-top:var(--space-section-sm);padding-bottom:var(--space-section-lg)}
.shop-count{font-family:var(--font-mono);font-size:12px;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-faint);margin-bottom:24px}
.shop-empty{display:none;text-align:center;padding:80px 0;color:var(--text-faint);font-size:16px}
.product-card__desc{font-size:13px;line-height:1.45;color:var(--text-mute);margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}

.legal-page{background:var(--bg)}
.legal-hero .shop-hero__inner{padding-bottom:clamp(42px,5vw,72px)}
/* Ungenutzt seit 24.07.2026: Rubrik-Kacheln aus legal.html entfernt (doppelten die Panels).
   Regeln bleiben stehen, falls die Kacheln zurueckkommen sollen. */
.legal-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;padding-top:var(--space-section-sm);padding-bottom:20px}
.legal-nav__item{
  display:grid;gap:8px;min-height:118px;
  background:var(--card);
  border:1px solid var(--line);border-radius:18px;
  padding:20px;text-decoration:none;color:var(--text);box-shadow:var(--shadow-sm);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.legal-nav__item:hover{transform:translateY(-2px);border-color:rgba(159,196,40,0.5)}
.legal-nav__item span{font-family:var(--font-mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-accent)}
.legal-nav__item strong{font-family:var(--font-display);font-size:20px;line-height:1.08;letter-spacing:-0.02em}
.legal-sections{display:grid;gap:16px;padding-top:6px;padding-bottom:var(--space-section-lg)}
.legal-panel{
  background:var(--card);
  border:1px solid var(--line);border-radius:20px;
  box-shadow:var(--shadow-md);overflow:hidden;
}
.legal-detail{scroll-margin-top:110px}
.legal-summary{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 18px;
  align-items:center;padding:24px;cursor:pointer;list-style:none;
}
.legal-summary::-webkit-details-marker{display:none}
.legal-summary .eyebrow{grid-column:1/-1;margin:0;color:var(--ink-accent)}
.legal-summary strong{font-family:var(--font-display);font-size:clamp(22px,2.4vw,30px);line-height:1.05;letter-spacing:-0.03em;color:var(--text)}
.legal-summary em{font-style:normal;font-size:13.5px;line-height:1.45;color:var(--text-mute);max-width:520px}
.legal-summary:after{
  content:"+";grid-column:2;grid-row:2;width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(199,240,58,0.16);border:1px solid rgba(159,196,40,0.4);
  color:var(--ink-accent);font-family:var(--font-display);font-size:22px;
}
.legal-detail[open] .legal-summary:after{content:"−"}
.legal-copy{
  border-top:1px solid var(--line);
  padding:clamp(22px,3vw,36px);
  color:var(--text-mute);font-size:14.5px;line-height:1.68;
}
.legal-copy h1,.legal-copy h2,.legal-copy h3{
  color:var(--text);font-family:var(--font-display);letter-spacing:-0.02em;line-height:1.12;
}
.legal-copy h1{font-size:clamp(24px,2.6vw,34px);margin:12px 0 14px}
.legal-copy h2{font-size:clamp(20px,2vw,26px);margin:24px 0 12px}
.legal-copy h3{font-size:18px;margin:20px 0 8px}
.legal-copy p{margin:0 0 13px}
.legal-copy ul,.legal-copy ol{margin:0 0 16px 20px;padding:0}
.legal-copy li{margin:0 0 8px}
.legal-copy li p{margin:0}
.legal-copy strong{color:var(--text)}
.legal-copy a{color:var(--ink-accent);text-decoration:none}
.legal-copy a:hover{text-decoration:underline}
.legal-copy hr{border:0;border-top:1px solid var(--line);margin:26px 0}
.legal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.legal-actions--right{justify-content:flex-end}
.legal-actions .btn{color:var(--text);text-decoration:none}
.legal-actions .btn:hover{text-decoration:none}
.badge-stack{position:absolute;top:14px;left:14px;display:flex;gap:7px;flex-wrap:wrap;z-index:2}
.badge-stack .badge{position:static}
/* Sale bewusst zurueckhaltend (06.08.2026): kleines helles Pill statt
   schwarzem Klotz, damit das Produktbild die Kachel traegt. */
.badge--sale{
  color:#8a6a00;background:rgba(255,255,255,0.9);border:1px solid rgba(138,106,0,0.28);
  backdrop-filter:blur(4px);font-size:9px;letter-spacing:0.14em;padding:5px 9px;
  text-transform:uppercase;font-weight:700;box-shadow:none;
}

/* =================================================================
   25. PRODUKTSEITE
   ================================================================= */
.pd-hero{position:relative;background:radial-gradient(55% 50% at 80% 12%,var(--glow-violet),transparent 60%),var(--bg)}
.pd-hero .container{padding-top:24px}
.breadcrumb{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--text-faint);margin-bottom:26px;flex-wrap:wrap}
.breadcrumb a{color:var(--text-mute)}
.breadcrumb a:hover{color:var(--text)}
.breadcrumb__cur{color:var(--text-soft)}
.pd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;align-items:start}
.pd-media{position:relative;aspect-ratio:1/1;border-radius:calc(var(--radius) + 6px);border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow-sm)}
.pd-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}
.pd-trust__item{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:12.5px;color:var(--text-soft);font-weight:700}
.pd-trust__ic{display:inline-flex;flex:0 0 auto}
.pd-trust__ic--fuel{color:var(--ink-accent)}
.pd-eyebrow{font-family:var(--font-mono);font-size:11.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-accent);margin-bottom:14px}
.pd-title{font-family:var(--font-display);font-size:clamp(28px,3.4vw,40px);letter-spacing:-0.03em;line-height:1.02;color:var(--text);margin-bottom:14px}
.pd-rating{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.pd-stars{color:#e0a500;letter-spacing:0.08em}
.pd-rating__txt{font-size:13.5px;color:var(--text-mute)}
.pd-sub{font-size:16px;line-height:1.6;color:var(--text-soft);margin-bottom:22px;max-width:520px}
.pd-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.pd-chip{font-size:12.5px;color:var(--text-soft);background:rgba(18,18,26,0.04);border:1px solid var(--line);border-radius:8px;padding:7px 12px}
.pd-label{font-family:var(--font-mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-faint);margin-bottom:11px}
.pd-flavors{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}
.pd-flavor{cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;border-radius:999px;padding:10px 18px;white-space:nowrap;background:var(--card);color:var(--text-soft);border:1px solid var(--line-strong);transition:background .18s,color .18s,border-color .18s}
.pd-flavor:hover{border-color:var(--text);color:var(--text)}
.pd-flavor.is-active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.pd-buy{background:var(--card);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);padding:20px;box-shadow:var(--shadow-md)}
.pd-price-row{display:flex;align-items:baseline;gap:10px;margin-bottom:3px}
.pd-price{font-family:var(--font-display);font-size:28px;letter-spacing:-0.03em;color:var(--text)}
.pd-old{font-size:15px;color:var(--text-faint);text-decoration:line-through}
.pd-price-meta{font-size:12.5px;color:var(--text-faint);margin-bottom:14px}
.pd-actions{display:flex;gap:12px;flex-wrap:wrap}
.pd-qty{display:flex;align-items:center;gap:4px;background:var(--card-2);border:1px solid var(--line-strong);border-radius:999px;padding:5px}
.pd-qty__btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--text);font-size:18px;cursor:pointer}
.pd-qty__btn:hover{background:rgba(18,18,26,0.06)}
.pd-qty__val{min-width:26px;text-align:center;font-weight:700;font-size:15px}
.pd-add{flex:1;min-width:180px;padding:12px 18px;font-size:14px}
.pd-ship{font-size:12px;color:var(--text-faint);margin-top:12px;text-align:center}
.pd-paypal{width:100%;margin-top:12px;background:#ffc439;color:#0a0a0a;border:none;border-radius:999px;padding:12px;font-weight:800;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;transition:filter .2s}
.pd-paypal:hover{filter:brightness(1.04)}
.pd-paypal .pp1{font-style:italic;font-weight:800;color:#253b80}
.pd-paypal .pp2{font-style:italic;font-weight:800;color:#179bd7}
.pd-more-pay{display:block;text-align:center;margin-top:10px;font-size:12.5px;color:var(--text-mute);text-decoration:underline;cursor:pointer}
.pd-more-pay:hover{color:var(--text)}

.pd-section{padding-top:var(--space-section-sm)}
.pd-section:last-of-type{padding-bottom:var(--space-section-md)}
.pd-h2{font-family:var(--font-display);font-size:clamp(22px,2.6vw,30px);letter-spacing:-0.03em;color:var(--text);margin-bottom:8px}
.pd-h2--compact{font-size:clamp(20px,2vw,25px);line-height:1.08}
.pd-h3{font-family:var(--font-display);font-size:18px;color:var(--text);margin-bottom:16px}
.pd-muted{font-size:14px;color:var(--text-faint);margin-bottom:22px}
.pd-details-toggle{width:100%;text-align:left;background:var(--card);border:1px solid rgba(159,196,40,0.3);border-radius:16px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}
.pd-details-toggle__l{display:flex;align-items:center;gap:14px}
.pd-details-toggle__ic{width:36px;height:36px;border-radius:10px;background:rgba(199,240,58,0.16);border:1px solid rgba(159,196,40,0.35);color:var(--ink-accent);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.pd-details-toggle__t{display:block;font-family:var(--font-display);font-size:17px;letter-spacing:-0.02em;color:var(--text)}
.pd-details-toggle__hint{display:block;margin-top:3px;font-size:12px;color:var(--text-faint);font-weight:600}
.pd-details-toggle__s{font-family:var(--font-mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-mute)}
.pd-details{padding:24px 0 0}
.pd-tagline{font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-accent);margin-bottom:14px}
.pd-intro{font-size:14.5px;line-height:1.58;color:var(--text-soft);max-width:680px;margin-bottom:24px}
.pd-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}
.pd-official{padding-top:18px}
.pd-official__meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:13px;font-family:var(--font-mono);font-size:9.8px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-faint)}
.pd-official__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 28px;
  padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:20px}
.pd-official__top .pd-h2--compact{margin-bottom:6px}
.pd-official__top .pd-tagline{margin-bottom:0}
.pd-facts{display:flex;flex-wrap:wrap;gap:8px}
.pd-fact{background:var(--card-2);border:1px solid var(--line);border-radius:12px;padding:9px 16px 10px;min-width:104px}
.pd-fact span{display:block;font-family:var(--font-mono);font-size:9.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px}
.pd-fact strong{font-family:var(--font-display);font-size:16px;color:var(--text)}
.pd-two--official{gap:12px;margin-top:18px}
.pd-mini-panel{background:var(--card-2);border:1px solid var(--line);border-radius:14px;padding:16px}
.pd-mini-panel .pd-h3{font-size:15px;margin-bottom:11px}
.pd-live-accordion{display:grid;gap:8px;margin-top:16px}
.pd-live-section{background:var(--card-2);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.pd-live-section summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 15px;cursor:pointer;font-family:var(--font-display);font-size:14.5px;font-weight:800;color:var(--text)}
.pd-live-section summary::-webkit-details-marker{display:none}
.pd-live-section__chev{color:var(--ink-accent);font-family:var(--font-mono);transition:transform .2s ease}
.pd-live-section[open] .pd-live-section__chev{transform:rotate(180deg)}
.pd-live-html{padding:2px 16px 16px;color:var(--text-soft);font-size:14px;line-height:1.6}
.pd-live-html h1,.pd-live-html h2,.pd-live-html h3{font-family:var(--font-display);color:var(--text);font-size:18px;margin:18px 0 10px}
.pd-live-html p{margin:9px 0}
/* API-HTML liefert einzelne Fakt-Zeilen als <div> (in product.js als .pd-fact-line markiert):
   saubere Listen-Optik mit dezenten Trennern zwischen aufeinanderfolgenden Zeilen. */
.pd-live-html .pd-fact-line{padding:9px 2px}
.pd-live-html .pd-fact-line + .pd-fact-line{border-top:1px solid var(--line)}
.pd-live-html ul{padding-left:18px;margin:10px 0}
.pd-live-html li{margin:6px 0}
.pd-live-html strong{color:var(--text);font-weight:700}
.pd-live-html hr{border:0;border-top:1px solid var(--line);margin:16px 0}
/* Nährwert-/Wirkstoff-Tabellen (Shopify .live-table): sauber, premium, mobil-fit */
.live-table{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:12px;margin:12px 0 6px;background:var(--card)}
.pd-live-html table{width:100%;min-width:0;border-collapse:collapse;border:0!important;font-variant-numeric:tabular-nums}
.pd-live-html table[border],.pd-live-html table[border] th,.pd-live-html table[border] td{border-color:transparent!important}
.pd-live-html th,.pd-live-html td{border:0!important;border-bottom:1px solid var(--line)!important;padding:11px 14px;text-align:left;vertical-align:top;line-height:1.4}
.pd-live-html thead th{background:var(--bg-2);color:var(--text);font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;vertical-align:bottom}
.pd-live-html tbody td{font-size:13.5px;color:var(--text-soft)}
.pd-live-html tbody td:first-child{color:var(--text);font-weight:600}
.pd-live-html tbody tr:nth-child(even) td{background:var(--bg)}
.pd-live-html tbody tr:last-child td{border-bottom:0!important}
/* mobile-first: Wert-Spalten umbrechen (alles sichtbar); Desktop unten = nowrap */
.pd-live-html th:not(:first-child),.pd-live-html td:not(:first-child){text-align:right}
.pd-checklist{display:flex;flex-direction:column;gap:12px}
/* Sichtbare Produktbeschreibung: Vorteile + Zielgruppe */
.pd-tagline--hero{font-family:var(--font-mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-accent);margin:-6px 0 12px}
.pd-desc{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.pd-desc__card{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(20px,2.6vw,30px);box-shadow:var(--shadow-sm)}
.pd-desc__card::before{content:"";position:absolute;inset:0;pointer-events:none}
.pd-desc__card--lime::before{background:radial-gradient(56% 90% at 90% -10%,var(--glow-lime),transparent 62%)}
.pd-desc__card--violet::before{background:radial-gradient(56% 90% at 90% -10%,var(--glow-violet),transparent 62%)}
.pd-desc__card>*{position:relative}
.pd-desc__card .pd-h2{margin-bottom:16px}
.pd-check{display:flex;align-items:flex-start;gap:11px;font-size:15px;line-height:1.5;color:var(--text-soft)}
.pd-check .check{margin-top:1px;font-size:14px}
.pd-usage{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.pd-usage__card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm)}
.pd-usage__card--berry{background:radial-gradient(80% 100% at 90% 10%,var(--glow-berry),transparent 60%),var(--card);border-color:var(--line)}
.pd-usage__head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.pd-usage__ic{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px}
.pd-usage__ic--lime{background:rgba(199,240,58,0.16);border:1px solid rgba(159,196,40,0.35)}
.pd-usage__ic--berry{background:rgba(255,59,107,0.14);border:1px solid rgba(255,59,107,0.3)}
.pd-usage__txt{font-size:15px;line-height:1.6;color:var(--text-mute)}
.nut-table{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.nut-row{display:grid;grid-template-columns:1.6fr 1fr 1fr;padding:15px 22px;border-top:1px solid var(--line);background:var(--card)}
.nut-row span:not(.nut-row__k){font-size:14px;color:var(--text-mute);text-align:right}
.nut-row__k{font-size:14.5px;font-weight:600;color:var(--text)}
.nut-row--head{background:var(--card-2);border-top:none}
.nut-row--head span{font-weight:700;font-size:13px;color:var(--text-mute);text-align:right}
.nut-row--head span:first-child{font-weight:800;font-size:14px;color:var(--text);text-align:left}
.pd-related{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.pd-related .product-card__body{padding:18px}
.pd-related .product-card__name{font-size:15.5px;margin-bottom:10px}

.pd-sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--header-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line)}
.pd-sticky__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;padding-bottom:12px}
.pd-sticky__l{display:flex;align-items:center;gap:14px;min-width:0}
.pd-sticky__txt{min-width:0}
.pd-sticky__price{white-space:nowrap}
.pd-sticky__thumb{width:46px;height:46px;border-radius:10px;flex-shrink:0;background-size:contain;background-repeat:no-repeat;background-position:center;background-color:var(--card-2);border:1px solid var(--line)}
.pd-sticky__name{font-size:14.5px;font-weight:800;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd-sticky__meta{font-size:12px;color:var(--text-faint)}
.pd-sticky__r{display:flex;align-items:center;gap:16px;flex-shrink:0}
.pd-sticky__price{font-family:var(--font-display);font-size:20px;color:var(--text);letter-spacing:-0.02em}
.pd-sticky__r .btn{padding:13px 22px;font-size:14px;white-space:nowrap}
body{padding-bottom:0}
body.has-sticky{padding-bottom:78px}

/* ----- Checkout-Overlay (bereits hell – nur minimale Anpassung) ----- */
body.checkout-open{overflow:hidden}
.checkout{position:fixed;inset:0;z-index:90;background:rgba(18,18,26,0.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:24px}
.checkout__box{width:100%;max-width:980px;height:calc(100vh - 48px);max-height:840px;display:flex;flex-wrap:nowrap;background:#fff;color:#1a1a1f;border-radius:18px;overflow:hidden;box-shadow:0 30px 80px rgba(18,18,26,0.35)}
.checkout__main{flex:1 1 340px;min-width:300px;min-height:0;overflow-y:auto;padding:30px}
.checkout__bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.checkout__logo{display:inline-flex}
.checkout__logo img{height:36px;width:auto}
.checkout__close{width:34px;height:34px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#555;font-size:15px;cursor:pointer}
.checkout__express{text-align:center;font-family:var(--font-mono);font-size:11px;letter-spacing:0.18em;color:#999;margin-bottom:14px}
.checkout__express-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}
.checkout__express-btns button{border:none;border-radius:8px;padding:13px 0;font-weight:800;font-size:13.5px;cursor:pointer}
.ck-shop{background:#5a31f4;color:#fff}
.ck-pp{background:#ffc439;font-weight:900;font-style:italic}
.ck-pp .pp1{color:#003087}.ck-pp .pp2{color:#0070ba}
.ck-g{background:#000;color:#fff;display:flex;align-items:center;justify-content:center;gap:5px;font-weight:700}
.ck-g__g{color:#4285f4;font-weight:900}
.checkout__or{display:flex;align-items:center;gap:12px;color:#999;font-size:12px;margin-bottom:20px}
.checkout__or span{flex:1;height:1px;background:#e5e5e5}
.checkout__row-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:16px}
.checkout__signin{color:#5a31f4;font-size:13px;cursor:pointer}
.ck-input{width:100%;border:1px solid #ccc;border-radius:8px;padding:13px;font-size:14px;font-family:inherit;color:#111;margin-bottom:12px;background:#fff}
.ck-input:focus{outline:none;border-color:#5a31f4}
.ck-select{cursor:pointer;margin-bottom:10px}
.ck-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ck-2 .ck-input{margin-bottom:10px}
.ck-check{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#444;margin-bottom:24px;cursor:pointer}
.ck-check input{accent-color:#5a31f4;width:16px;height:16px;flex-shrink:0}
.ck-h{font-size:16px;display:block;margin-bottom:10px}
.ck-hint{background:#f1eefe;border:1px solid #e0d9fb;border-radius:8px;padding:13px 14px;font-size:13px;color:#6b5fb0;margin-bottom:24px;line-height:1.45}
.ck-secure{display:flex;align-items:center;gap:7px;font-size:12.5px;color:#1f9e5a;margin-bottom:14px}
.ck-pay{border:1.5px solid #5a31f4;border-radius:8px;overflow:hidden;margin-bottom:10px}
.ck-pay__head{display:flex;justify-content:space-between;align-items:center;padding:14px;cursor:pointer}
.ck-pay__l{display:flex;align-items:center;gap:11px;font-weight:700;font-size:14px}
.ck-pay__l input{accent-color:#5a31f4;width:18px;height:18px}
.ck-cards{display:flex;gap:5px;align-items:center}
.ck-card{border-radius:4px;padding:3px 6px;font-size:10px;font-weight:900}
.ck-card--visa{background:#fff;border:1px solid #e5e5e5;color:#1a1f71;font-style:italic}
.ck-card--mc{background:#fff;border:1px solid #e5e5e5;color:#eb001b}
.ck-card--amex{background:#016fd0;color:#fff}
.ck-card--kl{background:#ffb3c7;color:#0a0a0a}
.ck-pay__body{padding:0 14px 16px}
.ck-pay__body .ck-input:last-child{margin-bottom:0}
.ck-pay__opt{border:1px solid #ccc;border-radius:8px;padding:14px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.pp-mini{font-size:13px;font-weight:900;font-style:italic}
.pp-mini .pp1{color:#253b80}.pp-mini .pp2{color:#179bd7}
.ck-review{width:100%;margin-top:12px;background:linear-gradient(90deg,#5a31f4,#ff6a3d);color:#fff;border:none;border-radius:999px;padding:16px;font-weight:800;font-size:15px;cursor:pointer}
.ck-legal{display:flex;justify-content:center;gap:18px;margin-top:16px;font-size:12px;color:#888}
.ck-legal span{cursor:pointer;text-decoration:underline}
.checkout__summary{flex:0 1 360px;min-width:280px;min-height:0;overflow-y:auto;background:#f6f6f8;padding:30px;border-left:1px solid #ececf0}
.checkout__sum-title{font-size:18px;display:block;margin-bottom:20px}
.checkout__sum-item{display:flex;gap:12px;align-items:center;margin-bottom:14px}
.checkout__sum-thumb{position:relative;width:46px;height:46px;border-radius:8px;flex-shrink:0;background-size:contain;background-repeat:no-repeat;background-position:center;background-color:#eee}
.checkout__sum-qty{position:absolute;top:-7px;right:-7px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  background:var(--dark,#0f0f12);color:#fff;font-size:11px;font-weight:700;line-height:19px;text-align:center}
.checkout__sum-info{flex:1}
.checkout__sum-name{font-weight:700;font-size:14px;line-height:1.3}
.checkout__sum-size{font-size:12px;color:#888;margin-top:2px}
.checkout__discount{display:flex;gap:10px;margin-bottom:22px}
.checkout__discount input{flex:1;border:1px solid #ccc;border-radius:8px;padding:12px;font-size:14px;font-family:inherit;color:#111}
.checkout__discount button{background:#e8e8ec;border:none;border-radius:8px;padding:0 18px;font-weight:700;font-size:14px;cursor:pointer}
.checkout__sum-row{display:flex;justify-content:space-between;font-size:14px;color:#555;margin-bottom:8px}
.checkout__sum-row--bd{padding-bottom:14px;border-bottom:1px solid #e2e2e6;margin-bottom:14px}
.checkout__total{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}
.checkout__total>strong{font-size:18px}
.checkout__total-r{text-align:right}
.checkout__total-r span{font-size:11px;color:#999;letter-spacing:0.1em;display:block}
.checkout__total-r strong{font-size:24px}
.checkout__tax{font-size:12px;color:#999;margin-bottom:22px}
.checkout__trust{background:#fff;border:1px solid #ececf0;border-radius:10px;padding:16px;font-size:13px;color:#444;line-height:1.95}

/* ----- Warenkorb-Drawer ----- */
.cart-overlay{position:fixed;inset:0;z-index:80;background:rgba(18,18,26,0.4);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .25s}
.cart-overlay.is-open{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;z-index:81;width:min(420px,92vw);background:var(--card);border-left:1px solid var(--line);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s cubic-bezier(.16,.84,.32,1);box-shadow:-20px 0 60px rgba(18,18,26,0.12)}
.cart-drawer.is-open{transform:translateX(0)}
.cart-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line)}
.cart-drawer__title{font-family:var(--font-display);font-size:20px;letter-spacing:-0.02em;color:var(--text)}
.cart-drawer__close{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-strong);background:transparent;color:var(--text-soft);font-size:15px;cursor:pointer}
.cart-drawer__list{flex:1;overflow-y:auto;padding:18px 24px}
.cart-drawer__empty{color:var(--text-faint);font-size:15px;text-align:center;padding:40px 0}
.cart-item{display:flex;gap:13px;padding:16px 0;border-bottom:1px solid var(--line)}
.cart-item__thumb{width:60px;height:60px;border-radius:10px;flex-shrink:0;background-size:contain;background-repeat:no-repeat;background-position:center;background-color:var(--card-2);border:1px solid var(--line)}
.cart-item__info{flex:1;min-width:0}
.cart-item__name{font-size:14px;font-weight:700;color:var(--text);line-height:1.3}
.cart-item__meta{font-size:12px;color:var(--text-faint);margin:3px 0 9px}
.cart-item__qty{display:inline-flex;align-items:center;gap:8px;background:var(--card-2);border:1px solid var(--line-strong);border-radius:999px;padding:4px}
.cart-item__qty button{width:26px;height:26px;border-radius:50%;border:none;background:transparent;color:var(--text);font-size:15px;cursor:pointer}
.cart-item__qty button:hover{background:rgba(18,18,26,0.06)}
.cart-item__qty span{min-width:18px;text-align:center;font-size:14px;font-weight:700}
.cart-item__right{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;flex-shrink:0}
.cart-item__price{font-family:var(--font-display);font-size:15px;color:var(--text)}
.cart-item__rm{background:none;border:none;color:var(--text-faint);font-size:12px;cursor:pointer;text-decoration:underline}
.cart-item__rm:hover{color:var(--berry-ink)}
.cart-drawer__foot{padding:20px 24px;border-top:1px solid var(--line)}
.cart-drawer__row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.cart-drawer__total{font-family:var(--font-display);font-size:22px;color:var(--text)}
.cart-drawer__notice{min-height:18px;margin:0 0 8px;font-size:12.5px;color:var(--text-mute);line-height:1.4}
.cart-drawer__notice.is-error{color:#b4232a}
.cart-drawer__notice.is-success{color:var(--ink-accent)}
.cart-drawer__discount{margin:12px 0 12px}
.cart-drawer__discount label{display:block;margin-bottom:6px;font-size:12px;font-weight:800;color:var(--text);letter-spacing:.06em;text-transform:uppercase}
.cart-drawer__discount-row{display:flex;gap:8px}
.cart-drawer__discount input{min-width:0;flex:1;height:42px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);padding:0 14px;font:inherit;color:var(--text)}
.cart-drawer__discount button{height:42px;border:0;border-radius:999px;background:var(--text);color:#fff;padding:0 14px;font-weight:800;cursor:pointer}
.cart-drawer__discount-note{min-height:18px;margin:7px 0 0;font-size:12px;color:var(--text-faint);line-height:1.4}
.cart-drawer__discount-note.is-error{color:#b4232a}
.cart-drawer__discount-note.is-success{color:var(--ink-accent)}
/* Ersetzt seit 07.08.2026 das Code-Feld im Warenkorb: reiner Hinweis,
   dass Codes erst im Shopify-Checkout eingetragen werden. */
.cart-drawer__discount-hint{
  margin:12px 0;padding:11px 14px;border-radius:14px;
  background:var(--bg-2);border:1px solid var(--line);
  font-size:12.5px;line-height:1.5;color:var(--text-mute);
}
.cart-drawer__discount-hint.is-success{color:var(--ink-accent);border-color:rgba(106,52,201,0.28)}
.cart-drawer__discount-hint.is-error{color:#b4232a;border-color:rgba(180,35,42,0.28)}
.cart-drawer__note{font-size:12.5px;color:var(--text-faint);line-height:1.5;margin-bottom:16px}
.cart-drawer__checkout{width:100%;justify-content:center}
.cart-drawer__continue{display:block;text-align:center;margin-top:12px;font-size:13px;color:var(--text-mute);text-decoration:underline}
.cart-drawer__continue:hover{color:var(--text)}

/* ---------- Desktop Density Pass: approved 100% browser view ---------- */
@media (min-width:881px){
  :root{
    --maxw:1100px;
    --maxw-header:1240px;
    --space-section-lg:clamp(36px,4.2vw,58px);
    --space-section-md:clamp(30px,3.4vw,50px);
    --space-section-sm:clamp(22px,2.8vw,40px);
    --radius:16px;
    --radius-lg:22px;
  }

  body{font-size:14px}
  .container{padding-left:24px;padding-right:24px}
  .section-title{font-size:clamp(24px,3vw,38px)}
  .section-lead{font-size:13.5px}
  .eyebrow{font-size:10.5px;margin-bottom:10px}
  .btn{padding:11px 21px;font-size:13px}
  .btn-logo img{height:32px}

  .ticker{padding:7px 0}
  .ticker__item{font-size:10px;padding:0 24px}
  .header__inner{height:58px;padding:0 28px;gap:24px}
  .brand__logo{height:47px}
  .nav{gap:20px}
  .nav__link{font-size:12.5px}
  .btn-cart{width:39px;height:39px}
  .btn-cart__count{min-width:18px;height:18px;font-size:10px}
  .lang-switch{height:39px}
  .lang-switch__btn{min-width:31px;font-size:11.5px}

  .hero--image .hero__content{max-width:480px}
  .hero__title{font-size:clamp(32px,4.35vw,58px);margin-bottom:13px}
  .hero__kicker{font-size:11px;margin-bottom:17px}
  .hero__lead{font-size:14px;line-height:1.55;max-width:400px;margin-bottom:26px}
  .hero__cta{gap:12px;margin-bottom:34px}
  .hero .btn{padding:13px 24px;font-size:13px}
  /* Hero: vollflaechiges Bild statt Einzelprodukt */
  .eyebrow-pill{padding:7px 14px;margin-bottom:26px}
  .eyebrow-pill__text{font-size:10px}
  .hbadge{gap:10px;padding:0 16px}
  .hbadge__label{font-size:11.5px}
  .hbadge__sep{height:32px}

  .book3d{--bw:clamp(180px,18vw,235px)}
  .fundament__text{font-size:15px}
  .flow{margin-bottom:28px}

  .method-logo{width:clamp(130px,10vw,170px);margin-bottom:12px}
  .method .section-lead{margin-bottom:26px}
  .method__tabs{gap:10px;margin-bottom:22px}
  .method-tab{min-height:72px;padding:11px 13px;border-radius:14px}
  .method-tab__word{font-size:clamp(16px,1.3vw,21px)}
  .method-tab__initial{font-size:clamp(26px,2.3vw,36px)}
  .method__panel{border-radius:20px;padding:clamp(22px,2.4vw,32px);gap:clamp(20px,2.6vw,36px)}
  .method__chip{width:40px;height:40px;border-radius:12px;font-size:19px}
  .method__title{font-size:clamp(28px,3vw,42px)}
  .method__desc{font-size:15px;line-height:1.6;margin-bottom:20px}
  .method__point{font-size:12px;padding:8px 12px}
  .method__visual{border-radius:20px}
  .method__visual-letter{font-size:clamp(100px,14vw,170px)}

  .trust__grid,.funding__benefits{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
  .feature{padding:20px}
  .feature__icon{width:38px;height:38px;margin-bottom:15px}
  .feature__title{font-size:15.5px}
  .feature__desc{font-size:13px}

  .section-head{margin-bottom:24px}
  .product-grid{grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:13px}
  .product-showcase .section-head,
  .product-showcase .product-grid{max-width:1040px;margin-left:auto;margin-right:auto}
  .product-showcase .product-grid{grid-template-columns:repeat(4,minmax(0,215px));justify-content:center}
  .product-card__media{padding:11px}
  .product-card__media img,
  .world-card__media img{max-width:86%;max-height:86%}
  .product-card__body{padding:12px 13px 14px}
  .product-card__name{font-size:13.5px}
  .product-card__desc{font-size:11.8px;line-height:1.38}
  .product-card__size{font-size:11.5px;margin-bottom:12px}
  .chips{gap:6px;margin-bottom:15px}
  .chip{font-size:10.5px;padding:4px 8px}
  .price{font-size:17px}
  .add-btn{width:34px;height:34px;border-radius:10px}

  .worlds .section-title{margin-bottom:30px}
  .worlds__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
  .world-card__body{padding:16px 18px 20px}
  .world-card__title{font-size:19px}
  .world-card__sub{font-size:13px}

  .community__card{padding:clamp(24px,3vw,36px);gap:28px}
  .community__text{font-size:15px;margin:17px 0 24px}
  .stat{padding:16px}

  .article-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}
  .article-card{padding:17px;min-height:186px}
  .article-card__title{font-size:15px}
  .article-card__excerpt{font-size:12.5px}

  .funding__head{margin-bottom:30px}
  .funding__detail{gap:18px}
  .program-panel,.usage{border-radius:18px;padding:clamp(20px,2.2vw,28px)}
  .program-step{grid-template-columns:38px 1fr;gap:13px;padding:12px}
  .program-step__num{width:38px;height:38px;border-radius:12px;font-size:17px}
  .program-step strong{font-size:15px}
  .program-step p{font-size:13px}
  .usage__tag{font-size:12px;padding:8px 12px}
  .funding__form{border-radius:22px;padding:clamp(22px,2.8vw,34px)}
  .funding__form-title{font-size:clamp(21px,2.2vw,27px)}
  .funding__form input,.funding__form textarea{padding:12px 14px;font-size:14px}

  .paybar__grid{padding:clamp(17px,2vw,23px);gap:20px}
  .footer__grid{gap:26px}
  .footer__logo{height:34px}
  .footer__bottom{margin-top:22px;padding:13px 0}

  .shop-hero__inner{padding:var(--space-section-md) 24px}
  .shop-hero__title{font-size:clamp(30px,4.4vw,54px)}
  .shop-hero__logo{height:clamp(230px,27vw,330px);top:-30px}
  .filterbar{top:58px}
  .filterbar__inner{padding:16px 24px}
  .filter-chip{font-size:12.5px;padding:8px 15px}
  .shop-search{padding:9px 16px;min-width:210px}
  .shop-count{font-size:11px;margin-bottom:20px}

  .pd-hero .container{padding-top:20px}
  .breadcrumb{font-size:12.5px;margin-bottom:22px}
  .pd-grid{grid-template-columns:minmax(320px,.88fr) minmax(360px,1fr);gap:24px}
  .pd-trust__item{padding:9px 11px;font-size:11.8px}
  .pd-eyebrow{font-size:10.5px;margin-bottom:12px}
  .pd-title{font-size:clamp(24px,2.55vw,32px);margin-bottom:10px}
  .pd-sub{font-size:14px;line-height:1.5;margin-bottom:16px}
  .pd-chip{font-size:11.5px;padding:6px 10px}
  .pd-chips{margin-bottom:22px}
  .pd-flavors{gap:8px;margin-bottom:24px}
  .pd-flavor{font-size:13px;padding:8px 15px}
  .pd-buy{padding:15px}
  .pd-price{font-size:22px}
  .pd-price-meta{font-size:12px;margin-bottom:12px}
  .pd-qty__btn{width:29px;height:29px;font-size:16px}
  .pd-add{padding:10px 16px;font-size:13px}
  .pd-paypal{padding:10px;font-size:13px}
  .pd-ship{margin-top:10px}
  .pd-details-toggle{padding:15px 18px}
  .pd-details-toggle__ic{width:32px;height:32px;border-radius:9px;font-size:14px}
  .pd-details-toggle__t{font-size:16px}
  .pd-details-toggle__hint{font-size:11.5px}
  .pd-details{padding:22px 0 0}
  .pd-official{padding-top:16px}
  .pd-fact{padding:8px 13px 9px}
  .pd-fact strong{font-size:15px}
  .pd-mini-panel{padding:15px}
  .pd-live-section summary{padding:11px 14px;font-size:14px}
  .pd-live-html{padding:2px 14px 14px;font-size:13.5px}
  .pd-live-html th,.pd-live-html td{padding:9px 10px}
  .pd-live-html thead th{font-size:10px;letter-spacing:.03em}
  .pd-live-html tbody td{font-size:13px}
  /* Desktop (genug Platz): Wert-Spalten einzeilig halten */
  .pd-live-html th:not(:first-child),.pd-live-html td:not(:first-child){white-space:nowrap}
  .pd-intro{font-size:14px;line-height:1.55;margin-bottom:22px}
  .pd-check{font-size:14px}
  .pd-usage{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}
  .pd-usage__card{padding:22px}
  .nut-row{padding:12px 18px}
  .pd-sticky__inner{padding-top:10px;padding-bottom:10px}
  .pd-sticky__thumb{width:40px;height:40px}
  .pd-sticky__name{font-size:13.5px}
  .pd-sticky__price{font-size:18px}
  .pd-sticky__r .btn{padding:11px 20px;font-size:13px}
  body.has-sticky{padding-bottom:68px}

  .checkout{padding:18px}
  .checkout__box{max-width:900px;height:calc(100vh - 36px);max-height:760px}
  .checkout__main,.checkout__summary{padding:24px}
  .cart-drawer{width:min(380px,92vw)}
}

@media (max-width:880px){
  .pd-sticky__meta{display:none}
  .pd-facts{width:100%}
  .pd-fact{flex:1 1 auto}
}
@media (max-width:640px){
  /* Mobil: EINE durchgehende Scroll-Flaeche statt zwei gequetschter Scroll-Bereiche.
     Bestelluebersicht kompakt OBEN (Shopify-Muster), Formular frei darunter. */
  .checkout{padding:10px}
  .checkout__box{flex-direction:column;height:calc(100vh - 20px);height:calc(100dvh - 20px);overflow-y:auto}
  .checkout__main{flex:none;min-height:0;overflow:visible;padding:20px 18px 26px}
  .checkout__summary{flex:none;order:-1;min-height:0;overflow:visible;border-left:none;border-bottom:1px solid #ececf0;padding:16px 18px}
  .checkout__sum-title{font-size:14px}
  .checkout__trust{display:none}
  .pd-actions{flex-direction:column;align-items:stretch}
  .pd-add{min-width:0}
  .pd-sticky__inner{padding-left:16px;padding-right:16px}
  .pd-sticky__r .btn{padding:12px 16px}
  .pd-details-toggle{align-items:flex-start}
  .pd-live-html table{min-width:0}
}

/* ================================================================
   24. Stil-Varianten (neu) — <html data-style="soft|arena|spirit|mono">
   soft = Warm (Basis, keine Overrides)
   ================================================================ */

/* --- ARENA: kühles Porzellan, Ice-Blau als Tinte, sportlich-technisch --- */
:root[data-style="arena"]{
  --bg:#f2f4f7; --bg-2:#edf0f4; --card:#ffffff; --card-2:#f7f9fc;
  --section-alt:#e9edf2; --tile-top:#ffffff; --tile-bot:#e7ebf1;
  --line:rgba(16,28,44,0.10); --line-strong:rgba(16,28,44,0.18);
  --text:#10151c; --text-soft:#3c4653; --text-mute:#5d6975; --text-faint:#87939f;
  --ink-accent:#1878b8;
  --glow-lime:rgba(199,240,58,0.15); --glow-violet:rgba(99,200,255,0.17); --glow-berry:rgba(255,59,107,0.07);
  --shadow-sm:0 1px 2px rgba(16,28,44,0.06); --shadow-md:0 14px 36px rgba(16,28,44,0.10); --shadow-lg:0 28px 66px rgba(16,28,44,0.14);
  --ticker-bg:#0c1117; --ticker-tx:#93a0ad; --header-bg:rgba(242,244,247,0.86); --footer-bg:#0c1117;
  --radius:14px; --radius-lg:20px;
}

/* --- SPIRIT: Lavendel-Energie, Violett als Füllakzent --- */
:root[data-style="spirit"]{
  --bg:#f6f3fb; --bg-2:#f1ecf8; --card:#ffffff; --card-2:#faf8fd;
  --section-alt:#eee8f7; --tile-top:#ffffff; --tile-bot:#ebe4f5;
  --line:rgba(58,40,96,0.11); --line-strong:rgba(58,40,96,0.19);
  --text:#191324; --text-soft:#443a58; --text-mute:#665c7b; --text-faint:#9089a3;
  --accent:#8b5cf6; --accent-ink:#ffffff;
  --accent-glow:rgba(139,92,246,0.30); --accent-glow-strong:rgba(139,92,246,0.42); --accent-dot-glow:rgba(139,92,246,0.7);
  --glow-lime:rgba(199,240,58,0.13); --glow-violet:rgba(139,92,246,0.19); --glow-berry:rgba(255,59,107,0.11);
  --shadow-sm:0 1px 2px rgba(58,40,110,0.07); --shadow-md:0 14px 36px rgba(58,40,110,0.11); --shadow-lg:0 28px 66px rgba(58,40,110,0.16);
  --ticker-bg:#120d1d; --ticker-tx:#a89ec2; --header-bg:rgba(246,243,251,0.86); --footer-bg:#120d1d;
  --radius:22px; --radius-lg:32px;
}
[data-style="spirit"] .footer__claim{color:#b79df8}

/* --- MONO: Ink-Editorial, Schwarz-Weiß, gestochen klar --- */
:root[data-style="mono"]{
  --bg:#faf9f7; --bg-2:#f5f4f1; --card:#ffffff; --card-2:#f7f6f3;
  --section-alt:#f1efeb; --tile-top:#ffffff; --tile-bot:#ecebe7;
  --line:rgba(18,18,18,0.12); --line-strong:rgba(18,18,18,0.22);
  --text:#131313; --text-soft:#3c3c3c; --text-mute:#616161; --text-faint:#8c8c8c;
  --accent:#16161a; --accent-ink:#ffffff; --ink-accent:#161616;
  --accent-glow:rgba(18,18,18,0.16); --accent-glow-strong:rgba(18,18,18,0.24); --accent-dot-glow:rgba(255,255,255,0.0);
  --glow-lime:rgba(18,18,18,0.045); --glow-violet:rgba(18,18,18,0.04); --glow-berry:rgba(18,18,18,0.03);
  --shadow-sm:0 1px 2px rgba(18,18,18,0.06); --shadow-md:0 14px 36px rgba(18,18,18,0.10); --shadow-lg:0 28px 66px rgba(18,18,18,0.15);
  --ticker-bg:#0a0a0a; --ticker-tx:#9a9a9a; --footer-bg:#0a0a0a; --header-bg:rgba(250,249,247,0.87);
  --radius:10px; --radius-lg:16px;
}
[data-style="mono"] .ticker__dot{background:#f5f5f0;box-shadow:0 0 6px rgba(255,255,255,0.4)}
[data-style="mono"] .footer__claim{color:#f5f5f0}
[data-style="mono"] .social:hover{border-color:#fff;color:#fff}
[data-style="mono"] .why__swoosh,[data-style="mono"] .social-cta__blob,[data-style="mono"] .fundament__cover-glow{filter:grayscale(1) opacity(0.55)}
[data-style="mono"] .social-cta__ig-word{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--text)}
[data-style="mono"] .fundament__step-num--2{background:#3d3d3d}
[data-style="mono"] .hero__edge{background:linear-gradient(90deg,transparent,rgba(19,19,19,0.6),transparent)}
[data-style="mono"] .grad-text{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--text);-webkit-text-fill-color:currentColor}

/* --- Stil-Umschalter --- */
.stylr{position:fixed;z-index:120;bottom:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:3px;
  background:rgba(255,255,255,0.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(18,18,26,0.12);border-radius:999px;padding:5px;box-shadow:0 14px 38px rgba(18,18,26,0.18);white-space:nowrap}
.stylr__label{font-family:var(--font-mono);font-size:9.5px;letter-spacing:0.16em;text-transform:uppercase;color:#8a8a8a;padding:0 6px 0 12px}
.stylr button{display:flex;align-items:center;gap:7px;border:none;background:transparent;color:#4a4a4a;font-family:var(--font-body);font-weight:700;font-size:12px;padding:8px 13px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}
.stylr button:hover{background:rgba(18,18,26,0.06)}
.stylr button.is-active{background:#14141a;color:#fff}
.stylr__sw{width:14px;height:14px;border-radius:50%;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(18,18,26,0.16)}
@media (max-width:680px){
  .stylr__label{display:none}
  .stylr button{padding:7px 9px;font-size:11px;gap:5px}
  .stylr__sw{width:12px;height:12px}
}

/* --- Gratisversand-Fortschrittsbalken --- */
.shipbar{margin-top:12px}
.shipbar__text{font-size:12px;color:var(--text-mute);text-align:center;margin-bottom:7px}
.shipbar__text strong{color:var(--text);font-weight:800}
.shipbar__track{position:relative;height:8px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);overflow:hidden}
.shipbar__fill{position:relative;height:100%;width:0;border-radius:999px;background:var(--accent);transition:width .7s cubic-bezier(.22,.8,.3,1);overflow:hidden}
.shipbar__fill::after{content:"";position:absolute;top:0;bottom:0;width:46px;left:-46px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.55),transparent);animation:shipshine 2.4s ease-in-out infinite}
@keyframes shipshine{0%{left:-46px}60%,100%{left:calc(100% + 46px)}}
.shipbar--done .shipbar__track{box-shadow:0 0 0 3px var(--accent-glow)}
.shipbar--done .shipbar__text,.shipbar--done .shipbar__text strong{color:var(--ink-accent)}
.cart-drawer .shipbar{margin:0 0 12px}
.cart-drawer .shipbar__text{text-align:left}

/* --- To-Top-Button --- */
.totop{position:fixed;z-index:119;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  background:rgba(255,255,255,0.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(18,18,26,0.14);color:var(--text);box-shadow:0 12px 30px rgba(18,18,26,0.18);
  opacity:0;transform:translateY(14px) scale(0.9);pointer-events:none;
  transition:opacity .3s ease,transform .35s cubic-bezier(.22,.9,.3,1.3),box-shadow .2s}
.totop.is-show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.totop:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 16px 36px rgba(18,18,26,0.24)}
@media (max-width:680px){.totop{right:14px;bottom:74px;width:42px;height:42px}}
@media (prefers-reduced-motion:reduce){.totop{transition:opacity .2s}}

/* --- Kundenbewertungen --- */
.reviews .container{padding-top:0;padding-bottom:var(--space-section-sm)}
.reviews__card{position:relative;overflow:hidden;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:clamp(30px,4vw,46px) clamp(22px,4vw,48px);box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;gap:8px}
.reviews__card::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(46% 90% at 8% 0%,var(--glow-lime),transparent 60%),radial-gradient(50% 90% at 94% 100%,var(--glow-violet),transparent 62%)}
.reviews__card>*{position:relative}
.reviews__title{font-size:clamp(24px,2.8vw,32px)}
.reviews__empty{display:flex;flex-direction:column;align-items:center}
.reviews__stars-empty{display:flex;justify-content:center;gap:5px;margin-top:6px}
.reviews__stars-empty svg{fill:rgba(246,196,55,0);stroke:var(--text-faint);stroke-width:1.6;transform-origin:center}
.reveal.is-in .reviews__stars-empty svg{animation:starPop .6s cubic-bezier(.34,1.56,.64,1) both}
.reveal.is-in .reviews__stars-empty svg:nth-child(1){animation-delay:.30s}
.reveal.is-in .reviews__stars-empty svg:nth-child(2){animation-delay:.46s}
.reveal.is-in .reviews__stars-empty svg:nth-child(3){animation-delay:.62s}
.reveal.is-in .reviews__stars-empty svg:nth-child(4){animation-delay:.78s}
.reveal.is-in .reviews__stars-empty svg:nth-child(5){animation-delay:.94s}
@keyframes starPop{
  0%{opacity:0;transform:scale(0.15) rotate(-16deg);fill:rgba(246,196,55,0);stroke:var(--text-faint)}
  58%{opacity:1;transform:scale(1.32) rotate(5deg);fill:#f6c437;stroke:#cf9708}
  100%{opacity:1;transform:scale(1) rotate(0deg);fill:#f2b31c;stroke:rgba(163,112,10,0.85)}
}
@media (prefers-reduced-motion:reduce){
  .reveal.is-in .reviews__stars-empty svg{animation:none;fill:#f2b31c;stroke:rgba(163,112,10,0.85)}
}
.reviews__empty-lead{font-size:15px;color:var(--text-mute);max-width:420px;line-height:1.55}
.reviews__card .btn{margin-top:10px}
.reviews__note{font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-faint);margin-top:8px}

/* --- Bewertungs-Dialog --- */
.rvw-overlay{position:fixed;inset:0;z-index:140;display:flex;align-items:center;justify-content:center;padding:20px;
  background:rgba(12,11,16,0.46);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);
  opacity:0;transition:opacity .22s ease}
.rvw-overlay[hidden]{display:none}
.rvw-overlay.is-open{opacity:1}
.rvw{position:relative;width:min(560px,100%);max-height:min(86vh,720px);overflow:auto;background:var(--card);border:1px solid var(--line);
  border-radius:calc(var(--radius-lg) + 4px);padding:clamp(26px,4vw,40px);box-shadow:var(--shadow-lg);text-align:center;
  transform:translateY(16px) scale(0.97);transition:transform .3s cubic-bezier(.22,.9,.3,1.2)}
.rvw-overlay.is-open .rvw{transform:translateY(0) scale(1)}
.rvw__close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--card-2);
  color:var(--text-mute);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s,border-color .2s,transform .2s}
.rvw__close:hover{color:var(--text);border-color:var(--line-strong);transform:rotate(90deg)}
.rvw__title{font-family:var(--font-display);font-size:clamp(20px,2.4vw,25px);letter-spacing:-0.02em;line-height:1.15;margin-bottom:8px}
.rvw__sub{font-size:14px;color:var(--text-mute);line-height:1.5}
.rvw__product{display:flex;flex-direction:column;align-items:center;gap:10px;margin:20px 0 6px}
.rvw__product img{height:130px;width:auto;object-fit:contain;filter:drop-shadow(0 14px 20px rgba(18,18,26,0.22))}
.rvw__product-name{font-weight:800;font-size:15px;color:var(--text)}
.rvw__stars{display:flex;justify-content:center;gap:6px;margin-top:10px}
.rvw__stars button{border:none;background:transparent;padding:4px;cursor:pointer;transition:transform .15s cubic-bezier(.34,1.5,.64,1)}
.rvw__stars button:hover{transform:scale(1.14)}
.rvw__stars svg,.rvw__stars--mini svg{fill:var(--bg-2);stroke:var(--line-strong);stroke-width:1.4;transition:fill .15s,stroke .15s}
.rvw__stars button.is-on svg,.rvw__stars--mini span.is-on svg{fill:#f2b31c;stroke:rgba(163,112,10,0.85)}
.rvw__scale{display:flex;justify-content:space-between;max-width:262px;margin:6px auto 0;font-size:12px;font-weight:700;color:var(--text-mute)}
.rvw__stars--mini{gap:3px;margin:0 0 16px}
.rvw__label{display:block;text-align:left;font-size:13px;font-weight:800;color:var(--text);margin-bottom:8px}
.rvw__label span{font-weight:600;color:var(--text-faint)}
.rvw textarea{width:100%;background:var(--card-2);border:1px solid var(--line-strong);border-radius:14px;padding:14px 16px;color:var(--text);
  font-size:15px;font-family:inherit;line-height:1.55;outline:none;resize:vertical;min-height:130px;transition:border-color .2s,box-shadow .2s}
.rvw textarea:focus{border-color:var(--ink-accent);box-shadow:0 0 0 3px var(--accent-glow)}
.rvw textarea::placeholder{color:var(--text-faint)}
.rvw__terms{font-size:12px;color:var(--text-faint);line-height:1.55;margin-top:12px;text-align:left}
.rvw__terms a{color:var(--text-mute);text-decoration:underline;text-underline-offset:2px}
.rvw__terms a:hover{color:var(--text)}
.rvw__nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}
.rvw__back{border:none;background:transparent;color:var(--text-mute);font-weight:700;font-size:14px;cursor:pointer;padding:10px 6px;display:flex;align-items:center;gap:7px}
.rvw__back:hover{color:var(--text)}
.rvw__nav .btn[disabled]{opacity:0.45;pointer-events:none}
.rvw__step--done{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 0 4px}
.rvw__step--done .btn{margin-top:14px}
/* Modal: Name/E-Mail-Felder, Honeypot, Fehlermeldung */
.rvw__fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;align-items:end}
.rvw__field{text-align:left;display:flex;flex-direction:column}
.rvw__field input{margin-top:auto}
.rvw input[type=text],.rvw input[type=email]{width:100%;background:var(--card-2);border:1px solid var(--line-strong);border-radius:12px;
  padding:12px 14px;color:var(--text);font-size:14px;font-family:inherit}
.rvw input[type=text]:focus,.rvw input[type=email]:focus{border-color:var(--ink-accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}
.rvw input::placeholder{color:var(--text-faint)}
.rvw__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rvw__error{text-align:left;color:#b3261e;font-size:13px;font-weight:600;line-height:1.45;margin-top:12px;
  background:#fbe3e1;border:1px solid #f0c7c3;border-radius:10px;padding:10px 13px}
.rvw__error[hidden]{display:none}
@media (max-width:560px){
  .rvw{padding:24px 18px}
  .rvw__product img{height:104px}
  .rvw__stars svg{width:32px;height:32px}
  .rvw__fields{grid-template-columns:1fr}
}
/* Bewertungs-Sektion: Zusammenfassung + Liste (nach Freigabe) */
.reviews__summary{display:flex;flex-direction:column;align-items:center;gap:6px;margin:8px 0 4px}
.reviews__summary[hidden]{display:none}
.reviews__avg{font-family:var(--font-display);font-size:clamp(34px,5vw,46px);font-weight:800;line-height:1;color:var(--text)}
.reviews__stars{display:inline-flex;gap:4px}
.reviews__stars svg,.reviews__item-stars svg{width:20px;height:20px;fill:var(--bg-2);stroke:var(--line-strong);stroke-width:1.4}
.reviews__stars .is-on svg,.reviews__item-stars .is-on svg{fill:#f2b31c;stroke:rgba(163,112,10,0.85)}
.reviews__count{font-size:13px;color:var(--text-mute)}
.reviews__empty[hidden]{display:none}
/* Karussell: mobile-first 1 Karte/Ansicht, ab 881px 2; Swipe nativ + Pfeile */
.reviews__carousel{position:relative;margin:22px 0 6px;width:100%}
.reviews__carousel[hidden]{display:none}
.reviews__list{list-style:none;margin:0;padding:2px;text-align:left;display:flex;gap:14px;overflow-x:auto;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.reviews__list::-webkit-scrollbar{display:none}
.reviews__list[hidden]{display:none}
.reviews__item{flex:0 0 100%;min-width:0;scroll-snap-align:start;display:flex;flex-direction:column;
  background:var(--card-2);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.reviews__item-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:8px}
.reviews__item-stars{display:inline-flex;gap:3px}
.reviews__item-name{font-weight:800;font-size:14px;color:var(--text)}
.reviews__item-date{font-size:12px;color:var(--text-faint);margin-left:auto}
.reviews__item-body{font-size:14.5px;line-height:1.6;color:var(--text-mute);white-space:pre-wrap;margin:0;
  display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.reviews__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text);
  background:var(--card);border:1px solid var(--line-strong);box-shadow:0 2px 10px rgba(18,18,26,0.10);
  transition:transform .15s ease,opacity .15s ease}
.reviews__nav:hover{transform:translateY(-50%) scale(1.07)}
.reviews__nav:disabled{opacity:.3;pointer-events:none}
.reviews__nav[hidden]{display:none}
.reviews__nav--prev{left:-8px}
.reviews__nav--next{right:-8px}
@media (min-width:881px){
  .reviews__item{flex-basis:calc(50% - 7px)}
  .reviews__nav--prev{left:-16px}
  .reviews__nav--next{right:-16px}
}

/* =================================================================
   26. Mobile 402px Integration
   ================================================================= */
.method__mnav{display:none}
.carousel-nav{display:none}

@media (max-width:980px){
  .paybar__grid{grid-template-columns:1fr;gap:18px}
  .pay-icons{flex-wrap:wrap}
}

@media (max-width:880px){
  .nav{background:rgba(245,244,240,0.97)}
  .method__mnav{display:flex;gap:8px;margin-left:auto;flex-shrink:0}
  .method__mnav-btn{
    width:36px;height:36px;border-radius:50%;border:1px solid var(--line-strong);
    background:var(--card);color:var(--text);font-size:16px;font-weight:800;
    cursor:pointer;display:flex;align-items:center;justify-content:center;
    transition:background .2s,transform .15s;
  }
  .method__mnav-btn:active{transform:scale(0.9)}
  .method__stage{aspect-ratio:1200/679;min-height:0}
  .method__stage .method__visual{min-height:0;height:100%;inset:0}
  .method__stage .method__image,
  .method__stage .method__video{
    inset:0;width:100%;height:100%;object-fit:contain;object-position:center;
  }
}

@media (max-width:640px){
  .social-cta__card{gap:14px}
  .social-cta__copy{flex:1 1 0;min-width:0}
  .ig-fab{width:46px;height:46px;border-radius:14px;flex:0 0 auto}
  .ig-fab svg{width:22px;height:22px}

  .hero--image{
    position:relative;
    padding-bottom:56px;
    background:#fff;
  }
  .hero--image::before{
    content:"";display:block;position:absolute;inset:0;z-index:0;pointer-events:none;
    background:url("../images/hero-team-women.webp?v=cheer2") center 20vw/130% auto no-repeat;
    opacity:0.14;
    mask-image:linear-gradient(180deg,#000 0%,#000 122vw,transparent 180vw);
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 122vw,transparent 180vw);
  }
  .hero__content{text-align:center;margin-left:auto;margin-right:auto}
  .hero__lead{margin-left:auto;margin-right:auto}
  .hero__cta{justify-content:center}
  .hero__badges{
    position:absolute;left:0;right:0;bottom:12px;z-index:3;margin:0;
    gap:10px;justify-content:center;flex-wrap:nowrap;
  }
  .hero--image .hero__media{
    z-index:1;margin-top:-58vw;width:100%;max-width:none;margin-left:0;margin-right:0;
    mask-image:linear-gradient(180deg,transparent 0,#000 22%);
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 22%);
  }
  .hbadge{gap:6px;padding:0 8px}
  .hbadge svg{width:20px;height:20px}
  .hbadge__label{font-size:8.5px;letter-spacing:0.05em;line-height:1.15}
  .hbadge__sep{height:22px}

  .method__points{flex-wrap:wrap;gap:6px}
  .method__point{font-size:9.5px;padding:5px 8px;white-space:nowrap;letter-spacing:0.01em}

  .trust__grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .trust__grid .feature{padding:14px}
  .trust__grid .feature__icon{width:34px;height:34px;border-radius:10px;margin-bottom:10px}
  .trust__grid .feature__icon svg{width:20px;height:20px}
  .trust__grid .feature__title{font-size:13.5px;margin-bottom:5px}
  .trust__grid .feature__desc{font-size:11.5px;line-height:1.45}

  #product-showcase .product-grid,
  .worlds__grid,
  .pd-related{
    display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;
    padding-bottom:8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  #product-showcase .product-grid::-webkit-scrollbar,
  .worlds__grid::-webkit-scrollbar,
  .pd-related::-webkit-scrollbar{display:none}
  #product-showcase .product-grid>*,
  .worlds__grid>*,
  .pd-related>*{flex:0 0 76%;scroll-snap-align:center;min-width:0}
  .carousel-nav{display:flex;justify-content:flex-end;gap:8px;margin:0 0 14px}
  .carousel-nav button{
    width:36px;height:36px;border-radius:50%;border:1px solid var(--line-strong);
    background:var(--card);color:var(--text);font-size:16px;font-weight:800;
    cursor:pointer;display:flex;align-items:center;justify-content:center;
    transition:background .2s,transform .15s;
  }
  .carousel-nav button:active{transform:scale(0.9)}

  #shop-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;overflow:visible;padding-bottom:0}
  #shop-grid>*{flex:none;min-width:0}
  #shop-grid .product-card__media{padding:9px}
  #shop-grid .product-card__body{padding:11px 11px 13px}
  #shop-grid .product-card__flavor{font-size:9.5px;letter-spacing:0.12em}
  #shop-grid .product-card__name{font-size:13px;line-height:1.25}
  #shop-grid .product-card__size{font-size:10.5px}
  #shop-grid .chips{display:none}
  #shop-grid .price{font-size:16px}
  #shop-grid .price-old{font-size:11px}
  /* Auf schmalen Kacheln hat die Zeile "Preis + Streichpreis" zu wenig
     Platz: Fuss umbrechen lassen, Preisblock behaelt die volle Breite. */
  .product-card__foot{flex-wrap:wrap;row-gap:10px}
  .product-card__foot>div{min-width:0;flex:1 1 auto}
  #shop-grid .price-row{gap:6px}
  #shop-grid .per-portion{font-size:10px}
  #shop-grid .add-btn{width:32px;height:32px;border-radius:10px}
  #shop-grid .badge-stack{top:10px;left:10px;gap:5px}
  #shop-grid .badge{font-size:8.5px;padding:5px 8px;letter-spacing:0.11em}

  .paybar__grid{grid-template-columns:1fr;gap:0;padding:8px 18px;border-radius:18px}
  .paybar__grid>div{padding:16px 0}
  .paybar__grid>div+div{border-top:1px solid var(--line)}
  .paybar__grid .eyebrow{margin-bottom:10px}
  .paybar__line{font-size:13px;margin-bottom:6px}
  .paybar__sub{font-size:12px;line-height:1.5}
  .pay-icons{gap:8px}
  .pay-chip{height:32px;min-width:54px;border-radius:9px}

  .filterbar .filterbar__inner{padding:8px 16px 10px;gap:7px;flex-direction:column;align-items:stretch}
  .filterbar .filters{flex-wrap:wrap;overflow:visible;gap:5px;padding:0}
  .filterbar .filter-chip{font-size:10.5px;padding:5px 9px;flex:0 0 auto;border-radius:999px}
  .filterbar .shop-search{min-width:0;width:100%;margin:0;padding:6px 12px;gap:6px;box-sizing:border-box}
  .filterbar .shop-search input{font-size:12px}
  .filterbar .shop-search__ic{font-size:13px}

  #pd-root .pd-related{
    display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;
    padding-bottom:8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  #pd-root .pd-related::-webkit-scrollbar{display:none}
  #pd-root .pd-related>*{flex:0 0 76%;scroll-snap-align:center;min-width:0}
}

.add-btn.is-added{animation:addBtnReact .52s cubic-bezier(.2,.9,.2,1)}
.btn-cart.is-bump{animation:cartReact .42s cubic-bezier(.2,.9,.2,1)}
@media (prefers-reduced-motion:reduce){
  .add-btn.is-added,
  .btn-cart.is-bump{animation:none}
}

/* =================================================================
   Founder Story (/ueber-uns/), Startseiten-Teaser und Funding-Foto
   Neu mit v=light-v106 (31.07.2026). Nutzt die :root-Variablen oben.
   ================================================================= */
.story{padding:52px 0 92px}
.story__grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:52px;align-items:start}
.story__portrait{position:sticky;top:96px}
.story__monogram{aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;background:linear-gradient(165deg,#17171d,#2a2a33);color:var(--accent);font-size:62px;font-weight:800;letter-spacing:.04em;border-radius:20px}
.story__photo{width:100%;border-radius:20px;display:block}
.story__caption{margin-top:12px;font-size:13.5px;color:var(--text-mute);text-align:center}
.story__body p{margin:0 0 16px;font-size:16.5px;line-height:1.75;color:var(--text-soft);max-width:640px}
.story__hi{font-size:22px;font-weight:800;color:var(--text)}
.story__quote{border-left:3px solid var(--accent);padding:6px 0 6px 20px;margin:28px 0}
.story__quote p{margin:0;font-size:20px;font-weight:800;color:var(--text);line-height:1.55}
.story__method{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 24px}
.story__method-value{border:1px solid var(--line-strong);background:var(--card);border-radius:999px;padding:9px 16px;font-size:14px;font-weight:600;color:var(--text-soft)}
.story__method-value b{font-weight:800;color:var(--ink-accent)}
.story__welcome{font-size:24px;font-weight:800;color:var(--text);margin:30px 0 22px}
@media (max-width:880px){
  .story{padding:40px 0 72px}
  .story__grid{grid-template-columns:1fr;gap:26px}
  .story__portrait{position:static;max-width:250px}
}

.story-teaser{padding:0 0 72px}
.story-teaser__panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:26px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px 32px}
.story-teaser__monogram{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:linear-gradient(165deg,#17171d,#2a2a33);color:var(--accent);font-weight:800;font-size:25px;border-radius:50%}
.story-teaser__text p{margin:0}
.story-teaser__title{font-size:19px;font-weight:800;color:var(--text)}
.story-teaser__line{color:var(--text-soft);font-size:15px;line-height:1.6;margin-top:4px}
@media (max-width:880px){
  .story-teaser__panel{grid-template-columns:auto minmax(0,1fr);row-gap:18px}
  .story-teaser__panel > .btn{grid-column:1 / -1;justify-self:start}
}

/* Foto neben dem Anmeldeformular im Team-Funding-Block */
.funding__apply{display:grid;grid-template-columns:340px minmax(0,1fr);gap:26px;align-items:stretch;margin-top:34px}
.funding__apply-photo{position:relative;border-radius:20px;overflow:hidden}
.funding__apply-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}
.funding__apply-caption{position:absolute;left:14px;right:14px;bottom:14px;margin:0;background:rgba(20,20,26,.84);color:#fff;border-radius:14px;padding:12px 16px;font-size:14px;line-height:1.5}
.funding__apply .funding__form{margin-top:0}
.funding__contact-line{margin:16px 0 0;font-size:14.5px;color:var(--text-mute)}
.funding__contact-line a{font-weight:700}
@media (max-width:880px){
  .funding__apply{grid-template-columns:1fr}
  .funding__apply-photo{position:relative;aspect-ratio:4/5;max-height:440px}
}

/* Erics Portraitfoto (ersetzt seit 31.07.2026 die EK-Monogramme).
   Die Monogramm-Stile bleiben als Rueckfallebene stehen. */
.story-teaser__photo{width:72px;height:72px;border-radius:50%;object-fit:cover;display:block}

/* =================================================================
   Team Funding FAQ (/team-funding-faq/) + FAQ-Zeile unterm Formular
   Neu mit v=light-v109 (31.07.2026). Exklusives Aufklappen kommt aus
   dem details-name-Attribut plus Skript auf der Seite.
   ================================================================= */
.faq{padding:8px 0 88px}
.faq__list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq__item{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.faq__item[open]{border-color:var(--line-strong);box-shadow:0 4px 14px rgba(0,0,0,.06)}
.faq__item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px}
.faq__item summary::-webkit-details-marker{display:none}
.faq__q{font-weight:700;color:var(--text);font-size:15.5px;line-height:1.5}
.faq__icon{flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;line-height:1;transition:transform .2s ease}
.faq__item[open] .faq__icon{transform:rotate(45deg)}
.faq__answer{padding:0 20px 18px;color:var(--text-soft);font-size:15px;line-height:1.7}
.faq__answer p{margin:0 0 10px;max-width:640px}
.faq__answer p:last-child{margin-bottom:0}
.faq__cta{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.funding__faq-row{margin-top:18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.funding__faq-row .funding__contact-line{margin:0}

/* Sprungziel "Jetzt Verein anmelden" (FAQ-Seite): das Formular soll beim
   Anspringen nicht unter dem klebenden Header verschwinden. */
#verein-anmelden{scroll-margin-top:96px}

/* =================================================================
   Team-Funding-Sektion: Umbau nach Founder-Briefing (v=light-v111)
   Kopf mit CTA + Haekchen, 4-Schritte-Flow mit Pfeilen, Beispielrechner
   mit Reglern, Vertrauensblock. Baut auf .feature/.funding-card,
   .program-panel, .usage__tag und .paybar__line auf.
   ================================================================= */
.funding__cta{margin-top:22px}
.funding .btn{min-height:48px}
.funding__ticks{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:16px}
.funding__tick{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--text)}

.funding__flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-top:34px}
.funding__flow .feature{position:relative;transition:transform .22s ease,border-color .2s ease,box-shadow .22s ease}
.funding__flow .feature:hover{transform:translateY(-3px)}
.funding__flow-num{margin:0 0 10px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint)}
@media (min-width:881px){
  .funding__flow{grid-template-columns:repeat(4,1fr);gap:26px}
  .funding__flow .feature:not(:last-child)::after{content:"→";position:absolute;top:50%;right:-23px;transform:translateY(-50%);font-size:17px;font-weight:800;color:var(--text-faint)}
}
@media (max-width:640px){
  .funding__flow{gap:30px}
  .funding__flow .feature:not(:last-child)::after{content:"↓";position:absolute;left:50%;bottom:-25px;transform:translateX(-50%);font-size:16px;font-weight:800;color:var(--text-faint)}
}

.funding__emotion-line{margin:6px 0 0;font-size:15px;line-height:1.65;color:var(--text-soft);max-width:520px}

.funding-calc input[type="range"]{width:100%;accent-color:var(--accent);margin:6px 0 20px;cursor:pointer}
.funding-calc__row{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.funding-calc__row label{font-size:14px;font-weight:700;color:var(--text)}
.funding-calc__row output{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--ink-accent);white-space:nowrap}
.funding-calc__results{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:16px}
.funding-calc__result{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.funding-calc__result span{font-size:13.5px;color:var(--text-mute)}
.funding-calc__result strong{font-family:var(--font-display);font-size:20px;letter-spacing:-.01em;white-space:nowrap}
.funding-calc__result--main strong{font-size:27px;color:var(--ink-accent)}
.funding-calc__note{margin:14px 0 0;font-size:11.5px;color:var(--text-faint);line-height:1.5}

.funding__why{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:clamp(22px,2.6vw,32px);box-shadow:var(--shadow-md);margin-top:20px}
.funding__why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2px 26px;margin-bottom:14px}
.funding__why .funding-note{margin-bottom:18px}

/* Kopf der Funding-Sektion ist zentriert (Z. 646) — CTA-Zeile und
   Haekchen muessen als Flex-Container eigens mitzentriert werden. */
.funding__head .btn-row{justify-content:center}
.funding__head .funding__ticks{justify-content:center}

/* Die Ablauf-Pfeile stehen AUSSERHALB der Karten — .funding-card bringt
   aber overflow:hidden mit und schneidet sie ab. Hier gefahrlos oeffnen:
   die Lime-Lichtkante (:before) laeuft an beiden Enden transparent aus,
   es kann also nichts ueberstehen. Gilt nur fuer die Flow-Karten. */
.funding__flow .funding-card{overflow:visible}

/* =================================================================
   TEAM FUNDING TEASER (Startseite) – "Dark Split"
   Mobile-first, ab 900px zweispaltig. Ersetzt die alte .funding-Sektion.
   ================================================================= */
.tf-teaser{
  --tf-ink:#141310; --tf-gold:#c6a15b; --tf-gold-hover:#d9b672;
  --tf-cream:#f8f7f3; --tf-muted:#b8b3a8; --tf-dim:#8d887d; --tf-line:#322f28;
  background:var(--tf-ink); color:var(--tf-cream);
  font-family:var(--font-body); overflow:hidden;
}
.tf-ticker{height:30px;background:var(--tf-gold);display:flex;align-items:center;overflow:hidden}
.tf-ticker__track{
  display:flex;gap:26px;white-space:nowrap;padding-left:26px;
  font-family:var(--font-display);font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  color:var(--tf-ink);animation:tfMarquee 18s linear infinite;
}
@keyframes tfMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tf-ticker__track{animation:none}}

.tf-media{position:relative;height:240px;background:#22201b}
.tf-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.tf-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,19,16,.05) 35%,var(--tf-ink) 100%)}

.tf-body{padding:0 24px 36px;display:flex;flex-direction:column;gap:18px}
.tf-eyebrow{
  display:flex;align-items:center;gap:10px;margin:0;
  font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--tf-gold);
}
.tf-eyebrow::before{content:"";width:18px;height:1px;background:var(--tf-gold)}
.tf-title{margin:0;font-family:var(--font-display);font-size:34px;line-height:1.05;font-weight:800;letter-spacing:-.025em;color:var(--tf-cream);text-wrap:balance}
.tf-lead{margin:0;font-size:16px;line-height:1.55;color:var(--tf-muted);text-wrap:pretty}

.tf-stats{display:flex;gap:18px;border-top:1px solid var(--tf-line);border-bottom:1px solid var(--tf-line);padding:18px 0}
.tf-stat{flex:1;display:flex;flex-direction:column;gap:5px}
.tf-stat + .tf-stat{border-left:1px solid var(--tf-line);padding-left:18px}
.tf-stat__value{font-family:var(--font-display);font-size:32px;font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--tf-gold)}
.tf-stat__label{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tf-dim)}

.tf-cta{
  display:flex;align-items:center;justify-content:center;gap:10px;
  min-height:56px;padding:18px 20px;border-radius:3px;
  background:var(--tf-gold);color:var(--tf-ink);text-decoration:none;
  font-family:var(--font-display);font-size:15px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  transition:background .2s ease;
}
.tf-cta:hover,.tf-cta:focus-visible{background:var(--tf-gold-hover);color:var(--tf-ink)}
.tf-link{display:none}
.tf-note{display:none}

@media (min-width:900px){
  .tf-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:520px}
  .tf-body{order:1;padding:72px 64px 64px;gap:28px;display:flex;flex-direction:column;justify-content:center}
  .tf-title{font-size:clamp(40px,4vw,60px);line-height:1.02}
  .tf-lead{font-size:19px;max-width:46ch}
  .tf-eyebrow{font-size:12px}
  .tf-eyebrow::before{width:28px}

  .tf-stats{gap:40px;border:0;padding:4px 0}
  .tf-stat{flex:0 0 auto}
  .tf-stat + .tf-stat{padding-left:40px}
  .tf-stat__value{font-size:44px}
  .tf-stat__label{font-size:12px;letter-spacing:.14em}

  .tf-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
  .tf-cta{display:inline-flex;padding:18px 30px}
  .tf-link{
    display:inline-block;font-size:14px;font-weight:600;color:var(--tf-muted);
    text-decoration:none;border-bottom:1px solid #4a463c;padding-bottom:2px;transition:color .2s,border-color .2s;
  }
  .tf-link:hover{color:var(--tf-cream);border-bottom-color:var(--tf-gold)}

  .tf-media{order:2;height:auto}
  .tf-media img{object-position:center}
  .tf-media::after{background:linear-gradient(90deg,var(--tf-ink) 0%,rgba(20,19,16,.15) 38%,rgba(20,19,16,0) 100%)}
  .tf-note{
    display:flex;flex-direction:column;gap:6px;margin:0;
    position:absolute;left:40px;right:40px;bottom:40px;z-index:1;
    background:rgba(20,19,16,.82);backdrop-filter:blur(6px);
    border-left:3px solid var(--tf-gold);padding:20px 24px;
  }
  .tf-note__label{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--tf-gold)}
  .tf-note__text{font-size:17px;font-weight:600;line-height:1.4;color:var(--tf-cream)}
  .tf-note__text strong{color:var(--tf-gold);font-weight:800}
  .tf-ticker__track{gap:40px;padding-left:40px;font-size:11px;letter-spacing:.22em;animation-duration:28s}
}

/* =================================================================
   TEAM FUNDING LANDINGPAGE (/team-funding/) – .tfp-*
   Mobile-first (App-Ansicht), ab 900px Desktop-Layout.
   ================================================================= */
main.tfp{background:#f4f2ed}
.tfp-wrap{max-width:1240px;margin:0 auto;padding-left:16px;padding-right:16px;width:100%}
.tfp section[id],.tfp [id]{scroll-margin-top:96px}

@media (max-width:899px){
  .tfp-only-d{display:none !important}
  main.tfp{padding-bottom:74px}
}
@media (min-width:900px){
  .tfp-only-m{display:none !important}
  .tfp-wrap{padding-left:40px;padding-right:40px}
  .tfp-eyebrow-num{display:none}
  .tfp-eyebrow{font-size:11px;letter-spacing:.22em}
}

.tfp-eyebrow{
  margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--ink-accent);font-weight:700;
}
.tfp-h2{margin:10px 0 0;font-family:var(--font-display);font-weight:800;font-size:27px;line-height:1.06;letter-spacing:-.028em;color:#211d17}
.tfp-lead{margin:9px 0 0;font-size:13.5px;line-height:1.5;color:#6f695d;text-wrap:pretty}
.tfp-mono-label{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#6f695d}
.tfp-mono-label--dim{color:rgba(255,255,255,.5)}
.tfp-fineprint{margin:16px 0 0;font-size:12.5px;line-height:1.5;color:#a9a396}
.tfp-textlink{color:var(--ink-accent);font-weight:600}
.tfp-textlink:hover{color:#4e21a0}

.tfp-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:9px;vertical-align:1px;animation:tfpPulse 2.4s infinite}
@keyframes tfpPulse{0%{box-shadow:0 0 0 0 rgba(199,240,58,.55)}70%{box-shadow:0 0 0 12px rgba(199,240,58,0)}100%{box-shadow:0 0 0 0 rgba(199,240,58,0)}}
@keyframes tfpIconFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3.5px)}}

.tfp-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:0;border-radius:999px;padding:15px 18px;cursor:pointer;
  font-family:var(--font-body);font-weight:700;font-size:14px;line-height:1;text-decoration:none;
  transition:transform .18s ease,filter .18s ease,background .18s ease;
}
.tfp-btn:hover{transform:scale(1.03)}
.tfp-btn:active{transform:scale(.97)}
.tfp-btn--lime{background:var(--accent);color:#14141a}
.tfp-btn--lime:hover{filter:brightness(1.06)}
.tfp-btn--glass{border:1.5px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08);color:#fff;font-weight:600;backdrop-filter:blur(8px)}
.tfp-btn--glass:hover{background:rgba(255,255,255,.2)}
.tfp-btn--violet{background:var(--ink-accent);color:#fff}
.tfp-btn--violet:hover{filter:brightness(1.1)}
.tfp-btn--back{border:1.5px solid rgba(33,29,23,.16);background:#fff;color:#211d17;font-weight:600}
.tfp-btn--back:hover{background:#f4f2ed}

.tfp-card{background:#fff;border:1px solid rgba(33,29,23,.08);border-radius:22px}
.tfp-check{flex:none;width:22px;height:22px;border-radius:50%;background:#efe8fc;color:var(--ink-accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:12px}
.tfp-dash-note{margin-top:12px;background:rgba(255,255,255,.6);border:1px dashed rgba(33,29,23,.18);border-radius:16px;padding:14px 15px;font-size:12px;line-height:1.5;color:#4d483f}
.tfp-dash-note strong{color:#211d17}

.tfp-panel-dark{border-radius:24px;padding:20px;background:linear-gradient(150deg,#14141a,#251f31);position:relative;overflow:hidden;color:#fff}
.tfp-panel-dark__glow{position:absolute;right:-50px;top:-50px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(199,240,58,.16),transparent 68%)}
.tfp-panel-dark__inner{position:relative}

.tfp-bar{height:6px;border-radius:99px;background:rgba(255,255,255,.1);margin-top:8px;overflow:hidden}
.tfp-bar__fill{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--ink-accent),var(--accent));transition:width .6s cubic-bezier(.22,1,.36,1)}

/* ---------- Hero ---------- */
.tfp-hero{position:relative;overflow:hidden;background:#211d17;display:flex;flex-direction:column;justify-content:flex-end;min-height:512px}
.tfp-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 38%}
.tfp-hero__shade{position:absolute;inset:0;background:linear-gradient(178deg,rgba(20,20,26,.62) 0%,rgba(20,20,26,.12) 34%,rgba(20,20,26,.72) 74%,rgba(20,20,26,.94) 100%)}
.tfp-hero__inner{position:relative;width:100%;padding:120px 22px 30px}
.tfp-hero__eyebrow{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center}
.tfp-hero__title{margin:12px 0 0;font-family:var(--font-display);font-weight:800;font-size:39px;line-height:.97;letter-spacing:-.028em;color:#fff;text-wrap:balance}
.tfp-hero__lead{margin:12px 0 0;font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.78);max-width:340px;text-wrap:pretty}
.tfp-hero__cta{display:flex;gap:9px;margin-top:18px}
.tfp-hero__cta .tfp-btn--lime{flex:1}
.tfp-hero__ticks{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:30px;font-family:var(--font-mono);font-size:12.5px;color:rgba(255,255,255,.62)}
.tfp-hero__card{background:rgba(255,255,255,.94);backdrop-filter:blur(20px);border-radius:28px;padding:28px;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.tfp-hero__big{margin:14px 0 0;display:flex;align-items:baseline;gap:8px;font-family:var(--font-display);font-weight:800;font-size:66px;line-height:.88;letter-spacing:-.045em;color:#211d17}
.tfp-hero__euro{font-size:30px;font-weight:800;color:var(--ink-accent)}
.tfp-hero__card-sub{margin:12px 0 0;font-size:14px;line-height:1.5;color:#6f695d}
.tfp-hero__card-sub strong{color:#211d17}
.tfp-hero__split{display:flex;gap:10px;margin-top:20px;padding-top:20px;border-top:1px dashed rgba(33,29,23,.16)}
.tfp-hero__split > div{flex:1}
.tfp-hero__split strong{display:block;font-family:var(--font-display);font-weight:800;font-size:20px;color:#211d17}
.tfp-hero__split span{display:block;margin-top:6px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#6f695d}
.tfp-hero__vline{width:1px;background:rgba(33,29,23,.1);flex:none}
.tfp-hero__adjust{display:block;width:100%;margin-top:20px;background:#f4f2ed;color:#211d17;font-weight:600;font-size:13px;text-align:center;padding:14px;border-radius:999px;transition:background .18s ease}
.tfp-hero__adjust:hover{background:#e9e6dd}

@media (min-width:900px){
  .tfp-hero{min-height:660px;justify-content:center}
  .tfp-hero__img{object-position:50% 34%}
  .tfp-hero__shade{background:linear-gradient(95deg,rgba(20,20,26,.9) 0%,rgba(20,20,26,.74) 38%,rgba(20,20,26,.28) 68%,rgba(20,20,26,.5) 100%)}
  /* Seit 06.08. ohne Live-Rechner-Karte: eine Spalte, Text links,
     das Huddle-Foto bleibt rechts frei sichtbar. */
  .tfp-hero__inner{max-width:1240px;margin:0 auto;padding:80px 40px;display:grid;grid-template-columns:1fr;align-items:center}
  .tfp-hero__eyebrow{font-size:11px;letter-spacing:.22em}
  .tfp-hero__title{margin-top:20px;font-size:clamp(48px,5.2vw,76px);line-height:.94;letter-spacing:-.035em;max-width:14ch}
  .tfp-hero__lead{margin-top:22px;font-size:18px;line-height:1.55;max-width:52ch}
  .tfp-hero__cta{gap:12px;margin-top:32px}
  .tfp-hero__cta .tfp-btn--lime{flex:0 0 auto;padding:18px 30px;font-size:15px}
  .tfp-hero__cta .tfp-btn--glass{padding:18px 28px;font-size:15px}
}

/* ---------- Schritte ---------- */
.tfp-steps{padding:40px 0 6px}
.tfp-steps__flow{margin-top:18px;display:flex;flex-direction:column;align-items:center}
.tfp-step{
  width:100%;background:#fff;border:1px solid rgba(33,29,23,.09);border-radius:22px;padding:18px;
  display:flex;align-items:center;gap:16px;box-shadow:0 10px 24px -16px rgba(33,29,23,.28);
  transition:transform .25s ease,box-shadow .25s ease;
}
.tfp-step:hover{transform:translateY(-4px);box-shadow:0 18px 36px -16px rgba(33,29,23,.4)}
.tfp-step__head{flex:none;display:flex;align-items:center}
.tfp-step__tile{
  flex:none;width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;
  color:var(--ink-accent);background:linear-gradient(150deg,#efe8fc 0%,#ffffff 130%);
  box-shadow:inset 0 0 0 1px rgba(33,29,23,.05);animation:tfpIconFloat 4s ease-in-out infinite;
}
.tfp-step:nth-of-type(2) .tfp-step__tile{animation-delay:.45s}
.tfp-step:nth-of-type(3) .tfp-step__tile{animation-delay:.9s}
.tfp-step:nth-of-type(4) .tfp-step__tile{animation-delay:1.35s}
.tfp-step__tile--lime{color:var(--accent);background:linear-gradient(150deg,#14141a,#332e44)}
.tfp-step__num{display:none}
.tfp-step__body{min-width:0}
.tfp-step__label{margin:0;font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--ink-accent)}
.tfp-step__title{margin:5px 0 0;font-family:var(--font-display);font-weight:800;font-size:17px;line-height:1.15;letter-spacing:-.015em;color:#211d17}
.tfp-step__text{margin:5px 0 0;font-size:13px;line-height:1.5;color:#6f695d;text-wrap:pretty}
.tfp-step-arrow{display:block;margin:7px 0;color:var(--ink-accent);opacity:.55;line-height:0}
.tfp-step-arrow__r{display:none}

@media (min-width:900px){
  .tfp-steps{background:linear-gradient(100deg,#efece6 0%,#e8edc7 46%,#f0dedd 100%);padding:86px 0}
  .tfp-steps__flow{margin-top:44px;display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr 28px 1fr;gap:12px;align-items:center}
  .tfp-step{display:block;background:rgba(255,255,255,.72);padding:26px;align-self:stretch;box-shadow:none}
  .tfp-step:hover{transform:translateY(-5px);box-shadow:0 20px 38px -18px rgba(33,29,23,.38)}
  .tfp-step__head{display:flex;align-items:center;justify-content:space-between}
  .tfp-step__num{display:block;font-family:var(--font-mono);font-size:12px;font-weight:700;color:rgba(33,29,23,.35)}
  .tfp-step__label{display:none}
  .tfp-step__title{margin-top:18px;font-size:20px;line-height:1.2}
  .tfp-step__text{margin-top:9px;font-size:14px;line-height:1.55}
  .tfp-step-arrow{margin:0;justify-self:center}
  .tfp-step-arrow__d{display:none}
  .tfp-step-arrow__r{display:block}
  .tfp-steps .tfp-h2{font-size:46px;line-height:1.04;letter-spacing:-.032em;max-width:20ch;margin-top:16px}
}

/* ---------- Fundingübersicht ---------- */
.tfp-overview{padding:38px 0 0}
.tfp-checklist{margin-top:16px;background:#fff;border:1px solid rgba(33,29,23,.08);border-radius:22px;padding:4px 0}
.tfp-checklist__item{display:flex;gap:12px;align-items:flex-start;padding:13px 17px;border-bottom:1px solid rgba(33,29,23,.06)}
.tfp-checklist__item:last-child{border-bottom:0}
.tfp-checklist__item > span:last-child{font-size:13px;line-height:1.5;color:#6f695d;text-wrap:pretty}
.tfp-checklist__item strong{font-weight:700;color:#211d17}
.tfp-overview__demo{margin-top:14px}
.tfp-demo__top{display:flex;align-items:center;justify-content:space-between}
.tfp-demo__top .tfp-mono-label{display:flex;align-items:center;font-size:9px;letter-spacing:.16em}
.tfp-demo__badge{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4);border:1px dashed rgba(255,255,255,.25);padding:4px 7px;border-radius:6px}
.tfp-demo__balance{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:16px}
.tfp-demo__value{margin:7px 0 0;font-family:var(--font-display);font-weight:800;font-size:38px;line-height:1;letter-spacing:-.03em;color:var(--accent)}
.tfp-demo__code{font-family:var(--font-mono);font-weight:700;font-size:11px;color:var(--accent);border:1px dashed rgba(199,240,58,.45);padding:8px 10px;border-radius:10px;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tfp-demo__ledger{margin-top:16px;border-top:1px solid rgba(255,255,255,.12)}
.tfp-demo__row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.tfp-demo__row:last-child{border-bottom:0}
.tfp-demo__row-title{margin:0;font-weight:600;font-size:12px;line-height:1.2;color:#fff}
.tfp-demo__row-title--soft{color:rgba(255,255,255,.85)}
.tfp-demo__row-date{margin:4px 0 0;font-family:var(--font-mono);font-size:9.5px;color:rgba(255,255,255,.4)}
.tfp-demo__plus{font-family:var(--font-mono);font-weight:600;font-size:12.5px;color:var(--accent)}
.tfp-demo__minus{font-family:var(--font-mono);font-weight:600;font-size:12.5px;color:#fff}
.tfp-demo__goal{margin-top:12px;display:flex;justify-content:space-between;align-items:center}
.tfp-demo__goal-name{font-weight:600;font-size:11.5px;color:#fff}

@media (min-width:900px){
  /* Seit 06.08. ohne Beispielansicht-Panel: eine kompakte Textspalte. */
  .tfp-overview{padding:72px 0 0}
  .tfp-overview__grid{max-width:760px}
  .tfp-overview .tfp-h2{font-size:46px;line-height:1.04;letter-spacing:-.032em;max-width:16ch;margin-top:16px}
  .tfp-overview .tfp-lead{margin-top:16px;font-size:16px;line-height:1.6;max-width:50ch}
  .tfp-checklist{margin-top:28px;padding:6px 0}
  .tfp-checklist__item{gap:14px;padding:15px 22px}
  .tfp-checklist__item > span:last-child{font-size:15px;line-height:1.55}
  .tfp-check{width:24px;height:24px;font-size:13px}
  .tfp-dash-note{margin-top:16px;border-radius:20px;padding:18px 22px;font-size:14.5px;line-height:1.6}
  .tfp-overview__demo{margin-top:0;border-radius:28px;padding:30px;box-shadow:0 30px 60px -28px rgba(20,20,26,.55)}
  .tfp-panel-dark__glow{right:-60px;top:-60px;width:240px;height:240px}
  .tfp-demo__top .tfp-mono-label{font-size:10px}
  .tfp-demo__badge{font-size:9px;padding:5px 8px}
  .tfp-demo__balance{gap:12px;margin-top:22px}
  .tfp-demo__value{margin-top:9px;font-size:52px;letter-spacing:-.035em}
  .tfp-demo__code{font-size:13px;padding:10px 13px;border-radius:11px;max-width:170px}
  .tfp-demo__ledger{margin-top:22px}
  .tfp-demo__row{padding:13px 0}
  .tfp-demo__row-title{font-size:13.5px}
  .tfp-demo__row-date{margin-top:5px;font-size:10px}
  .tfp-demo__plus,.tfp-demo__minus{font-size:14px}
  .tfp-demo__goal{margin-top:16px}
  .tfp-demo__goal-name{font-size:13px}
  .tfp-overview .tfp-bar{height:7px;margin-top:10px}
}

/* ---------- Rechner ----------
   Eigener Hintergrund seit 06.08.: weiche Lime-/Violett-Schleier auf warmem
   Papierton, damit der Abschnitt zwischen den beiden dunklen Sektionen
   (Showcase / Euer Ziel) nicht kahl wirkt. */
.tfp-calc{position:relative;overflow:hidden;padding:40px 0 44px;
  background:
    radial-gradient(72% 58% at 88% 8%,rgba(199,240,58,.26),transparent 68%),
    radial-gradient(64% 55% at 2% 96%,rgba(106,52,201,.13),transparent 70%),
    linear-gradient(180deg,#f7f5f0 0%,#efece6 100%)}
.tfp-sliders{margin-top:20px;padding:20px;background:rgba(255,255,255,.86);backdrop-filter:blur(6px);box-shadow:0 12px 30px -22px rgba(33,29,23,.4);transition:transform .25s ease,box-shadow .25s ease}
.tfp-sliders:hover{transform:translateY(-3px);box-shadow:0 16px 32px -18px rgba(33,29,23,.3)}
.tfp-sliders__row{display:flex;align-items:baseline;justify-content:space-between}
.tfp-sliders__row--gap{margin-top:20px}
.tfp-sliders__row label{font-weight:600;font-size:12.5px;color:#211d17}
.tfp-sliders__row output{font-family:var(--font-mono);font-weight:700;font-size:15px;color:var(--ink-accent)}
.tfp-sliders__scale{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:9.5px;color:#a9a396;margin-top:2px}
.tfp-sliders__note{margin:22px 0 0;font-family:var(--font-mono);font-size:12px;line-height:1.5;color:#a9a396}

.tfp-range{
  --tfp-fill:50%;
  -webkit-appearance:none;appearance:none;width:100%;height:30px;margin:8px 0 0;
  background:transparent;cursor:pointer;
}
.tfp-range::-webkit-slider-runnable-track{
  height:7px;border-radius:99px;
  background:linear-gradient(90deg,var(--ink-accent) 0 var(--tfp-fill),#e9e6dd var(--tfp-fill) 100%);
}
.tfp-range::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:26px;height:26px;margin-top:-9.5px;border-radius:50%;
  background:#fff;border:2.5px solid var(--ink-accent);box-shadow:0 3px 10px rgba(33,29,23,.24);
}
.tfp-range::-moz-range-track{height:7px;border-radius:99px;background:#e9e6dd}
.tfp-range::-moz-range-progress{height:7px;border-radius:99px;background:var(--ink-accent)}
.tfp-range::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#fff;border:2.5px solid var(--ink-accent);box-shadow:0 3px 10px rgba(33,29,23,.24)}

.tfp-result{margin-top:22px;padding:22px;border-radius:20px;box-shadow:0 26px 50px -28px rgba(20,20,26,.6)}
.tfp-result__row{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:rgba(255,255,255,.62)}
.tfp-result__row + .tfp-result__row{margin-top:9px}
.tfp-result__row span:last-child{font-family:var(--font-mono)}
.tfp-result__row--line{padding-bottom:13px;border-bottom:1px solid rgba(255,255,255,.14)}
.tfp-result__label{margin-top:14px}
.tfp-result__value{margin:12px 0 0;font-family:var(--font-display);font-weight:800;font-size:44px;line-height:1;letter-spacing:-.04em;color:var(--accent)}
.tfp-example{margin-top:12px;padding:20px}
.tfp-example__tiles{display:flex;gap:14px;margin-top:18px}
.tfp-example__tile{flex:1;border-radius:16px;padding:18px}
.tfp-example__tile strong{display:block;font-family:var(--font-display);font-weight:800;font-size:26px}
.tfp-example__tile span{display:block;margin-top:8px;font-weight:500;font-size:12px;line-height:1.3}
.tfp-example__tile--violet{background:#efe8fc}
.tfp-example__tile--violet strong{color:var(--ink-accent)}
.tfp-example__tile--violet span{color:#4a3a6b}
.tfp-example__tile--lime{background:#eef7cd}
.tfp-example__tile--lime strong,.tfp-example__tile--lime span{color:#4b5c14}

@media (min-width:900px){
  .tfp-calc{padding:86px 0 92px}
  /* Ohne die frühere Beispielkarte steht rechts nur noch das dunkle
     Ergebnis-Panel: mittig ausrichten, sonst klebt es oben. */
  .tfp-calc__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .tfp-calc .tfp-h2{font-size:46px;line-height:1.04;letter-spacing:-.032em;max-width:16ch;margin-top:16px}
  .tfp-calc .tfp-lead{margin-top:16px;font-size:16px;line-height:1.6;max-width:46ch}
  .tfp-sliders{margin-top:36px;padding:30px;border-radius:24px}
  .tfp-sliders__row label{font-size:15px}
  .tfp-sliders__row output{font-size:20px}
  .tfp-sliders__row--gap{margin-top:26px}
  .tfp-sliders__scale{font-size:10.5px}
  .tfp-range{height:34px;margin-top:10px}
  .tfp-range::-webkit-slider-runnable-track{height:8px}
  .tfp-range::-webkit-slider-thumb{width:30px;height:30px;margin-top:-11px;border-width:3px}
  .tfp-range::-moz-range-track,.tfp-range::-moz-range-progress{height:8px}
  .tfp-range::-moz-range-thumb{width:30px;height:30px;border-width:3px}
  .tfp-calc__right{display:flex;flex-direction:column;gap:16px}
  .tfp-result{margin-top:0;padding:38px;border-radius:26px}
  .tfp-result__row{font-size:15px}
  .tfp-result__row + .tfp-result__row{margin-top:14px}
  .tfp-result__row span:last-child{font-size:16px}
  .tfp-result__row--line{padding-bottom:22px}
  .tfp-result__label{margin-top:24px}
  .tfp-result__value{font-size:54px}
  .tfp-example{margin-top:0;padding:28px;border-radius:24px}
  .tfp-fineprint{font-size:12.5px}
}

/* ---------- Euer Ziel (mobil hell, ab 900px dunkel) ---------- */
.tfp-goal{position:relative;overflow:hidden;padding:38px 0 0}
.tfp-goal__glow{display:none}
.tfp-goal__chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.tfp-chip{
  border-radius:999px;padding:10px 14px;font-weight:600;font-size:12.5px;cursor:pointer;
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
  border:1.5px solid rgba(33,29,23,.14);background:#fff;color:#211d17;
}
.tfp-chip:hover{transform:scale(1.05)}
.tfp-chip:active{transform:scale(.96)}
.tfp-chip.is-active{background:var(--ink-accent);color:#fff;border-color:var(--ink-accent)}
/* Beispiel-Screenshot des Ziel-Widgets aus dem Vereinsbereich */
.tfp-goal__shot{margin:18px 0 0}
.tfp-goal__shot img{display:block;width:100%;max-width:440px;height:auto;border-radius:24px;border:1px solid rgba(33,29,23,.15);box-shadow:0 24px 48px -20px rgba(33,29,23,.35)}
.tfp-goal__shot-label{margin-top:12px;color:#a9a396;font-size:9.5px}
.tfp-goal__card{margin-top:18px;background:#fff;border:1px solid rgba(33,29,23,.08);border-radius:22px;padding:20px;position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.tfp-goal__card:hover{transform:translateY(-3px);box-shadow:0 16px 32px -18px rgba(33,29,23,.3)}
.tfp-goal__card-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.tfp-goal__name{font-family:var(--font-display);font-weight:700;font-size:16px;line-height:1.2;color:#211d17}
.tfp-goal__target{font-family:var(--font-mono);font-weight:700;font-size:13px;color:#6f695d}
.tfp-bar--goal{height:12px;margin-top:14px;background:#efece6}
.tfp-goal__meta{display:flex;justify-content:space-between;margin-top:10px}
.tfp-goal__pct{font-family:var(--font-mono);font-weight:700;font-size:12px;color:var(--ink-accent)}
.tfp-goal__rest{font-family:var(--font-mono);font-size:12px;color:#6f695d}
.tfp-goal__hint{margin:14px 0 0;font-size:13px;line-height:1.5;color:#6f695d;text-wrap:pretty}

@media (min-width:900px){
  .tfp-goal{background:#211d17;padding:86px 0}
  .tfp-goal__glow{display:block;position:absolute;right:-120px;top:-120px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(199,240,58,.14),transparent 66%)}
  .tfp-goal__grid{position:relative;display:grid;grid-template-columns:1fr 460px;gap:64px;align-items:center}
  .tfp-eyebrow--goal{color:var(--accent)}
  .tfp-goal__title{color:#fff;font-size:46px;line-height:1.04;letter-spacing:-.032em;max-width:16ch;margin-top:16px}
  .tfp-goal__lead{color:rgba(255,255,255,.62);margin-top:16px;font-size:16px;line-height:1.6;max-width:46ch}
  .tfp-goal__chips{gap:9px;margin-top:32px}
  .tfp-chip{padding:13px 20px;font-size:14px;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:rgba(255,255,255,.8)}
  .tfp-chip.is-active{background:var(--ink-accent);color:#fff;border-color:var(--ink-accent)}
  .tfp-goal__shot{margin-top:0;justify-self:center}
  .tfp-goal__shot img{max-width:460px;border:1px solid rgba(255,255,255,.16);box-shadow:0 34px 70px -30px rgba(0,0,0,.7)}
  .tfp-goal__shot-label{color:rgba(255,255,255,.45);text-align:center}
  .tfp-goal__card{margin-top:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:34px;backdrop-filter:blur(10px);transition:transform .25s ease,border-color .25s ease}
  .tfp-goal__card:hover{transform:translateY(-4px);border-color:rgba(199,240,58,.35);box-shadow:none}
  .tfp-goal__name{font-size:24px;letter-spacing:-.02em;color:#fff}
  .tfp-goal__target{font-size:15px;color:rgba(255,255,255,.6)}
  .tfp-bar--goal{height:16px;margin-top:22px;background:rgba(255,255,255,.1)}
  .tfp-goal__meta{margin-top:14px}
  .tfp-goal__pct{font-size:14px;color:var(--accent)}
  .tfp-goal__rest{font-size:14px;color:rgba(255,255,255,.55)}
  .tfp-goal__hint{margin-top:22px;font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.66)}
}

/* ---------- Code teilen ---------- */
.tfp-share{padding:38px 0 0}
.tfp-share__panel{margin-top:18px;background:linear-gradient(140deg,#211d17 0%,#14141a 60%,#2a2136 100%)}
.tfp-share__panel .tfp-panel-dark__glow{right:-40px;top:-40px;width:170px;height:170px;background:radial-gradient(circle,rgba(199,240,58,.24),transparent 68%)}
.tfp-codebox{margin-top:12px;border:1.5px dashed rgba(199,240,58,.5);border-radius:14px;padding:15px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgba(255,255,255,.04)}
.tfp-codebox__code{font-family:var(--font-mono);font-weight:700;font-size:21px;line-height:1;letter-spacing:.06em;color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tfp-codebox__copy{flex:none;border:0;background:var(--accent);color:#14141a;font-weight:700;font-size:11.5px;line-height:1;padding:10px 13px;border-radius:999px;transition:transform .16s ease}
.tfp-codebox__copy:hover{transform:scale(1.06)}
.tfp-codebox__copy:active{transform:scale(.94)}
.tfp-share__quote{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.62)}
.tfp-share__actions{display:flex;gap:8px;margin-top:14px}
.tfp-share__wa,.tfp-share__copytext{
  flex:1;text-align:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);
  color:#fff;font-weight:600;font-size:12.5px;line-height:1;padding:12px 10px;border-radius:999px;
  cursor:pointer;transition:background .18s ease;
}
.tfp-share__wa:hover,.tfp-share__copytext:hover{background:rgba(255,255,255,.2);color:#fff}
.tfp-share__note{margin:14px 0 0;font-family:var(--font-mono);font-size:11.5px;line-height:1.5;color:rgba(255,255,255,.36)}
.tfp-share__media{position:relative;border-radius:28px;overflow:hidden;height:440px}
.tfp-share__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 26%}
.tfp-share__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(20,20,26,.85) 100%)}
.tfp-share__claim{position:absolute;left:30px;right:30px;bottom:28px;margin:0;z-index:1;font-family:var(--font-display);font-weight:700;font-size:22px;line-height:1.3;letter-spacing:-.015em;color:#fff;text-wrap:pretty}

@media (min-width:900px){
  .tfp-share{padding:86px 0}
  .tfp-share__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .tfp-share .tfp-h2{font-size:46px;line-height:1.04;letter-spacing:-.032em;max-width:15ch;margin-top:16px}
  .tfp-share .tfp-lead{margin-top:16px;font-size:16px;line-height:1.6;max-width:46ch}
  .tfp-share__panel{margin-top:30px;border-radius:24px;padding:28px}
  .tfp-codebox{margin-top:16px;border-radius:16px;padding:20px 22px;gap:16px}
  .tfp-codebox__code{font-size:30px;letter-spacing:.05em}
  .tfp-codebox__copy{font-size:13px;padding:13px 18px}
  .tfp-share__quote{margin-top:16px;font-size:14px;line-height:1.55}
  .tfp-share__actions{gap:10px;margin-top:20px}
  .tfp-share__wa,.tfp-share__copytext{font-size:13.5px;padding:14px}
}

/* ---------- Konditionen ---------- */
.tfp-benefits{padding:38px 0 0}
.tfp-benefits__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.tfp-benefit{
  background:#fff;border:1px solid rgba(33,29,23,.07);border-radius:16px;padding:14px 13px;
  display:flex;flex-direction:column;gap:9px;
  transition:transform .22s ease,box-shadow .22s ease;
}
.tfp-benefit:hover{transform:translateY(-3px);box-shadow:0 12px 24px -16px rgba(33,29,23,.3)}
.tfp-benefit__check{flex:none;width:22px;height:22px;border-radius:50%;background:#efe8fc;color:var(--ink-accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:12px}
.tfp-benefit > span:last-child{font-weight:600;font-size:12.5px;line-height:1.32;color:#211d17;text-wrap:pretty}

@media (min-width:900px){
  .tfp-benefits{background:linear-gradient(100deg,#efece6 0%,#e8edc7 46%,#f0dedd 100%);padding:86px 0}
  .tfp-benefits .tfp-h2{font-size:46px;line-height:1.04;letter-spacing:-.032em;margin-top:16px}
  .tfp-benefits__grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
  .tfp-benefit{background:rgba(255,255,255,.78);border-radius:20px;padding:24px;flex-direction:row;align-items:center;gap:16px}
  .tfp-benefit__check{width:34px;height:34px;background:#14141a;color:var(--accent);font-size:15px}
  .tfp-benefit > span:last-child{font-size:16px;line-height:1.3}
  .tfp-benefits .tfp-dash-note{margin-top:20px;border-radius:20px;padding:22px 26px;font-size:14.5px;line-height:1.6}
}

/* ---------- Social Proof (Platzhalter) ---------- */
.tfp-proof{padding:38px 0 0}
.tfp-proof__flag{display:flex;align-items:center;gap:12px}
.tfp-proof__badge{font-family:var(--font-mono);font-weight:700;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8a7d5f;background:#f0e6c8;border:1px dashed #c9b378;padding:5px 8px;border-radius:6px}
.tfp-proof__hint{font-family:var(--font-mono);font-size:12px;color:#a9a396}
.tfp-proof .tfp-h2{margin-top:12px}
.tfp-proof__grid{margin-top:16px;display:flex;flex-direction:column;gap:10px}
.tfp-testi{overflow:hidden}
.tfp-testi__photo{height:150px;background:repeating-linear-gradient(135deg,#e9e6dd 0 10px,#f4f2ed 10px 20px);display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(33,29,23,.07)}
.tfp-testi__photo span{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#a9a396}
.tfp-testi__body{padding:18px}
.tfp-testi__quote{margin:8px 0 0;font-weight:600;font-size:15.5px;line-height:1.45;color:#211d17;text-wrap:pretty}
.tfp-testi__person{display:flex;align-items:center;gap:10px;margin-top:14px}
.tfp-testi__avatar{flex:none;width:34px;height:34px;border-radius:50%;background:repeating-linear-gradient(135deg,#e9e6dd 0 6px,#f4f2ed 6px 12px)}
.tfp-testi__name{margin:0;font-weight:700;font-size:12.5px;line-height:1.2;color:#211d17}
.tfp-testi__club{margin:3px 0 0;font-family:var(--font-mono);font-size:11px;color:#a9a396}
.tfp-proof__side{display:flex;flex-direction:column;gap:10px}
.tfp-proof__stats,.tfp-proof__kit{padding:18px}
.tfp-proof__stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.tfp-proof__stat-grid strong{display:block;font-family:var(--font-display);font-weight:800;font-size:20px;line-height:1;color:#211d17}
.tfp-proof__stat-grid span{display:block;margin-top:5px;font-family:var(--font-mono);font-size:9.5px;line-height:1.3;text-transform:uppercase;letter-spacing:.1em;color:#a9a396}
.tfp-proof__stat-ac{color:var(--ink-accent) !important}
.tfp-proof__kit-text{margin:8px 0 0;font-size:12.5px;line-height:1.5;color:#6f695d}
.tfp-proof__kit-tiles{display:flex;gap:8px;margin-top:14px}
.tfp-proof__kit-tile{flex:1;aspect-ratio:9/16;border-radius:12px;background:repeating-linear-gradient(135deg,#e9e6dd 0 8px,#f4f2ed 8px 16px);display:flex;align-items:flex-end;padding:8px}
.tfp-proof__kit-tile span{font-family:var(--font-mono);font-size:8.5px;color:#a9a396}

@media (min-width:900px){
  .tfp-proof{padding:86px 0 0}
  .tfp-proof__badge{font-size:9.5px;padding:6px 10px}
  .tfp-proof .tfp-h2{margin-top:20px;font-size:46px;line-height:1.04;letter-spacing:-.032em}
  .tfp-proof__grid{margin-top:40px;display:grid;grid-template-columns:1.4fr 1fr;gap:20px}
  .tfp-testi{border-radius:24px;display:grid;grid-template-columns:280px 1fr}
  .tfp-testi__photo{height:auto;border-bottom:0;border-right:1px solid rgba(33,29,23,.07)}
  .tfp-testi__photo span{font-size:10.5px}
  .tfp-testi__body{padding:32px}
  .tfp-testi__quote{margin-top:16px;font-size:22px;line-height:1.42;letter-spacing:-.015em}
  .tfp-testi__person{gap:14px;margin-top:24px}
  .tfp-testi__avatar{width:44px;height:44px}
  .tfp-testi__name{font-size:14px}
  .tfp-testi__club{margin-top:5px;font-size:12px}
  .tfp-proof__side{gap:20px}
  .tfp-proof__stats,.tfp-proof__kit{padding:28px;border-radius:24px}
  .tfp-proof__kit{flex:1}
  .tfp-proof__stat-grid{gap:14px;margin-top:20px}
  .tfp-proof__stat-grid strong{font-size:28px}
  .tfp-proof__stat-grid span{margin-top:7px;font-size:10px}
  .tfp-proof__kit-text{margin-top:10px;font-size:14px;line-height:1.55}
  .tfp-proof__kit-tiles{gap:10px;margin-top:18px}
  .tfp-proof__kit-tile{aspect-ratio:auto;height:120px;border-radius:14px;padding:10px}
  .tfp-proof__kit-tile span{font-size:9.5px}
}

/* ---------- Anmeldung ---------- */
.tfp-apply{padding:38px 0 0}
.tfp-apply__card{background:#fff;border:1px solid rgba(33,29,23,.08);border-radius:24px;overflow:hidden}
.tfp-apply__main{padding:20px}
.tfp-form{margin-top:18px;position:relative}
.tfp-form__wizhead .tfp-mono-label{margin-bottom:14px;color:#a9a396;font-size:9.5px;letter-spacing:.14em}
.tfp-form__bars{display:flex;gap:6px;margin-bottom:18px}
.tfp-form__bars span{flex:1;height:4px;border-radius:99px;background:rgba(33,29,23,.12);transition:background .3s ease}
.tfp-form__bars span.is-on{background:var(--ink-accent)}
.tfp-form__fields{overflow:hidden}
.tfp-form__track{display:flex;width:300%;transition:transform .42s cubic-bezier(.22,1,.36,1)}
.tfp-form__panel{width:33.3333%;flex:none;padding-right:2px;display:flex;flex-direction:column;gap:12px}
.tfp-field{display:flex;flex-direction:column;gap:6px}
.tfp-field > span{font-weight:600;font-size:11.5px;line-height:1;color:#211d17}
.tfp-field input,.tfp-field textarea{
  border:1.5px solid rgba(33,29,23,.14);border-radius:12px;padding:13px;
  font-size:14px;line-height:1.2;color:#211d17;background:#fbfaf7;resize:none;
  transition:border-color .18s ease;width:100%;
}
.tfp-field textarea{line-height:1.4}
.tfp-field input:focus,.tfp-field textarea:focus{outline:none;border-color:var(--ink-accent)}
.tfp-consent{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.tfp-consent input{margin-top:2px;width:18px;height:18px;accent-color:var(--ink-accent);flex:none}
.tfp-consent span{font-size:11.5px;line-height:1.45;color:#6f695d}
.tfp-consent a{color:var(--ink-accent);font-weight:600}
.tfp-form__error{min-height:18px;margin:10px 0 0;font-weight:500;font-size:11.5px;line-height:1.4;color:#c4344f}
.tfp-form__nav{display:flex;gap:8px;margin-top:6px}
.tfp-form__next{flex:1}
.tfp-form__submitrow{display:flex;align-items:center;gap:20px;margin-top:8px}
.tfp-form .funding__form-status{margin-top:14px;font-size:13px;font-weight:600;color:#4d483f}
.tfp-form .funding__form-status.is-error{color:#c4344f}
.tfp-form .funding__form-status.is-success{color:#4b5c14}

.tfp-success{margin-top:18px;border-radius:24px;padding:26px 22px;background:linear-gradient(150deg,#211d17,#2a2136);color:#fff}
.tfp-success__check{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--accent);color:#14141a;font-family:var(--font-display);font-weight:800;font-size:20px}
.tfp-success__title{margin:16px 0 0;font-family:var(--font-display);font-weight:800;font-size:22px;line-height:1.15;letter-spacing:-.02em}
.tfp-success__text{margin:8px 0 0;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.7);max-width:48ch}
.tfp-success__codebox{margin-top:18px;border:1.5px dashed rgba(199,240,58,.5);border-radius:14px;padding:14px 16px;display:inline-block}
.tfp-success__code{margin:7px 0 0;font-family:var(--font-mono);font-weight:700;font-size:19px;line-height:1;color:var(--accent)}

/* Seit 06.08. dunkel (Klubhaus-Look) mit 5 Schritten + Logo-Zeile.
   Seit 07.08. mit Teamfoto als dezentem Hintergrund über die ganze Spalte:
   Bild liegt hinter dem Verlauf, der Verlauf sorgt für den Textkontrast. */
.tfp-apply__side{position:relative;isolation:isolate;background:#14141a;padding:44px 36px;display:flex;flex-direction:column;justify-content:space-between;border-left:1px solid rgba(255,255,255,.08);overflow:hidden}
.tfp-apply__side-bg{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 12%;
  z-index:-2;opacity:.55;filter:grayscale(.15) contrast(1.04);
}
/* Oben und unten kraeftig abdunkeln (dort stehen Text und Logos),
   in der Bildmitte darf das Foto durchkommen. */
.tfp-apply__side::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(20,20,26,.92) 0%,rgba(20,20,26,.78) 28%,rgba(20,20,26,.42) 58%,rgba(28,23,38,.88) 88%,rgba(37,31,49,.96) 100%);
}
.tfp-apply__steps{display:flex;flex-direction:column;gap:18px;margin-top:24px}
.tfp-apply__step{display:flex;gap:14px}
.tfp-apply__step span{flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#14141a;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:10px}
.tfp-apply__step p{margin:0;font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.75)}
.tfp-apply__side-foot{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
.tfp-apply__side-foot p{margin:0;font-size:13px;line-height:1.6;color:rgba(255,255,255,.55)}
.tfp-apply__side-foot a{color:#c9b378;font-weight:600}
.tfp-apply__side-foot a:hover{color:#e0cb96}
.tfp-apply__side-logos{display:flex;align-items:center;gap:20px;margin-top:22px;flex-wrap:wrap}
.tfp-apply__side-logos img{height:32px;width:auto;display:block;opacity:.92}

@media (min-width:900px){
  .tfp-apply{padding:86px 0 0}
  .tfp-apply__card{border-radius:32px;display:grid;grid-template-columns:1fr 400px}
  .tfp-apply__main{padding:48px}
  .tfp-apply .tfp-h2{font-size:40px;line-height:1.06;letter-spacing:-.03em;margin-top:16px}
  .tfp-apply .tfp-lead{margin-top:14px;font-size:15.5px;line-height:1.6;max-width:52ch}
  .tfp-form{margin-top:34px}
  .tfp-form__fields{overflow:visible}
  .tfp-form__track{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:auto;transform:none !important}
  .tfp-form__panel{display:contents}
  .tfp-ord-1{order:1}.tfp-ord-2{order:2}.tfp-ord-3{order:3}.tfp-ord-4{order:4}
  .tfp-ord-5{order:5}.tfp-ord-6{order:6}.tfp-ord-7{order:7;grid-column:1 / -1}.tfp-ord-8{order:8;grid-column:1 / -1}
  .tfp-consent{gap:12px}
  .tfp-consent input{width:19px;height:19px}
  .tfp-consent span{font-size:12.5px;line-height:1.5}
  .tfp-field{gap:7px}
  .tfp-field > span{font-size:12.5px}
  .tfp-field input,.tfp-field textarea{padding:14px 15px;font-size:15px}
  .tfp-form__error{min-height:20px;margin-top:14px;font-size:13px}
  .tfp-success{margin-top:34px;padding:34px}
  .tfp-success__check{width:52px;height:52px;font-size:24px}
  .tfp-success__title{margin-top:22px;font-size:30px;letter-spacing:-.025em}
  .tfp-success__text{margin-top:12px;font-size:15.5px;line-height:1.6}
  .tfp-success__codebox{margin-top:24px;padding:16px 20px}
  .tfp-success__code{margin-top:9px;font-size:24px}
}

/* ---------- FAQ ---------- */
.tfp-faq{padding:38px 0 56px}
.tfp-faq__grid{margin-top:16px;background:#fff;border:1px solid rgba(33,29,23,.08);border-radius:22px;overflow:hidden}
.tfp-faq__item{border-bottom:1px solid rgba(33,29,23,.07)}
.tfp-faq__item:last-child{border-bottom:0}
.tfp-faq__item summary{
  list-style:none;cursor:pointer;padding:16px 17px;
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
}
.tfp-faq__item summary::-webkit-details-marker{display:none}
.tfp-faq__q{font-weight:600;font-size:13.5px;line-height:1.35;color:#211d17;text-wrap:pretty}
.tfp-faq__icon{
  flex:none;width:22px;height:22px;border-radius:50%;background:#f4f2ed;color:var(--ink-accent);
  display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:14px;
  transition:transform .28s cubic-bezier(.22,1,.36,1);
}
.tfp-faq__item[open] .tfp-faq__icon{transform:rotate(45deg)}
.tfp-faq__a{margin:0;padding:0 17px 17px;font-size:13px;line-height:1.55;color:#6f695d;text-wrap:pretty}
.tfp-faq__more{margin:14px 0 0;text-align:center;font-size:12.5px}

@media (min-width:900px){
  .tfp-faq{padding:86px 0}
  .tfp-faq .tfp-h2{font-size:40px;line-height:1.06;letter-spacing:-.03em;margin-top:16px}
  .tfp-faq__grid{margin-top:32px;background:transparent;border:0;border-radius:0;overflow:visible;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
  .tfp-faq__item{border-bottom:1px solid rgba(33,29,23,.12)}
  .tfp-faq__item summary{padding:20px 0;gap:16px}
  .tfp-faq__q{font-size:16px;line-height:1.4}
  .tfp-faq__icon{width:26px;height:26px;background:#e9e6dd;font-size:16px}
  .tfp-faq__a{padding:0 44px 22px 0;font-size:14.5px;line-height:1.65}
  .tfp-faq__more{margin-top:28px;text-align:left;font-size:14px}
}

/* ---------- Mobile Tabbar ---------- */
.tfp-tabbar{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  display:flex;gap:4px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));
  background:rgba(244,242,237,.86);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-top:1px solid rgba(33,29,23,.09);
}
.tfp-tab{
  flex:1;border:0;background:transparent;cursor:pointer;border-radius:16px;padding:9px 4px 8px;
  display:flex;flex-direction:column;align-items:center;gap:5px;
  font-family:var(--font-body);font-weight:600;font-size:9.5px;color:#8f887b;
  transition:background .2s ease,color .2s ease;
}
.tfp-tab.is-active{background:rgba(106,52,201,.10);color:var(--ink-accent)}
/* Echte Stroke-Icons statt der frueheren CSS-Kaesten (06.08.) */
.tfp-tab__icon{display:block;width:22px;height:22px;color:inherit;transition:color .2s ease}
@media (min-width:900px){.tfp-tabbar{display:none}}

@media (prefers-reduced-motion:reduce){
  .tfp-pulse,.tfp-step__tile{animation:none}
  .tfp-form__track{transition:none}
}

/* Teaser komplett klickbar: Haupt-CTA als Stretched-Link ueber der
   ganzen Sektion; FAQ-Link liegt per z-index darueber. */
.tf-teaser{position:relative}
.tf-cta--stretch::after{content:"";position:absolute;inset:0;z-index:1}
.tf-link{position:relative;z-index:2}

/* =================================================================
   TEAM FUNDING APP-SHOWCASE (/team-funding/) – .fsw-*
   Slider mit 6 Screens des Vereinsbereichs im Handy-Rahmen.
   Mobile-first: unter 1080px stapelt sich der Text ueber das Handy,
   unter 480px wird der Handy-Rahmen per zoom skaliert (fixe 390px-
   Screens duerfen den Viewport nicht sprengen).
   ================================================================= */
.tfp-showcase{background:#14141a;overflow:hidden}
.fsw *{box-sizing:border-box}
.fsw{max-width:1180px;margin:0 auto;padding:72px 56px;display:grid;grid-template-columns:1fr 440px;gap:64px;align-items:center;font-family:'Archivo',system-ui,sans-serif;-webkit-font-smoothing:antialiased;color:#fff}
.fsw .mono{font-family:'JetBrains Mono',monospace}
.fsw-eyebrow{font:500 10px/1 'JetBrains Mono',monospace;letter-spacing:.2em;text-transform:uppercase;color:#c9b378}
.fsw-title{margin:0;font-family:'Archivo';font-weight:900;font-size:clamp(30px,4vw,46px);line-height:1.02;letter-spacing:-.03em;color:#fff;text-wrap:pretty;min-height:2.04em}
.fsw-desc{margin:0;font:400 15px/1.6 'Archivo';color:rgba(255,255,255,.6);max-width:420px;text-wrap:pretty;min-height:4.8em}
.fsw-arrow{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;font:400 18px/1 'Archivo';cursor:pointer;transition:all .15s ease}
.fsw-arrow:hover{border-color:#c9b378;color:#c9b378}
.fsw-dot{height:8px;border-radius:99px;border:0;cursor:pointer;padding:0;transition:all .3s ease;background:rgba(255,255,255,.25);width:8px}
.fsw-dot.on{background:#c9b378;width:22px}
.fsw-pulse{width:6px;height:6px;border-radius:50%;background:#c7f03a;animation:tfpPulse 2.4s infinite}
.fsw-card{background:#1e1b26;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:20px}
.fsw-eb{font:500 9.5px/1 'JetBrains Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#c9b378}
.fsw-h3{margin:8px 0 0;font-family:'Archivo';font-weight:800;font-size:20px;line-height:1.06;letter-spacing:-.02em;color:#fff}
.fsw-note{font:400 11px/1.55 'Archivo';color:rgba(255,255,255,.4);padding:0 6px}
.fsw-chip{border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.75);font:600 11px/1 'Archivo';padding:9px 12px;border-radius:99px}
.fsw-chip.sel{background:#c9b378;color:#14141a;border-color:#c9b378}
.fsw-chip.add{border-style:dashed;color:#c9b378;border-color:rgba(201,179,120,.5)}
.fsw-btnrow{display:flex;align-items:center;justify-content:center;gap:7px;font:700 12.5px/1 'Archivo';padding:14px 10px;border-radius:99px}
.fsw-screen{width:390px;flex:none;padding:6px 16px 20px;display:flex;flex-direction:column;gap:12px}
.fsw-demo-hint{font:500 9.5px/1 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.32)}
@media (max-width:1080px){
  .fsw{grid-template-columns:1fr;gap:36px;padding:56px 20px;justify-items:center;text-align:center}
  .fsw-desc{margin:0 auto}
  .fsw-title{min-height:0}
  .fsw-desc{min-height:0}
  .fsw-controls{justify-content:center}
}
@media (max-width:480px){
  .fsw{padding:44px 12px}
  .fsw-phone{zoom:.8}
}
@media (max-width:360px){
  .fsw-phone{zoom:.72}
}

/* Team-Storys: dynamische Liste (Sektion nur sichtbar mit freigegebenen
   Storys). Nutzt die vorhandenen .tfp-testi-Kartenstile. */
.tfp-proof__list{margin-top:16px;display:grid;gap:12px}
.tfp-testi__photo--img{background-size:cover;background-position:center}
.tfp-testi__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.tfp-testi__stars{font-size:14px;letter-spacing:.06em;color:#e3ab48}
.tfp-testi__avatar{background-size:cover;background-position:center}
.tfp-testi--nophoto{display:block}
@media (min-width:900px){
  .tfp-proof__list{margin-top:40px;gap:20px}
  .tfp-testi--nophoto{grid-template-columns:1fr}
  .tfp-testi__stars{font-size:16px}
}
