/* SHAMANIC WAYS, shamanic-ways.com. Schriften wie FIVE MOVES (Andy 03.09.2026):
   Bricolage Grotesque 600 fuer Headlines ab 32px, Plus Jakarta Sans fuer alles andere.
   Farben: Nacht, Papier-Creme, Gold, Glut. Alles dunkel, Atmosphaere statt Flaechen. */
@font-face{font-family:"Bricolage Grotesque";src:url("fonts/bricolage-grotesque-latin-var.woff2") format("woff2");font-weight:300 600;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url("fonts/plus-jakarta-sans-latin-400.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Plus Jakarta Sans";src:url("fonts/plus-jakarta-sans-latin-500.woff2") format("woff2");font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Plus Jakarta Sans";src:url("fonts/plus-jakarta-sans-latin-600.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Plus Jakarta Sans";src:url("fonts/plus-jakarta-sans-latin-ext-400.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plus Jakarta Sans";src:url("fonts/plus-jakarta-sans-latin-ext-500.woff2") format("woff2");font-weight:500;font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plus Jakarta Sans";src:url("fonts/plus-jakarta-sans-latin-ext-600.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  /* ── Gerüst, geteilt mit FIVE MOVES (BRANDING-2026-08-27) ── */
  --nacht2:#0E1226;   /* Grund der Seite: Heroes und Finale */
  --nacht:#151A31;    /* Grund fuer alles Dunkle dazwischen */
  --nacht3:#262C45;   /* Karte auf Dunkel, misst 1.25 gegen Navy */
  --papier:#F8F8F8; --stein:#F0EBE6;
  --creme:#EDEEF4;    /* Text auf Dunkel */
  --creme2:#F8F8F8;
  --weich:#A9AEC4;    /* Nebentext auf Dunkel */
  --ink:#151A31; --body:#4B5168; --muted:#5D6278;
  --linie-hell:#DED8D0; --linie-navy:#2A3052;
  --gold:#E4B56A;         /* kroent und markiert, nie auf einem Knopf */
  --gold-tief:#845A0B;    /* dasselbe auf hellem Grund */
  /* ── Handlung: gehoert dem Buch. Standard ist die Reihe = FEUER ── */
  --tat:#B8481F; --tat-tief:#9B3C1A; --schein:184,72,31;
  --tag:#1E3E7C;
  --dsp:"Bricolage Grotesque","Plus Jakarta Sans",-apple-system,sans-serif;
  --sans:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
  --spring:cubic-bezier(.34,1.4,.5,1);
  --pad:clamp(22px,5vw,64px);
}
/* Pro Buch werden genau drei Werte getauscht, Werte aus den Cover-Skripten */
.w-feuer        {--tat:#B8481F;--tat-tief:#9B3C1A;--schein:184,72,31}
.w-trommelschlag{--tat:#3F7A4F;--tat-tief:#356642;--schein:63,122,79}
.w-rituale      {--tat:#8A5590;--tat-tief:#744779;--schein:138,85,144}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans);font-size:17px;line-height:1.65;font-weight:400;
  background:var(--nacht2);color:var(--creme);
  overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2{font-family:var(--dsp);font-optical-sizing:auto;font-weight:600;line-height:1.02;letter-spacing:-.022em;text-wrap:balance}
h3,h4{font-family:var(--sans);font-weight:600;letter-spacing:-.01em}
.grain{
  position:fixed;inset:0;z-index:80;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");
}
.hof{max-width:1280px;margin:0 auto;padding:0 var(--pad);position:relative}
/* Kicker wie navy-core: Jakarta 600, 11px, gesperrt */
.eti{display:flex;align-items:center;gap:14px;font:600 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase}
.eti.linie::before{content:"";width:26px;height:1px;background:currentColor;opacity:.6;flex:none}
.eti-gold{color:var(--gold)}
/* Zweitzeile: Jakarta 500 in Gold, wie .lift bei FIVE MOVES */
.lift{display:block;font-family:var(--sans);font-weight:500;font-size:.56em;line-height:1.18;letter-spacing:-.01em;color:var(--gold);margin-top:.42em}
.num{font-family:var(--sans);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}

/* ---------- Atmosphaere: Nebel, Glut, Funken ---------- */
.nebel{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.nebel::before,.nebel::after{
  content:"";position:absolute;width:140vw;height:60%;left:-20vw;bottom:-10%;
  background:radial-gradient(ellipse 50% 60% at 30% 70%,rgba(var(--schein),.10),transparent 60%),radial-gradient(ellipse 40% 50% at 70% 80%,rgba(120,80,60,.14),transparent 65%);
  filter:blur(30px);animation:treiben 26s ease-in-out infinite alternate;
}
.nebel::after{animation-duration:38s;animation-delay:-14s;opacity:.7;transform:scaleX(-1)}
@keyframes treiben{from{transform:translateX(-4%) translateY(2%)}to{transform:translateX(4%) translateY(-2%)}}
.funken{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.funken i{
  position:absolute;bottom:-4px;width:3px;height:3px;border-radius:50%;
  background:var(--gold);box-shadow:0 0 6px 2px rgba(255,170,60,.7);opacity:0;
  animation:funke 9s linear infinite;
}
.funken i:nth-child(1){left:12%;animation-delay:0s;animation-duration:11s}
.funken i:nth-child(2){left:24%;animation-delay:2s;animation-duration:9s}
.funken i:nth-child(3){left:38%;animation-delay:5s;animation-duration:13s}
.funken i:nth-child(4){left:52%;animation-delay:1s;animation-duration:10s}
.funken i:nth-child(5){left:63%;animation-delay:7s;animation-duration:12s}
.funken i:nth-child(6){left:74%;animation-delay:3.5s;animation-duration:9.5s}
.funken i:nth-child(7){left:86%;animation-delay:6s;animation-duration:11.5s}
.funken i:nth-child(8){left:45%;animation-delay:8.5s;animation-duration:14s}
@keyframes funke{
  0%{opacity:0;transform:translate(0,0) scale(.6)}
  8%{opacity:.9}
  50%{opacity:.6;transform:translate(18px,-45vh) scale(.9)}
  100%{opacity:0;transform:translate(-14px,-92vh) scale(.3)}
}
@media (prefers-reduced-motion:reduce){.nebel::before,.nebel::after,.funken i{animation:none}.funken i{opacity:0}}

/* ---------- Knoepfe ---------- */
.kn{
  display:inline-flex;align-items:center;gap:.8rem;
  padding:.95rem 1.05rem .95rem 1.7rem;border-radius:999px;
  font:600 15px/1 var(--sans);letter-spacing:0;
  border:1px solid transparent;
  transition:transform .55s var(--spring),background .5s var(--ease),border-color .5s var(--ease),box-shadow .5s var(--ease);
}
.kn .pf{width:2rem;height:2rem;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;transition:transform .55s var(--spring)}
.kn:hover{transform:translateY(-2px)}
.kn:hover .pf{transform:translateX(3px)}
.kn-glut{background:var(--tat);color:#fff;box-shadow:0 16px 38px -16px rgba(var(--schein),.7)}
.kn-glut .pf{background:rgba(255,255,255,.18)}
.kn-glut:hover{background:var(--tat-tief);box-shadow:0 20px 46px -16px rgba(var(--schein),.8)}
.kn-nacht{background:rgba(237,238,244,.06);border-color:rgba(237,238,244,.28);color:var(--creme);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.kn-nacht .pf{background:rgba(237,238,244,.12)}
.kn-nacht:hover{background:rgba(237,238,244,.12);border-color:rgba(237,238,244,.5)}

/* ---------- Navigation ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px var(--pad);transition:background .6s var(--ease),padding .6s var(--ease)}
.nav.fest{background:rgba(14,18,38,.74);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:12px var(--pad);border-bottom:1px solid rgba(237,238,244,.06)}
.nav-marke{display:flex;align-items:center;gap:12px;color:var(--creme)}
.nav-marke img{width:44px;height:auto;filter:drop-shadow(0 0 12px rgba(228,181,106,.25))}
.nav-marke span{font:600 11px/1 var(--sans);letter-spacing:.34em;text-transform:uppercase;padding-top:2px}
.nav-links{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2.2rem);font:500 14px/1 var(--sans);letter-spacing:.02em;color:rgba(237,238,244,.72)}
.nav-links a{position:relative;padding:.4rem 0;transition:color .4s var(--ease)}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.nav-links a:hover{color:var(--creme)}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-links .sp{display:flex;gap:.5rem;align-items:center;font:600 11px/1 var(--sans);letter-spacing:.2em;color:rgba(237,238,244,.45);margin-left:.4rem}
.nav-links .sp .an{color:var(--creme)}
.nav-links .sp i{width:1px;height:11px;background:rgba(237,238,244,.25)}
@media (max-width:860px){.nav-links a.menue{display:none}}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:100svh;color:var(--creme);background:var(--nacht2) url("welt-nacht-wide.jpg") center bottom / cover no-repeat;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
@media (max-width:760px){.hero{background-image:url("welt-nacht-tall.jpg")}}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(14,18,38,.55) 0%,rgba(14,18,38,0) 35%,rgba(14,18,38,0) 62%,rgba(14,18,38,.72) 100%)}
.hero-in{position:relative;z-index:2;width:100%;max-width:1480px;margin:0 auto;padding:clamp(96px,12vh,140px) var(--pad) clamp(48px,8vh,96px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(2rem,4vw,4rem);align-items:center}
.hero-text{padding-bottom:0}
.hero .eti{animation:auf 1.2s var(--ease) .2s both}
.hero h1{margin-top:1.4rem;font-size:clamp(2.5rem,5.6vw,5.8rem);color:var(--creme);max-width:12.5em;text-shadow:0 0 60px rgba(var(--schein),.12),0 2px 30px rgba(0,0,0,.4);animation:auf 1.4s var(--ease) .4s both}
.hero p{margin-top:1.6rem;max-width:30em;font-size:clamp(1.02rem,1.5vw,1.25rem);line-height:1.62;color:rgba(237,238,244,.8);animation:auf 1.4s var(--ease) .65s both}
.hero .kn-reihe{display:flex;flex-wrap:wrap;gap:.9rem 1.2rem;align-items:center;margin-top:2.2rem;animation:auf 1.4s var(--ease) .85s both}

/* Die drei Buecher stehen im Hero auf dem Grat */
.regal{--rg:clamp(.5rem,1.6vw,1.6rem);position:relative;display:flex;align-items:flex-end;justify-content:center;gap:var(--rg);padding:26px 0 30px;perspective:1600px;perspective-origin:50% 40%;animation:auf 1.6s var(--ease) .6s both}
.buch{position:relative;flex:none;width:var(--bw);aspect-ratio:1136/1800;transform-style:preserve-3d;transition:transform .9s var(--ease)}
.buch img{width:100%;height:100%;object-fit:cover;border-radius:2px 6px 6px 2px;box-shadow:0 30px 70px rgba(0,0,0,.6),0 4px 12px rgba(0,0,0,.5)}
.buch::after{content:"";position:absolute;inset:0;border-radius:2px 6px 6px 2px;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.30) 0 1px,rgba(0,0,0,.36) 1px 7px,rgba(0,0,0,0) 15px),linear-gradient(102deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,.03) 16%,rgba(255,255,255,0) 36%,rgba(0,0,0,.10) 78%,rgba(0,0,0,.24) 100%)}
.buch .schatten{position:absolute;left:8%;right:8%;bottom:-14px;height:20px;border-radius:50%;background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.85),rgba(0,0,0,.35) 45%,transparent 72%);filter:blur(6px)}
.regal .buch{--bw:min(272px,calc((100% - 2 * var(--rg)) / 3))}
.buch.b1{transform:rotateY(18deg) rotateX(2deg)}
.buch.b2{transform:rotateY(0deg) rotateX(2deg)}
.buch.b3{transform:rotateY(-18deg) rotateX(2deg)}
.regal .buch:hover{transform:rotateY(0deg) rotateX(1deg) translateY(-14px);z-index:3}
.buch .tag{position:absolute;left:50%;top:-14px;transform:translateX(-50%);white-space:nowrap;z-index:2;font:600 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;padding:.45rem .85rem;border-radius:999px;background:rgba(14,18,38,.72);border:1px solid rgba(228,181,106,.5);color:var(--gold);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hero-scroll{display:none;position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:3;font:600 10px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:rgba(237,238,244,.45);display:flex;flex-direction:column;align-items:center;gap:10px;animation:auf 1.4s var(--ease) 1.4s both}
.hero-scroll i{width:1px;height:34px;background:linear-gradient(180deg,var(--gold),transparent);animation:tropf 2.4s ease-in-out infinite}
@keyframes tropf{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@keyframes auf{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@media (max-width:480px){
  .regal{gap:.5rem;perspective:1100px}
  .buch .tag{font-size:9px;letter-spacing:.18em;padding:.34rem .6rem}
}
@media (max-width:980px){
  .hero-in{grid-template-columns:1fr;gap:3rem;padding-top:110px}
  .hero-text{padding-bottom:0}
  .regal{justify-content:center;padding-bottom:36px}
  .hero-scroll{display:none}
}

/* ---------- Zeitleiste ---------- */
.zeit{background:var(--nacht2);border-top:1px solid rgba(237,238,244,.06);border-bottom:1px solid rgba(237,238,244,.06)}
.zeit .hof{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.zeit a{display:flex;flex-direction:column;gap:.35rem;padding:1.6rem 1.4rem;border-left:1px solid rgba(237,238,244,.06);transition:background .5s var(--ease)}
.zeit a:first-child{border-left:0}
.zeit a:hover{background:rgba(237,238,244,.03)}
.zeit .zs{font:600 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:.6rem}
.zeit .zs::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px rgba(228,181,106,.7)}
.zeit .zs.bald::before{background:var(--tat);box-shadow:0 0 14px rgba(var(--schein),.9)}
.zeit .zt{font:600 1.25rem/1.1 var(--sans);letter-spacing:.06em;color:var(--creme)}
.zeit .zd{font-size:.86rem;color:rgba(237,238,244,.55)}
@media (max-width:760px){
  .zeit .hof{grid-template-columns:1fr;padding:0}
  .zeit a{border-left:0;border-top:1px solid rgba(237,238,244,.06);padding:1.2rem var(--pad)}
  .zeit a:first-child{border-top:0}
}

/* ---------- Buch-Kapitel ---------- */
.kap{position:relative;overflow:hidden;color:var(--creme)}
.kap .hof{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.5rem,7vw,7rem);align-items:center;padding-top:clamp(7rem,13vw,11rem);padding-bottom:clamp(7rem,13vw,11rem)}
.kap.rechts .hof{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.kap.rechts .kap-cover{order:2}
.kap-cover{display:flex;justify-content:center;perspective:1400px}
.kap-cover .buch{--bw:clamp(220px,28vw,360px);transform:rotateY(-16deg) rotateX(2deg);display:block}
.kap.rechts .kap-cover .buch{transform:rotateY(16deg) rotateX(2deg)}
.kap-cover .buch:hover{transform:rotateY(-4deg) rotateX(1deg) translateY(-12px)}
.kap.rechts .kap-cover .buch:hover{transform:rotateY(4deg) rotateX(1deg) translateY(-12px)}
.kap-text h2{margin-top:1.3rem;font-size:clamp(3rem,7.2vw,6rem);letter-spacing:-.03em;color:var(--creme)}
.kap-text h2 .lift{font-size:.36em;margin-top:.5em}
.kap-text .hook{margin-top:2rem;font:600 clamp(1.35rem,2.1vw,1.7rem)/1.3 var(--sans);letter-spacing:-.015em;color:var(--creme)}
.kap-text p.lauf{margin-top:1.1rem;max-width:34em;color:rgba(237,238,244,.8);font-size:1.02rem}
.kap-text .fragen{margin-top:1.8rem;display:flex;flex-wrap:wrap;gap:.6rem}
.kap-text .fragen span{font:500 .95rem/1 var(--sans);padding:.65rem 1rem;border-radius:999px;border:1px solid rgba(228,181,106,.4);color:var(--gold)}
.kap-text .meta{margin-top:1.8rem;display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;font:500 11px/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:rgba(237,238,244,.5)}
.kap-text .kn-reihe{display:flex;flex-wrap:wrap;gap:.9rem 1.2rem;align-items:center;margin-top:2rem}
.kap-text a.im-text,.wo a.im-text{color:var(--gold);border-bottom:1px solid rgba(228,181,106,.45)}
.kap-text a.im-text:hover,.wo a.im-text:hover{border-color:var(--gold)}
.kap-text .schluss{margin-top:1.2rem;font:500 1.05rem/1.4 var(--sans);color:var(--gold)}
@media (max-width:900px){
  .kap .hof,.kap.rechts .hof{grid-template-columns:1fr;gap:3.2rem}
  .kap.rechts .kap-cover{order:0}
  .kap-cover .buch{--bw:clamp(200px,52vw,280px)}
}
.kap-feuer{background:var(--nacht2) url("welt-nacht-wide.jpg") center 30% / cover no-repeat}
@media (max-width:760px){.kap-feuer{background-image:url("welt-nacht-tall.jpg")}}
.kap-feuer::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--nacht2) 0%,rgba(14,18,38,.55) 18%,rgba(14,18,38,.15) 55%,rgba(14,18,38,.7) 100%);pointer-events:none}
.kap-trommel{background:var(--tag) url("welt-tag-wide.jpg") center bottom / cover no-repeat;color:var(--creme)}
@media (max-width:760px){.kap-trommel{background-image:url("welt-tag-tall.jpg")}}
.kap-trommel::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(14,32,72,.80) 0%,rgba(14,32,72,.58) 42%,rgba(14,32,72,.12) 100%),linear-gradient(180deg,rgba(14,18,38,.35) 0%,rgba(14,18,38,0) 30%,rgba(14,18,38,0) 75%,rgba(14,18,38,.45) 100%)}
.kap-trommel .kap-text h2 .lift,.kap-trommel .fragen span,.kap-trommel .schluss{color:var(--gold)}
.kap-trommel .fragen span{border-color:rgba(245,217,168,.45)}
.kap-trommel .kap-text p.lauf{color:rgba(251,247,238,.88)}
.kap-rituale{background:linear-gradient(180deg,#0f0c2a 0%,#1a163e 18%,#3c2868 42%,#7a467a 62%,#ba6c6c 78%,#e89c5c 90%,#2a1a30 100%)}
.kap-rituale::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(14,18,38,.35) 0%,rgba(14,18,38,0) 25%,rgba(14,18,38,0) 60%,rgba(20,12,24,.55) 100%)}
.kap-rituale .sterne{position:absolute;inset:0;pointer-events:none;opacity:.9}
.kap-rituale .sterne i{position:absolute;width:2px;height:2px;border-radius:50%;background:#ece9f4;opacity:.35}
.kap-rituale .kap-text h2 .lift,.kap-rituale .fragen span,.kap-rituale .schluss{color:var(--gold)}
.kap-rituale .fragen span{border-color:rgba(245,217,168,.45)}

/* ---------- Der rote Faden: drei Steine am Feuer ---------- */
.faden{position:relative;overflow:hidden;color:var(--creme);padding:clamp(7rem,12vw,10rem) 0;background:radial-gradient(90% 60% at 50% 100%,rgba(var(--schein),.22) 0%,rgba(var(--schein),.06) 32%,var(--nacht) 68%,var(--nacht2) 100%)}
.faden .glut{position:absolute;left:50%;bottom:-12%;width:min(1100px,130vw);height:460px;transform:translateX(-50%);pointer-events:none;background:radial-gradient(ellipse at center,rgba(var(--schein),.22) 0%,rgba(var(--schein),.08) 35%,transparent 68%);filter:blur(12px);animation:atmen 6s ease-in-out infinite}
@keyframes atmen{0%,100%{opacity:.85;transform:translateX(-50%) scale(1)}50%{opacity:1;transform:translateX(-50%) scale(1.06)}}
.faden .kopf{max-width:760px;position:relative}
.faden h2{margin-top:1.3rem;font-size:clamp(2.2rem,4.6vw,3.6rem);color:var(--creme)}
.faden .kopf p{margin-top:1.4rem;font-size:1.08rem;color:rgba(237,238,244,.75);max-width:34em}
.kraefte{position:relative;margin-top:clamp(3rem,6vw,5rem);display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.kraft{position:relative;padding:2.4rem 2rem 2.6rem;border-radius:22px;background:linear-gradient(180deg,rgba(237,238,244,.05),rgba(237,238,244,.02));border:1px solid rgba(228,181,106,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 30px 60px rgba(0,0,0,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .6s var(--ease),border-color .6s var(--ease)}
.kraft:hover{transform:translateY(-6px);border-color:rgba(228,181,106,.4)}
.kraft::before{content:"";position:absolute;top:0;left:2rem;right:2rem;height:1px;background:linear-gradient(90deg,transparent,rgba(228,181,106,.7),transparent)}
.kraft .stein{width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--gold),var(--tat) 55%,var(--tat-tief));box-shadow:0 0 18px 4px rgba(var(--schein),.45);margin-bottom:1.4rem}
.kraft .nr{font:600 10px/1 var(--sans);letter-spacing:.24em;color:var(--gold);text-transform:uppercase}
.kraft .frage{margin-top:1rem;font:600 clamp(1.5rem,2.1vw,1.85rem)/1.15 var(--sans);letter-spacing:-.02em;color:var(--creme)}
.kraft .kraftname{margin-top:.5rem;font:500 .95rem/1.4 var(--sans);letter-spacing:.04em;color:var(--gold)}
.kraft p{margin-top:1rem;color:rgba(237,238,244,.72);font-size:.98rem}
@media (max-width:860px){.kraefte{grid-template-columns:1fr}}

/* ---------- Der Autor: am Feuer ---------- */
.autor{position:relative;overflow:hidden;color:var(--creme);background:var(--nacht2);padding:clamp(7rem,12vw,10rem) 0}
.autor::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(70% 50% at 20% 80%,rgba(var(--schein),.07),transparent 70%)}
.a-raster{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2.4rem,6vw,5rem);align-items:center}
.a-bild{position:relative;max-width:440px;width:100%;margin:0 auto}
.a-bild img{width:100%;height:auto;border-radius:8px;filter:saturate(.72) contrast(1.04) brightness(.94);box-shadow:0 40px 80px rgba(0,0,0,.55),0 0 0 1px rgba(228,181,106,.18)}
.a-bild figcaption{margin-top:1rem;font:600 10px/1.6 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:rgba(237,238,244,.5)}
.a-text{position:relative;z-index:1}
.autor h2{margin-top:1.3rem;font-size:clamp(2.2rem,4.4vw,3.6rem);color:var(--creme)}
.autor .satz{margin-top:1.6rem;font:600 clamp(1.3rem,2vw,1.7rem)/1.35 var(--sans);letter-spacing:-.015em;color:var(--gold)}
.autor p.lauf{margin-top:1.1rem;color:rgba(237,238,244,.78);max-width:36em;font-size:1.02rem}
.autor .zitat{margin-top:2rem;padding-left:1.4rem;border-left:1px solid rgba(228,181,106,.5);font:500 1.1rem/1.5 var(--sans);color:rgba(237,238,244,.9)}
@media (max-width:860px){.a-raster{grid-template-columns:1fr}.a-bild{max-width:340px;margin:0}}

/* ---------- Wochenende ---------- */
.wo{position:relative;color:var(--creme);overflow:hidden;background:radial-gradient(110% 90% at 50% 110%,rgba(var(--schein),.26) 0%,rgba(var(--schein),.07) 34%,var(--nacht) 70%,var(--nacht2) 100%);padding:clamp(7rem,12vw,11rem) 0 clamp(6rem,10vw,8rem)}
.wo::before{content:"";position:absolute;left:50%;bottom:-10%;width:min(1200px,140vw);height:520px;transform:translateX(-50%);pointer-events:none;background:radial-gradient(ellipse at center,rgba(var(--schein),.16) 0%,rgba(var(--schein),.05) 40%,transparent 70%)}
.wo .kopf{max-width:820px;position:relative}
.wo h2{margin-top:1.3rem;font-size:clamp(2.4rem,5.4vw,4.4rem);color:var(--creme)}
.wo .kopf p{margin-top:1.5rem;font-size:1.08rem;color:rgba(237,238,244,.78);max-width:36em}
.wo .kopf .satz{font:600 clamp(1.25rem,2vw,1.6rem)/1.35 var(--sans);letter-spacing:-.015em;color:var(--gold);max-width:30em}
.wo .kopf .satz .weiss{color:var(--creme)}
/* Bilder aus Sursee: Mosaik mit weichen Kanten und warmem Licht */
.wo-bilder{position:relative;margin-top:clamp(3rem,6vw,5rem);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-rows:auto auto;gap:.9rem;height:clamp(420px,46vw,620px)}
.wo-bilder figure{position:relative;overflow:hidden;border-radius:22px;margin:0;background:var(--nacht3)}
.wo-bilder figure:first-child{grid-row:1 / span 2}
.wo-bilder img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.05) brightness(.9);transition:transform 1.6s var(--ease)}
.wo-bilder figure:hover img{transform:scale(1.04)}
.wo-bilder figure::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(14,18,38,.05) 40%,rgba(14,18,38,.55) 100%),linear-gradient(90deg,rgba(var(--schein),.08),transparent 50%);box-shadow:inset 0 0 0 1px rgba(228,181,106,.14)}
.wo-bilder figcaption{position:absolute;left:1.3rem;bottom:1.1rem;z-index:2;white-space:nowrap;font:600 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:rgba(237,238,244,.85)}
@media (max-width:760px){.wo-bilder{grid-template-columns:1fr 1fr;height:auto}.wo-bilder figure{aspect-ratio:4/3}.wo-bilder figure:first-child{grid-column:1 / span 2;grid-row:auto;aspect-ratio:16/10}}
.termine{margin-top:clamp(2rem,4vw,3rem);display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.termin{position:relative;border-radius:26px;padding:8px;background:linear-gradient(160deg,rgba(228,181,106,.35),rgba(228,181,106,.06) 40%,rgba(237,238,244,.04));transition:transform .6s var(--ease)}
.termin:hover{transform:translateY(-6px)}
.termin .in{border-radius:20px;padding:clamp(1.6rem,3vw,2.4rem);height:100%;background:radial-gradient(ellipse 70% 60% at 80% 10%,rgba(var(--schein),.12),transparent 60%),var(--nacht3);border:1px solid rgba(237,238,244,.08);display:flex;flex-direction:column}
.termin .monat{font:600 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.termin .datum{margin-top:.9rem;font:600 clamp(1.7rem,2.8vw,2.3rem)/1.05 var(--sans);letter-spacing:-.025em;color:var(--creme)}
.termin .tage{margin-top:.5rem;font:500 1.05rem/1.4 var(--sans);color:rgba(237,238,244,.7)}
.termin ul{list-style:none;margin-top:1.6rem;display:grid;gap:.55rem;font-size:.95rem;color:rgba(237,238,244,.82)}
.termin li{display:flex;gap:.8rem;align-items:baseline}
.termin li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--gold);position:relative;top:-2px}
.termin .preis{margin-top:auto;padding-top:1.8rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.termin .preis b{font:600 2rem/1 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--creme)}
.termin .preis small{display:block;margin-top:.3rem;font-size:.8rem;color:rgba(237,238,244,.55)}
.termin .plaetze{font:600 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--tat)}
.termin .kn-reihe{margin-top:1.4rem}
.wo .ort{margin-top:2.2rem;display:flex;flex-wrap:wrap;gap:.6rem 2rem;font-size:.9rem;color:rgba(237,238,244,.6)}
.wo .ort span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-right:.7rem;position:relative;top:-2px}
@media (max-width:820px){.termine{grid-template-columns:1fr}}

/* ---------- Fuss ---------- */
.fuss{background:var(--nacht2);padding:3rem 0 2.6rem;border-top:1px solid rgba(237,238,244,.07)}
.fuss .hof{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem}
.fuss .fm{display:flex;align-items:center;gap:12px;font:600 11px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:rgba(237,238,244,.65)}
.fuss .fm img{width:40px;height:auto;opacity:.8}
.fuss .fl{font-size:.84rem;letter-spacing:.02em;color:rgba(237,238,244,.4);display:flex;flex-wrap:wrap;gap:.4rem 1.4rem}
.fuss .fl a{border-bottom:1px solid rgba(237,238,244,.15);transition:color .4s var(--ease),border-color .4s var(--ease)}
.fuss .fl a:hover{color:var(--gold);border-color:rgba(228,181,106,.5)}

/* ---------- Reveal ---------- */
.rv{opacity:0;transform:translateY(34px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .rv{opacity:1;transform:none}
}

/* ── Drei Wege (07.09.2026): Abend, Wochenende, Begleitung nebeneinander, Datum in der Box ── */
.wege-reihe{margin-top:clamp(2.4rem,4vw,3.4rem);display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.weg{position:relative;border-radius:26px;padding:8px;background:linear-gradient(160deg,rgba(var(--schein),.6),rgba(var(--schein),.14) 42%,rgba(237,238,244,.04));transition:transform .6s var(--ease)}
.weg:hover{transform:translateY(-6px)}
.weg .in{border-radius:20px;padding:clamp(1.5rem,2.4vw,2.2rem);height:100%;background:radial-gradient(ellipse 80% 60% at 85% 0%,rgba(var(--schein),.28),transparent 62%),var(--nacht3);border:1px solid rgba(237,238,244,.08);display:flex;flex-direction:column}
.weg .eti{font-size:10px}
.weg h3{margin-top:.9rem;font:600 clamp(1.5rem,2.2vw,2rem)/1.1 var(--dsp);letter-spacing:-.02em;color:var(--creme)}
.weg .weg-satz{margin-top:.8rem;font-size:.98rem;line-height:1.55;color:rgba(237,238,244,.78)}
.weg ul{list-style:none;margin-top:1.3rem;display:grid;gap:.5rem;font-size:.92rem;color:rgba(237,238,244,.78)}
.weg li{display:flex;gap:.8rem;align-items:baseline}
.weg li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--gold);position:relative;top:-2px}
.wahl{margin-top:1.4rem;border:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.wahl legend{font:600 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:rgba(237,238,244,.55);margin-bottom:.7rem;width:100%}
.wahl label{position:relative;cursor:pointer}
.wahl input{position:absolute;opacity:0;width:1px;height:1px}
.wahl span{display:inline-flex;align-items:center;min-height:40px;padding:0 .95rem;border-radius:999px;border:1px solid rgba(237,238,244,.2);background:rgba(237,238,244,.04);font:500 .9rem/1 var(--sans);color:rgba(237,238,244,.8);white-space:nowrap;transition:border-color .35s var(--ease),background .35s var(--ease),color .35s var(--ease)}
.wahl label:hover span{border-color:rgba(237,238,244,.45);color:var(--creme)}
.wahl input:checked+span{border-color:var(--tat);background:rgba(var(--schein),.28);color:var(--creme)}
.wahl input:focus-visible+span{outline:2px solid var(--tat);outline-offset:2px}
/* Ort in der Pille: Datum fuehrt, der Ort steht gedaempft dahinter (Andy 09.09.2026,
   zwei Orte in einer Box seit der Lesung vom 22. Oktober in Sursee). */
.wahl span i{font-style:normal;font-weight:400;font-size:.82rem;color:rgba(237,238,244,.5);margin-left:.6rem;padding-left:.65rem;border-left:1px solid rgba(237,238,244,.16);transition:color .35s var(--ease),border-color .35s var(--ease)}
.wahl label:hover span i{color:rgba(237,238,244,.72);border-color:rgba(237,238,244,.3)}
.wahl input:checked+span i{color:rgba(237,238,244,.8);border-color:rgba(237,238,244,.35)}
/* Adresszeile unter der Auswahl: wechselt mit der Pille, fuehrt auf die Karte. */
.wahl-ort{margin-top:1rem;display:flex;align-items:flex-start;gap:.55rem;font:400 .85rem/1.45 var(--sans);color:rgba(237,238,244,.6)}
.wahl-ort svg{flex:none;width:13px;height:13px;margin-top:.22rem;fill:var(--gold);opacity:.85}
.wahl-ort a{color:inherit;text-decoration:underline;text-decoration-color:rgba(237,238,244,.22);text-decoration-thickness:1px;text-underline-offset:3px;transition:color .35s var(--ease),text-decoration-color .35s var(--ease)}
.wahl-ort a:hover{color:var(--creme);text-decoration-color:rgba(237,238,244,.5)}
.weg .preis{margin-top:auto;padding-top:1.6rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.weg .preis b{font:600 1.9rem/1 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--creme)}
.weg .preis small{display:block;margin-top:.3rem;font-size:.8rem;color:rgba(237,238,244,.55)}
.weg .plaetze{font:600 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--creme);opacity:.6}
.weg .kn-reihe{margin-top:1.3rem}
@media (max-width:1060px){.wege-reihe{grid-template-columns:1fr}.weg .in{max-width:640px}}

.fuss .fl-recht{margin-top:16px;font-size:.82rem;line-height:1.55;color:rgba(237,238,244,.5);max-width:62ch}
.fuss .hof .fl-recht{flex-basis:100%}
