:root {
  --black: #050505;
  --white: #f4f1ea;
  --muted: rgba(244, 241, 234, 0.65);
  --gold: #c99a4c;
  --gold-soft: rgba(201, 154, 76, 0.45);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--black);
  color: var(--white);
  font-family:
    "Helvetica Neue",
    Helvetica,
    Arial,
    sans-serif;
  overflow-x: hidden;
}

/* ----------------------------------
   TOPBAR
---------------------------------- */

.topbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 20;

  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 28px 42px;

  font-size: 11px;
  letter-spacing: 0.22em;

  background:
    linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.72),
      rgba(0, 0, 0, 0)
    );
}

.brand {
  font-weight: 500;
  color: inherit;
  text-decoration: none;
}

.language-nav {
  display: flex;
  align-items: center;
  gap: 8px;
}

.language-nav a {
  color: rgba(255, 255, 255, 0.55);
  text-decoration: none;
  transition: color 0.3s ease;
}

.language-nav a:hover,
.language-nav a.active {
  color: var(--white);
}

/* ----------------------------------
   HERO
---------------------------------- */

.hero {
  position: relative;

  width: 100%;
  height: 100vh;
  min-height: 700px;

  display: flex;
  align-items: center;
  justify-content: center;

  overflow: hidden;

  background: #000;
}

.hero-background {
  position: absolute;
  inset: 0;

  background-image:
    url("../images/hero-secessioncore.jpg");

  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  transform: scale(1.03);

  animation:
    heroBreath 18s ease-in-out infinite alternate;
}

.hero-overlay {
  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    radial-gradient(
      circle at center,
      rgba(0, 0, 0, 0.03) 0%,
      rgba(0, 0, 0, 0.08) 40%,
      rgba(0, 0, 0, 0.54) 100%
    );
}

.hero-content {
  position: relative;
  z-index: 5;

  pointer-events: none;

  text-align: center;

  width: min(900px, 90vw);

  margin-top: 10px;

  animation:
    fadeUp 1.8s ease forwards;
}

.hero-kicker {
  display: none;
}

.hero h1 {
  font-size: clamp(38px, 5.5vw, 72px);
  font-weight: 300;

  letter-spacing: 0.16em;
  padding-left: 0.16em;

  text-shadow:
    0 0 20px rgba(0, 0, 0, 0.55),
    0 0 50px rgba(0, 0, 0, 0.45);
}

.hero-subtitle {
  margin-top: 20px;

  font-size: clamp(13px, 1.6vw, 20px);

  letter-spacing: 0.28em;
  padding-left: 0.28em;

  color: rgba(255, 255, 255, 0.82);
}

/* ----------------------------------
   ENTER BUTTON
---------------------------------- */

.enter-button {
  margin-top: 38px;

  padding: 12px 28px;

  border: 1px solid var(--gold-soft);

  background:
    rgba(0, 0, 0, 0.22);

  color: var(--white);

  font-size: 9px;
  letter-spacing: 0.3em;

  cursor: pointer;

  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);

  transition:
    background 0.3s ease,
    border-color 0.3s ease,
    transform 0.3s ease;
}

.enter-button:hover {
  background:
    rgba(201, 154, 76, 0.12);

  border-color:
    rgba(201, 154, 76, 0.85);

  transform: translateY(-2px);
}

/* ----------------------------------
   SCROLL HINT
---------------------------------- */

.scroll-hint {
  position: absolute;
  z-index: 5;

  left: 50%;
  bottom: 30px;

  transform: translateX(-50%);

  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;

  color: rgba(255, 255, 255, 0.4);

  font-size: 8px;
  letter-spacing: 0.35em;
}

.scroll-line {
  width: 1px;
  height: 42px;

  background:
    linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0.55),
      rgba(255, 255, 255, 0)
    );

  animation:
    scrollPulse 2s ease-in-out infinite;
}

/* ----------------------------------
   TEMPORÄRE FOLGESEKTION
---------------------------------- */

.placeholder-section {
  min-height: 100vh;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 80px 24px;

  text-align: center;

  background:
    radial-gradient(
      circle at center,
      #17120a 0%,
      #080705 40%,
      #030303 100%
    );
}

.placeholder-section p {
  margin-bottom: 16px;

  font-size: 10px;
  letter-spacing: 0.45em;

  color: var(--gold);
}

.placeholder-section h2 {
  max-width: 900px;

  font-size:
    clamp(28px, 5vw, 64px);

  font-weight: 300;

  line-height: 1.2;
}

/* ----------------------------------
   ANIMATIONEN
---------------------------------- */

@keyframes heroBreath {

  from {
    transform: scale(1.03);
  }

  to {
    transform: scale(1.075);
  }

}

@keyframes fadeUp {

  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}

@keyframes scrollPulse {

  0%,
  100% {
    opacity: 0.25;
  }

  50% {
    opacity: 0.9;
  }

}

/* ----------------------------------
   MOBILE
---------------------------------- */

@media (max-width: 700px) {

  .topbar {
    padding: 22px 20px;
  }

  .brand {
    font-size: 9px;
  }

  .language-nav {
    font-size: 9px;
  }

  .hero {
    min-height: 620px;
  }

  .hero-background {
    background-size: cover;
    background-position: center center;
  }

  .hero h1 {
    letter-spacing: 0.11em;
    padding-left: 0.11em;
  }

  .hero-subtitle {
    letter-spacing: 0.3em;
    padding-left: 0.3em;
  }

  .hero-kicker {
    letter-spacing: 0.28em;
  }

}


/* ==================================================
   HERO V0.3
   Mehr Raum für das Motiv + lebendigere Einladung
================================================== */

.hero-background {
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;

  transform: scale(0.94);

  animation:
    heroBreathV03 12s ease-in-out infinite alternate;

  will-change: transform, filter;
}


/* Haupttitel etwas oberhalb der Mitte */

.hero-content {
  transform: translateY(-2vh);

  animation:
    fadeUp 1.8s ease forwards;
}


/* DECENTRALIZE EVERYTHING */

.hero-subtitle {
  margin-top: 22px;

  font-size: clamp(15px, 1.8vw, 23px);

  font-weight: 400;

  letter-spacing: 0.30em;
  padding-left: 0.30em;

  color: rgba(255, 247, 228, 0.94);

  text-shadow:
    0 0 10px rgba(255, 180, 65, 0.22),
    0 0 24px rgba(255, 145, 20, 0.12);

  animation:
    mottoGlow 4.5s ease-in-out infinite;
}


/* ENTER */

.enter-button {
  position: relative;

  margin-top: 44px;

  min-width: 150px;

  padding: 16px 34px;

  border:
    1px solid rgba(220, 166, 78, 0.68);

  background:
    rgba(5, 4, 2, 0.42);

  color:
    rgba(255, 248, 232, 0.96);

  font-size: 11px;

  letter-spacing: 0.34em;

  padding-left: calc(34px + 0.34em);

  cursor: pointer;

  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);

  box-shadow:
    0 0 12px rgba(208, 139, 34, 0.08),
    inset 0 0 10px rgba(255, 180, 70, 0.025);

  animation:
    enterInvitation 3.4s ease-in-out infinite;

  transition:
    background 0.4s ease,
    border-color 0.4s ease,
    box-shadow 0.4s ease,
    transform 0.4s ease;
}


.enter-button:hover {
  background:
    rgba(173, 111, 25, 0.17);

  border-color:
    rgba(244, 190, 93, 0.95);

  box-shadow:
    0 0 18px rgba(232, 158, 45, 0.24),
    0 0 40px rgba(232, 139, 21, 0.10),
    inset 0 0 15px rgba(255, 183, 72, 0.05);

  transform:
    translateY(-2px) scale(1.025);
}


/* --------------------------------------------------
   Neue Animationen
-------------------------------------------------- */

@keyframes heroBreathV03 {

  0% {
    transform: scale(0.94);

    filter:
      brightness(0.96)
      contrast(1.02);
  }

  100% {
    transform: scale(0.97);

    filter:
      brightness(1.04)
      contrast(1.04);
  }

}


@keyframes mottoGlow {

  0%,
  100% {
    opacity: 0.82;

    text-shadow:
      0 0 8px rgba(255, 180, 65, 0.15),
      0 0 20px rgba(255, 145, 20, 0.08);
  }

  50% {
    opacity: 1;

    text-shadow:
      0 0 12px rgba(255, 190, 80, 0.34),
      0 0 30px rgba(255, 145, 20, 0.17);
  }

}


@keyframes enterInvitation {

  0%,
  100% {
    box-shadow:
      0 0 8px rgba(212, 145, 39, 0.08),
      inset 0 0 10px rgba(255, 180, 70, 0.02);
  }

  50% {
    box-shadow:
      0 0 20px rgba(224, 151, 39, 0.19),
      0 0 36px rgba(224, 135, 15, 0.07),
      inset 0 0 12px rgba(255, 180, 70, 0.04);
  }

}


/* --------------------------------------------------
   MOBILE V0.3
-------------------------------------------------- */

@media (max-width: 700px) {

  .hero-background {
    background-size: contain;

    transform: scale(0.97);

    animation:
      heroBreathMobile 12s ease-in-out infinite alternate;
  }

  .hero-subtitle {
    font-size: clamp(12px, 4vw, 17px);

    letter-spacing: 0.20em;

    padding-left: 0.20em;
  }

  .enter-button {
    min-width: 145px;

    padding-top: 15px;
    padding-bottom: 15px;
  }

}


@keyframes heroBreathMobile {

  from {
    transform: scale(0.95);
  }

  to {
    transform: scale(0.98);
  }

}


/* ==========================================================
   SECESSIONCORE FOOTER
========================================================== */

.site-footer {
  position: relative;
  z-index: 5;

  background: #030303;

  border-top:
    1px solid rgba(201, 154, 76, 0.18);

  padding:
    80px 6vw 28px;
}


.footer-inner {
  width: min(1400px, 100%);

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    2fr 1fr 1fr 1fr;

  gap: 60px;
}


.footer-brand p {
  margin-top: 18px;

  max-width: 320px;

  color:
    rgba(244, 241, 234, 0.55);

  font-size: 12px;

  letter-spacing: 0.25em;

  line-height: 1.8;
}


.footer-label {
  display: block;

  margin-bottom: 20px;

  color: var(--gold);

  font-size: 9px;

  letter-spacing: 0.32em;
}


.footer-column {
  display: flex;

  flex-direction: column;

  align-items: flex-start;

  gap: 12px;
}


.footer-column a {
  position: relative;

  color:
    rgba(244, 241, 234, 0.66);

  text-decoration: none;

  font-size: 12px;

  letter-spacing: 0.08em;

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}


.footer-column a:hover {
  color: var(--white);

  transform: translateX(3px);
}


.footer-languages {
  display: flex;

  gap: 8px;

  align-items: center;

  color:
    rgba(244, 241, 234, 0.30);
}


.footer-languages a.active {
  color: var(--white);
}


.footer-bottom {
  width: min(1400px, 100%);

  margin:
    70px auto 0;

  padding-top: 22px;

  border-top:
    1px solid rgba(255, 255, 255, 0.07);

  display: flex;

  justify-content: space-between;

  gap: 20px;

  color:
    rgba(244, 241, 234, 0.32);

  font-size: 9px;

  letter-spacing: 0.15em;
}


/* ----------------------------------------------------------
   FOOTER MOBILE
---------------------------------------------------------- */

@media (max-width: 850px) {

  .site-footer {
    padding:
      60px 24px 25px;
  }

  .footer-inner {
    grid-template-columns:
      1fr 1fr;

    gap:
      45px 30px;
  }

}


@media (max-width: 550px) {

  .footer-inner {
    grid-template-columns: 1fr;

    gap: 42px;
  }

  .footer-bottom {
    flex-direction: column;

    margin-top: 50px;

    line-height: 1.7;
  }

}


/* ==========================================================
   LEGAL PAGES
========================================================== */

.legal-page {
  min-height: 100vh;

  background:
    radial-gradient(
      circle at 50% 0%,
      #171109 0%,
      #070604 32%,
      #030303 65%
    );

  padding:
    120px 24px 100px;
}


.legal-container {
  width: min(820px, 100%);

  margin: 0 auto;
}


.legal-back {
  display: inline-block;

  margin-bottom: 70px;

  color:
    rgba(244, 241, 234, 0.48);

  text-decoration: none;

  font-size: 10px;

  letter-spacing: 0.25em;

  transition: color 0.3s ease;
}


.legal-back:hover {
  color: var(--gold);
}


.legal-kicker {
  margin-bottom: 16px;

  color: var(--gold);

  font-size: 9px;

  letter-spacing: 0.4em;
}


.legal-container h1 {
  margin-bottom: 50px;

  font-size:
    clamp(36px, 6vw, 68px);

  font-weight: 300;

  letter-spacing: 0.06em;
}


.legal-container h2 {
  margin:
    45px 0 14px;

  font-size: 18px;

  font-weight: 400;

  letter-spacing: 0.05em;
}


.legal-container p {
  margin-bottom: 18px;

  color:
    rgba(244, 241, 234, 0.68);

  font-size: 15px;

  line-height: 1.8;
}


.legal-container p a {
  color: var(--gold);

  text-decoration-color: rgba(201, 154, 76, 0.45);

  text-underline-offset: 4px;
}


.legal-container p a:hover {
  color: var(--white);
}


.legal-placeholder {
  padding: 22px;

  border:
    1px solid rgba(201, 154, 76, 0.25);

  background:
    rgba(201, 154, 76, 0.035);
}


.legal-warning {
  color:
    rgba(201, 154, 76, 0.85) !important;
}


/* ==========================================================
   LANGUAGE LIBRARIES
========================================================== */

.library-page {
  min-height: 100vh;
  background: #050505;
}

.library-main {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 94px 0 110px;
}

.library-hero {
  display: grid;
  align-content: center;
  padding: 48px 0 62px;
  border-bottom: 1px solid rgba(201, 154, 76, 0.20);
}

.library-kicker {
  margin-bottom: 20px;
  color: var(--gold);
  font-size: 10px;
  letter-spacing: 0.38em;
}

.library-hero h1 {
  max-width: 760px;
  font-size: clamp(34px, 5vw, 60px);
  font-weight: 300;
  line-height: 1.05;
  letter-spacing: 0.07em;
}

.library-lead {
  max-width: 620px;
  margin-top: 25px;
  color: rgba(244, 241, 234, 0.63);
  font-size: clamp(14px, 1.2vw, 17px);
  line-height: 1.75;
}

.affiliate-disclosure {
  max-width: 620px;
  margin-top: 18px;
  color: rgba(244, 241, 234, 0.43);
  font-size: 11px;
  line-height: 1.7;
  letter-spacing: 0.06em;
}

.affiliate-disclosure strong {
  color: rgba(244, 241, 234, 0.72);
  font-weight: 400;
}

.library-index {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 0;
  margin: 0 0 72px;
  background: transparent;
  border: 1px solid transparent;
}

.library-featured {
  margin: 14px 0 34px;
}

.library-content-title {
  margin: 0 0 16px;
  color: rgba(244, 241, 234, 0.86);
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 300;
  line-height: 1.15;
  letter-spacing: 0.08em;
}

.library-featured .book-entry {
  min-height: 0;
  padding: clamp(18px, 2.2vw, 28px);
  display: grid;
  grid-template-columns: clamp(190px, 23vw, 275px) minmax(0, 1fr);
  gap: clamp(18px, 2.8vw, 38px);
  align-items: center;
  border: 1px solid transparent;
  background: #050505;
}

.featured-book-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
  border: 1px solid transparent;
}

.featured-book-copy {
  display: flex;
  flex-direction: column;
}

.library-featured .book-title {
  font-size: clamp(25px, 3.4vw, 40px);
  letter-spacing: 0.04em;
}

.library-featured .book-link-note {
  padding-top: 30px;
  align-self: flex-start;
  color: rgba(218, 167, 84, 0.92);
  font-size: clamp(12px, 1.2vw, 15px);
  letter-spacing: 0.12em;
  text-align: left;
  white-space: normal;
}

.library-index a {
  min-height: 0;
  aspect-ratio: 9 / 16;
  padding: 18px 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
  background-color: rgba(0, 0, 0, 0.58);
  background-position: center;
  background-size: cover;
  background-blend-mode: multiply;
  color: rgba(244, 241, 234, 0.78);
  text-decoration: none;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.95);
  transition: background-color 0.35s ease, color 0.3s ease;
}

.library-index a:hover,
.library-index a:focus-visible {
  background-color: rgba(0, 0, 0, 0.28);
  color: var(--white);
}

.library-index a:nth-child(1) { background-image: url("../images/library/chapter-1.jpg"); }
.library-index a:nth-child(2) { background-image: url("../images/library/chapter-2.jpg"); }
.library-index a:nth-child(3) { background-image: url("../images/library/chapter-3.jpg"); }
.library-index a:nth-child(4) { background-image: url("../images/library/chapter-4.jpg"); }
.library-index a:nth-child(5) { background-image: url("../images/library/chapter-5.jpg"); }
.library-index a:nth-child(6) { background-image: url("../images/library/chapter-6.jpg"); }
.library-index a:nth-child(7) { background-image: url("../images/library/chapter-7.jpg"); }
.library-index a:nth-child(8) { background-image: url("../images/library/chapter-8.jpg"); }

.library-index-number {
  color: var(--gold);
  font-size: 12px;
  letter-spacing: 0.25em;
}

.library-index-title {
  font-size: 10px;
  line-height: 1.45;
  letter-spacing: 0.10em;
}

.library-section {
  padding: 34px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  border-top: 1px solid transparent;
  scroll-margin-top: 92px;
}

.library-section .library-kicker {
  margin-bottom: 17px;
  font-size: clamp(12px, 1.1vw, 14px);
  letter-spacing: 0.30em;
}

.library-section-number {
  color: rgba(201, 154, 76, 0.64);
  font-size: clamp(42px, 6vw, 74px);
  font-weight: 300;
  line-height: 0.9;
}

.library-section-copy h2 {
  max-width: 800px;
  font-size: clamp(27px, 3.4vw, 43px);
  font-weight: 300;
  line-height: 1.15;
  letter-spacing: 0.025em;
}

.library-section-intro {
  max-width: 720px;
  margin-top: 24px;
  color: rgba(244, 241, 234, 0.58);
  font-size: 16px;
  line-height: 1.8;
}

.library-chapter-opening {
  max-width: 760px;
  color: rgba(244, 241, 234, 0.72);
  font-size: clamp(16px, 1.5vw, 19px);
}

.library-shelf-title {
  margin-top: 34px;
  color: rgba(201, 154, 76, 0.86);
  font-size: 11px;
  letter-spacing: 0.22em;
}

.library-empty {
  max-width: 720px;
  margin-top: 54px;
  padding: 28px 0;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  color: rgba(244, 241, 234, 0.42);
  font-size: 13px;
  line-height: 1.7;
  letter-spacing: 0.08em;
}

.book-list {
  max-width: 780px;
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-top: 1px solid transparent;
}

.book-entry {
  min-height: 0;
  padding: 27px 4px;
  display: grid;
  grid-template-columns: minmax(190px, 0.8fr) minmax(0, 1.5fr) auto;
  grid-template-rows: auto 1fr;
  column-gap: clamp(24px, 4vw, 54px);
  row-gap: 8px;
  align-items: start;
  border: 0;
  border-bottom: 1px solid transparent;
  background: transparent;
  color: inherit;
  text-decoration: none;
  transition:
    transform 0.3s ease,
    border-color 0.3s ease;
}

.book-entry:hover,
.book-entry:focus-visible {
  transform: translateX(4px);
  border-color: transparent;
}

.book-title {
  color: rgba(244, 241, 234, 0.94);
  font-size: 19px;
  font-weight: 400;
  line-height: 1.3;
}

.book-author {
  grid-column: 1;
  grid-row: 2;
  margin-top: 0;
  color: rgba(201, 154, 76, 0.78);
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.book-description {
  grid-column: 2;
  grid-row: 1 / span 2;
  margin-top: 0;
  color: rgba(244, 241, 234, 0.56);
  font-size: 14px;
  line-height: 1.65;
}

.book-link-note {
  grid-column: 3;
  grid-row: 1 / span 2;
  align-self: center;
  margin-top: 0;
  padding-top: 0;
  color: rgba(201, 154, 76, 0.70);
  font-size: 9px;
  letter-spacing: 0.15em;
  white-space: nowrap;
}

.library-explore {
  max-width: 780px;
  margin-top: 38px;
  padding: 0 4px;
}

.library-explore a {
  display: inline-block;
  color: rgba(218, 167, 84, 0.9);
  font-size: 15px;
  letter-spacing: 0.14em;
  line-height: 1.6;
  text-decoration: none;
}

.library-explore a:hover,
.library-explore a:focus-visible {
  color: var(--white);
}

.library-section-links {
  margin-top: 38px;
  display: flex;
  flex-wrap: wrap;
  gap: 18px 30px;
}

.library-section-links a {
  color: rgba(218, 167, 84, 0.86);
  text-decoration: none;
  font-size: 11px;
  letter-spacing: 0.17em;
}

.library-section-links a:hover {
  color: var(--white);
}

.library-page .topbar {
  position: absolute;
}

.library-page .footer-bottom .legal-back {
  margin: 0;
  color: rgba(244, 241, 234, 0.48);
}

@media (max-width: 1100px) {
  .library-index {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 850px) {
  .library-main {
    width: min(100% - 36px, 720px);
    padding-top: 92px;
  }

  .library-index {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .library-section {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 30px 0;
  }

  .book-list {
    grid-template-columns: 1fr;
  }

  .library-featured .book-entry {
    grid-template-columns: 1fr;
  }

  .featured-book-image {
    width: min(72vw, 280px);
    justify-self: start;
  }

  .book-entry {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 8px;
    padding: 28px 2px;
  }

  .book-author,
  .book-description,
  .book-link-note {
    grid-column: 1;
    grid-row: auto;
  }

  .book-description {
    margin-top: 12px;
  }

  .book-link-note,
  .library-featured .book-link-note {
    margin-top: 14px;
    padding-top: 0;
  }
}

@media (max-width: 520px) {
  .library-main {
    width: calc(100% - 32px);
  }

  .library-hero {
    padding-top: 34px;
  }

  .library-index {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* ==========================================================
   SECESSIONCORE STORY
   SCENE 01 — THE IDEA
   SCENE 02 — THE ROOTS
   ========================================================== */


/* ----------------------------------------------------------
   SHARED STORY SCENES
   ---------------------------------------------------------- */

.story-scene {
  position: relative;

  width: 100%;
  min-height: 100vh;

  overflow: hidden;

  display: flex;
  align-items: center;
  justify-content: center;

  isolation: isolate;
}


.story-content {
  position: relative;
  z-index: 4;

  width: min(1100px, 88vw);

  margin: 0 auto;

  text-align: center;
}


.story-kicker {
  margin-bottom: 34px;

  color: var(--gold);

  font-size: 9px;
  font-weight: 400;

  letter-spacing: 0.48em;
  padding-left: 0.48em;
}


/* ----------------------------------------------------------
   SCENE 01 — THE IDEA
   ---------------------------------------------------------- */

.idea-scene {
  min-height: 115vh;

  background:
    #020202;
}


.idea-atmosphere {
  position: absolute;
  z-index: 0;

  inset: 0;

  background:
    radial-gradient(
      circle at 50% 48%,
      rgba(116, 72, 20, 0.10) 0%,
      rgba(55, 34, 12, 0.045) 24%,
      rgba(0, 0, 0, 0) 58%
    );

  opacity: 0.75;

  animation:
    ideaAtmosphere 9s ease-in-out infinite alternate;
}


.idea-opening {
  color:
    rgba(244, 241, 234, 0.92);

  font-size:
    clamp(34px, 5.2vw, 72px);

  font-weight: 200;

  line-height: 1.18;

  letter-spacing: 0.08em;
  padding-left: 0.08em;
}


.idea-question {
  margin:
    clamp(80px, 12vh, 130px)
    auto
    0;

  display: flex;
  flex-direction: column;

  gap: 8px;

  color:
    rgba(255, 247, 229, 0.98);

  font-size:
    clamp(20px, 3vw, 42px);

  font-weight: 300;

  line-height: 1.35;

  letter-spacing: 0.10em;
  padding-left: 0.10em;

  text-shadow:
    0 0 18px rgba(210, 146, 48, 0.08);
}


.idea-pillars {
  width:
    min(820px, 90%);

  margin:
    clamp(70px, 10vh, 110px)
    auto
    0;

  padding-top: 25px;

  border-top:
    1px solid rgba(201, 154, 76, 0.22);

  display: flex;
  justify-content: space-between;
  align-items: center;

  gap: 30px;

  color:
    rgba(201, 154, 76, 0.76);

  font-size: 9px;

  letter-spacing: 0.30em;
}


.story-scroll {
  position: absolute;
  z-index: 4;

  left: 50%;
  bottom: 35px;

  transform: translateX(-50%);

  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 11px;

  color:
    rgba(244, 241, 234, 0.30);

  font-size: 7px;

  letter-spacing: 0.35em;
  padding-left: 0.35em;
}


.story-scroll-line {
  width: 1px;
  height: 44px;

  background:
    linear-gradient(
      to bottom,
      rgba(201, 154, 76, 0.65),
      rgba(201, 154, 76, 0)
    );

  animation:
    storyLinePulse 2.4s ease-in-out infinite;
}


/* ----------------------------------------------------------
   SCENE 02 — THE ROOTS
   ---------------------------------------------------------- */

.roots-scene {
  min-height: 125vh;

  background:
    linear-gradient(
      to bottom,
      #020202 0%,
      #040302 25%,
      #080603 62%,
      #030303 100%
    );
}


.roots-atmosphere {
  position: absolute;
  z-index: 0;

  inset: 0;

  background:
    radial-gradient(
      ellipse at 50% 52%,
      rgba(145, 91, 23, 0.11) 0%,
      rgba(82, 48, 13, 0.045) 30%,
      rgba(0, 0, 0, 0) 65%
    );

  opacity: 0;

  transition:
    opacity 2.5s ease;
}


.roots-scene.scene-visible .roots-atmosphere {
  opacity: 1;
}


.roots-content {
  max-width: 940px;
}


.roots-title {
  color:
    rgba(244, 241, 234, 0.95);

  font-size:
    clamp(36px, 5.6vw, 76px);

  font-weight: 200;

  line-height: 1.16;

  letter-spacing: 0.07em;
  padding-left: 0.07em;

  text-shadow:
    0 0 40px rgba(0, 0, 0, 0.95);
}


.roots-text {
  width:
    min(660px, 90%);

  margin:
    clamp(55px, 8vh, 90px)
    auto
    0;

  color:
    rgba(244, 241, 234, 0.55);

  font-size:
    clamp(14px, 1.3vw, 18px);

  font-weight: 300;

  line-height: 2;

  letter-spacing: 0.04em;
}


.roots-thought {
  margin:
    clamp(65px, 9vh, 100px)
    auto
    0;

  color:
    rgba(216, 171, 96, 0.82);

  font-size:
    clamp(11px, 1.2vw, 15px);

  line-height: 2;

  letter-spacing: 0.20em;
  padding-left: 0.20em;
}


.roots-destination {
  margin-top:
    clamp(70px, 10vh, 120px);

  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 12px;

  color:
    rgba(244, 241, 234, 0.35);

  font-size: 8px;

  letter-spacing: 0.35em;
  padding-left: 0.35em;
}


.roots-destination strong {
  color:
    rgba(244, 241, 234, 0.78);

  font-size:
    clamp(12px, 1.2vw, 16px);

  font-weight: 400;

  letter-spacing: 0.32em;
}


.roots-arrow {
  margin-top: 8px;

  color:
    rgba(201, 154, 76, 0.70);

  font-size: 18px;

  animation:
    rootsArrow 2.5s ease-in-out infinite;
}


/* ----------------------------------------------------------
   SCROLL REVEAL
   ---------------------------------------------------------- */

.reveal {
  opacity: 1;

  transform:
    translateY(0);
}

.js .reveal {
  opacity: 0;

  transform:
    translateY(28px);

  transition:
    opacity 1.5s ease,
    transform 1.5s ease;
}


.js .reveal.is-visible {
  opacity: 1;

  transform:
    translateY(0);
}


.idea-scene .reveal:nth-child(2) {
  transition-delay: 0.15s;
}


.idea-scene .reveal:nth-child(3) {
  transition-delay: 0.35s;
}


.idea-scene .reveal:nth-child(4) {
  transition-delay: 0.55s;
}


.roots-content .reveal:nth-child(2) {
  transition-delay: 0.18s;
}


.roots-content .reveal:nth-child(3) {
  transition-delay: 0.38s;
}


.roots-content .reveal:nth-child(4) {
  transition-delay: 0.58s;
}


.roots-content .reveal:nth-child(5) {
  transition-delay: 0.78s;
}


/* ----------------------------------------------------------
   STORY ANIMATIONS
   ---------------------------------------------------------- */

@keyframes ideaAtmosphere {

  from {
    opacity: 0.42;

    transform:
      scale(0.96);
  }

  to {
    opacity: 0.90;

    transform:
      scale(1.04);
  }

}


@keyframes storyLinePulse {

  0%,
  100% {
    opacity: 0.20;
  }

  50% {
    opacity: 0.85;
  }

}



@keyframes rootsArrow {

  0%,
  100% {
    opacity: 0.35;

    transform:
      translateY(0);
  }

  50% {
    opacity: 0.9;

    transform:
      translateY(7px);
  }

}


/* ----------------------------------------------------------
   STORY MOBILE
   ---------------------------------------------------------- */

@media (max-width: 700px) {

  .idea-scene {
    min-height: 110vh;
  }

  .roots-scene {
    min-height: 120vh;
  }

  .story-content {
    width: 88vw;
  }

  .story-kicker {
    margin-bottom: 28px;

    font-size: 8px;

    letter-spacing: 0.35em;
    padding-left: 0.35em;
  }

  .idea-opening {
    font-size:
      clamp(29px, 9vw, 48px);

    letter-spacing: 0.045em;
    padding-left: 0.045em;
  }

  .idea-question {
    margin-top: 75px;

    font-size:
      clamp(18px, 6vw, 28px);

    letter-spacing: 0.06em;
    padding-left: 0.06em;
  }

  .idea-pillars {
    margin-top: 70px;

    flex-direction: column;

    gap: 18px;

    border-top: none;

    font-size: 8px;
  }


  .roots-title {
    font-size:
      clamp(31px, 9vw, 48px);

    letter-spacing: 0.04em;
    padding-left: 0.04em;
  }

  .roots-text {
    margin-top: 50px;

    font-size: 14px;

    line-height: 1.9;
  }

  .roots-thought {
    margin-top: 60px;

    font-size: 10px;

    letter-spacing: 0.12em;
    padding-left: 0.12em;
  }

}



/* ==========================================================
   STORY V0.4
   Sekundäre Typografie + stärkere Wurzelstruktur
   ========================================================== */


/* ----------------------------------------------------------
   THE IDEA / THE ROOTS
   ---------------------------------------------------------- */

.story-kicker {
  margin-bottom: 38px;

  font-size:
    clamp(13px, 1.05vw, 17px);

  font-weight: 400;

  letter-spacing: 0.42em;
  padding-left: 0.42em;

  color:
    rgba(218, 171, 92, 0.95);

  text-shadow:
    0 0 18px rgba(201, 154, 76, 0.18);
}


/* ----------------------------------------------------------
   FREEDOM · RESPONSIBILITY · DECENTRALIZATION
   ---------------------------------------------------------- */

.idea-pillars {
  font-size:
    clamp(12px, 1vw, 16px);

  font-weight: 400;

  letter-spacing: 0.26em;

  color:
    rgba(218, 171, 92, 0.90);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .idea-pillars {
  font-size: clamp(15px, 1.25vw, 19px);
}


/* ----------------------------------------------------------
   DESCEND
   ---------------------------------------------------------- */

.story-scroll {
  font-size:
    clamp(10px, 0.8vw, 13px);

  letter-spacing: 0.30em;
  padding-left: 0.30em;

  color:
    rgba(244, 241, 234, 0.58);
}


.story-scroll-line {
  height: 52px;

  background:
    linear-gradient(
      to bottom,
      rgba(218, 171, 92, 0.85),
      rgba(201, 154, 76, 0)
    );
}


/* ----------------------------------------------------------
   THE ROOTS — Begleittext
   ---------------------------------------------------------- */

.roots-text {
  font-size:
    clamp(16px, 1.45vw, 21px);

  line-height: 1.9;

  color:
    rgba(244, 241, 234, 0.68);
}


/* ----------------------------------------------------------
   THE ROOTS — Kerngedanke
   ---------------------------------------------------------- */

.roots-thought {
  font-size:
    clamp(13px, 1.15vw, 17px);

  line-height: 2;

  letter-spacing: 0.17em;
  padding-left: 0.17em;

  color:
    rgba(224, 179, 101, 0.92);

  text-shadow:
    0 0 18px rgba(201, 154, 76, 0.10);
}


/* ----------------------------------------------------------
   NEXT / THE PRINCIPLES
   ---------------------------------------------------------- */

.roots-destination {
  font-size:
    clamp(10px, 0.8vw, 13px);

  color:
    rgba(244, 241, 234, 0.55);
}


.roots-destination strong {
  font-size:
    clamp(15px, 1.3vw, 20px);

  letter-spacing: 0.28em;

  color:
    rgba(244, 241, 234, 0.90);
}


.roots-arrow {
  font-size: 24px;

  color:
    rgba(218, 171, 92, 0.90);
}



/* ----------------------------------------------------------
   MOBILE V0.4
   ---------------------------------------------------------- */

@media (max-width: 700px) {

  .story-kicker {
    font-size:
      clamp(11px, 3vw, 14px);

    letter-spacing: 0.30em;
    padding-left: 0.30em;
  }

  .idea-pillars {
    font-size:
      clamp(11px, 3vw, 14px);

    letter-spacing: 0.22em;
  }

  html:is([lang="de"], [lang="en"], [lang="tr"]) .idea-pillars {
    font-size: clamp(14px, 3.8vw, 17px);
  }

  .story-scroll {
    font-size: 9px;
  }

  .roots-text {
    font-size:
      clamp(15px, 4vw, 18px);
  }

  .roots-thought {
    font-size:
      clamp(11px, 3vw, 14px);

    letter-spacing: 0.10em;
    padding-left: 0.10em;
  }

  .roots-destination strong {
    font-size:
      clamp(14px, 4vw, 18px);
  }


}



/* ==========================================================
   V0.5 — ENTER + DESCEND FEINJUSTIERUNG
   ========================================================== */


/* ----------------------------------------------------------
   ENTER
   Größer + mehr Abstand zum Motto
   ---------------------------------------------------------- */

.enter-button {
  margin-top: 62px;

  min-width: 180px;

  padding:
    18px 38px;

  font-size: 13px;

  letter-spacing: 0.32em;

  /*
     Kein künstliches Letter-Spacing-Padding mehr.
     Flexbox übernimmt die exakte Zentrierung.
  */
  padding-left: 38px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  text-align: center;
}


/* ----------------------------------------------------------
   DESCEND
   Exakt geometrisch zentrieren
   ---------------------------------------------------------- */

.story-scroll {
  left: 50%;

  width: max-content;

  transform:
    translateX(-50%);

  padding-left: 0;

  text-align: center;

  align-items: center;
}


.story-scroll > span {
  display: block;

  /*
     Das zusätzliche rechte Padding gleicht ausschließlich
     das letzte Letter-Spacing-Zeichen optisch aus.
  */
  padding-left: 0.30em;
}


.story-scroll-line {
  margin-left: 0;

  align-self: center;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 700px) {

  .enter-button {
    margin-top: 52px;

    min-width: 165px;

    padding:
      17px 32px;

    font-size: 12px;
  }

}



/* ==========================================================
   V0.6 — HERO MOTIVFREIHEIT + DESCEND CENTER
   ========================================================== */


/* ----------------------------------------------------------
   HERO

   SECESSIONCORE bleibt an seiner bisherigen Position.

   Das Motto wird separat nach unten geschoben,
   damit das Zentrum der Geometrie frei bleibt.
   ---------------------------------------------------------- */

.hero-subtitle {
  position: relative;

  top: 22px;
}


/* ----------------------------------------------------------
   ENTER

   Zusätzlich zum abgesenkten Motto deutlich weiter nach unten.
   ---------------------------------------------------------- */

.enter-button {
  position: relative;

  margin-top: 82px;

  min-width: 180px;

  padding:
    18px 38px;

  font-size: 13px;
}


/* ----------------------------------------------------------
   DESCEND

   Keine Buchstaben-Kompensation mehr.
   Container, Wort und Linie besitzen exakt dieselbe Mitte.
   ---------------------------------------------------------- */

.story-scroll {
  position: absolute;

  left: 50%;
  right: auto;

  bottom: 35px;

  width: 180px;

  padding: 0;

  transform:
    translateX(-50%);

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;
}


.story-scroll > span {
  display: block;

  width: 100%;

  margin: 0;
  padding: 0;

  text-align: center;

  /*
     Letter spacing bleibt erhalten,
     aber der Text selbst bekommt keine
     künstliche Links-/Rechtsverschiebung.
  */
  text-indent: 0.30em;
}


.story-scroll-line {
  position: relative;

  left: 0;

  width: 1px;
  height: 52px;

  margin:
    0 auto;

  align-self: center;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 700px) {

  .hero-subtitle {
    top: 15px;
  }

  .enter-button {
    margin-top: 68px;

    min-width: 165px;
  }

  .story-scroll {
    width: 160px;
  }

}



/* ==========================================================
   V0.6 — HERO MOTIVFREIHEIT + DESCEND CENTER
   ========================================================== */


/* ----------------------------------------------------------
   HERO

   SECESSIONCORE bleibt an seiner bisherigen Position.

   Das Motto wird separat nach unten geschoben,
   damit das Zentrum der Geometrie frei bleibt.
   ---------------------------------------------------------- */

.hero-subtitle {
  position: relative;

  top: 22px;
}


/* ----------------------------------------------------------
   ENTER

   Zusätzlich zum abgesenkten Motto deutlich weiter nach unten.
   ---------------------------------------------------------- */

.enter-button {
  position: relative;

  margin-top: 82px;

  min-width: 180px;

  padding:
    18px 38px;

  font-size: 13px;
}


/* ----------------------------------------------------------
   DESCEND

   Keine Buchstaben-Kompensation mehr.
   Container, Wort und Linie besitzen exakt dieselbe Mitte.
   ---------------------------------------------------------- */

.story-scroll {
  position: absolute;

  left: 50%;
  right: auto;

  bottom: 35px;

  width: 180px;

  padding: 0;

  transform:
    translateX(-50%);

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;
}


.story-scroll > span {
  display: block;

  width: 100%;

  margin: 0;
  padding: 0;

  text-align: center;

  /*
     Letter spacing bleibt erhalten,
     aber der Text selbst bekommt keine
     künstliche Links-/Rechtsverschiebung.
  */
  text-indent: 0.30em;
}


.story-scroll-line {
  position: relative;

  left: 0;

  width: 1px;
  height: 52px;

  margin:
    0 auto;

  align-self: center;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 700px) {

  .hero-subtitle {
    top: 15px;
  }

  .enter-button {
    margin-top: 68px;

    min-width: 165px;
  }

  .story-scroll {
    width: 160px;
  }

}



/* ==========================================================
   V0.7 — OPTISCHE AUSRICHTUNG
   ========================================================== */


/* ----------------------------------------------------------
   HERO MOTTO
   Noch weiter unter das Zentrum des Samen-des-Lebens
   ---------------------------------------------------------- */

.hero-subtitle {
  top: 42px;
}


/* ----------------------------------------------------------
   ENTER
   Weiter nach unten in den ruhigeren Bereich des Motivs
   ---------------------------------------------------------- */

.enter-button {
  margin-top: 112px;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .enter-button {
  position: absolute;
  z-index: 6;
  right: auto;
  bottom: clamp(88px, 11vh, 108px);
  left: 50%;
  width: 54px;
  min-width: 0;
  height: 64px;
  margin: 0 0 0 -27px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #e4b65f;
  font-size: 42px;
  font-weight: 200;
  line-height: 1;
  letter-spacing: 0;
  backdrop-filter: none;
  box-shadow: none;
  text-shadow:
    0 0 12px rgba(228, 182, 95, .72),
    0 0 30px rgba(201, 154, 76, .42);
  animation: principleArrow 1.8s ease-in-out infinite;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .hero-content {
  position: relative;
  bottom: clamp(18px, 3vh, 30px);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .hero-subtitle {
  top: 78px;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .enter-button:hover {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  color: #f1ca7c;
}

@media (max-width: 700px) {
  html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .enter-button {
    bottom: 78px;
    width: 50px;
    min-width: 0;
    height: 58px;
    margin: 0 0 0 -25px;
    padding: 0;
    font-size: 38px;
  }

  html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .hero-content {
    bottom: 16px;
  }

  html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .hero-subtitle {
    top: 58px;
  }
}


/* ----------------------------------------------------------
   DESCEND

   Gesamter Block leicht nach LINKS.
   Das ist eine bewusste optische Korrektur und keine
   mathematische Zentrierung.
   ---------------------------------------------------------- */

.story-scroll {
  left: calc(50% - 14px);

  width: 180px;

  transform:
    translateX(-50%);

  padding: 0;
}


/* Wort innerhalb des Blocks neutralisieren */

.story-scroll > span {
  width: auto;

  margin: 0;

  padding: 0;

  text-align: center;

  text-indent: 0;

  letter-spacing: 0.30em;
}


/* Linie exakt unter dem optischen Mittelpunkt */

.story-scroll-line {
  position: relative;

  left: 0;

  margin:
    0 auto;

  align-self: center;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 700px) {

  .hero-subtitle {
    top: 28px;
  }

  .enter-button {
    margin-top: 90px;
  }

  .story-scroll {
    left: calc(50% - 7px);
  }

}



/* ==========================================================
   V0.8 — DESCEND ABSOLUT ZENTRIERT
   ========================================================== */

/*
   Keine 50%-Berechnung mehr.
   Der Container nimmt die komplette Breite der Szene ein.
   Text und Linie werden innerhalb dieser Breite zentriert.
*/

.story-scroll {
  left: 0;
  right: 0;

  bottom: 35px;

  width: 100%;

  margin: 0;
  padding: 0;

  transform: none;

  display: flex;
  flex-direction: column;

  align-items: center;
  justify-content: center;

  text-align: center;
}


.story-scroll > span {
  display: block;

  width: auto;

  margin: 0;
  padding: 0;

  text-align: center;

  text-indent: 0;

  letter-spacing: 0.30em;
}


.story-scroll-line {
  position: relative;

  left: auto;
  right: auto;

  width: 1px;
  height: 52px;

  margin:
    0 auto;

  align-self: center;
}


/* MOBILE ebenfalls echte Mitte */

@media (max-width: 700px) {

  .story-scroll {
    left: 0;
    right: 0;

    width: 100%;

    transform: none;
  }

}



/* ==========================================================
   V0.8 — DESCEND ABSOLUT ZENTRIERT
   ========================================================== */

/*
   Keine 50%-Berechnung mehr.
   Der Container nimmt die komplette Breite der Szene ein.
   Text und Linie werden innerhalb dieser Breite zentriert.
*/

.story-scroll {
  left: 0;
  right: 0;

  bottom: 35px;

  width: 100%;

  margin: 0;
  padding: 0;

  transform: none;

  display: flex;
  flex-direction: column;

  align-items: center;
  justify-content: center;

  text-align: center;
}


.story-scroll > span {
  display: block;

  width: auto;

  margin: 0;
  padding: 0;

  text-align: center;

  text-indent: 0;

  letter-spacing: 0.30em;
}


.story-scroll-line {
  position: relative;

  left: auto;
  right: auto;

  width: 1px;
  height: 52px;

  margin:
    0 auto;

  align-self: center;
}


/* MOBILE ebenfalls echte Mitte */

@media (max-width: 700px) {

  .story-scroll {
    left: 0;
    right: 0;

    width: 100%;

    transform: none;
  }

}






/* ==========================================================
   THE PRINCIPLES V1.0
   01 — MENTALISM
   ========================================================== */


/* ----------------------------------------------------------
   PRINCIPLE SCENE
   ---------------------------------------------------------- */

.principle-scene {
  position: relative;

  width: 100%;
  min-height: 115vh;

  overflow: hidden;

  background: #020202;

  isolation: isolate;
}


/* ----------------------------------------------------------
   MENTALISM IMAGE
   ---------------------------------------------------------- */

.mentalism-image {
  position: absolute;

  z-index: 0;

  inset: 0;

  background-image:
    url("../images/principles/mentalism.jpg");

  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;

  opacity: 0;

  transform:
    scale(1.035);

  filter:
    brightness(0.72)
    contrast(1.05)
    saturate(0.92);

  transition:
    opacity 2.8s ease;

  will-change:
    transform,
    opacity;
}


.mentalism-scene.scene-visible .mentalism-image {
  opacity: 1;

  animation:
    mentalismBreath
    18s
    ease-in-out
    infinite
    alternate;
}


/* ----------------------------------------------------------
   VIGNETTE

   Links bleibt das Kunstwerk sichtbar.
   Rechts entsteht eine ruhige Textbühne.
   ---------------------------------------------------------- */

.mentalism-vignette {
  position: absolute;

  z-index: 1;

  inset: 0;

  background:

    linear-gradient(
      to right,
      rgba(0, 0, 0, 0.08) 0%,
      rgba(0, 0, 0, 0.08) 44%,
      rgba(0, 0, 0, 0.34) 62%,
      rgba(0, 0, 0, 0.82) 100%
    ),

    linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.52) 0%,
      rgba(0, 0, 0, 0.02) 28%,
      rgba(0, 0, 0, 0.06) 70%,
      rgba(0, 0, 0, 0.74) 100%
    );
}


/* ----------------------------------------------------------
   01
   ---------------------------------------------------------- */

.mentalism-number {
  position: absolute;

  z-index: 3;

  left: 6vw;
  top: 50%;

  transform:
    translateY(-50%);

  color:
    rgba(215, 166, 86, 0.32);

  font-size:
    clamp(80px, 11vw, 190px);

  font-weight: 100;

  line-height: 1;

  letter-spacing: -0.05em;

  pointer-events: none;
}


/* ----------------------------------------------------------
   CONTENT
   ---------------------------------------------------------- */

.mentalism-content {
  position: relative;

  z-index: 4;

  width:
    min(620px, 39vw);

  min-height: 115vh;

  margin-left: auto;
  margin-right: 7vw;

  display: flex;
  flex-direction: column;
  justify-content: center;

  padding:
    120px 0 100px;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .mentalism-content {
  align-items: flex-end;
  text-align: right;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .mentalism-content .principle-line {
  background:
    linear-gradient(
      to left,
      rgba(215, 164, 80, 0.68),
      rgba(215, 164, 80, 0)
    );
}


.principle-overline {
  margin-bottom: 25px;

  color:
    rgba(220, 171, 90, 0.92);

  font-size:
    clamp(12px, 0.9vw, 15px);

  letter-spacing: 0.42em;
  padding-left: 0.42em;
}


.principle-title {
  color:
    rgba(247, 243, 234, 0.98);

  font-size:
    clamp(52px, 6.2vw, 104px);

  font-weight: 200;

  line-height: 1;

  letter-spacing: 0.08em;

  text-shadow:
    0 0 30px rgba(0, 0, 0, 0.85);
}


.principle-line {
  width: 100%;
  height: 1px;

  margin:
    42px 0;

  background:
    linear-gradient(
      to right,
      rgba(215, 164, 80, 0.68),
      rgba(215, 164, 80, 0)
    );
}


.principle-thought {
  color:
    rgba(226, 178, 96, 0.94);

  font-size:
    clamp(15px, 1.25vw, 20px);

  font-weight: 400;

  letter-spacing: 0.19em;

  line-height: 1.7;
}


.principle-copy {
  width:
    min(520px, 100%);

  margin-top: 27px;

  color:
    rgba(244, 241, 234, 0.67);

  font-size:
    clamp(15px, 1.15vw, 19px);

  font-weight: 300;

  line-height: 1.9;

  letter-spacing: 0.025em;
}


/* ----------------------------------------------------------
   ACTIONS
   ---------------------------------------------------------- */

.principle-actions {
  margin-top:
    clamp(60px, 9vh, 105px);

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 40px;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .mentalism-content .principle-actions {
  justify-content: flex-end;
}


.source-button {
  display: inline-block;
  padding:
    15px 0;

  border: 0;
  border-bottom:
    1px solid rgba(209, 159, 76, 0.45);

  background: transparent;

  color:
    rgba(238, 225, 199, 0.82);

  text-decoration: none;

  font-family: inherit;

  font-size:
    clamp(10px, 0.8vw, 13px);

  letter-spacing: 0.22em;

  cursor: pointer;

  transition:
    color 0.3s ease,
    border-color 0.3s ease,
    transform 0.3s ease;
}


.source-button span {
  display: inline-block;

  margin-left: 12px;

  color:
    rgba(218, 167, 84, 0.86);

  transition:
    transform 0.3s ease;
}


.source-button:hover {
  color: var(--white);

  border-color:
    rgba(225, 177, 96, 0.82);
}


.source-button:hover span {
  transform:
    translateX(6px);
}


.principle-continue {
  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 10px;

  color:
    rgba(244, 241, 234, 0.42);

  font-size: 9px;

  letter-spacing: 0.30em;
}


.principle-arrow {
  color:
    rgba(220, 169, 85, 0.72);

  font-size: 19px;

  animation:
    principleArrow
    2.4s
    ease-in-out
    infinite;
}


/* ----------------------------------------------------------
   SOURCE DRAWER
   ---------------------------------------------------------- */

.source-drawer {
  position: fixed;

  z-index: 100;

  inset: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  padding:
    60px 24px;

  background:
    rgba(2, 2, 2, 0.97);

  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);

  opacity: 0;
  visibility: hidden;

  transform:
    scale(1.015);

  transition:
    opacity 0.55s ease,
    visibility 0.55s ease,
    transform 0.55s ease;
}


.source-drawer.is-open {
  opacity: 1;
  visibility: visible;

  transform:
    scale(1);
}


.source-close {
  position: absolute;

  top: 35px;
  right: 45px;

  border: 0;

  background: transparent;

  color:
    rgba(244, 241, 234, 0.55);

  font-size: 30px;

  font-weight: 200;

  cursor: pointer;

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}


.source-close:hover {
  color:
    rgba(224, 176, 94, 0.95);

  transform:
    rotate(90deg);
}


.source-drawer-inner {
  width:
    min(880px, 90vw);

  text-align: center;
}


.source-kicker {
  margin-bottom: 22px;

  color:
    rgba(215, 164, 82, 0.88);

  font-size: 11px;

  letter-spacing: 0.38em;
}


.source-drawer h3 {
  color:
    rgba(247, 243, 234, 0.96);

  font-size:
    clamp(38px, 5vw, 72px);

  font-weight: 200;

  letter-spacing: 0.08em;
}


.source-intro {
  margin-top: 25px;

  color:
    rgba(219, 172, 91, 0.82);

  font-size:
    clamp(13px, 1.1vw, 17px);

  letter-spacing: 0.22em;
}


.source-placeholder {
  margin:
    70px auto 0;

  padding:
    45px;

  border-top:
    1px solid rgba(201, 154, 76, 0.24);

  border-bottom:
    1px solid rgba(201, 154, 76, 0.14);
}


.source-placeholder span {
  display: block;

  margin-bottom: 18px;

  color:
    rgba(244, 241, 234, 0.70);

  font-size: 12px;

  letter-spacing: 0.30em;
}


.source-placeholder p {
  color:
    rgba(244, 241, 234, 0.44);

  font-size: 15px;

  line-height: 1.8;
}


.source-return {
  margin-top: 55px;

  padding:
    14px 23px;

  border:
    1px solid rgba(201, 154, 76, 0.36);

  background:
    transparent;

  color:
    rgba(244, 241, 234, 0.68);

  font-family: inherit;

  font-size: 10px;

  letter-spacing: 0.24em;

  cursor: pointer;

  transition:
    color 0.3s ease,
    border-color 0.3s ease;
}


.source-return:hover {
  color: var(--white);

  border-color:
    rgba(218, 171, 92, 0.75);
}


/* ----------------------------------------------------------
   ANIMATION
   ---------------------------------------------------------- */

@keyframes mentalismBreath {

  0% {
    transform:
      scale(1.035);

    filter:
      brightness(0.70)
      contrast(1.05)
      saturate(0.90);
  }

  100% {
    transform:
      scale(1.065);

    filter:
      brightness(0.79)
      contrast(1.07)
      saturate(0.98);
  }

}


@keyframes principleArrow {

  0%,
  100% {
    opacity: 0.35;

    transform:
      translateY(0);
  }

  50% {
    opacity: 0.95;

    transform:
      translateY(7px);
  }

}


/* ----------------------------------------------------------
   CONTENT REVEAL DELAYS
   ---------------------------------------------------------- */

.mentalism-content .reveal:nth-child(1) {
  transition-delay: 0.35s;
}


.mentalism-content .reveal:nth-child(2) {
  transition-delay: 0.55s;
}


.mentalism-content .reveal:nth-child(3) {
  transition-delay: 0.80s;
}


.mentalism-content .reveal:nth-child(4) {
  transition-delay: 1.0s;
}


.mentalism-content .reveal:nth-child(5) {
  transition-delay: 1.20s;
}


.mentalism-content .reveal:nth-child(6) {
  transition-delay: 1.45s;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 800px) {

  .mentalism-scene {
    min-height: 120vh;
  }

  .mentalism-image {
    background-position:
      42% center;

    opacity: 0;
  }

  .mentalism-scene.scene-visible .mentalism-image {
    opacity: 0.62;
  }

  .mentalism-vignette {
    background:

      linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.18) 0%,
        rgba(0, 0, 0, 0.34) 35%,
        rgba(0, 0, 0, 0.88) 72%,
        rgba(0, 0, 0, 0.98) 100%
      );
  }

  .mentalism-number {
    left: 24px;

    top: 28%;

    font-size:
      clamp(70px, 24vw, 120px);
  }

  .mentalism-content {
    width: 88vw;

    min-height: 120vh;

    margin:
      0 auto;

    justify-content:
      flex-end;

    padding:
      100px 0 90px;
  }

  .principle-title {
    font-size:
      clamp(45px, 13vw, 72px);
  }

  .principle-actions {
    flex-direction: column;

    align-items: flex-start;

    gap: 42px;
  }

  .principle-continue {
    align-self: center;
  }

  .source-close {
    top: 22px;
    right: 22px;
  }

}


/* ----------------------------------------------------------
   REDUCED MOTION
   ---------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {

  .mentalism-image,
  .principle-arrow {
    animation: none !important;
  }

}



/* ==========================================================
   MENTALISM V1.1
   Weicher Übergang aus THE ROOTS
   + CONTINUE Feinschliff
   ========================================================== */


/* ----------------------------------------------------------
   ROOTS → MENTALISM Übergang
   ---------------------------------------------------------- */

.mentalism-scene::before {
  content: "";

  position: absolute;
  z-index: 2;

  left: 0;
  right: 0;
  top: 0;

  height: 34vh;

  pointer-events: none;

  background:
    linear-gradient(
      to bottom,
      #030303 0%,
      rgba(3, 3, 3, 0.98) 15%,
      rgba(3, 3, 3, 0.82) 36%,
      rgba(3, 3, 3, 0.45) 62%,
      rgba(3, 3, 3, 0) 100%
    );
}


/*
   Das Bild selbst startet oben dunkler.
   Dadurch erscheint zuerst nur der zentrale Lichtpunkt.
*/

.mentalism-image {
  -webkit-mask-image:
    linear-gradient(
      to bottom,
      transparent 0%,
      rgba(0, 0, 0, 0.30) 8%,
      rgba(0, 0, 0, 0.75) 18%,
      black 34%,
      black 100%
    );

  mask-image:
    linear-gradient(
      to bottom,
      transparent 0%,
      rgba(0, 0, 0, 0.30) 8%,
      rgba(0, 0, 0, 0.75) 18%,
      black 34%,
      black 100%
    );
}


/* ----------------------------------------------------------
   CONTINUE
   ---------------------------------------------------------- */

.principle-actions {
  position: relative;
}


.principle-continue {
  margin-right: 42px;

  min-width: 110px;

  color:
    rgba(244, 241, 234, 0.60);

  font-size:
    clamp(11px, 0.85vw, 14px);

  letter-spacing: 0.24em;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .mentalism-scene > .principle-continue {
  position: absolute;
  z-index: 6;
  right: auto;
  bottom: clamp(28px, 4vh, 44px);
  left: 50%;
  margin: 0;
  transform: translateX(-50%) translateY(25px);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .mentalism-scene > .principle-continue.is-visible {
  transform: translateX(-50%) translateY(0);
}


.principle-arrow {
  font-size: 23px;

  color:
    rgba(220, 169, 85, 0.86);
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 800px) {

  .mentalism-scene::before {
    height: 28vh;
  }

  .mentalism-image {
    -webkit-mask-image:
      linear-gradient(
        to bottom,
        transparent 0%,
        rgba(0, 0, 0, 0.45) 10%,
        black 30%,
        black 100%
      );

    mask-image:
      linear-gradient(
        to bottom,
        transparent 0%,
        rgba(0, 0, 0, 0.45) 10%,
        black 30%,
        black 100%
      );
  }

  .principle-continue {
    margin-right: 0;

    font-size: 11px;
  }

}



/* ==========================================================
   CORRESPONDENCE V1.0
   AS ABOVE / SO BELOW
   ========================================================== */

.correspondence-scene {
  min-height: 120vh;

  background: #010204;
}


/* ----------------------------------------------------------
   ARTWORK
   ---------------------------------------------------------- */

.correspondence-image {
  position: absolute;

  z-index: 0;

  inset: 0;

  background-image:
    url("../images/principles/correspondence.jpg");

  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;

  opacity: 0;

  transform:
    scale(1.025);

  filter:
    brightness(0.62)
    saturate(0.82)
    contrast(1.05);

  transition:
    opacity 3.2s ease;

  will-change:
    transform,
    opacity,
    filter;
}


.correspondence-scene.scene-visible
.correspondence-image {

  opacity: 1;

  animation:
    correspondenceBreath
    22s
    ease-in-out
    infinite
    alternate;
}


/* ----------------------------------------------------------
   MENTALISM → STARS
   ---------------------------------------------------------- */

.correspondence-scene::before {
  content: "";

  position: absolute;

  z-index: 2;

  left: 0;
  right: 0;
  top: 0;

  height: 30vh;

  pointer-events: none;

  background:
    linear-gradient(
      to bottom,
      #020202 0%,
      rgba(2, 2, 2, 0.96) 14%,
      rgba(2, 2, 2, 0.67) 40%,
      rgba(2, 2, 2, 0.18) 76%,
      transparent 100%
    );
}


.correspondence-image {
  -webkit-mask-image:
    linear-gradient(
      to bottom,
      transparent 0%,
      rgba(0,0,0,.28) 7%,
      rgba(0,0,0,.82) 18%,
      black 31%,
      black 100%
    );

  mask-image:
    linear-gradient(
      to bottom,
      transparent 0%,
      rgba(0,0,0,.28) 7%,
      rgba(0,0,0,.82) 18%,
      black 31%,
      black 100%
    );
}


/* ----------------------------------------------------------
   SHADE
   ---------------------------------------------------------- */

.correspondence-shade {
  position: absolute;

  z-index: 1;

  inset: 0;

  pointer-events: none;

  background:

    linear-gradient(
      to right,
      rgba(0,0,0,.48) 0%,
      rgba(0,0,0,.10) 28%,
      rgba(0,0,0,.02) 50%,
      rgba(0,0,0,.12) 73%,
      rgba(0,0,0,.52) 100%
    ),

    linear-gradient(
      to bottom,
      rgba(0,0,0,.25) 0%,
      transparent 32%,
      transparent 67%,
      rgba(0,0,0,.40) 100%
    );
}


/* ----------------------------------------------------------
   AS ABOVE / SO BELOW

   Beide sitzen auf derselben vertikalen Achse.
   ---------------------------------------------------------- */

.correspondence-above,
.correspondence-below {

  position: absolute;

  z-index: 4;

  left: 50%;

  width:
    min(760px, 70vw);

  transform:
    translateX(-50%);

  text-align: center;

  pointer-events: none;
}


.correspondence-above {
  top: 14vh;
}


.correspondence-below {
  bottom: 15vh;
}


.correspondence-index {
  margin-bottom: 22px;

  color:
    rgba(213, 169, 96, 0.82);

  font-size:
    clamp(11px, .82vw, 14px);

  letter-spacing:
    .38em;
}


.correspondence-half {

  color:
    rgba(244, 241, 234, 0.86);

  font-size:
    clamp(28px, 3.3vw, 54px);

  font-weight: 200;

  letter-spacing:
    .22em;

  line-height: 1.2;

  text-shadow:
    0 2px 30px rgba(0,0,0,.9);
}


/* BELOW slightly becomes a reflection */

.correspondence-below
.correspondence-half {

  color:
    rgba(216, 225, 235, 0.66);

  transform:
    scaleY(0.94);

  opacity:
    .82;
}


/* ----------------------------------------------------------
   CENTRAL TITLE

   Bewusst oberhalb/seitlich der kleinen Person,
   damit sie frei bleibt.
   ---------------------------------------------------------- */

.correspondence-title-block {

  position: absolute;

  z-index: 5;

  top: 50%;

  left: 6vw;

  width:
    min(650px, 39vw);

  transform:
    translateY(-50%);
}


.correspondence-title {

  color:
    rgba(248, 246, 239, .97);

  font-size:
    clamp(44px, 5vw, 82px);

  font-weight:
    200;

  line-height:
    1;

  letter-spacing:
    .055em;

  text-shadow:
    0 2px 35px rgba(0,0,0,.95);
}


.correspondence-rule {

  width:
    min(460px, 100%);

  height:
    1px;

  margin:
    30px 0;

  background:
    linear-gradient(
      to right,
      rgba(215, 166, 84, .75),
      rgba(215, 166, 84, 0)
    );
}


.correspondence-thought {

  color:
    rgba(226, 181, 102, .92);

  font-size:
    clamp(13px, 1.05vw, 18px);

  line-height:
    1.7;

  letter-spacing:
    .19em;
}


/* ----------------------------------------------------------
   LARGE 02 IN WATER
   ---------------------------------------------------------- */

.correspondence-number {

  position: absolute;

  z-index: 3;

  left: 6vw;

  bottom: 18vh;

  color:
    rgba(135, 174, 205, .20);

  font-size:
    clamp(90px, 12vw, 205px);

  font-weight:
    100;

  line-height:
    1;

  letter-spacing:
    -.05em;

  pointer-events:
    none;

  text-shadow:
    0 0 30px rgba(95, 145, 184, .12);
}


/* ----------------------------------------------------------
   ACTIONS
   ---------------------------------------------------------- */

.correspondence-actions {

  position: absolute;

  z-index: 6;

  right: 6vw;

  top: 50%;

  width:
    min(340px, 24vw);

  transform:
    translateY(-50%);

  display:
    flex;

  flex-direction:
    column;

  align-items:
    flex-end;

  gap:
    55px;
}


.correspondence-source-button {
  text-shadow:
    0 2px 16px rgba(0,0,0,.95);
}


.correspondence-continue {

  display:
    flex;

  flex-direction:
    column;

  align-items:
    center;

  margin-right:
    30px;

  gap:
    10px;

  color:
    rgba(244,241,234,.60);

  font-size:
    clamp(11px, .85vw, 14px);

  letter-spacing:
    .24em;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .correspondence-scene > .correspondence-continue {
  position: absolute;
  z-index: 6;
  right: auto;
  bottom: clamp(28px, 4vh, 44px);
  left: 50%;
  margin: 0;
  transform: translateX(-50%) translateY(25px);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .correspondence-scene > .correspondence-continue.is-visible {
  transform: translateX(-50%) translateY(0);
}


/* ----------------------------------------------------------
   REVEAL DELAYS
   ---------------------------------------------------------- */

.correspondence-above
.reveal:nth-child(1) {
  transition-delay: .45s;
}

.correspondence-above
.reveal:nth-child(2) {
  transition-delay: .75s;
}

.correspondence-title-block
.reveal:nth-child(1) {
  transition-delay: .95s;
}

.correspondence-title-block
.reveal:nth-child(2) {
  transition-delay: 1.10s;
}

.correspondence-title-block
.reveal:nth-child(3) {
  transition-delay: 1.25s;
}

.correspondence-title-block
.reveal:nth-child(4) {
  transition-delay: 1.45s;
}

.correspondence-below
.reveal {
  transition-delay: 1.70s;
}

.correspondence-actions {
  transition-delay: 1.95s;
}

.correspondence-number {
  transition-delay: 1.30s;
}


/* ----------------------------------------------------------
   BREATH
   ---------------------------------------------------------- */

@keyframes correspondenceBreath {

  0% {

    transform:
      scale(1.025);

    filter:
      brightness(.60)
      saturate(.80)
      contrast(1.05);
  }

  100% {

    transform:
      scale(1.055);

    filter:
      brightness(.70)
      saturate(.92)
      contrast(1.07);
  }

}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 800px) {

  .correspondence-scene {
    min-height: 125vh;
  }

  .correspondence-image {
    background-position:
      55% center;
  }

  .correspondence-above {
    top: 13vh;
  }

  .correspondence-below {
    bottom: 11vh;
  }

  .correspondence-half {
    font-size:
      clamp(25px, 8vw, 40px);
  }

  .correspondence-title-block {

    top: 37%;

    left: 7vw;

    width: 86vw;

    transform: none;
  }

  .correspondence-title {

    font-size:
      clamp(38px, 11vw, 60px);
  }

  .correspondence-number {

    left: 7vw;

    bottom: 25vh;
  }

  .correspondence-actions {

    top: auto;

    right: 7vw;

    bottom: 22vh;

    width: 86vw;

    transform: none;

    align-items: flex-end;

    gap: 34px;
  }

  .correspondence-continue {
    margin-right: 0;
  }

}


/* ----------------------------------------------------------
   REDUCED MOTION
   ---------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {

  .correspondence-image {
    animation: none !important;
  }

}


/* ==========================================================
   CHAPTER 01 — THE ROOTS
   ORIGINAL BOOK ARTWORK
   ========================================================== */

.roots-scene {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    background: #000;
}

.roots-image {
    position: absolute;
    inset: 0;
    z-index: 0;

    background-image:
        url("../images/principles/roots.jpg");

    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;

    transform: scale(1.02);

    animation:
        rootsImageBreath 14s ease-in-out infinite alternate;
}

.roots-image-vignette {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,0.82) 0%,
            rgba(0,0,0,0.56) 32%,
            rgba(0,0,0,0.16) 58%,
            rgba(0,0,0,0.32) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,0.30) 0%,
            rgba(0,0,0,0.05) 40%,
            rgba(0,0,0,0.52) 100%
        );
}

.roots-atmosphere {
    z-index: 2;
    pointer-events: none;
}

.roots-content {
    position: relative;
    z-index: 3;
}

@keyframes rootsImageBreath {
    0% {
        transform: scale(1.02);
        filter: brightness(0.88) contrast(1.04);
    }

    100% {
        transform: scale(1.055);
        filter: brightness(1.00) contrast(1.08);
    }
}

@media (prefers-reduced-motion: reduce) {
    .roots-image {
        animation: none;
        transform: scale(1.02);
    }
}


/* ==========================================================
   SECESSIONCORE - PRINCIPLES 04-08
   ========================================================== */

.chapter-scene {
    position: relative;
    width: 100%;
    min-height: 100vh;
    overflow: hidden;
    background: #000;
    color: #f4f0e8;
    isolation: isolate;
}

.chapter-scene.is-source-open {
    z-index: 1000;
    overflow: visible;
}

.chapter-image,
.chapter-overlay {
    position: absolute;
    inset: 0;
}

.chapter-image {
    z-index: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transform: scale(1.015);
    animation: chapterBreath 16s ease-in-out infinite alternate;
}

.chapter-overlay {
    z-index: 1;
    pointer-events: none;
}

.chapter-scene > *:not(.chapter-image):not(.chapter-overlay):not(.chapter-source-drawer) {
    position: absolute;
    z-index: 3;
}

.chapter-index {
    margin: 0 0 24px;
    color: #c99842;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .42em;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .principle-overline,
html:is([lang="de"], [lang="en"], [lang="tr"]) .correspondence-index,
html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-index {
    font-size: clamp(15px, 1.15vw, 18px);
    line-height: 1.35;
}

.chapter-title {
    margin: 0;
    color: #f5f1e9;
    font-size: clamp(58px, 7.2vw, 112px);
    line-height: .95;
    font-weight: 300;
    letter-spacing: .075em;
}

.chapter-rule {
    width: 180px;
    height: 1px;
    margin: 30px 0 25px;
    background: linear-gradient(90deg, rgba(206,153,62,.95), rgba(206,153,62,.08));
}

.chapter-statement {
    margin: 0;
    color: #e1b65f;
    font-size: clamp(14px, 1.35vw, 20px);
    line-height: 1.65;
    letter-spacing: .20em;
}

.chapter-copy {
    max-width: 540px;
    margin: 26px 0 0;
    color: rgba(245,241,233,.68);
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: .02em;
}

.chapter-number {
    color: rgba(223,178,91,.13);
    font-size: clamp(150px, 22vw, 340px);
    line-height: .75;
    font-weight: 200;
    letter-spacing: -.06em;
    user-select: none;
    pointer-events: none;
}

.chapter-actions {
    display: flex;
    align-items: center;
    gap: 60px;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .chapter-actions,
html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .chapter-actions,
html:is([lang="de"], [lang="en"], [lang="tr"]) #rhythm .chapter-actions,
html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .chapter-actions,
html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .chapter-actions {
    right: var(--sc-safe-x) !important;
    left: var(--sc-safe-x) !important;
    width: auto !important;
    max-width: none !important;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: end;
    transform: none !important;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .chapter-source-button,
html:is([lang="de"], [lang="en"], [lang="tr"]) #rhythm .chapter-source-button,
html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .chapter-source-button {
    grid-column: 1;
    justify-self: start;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .chapter-source-button,
html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .chapter-source-button {
    grid-column: 3;
    justify-self: end;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-actions .chapter-continue {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
}

.chapter-source-button {
    display: inline-block;
    padding: 13px 0;
    border: 0;
    border-bottom: 1px solid rgba(207,158,67,.72);
    background: transparent;
    color: #d8b05e;
    text-decoration: none;
    font-family: inherit;
    font-size: 11px;
    letter-spacing: .18em;
    cursor: pointer;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .source-button,
html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-source-button {
    padding: 15px 0;
    border: 0;
    border-bottom: 1px solid rgba(209, 159, 76, 0.45);
    background: transparent;
    color: rgba(238, 225, 199, 0.82);
    font-size: clamp(13px, 1vw, 15px);
    letter-spacing: .16em;
    transition:
        color .3s ease,
        border-color .3s ease,
        transform .3s ease;
}

.chapter-source-button span { padding-left: 16px; }

html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-source-button span {
    display: inline-block;
    margin-left: 12px;
    padding-left: 0;
    color: rgba(218, 167, 84, 0.86);
    transition: transform .3s ease;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-source-button:hover {
    color: var(--white);
    border-color: rgba(225, 177, 96, 0.82);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-source-button:hover span {
    transform: translateX(6px);
}

.chapter-continue {
    display: flex;
    flex-direction: column;
    gap: 9px;
    align-items: center;
    color: rgba(245,241,233,.72);
    text-decoration: none;
    font-size: 10px;
    letter-spacing: .22em;
}

.chapter-continue strong {
    color: #d0a34c;
    font-size: 23px;
    font-weight: 300;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .roots-arrow,
html:is([lang="de"], [lang="en"], [lang="tr"]) .principle-arrow,
html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-continue strong {
    margin-top: 0;
    color: #e4b65f;
    font-size: clamp(34px, 2.7vw, 42px);
    font-weight: 200;
    line-height: 1;
    text-shadow:
      0 0 12px rgba(228, 182, 95, .72),
      0 0 28px rgba(201, 154, 76, .40);
    animation: principleArrow 1.8s ease-in-out infinite;
}

.chapter-source-drawer {
    position: fixed;
    inset: 0 0 0 auto;
    z-index: 1000;
    width: min(520px, 92vw);
    height: 100vh;
    overflow-y: auto;
    padding: 70px 60px;
    box-sizing: border-box;
    background: linear-gradient(145deg, rgba(12,10,7,.985), rgba(0,0,0,.995));
    border-left: 1px solid rgba(202,151,61,.25);
    box-shadow: -30px 0 80px rgba(0,0,0,.65);
    transform: translateX(105%);
    visibility: hidden;
    pointer-events: none;
    transition:
        transform .55s cubic-bezier(.22,.61,.36,1),
        visibility 0s linear .55s;
}

.chapter-source-drawer.is-open {
    transform: translateX(0);
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}

.chapter-source-close {
    position: absolute;
    top: 25px;
    right: 30px;
    border: 0;
    background: transparent;
    color: rgba(255,255,255,.7);
    font-size: 30px;
    font-weight: 200;
    cursor: pointer;
}

.chapter-source-inner { padding-top: 60px; }

.chapter-source-inner h3 {
    margin: 20px 0;
    color: #f3efe6;
    font-size: 34px;
    font-weight: 300;
    letter-spacing: .08em;
}

.chapter-source-inner .source-placeholder {
    margin-top: 45px;
    padding: 28px 0;
    border-top: 1px solid rgba(202,151,61,.25);
    border-bottom: 1px solid rgba(202,151,61,.25);
}

.chapter-source-inner .source-placeholder span {
    color: #c99a46;
    font-size: 10px;
    letter-spacing: .30em;
}

.chapter-source-inner .source-placeholder p {
    color: rgba(255,255,255,.58);
    line-height: 1.7;
}

.vibration-image {
    background-image: url("../images/principles/vibration.jpg");
    background-position: center center;
}

.vibration-overlay {
    background:
      linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.37) 33%, rgba(0,0,0,.05) 57%, rgba(0,0,0,.18) 100%),
      linear-gradient(180deg, rgba(0,0,0,.30), transparent 40%, rgba(0,0,0,.42));
}

.vibration-content { top: 16%; left: 7%; width: 43%; }
.chapter-number-left { left: 3%; bottom: 8%; }
.vibration-actions { left: 7%; bottom: 8%; }

html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .chapter-number-left {
    top: 22%;
    right: max(18px, calc(var(--sc-safe-x) * .55));
    bottom: auto;
    left: auto;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .vibration-actions {
    bottom: clamp(68px, 9vh, 96px);
}

.polarity-image {
    background-image: url("../images/principles/polarity.jpg");
}

.polarity-overlay {
    background:
      linear-gradient(90deg, rgba(0,0,0,.38), rgba(0,0,0,.03) 38%, rgba(0,0,0,.03) 63%, rgba(0,0,0,.30)),
      linear-gradient(180deg, rgba(0,0,0,.30), transparent 45%, rgba(0,0,0,.55));
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-overlay {
    background:
      linear-gradient(90deg, rgba(0,0,0,.38), rgba(0,0,0,.03) 38%, rgba(0,0,0,.03) 61%, rgba(0,0,0,.46)),
      linear-gradient(180deg, rgba(0,0,0,.30), transparent 45%, rgba(0,0,0,.55));
}

.polarity-header {
    top: 9%; left: 50%; width: 80%; text-align: center; transform: translateX(-50%);
}
.polarity-header .chapter-title { font-size: clamp(52px, 6vw, 96px); }

.polarity-left, .polarity-right {
    top: 50%; color: rgba(227,232,245,.48); font-size: 11px; letter-spacing: .42em;
}
.polarity-left { left: 5%; }
.polarity-right { right: 5%; color: rgba(255,215,119,.62); }

.polarity-thought {
    left: 50%; bottom: 14%; width: 620px; max-width: 70vw;
    text-align: center; transform: translateX(-50%);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-thought {
    left: auto;
    right: clamp(28px, 5vw, 86px);
    width: min(36vw, 520px);
    max-width: calc(100vw - 56px);
    text-align: right;
    transform: none;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-thought .chapter-rule {
    margin-left: auto;
    margin-right: 0;
    background: linear-gradient(90deg, transparent, #c99a46);
}
.polarity-thought .chapter-rule {
    margin: 0 auto 22px;
    background: linear-gradient(90deg, transparent, #c99a46, transparent);
}
.polarity-number { left: 3%; bottom: 4%; }
.polarity-actions { right: 5%; bottom: 5%; }

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-number {
    bottom: 14%;
}

.rhythm-image {
    background-image: url("../images/principles/rhythm.jpg");
}
.rhythm-overlay {
    background:
      linear-gradient(90deg, rgba(0,0,0,.73), rgba(0,0,0,.10) 42%, rgba(0,0,0,.05) 70%, rgba(0,0,0,.28)),
      linear-gradient(180deg, rgba(0,0,0,.25), transparent 50%, rgba(0,0,0,.44));
}
.rhythm-content { top: 15%; left: 6%; width: 38%; }
.rhythm-number { right: 3%; top: 13%; }
.rhythm-cycle { right: 5%; bottom: 20%; color: #d4ac61; font-size: 11px; letter-spacing: .42em; }
.rhythm-actions { left: 6%; bottom: 7%; }

.cause-image {
    background-image: url("../images/principles/cause-effect.jpg");
    background-position: center center;
}
.cause-overlay {
    background:
      linear-gradient(90deg, rgba(0,0,0,.76) 0%, rgba(0,0,0,.48) 31%, rgba(0,0,0,.06) 59%, rgba(0,0,0,.12) 100%),
      linear-gradient(180deg, rgba(0,0,0,.20), transparent 47%, rgba(0,0,0,.45));
}
.cause-content { top: 12%; left: 6%; width: 42%; }
.cause-title { font-size: clamp(58px, 7vw, 110px); }
.cause-title span { font-size: .72em; }
.cause-number { left: 3%; bottom: 4%; }
.cause-actions { left: 6%; bottom: 7%; }

html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .cause-number {
    right: max(18px, calc(var(--sc-safe-x) * .55));
    bottom: 14%;
    left: auto;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .cause-actions {
    bottom: clamp(68px, 9vh, 96px);
}

.gender-image {
    background-image: url("../images/principles/gender-care.jpg");
    background-position: center;
}
.gender-overlay {
    background:
      linear-gradient(90deg, rgba(0,0,0,.50), rgba(0,0,0,.04) 32%, rgba(0,0,0,.04) 68%, rgba(0,0,0,.50)),
      linear-gradient(180deg, rgba(0,0,0,.30), transparent 45%, rgba(0,0,0,.58));
}
.gender-header {
    top: 7%; left: 50%; width: 80%; text-align: center; transform: translateX(-50%);
}
.gender-header .chapter-title { font-size: clamp(48px, 5.8vw, 90px); }
.gender-left, .gender-right { top: 51%; width: 25%; }
.gender-left { left: 4%; text-align: left; }
.gender-right { right: 4%; text-align: right; }
.gender-left .chapter-statement, .gender-right .chapter-statement { font-size: clamp(11px, 1vw, 15px); }
.gender-number { left: 3%; bottom: 4%; }
.gender-final {
    left: 50%; bottom: 15%; display: flex; flex-direction: column; gap: 12px;
    text-align: center; transform: translateX(-50%);
}
html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-final {
    top: 16%;
    right: auto;
    bottom: auto;
    left: var(--sc-safe-x);
    width: min(34vw, 460px);
    align-items: flex-start;
    text-align: left;
    transform: translateY(25px);
}
html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-final.is-visible {
    transform: translateY(0);
}
html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-right {
    top: 41%;
}
.gender-final span { color: rgba(255,255,255,.58); font-size: 9px; letter-spacing: .40em; }
.gender-final strong { color: #ddb45d; font-size: 14px; font-weight: 400; letter-spacing: .25em; }
.gender-actions { left: 50%; bottom: 4%; transform: translateX(-50%); }

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-number {
    bottom: 14%;
}

@keyframes chapterBreath {
    from { transform: scale(1.015); filter: brightness(.88) contrast(1.03); }
    to   { transform: scale(1.055); filter: brightness(.98) contrast(1.08); }
}

@media (max-width: 800px) {
    .chapter-title { font-size: clamp(44px, 13vw, 72px); }
    .chapter-number { font-size: 150px; }

    .vibration-content, .rhythm-content, .cause-content {
        top: 18%; left: 7%; width: 82%;
    }

    .polarity-header, .gender-header { top: 12%; }

    .polarity-left, .polarity-right,
    .gender-left, .gender-right,
    .rhythm-cycle { display: none; }

    .polarity-thought { bottom: 23%; max-width: 84vw; }

    .chapter-actions {
        left: 7%; right: auto; bottom: 6%; gap: 32px; transform: none;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .chapter-number-left {
        top: auto;
        right: 22px;
        bottom: 22px;
        left: auto;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .cause-number {
        right: 22px;
        bottom: 90px;
        left: auto;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .vibration-actions,
    html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .cause-actions {
        bottom: 96px;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-thought {
        right: 22px;
        width: calc(100vw - 44px);
        max-width: none;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) .principle-overline,
    html:is([lang="de"], [lang="en"], [lang="tr"]) .correspondence-index,
    html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-index {
        font-size: clamp(13px, 3.6vw, 16px);
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-final {
        top: auto;
        right: auto;
        bottom: 20%;
        left: 50%;
        width: calc(100vw - 44px);
        align-items: center;
        text-align: center;
        transform: translateX(-50%) translateY(25px);
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-final.is-visible {
        transform: translateX(-50%) translateY(0);
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-actions .chapter-source-button {
        grid-row: 1;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-actions .chapter-continue {
        grid-column: 1 / -1;
        grid-row: 2;
        margin-top: 10px;
    }

    .gender-actions { left: 50%; transform: translateX(-50%); }
    .gender-final { bottom: 20%; width: 90%; }

    .chapter-source-drawer { padding: 55px 28px; }
}

@media (prefers-reduced-motion: reduce) {
    .chapter-image { animation: none; transform: scale(1.015); }

    html:is([lang="de"], [lang="en"], [lang="tr"]) .hero .enter-button,
    html:is([lang="de"], [lang="en"], [lang="tr"]) .roots-arrow,
    html:is([lang="de"], [lang="en"], [lang="tr"]) .principle-arrow,
    html:is([lang="de"], [lang="en"], [lang="tr"]) .chapter-continue strong {
        opacity: 1;
        transform: none;
        animation: none !important;
    }
}


/* ==========================================================
   SECESSIONCORE - VIEWPORT SAFE AREA V1
   Prevents chapter typography from leaving the viewport.
   ========================================================== */

:root {
    --sc-safe-x: clamp(22px, 4.5vw, 84px);
    --sc-safe-top: clamp(72px, 8vh, 110px);
    --sc-safe-bottom: clamp(34px, 6vh, 80px);
}

/* Global protection for chapters 04-08 */
.chapter-scene {
    box-sizing: border-box;
}

.chapter-scene *,
.chapter-scene *::before,
.chapter-scene *::after {
    box-sizing: border-box;
}

.chapter-title,
.chapter-statement,
.chapter-copy,
.chapter-index,
.chapter-actions,
.rhythm-cycle,
.gender-final,
.polarity-left,
.polarity-right {
    max-width: calc(100vw - (2 * var(--sc-safe-x)));
}

.chapter-title,
.chapter-statement,
.chapter-copy {
    overflow-wrap: normal;
    word-break: normal;
}

.chapter-actions {
    flex-wrap: wrap;
}

/* ----------------------------------------------------------
   04 - VIBRATION
   ---------------------------------------------------------- */

.vibration-content {
    left: var(--sc-safe-x);
    width: min(44vw, 680px);
}

.vibration-actions {
    left: var(--sc-safe-x);
    bottom: var(--sc-safe-bottom);
}

.chapter-number-left {
    left: max(18px, calc(var(--sc-safe-x) * .55));
}

/* ----------------------------------------------------------
   05 - POLARITY
   Symmetric image: title and statement stay centered.
   ---------------------------------------------------------- */

.polarity-header {
    left: 50%;
    width: min(82vw, 1180px);
    transform: translateX(-50%);
    padding-inline: var(--sc-safe-x);
}

.polarity-header .chapter-title {
    width: 100%;
    max-width: 100%;
    font-size: clamp(44px, 5.8vw, 92px);
    letter-spacing: clamp(.04em, .55vw, .085em);
    white-space: nowrap;
}

.polarity-left {
    left: var(--sc-safe-x);
}

.polarity-right {
    right: var(--sc-safe-x);
}

.polarity-thought {
    left: 50%;
    width: min(640px, calc(100vw - (2 * var(--sc-safe-x))));
    max-width: none;
    transform: translateX(-50%);
}

.polarity-actions {
    right: var(--sc-safe-x);
    bottom: var(--sc-safe-bottom);
}

.polarity-number {
    left: max(18px, calc(var(--sc-safe-x) * .55));
}

/* ----------------------------------------------------------
   06 - RHYTHM
   ---------------------------------------------------------- */

.rhythm-content {
    left: var(--sc-safe-x);
    width: min(40vw, 620px);
}

.rhythm-actions {
    left: var(--sc-safe-x);
    bottom: var(--sc-safe-bottom);
}

.rhythm-cycle {
    right: var(--sc-safe-x);
}

.rhythm-number {
    right: max(18px, calc(var(--sc-safe-x) * .55));
}

/* ----------------------------------------------------------
   07 - CAUSE & EFFECT
   ---------------------------------------------------------- */

.cause-content {
    left: var(--sc-safe-x);
    width: min(44vw, 700px);
}

.cause-title {
    font-size: clamp(50px, 6.2vw, 100px);
    letter-spacing: clamp(.035em, .45vw, .075em);
}

.cause-actions {
    left: var(--sc-safe-x);
    bottom: var(--sc-safe-bottom);
}

.cause-number {
    left: max(18px, calc(var(--sc-safe-x) * .55));
}

/* ----------------------------------------------------------
   08 - GENDER & CARE
   Symmetric final image: title stays centered.
   ---------------------------------------------------------- */

.gender-header {
    left: 50%;
    width: min(88vw, 1280px);
    transform: translateX(-50%);
    padding-inline: var(--sc-safe-x);
}

.gender-header .chapter-title {
    width: 100%;
    max-width: 100%;
    font-size: clamp(40px, 5.1vw, 82px);
    letter-spacing: clamp(.025em, .42vw, .07em);
    white-space: nowrap;
}

.gender-left {
    left: var(--sc-safe-x);
    width: min(25vw, 390px);
}

.gender-right {
    right: var(--sc-safe-x);
    width: min(25vw, 390px);
}

.gender-final {
    left: 50%;
    width: min(760px, calc(100vw - (2 * var(--sc-safe-x))));
    transform: translateX(-50%);
}

.gender-actions {
    left: 50%;
    bottom: var(--sc-safe-bottom);
    width: max-content;
    max-width: calc(100vw - (2 * var(--sc-safe-x)));
    transform: translateX(-50%);
}

.gender-number {
    left: max(18px, calc(var(--sc-safe-x) * .55));
}

/* ----------------------------------------------------------
   Medium screens / small laptops
   ---------------------------------------------------------- */

@media (max-width: 1180px) {

    :root {
        --sc-safe-x: clamp(20px, 3.5vw, 48px);
    }

    .chapter-title {
        font-size: clamp(46px, 7vw, 82px);
    }

    .vibration-content,
    .rhythm-content,
    .cause-content {
        width: min(48vw, 620px);
    }

    .polarity-header .chapter-title {
        font-size: clamp(42px, 6.4vw, 76px);
    }

    .gender-header .chapter-title {
        font-size: clamp(38px, 5.7vw, 68px);
    }

    .polarity-left,
    .polarity-right {
        font-size: 9px;
        letter-spacing: .28em;
    }

    .gender-left,
    .gender-right {
        width: 27vw;
    }
}

/* ----------------------------------------------------------
   Narrow screens / phones
   ---------------------------------------------------------- */

@media (max-width: 800px) {

    :root {
        --sc-safe-x: 22px;
        --sc-safe-top: 72px;
        --sc-safe-bottom: 28px;
    }

    .chapter-title,
    .polarity-header .chapter-title,
    .gender-header .chapter-title {
        white-space: normal;
    }

    .vibration-content,
    .rhythm-content,
    .cause-content {
        left: var(--sc-safe-x);
        width: calc(100vw - (2 * var(--sc-safe-x)));
    }

    .polarity-header,
    .gender-header {
        width: 100%;
        padding-inline: var(--sc-safe-x);
    }

    .polarity-header .chapter-title,
    .gender-header .chapter-title {
        font-size: clamp(38px, 11vw, 62px);
        line-height: 1;
    }

    .polarity-thought {
        width: calc(100vw - (2 * var(--sc-safe-x)));
    }

    .chapter-actions,
    .vibration-actions,
    .rhythm-actions,
    .cause-actions,
    .polarity-actions {
        left: var(--sc-safe-x);
        right: auto;
        width: calc(100vw - (2 * var(--sc-safe-x)));
        max-width: none;
        justify-content: flex-start;
    }

    .gender-actions {
        left: 50%;
        right: auto;
        width: calc(100vw - (2 * var(--sc-safe-x)));
        max-width: none;
        justify-content: center;
        transform: translateX(-50%);
    }

    .chapter-source-button {
        max-width: 70vw;
    }

    .gender-final {
        width: calc(100vw - (2 * var(--sc-safe-x)));
    }
}


/* ==========================================================
   SECESSIONCORE - POLARITY GENDER CENTER FIX V2
   Keep the two symmetric chapter titles fully on screen.
   ========================================================== */

/* 05 - POLARITY */
.polarity-header {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 clamp(28px, 6vw, 110px) !important;
    transform: none !important;
    text-align: center !important;
}

.polarity-header .chapter-index,
.polarity-header .chapter-title {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

.polarity-header .chapter-title {
    font-size: clamp(42px, 5.4vw, 86px) !important;
    letter-spacing: clamp(.025em, .38vw, .065em) !important;
    white-space: nowrap !important;
}

/* 08 - GENDER & CARE */
.gender-header {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 clamp(28px, 6vw, 110px) !important;
    transform: none !important;
    text-align: center !important;
}

.gender-header .chapter-index,
.gender-header .chapter-title {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

.gender-header .chapter-title {
    font-size: clamp(38px, 4.8vw, 76px) !important;
    letter-spacing: clamp(.015em, .30vw, .055em) !important;
    white-space: nowrap !important;
}

/* Additional laptop protection */
@media (max-width: 1100px) {
    .polarity-header .chapter-title {
        font-size: clamp(38px, 5.2vw, 66px) !important;
    }

    .gender-header .chapter-title {
        font-size: clamp(34px, 4.6vw, 58px) !important;
    }
}

/* Phones: wrapping is safer than clipping */
@media (max-width: 700px) {
    .polarity-header,
    .gender-header {
        padding-inline: 22px !important;
    }

    .polarity-header .chapter-title,
    .gender-header .chapter-title {
        white-space: normal !important;
        line-height: 1.02 !important;
    }
}


/* ==========================================================
   SECESSIONCORE - POLARITY GENDER COMPOSITION V3
   05 title right of scale; 08 title right of Umay.
   ========================================================== */

/* 05 - POLARITY: keep the scale completely free */
.polarity-header {
    top: 12% !important;
    left: auto !important;
    right: clamp(28px, 5vw, 86px) !important;
    width: min(36vw, 520px) !important;
    max-width: calc(100vw - 56px) !important;
    padding: 0 !important;
    transform: none !important;
    text-align: right !important;
}

.polarity-header .chapter-index,
.polarity-header .chapter-title {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: right !important;
}

.polarity-header .chapter-title {
    font-size: clamp(42px, 5vw, 82px) !important;
    letter-spacing: .055em !important;
    white-space: nowrap !important;
}

/* 08 - GENDER & CARE: Umay remains visually untouched */
.gender-header {
    top: 13% !important;
    left: auto !important;
    right: clamp(28px, 5vw, 86px) !important;
    width: min(34vw, 470px) !important;
    max-width: calc(100vw - 56px) !important;
    padding: 0 !important;
    transform: none !important;
    text-align: right !important;
}

.gender-header .chapter-index,
.gender-header .chapter-title {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    text-align: right !important;
}

.gender-header .chapter-title {
    font-size: clamp(44px, 5vw, 78px) !important;
    line-height: .92 !important;
    letter-spacing: .045em !important;
    white-space: normal !important;
}

.gender-header .chapter-title span {
    display: block !important;
    margin-top: .12em !important;
    color: #e1b65f;
    font-size: .72em !important;
    font-weight: 300 !important;
    letter-spacing: .11em !important;
}

/* 08 - sources/action block bottom right */
.gender-actions {
    left: auto !important;
    right: clamp(28px, 5vw, 86px) !important;
    bottom: clamp(28px, 5vh, 64px) !important;
    width: auto !important;
    max-width: min(44vw, 620px) !important;
    transform: none !important;
    justify-content: flex-end !important;
    align-items: flex-end !important;
    gap: 34px !important;
}

.gender-actions .chapter-source-button {
    text-align: right !important;
}

/* Small laptop safety */
@media (max-width: 1100px) {
    .polarity-header {
        width: min(39vw, 440px) !important;
    }

    .gender-header {
        width: min(38vw, 410px) !important;
    }

    .polarity-header .chapter-title {
        font-size: clamp(38px, 4.8vw, 64px) !important;
    }

    .gender-header .chapter-title {
        font-size: clamp(38px, 4.7vw, 62px) !important;
    }
}

/* Phones: keep readable and safe */
@media (max-width: 700px) {
    .polarity-header,
    .gender-header {
        right: 22px !important;
        width: calc(100vw - 44px) !important;
        max-width: none !important;
    }

    .polarity-header .chapter-title,
    .gender-header .chapter-title {
        font-size: clamp(36px, 10vw, 54px) !important;
    }

    .gender-actions {
        right: 22px !important;
        left: 22px !important;
        width: auto !important;
        max-width: none !important;
        justify-content: flex-end !important;
    }
}


/* ==========================================================
   SECESSIONCORE - 14 INCH LAPTOP TYPOGRAPHY V1
   Reference layout: normal laptop viewport.
   Only chapter headlines + descriptive paragraph rhythm.
   ========================================================== */

/* Large chapter headlines: one restrained visual scale. */
#roots .roots-title,
#mentalism .principle-title,
#mentalism h2,
#correspondence .correspondence-title,
#vibration .chapter-title,
#polarity .chapter-title,
#rhythm .chapter-title,
#cause-effect .chapter-title,
#gender-care .chapter-title {
    font-size: clamp(30px, 3.15vw, 48px) !important;
    line-height: 1.04 !important;
    font-weight: 300 !important;
    letter-spacing: .045em !important;
}

/* Roots is naturally two lines. */
#roots .roots-title {
    line-height: 1.08 !important;
}

/* Cause & Effect remains a deliberate two-line title. */
#cause-effect .chapter-title span {
    font-size: 1em !important;
    letter-spacing: .045em !important;
}

/* Gender / & Care stays two lines on the right. */
#gender-care .chapter-title span {
    display: block !important;
    margin-top: .08em !important;
    font-size: 1em !important;
    line-height: 1 !important;
    letter-spacing: .045em !important;
}

/* Descriptive prose: compact vertical thought blocks. */
#mentalism .principle-copy,
#mentalism .chapter-copy,
#vibration .chapter-copy,
#cause-effect .chapter-copy {
    max-width: 390px !important;
    line-height: 1.62 !important;
}

/* Normal laptop widths */
@media (max-width: 1366px) {
    #roots .roots-title,
    #mentalism .principle-title,
    #mentalism h2,
    #correspondence .correspondence-title,
    #vibration .chapter-title,
    #polarity .chapter-title,
    #rhythm .chapter-title,
    #cause-effect .chapter-title,
    #gender-care .chapter-title {
        font-size: clamp(28px, 3.05vw, 42px) !important;
    }
}

/* Narrow laptop / tablet */
@media (max-width: 1024px) {
    #roots .roots-title,
    #mentalism .principle-title,
    #mentalism h2,
    #correspondence .correspondence-title,
    #vibration .chapter-title,
    #polarity .chapter-title,
    #rhythm .chapter-title,
    #cause-effect .chapter-title,
    #gender-care .chapter-title {
        font-size: clamp(27px, 3.7vw, 38px) !important;
        letter-spacing: .035em !important;
    }
}

/* Phone protection */
@media (max-width: 700px) {
    #roots .roots-title,
    #mentalism .principle-title,
    #mentalism h2,
    #correspondence .correspondence-title,
    #vibration .chapter-title,
    #polarity .chapter-title,
    #rhythm .chapter-title,
    #cause-effect .chapter-title,
    #gender-care .chapter-title {
        font-size: clamp(26px, 8vw, 36px) !important;
    }
}


/* ==========================================================
   SECESSIONCORE - UNIFIED CHAPTER NUMBERS V1
   Reference: existing chapter 02 number.
   ========================================================== */

:root {
    --chapter-number-gold: rgba(190, 139, 52, .48);
    --chapter-number-size: clamp(58px, 6.2vw, 86px);
}

/* New 01 plus existing 02-08 number elements */
.chapter-number-ref,
#mentalism .principle-number,
#mentalism .mentalism-number,
#correspondence .correspondence-number,
#vibration .chapter-number,
#polarity .chapter-number,
#rhythm .chapter-number,
#cause-effect .chapter-number,
#gender-care .chapter-number {
    color: var(--chapter-number-gold) !important;
    font-size: var(--chapter-number-size) !important;
    line-height: .86 !important;
    font-weight: 200 !important;
    letter-spacing: -.045em !important;
    opacity: 1 !important;
    text-shadow: none !important;
    user-select: none !important;
    pointer-events: none !important;
}

/* 01 follows the same visual placement logic as 02. */
#roots .chapter-number-01,
#roots .chapter-number-1 {
    position: absolute !important;
    z-index: 3 !important;
    left: clamp(22px, 4.5vw, 72px) !important;
    bottom: clamp(58px, 9vh, 105px) !important;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #roots .chapter-number-1 {
    right: clamp(22px, 4.5vw, 72px) !important;
    bottom: 8% !important;
    left: auto !important;
}

/* Keep existing individual placements, only normalize appearance/size. */
#correspondence .correspondence-number,
#vibration .chapter-number,
#polarity .chapter-number,
#rhythm .chapter-number,
#cause-effect .chapter-number,
#gender-care .chapter-number {
    font-size: var(--chapter-number-size) !important;
}

/*
   01 and 04-08 echo the softer depth of 02 and 03 while remaining
   clearly visible on the darker chapter artwork.
*/
html:is([lang="de"], [lang="en"], [lang="tr"]) #roots .chapter-number-1,
html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .chapter-number,
html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .chapter-number,
html:is([lang="de"], [lang="en"], [lang="tr"]) #rhythm .chapter-number,
html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .chapter-number,
html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .chapter-number {
    z-index: 3 !important;
    color: rgba(190, 139, 52, .40) !important;
    opacity: 1 !important;
    mix-blend-mode: normal;
    filter: none;
    text-shadow: 0 0 18px rgba(190, 139, 52, .10) !important;
}

/* Match the inward image depth of chapter numbers 02 and 03. */
html:is([lang="de"], [lang="en"], [lang="tr"]) #roots .chapter-number-1,
html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .chapter-number,
html:is([lang="de"], [lang="en"], [lang="tr"]) #rhythm .chapter-number,
html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .chapter-number {
    right: 6vw !important;
    left: auto !important;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .chapter-number,
html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .chapter-number {
    right: auto !important;
    left: 6vw !important;
}

/* Laptop reference */
@media (max-width: 1366px) {
    :root {
        --chapter-number-size: clamp(54px, 6vw, 76px);
    }
}

/* Narrow laptop/tablet */
@media (max-width: 1024px) {
    :root {
        --chapter-number-size: clamp(50px, 7vw, 68px);
    }

    #roots .chapter-number-01,
    #roots .chapter-number-1 {
        left: 24px !important;
        bottom: 58px !important;
    }
}

/* Phone protection */
@media (max-width: 700px) {
    :root {
        --chapter-number-size: clamp(46px, 15vw, 64px);
    }
}


/* ==========================================================
   SECESSIONCORE - ROOTS CLEAR TREE V1
   Keep the World Tree visually free.
   ========================================================== */

#roots .roots-content {
    position: absolute !important;
    top: 12% !important;
    left: clamp(24px, 5vw, 80px) !important;
    width: min(34vw, 470px) !important;
    max-width: calc(100vw - 48px) !important;
    text-align: left !important;
    transform: none !important;
    z-index: 3 !important;
}

#roots .story-kicker,
#roots .roots-title,
#roots .roots-content p {
    text-align: left !important;
}

#roots .roots-title {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 430px !important;
}

#roots .roots-content .roots-thought,
#roots .roots-thought {
    margin-top: 24px !important;
    max-width: 390px !important;
}

#roots .roots-destination,
#roots .story-destination {
    left: auto !important;
    right: clamp(26px, 4vw, 70px) !important;
    bottom: clamp(28px, 5vh, 60px) !important;
    text-align: right !important;
}

/* Tree stays open in the center */
#roots .roots-image-vignette {
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.72) 0%,
            rgba(0,0,0,.40) 24%,
            rgba(0,0,0,.04) 46%,
            rgba(0,0,0,.02) 68%,
            rgba(0,0,0,.20) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.22),
            transparent 42%,
            rgba(0,0,0,.42)
        ) !important;
}

/* Laptop reference */
@media (max-width: 1366px) {
    #roots .roots-content {
        top: 11% !important;
        left: 28px !important;
        width: min(36vw, 410px) !important;
    }

    #roots .roots-title {
        max-width: 360px !important;
    }
}

/* Narrow laptop/tablet */
@media (max-width: 1024px) {
    #roots .roots-content {
        width: min(40vw, 360px) !important;
    }
}

/* Phone fallback */
@media (max-width: 700px) {
    #roots .roots-content {
        top: 10% !important;
        left: 22px !important;
        right: 22px !important;
        width: auto !important;
        max-width: none !important;
    }

    #roots .roots-title {
        max-width: 82vw !important;
    }

    #roots .roots-destination,
    #roots .story-destination {
        right: 22px !important;
        bottom: 24px !important;
    }
}


/* ==========================================================
   SECESSIONCORE - ROOTS SPLIT COMPOSITION V2
   Title left | World Tree free | text/thought right
   ========================================================== */

/* The existing content container may span the scene,
   but individual elements are placed independently. */
#roots .roots-content {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    transform: none !important;
    pointer-events: none !important;
}

/* LEFT: chapter marker + headline */
#roots .story-kicker {
    position: absolute !important;
    top: 17% !important;
    left: clamp(24px, 4.5vw, 72px) !important;
    width: min(31vw, 390px) !important;
    margin: 0 !important;
    text-align: left !important;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .idea-scene .story-kicker,
html:is([lang="de"], [lang="en"], [lang="tr"]) #roots .story-kicker {
    font-size: clamp(20px, 1.65vw, 26px) !important;
    line-height: 1.2 !important;
}

#roots .roots-title {
    position: absolute !important;
    top: 23% !important;
    left: clamp(24px, 4.5vw, 72px) !important;
    width: min(31vw, 390px) !important;
    max-width: 390px !important;
    margin: 0 !important;
    text-align: left !important;
}

/* RIGHT: descriptive paragraph */
#roots .roots-content > p:not(.story-kicker):not(.roots-thought) {
    position: absolute !important;
    top: 28% !important;
    right: clamp(24px, 4.5vw, 72px) !important;
    left: auto !important;
    width: min(30vw, 400px) !important;
    max-width: 400px !important;
    margin: 0 !important;
    text-align: left !important;
    line-height: 1.65 !important;
}

/* RIGHT: central thought, separated from paragraph */
#roots .roots-thought {
    position: absolute !important;
    top: 51% !important;
    right: clamp(24px, 4.5vw, 72px) !important;
    left: auto !important;
    width: min(30vw, 400px) !important;
    max-width: 400px !important;
    margin: 0 !important;
    text-align: left !important;
    line-height: 1.7 !important;
}

/* Keep the tree itself completely free. */
#roots .roots-image-vignette {
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.58) 0%,
            rgba(0,0,0,.28) 26%,
            rgba(0,0,0,.00) 40%,
            rgba(0,0,0,.00) 61%,
            rgba(0,0,0,.26) 76%,
            rgba(0,0,0,.55) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.16),
            transparent 46%,
            rgba(0,0,0,.34)
        ) !important;
}

/* Destination stays low and away from the tree. */
#roots .roots-destination,
#roots .story-destination {
    position: absolute !important;
    right: clamp(24px, 4.5vw, 72px) !important;
    bottom: clamp(22px, 4vh, 48px) !important;
    left: auto !important;
    text-align: right !important;
    pointer-events: auto !important;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #roots .roots-destination {
    right: auto !important;
    left: 50% !important;
    text-align: center !important;
    transform: translateX(-50%) !important;
}

#roots .roots-source-button {
    position: absolute;
    z-index: 5;
    bottom: clamp(22px, 4vh, 48px);
    left: clamp(24px, 4.5vw, 72px);
}

#roots.is-source-open {
    z-index: 1000;
    overflow: visible;
}

/* 14-inch / normal laptop safety */
@media (max-width: 1366px) {
    #roots .story-kicker,
    #roots .roots-title {
        left: 28px !important;
        width: 29vw !important;
    }

    #roots .roots-content > p:not(.story-kicker):not(.roots-thought),
    #roots .roots-thought {
        right: 28px !important;
        width: 29vw !important;
    }
}

/* Narrower screens: preserve the split while possible. */
@media (max-width: 900px) {
    #roots .story-kicker,
    #roots .roots-title {
        left: 22px !important;
        width: 32vw !important;
    }

    #roots .roots-content > p:not(.story-kicker):not(.roots-thought),
    #roots .roots-thought {
        right: 22px !important;
        width: 32vw !important;
    }
}

/* Phone fallback: readability wins over the split composition. */
@media (max-width: 650px) {
    #roots .roots-content {
        inset: 0 !important;
    }

    #roots .story-kicker {
        top: 10% !important;
        left: 22px !important;
        width: calc(100vw - 44px) !important;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) .idea-scene .story-kicker,
    html:is([lang="de"], [lang="en"], [lang="tr"]) #roots .story-kicker {
        font-size: clamp(17px, 4.8vw, 22px) !important;
    }

    #roots .roots-source-button {
        bottom: 24px;
        left: 22px;
    }

    #roots .roots-title {
        top: 15% !important;
        left: 22px !important;
        width: calc(100vw - 44px) !important;
    }

    #roots .roots-content > p:not(.story-kicker):not(.roots-thought) {
        top: auto !important;
        bottom: 23% !important;
        left: 22px !important;
        right: 22px !important;
        width: auto !important;
    }

    #roots .roots-thought {
        top: auto !important;
        bottom: 10% !important;
        left: 22px !important;
        right: 22px !important;
        width: auto !important;
    }
}


/* ==========================================================
   WWW FOUNDATION — ACCESSIBILITY + BROWSER FALLBACKS
   ========================================================== */

.skip-link {
    position: fixed;
    z-index: 2000;
    top: 12px;
    left: 12px;
    padding: 12px 16px;
    border: 1px solid rgba(228, 182, 95, .78);
    background: #050505;
    color: #f4f1ea;
    font-size: 13px;
    text-decoration: none;
    transform: translateY(-160%);
    transition: transform .2s ease;
}

.skip-link:focus {
    transform: translateY(0);
}

a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible {
    outline: 2px solid #e4b65f;
    outline-offset: 5px;
}

#main-content:focus {
    outline: none;
}

.status-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 32px;
}

.status-card {
    width: min(680px, 100%);
    text-align: center;
}

.status-card h1 {
    margin: 18px 0;
    color: #f4f1ea;
    font-size: clamp(36px, 7vw, 76px);
    font-weight: 200;
}

.status-card p:not(.legal-kicker) {
    margin-bottom: 34px;
    color: rgba(244, 241, 234, .72);
    line-height: 1.7;
}

@supports (height: 100svh) {
    .hero {
        height: 100svh;
    }

    .story-scene,
    .principle-scene,
    .chapter-scene,
    .status-page {
        min-height: 100svh;
    }

    .source-drawer,
    .chapter-source-drawer {
        height: 100svh;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

@media (forced-colors: active) {
    a,
    button {
        forced-color-adjust: auto;
    }
}


/* ==========================================================
   ALL LANGUAGES — FINAL SCENE TEXT ACCENTS
   ========================================================== */

html:is([lang="de"], [lang="en"], [lang="tr"]) .idea-scene .story-kicker {
    margin-bottom: clamp(22px, 3.5vh, 38px);
    color: rgba(244, 241, 234, .62);
    font-size: clamp(11px, .95vw, 15px) !important;
    line-height: 1.4 !important;
    letter-spacing: .22em;
    padding-left: .22em;
    text-transform: none;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) .idea-subtitle {
    width: min(900px, 92%);
    margin: clamp(62px, 9vh, 96px) auto 0;
    color: rgba(222, 178, 94, .96);
    font-size: clamp(17px, 1.55vw, 23px);
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: .10em;
    text-shadow: 0 0 22px rgba(201, 154, 76, .12);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #mentalism .mentalism-manifesto {
    position: absolute;
    z-index: 5;
    top: 27%;
    left: var(--sc-safe-x);
    width: min(32vw, 430px);
    color: rgba(247, 243, 234, .94);
    font-size: clamp(15px, 1.35vw, 21px);
    font-weight: 300;
    line-height: 1.55;
    letter-spacing: .045em;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .92);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #mentalism .mentalism-manifesto span {
    display: block;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #mentalism .mentalism-manifesto span + span {
    margin-top: 1.9em;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #correspondence .correspondence-mirror {
    margin: 0 0 14px;
    color: rgba(247, 243, 234, .90);
    font-size: clamp(12px, 1vw, 16px);
    font-weight: 300;
    line-height: 1.55;
    letter-spacing: .20em;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .92);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .vibration-kut {
    position: absolute;
    z-index: 5;
    top: 50%;
    right: var(--sc-safe-x);
    width: min(33vw, 470px);
    margin: 0;
    color: rgba(247, 243, 234, .92);
    font-size: clamp(15px, 1.35vw, 21px);
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: .05em;
    text-align: right;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .92);
    transform: translateY(-50%);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-alchemy {
    position: absolute;
    z-index: 5;
    top: 36%;
    left: var(--sc-safe-x);
    width: min(31vw, 430px);
    color: rgba(247, 243, 234, .92);
    font-size: clamp(15px, 1.3vw, 20px);
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: .045em;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .92);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-alchemy p {
    margin: 0;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-alchemy p + p {
    margin-top: 1.8em;
    color: rgba(222, 178, 94, .94);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #rhythm .rhythm-tides {
    position: absolute;
    z-index: 5;
    top: 31%;
    right: var(--sc-safe-x);
    width: min(31vw, 430px);
    margin: 0;
    color: rgba(247, 243, 234, .92);
    font-size: clamp(15px, 1.35vw, 21px);
    font-weight: 300;
    line-height: 1.9;
    letter-spacing: .055em;
    text-align: right;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .92);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .cause-drum {
    margin: clamp(28px, 4vh, 46px) 0 0;
    color: rgba(222, 178, 94, .95);
    font-size: clamp(14px, 1.15vw, 18px);
    font-weight: 300;
    line-height: 1.65;
    letter-spacing: .06em;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .92);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-final {
    gap: 12px;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-final > strong {
    line-height: 1.65;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-principle {
    margin: clamp(20px, 3vh, 34px) 0 0 clamp(14px, 2vw, 34px);
    color: rgba(247, 243, 234, .90);
    font-size: clamp(11px, .95vw, 15px);
    font-weight: 300;
    line-height: 1.8;
    letter-spacing: .11em;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .92);
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-right {
    top: 39%;
    right: clamp(10px, 2.2vw, 36px);
    width: min(34vw, 500px);
    text-align: center;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-right .chapter-statement {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-care-question {
    display: block;
}

html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-care-death {
    display: block;
    margin-top: 18px;
    color: rgba(247, 243, 234, .98);
    font-size: clamp(19px, 2vw, 29px);
    font-weight: 300;
    line-height: 1.2;
    letter-spacing: .16em;
    text-align: center;
}

@media (max-width: 800px) {
    html:is([lang="de"], [lang="en"], [lang="tr"]) .idea-subtitle {
        margin-top: clamp(48px, 7vh, 72px);
        font-size: clamp(16px, 4.5vw, 20px);
        letter-spacing: .06em;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #mentalism .mentalism-manifesto {
        top: 18%;
        left: 22px;
        width: calc(100vw - 44px);
        font-size: clamp(14px, 4vw, 18px);
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #mentalism .mentalism-manifesto span + span {
        margin-top: 1.25em;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #correspondence .correspondence-mirror {
        font-size: clamp(11px, 3.2vw, 14px);
        letter-spacing: .13em;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .vibration-kut,
    html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-alchemy,
    html:is([lang="de"], [lang="en"], [lang="tr"]) #rhythm .rhythm-tides {
        left: 22px;
        right: 22px;
        width: auto;
        font-size: clamp(14px, 4vw, 18px);
        text-align: left;
        transform: none;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #vibration .vibration-kut {
        top: 58%;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #polarity .polarity-alchemy {
        top: 40%;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #rhythm .rhythm-tides {
        top: 48%;
        line-height: 1.7;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #cause-effect .cause-drum {
        margin-top: 22px;
        font-size: clamp(13px, 3.6vw, 16px);
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-final {
        top: 23%;
        bottom: auto;
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-principle {
        margin: 18px 0 0 10px;
        font-size: clamp(10px, 3vw, 13px);
    }

    html:is([lang="de"], [lang="en"], [lang="tr"]) #gender-care .gender-right {
        display: block;
        top: 58%;
        right: 12px;
        left: 32px;
        width: auto;
    }
}
