:root{
  --ink:#11110f;
  --ash:#353431;
  --muted:#747069;
  --paper:#f4f0e8;
  --bone:#ebe4d8;
  --chalk:#fbf8f1;
  --smoke:#d7d0c4;
  --rust:#9b5d36;
  --moss:#5f6b55;
  --blue:#2d4d5d;
  --line:rgba(17,17,15,.16);
  --line-soft:rgba(17,17,15,.09);
  --line-light:rgba(244,240,232,.18);
  --display:"Archivo Narrow","Helvetica Neue",Arial,sans-serif;
  --serif:"Cormorant Garamond",Georgia,serif;
  --mono:"JetBrains Mono","SFMono-Regular",Consolas,monospace;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--serif);
  background-image:
    linear-gradient(90deg,rgba(17,17,15,.035) 1px,transparent 1px),
    linear-gradient(rgba(17,17,15,.03) 1px,transparent 1px);
  background-size:64px 64px;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:20;
  opacity:.28;
  background-image:radial-gradient(rgba(17,17,15,.12) .55px,transparent .8px);
  background-size:4px 4px;
  mix-blend-mode:multiply;
}

a{color:inherit;text-decoration:none}

img{display:block;max-width:100%}

::selection{background:var(--ink);color:var(--paper)}

.nav{
  position:sticky;
  top:0;
  z-index:30;
  border-bottom:1px solid var(--line);
  background:rgba(244,240,232,.9);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  font-family:var(--mono);
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:11px;
}

.nav-inner{
  min-height:64px;
  padding:0 28px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:24px;
  align-items:center;
}

.nav-mark{display:flex;align-items:center;gap:12px}

.mark-symbol{
  width:28px;
  height:28px;
  border:1px solid var(--ink);
  display:grid;
  place-items:center;
  background:var(--ink);
  color:var(--paper);
  font-family:var(--display);
  font-size:17px;
  line-height:1;
}

.nav-mark b{font-family:var(--display);letter-spacing:.18em;font-size:13px}

.nav-links{display:flex;justify-content:center;gap:26px}

.nav-links a{opacity:.58}

.nav-links a:hover,
.nav-links a.active{opacity:1}

.nav-action{display:flex;justify-content:flex-end;align-items:center;gap:16px}

.nav-note{opacity:.55}

.pill{
  border:1px solid var(--ink);
  padding:10px 14px;
  background:rgba(251,248,241,.45);
}

.pill:hover{background:var(--ink);color:var(--paper)}

.nav-dropdown{display:none}

.nav-dropdown summary{
  list-style:none;
  cursor:pointer;
  user-select:none;
  border:1px solid var(--ink);
  padding:10px 14px;
  background:rgba(251,248,241,.72);
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.nav-dropdown summary::-webkit-details-marker{display:none}

.mobile-menu{
  position:fixed;
  top:64px;
  left:0;
  right:0;
  width:100vw;
  z-index:40;
  display:grid;
  background:rgba(244,240,232,.98);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  box-shadow:0 18px 34px rgba(17,17,15,.12);
}

.mobile-menu a{
  padding:18px 28px;
  border-bottom:1px solid var(--line-soft);
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  text-align:left;
  white-space:normal;
}

.mobile-menu a:last-child{border-bottom:0}

.mobile-menu a:hover{background:var(--chalk)}

.cta-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:34px}

.btn{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1px solid var(--ink);
  padding:14px 18px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.btn.primary{background:var(--ink);color:var(--paper)}

.btn.primary:hover{background:var(--rust);border-color:var(--rust)}

.btn.secondary:hover{background:var(--ink);color:var(--paper)}

.ticker{
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:var(--ink);
  color:var(--paper);
  height:32px;
  display:flex;
  align-items:center;
}

.ticker-track{
  display:flex;
  width:max-content;
  animation:marquee 62s linear infinite;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.18em;
  line-height:1;
  text-transform:uppercase;
  white-space:nowrap;
}

.ticker span{padding:0 28px}

.ticker i{
  font-family:var(--serif);
  font-size:18px;
  letter-spacing:0;
  font-weight:300;
  color:var(--rust);
  text-transform:none;
}

@keyframes marquee{to{transform:translateX(-50%)}
}

.scroll-scene{
  min-height:calc(100svh - 96px);
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  padding:clamp(34px,5vh,58px) clamp(34px,5vw,76px);
  border-bottom:1px solid var(--line);
  background:
    linear-gradient(90deg,rgba(244,240,232,.98),rgba(244,240,232,.9) 42%,rgba(235,228,216,.7) 66%,rgba(17,17,15,.16)),
    var(--paper);
  isolation:isolate;
}

.scroll-scene::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(244,240,232,.96) 0%,rgba(244,240,232,.9) 32%,rgba(244,240,232,.58) 48%,rgba(17,17,15,.08) 68%,rgba(17,17,15,.22) 100%),
    linear-gradient(180deg,rgba(244,240,232,.12),rgba(17,17,15,.24));
}

.dark-scene{
  color:var(--paper);
  background:
    linear-gradient(90deg,rgba(17,17,15,.96),rgba(17,17,15,.88) 42%,rgba(53,52,49,.74) 70%,rgba(155,93,54,.18)),
    var(--ink);
  border-bottom-color:var(--line-light);
}

.dark-scene::after{
  background:
    linear-gradient(90deg,rgba(17,17,15,.94) 0%,rgba(17,17,15,.86) 34%,rgba(17,17,15,.58) 54%,rgba(17,17,15,.24) 100%),
    linear-gradient(180deg,rgba(17,17,15,.12),rgba(17,17,15,.72));
}

.scene-copy{
  position:relative;
  z-index:5;
  max-width:min(680px,54vw);
  margin-left:0;
  padding:0;
}

.scene-copy > *{
  opacity:0;
  transform:translateY(34px);
  clip-path:inset(-0.18em -0.08em 100% -0.08em);
  transition:opacity .72s ease,transform .86s cubic-bezier(.2,.72,.18,1),clip-path .86s cubic-bezier(.2,.72,.18,1);
}

.scroll-scene.step-1 .scene-index,
.scroll-scene.step-2 .scene-title,
.scroll-scene.step-3 .scene-lede,
.scroll-scene.step-3 .scene-actions{
  opacity:1;
  transform:translateY(0);
  clip-path:inset(-0.18em -0.08em -0.22em -0.08em);
}

.scroll-scene.step-2 .scene-title{transition-delay:.04s}

.scroll-scene.step-3 .scene-lede{transition-delay:.06s}

.scroll-scene.step-3 .scene-actions{transition-delay:.12s}

.scene-index{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--rust);
  margin-bottom:14px;
}

.dark-scene .scene-index{color:rgba(244,240,232,.62)}

.scene-title{
  margin:0;
  padding-bottom:.14em;
  max-width:11.8ch;
  font-family:var(--display);
  font-size:clamp(56px,7.2vw,112px);
  line-height:.82;
  text-transform:uppercase;
  letter-spacing:0;
}

.scene-title em{
  display:block;
  padding-bottom:.08em;
  max-width:12.8ch;
  font-family:var(--serif);
  font-weight:300;
  font-style:italic;
  text-transform:none;
  color:var(--rust);
}

.dark-scene .scene-title em{color:#c49a7b}

.scene-lede{
  margin:18px 0 0;
  max-width:44ch;
  color:var(--ash);
  font-size:clamp(20px,1.55vw,26px);
  line-height:1.12;
  font-weight:300;
}

.scene-lede span{font-style:italic}

.dark-scene .scene-lede{color:rgba(244,240,232,.74)}

.scene-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}

.scene-link{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid currentColor;
  padding:12px 16px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  background:rgba(251,248,241,.34);
}

.scene-link:hover{
  background:var(--ink);
  color:var(--paper);
}

.dark-scene .scene-link{background:rgba(244,240,232,.08)}

.dark-scene .scene-link:hover{
  background:var(--paper);
  color:var(--ink);
}

.letter-scene{
  display:grid;
  grid-template-columns:minmax(300px,640px) minmax(300px,560px);
  gap:clamp(36px,8vw,130px);
  background:#10100e;
}

.letter-scene::after{
  background:
    radial-gradient(circle at 72% 42%,rgba(155,93,54,.16),transparent 34%),
    linear-gradient(90deg,rgba(16,16,14,.96),rgba(16,16,14,.88) 46%,rgba(16,16,14,.66) 100%);
}

.letter-card{
  position:relative;
  z-index:5;
  display:grid;
  gap:26px;
  border:1px solid rgba(244,240,232,.26);
  padding:clamp(34px,4.5vw,62px);
  background:rgba(244,240,232,.025);
  box-shadow:0 28px 90px rgba(0,0,0,.38);
  opacity:0;
  transform:translateY(34px);
  clip-path:inset(-0.18em -0.08em 100% -0.08em);
  transition:opacity .72s ease,transform .86s cubic-bezier(.2,.72,.18,1),clip-path .86s cubic-bezier(.2,.72,.18,1);
}

.letter-scene.step-3 .letter-card{
  opacity:1;
  transform:translateY(0);
  clip-path:inset(-0.18em -0.08em -0.22em -0.08em);
}

.letter-card label{
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:rgba(244,240,232,.56);
}

.letter-card input{
  width:100%;
  border:0;
  border-bottom:1px solid rgba(244,240,232,.34);
  background:transparent;
  color:var(--paper);
  padding:8px 0 24px;
  font-family:var(--serif);
  font-style:italic;
  font-size:clamp(28px,3.2vw,44px);
  outline:none;
}

.letter-card input::placeholder{color:rgba(244,240,232,.32)}

.letter-card button{
  width:max-content;
  min-height:58px;
  display:inline-flex;
  align-items:center;
  gap:28px;
  border:1px solid var(--paper);
  background:transparent;
  color:var(--paper);
  padding:16px 24px;
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:.22em;
  text-transform:uppercase;
  cursor:pointer;
}

.letter-card button:hover{
  background:var(--paper);
  color:var(--ink);
}

.letter-card p{
  margin:2px 0 0;
  max-width:38ch;
  font-family:var(--mono);
  font-size:11px;
  line-height:1.45;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(244,240,232,.42);
}

.scene-landscape{
  position:absolute;
  inset:0;
  z-index:0;
  min-height:100%;
  width:100%;
  perspective:1100px;
  transform-style:preserve-3d;
  opacity:1;
  transform:scale(1.04);
  transition:transform 1.4s cubic-bezier(.2,.72,.18,1),filter 1.4s ease;
}

.scroll-scene.is-visible .scene-landscape,
.scroll-scene.step-2 .scene-landscape{
  transform:scale(1);
}

.scene-bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:68% 50%;
  filter:grayscale(.05) contrast(1.08) brightness(.82);
  transform:scale(1.08) translateY(calc(var(--scene-shift, 0px) * -1));
  transition:transform 1.4s cubic-bezier(.2,.72,.18,1),filter 1.4s ease,opacity 1.2s ease;
  opacity:.88;
}

.dark-scene .scene-bg{
  filter:grayscale(.06) contrast(1.14) brightness(.56);
  opacity:.92;
}

.scroll-scene.step-3 .scene-bg{
  transform:scale(1.015) translateY(calc(var(--scene-shift, 0px) * -1));
}

.terrain,
.book-monolith,
.wave,
.audio-stone,
.paper-plane,
.object-block{
  position:absolute;
  transform-style:preserve-3d;
  border:1px solid rgba(17,17,15,.14);
  box-shadow:0 34px 70px rgba(17,17,15,.18);
}

.dark-scene .terrain,
.dark-scene .wave,
.dark-scene .audio-stone,
.dark-scene .object-block{
  border-color:rgba(244,240,232,.16);
  box-shadow:0 34px 80px rgba(0,0,0,.42);
}

.landscape-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(244,240,232,.18),rgba(17,17,15,.28));
}

.slab-a{
  width:30%;
  height:58%;
  right:18%;
  bottom:8%;
  background:linear-gradient(135deg,#c5bbae,#615f59);
  transform:rotateY(-24deg) rotateX(4deg) translateZ(70px);
}

.slab-b{
  width:22%;
  height:48%;
  right:38%;
  bottom:2%;
  background:linear-gradient(135deg,#d5cec3,#78746b);
  transform:rotateY(18deg) rotateX(7deg) translateZ(36px);
}

.ridge{
  width:72%;
  height:16%;
  right:4%;
  bottom:0;
  background:linear-gradient(90deg,#ebe4d8,#5f5c55);
  transform:rotateX(68deg) translateZ(34px);
}

.book-monolith{
  width:min(280px,42%);
  height:62%;
  left:18%;
  top:12%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:28px;
  background:linear-gradient(135deg,#11110f,#34322e 52%,#9b5d36);
  color:var(--paper);
  transform:rotateY(-19deg) rotateX(2deg) translateZ(80px);
}

.book-monolith span{
  font-family:var(--mono);
  letter-spacing:.18em;
  color:#c49a7b;
}

.book-monolith b{
  font-family:var(--display);
  font-size:48px;
  line-height:.9;
  text-transform:uppercase;
}

.stair{
  height:18%;
  background:linear-gradient(135deg,#f4f0e8,#a39a8c);
  transform:rotateX(66deg) rotateZ(-5deg);
}

.stair-1{width:70%;right:6%;bottom:7%;translate:0 0 30px}

.stair-2{width:56%;right:14%;bottom:18%;translate:0 0 60px}

.stair-3{width:42%;right:24%;bottom:29%;translate:0 0 90px}

.wave{
  left:8%;
  right:8%;
  height:18%;
  border-radius:100% 100% 0 0;
  background:linear-gradient(180deg,rgba(244,240,232,.3),rgba(244,240,232,.04));
  transform:rotateX(68deg) translateZ(20px);
}

.wave-1{bottom:10%;translate:0 0 20px}

.wave-2{bottom:25%;translate:0 0 70px}

.wave-3{bottom:40%;translate:0 0 120px}

.audio-stone{
  width:30%;
  height:45%;
  right:20%;
  top:22%;
  background:linear-gradient(145deg,#353431,#11110f);
  transform:rotateY(22deg) translateZ(98px);
}

.paper-plane{
  width:44%;
  height:34%;
  background:rgba(251,248,241,.76);
  transform:rotateY(-20deg) rotateX(12deg);
}

.plane-1{left:8%;top:12%;translate:0 0 100px}

.plane-2{left:28%;top:31%;translate:0 0 48px}

.plane-3{left:48%;top:50%;translate:0 0 12px}

.thin-ridge{
  width:86%;
  height:12%;
  left:4%;
  bottom:6%;
  background:linear-gradient(90deg,#d7d0c4,#747069);
  transform:rotateX(72deg);
}

.object-block{
  background:linear-gradient(145deg,#ebe4d8,#747069);
}

.object-1{
  width:24%;
  height:44%;
  left:14%;
  bottom:16%;
  transform:rotateY(-28deg) translateZ(92px);
}

.object-2{
  width:18%;
  height:34%;
  left:42%;
  bottom:20%;
  transform:rotateY(18deg) translateZ(44px);
}

.object-3{
  width:26%;
  height:26%;
  right:8%;
  bottom:24%;
  transform:rotateY(32deg) translateZ(66px);
}

.base-plane{
  width:88%;
  height:18%;
  left:4%;
  bottom:4%;
  background:linear-gradient(90deg,rgba(244,240,232,.18),rgba(244,240,232,.05));
  transform:rotateX(70deg);
}

.landscape-letters{
  opacity:.7;
}

.letter-plane{
  position:absolute;
  border:1px solid rgba(244,240,232,.12);
  background:linear-gradient(135deg,rgba(244,240,232,.08),rgba(244,240,232,.015));
  box-shadow:0 34px 80px rgba(0,0,0,.36);
}

.letter-plane-1{
  width:34%;
  height:54%;
  right:12%;
  top:18%;
  transform:rotateY(-24deg) rotateX(6deg) translateZ(60px);
}

.letter-plane-2{
  width:26%;
  height:38%;
  right:34%;
  top:38%;
  transform:rotateY(18deg) rotateX(10deg) translateZ(20px);
}

.letter-line{
  position:absolute;
  right:10%;
  bottom:18%;
  width:48%;
  height:1px;
  background:rgba(244,240,232,.18);
  transform:rotateZ(-4deg);
}

.scroll-scene.is-visible .terrain,
.scroll-scene.is-visible .book-monolith,
.scroll-scene.is-visible .wave,
.scroll-scene.is-visible .audio-stone,
.scroll-scene.is-visible .paper-plane,
.scroll-scene.is-visible .object-block,
.scroll-scene.is-visible .letter-plane{
  animation:sceneDrift 7s ease-in-out infinite alternate;
}

@keyframes sceneDrift{
  from{margin-top:0}

to{margin-top:calc(var(--scroll-y, 0px) + 12px)}
}

.section{
  padding:96px 56px;
  border-bottom:1px solid var(--line);
}

.section.dark{
  background:var(--ink);
  color:var(--paper);
  border-bottom-color:var(--line-light);
}

.section-head{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:44px;
  align-items:start;
  margin-bottom:54px;
}

.intro-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:64px;
  align-items:start;
}

.lead-text{
  font-size:clamp(28px,3.2vw,46px);
  line-height:1.12;
  font-weight:300;
}

.lead-text p{margin:0 0 24px}

.body-text{
  color:var(--ash);
  font-size:24px;
  line-height:1.35;
  font-weight:300;
}

.dark .body-text{color:rgba(244,240,232,.72)}

.body-text p{margin:0 0 20px}

.system-card{
  background:var(--paper);
  min-height:310px;
  padding:32px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.card-tag{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--muted);
}

.system-card h3{
  margin:44px 0 14px;
  font-family:var(--display);
  font-size:58px;
  line-height:.9;
  text-transform:uppercase;
}

.system-card p{
  margin:0;
  font-size:22px;
  line-height:1.25;
  color:var(--ash);
  font-weight:300;
}

.spur-card{
  min-height:230px;
  padding:24px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:rgba(251,248,241,.36);
  display:grid;
  grid-template-rows:24px 1fr;
  align-items:start;
}

.spur-card:hover{background:var(--chalk)}

.spur-card span{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--muted);
}

.spur-card h3{
  margin:52px 0 0;
  font-family:var(--display);
  font-size:34px;
  line-height:.9;
  text-transform:uppercase;
}

.spur-card p{
  margin:10px 0 0;
  color:var(--ash);
  font-size:19px;
  line-height:1.22;
  font-style:italic;
}

.book-page{
  flex:0 0 calc((100% - 28px) / 2);
  scroll-snap-align:start;
  position:relative;
  min-height:720px;
  padding:42px 46px 56px;
  border:1px solid var(--line);
  background:
    linear-gradient(90deg,rgba(17,17,15,.025) 1px,transparent 1px),
    linear-gradient(rgba(17,17,15,.022) 1px,transparent 1px),
    var(--chalk);
  background-size:22px 22px;
  box-shadow:0 18px 50px rgba(17,17,15,.08);
  display:flex;
  flex-direction:column;
}

.book-page::after{
  counter-increment:bookpage;
  content:counter(bookpage);
  position:absolute;
  left:46px;
  bottom:24px;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.18em;
  color:var(--muted);
}

.book-page h3{
  margin:34px 0 0;
  font-family:var(--display);
  font-size:clamp(38px,4vw,58px);
  line-height:.9;
  text-transform:uppercase;
}

.page-hero{
  padding:104px 56px 84px;
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:1fr minmax(280px,520px);
  gap:56px;
  align-items:end;
}

.page-hero .eyebrow,
.eyebrow{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--rust);
}

.page-hero h1{
  margin:18px 0 0;
  font-family:var(--display);
  font-size:clamp(72px,10vw,156px);
  line-height:.8;
  text-transform:uppercase;
}

.page-hero h1 em{
  display:block;
  font-family:var(--serif);
  font-weight:300;
  font-style:italic;
  text-transform:none;
  color:var(--rust);
}

.page-hero p{
  margin:0;
  font-size:clamp(24px,2.4vw,36px);
  line-height:1.12;
  color:var(--ash);
  font-weight:300;
}

.product{
  display:grid;
  grid-template-columns:minmax(280px,460px) 1fr;
  gap:72px;
  align-items:start;
}

.article-list{border-top:1px solid var(--line)}

.article-link{
  display:grid;
  grid-template-columns:160px 1fr 36px;
  gap:28px;
  padding:32px 0;
  border-bottom:1px solid var(--line);
  align-items:baseline;
}

.article-link h3{
  margin:0;
  font-family:var(--display);
  font-size:42px;
  line-height:.9;
  text-transform:uppercase;
}

.article-link p{
  margin:10px 0 0;
  font-size:22px;
  line-height:1.24;
  color:var(--ash);
  font-style:italic;
}

.article-link:hover h3{color:var(--rust)}

.shop-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}

.audio-card,
.shop-card{
  min-height:300px;
  padding:30px;
  background:var(--chalk);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.audio-card time{
  font-family:var(--display);
  font-size:58px;
  line-height:.9;
}

.audio-card h3,
.shop-card h3{
  margin:34px 0 12px;
  font-family:var(--display);
  font-size:36px;
  line-height:.9;
  text-transform:uppercase;
}

.audio-card p,
.shop-card p{
  margin:0;
  font-size:21px;
  line-height:1.25;
  color:var(--ash);
  font-weight:300;
}

.shop-card .object{
  height:138px;
  border:1px solid var(--line);
  background:
    linear-gradient(135deg,transparent 49%,var(--line) 50%,transparent 51%),
    var(--bone);
}

.shop-card.featured{background:var(--ink);color:var(--paper)}

.shop-card.featured p,
.shop-card.featured .card-tag{color:rgba(244,240,232,.7)}

.shop-card.featured .object{background:var(--rust);border-color:rgba(244,240,232,.2)}

.cta-block{
  padding:104px 56px;
  text-align:center;
  border-bottom:1px solid var(--line);
  background:var(--bone);
}

.cta-block h2{
  margin:18px auto 0;
  max-width:900px;
  font-family:var(--display);
  font-size:clamp(58px,8vw,130px);
  line-height:.82;
  text-transform:uppercase;
}

.cta-block h2 em{
  display:block;
  font-family:var(--serif);
  font-style:italic;
  font-weight:300;
  text-transform:none;
  color:var(--rust);
}

.cta-block p{
  margin:28px auto 0;
  max-width:48ch;
  font-size:26px;
  line-height:1.22;
  color:var(--ash);
  font-weight:300;
}

.cta-block .cta-row{justify-content:center}

footer{
  background:var(--ink);
  color:var(--paper);
  padding:58px 56px 30px;
}

.ft-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:46px;
  border-bottom:1px solid var(--line-light);
  padding-bottom:42px;
}

.ft-mark{
  font-family:var(--display);
  font-size:44px;
  line-height:.86;
  text-transform:uppercase;
}

.ft-mark em{
  display:block;
  font-family:var(--serif);
  text-transform:none;
  font-weight:300;
  font-style:italic;
  color:var(--rust);
  font-size:26px;
}

.ft-grid p{
  max-width:38ch;
  color:rgba(244,240,232,.68);
  font-size:18px;
  line-height:1.28;
}

.ft-col h5{
  margin:0 0 14px;
  font-family:var(--display);
  font-size:15px;
  text-transform:uppercase;
}

.ft-col a{
  display:block;
  padding:6px 0;
  color:rgba(244,240,232,.68);
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.ft-col a:hover{color:var(--rust)}

.ft-bottom{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding-top:24px;
  color:rgba(244,240,232,.48);
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.17em;
  text-transform:uppercase;
}

@media(max-width:1040px){
.nav-inner{grid-template-columns:auto 1fr auto;gap:18px}

.nav-links{gap:18px}

.nav-note{display:none}

.scroll-scene{
    grid-template-columns:1fr;
    gap:28px;
    min-height:auto;
  }

.letter-scene{
    grid-template-columns:1fr;
  }

.scene-landscape{min-height:42vh}
}

@media(max-width:760px){
.nav-inner{grid-template-columns:1fr auto}

.nav-links,
.nav-action{display:none}

.nav-dropdown{
    display:block;
    position:absolute;
    top:13px;
    right:18px;
  }
}

@media(max-width:700px){
.nav-inner{grid-template-columns:1fr auto}

.nav-links,
.nav-note,
.nav-action{display:none}

.section-head,
.intro-grid,
.page-hero,
.product{grid-template-columns:1fr}

.shop-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:680px){
.nav-inner{padding:0 18px}

.nav-action .pill{display:none}

.scroll-scene{
    min-height:calc(100svh - 96px);
    padding:30px 22px 36px;
    align-items:center;
  }

.scene-copy{
    max-width:100%;
  }

.scene-title{
    font-size:clamp(44px,13vw,66px);
    line-height:.86;
  }

.scene-lede{
    margin-top:14px;
    font-size:20px;
    line-height:1.12;
    max-width:34ch;
  }

.scene-actions{
    margin-top:18px;
    gap:10px;
  }

.scene-link{
    min-height:42px;
    padding:11px 14px;
  }

.letter-card{
    padding:26px 22px;
  }

.letter-card button{
    width:100%;
    justify-content:space-between;
  }

.scene-landscape{
    min-height:330px;
  }

.book-monolith{left:4%;width:48%}

.slab-a{right:6%;width:42%}

.slab-b{right:38%;width:32%}

.paper-plane{width:58%}

.object-1{left:4%;width:34%}

.object-2{left:38%;width:26%}

.object-3{right:2%;width:34%}

.section,
.page-hero,
.cta-block,
footer{padding-left:22px;padding-right:22px}

.shop-grid,
.ft-grid{grid-template-columns:1fr}

.book-page{flex-basis:100%;min-height:auto;padding:34px 24px 58px}

.article-link{grid-template-columns:1fr;gap:10px}

.ft-bottom{flex-direction:column}
}

/* =====================================================
INNER CONCRETE — SCROLL ANIMATION SYSTEM FOR SUBPAGES
Matches the staged reveal rhythm from the index scroll scenes.
===================================================== */
.ic-animated{
  --scene-shift:0px;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.ic-animated > *{
  opacity:0;
  transform:translateY(calc(30px + (var(--scene-shift) * .18)));
  clip-path:inset(-0.18em -0.08em 100% -0.08em);
  transition:
    opacity .72s ease,
    transform .86s cubic-bezier(.2,.72,.18,1),
    clip-path .86s cubic-bezier(.2,.72,.18,1);
}

.ic-animated.step-1 > :nth-child(1),
.ic-animated.step-2 > :nth-child(2),
.ic-animated.step-3 > :nth-child(3),
.ic-animated.step-4 > :nth-child(n+4){
  opacity:1;
  transform:translateY(0);
  clip-path:inset(-0.18em -0.08em -0.22em -0.08em);
}

.ic-animated.step-2 > :nth-child(2){transition-delay:.04s}

.ic-animated.step-3 > :nth-child(3){transition-delay:.08s}

.ic-animated.step-4 > :nth-child(n+4){transition-delay:.12s}

.ic-reveal-item{
  opacity:0;
  transform:translateY(calc(32px + (var(--scene-shift,0px) * .14)));
  transition:
    opacity .78s ease,
    transform .92s cubic-bezier(.2,.72,.18,1),
    border-color .55s ease,
    background .55s ease,
    box-shadow .55s ease;
  will-change:transform,opacity;
}

.ic-reveal-item.is-visible,
.ic-reveal-item.step-2{
  opacity:1;
  transform:translateY(0);
}

.ic-reveal-item:nth-child(2n){transition-delay:.05s}

.ic-reveal-item:nth-child(3n){transition-delay:.1s}

.ic-reveal-item:nth-child(4n){transition-delay:.15s}

.ic-animated.page-hero::after,
.ic-animated.cta-block::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:1px;
  transform:translateX(-101%);
  background:currentColor;
  opacity:.24;
  transition:transform 1.1s cubic-bezier(.2,.72,.18,1);
}

.ic-animated.page-hero.step-4::after,
.ic-animated.cta-block.step-4::after{transform:translateX(0)}

@media (prefers-reduced-motion:reduce){
.ic-animated > *,
.ic-reveal-item{
    opacity:1 !important;
    transform:none !important;
    clip-path:none !important;
    transition:none !important;
  }
}

@keyframes heroTrackSwap{
  0%{opacity:0;transform:translateY(10px);filter:blur(3px)}
  100%{opacity:1;transform:translateY(0);filter:blur(0)}
}

/* =====================================================
   INNER CONCRETE — TARGETED MEDITATION RESTORE
   Basis bleibt: echte Frame-Animation,
Index-DNA,
Scroll-Text,
Raumwirkung.
   Gezielt geändert: rechter Hero-Player raus,
hellerer Hintergrund,
sauberere Textabstände{
  background:#15130f;
}

/* =====================================================
   INNER CONCRETE — MEDITATION TARGETED UPDATE V2
   Flow: echte Frame-Animation bis Orientierung{
  background:#1a1712;
}

#player-bar.inline-track-player{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  z-index:4 !important;
  width:100% !important;
  height:auto !important;
  min-height:104px !important;
  transform:none !important;
  display:grid !important;
  grid-template-columns:minmax(250px,.92fr) auto minmax(270px,1.08fr) auto auto !important;
  align-items:center !important;
  gap:clamp(14px,2vw,24px) !important;
  padding:22px clamp(20px,3vw,34px) !important;
  background:
    linear-gradient(145deg,rgba(244,240,232,.055),rgba(244,240,232,.018)),
    rgba(18,16,13,.82) !important;
  border:1px solid rgba(244,240,232,.10) !important;
  border-radius:0 !important;
  box-shadow:0 28px 84px rgba(0,0,0,.22) !important;
  color:var(--paper) !important;
}

#player-bar.inline-track-player.visible,
#player-bar.inline-track-player:not(.visible){
  transform:none !important;
}

#player-bar.inline-track-player .player-info{
  max-width:none !important;
  gap:7px;
}

#player-bar.inline-track-player .player-title{
  font-size:13px;
  letter-spacing:.05em;
  color:rgba(244,240,232,.9);
}

#player-bar.inline-track-player .player-spur{
  color:rgba(235,228,216,.50);
  opacity:1;
}

.track-select-label{
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#bfae8e;
}

.track-select{
  width:100%;
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(244,240,232,.12);
  border-radius:0;
  background:rgba(244,240,232,.055);
  color:var(--paper);
  padding:12px 42px 12px 13px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.08em;
  outline:none;
  cursor:pointer;
}

.track-select:focus{
  border-color:rgba(191,174,142,.52);
}

#player-bar.inline-track-player .player-controls{
  justify-content:center;
}

#player-bar.inline-track-player .player-progress{
  min-width:260px;
}

#player-bar.inline-track-player .player-close{
  opacity:.42;
}

@media (max-width:980px){
#player-bar.inline-track-player{
    grid-template-columns:1fr !important;
  }

#player-bar.inline-track-player .player-progress{
    min-width:0;
    width:100%;
  }
}

@media (max-width:760px){
#player-bar.inline-track-player{
    padding:19px 16px !important;
    min-height:0 !important;
  }
}

/* =====================================================
   INNER CONCRETE — MEDITATION FLOW V3
   Premium flow: weniger Text{
  height:246vh;
  min-height:1560px;
  overflow:hidden;
}

#player-bar.inline-track-player{
  margin-top:0;
  min-height:96px !important;
  grid-template-columns:minmax(260px,.98fr) auto minmax(260px,1.02fr) auto auto !important;
  background:
    linear-gradient(145deg,rgba(244,240,232,.075),rgba(244,240,232,.022)),
    radial-gradient(circle at 84% 10%,rgba(191,174,142,.12),transparent 35%),
    rgba(13,12,10,.68) !important;
  border-color:rgba(244,240,232,.16) !important;
  box-shadow:0 34px 120px rgba(0,0,0,.44),0 0 0 1px rgba(255,255,255,.026) inset !important;
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
}

#player-bar.inline-track-player .player-info{
  gap:8px;
}

#player-bar.inline-track-player .player-title{
  font-size:12px;
  color:rgba(244,240,232,.84);
}

#player-bar.inline-track-player .player-spur{
  font-size:9px;
  letter-spacing:.16em;
  color:rgba(235,228,216,.48);
}

.track-select{
  background:rgba(244,240,232,.07);
  border-color:rgba(244,240,232,.16);
}

.track-select option{
  background:#15130f;
  color:#eee7da;
}

.player-close{
  opacity:.28 !important;
}

@media (max-width:980px){
#player-bar.inline-track-player{
    grid-template-columns:1fr !important;
    gap:17px !important;
    padding:20px !important;
  }

#player-bar.inline-track-player .player-progress{
    min-width:0;
    width:100%;
  }
}

@media (max-width:760px){
.player-volume{
    display:none !important;
  }
}

/* =====================================================
   INDEX — FULLPAGE FRAME ANIMATION
   Concrete Index Map + Index-DNA overlay
   ===================================================== */
.index-frame-page{
  background:#080908;
  color:var(--paper);
  background-image:none;
}

.index-frame-page::before{
  z-index:6;
  opacity:.18;
  mix-blend-mode:screen;
  background-image:radial-gradient(rgba(244,240,232,.16) .45px,transparent .72px);
}

.index-frame-stage{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
  background:#080908;
}

.index-frame-stage::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 42%,rgba(244,240,232,.08),transparent 28%),
    linear-gradient(90deg,rgba(5,6,6,.76) 0%,rgba(5,6,6,.32) 22%,rgba(5,6,6,.14) 50%,rgba(5,6,6,.36) 78%,rgba(5,6,6,.82) 100%),
    linear-gradient(180deg,rgba(5,6,6,.42) 0%,rgba(5,6,6,.08) 38%,rgba(5,6,6,.58) 100%);
}

.index-frame-stage img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:scale(calc(1.018 - (var(--index-progress, 0) * .012)));
  filter:contrast(1.04) brightness(.76) saturate(.72);
}

.index-frame-page .nav,
.index-frame-page main,
.index-frame-page footer,
.index-dna{
  position:relative;
  z-index:4;
}

.index-frame-page .nav{
  position:sticky;
  z-index:8;
  color:rgba(244,240,232,.88);
  border-bottom:1px solid rgba(244,240,232,.12);
  background:rgba(7,8,8,.58);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.index-frame-page .mark-symbol{
  border-color:rgba(244,240,232,.74);
  background:rgba(244,240,232,.9);
  color:#080908;
}

.index-frame-page .nav-links a{opacity:.52}

.index-frame-page .nav-links a:hover,
.index-frame-page .nav-links a.active{opacity:1}

.index-frame-page .pill{
  border-color:rgba(244,240,232,.38);
  background:rgba(244,240,232,.06);
}

.index-frame-page .pill:hover{
  background:var(--paper);
  color:var(--ink);
}

.index-frame-page .nav-dropdown summary{
  color:rgba(244,240,232,.9);
  border-color:rgba(244,240,232,.32);
  background:rgba(7,8,8,.72);
}

.index-frame-page .mobile-menu{
  background:rgba(7,8,8,.96);
  border-color:rgba(244,240,232,.12);
}

.index-frame-page .mobile-menu a{
  color:rgba(244,240,232,.86);
  border-bottom-color:rgba(244,240,232,.1);
}

.index-frame-page .ticker{
  height:30px;
  color:rgba(244,240,232,.62);
  border-bottom:1px solid rgba(244,240,232,.1);
  background:rgba(7,8,8,.34);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.index-frame-page .ticker i{color:rgba(244,240,232,.86)}

.index-frame-page .scroll-scene{
  min-height:92svh;
  color:var(--paper);
  background:transparent;
  border-bottom:0;
  padding:clamp(42px,6.4vh,82px) clamp(34px,6vw,104px);
}

.index-frame-page .scroll-scene::before{
  content:"";
  position:absolute;
  left:clamp(28px,5vw,82px);
  top:clamp(70px,12vh,150px);
  bottom:clamp(60px,10vh,130px);
  width:1px;
  opacity:.22;
  z-index:2;
  background:linear-gradient(180deg,transparent,rgba(244,240,232,.68),transparent);
  transform:scaleY(.64);
  transform-origin:top;
  transition:transform .95s cubic-bezier(.2,.72,.18,1),opacity .95s ease;
}

.index-frame-page .scroll-scene.step-2::before{
  transform:scaleY(1);
  opacity:.34;
}

.index-frame-page .scroll-scene::after{
  z-index:1;
  background:
    linear-gradient(90deg,rgba(7,8,8,.84) 0%,rgba(7,8,8,.68) 31%,rgba(7,8,8,.22) 58%,rgba(7,8,8,.38) 100%),
    linear-gradient(180deg,rgba(7,8,8,.18),rgba(7,8,8,.58));
}

.index-frame-page .dark-scene{
  background:transparent;
  border-bottom:0;
}

.index-frame-page .dark-scene::after{
  background:
    linear-gradient(90deg,rgba(7,8,8,.88) 0%,rgba(7,8,8,.7) 34%,rgba(7,8,8,.28) 63%,rgba(7,8,8,.48) 100%),
    linear-gradient(180deg,rgba(7,8,8,.16),rgba(7,8,8,.66));
}

.index-frame-page .scene-copy{
  max-width:min(540px,52vw);
  padding:clamp(22px,2.5vw,34px) clamp(22px,2.8vw,38px);
  border:1px solid rgba(244,240,232,.13);
  background:linear-gradient(135deg,rgba(7,8,8,.38),rgba(7,8,8,.18));
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  box-shadow:0 32px 90px rgba(0,0,0,.24);
}

.index-frame-page .scene-index{
  color:rgba(244,240,232,.56);
  font-size:10px;
  letter-spacing:.26em;
  margin-bottom:12px;
}

.index-frame-page .scene-title{
  max-width:10.8ch;
  font-size:clamp(42px,5.5vw,86px);
  line-height:.84;
  color:rgba(244,240,232,.94);
}

.index-frame-page .scene-title em{
  color:rgba(244,240,232,.76);
}

.index-frame-page .scene-lede{
  max-width:36ch;
  margin-top:15px;
  color:rgba(244,240,232,.66);
  font-size:clamp(17px,1.22vw,21px);
  line-height:1.17;
}

.index-frame-page .scene-actions,
.index-frame-page .cta-row{
  margin-top:20px;
}

.index-frame-page .scene-link,
.index-frame-page .btn{
  min-height:40px;
  padding:11px 14px;
  border-color:rgba(244,240,232,.28);
  background:rgba(244,240,232,.05);
  color:rgba(244,240,232,.86);
  font-size:10px;
}

.index-frame-page .scene-link:hover,
.index-frame-page .btn:hover{
  background:var(--paper);
  color:var(--ink);
}

.index-frame-page .btn.primary{
  background:rgba(244,240,232,.9);
  color:#080908;
  border-color:rgba(244,240,232,.9);
}

.index-frame-page .btn.secondary{
  background:rgba(244,240,232,.04);
  color:rgba(244,240,232,.86);
}

.index-frame-page .scene-landscape{
  display:none;
}

.index-frame-page .letter-scene{
  display:grid;
  grid-template-columns:minmax(280px,520px) minmax(280px,480px);
  gap:clamp(28px,6vw,92px);
}

.index-frame-page .letter-card{
  z-index:5;
  border-color:rgba(244,240,232,.16);
  background:linear-gradient(135deg,rgba(7,8,8,.42),rgba(7,8,8,.16));
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.index-frame-page footer{
  color:rgba(244,240,232,.72);
  border-top:1px solid rgba(244,240,232,.12);
  background:rgba(7,8,8,.82);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.index-frame-page footer a,
.index-frame-page footer h5,
.index-frame-page .ft-mark{
  color:rgba(244,240,232,.82);
}

.index-frame-page .ft-bottom{
  border-top-color:rgba(244,240,232,.1);
  color:rgba(244,240,232,.46);
}

.index-dna{
  position:fixed;
  right:clamp(18px,2.2vw,36px);
  top:50%;
  transform:translateY(-50%);
  z-index:7;
  display:grid;
  gap:12px;
  font-family:var(--mono);
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:10px;
  pointer-events:auto;
}

.index-dna::before{
  content:"";
  position:absolute;
  top:8px;
  bottom:8px;
  left:11px;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(244,240,232,.38),transparent);
}

.index-dna a{
  position:relative;
  display:grid;
  grid-template-columns:24px auto;
  align-items:center;
  gap:10px;
  color:rgba(244,240,232,.38);
  transition:color .38s ease,transform .38s ease;
}

.index-dna a span{
  position:relative;
  z-index:1;
  width:23px;
  height:23px;
  display:grid;
  place-items:center;
  border:1px solid rgba(244,240,232,.16);
  border-radius:999px;
  background:rgba(7,8,8,.42);
  font-size:9px;
  letter-spacing:.05em;
  transition:border-color .38s ease,background .38s ease,color .38s ease;
}

.index-dna a b{
  font-weight:400;
  opacity:0;
  transform:translateX(8px);
  transition:opacity .38s ease,transform .38s ease;
}

.index-dna a:hover,
.index-dna a.active{
  color:rgba(244,240,232,.9);
  transform:translateX(-4px);
}

.index-dna a:hover span,
.index-dna a.active span{
  color:#080908;
  border-color:rgba(244,240,232,.86);
  background:rgba(244,240,232,.86);
}

.index-dna a:hover b,
.index-dna a.active b{
  opacity:1;
  transform:translateX(0);
}

@media (max-width: 900px){
.index-frame-page .scroll-scene{
    min-height:86svh;
    padding:86px 22px 58px;
  }

.index-frame-page .scroll-scene::after{
    background:
      linear-gradient(90deg,rgba(7,8,8,.82),rgba(7,8,8,.34)),
      linear-gradient(180deg,rgba(7,8,8,.16),rgba(7,8,8,.72));
  }

.index-frame-page .scene-copy{
    max-width:100%;
    padding:22px;
  }

.index-frame-page .scene-title{
    font-size:clamp(42px,15vw,74px);
  }

.index-frame-page .scene-lede{
    font-size:18px;
  }

.index-frame-page .letter-scene{
    grid-template-columns:1fr;
  }

.index-dna{
    left:16px;
    right:16px;
    top:auto;
    bottom:16px;
    transform:none;
    display:flex;
    justify-content:space-between;
    gap:6px;
    padding:8px;
    border:1px solid rgba(244,240,232,.12);
    background:rgba(7,8,8,.56);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }

.index-dna::before{display:none}

.index-dna a{
    grid-template-columns:1fr;
    gap:0;
  }

.index-dna a b{display:none}
}

/* =====================================================
   MEDITATIONEN — FULLPAGE FRAME ANIMATION / INDEX CONCEPT
   Same principle as the Index: fixed frame background,
content + DNA above it.
   ===================================================== */
.meditation-frame-page{
  background:#080908;
  color:var(--paper);
  background-image:none;
}

.meditation-frame-page::before{
  z-index:6;
  opacity:.16;
  mix-blend-mode:screen;
  background-image:radial-gradient(rgba(244,240,232,.13) .45px,transparent .72px);
}

.meditation-frame-page .nav,
.meditation-frame-page main,
.meditation-frame-page footer,
.meditation-frame-page .meditation-dna{
  position:relative;
  z-index:4;
}

.meditation-frame-page .nav{
  position:sticky;
  z-index:40;
  color:rgba(244,240,232,.88);
  border-bottom:1px solid rgba(244,240,232,.12);
  background:rgba(7,8,8,.58);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.meditation-frame-page .mark-symbol{
  border-color:rgba(244,240,232,.74);
  background:rgba(244,240,232,.9);
  color:#080908;
}

.meditation-frame-page .nav-links a{opacity:.52}

.meditation-frame-page .nav-links a:hover,
.meditation-frame-page .nav-links a.active{opacity:1}

.meditation-frame-page .pill{
  border-color:rgba(244,240,232,.38);
  background:rgba(244,240,232,.06);
}

.meditation-frame-page .pill:hover{
  background:var(--paper);
  color:var(--ink);
}

.meditation-frame-page .scene-index{
  color:rgba(244,240,232,.56) !important;
  font-size:10px !important;
  letter-spacing:.26em !important;
  margin-bottom:12px !important;
}

.meditation-frame-page .btn{
  min-height:40px;
  padding:11px 14px;
  border-color:rgba(244,240,232,.28);
  background:rgba(244,240,232,.05);
  color:rgba(244,240,232,.86);
  font-size:10px;
}

.meditation-frame-page .btn:hover{
  background:var(--paper);
  color:var(--ink);
}

.meditation-frame-page .btn.primary{
  background:rgba(244,240,232,.9);
  color:#080908;
  border-color:rgba(244,240,232,.9);
}

.meditation-frame-page .btn.secondary{
  background:rgba(244,240,232,.04);
  color:rgba(244,240,232,.86);
}

.meditation-frame-page #player-bar.inline-track-player{
  margin-top:0 !important;
  min-height:104px !important;
  grid-template-columns:minmax(260px,.95fr) auto minmax(280px,1.05fr) auto auto !important;
  background:
    linear-gradient(145deg,rgba(244,240,232,.085),rgba(244,240,232,.026)),
    radial-gradient(circle at 84% 10%,rgba(191,174,142,.12),transparent 35%),
    rgba(10,10,9,.74) !important;
  border:1px solid rgba(244,240,232,.16) !important;
  box-shadow:0 34px 120px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.026) inset !important;
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
}

.meditation-frame-page .track-select{
  color:rgba(244,240,232,.86);
  background:rgba(244,240,232,.07);
  border:1px solid rgba(244,240,232,.16);
}

.meditation-frame-page .player-time,
.meditation-frame-page .player-spur{
  color:rgba(244,240,232,.52);
}

.meditation-frame-page .player-title{
  color:rgba(244,240,232,.84);
}

.meditation-frame-page footer{
  color:rgba(244,240,232,.72);
  border-top:1px solid rgba(244,240,232,.12) !important;
  background:rgba(7,8,8,.78) !important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 -42px 130px rgba(0,0,0,.24) inset;
}

.meditation-frame-page footer a,
.meditation-frame-page footer h5,
.meditation-frame-page .ft-mark{
  color:rgba(244,240,232,.82);
}

.meditation-frame-page .ft-bottom{
  border-top-color:rgba(244,240,232,.1);
  color:rgba(244,240,232,.46);
}

.meditation-frame-page .meditation-dna{
  z-index:42;
}

@media (max-width:980px){
.meditation-frame-page #player-bar.inline-track-player{
    grid-template-columns:1fr !important;
    gap:17px !important;
    padding:20px !important;
  }
}

@media (max-width:760px){
.meditation-frame-page #player-bar.inline-track-player{
    min-height:auto !important;
  }
}

/* =====================================================
   MEDITATIONEN — REPAIR V5
   Sauber wie Index: fixed Frame-Stage,
Overlay-Sections,
Index-DNA-Leiste.
   ===================================================== */
.meditation-frame-page{
  background:#080908;
  color:var(--paper);
  background-image:none;
}

.meditation-frame-page::before{
  z-index:6;
  opacity:.16;
  mix-blend-mode:screen;
  background-image:radial-gradient(rgba(244,240,232,.13) .45px,transparent .72px);
}

.meditation-frame-stage{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
  background:#080908;
}

.meditation-frame-stage::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:
    radial-gradient(circle at 50% 43%,rgba(244,240,232,.085),transparent 30%),
    linear-gradient(90deg,rgba(5,6,6,.86) 0%,rgba(5,6,6,.46) 25%,rgba(5,6,6,.18) 52%,rgba(5,6,6,.42) 78%,rgba(5,6,6,.88) 100%),
    linear-gradient(180deg,rgba(5,6,6,.38) 0%,rgba(5,6,6,.08) 42%,rgba(5,6,6,.68) 100%);
}

.meditation-frame-stage img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:scale(calc(1.022 - (var(--meditation-progress,0) * .012)));
  filter:contrast(1.05) brightness(.75) saturate(.74);
}

.meditation-frame-page .nav,
.meditation-frame-page main,
.meditation-frame-page footer,
.meditation-frame-page .index-dna{
  position:relative;
  z-index:4;
}

.meditation-frame-page .nav{
  position:sticky;
  z-index:8;
  color:rgba(244,240,232,.88);
  border-bottom:1px solid rgba(244,240,232,.12);
  background:rgba(7,8,8,.58);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.meditation-frame-page .mark-symbol{
  border-color:rgba(244,240,232,.74);
  background:rgba(244,240,232,.9);
  color:#080908;
}

.meditation-frame-page .nav-links a{opacity:.52}

.meditation-frame-page .nav-links a:hover,
.meditation-frame-page .nav-links a.active{opacity:1}

.meditation-frame-page .pill{
  border-color:rgba(244,240,232,.38);
  background:rgba(244,240,232,.06);
}

.meditation-frame-page .pill:hover{
  background:var(--paper);
  color:var(--ink);
}

.meditation-frame-page .nav-dropdown summary{
  color:rgba(244,240,232,.9);
  border-color:rgba(244,240,232,.32);
  background:rgba(7,8,8,.72);
}

.meditation-frame-page .mobile-menu{
  background:rgba(7,8,8,.96);
  border-color:rgba(244,240,232,.12);
}

.meditation-frame-page .mobile-menu a{
  color:rgba(244,240,232,.86);
  border-bottom-color:rgba(244,240,232,.1);
}

.meditation-frame-page main{
  min-height:100svh;
}

.meditation-scene{
  position:relative;
  min-height:92svh;
  display:flex;
  align-items:center;
  padding:clamp(42px,6.4vh,82px) clamp(34px,6vw,104px);
  color:var(--paper);
}

.meditation-scene::before{
  content:"";
  position:absolute;
  left:clamp(28px,5vw,82px);
  top:clamp(70px,12vh,150px);
  bottom:clamp(60px,10vh,130px);
  width:1px;
  opacity:.22;
  z-index:2;
  background:linear-gradient(180deg,transparent,rgba(244,240,232,.68),transparent);
  transform:scaleY(.64);
  transform-origin:top;
  transition:transform .95s cubic-bezier(.2,.72,.18,1),opacity .95s ease;
}

.meditation-scene.step-2::before{
  transform:scaleY(1);
  opacity:.34;
}

.meditation-scene::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(7,8,8,.84) 0%,rgba(7,8,8,.68) 31%,rgba(7,8,8,.22) 58%,rgba(7,8,8,.38) 100%),
    linear-gradient(180deg,rgba(7,8,8,.18),rgba(7,8,8,.58));
}

.meditation-scene-copy,
.meditation-player-shell{
  position:relative;
  z-index:5;
}

.meditation-scene-copy{
  max-width:min(540px,52vw);
  padding:clamp(22px,2.5vw,34px) clamp(22px,2.8vw,38px);
  border:1px solid rgba(244,240,232,.13);
  background:linear-gradient(135deg,rgba(7,8,8,.42),rgba(7,8,8,.18));
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 32px 90px rgba(0,0,0,.28);
  opacity:0;
  transform:translateY(28px);
  transition:opacity .85s ease,transform .85s cubic-bezier(.2,.72,.18,1);
}

.meditation-scene.is-visible .meditation-scene-copy,
.meditation-scene.step-1 .meditation-scene-copy{
  opacity:1;
  transform:translateY(var(--scene-shift,0px));
}

.meditation-scene-copy-narrow{
  max-width:min(500px,48vw);
  margin-left:clamp(0px,11vw,160px);
}

.meditation-scene .scene-index{
  color:rgba(244,240,232,.56);
  font-size:10px;
  letter-spacing:.26em;
  margin-bottom:12px;
}

.meditation-scene-title{
  max-width:9.5ch;
  margin:0;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(44px,5.6vw,88px);
  line-height:.84;
  letter-spacing:-.06em;
  color:rgba(244,240,232,.94);
}

.meditation-scene-title em{
  font-style:italic;
  color:rgba(244,240,232,.76);
}

.meditation-scene-lede{
  max-width:36ch;
  margin:15px 0 0;
  color:rgba(244,240,232,.66);
  font-family:var(--serif);
  font-size:clamp(17px,1.22vw,21px);
  line-height:1.17;
  letter-spacing:-.018em;
}

.meditation-frame-page .cta-row{
  margin-top:20px;
}

.meditation-frame-page .btn{
  min-height:40px;
  padding:11px 14px;
  border-color:rgba(244,240,232,.28);
  background:rgba(244,240,232,.05);
  color:rgba(244,240,232,.86);
  font-size:10px;
}

.meditation-frame-page .btn:hover{
  background:var(--paper);
  color:var(--ink);
}

.meditation-frame-page .btn.primary{
  background:rgba(244,240,232,.9);
  color:#080908;
  border-color:rgba(244,240,232,.9);
}

.meditation-frame-page .btn.secondary{
  background:rgba(244,240,232,.04);
  color:rgba(244,240,232,.86);
}

.meditation-player-scene{
  min-height:104svh;
}

.meditation-player-shell{
  width:min(1040px,calc(100% - 56px));
  margin:0 auto;
  display:grid;
  gap:24px;
}

.meditation-player-copy{
  max-width:min(620px,100%);
}

.meditation-player-copy .meditation-scene-title{
  max-width:9.5ch;
}

#player-bar.inline-track-player{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  z-index:5 !important;
  width:100% !important;
  height:auto !important;
  min-height:104px !important;
  transform:none !important;
  display:grid !important;
  grid-template-columns:minmax(260px,.95fr) auto minmax(280px,1.05fr) auto auto !important;
  align-items:center !important;
  gap:clamp(14px,2vw,24px) !important;
  padding:22px clamp(20px,3vw,34px) !important;
  background:
    linear-gradient(145deg,rgba(244,240,232,.085),rgba(244,240,232,.026)),
    radial-gradient(circle at 84% 10%,rgba(191,174,142,.12),transparent 35%),
    rgba(10,10,9,.74) !important;
  border:1px solid rgba(244,240,232,.16) !important;
  border-radius:0 !important;
  box-shadow:0 34px 120px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.026) inset !important;
  color:var(--paper) !important;
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
}

#player-bar.inline-track-player.visible,
#player-bar.inline-track-player:not(.visible){transform:none !important;}

#player-bar.inline-track-player .player-info{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
  max-width:none;
}

.track-select-label{
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#bfae8e;
}

.track-select{
  width:100%;
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(244,240,232,.16);
  border-radius:0;
  background:rgba(244,240,232,.07);
  color:rgba(244,240,232,.86);
  padding:12px 42px 12px 13px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.08em;
  outline:none;
  cursor:pointer;
}

.track-select option{background:#15130f;color:#eee7da;}

.track-select:focus{border-color:rgba(191,174,142,.52);}

.player-spur{
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(235,228,216,.50);
  opacity:1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.player-title{
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.05em;
  color:rgba(244,240,232,.84);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.player-controls,
.player-progress,
.player-volume{
  display:flex;
  align-items:center;
}

.player-controls{gap:12px;justify-content:center;}

.ctrl-btn{
  background:none;
  border:none;
  color:inherit;
  cursor:pointer;
  padding:6px;
  opacity:.62;
  transition:opacity .15s,border-color .15s,color .15s;
  display:flex;
  align-items:center;
  justify-content:center;
}

.ctrl-btn:hover{opacity:1;}

.ctrl-btn svg{width:16px;height:16px;fill:currentColor;}

.ctrl-btn.play-pause{
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  opacity:1;
}

.ctrl-btn.play-pause:hover{border-color:#bfae8e;color:#bfae8e;}

.ctrl-btn.play-pause #icon-pause{display:none;}

.ctrl-btn.play-pause #icon-play{display:block;}

.ctrl-btn.play-pause.is-playing #icon-play{display:none;}

.ctrl-btn.play-pause.is-playing #icon-pause{display:block;}

.player-progress{gap:10px;min-width:260px;}

.player-time{
  font-family:var(--mono);
  font-size:11px;
  color:rgba(244,240,232,.52);
  flex-shrink:0;
  width:38px;
}

.player-time.right{text-align:right;width:72px;}

.progress-track{
  flex:1;
  height:2px;
  background:rgba(255,255,255,.14);
  border-radius:2px;
  position:relative;
  cursor:pointer;
}

.progress-fill{height:100%;background:#bfae8e;border-radius:2px;width:0%;}

.progress-handle{
  position:absolute;
  top:50%;
  left:0%;
  transform:translate(-50%,-50%);
  width:10px;
  height:10px;
  border-radius:50%;
  background:#bfae8e;
  opacity:0;
  transition:opacity .15s;
}

.progress-track:hover .progress-handle{opacity:1;}

.player-volume{gap:8px;}

.volume-slider{
  -webkit-appearance:none;
  width:72px;
  height:2px;
  background:rgba(255,255,255,.14);
  border-radius:2px;
  outline:none;
  cursor:pointer;
}

.volume-slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#bfae8e;
  cursor:pointer;
}

.player-close{
  background:none;
  border:none;
  color:inherit;
  opacity:.34;
  cursor:pointer;
  padding:6px;
  transition:opacity .15s;
}

.player-close:hover{opacity:.82;}

.player-close svg{width:14px;height:14px;fill:currentColor;}

.meditation-frame-page footer{
  position:relative;
  z-index:4;
  color:rgba(244,240,232,.72);
  border-top:1px solid rgba(244,240,232,.12);
  background:rgba(7,8,8,.82);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.meditation-frame-page footer a,
.meditation-frame-page footer h5,
.meditation-frame-page .ft-mark{color:rgba(244,240,232,.82);}

.meditation-frame-page .ft-bottom{
  border-top-color:rgba(244,240,232,.1);
  color:rgba(244,240,232,.46);
}

.meditation-frame-page .meditation-dna{
  z-index:9;
}

@media (max-width:980px){
.meditation-scene{
    min-height:86svh;
    padding:86px 22px 58px;
  }

.meditation-scene::after{
    background:
      linear-gradient(90deg,rgba(7,8,8,.82),rgba(7,8,8,.34)),
      linear-gradient(180deg,rgba(7,8,8,.16),rgba(7,8,8,.72));
  }

.meditation-scene-copy,
.meditation-scene-copy-narrow{
    max-width:100%;
    margin-left:0;
    padding:22px;
  }

.meditation-scene-title{font-size:clamp(42px,15vw,74px);}

.meditation-scene-lede{font-size:18px;}

.meditation-player-shell{
    width:calc(100% - 36px);
  }

#player-bar.inline-track-player{
    grid-template-columns:1fr !important;
    gap:17px !important;
    padding:20px !important;
    min-height:auto !important;
  }

#player-bar.inline-track-player .player-progress{
    min-width:0;
    width:100%;
  }
}

@media (max-width:760px){
.meditation-scene{padding:80px 20px 66px;}

.meditation-scene-title{font-size:clamp(38px,13vw,64px);}

.player-volume{display:none;}

.ctrl-btn:not(.play-pause){display:none;}
}

/* =====================================================
   FINAL PATCH — Meditation right-side category rail + direct page nav
   Mirrors the Index DNA rail exactly and keeps it clickable above the
   fullpage meditation frame animation.
   ===================================================== */
.meditation-frame-page .index-dna.meditation-dna{
  position:fixed !important;
  right:clamp(18px,2.2vw,36px) !important;
  top:50% !important;
  bottom:auto !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  z-index:24 !important;
  display:grid !important;
  gap:12px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  font-family:var(--mono) !important;
  text-transform:uppercase !important;
  letter-spacing:.15em !important;
  font-size:10px !important;
  pointer-events:auto !important;
}

.meditation-frame-page .index-dna.meditation-dna::before{
  content:"" !important;
  position:absolute !important;
  top:8px !important;
  bottom:8px !important;
  left:11px !important;
  width:1px !important;
  height:auto !important;
  display:block !important;
  background:linear-gradient(180deg,transparent,rgba(244,240,232,.38),transparent) !important;
}

.meditation-frame-page .index-dna.meditation-dna a{
  position:relative !important;
  display:grid !important;
  grid-template-columns:24px auto !important;
  align-items:center !important;
  gap:10px !important;
  color:rgba(244,240,232,.38) !important;
  text-decoration:none !important;
  transition:color .38s ease,transform .38s ease !important;
}

.meditation-frame-page .index-dna.meditation-dna a span{
  position:relative !important;
  z-index:1 !important;
  width:23px !important;
  height:23px !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid rgba(244,240,232,.16) !important;
  border-radius:999px !important;
  background:rgba(7,8,8,.42) !important;
  color:inherit !important;
  font-size:9px !important;
  letter-spacing:.05em !important;
  transition:border-color .38s ease,background .38s ease,color .38s ease !important;
}

.meditation-frame-page .index-dna.meditation-dna a b{
  display:block !important;
  font-weight:400 !important;
  opacity:0 !important;
  transform:translateX(8px) !important;
  transition:opacity .38s ease,transform .38s ease !important;
  white-space:nowrap !important;
}

.meditation-frame-page .index-dna.meditation-dna a:hover,
.meditation-frame-page .index-dna.meditation-dna a.active{
  color:rgba(244,240,232,.9) !important;
  transform:translateX(-4px) !important;
}

.meditation-frame-page .index-dna.meditation-dna a:hover span,
.meditation-frame-page .index-dna.meditation-dna a.active span{
  color:#080908 !important;
  border-color:rgba(244,240,232,.86) !important;
  background:rgba(244,240,232,.86) !important;
}

.meditation-frame-page .index-dna.meditation-dna a:hover b,
.meditation-frame-page .index-dna.meditation-dna a.active b{
  opacity:1 !important;
  transform:translateX(0) !important;
}

.meditation-frame-page .meditation-scene{
  scroll-margin-top:92px;
}

@media (max-width: 900px){
.meditation-frame-page .index-dna.meditation-dna{
    left:16px !important;
    right:16px !important;
    top:auto !important;
    bottom:16px !important;
    transform:none !important;
    display:flex !important;
    justify-content:space-between !important;
    gap:6px !important;
    padding:8px !important;
    border:1px solid rgba(244,240,232,.12) !important;
    background:rgba(7,8,8,.56) !important;
    -webkit-backdrop-filter:blur(12px) !important;
    backdrop-filter:blur(12px) !important;
  }

.meditation-frame-page .index-dna.meditation-dna::before{display:none !important;}

.meditation-frame-page .index-dna.meditation-dna a{
    grid-template-columns:1fr !important;
    gap:0 !important;
    transform:none !important;
  }

.meditation-frame-page .index-dna.meditation-dna a b{display:none !important;}
}

/* =====================================================
   VISIBILITY PATCH V50 — Background frames ohne schwarze Glasfläche
   Ziel: Frame-Animationen in ihrer echten Farbigkeit zeigen; Overlay nur
   noch als leichte Lesbarkeitsführung,
nicht als dunkler Film.
   ===================================================== */
.index-frame-page,
.meditation-frame-page{
  background:#0a0b0a !important;
}

.index-frame-page::before,
.meditation-frame-page::before{
  opacity:.06 !important;
  mix-blend-mode:screen !important;
}

.index-frame-stage::after,
.meditation-frame-stage::after{
  background:
    radial-gradient(circle at 50% 43%,rgba(244,240,232,.055),transparent 34%),
    linear-gradient(90deg,rgba(5,6,6,.34) 0%,rgba(5,6,6,.12) 24%,rgba(5,6,6,.02) 52%,rgba(5,6,6,.12) 78%,rgba(5,6,6,.36) 100%),
    linear-gradient(180deg,rgba(5,6,6,.10) 0%,rgba(5,6,6,.02) 42%,rgba(5,6,6,.22) 100%) !important;
  opacity:.78 !important;
  mix-blend-mode:normal !important;
}

.index-frame-stage img,
.meditation-frame-stage img{
  filter:contrast(1.02) brightness(1.02) saturate(.96) !important;
}

.index-frame-page .scroll-scene::after,
.index-frame-page .dark-scene::after,
.meditation-frame-page .meditation-scene::after{
  background:
    linear-gradient(90deg,rgba(7,8,8,.46) 0%,rgba(7,8,8,.25) 30%,rgba(7,8,8,.06) 58%,rgba(7,8,8,.16) 100%),
    linear-gradient(180deg,rgba(7,8,8,.06),rgba(7,8,8,.20)) !important;
}

.index-frame-page .scene-copy,
.index-frame-page .letter-card,
.meditation-frame-page .meditation-scene-copy,
.meditation-frame-page .meditation-player-copy{
  background:linear-gradient(135deg,rgba(7,8,8,.26),rgba(7,8,8,.10)) !important;
  border-color:rgba(244,240,232,.16) !important;
  -webkit-backdrop-filter:blur(4px) !important;
  backdrop-filter:blur(4px) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.18) !important;
}

.index-frame-page .scene-title,
.meditation-frame-page .meditation-scene-title{
  color:rgba(244,240,232,.96) !important;
  text-shadow:0 18px 54px rgba(0,0,0,.38) !important;
}

.index-frame-page .scene-title em,
.meditation-frame-page .meditation-scene-title em{
  color:rgba(244,240,232,.82) !important;
}

.index-frame-page .scene-lede,
.meditation-frame-page .meditation-scene-lede{
  color:rgba(244,240,232,.72) !important;
  text-shadow:0 14px 42px rgba(0,0,0,.34) !important;
}

.index-frame-page .scene-index,
.meditation-frame-page .scene-index{
  color:rgba(244,240,232,.64) !important;
}

.index-frame-page .nav,
.meditation-frame-page .nav{
  background:rgba(7,8,8,.42) !important;
  border-bottom-color:rgba(244,240,232,.13) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}

.index-frame-page .ticker{
  background:rgba(7,8,8,.22) !important;
  -webkit-backdrop-filter:blur(5px) !important;
  backdrop-filter:blur(5px) !important;
}

.index-frame-page footer,
.meditation-frame-page footer{
  background:rgba(7,8,8,.54) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
  box-shadow:0 -30px 90px rgba(0,0,0,.16) inset !important;
}

.meditation-frame-page #player-bar.inline-track-player{
  background:
    linear-gradient(145deg,rgba(244,240,232,.10),rgba(244,240,232,.032)),
    radial-gradient(circle at 84% 10%,rgba(191,174,142,.13),transparent 35%),
    rgba(10,10,9,.54) !important;
  border-color:rgba(244,240,232,.20) !important;
  -webkit-backdrop-filter:blur(16px) !important;
  backdrop-filter:blur(16px) !important;
  box-shadow:0 24px 80px rgba(0,0,0,.30),0 0 0 1px rgba(255,255,255,.032) inset !important;
}

@media (max-width:900px){
.index-frame-page .scroll-scene::after,
.index-frame-page .dark-scene::after,
.meditation-frame-page .meditation-scene::after{
    background:
      linear-gradient(90deg,rgba(7,8,8,.52),rgba(7,8,8,.16)),
      linear-gradient(180deg,rgba(7,8,8,.05),rgba(7,8,8,.28)) !important;
  }

.index-dna,
.meditation-frame-page .index-dna.meditation-dna{
    background:rgba(7,8,8,.42) !important;
    -webkit-backdrop-filter:blur(9px) !important;
    backdrop-filter:blur(9px) !important;
  }
}

/* =====================================================
   BUCH — FULLPAGE FRAME ANIMATION / INDEX + MEDITATION DNA
   ===================================================== */
.book-frame-page{
  background:#080908;
  color:var(--paper);
  background-image:none;
}

.book-frame-page::before{
  z-index:6;
  opacity:.16;
  mix-blend-mode:screen;
  background-image:radial-gradient(rgba(244,240,232,.14) .45px,transparent .72px);
}

.book-frame-page .book-frame-stage{
  background:#080908;
}

.book-frame-page .book-frame-stage::after{
  background:
    radial-gradient(circle at 50% 42%,rgba(244,240,232,.09),transparent 28%),
    linear-gradient(90deg,rgba(5,6,6,.70) 0%,rgba(5,6,6,.30) 22%,rgba(5,6,6,.10) 50%,rgba(5,6,6,.32) 78%,rgba(5,6,6,.76) 100%),
    linear-gradient(180deg,rgba(5,6,6,.32) 0%,rgba(5,6,6,.08) 40%,rgba(5,6,6,.48) 100%);
}

.book-frame-page .book-frame-stage img{
  filter:contrast(1.04) brightness(.88) saturate(.78);
}

.book-frame-page .nav,
.book-frame-page main,
.book-frame-page footer,
.book-frame-page .book-dna{
  position:relative;
  z-index:4;
}

.book-frame-page .scroll-scene{
  min-height:92svh;
}

.book-frame-page .scroll-scene::before{
  content:"";
  position:absolute;
  left:clamp(28px,5vw,82px);
  top:clamp(70px,12vh,150px);
  bottom:clamp(60px,10vh,130px);
  width:1px;
  opacity:.22;
  z-index:2;
  background:linear-gradient(180deg,transparent,rgba(244,240,232,.68),transparent);
  transform:scaleY(.64);
  transform-origin:top;
  transition:transform .95s cubic-bezier(.2,.72,.18,1),opacity .95s ease;
}

.book-frame-page .scroll-scene.step-2::before{
  transform:scaleY(1);
  opacity:.34;
}

.book-scene-shell{
  position:relative;
  z-index:5;
  display:grid;
  grid-template-columns:minmax(280px, 520px) minmax(320px, 640px);
  gap:clamp(26px,5vw,72px);
  align-items:center;
  width:min(1260px, calc(100% - 110px));
}

.book-panel{
  position:relative;
  z-index:5;
  border:1px solid rgba(244,240,232,.14);
  background:linear-gradient(135deg,rgba(7,8,8,.42),rgba(7,8,8,.16));
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 32px 90px rgba(0,0,0,.28);
  padding:clamp(22px,2.6vw,34px);
  opacity:0;
  transform:translateY(30px);
  clip-path:inset(-0.18em -0.08em 100% -0.08em);
  transition:opacity .72s ease,transform .86s cubic-bezier(.2,.72,.18,1),clip-path .86s cubic-bezier(.2,.72,.18,1);
}

.book-scene.step-3 .book-panel,
.book-scene.is-visible .book-panel{
  opacity:1;
  transform:translateY(0);
  clip-path:inset(-0.18em -0.08em -0.22em -0.08em);
}

.book-panel-kicker,
.book-mini-tag{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(244,240,232,.56);
}

.book-detail-list{
  display:grid;
  gap:14px;
  margin-top:18px;
}

.book-detail-row{
  display:grid;
  grid-template-columns:110px 1fr;
  gap:16px;
  padding-top:14px;
  border-top:1px solid rgba(244,240,232,.12);
}

.book-detail-row:first-child{padding-top:0;border-top:0}

.book-detail-row b,
.book-track-card b,
.edition-item b,
.book-mini-card h3{
  color:rgba(244,240,232,.92);
}

.book-detail-row b,
.book-track-card span,
.edition-item span{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.book-detail-row span,
.book-mini-card p,
.book-track-card p,
.edition-item p{
  color:rgba(244,240,232,.7);
}

.book-system-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.book-mini-card{
  border:1px solid rgba(244,240,232,.12);
  background:rgba(244,240,232,.03);
  padding:18px;
  min-height:210px;
  display:grid;
  align-content:start;
  gap:10px;
}

.book-mini-card h3{
  margin:2px 0 0;
  font-family:var(--display);
  font-size:32px;
  line-height:.96;
  text-transform:uppercase;
}

.book-track-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.book-track-card,
.edition-item{
  border:1px solid rgba(244,240,232,.12);
  background:rgba(244,240,232,.03);
  padding:15px 16px 16px;
  display:grid;
  gap:7px;
}

.book-track-card b,
.edition-item b{
  font-family:var(--display);
  font-size:22px;
  line-height:.96;
  text-transform:uppercase;
}

.book-edition-stack{
  display:grid;
  gap:14px;
}

.book-frame-page .scene-copy{
  max-width:min(540px,52vw);
}

.book-frame-page .scene-title{
  max-width:10.2ch;
}

.book-frame-page .scene-lede span{
  font-style:normal;
  color:rgba(244,240,232,.86);
}

@media (max-width: 1100px){
.book-scene-shell{
    grid-template-columns:1fr;
    width:100%;
  }

.book-system-grid,
.book-track-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 900px){
.book-frame-page .scroll-scene{
    min-height:86svh;
    padding:86px 22px 58px;
  }

.book-panel{
    padding:22px;
  }

.book-detail-row{
    grid-template-columns:1fr;
    gap:6px;
  }
}

/* =====================================================
   BUCH — FEINTUNING v52
   Laufbalken entfernt,
Einstieg höher,
Leseprobe kompakter.
   ===================================================== */
.book-frame-page .ticker{
  display:none !important;
}

.book-frame-page #buch-entry{
  align-items:flex-start;
  padding-top:clamp(96px,13vh,142px);
}

.book-frame-page #buch-entry .scene-copy{
  margin-top:0;
}

.book-frame-page .book-preview-scene{
  align-items:center;
  padding-top:clamp(78px,8vh,108px);
  padding-bottom:clamp(72px,9vh,118px);
}

@media (max-width: 760px){
.book-frame-page #buch-entry{
    padding-top:96px;
  }
}

/* =====================================================
   BUCH — DNA NAV FIX v53
   Rechte Kategorienleiste wie Index/Meditation.
   ===================================================== */
.book-frame-page .index-dna.book-dna{
  position:fixed !important;
  right:clamp(18px,2.2vw,36px) !important;
  left:auto !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  z-index:7 !important;
  display:grid !important;
  width:auto !important;
  gap:12px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  pointer-events:auto !important;
}

.book-frame-page .index-dna.book-dna::before{
  display:block !important;
  content:"";
  position:absolute;
  top:8px;
  bottom:8px;
  left:11px;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(244,240,232,.38),transparent);
}

.book-frame-page .index-dna.book-dna a{
  position:relative !important;
  display:grid !important;
  grid-template-columns:24px auto !important;
  align-items:center !important;
  gap:10px !important;
  color:rgba(244,240,232,.38) !important;
  transform:none;
}

.book-frame-page .index-dna.book-dna a span{
  position:relative;
  z-index:1;
  width:23px;
  height:23px;
  display:grid;
  place-items:center;
  border:1px solid rgba(244,240,232,.16);
  border-radius:999px;
  background:rgba(7,8,8,.42);
  color:rgba(244,240,232,.38);
  font-size:9px;
  letter-spacing:.05em;
}

.book-frame-page .index-dna.book-dna a b{
  display:block !important;
  font-weight:400;
  opacity:0;
  transform:translateX(8px);
  transition:opacity .38s ease,transform .38s ease;
}

.book-frame-page .index-dna.book-dna a:hover,
.book-frame-page .index-dna.book-dna a.active{
  color:rgba(244,240,232,.9) !important;
  transform:translateX(-4px);
}

.book-frame-page .index-dna.book-dna a:hover span,
.book-frame-page .index-dna.book-dna a.active span{
  color:#080908;
  border-color:rgba(244,240,232,.86);
  background:rgba(244,240,232,.86);
}

.book-frame-page .index-dna.book-dna a:hover b,
.book-frame-page .index-dna.book-dna a.active b{
  opacity:1;
  transform:translateX(0);
}

@media (max-width: 900px){
.book-frame-page .index-dna.book-dna{
    left:16px !important;
    right:16px !important;
    top:auto !important;
    bottom:16px !important;
    transform:none !important;
    display:flex !important;
    justify-content:space-between !important;
    gap:6px !important;
    padding:8px !important;
    border:1px solid rgba(244,240,232,.12) !important;
    background:rgba(7,8,8,.56) !important;
    backdrop-filter:blur(12px) !important;
    -webkit-backdrop-filter:blur(12px) !important;
  }

.book-frame-page .index-dna.book-dna::before{
    display:none !important;
  }

.book-frame-page .index-dna.book-dna a{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }

.book-frame-page .index-dna.book-dna a b{
    display:none !important;
  }
}

/* =====================================================
   BUCH — LESEPROBE EDITORIAL FIX v54
   Mehr Ruhe,
weniger Höhe,
keine abgeschnittenen Textspalten.
   ===================================================== */
.book-frame-page .book-preview-scene{
  align-items:center !important;
  min-height:92svh !important;
  padding-top:clamp(82px,9vh,118px) !important;
  padding-bottom:clamp(64px,7vh,92px) !important;
}

@media (max-width: 860px){
.book-frame-page .book-preview-scene{
    padding-top:92px !important;
  }
}

/* =====================================================
   BUCH — LESEPROBE LAYOUT ONLY v55
   Existing fonts/colors stay. Only layout is adjusted.
   ===================================================== */
.book-preview-v55{
  min-height:94svh !important;
  align-items:center !important;
  padding-top:clamp(82px,9vh,116px) !important;
  padding-bottom:clamp(62px,8vh,96px) !important;
}

.book-preview-stage-v55{
  position:relative;
  z-index:5;
  width:min(1240px, calc(100% - 190px));
  display:grid;
  grid-template-columns:minmax(300px, 430px) minmax(560px, 720px);
  gap:clamp(34px,5.2vw,82px);
  align-items:center;
}

.book-preview-copy-v55{
  align-self:center;
}

.book-preview-copy-v55 .scene-title{
  max-width:8.7ch;
}

.reading-sample-v55{
  position:relative;
  border:1px solid rgba(244,240,232,.15);
  background:
    linear-gradient(135deg,rgba(7,8,8,.40),rgba(7,8,8,.16)),
    rgba(7,8,8,.24);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 32px 90px rgba(0,0,0,.30);
  padding:clamp(20px,2vw,28px);
  overflow:hidden;
}

.reading-sample-v55::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 48% 80%,rgba(244,240,232,.08),transparent 36%),
    linear-gradient(90deg,rgba(244,240,232,.04),transparent 32%,transparent 68%,rgba(244,240,232,.04));
  opacity:.75;
}

.reading-sample-topline-v55{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding-bottom:15px;
  margin-bottom:15px;
  border-bottom:1px solid rgba(244,240,232,.11);
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.20em;
  text-transform:uppercase;
  color:rgba(244,240,232,.52);
}

.reading-spread-v55{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(210px,.78fr) minmax(320px,1fr);
  gap:14px;
  align-items:stretch;
}

.reading-page-v55{
  position:relative;
  min-height:clamp(310px,42vh,410px);
  border:1px solid rgba(244,240,232,.13);
  background:linear-gradient(150deg,rgba(244,240,232,.055),rgba(7,8,8,.13));
  padding:clamp(18px,2vw,24px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.reading-phase-v55{
  justify-content:flex-end;
}

.reading-meta-v55,
.reading-tabs-v55{
  font-family:var(--mono);
  font-size:9px;
  line-height:1.25;
  letter-spacing:.20em;
  text-transform:uppercase;
  color:rgba(244,240,232,.50);
}

.reading-tabs-v55{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:auto;
  padding-bottom:20px;
}

.reading-page-v55 h3{
  margin:14px 0 13px;
  font-family:var(--display);
  font-size:clamp(30px,3vw,45px);
  line-height:.88;
  letter-spacing:.01em;
  text-transform:uppercase;
  color:rgba(244,240,232,.94);
}

.reading-phase-v55 h3{
  max-width:8.4ch;
}

.reading-page-v55 p{
  margin:0;
  color:rgba(244,240,232,.68);
  font-size:clamp(15px,1.02vw,18px);
  line-height:1.22;
}

.reading-deck-v55{
  margin-top:-5px !important;
  margin-bottom:12px !important;
  font-family:var(--serif);
  font-style:italic;
  font-size:clamp(16px,1.1vw,19px) !important;
  color:rgba(244,240,232,.72) !important;
}

.reading-layer-v55{
  display:grid;
  grid-template-columns:62px 1fr;
  gap:14px;
  padding-top:10px;
  margin-top:10px;
  border-top:1px solid rgba(244,240,232,.10);
}

.reading-layer-v55 b{
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.20em;
  text-transform:uppercase;
  color:rgba(244,240,232,.72);
}

.reading-layer-v55 p{
  font-family:var(--serif);
  font-size:clamp(16px,1.1vw,20px);
  line-height:1.18;
  color:rgba(244,240,232,.74);
}

@media (max-width: 1180px){
.book-preview-stage-v55{
    width:min(100%, calc(100% - 120px));
    grid-template-columns:1fr;
  }
}

@media (max-width: 860px){
.book-preview-stage-v55{
    width:100%;
  }

.reading-sample-topline-v55{
    display:grid;
    gap:6px;
  }

.reading-spread-v55{
    grid-template-columns:1fr;
  }

.reading-page-v55{
    min-height:auto;
    overflow:visible;
  }

.reading-layer-v55{
    grid-template-columns:1fr;
    gap:6px;
  }
}

/* =====================================================
   MEDITATIONEN — TYPO ALIGNMENT v56
   Matches Index/Buch typography: display main title + serif italic accent.
   ===================================================== */
.meditation-frame-page .meditation-scene-title{
  font-family:var(--display) !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.005em !important;
  line-height:.84 !important;
  font-size:clamp(48px,6.4vw,102px) !important;
  color:rgba(244,240,232,.94) !important;
}

.meditation-frame-page .meditation-scene-title em{
  display:block !important;
  font-family:var(--serif) !important;
  font-weight:300 !important;
  font-style:italic !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:.92 !important;
  color:rgba(244,240,232,.76) !important;
}

.meditation-frame-page .meditation-player-copy .meditation-scene-title{
  max-width:9.6ch !important;
}

.meditation-frame-page .meditation-scene-lede{
  font-family:var(--serif) !important;
  font-weight:300 !important;
  font-size:clamp(17px,1.22vw,21px) !important;
  line-height:1.16 !important;
  color:rgba(244,240,232,.66) !important;
}

.meditation-frame-page .meditation-scene .scene-index{
  font-family:var(--mono) !important;
  font-size:10px !important;
  letter-spacing:.26em !important;
  text-transform:uppercase !important;
  color:rgba(244,240,232,.56) !important;
}

.meditation-frame-page .btn,
.meditation-frame-page .scene-link,
.meditation-frame-page .track-select-label,
.meditation-frame-page .player-spur,
.meditation-frame-page .player-time,
.meditation-frame-page .track-select{
  font-family:var(--mono) !important;
  text-transform:uppercase !important;
  letter-spacing:.16em !important;
}

@media (max-width: 900px){
.meditation-frame-page .meditation-scene-title{
    font-size:clamp(42px,14vw,76px) !important;
  }

.meditation-frame-page .meditation-scene-lede{
    font-size:18px !important;
  }
}

/* =====================================================
   GEDANKEN — ARCHIVE CONCEPT v57
   ===================================================== */
.thought-frame-page{
  background:#080908;
}

.thought-frame-page main{
  position:relative;
  z-index:2;
}

.thought-frame-stage{
  position:fixed;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% -10%, rgba(214,198,186,.14), transparent 28%),
    linear-gradient(180deg, rgba(19,21,23,.62), rgba(7,8,8,.92)),
    #080908;
}

.thought-room{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(8,9,9,.94) 0%, rgba(17,19,21,.82) 18%, rgba(30,34,38,.44) 50%, rgba(15,17,18,.84) 82%, rgba(8,9,9,.96) 100%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.012) 0 1px, transparent 1px 198px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.012) 0 1px, transparent 1px 176px);
  transform:translateY(calc(var(--scroll-y, 0px) * -0.18));
}

.thought-vignette,
.thought-floor,
.thought-glow,
.thought-column,
.thought-panel,
.thought-beam,
.thought-line{
  position:absolute;
}

.thought-vignette{
  inset:0;
  background:radial-gradient(circle at 50% 40%, transparent 0%, rgba(0,0,0,.04) 38%, rgba(0,0,0,.54) 100%);
}

.thought-floor{
  left:-5%;
  right:-5%;
  bottom:-4%;
  height:38%;
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 26%),
    linear-gradient(90deg, rgba(255,255,255,.02), transparent 22%, rgba(255,255,255,.015) 50%, transparent 77%, rgba(255,255,255,.02)),
    linear-gradient(180deg, rgba(17,20,22,.16), rgba(7,8,8,.78));
  transform:perspective(1000px) rotateX(76deg) translateY(calc(var(--thought-progress, 0) * -18px));
  transform-origin:center top;
}

.thought-column{
  top:0;
  bottom:0;
  width:11.6%;
  background:linear-gradient(180deg, rgba(37,41,45,.78), rgba(15,17,18,.96));
  box-shadow:inset 1px 0 rgba(255,255,255,.035), inset -1px 0 rgba(0,0,0,.34);
}

.col-a{left:18%;}

.col-b{right:22%; width:10.5%;}

.col-c{right:8%; width:8.5%;}

.thought-beam{
  top:0;
  height:27%;
  background:linear-gradient(180deg, rgba(224,214,205,.12), rgba(224,214,205,0));
  filter:blur(2px);
  opacity:.58;
}

.beam-a{left:32%; width:13%;}

.beam-b{right:26%; width:16%; opacity:.42;}

.thought-panel{
  border:1px solid rgba(244,240,232,.14);
  background:linear-gradient(160deg, rgba(236,229,220,.12), rgba(236,229,220,.03));
  box-shadow:0 18px 40px rgba(0,0,0,.18);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  opacity:calc(.35 + var(--thought-progress, 0) * .3);
}

.panel-a{
  left:57%; top:24%; width:11%; height:16%;
  transform:translateY(calc(var(--thought-progress, 0) * -16px)) rotate(-2deg);
}

.panel-b{
  left:64%; top:48%; width:13%; height:18%;
  transform:translateY(calc(var(--thought-progress, 0) * -10px)) rotate(1.4deg);
}

.panel-c{
  left:28%; top:30%; width:9%; height:12%;
  transform:translateY(calc(var(--thought-progress, 0) * -12px)) rotate(-1deg);
}

.panel-d{
  left:34%; top:54%; width:10%; height:13%;
  transform:translateY(calc(var(--thought-progress, 0) * -8px)) rotate(1.4deg);
}

.thought-line{
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(244,240,232,.18), transparent);
  opacity:.5;
}

.line-a{left:26%; right:18%; top:29%;}

.line-b{left:30%; right:24%; top:58%; opacity:.26;}

.thought-glow{
  left:46%;
  top:18%;
  width:18%;
  height:44%;
  background:radial-gradient(circle at 50% 50%, rgba(235,230,224,.18), rgba(235,230,224,.03) 36%, transparent 70%);
  filter:blur(18px);
  opacity:.52;
}

.thought-frame-page .thought-scene{
  min-height:100svh;
  display:grid;
  align-items:center;
  position:relative;
  z-index:2;
  padding:clamp(92px, 11vh, 132px) clamp(32px, 5vw, 72px) clamp(68px, 9vh, 110px);
}

.thought-frame-page .thought-scene::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(7,8,8,.54) 0%, rgba(7,8,8,.22) 44%, rgba(7,8,8,.22) 56%, rgba(7,8,8,.54) 100%);
  pointer-events:none;
}

.thought-frame-page .thought-scene > *{
  position:relative;
  z-index:1;
}

.thought-frame-page .thought-copy{
  max-width:560px;
}

.thought-frame-page .thought-copy-narrow{
  max-width:480px;
}

.thought-frame-page .scene-title{
  max-width:11ch;
}

.thought-side-note{
  position:absolute;
  right:clamp(92px, 13vw, 180px);
  bottom:clamp(76px, 12vh, 128px);
  max-width:220px;
  padding:18px 18px 16px;
  border:1px solid rgba(244,240,232,.12);
  background:rgba(7,8,8,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.thought-side-note span,
.fragment-kicker,
.archive-meta,
.topic-tile span{
  display:block;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(244,240,232,.54);
}

.thought-side-note p{
  margin:10px 0 0;
  font-family:var(--serif);
  font-size:20px;
  line-height:1.12;
  color:rgba(244,240,232,.7);
}

.thought-fragments-grid,
.thought-topics-panel,
.thought-archive-list{
  width:min(980px, calc(100% - 210px));
  margin-left:auto;
}

.thought-fragments-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
}

.thought-fragment-card,
.topic-tile,
.thought-archive-item{
  border:1px solid rgba(244,240,232,.12);
  background:linear-gradient(145deg, rgba(244,240,232,.05), rgba(7,8,8,.16));
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 24px 60px rgba(0,0,0,.22);
}

.thought-fragment-card{
  padding:20px 20px 22px;
  min-height:230px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.thought-fragment-card h3,
.topic-tile h3,
.thought-archive-item h3{
  margin:14px 0 12px;
  font-family:var(--display);
  font-size:clamp(28px, 2.6vw, 40px);
  line-height:.94;
  text-transform:uppercase;
  color:rgba(244,240,232,.93);
}

.thought-fragment-card p,
.topic-tile p,
.thought-archive-item p{
  margin:0;
  font-family:var(--serif);
  font-size:20px;
  line-height:1.12;
  color:rgba(244,240,232,.72);
}

.thought-topics-panel{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:14px;
}

.topic-tile{
  padding:18px 16px 20px;
  min-height:220px;
  display:flex;
  flex-direction:column;
}

.topic-tile h3{margin-top:auto;}

.thought-archive-list{
  display:grid;
  gap:14px;
}

.thought-archive-item{
  display:grid;
  grid-template-columns:180px minmax(0, 1fr) 88px;
  align-items:center;
  gap:26px;
  padding:22px 24px;
  text-decoration:none;
  transition:transform .35s ease, border-color .35s ease, background .35s ease;
}

.thought-archive-item:hover{
  transform:translateY(-2px);
  border-color:rgba(244,240,232,.22);
  background:linear-gradient(145deg, rgba(244,240,232,.08), rgba(7,8,8,.14));
}

.thought-archive-item b{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(244,240,232,.86);
  justify-self:end;
}

.thought-letter-scene{
  grid-template-columns:minmax(300px, 520px) minmax(320px, 430px);
  gap:clamp(24px, 4vw, 72px);
}

.thought-letter-card{
  justify-self:end;
  width:min(430px, 100%);
}

.thought-frame-page .index-dna.thought-dna{
  position:fixed;
  right:clamp(18px, 2.2vw, 36px);
  top:50%;
  transform:translateY(-50%);
  z-index:7;
}

.thought-frame-page .nav,
.thought-frame-page footer{
  position:relative;
  z-index:8;
}

@media (max-width: 1180px){
.thought-fragments-grid,
.thought-topics-panel,
.thought-archive-list{
    width:min(100%, calc(100% - 110px));
  }

.thought-topics-panel{grid-template-columns:repeat(3, minmax(0,1fr));}

.thought-letter-scene{grid-template-columns:1fr;}

.thought-letter-card{justify-self:start;}
}

@media (max-width: 900px){
.thought-frame-page .thought-scene{
    min-height:auto;
    padding:96px 16px 64px;
  }

.thought-frame-page .thought-scene::before{
    background:linear-gradient(180deg, rgba(7,8,8,.52), rgba(7,8,8,.36));
  }

.thought-side-note{
    position:relative;
    right:auto; bottom:auto; max-width:none; margin-top:24px;
  }

.thought-fragments-grid,
.thought-topics-panel,
.thought-archive-list{
    width:100%;
    margin-left:0;
  }

.thought-fragments-grid,
.thought-topics-panel{
    grid-template-columns:1fr;
  }

.thought-archive-item{
    grid-template-columns:1fr;
    gap:12px;
  }

.thought-archive-item b{justify-self:start;}

.thought-frame-page .index-dna.thought-dna{
    left:16px;
    right:16px;
    top:auto;
    bottom:16px;
    transform:none;
  }
}

/* =====================================================
   GEDANKEN — READABILITY REPAIR v60
   Keeps thought content above overlays on desktop and mobile.
   ===================================================== */
.thought-frame-page::before{
  z-index:6;
  opacity:.06 !important;
  mix-blend-mode:screen !important;
  background-image:radial-gradient(rgba(244,240,232,.14) .45px,transparent .72px) !important;
}

.thought-frame-page .thought-scene::before{
  z-index:0 !important;
  background:
    linear-gradient(90deg,rgba(7,8,8,.56),rgba(7,8,8,.28) 50%,rgba(7,8,8,.48)),
    linear-gradient(180deg,rgba(7,8,8,.08),rgba(7,8,8,.22)) !important;
}

.thought-frame-page .thought-scene::after{
  z-index:1 !important;
}

.thought-frame-page .thought-scene > *{
  position:relative;
  z-index:5 !important;
}

.thought-frame-page .thought-copy{
  position:relative;
  z-index:5 !important;
  padding:clamp(22px,2.5vw,34px) clamp(22px,2.8vw,38px);
  border:1px solid rgba(244,240,232,.15);
  color:#f8f3e8 !important;
  background:
    linear-gradient(135deg,rgba(244,240,232,.075),rgba(244,240,232,.026)),
    linear-gradient(135deg,rgba(7,8,8,.36),rgba(7,8,8,.16));
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  box-shadow:0 24px 70px rgba(0,0,0,.28);
  mix-blend-mode:normal !important;
  opacity:1 !important;
}

.thought-frame-page .thought-copy > *,
.thought-frame-page .scene-title,
.thought-frame-page .scene-title em,
.thought-frame-page .scene-lede,
.thought-frame-page .scene-actions{
  opacity:1 !important;
  transform:none !important;
  clip-path:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}

.thought-frame-page .scene-title{
  color:#f8f3e8 !important;
  -webkit-text-fill-color:#f8f3e8 !important;
  text-shadow:0 16px 46px rgba(0,0,0,.42);
}

.thought-frame-page .scene-title em{
  color:#d7c8bb !important;
  -webkit-text-fill-color:#d7c8bb !important;
}

.thought-frame-page .scene-lede,
.thought-side-note p{
  color:#eee6da !important;
  -webkit-text-fill-color:#eee6da !important;
}

.thought-side-note,
.thought-fragments-grid,
.thought-topics-panel,
.thought-archive-list,
.thought-letter-card{
  position:relative;
  z-index:5 !important;
}

.thought-side-note,
.thought-fragment-card,
.topic-tile,
.thought-archive-item,
.thought-letter-card{
  color:#f8f3e8 !important;
  background:
    linear-gradient(145deg,rgba(244,240,232,.085),rgba(244,240,232,.028)),
    rgba(7,8,8,.38) !important;
  border-color:rgba(244,240,232,.18) !important;
  box-shadow:0 20px 58px rgba(0,0,0,.30) !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
}

.thought-fragment-card h3,
.topic-tile h3,
.thought-archive-item h3{
  color:#f8f3e8 !important;
  -webkit-text-fill-color:#f8f3e8 !important;
  opacity:1 !important;
}

.thought-fragment-card p,
.topic-tile p,
.thought-archive-item p,
.archive-meta,
.fragment-kicker,
.topic-tile span{
  color:#e8ded1 !important;
  -webkit-text-fill-color:#e8ded1 !important;
  opacity:1 !important;
}

.thought-archive-item b{
  color:#f8f3e8 !important;
  -webkit-text-fill-color:#f8f3e8 !important;
  opacity:1 !important;
}

.thought-letter-card{
  opacity:1 !important;
  transform:none !important;
  clip-path:none !important;
}

/* =====================================================
   MOBILE REPAIR v58
   Keeps late page-specific patches from squeezing or dimming mobile views.
   ===================================================== */
@media (max-width: 900px){
  .thought-frame-page::before{
    z-index:6;
    opacity:.06 !important;
    mix-blend-mode:screen !important;
    background-image:radial-gradient(rgba(244,240,232,.14) .45px,transparent .72px) !important;
  }

  .book-frame-page .scene-copy,
  .book-frame-page .book-scene-shell{
    max-width:100% !important;
    width:100% !important;
  }

  .book-frame-page .scene-copy{
    padding:22px !important;
  }

  .book-frame-page .scene-title{
    font-size:clamp(42px,14vw,76px) !important;
    max-width:11ch !important;
  }

  .book-frame-page .scene-lede{
    font-size:18px !important;
    max-width:36ch !important;
  }

  .thought-frame-page .thought-scene{
    min-height:100svh;
    padding:92px 18px 96px;
    scroll-margin-top:64px;
  }

  .thought-frame-page .thought-scene::before{
    z-index:0 !important;
    background:
      linear-gradient(90deg,rgba(7,8,8,.58),rgba(7,8,8,.30) 54%,rgba(7,8,8,.44)),
      linear-gradient(180deg,rgba(7,8,8,.12),rgba(7,8,8,.24)) !important;
  }

  .thought-frame-page .thought-scene::after{
    z-index:1 !important;
  }

  .thought-frame-page .thought-copy{
    position:relative;
    z-index:5 !important;
    max-width:100%;
    padding:22px;
    border:1px solid rgba(244,240,232,.14);
    color:#f8f3e8 !important;
    background:
      linear-gradient(135deg,rgba(244,240,232,.075),rgba(244,240,232,.026)),
      linear-gradient(135deg,rgba(7,8,8,.34),rgba(7,8,8,.14));
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
    box-shadow:0 24px 70px rgba(0,0,0,.26);
    mix-blend-mode:normal !important;
    opacity:1 !important;
  }

  .thought-fragments-grid,
  .thought-topics-panel,
  .thought-archive-list,
  .thought-letter-card{
    position:relative;
    z-index:5 !important;
    margin-bottom:30px;
  }

  .thought-fragment-card,
  .topic-tile,
  .thought-archive-item,
  .thought-letter-card{
    color:#f8f3e8 !important;
    background:
      linear-gradient(145deg,rgba(244,240,232,.085),rgba(244,240,232,.028)),
      rgba(7,8,8,.38) !important;
    border-color:rgba(244,240,232,.18) !important;
    box-shadow:0 20px 58px rgba(0,0,0,.30) !important;
    opacity:1 !important;
    mix-blend-mode:normal !important;
  }

  .thought-fragment-card h3,
  .topic-tile h3,
  .thought-archive-item h3{
    color:#f8f3e8 !important;
    -webkit-text-fill-color:#f8f3e8 !important;
    opacity:1 !important;
  }

  .thought-fragment-card p,
  .topic-tile p,
  .thought-archive-item p,
  .archive-meta,
  .fragment-kicker,
  .topic-tile span{
    color:#e8ded1 !important;
    -webkit-text-fill-color:#e8ded1 !important;
    opacity:1 !important;
  }

  .thought-archive-item b{
    color:#f8f3e8 !important;
    -webkit-text-fill-color:#f8f3e8 !important;
    opacity:1 !important;
  }

  .thought-frame-page .thought-copy > *{
    opacity:1 !important;
    transform:none !important;
    clip-path:none !important;
    filter:none !important;
    mix-blend-mode:normal !important;
  }

  .thought-frame-page .scene-title,
  .thought-frame-page .scene-title em,
  .thought-frame-page .scene-lede,
  .thought-frame-page .scene-actions{
    opacity:1 !important;
    transform:none !important;
    clip-path:none !important;
  }

  .thought-frame-page .scene-title{
    color:#f8f3e8 !important;
    -webkit-text-fill-color:#f8f3e8 !important;
    font-size:clamp(42px,13vw,68px) !important;
    line-height:.86 !important;
    text-shadow:0 16px 46px rgba(0,0,0,.42);
  }

  .thought-frame-page .scene-title em{
    color:#d7c8bb !important;
    -webkit-text-fill-color:#d7c8bb !important;
  }

  .thought-frame-page .scene-lede,
  .thought-side-note p{
    color:#eee6da !important;
    -webkit-text-fill-color:#eee6da !important;
  }

  .thought-side-note{
    position:relative;
    z-index:5 !important;
    background:linear-gradient(135deg,rgba(7,8,8,.36),rgba(7,8,8,.16));
  }

  .thought-frame-page .index-dna.thought-dna{
    display:none !important;
  }

  .thought-frame-page .thought-letter-scene{
    display:block !important;
    align-items:start !important;
    gap:18px !important;
  }

  .thought-frame-page .thought-letter-scene .thought-copy{
    align-self:start;
    margin-bottom:18px;
  }

  .thought-frame-page .thought-letter-card{
    width:100% !important;
    justify-self:stretch !important;
    align-self:start;
    gap:18px;
    padding:24px 22px;
    opacity:1 !important;
    transform:none !important;
    clip-path:none !important;
  }

  .thought-frame-page .thought-letter-card input{
    padding-bottom:18px;
    font-size:clamp(24px,8vw,34px);
  }

  .thought-frame-page .thought-letter-card button{
    width:100%;
    justify-content:space-between;
  }
}

/* =====================================================
   MOBILE MENU STACK FIX v59
   Keeps dropdown navigation above framed page content.
   ===================================================== */
@media (max-width: 900px){
  .index-frame-page .nav,
  .book-frame-page .nav,
  .meditation-frame-page .nav,
  .thought-frame-page .nav{
    position:sticky !important;
    z-index:120 !important;
  }

  .nav-dropdown{
    z-index:130 !important;
  }

  .mobile-menu{
    z-index:140 !important;
  }

  .index-frame-page .mobile-menu,
  .book-frame-page .mobile-menu,
  .meditation-frame-page .mobile-menu,
  .thought-frame-page .mobile-menu{
    background:#070808 !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}
