/* tantrik-yoga.de, Komponenten-CSS. Einzige Quelle für das Custom CSS, siehe Kanon Abschnitt 8.
   Herkunft: am 26.09.2026 aus Customizer und globalen Stilen zusammengeführt, am selben Tag ins Child-Theme verlegt. */

/* --- vormals nur im Customizer. Die alten Regeln für .ty-eyebrow und das Kartenlayout .ty-fach/.ty-fach-card/.ty-fach-nl wurden am 26.09.2026 entfernt, sie werden in keinem Inhalt verwendet. --- */
/* Fix: WP is-layout-constrained override für Final Design */
.entry-content > .ty-section,
.entry-content > .ty-brief {
  max-width: none !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.is-layout-constrained > .ty-section,
.is-layout-constrained > .ty-brief {
  max-width: none !important;
}

/* Override is-layout-constrained für Philosophie-Sektionen */
.entry-content > .ty-philo-row,
.entry-content > .ty-philo-hero,
.entry-content > .ty-philo-glossar {
  max-width: none !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Override is-layout-constrained für Kurse */
.entry-content > .ty-kurse-hero,
.entry-content > .ty-kurs-block,
.entry-content > .ty-kurs-hinweis {
  max-width: none !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Override is-layout-constrained für neue Seiten */
.entry-content > .ty-section,
.entry-content > .ty-hero,
.entry-content > .ty-brief,
.entry-content > .ty-kurs-block,
.entry-content > .ty-kurs-hinweis {
  max-width: none !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}



/* --- vormals globale Stile --- */
:root {
  /* Werte stehen in theme.json (settings.color.palette, settings.typography.fontFamilies). Hier nur die Kurznamen. */
  --paper: var(--wp--preset--color--paper);
  --paper-2: var(--wp--preset--color--paper-2);
  --paper-3: var(--wp--preset--color--paper-3);
  --ink: var(--wp--preset--color--ink);
  --text-2: var(--wp--preset--color--text-2);
  --muted: var(--wp--preset--color--muted);
  --gold: var(--wp--preset--color--gold);
  --gold-dark: var(--wp--preset--color--gold-dark);
  --rule: var(--wp--preset--color--rule);
  --line-gold: var(--wp--preset--color--line-gold);
  --line-gold-faint: var(--wp--preset--color--line-gold-faint);
  --mono: var(--wp--preset--font-family--jetbrains-mono);
}

/* === Final Design Header === */
.ty-nav {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 32px 72px 24px;
  background: var(--paper);
}
.ty-brand {
  font-family: "Cormorant Garamond", serif;
  font-style: italic;
  font-size: 22px;
  color: var(--ink);
  text-decoration: none;
}
.ty-brand small {
  margin-left: 14px;
  font-family: "JetBrains Mono", monospace;
  font-size: 10.5px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold);
  font-style: normal;
  font-weight: 500;
}
.ty-nav-links {
  display: flex;
  gap: 28px;
  font-family: "JetBrains Mono", monospace;
  font-size: 10.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  font-weight: 500;
}
.ty-nav-links a {
  color: var(--muted);
  text-decoration: none;
}
.ty-nav-links a:hover {
  color: var(--ink);
}

/* Home-Seitentitel ausblenden */
.home .wp-block-post-title {
  display: none;
}

/* Eyebrow-Label (ty-eyebrow) — geprüft ungenutzt, auskommentiert zum Test.
   NICHT zu verwechseln mit .ty-artikel-eyebrow weiter unten, das ist aktiv
   (z.B. genutzt in "Bhāvana und Vikalpa", "Interozeption und Gewahrsein"). */
/*
.ty-eyebrow {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 2.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ty-eyebrow::after {
  content: '';
  display: block;
  height: 1px;
  width: 2rem;
  background: var(--gold-dark);
}
*/

/* ── Responsive Tabellen / Kacheln ── */

/* === ty-artikel: Artikel-Layout === AKTIV — genutzt für Begriffsartikel
   wie "Bhāvana und Vikalpa", "Interozeption und Gewahrsein" === */
.ty-artikel {
  max-width: 680px;
  margin: 0 auto;
  padding: 5rem 2rem 6rem;
}
.ty-artikel p.ty-artikel-eyebrow {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ty-artikel p.ty-artikel-eyebrow::after {
  content: '';
  display: block;
  height: 1px;
  width: 2rem;
  background: var(--gold-dark);
}
.ty-artikel-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 300;
  color: var(--ink);
  line-height: 1.2;
  margin-bottom: 2.5rem;
  max-width: 640px;
}
.ty-artikel p {
  font-family: 'Noto Sans', sans-serif;
  font-size: 19px;
  color: var(--text-2);
  line-height: 1.9;
  font-weight: 300;
  margin-bottom: 1.6rem;
}
.ty-artikel p:last-of-type {
  margin-bottom: 0;
}
.ty-artikel strong {
  color: var(--ink);
  font-weight: 400;
}
.ty-artikel em {
  font-style: italic;
  color: var(--ink);
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
}
.ty-artikel h2 {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(22px, 2.8vw, 32px);
  font-weight: 300;
  color: var(--ink);
  line-height: 1.3;
  margin: 3.5rem 0 1.2rem;
}
.ty-artikel-rule {
  height: 1px;
  background: var(--line-gold);
  margin: 3rem 0;
}
.ty-artikel-quote {
  margin: 2.5rem 0;
  padding-left: 1.6rem;
  border-left: 2px solid var(--gold-dark);
}
.ty-artikel-quote p {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 22px !important;
  font-style: italic;
  color: var(--ink) !important;
  line-height: 1.6;
  margin: 0 !important;
}
.ty-artikel-links {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 3rem;
  padding-top: 2.5rem;
  border-top: 1px solid var(--line-gold);
}
.ty-artikel-link {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
  font-weight: 400;
  transition: color 0.3s;
}
.ty-artikel-link::after { content: ' →'; }
.ty-artikel-link:hover { color: var(--ink); }

/* =============================================
   Erweiterung von .ty-artikel: Subtitle, Box, Quote-Source
   Konsolidiert aus drei inline style-Tags, die zuvor in
   einzelnen Posts dupliziert waren: .ty-abhi (Linie des
   Shaiva-Tantra, Abhinavagupta) und .ty-hintergr (Hintergründe
   & Philosophie). Werke-Block und Begriffe-Block sind hier zu
   einer generischen Box zusammengeführt.
   ============================================= */
.ty-artikel-subtitle {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: 300;
  font-style: italic;
  color: var(--gold-dark);
  margin-bottom: 2.5rem;
}
.ty-artikel-quote-source {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px !important;
  color: var(--gold) !important;
  letter-spacing: 0.08em;
  margin-top: 0.8rem !important;
  font-style: normal !important;
}

/* Generische Box — ersetzt .ty-abhi-werke UND .ty-hintergr-begriffe */
.ty-artikel-box {
  background: var(--paper-3);
  border: 1px solid var(--line-gold);
  padding: 2.2rem 2.2rem 2.4rem;
  margin: 2.5rem 0;
}
.ty-artikel-box-label {
  font-family: 'Noto Sans', sans-serif;
  font-size: 12px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 1.4rem;
}
.ty-artikel-box-item {
  margin-bottom: 1.3rem;
  padding-bottom: 1.3rem;
  border-bottom: 1px solid var(--line-gold-faint);
}
.ty-artikel-box-item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.ty-artikel-box-item-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 20px;
  font-style: italic;
  color: var(--ink);
  margin-bottom: 0.3rem;
}
.ty-artikel-box-item-text {
  font-family: 'Noto Sans', sans-serif;
  font-size: 16px !important;
  color: var(--text-2) !important;
  line-height: 1.75;
  font-weight: 300;
  margin: 0 !important;
}

/* === ty-fach: ALTES Fachartikel-Karten-Layout ===
   Geprüft tot — Suche nach "ty-fach-card" im Backend ohne Treffer.
   Auskommentiert zum Test (Datum einsetzen). Nicht verwechseln mit
   .ty-fach-block, .ty-fach-section etc. weiter unten im File —
   das ist das AKTIVE Layout der aktuellen Fachartikel-Seite. */
/*
.ty-fach {
  max-width: 860px;
  margin: 0 auto;
  padding: 5rem 2rem 6rem;
}
.ty-fach-eyebrow {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ty-fach-eyebrow::after {
  content: '';
  display: block;
  height: 1px;
  width: 2rem;
  background: var(--gold-dark);
}
.ty-fach-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 300;
  color: var(--ink);
  line-height: 1.2;
  margin-bottom: 2rem;
  max-width: 680px;
}
.ty-fach-intro {
  font-family: 'Noto Sans', sans-serif;
  font-size: 19px;
  color: var(--text-2);
  line-height: 1.9;
  font-weight: 300;
  max-width: 660px;
  margin-bottom: 1.4rem;
}
.ty-fach-rule {
  height: 1px;
  background: var(--line-gold);
  margin: 3.5rem 0 2.5rem;
}
.ty-fach-cat {
  font-family: 'Noto Sans', sans-serif;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 400;
  margin-bottom: 1rem;
}
.ty-fach-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1px;
  background: var(--line-gold);
  border: 1px solid var(--line-gold);
  margin-bottom: 3rem;
}
.ty-fach-card {
  background: #e8e0d0;
  padding: 1.8rem 1.8rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  text-decoration: none;
  transition: background 0.3s;
}
.ty-fach-card:hover { background: #ddd5c8; }
.ty-fach-card-title {
  display: block;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 300;
  color: var(--ink);
  line-height: 1.3;
}
.ty-fach-card-text {
  display: block;
  font-family: 'Noto Sans', sans-serif;
  font-size: 15px;
  color: var(--text-2);
  line-height: 1.75;
  font-weight: 300;
  flex: 1;
}
.ty-fach-card-link {
  display: block;
  font-family: 'Noto Sans', sans-serif;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 400;
  margin-top: 0.3rem;
}
.ty-fach-card-link::after { content: ' →'; }
.ty-fach-nl {
  background: var(--paper-3);
  border: 1px solid var(--line-gold);
  padding: 2rem 2.2rem;
  max-width: 560px;
  margin-top: 1rem;
}
.ty-fach-nl p {
  font-family: 'Noto Sans', sans-serif;
  font-size: 17px;
  color: var(--text-2);
  line-height: 1.85;
  font-weight: 300;
  margin-bottom: 1rem;
}
.ty-fach-nl-link {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
  font-weight: 400;
}
.ty-fach-nl-link::after { content: ' →'; }
*/
/* === Final Design: Global & Body === */
body { background: var(--paper); color: var(--ink); font-size: 18px; line-height: 1.55; }
.caps { font-family: var(--mono); font-size: 10.5px; letter-spacing: .28em; text-transform: uppercase; font-weight: 500; color: var(--gold); }
.caps-ink { font-family: var(--mono); font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; font-weight: 500; color: var(--ink); }
.caps-muted { font-family: var(--mono); font-size: 10.5px; letter-spacing: .28em; text-transform: uppercase; font-weight: 500; color: var(--muted); }
.ital { font-style: italic; }
.gold { color: var(--gold); }
.btn { display: inline-block; font-family: var(--mono); font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; font-weight: 500; color: var(--paper); background: var(--ink); padding: 16px 28px; border: 0; cursor: pointer; text-decoration: none; }
.btn-ghost { background: transparent; color: var(--ink); border-bottom: 1px solid var(--gold); padding: 3px 0; text-decoration: none; font-family: var(--mono); font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; font-weight: 500; }

/* === Final Design: Layout === */
.ty-container { max-width: 1280px; margin: 0 auto; padding: 0 72px; }
.ty-section { padding: 90px 0; border-top: 1px solid var(--rule); }
.ty-section:first-of-type { border-top: 0; }
.ty-grid-side { display: grid; grid-template-columns: 200px 1fr; gap: 56px; }
.ty-grid-side-wide { display: grid; grid-template-columns: 200px 1fr 1fr; gap: 48px; }

/* === Final Design: Hero === */
.ty-hero { padding: 120px 72px 140px; max-width: 1440px; margin: 0 auto; position: relative; }
.ty-hero .eye { margin-bottom: 72px; }
.ty-hero h1 { font-family: "Cormorant Garamond", serif; font-weight: 300; font-size: 76px; line-height: 1.15; letter-spacing: -.012em; margin: 0; max-width: 1000px; }
.ty-hero h1 span { display: block; }
.ty-hero h1 .it { font-style: italic; }
.ty-hero h1 u { text-decoration-color: var(--gold); text-underline-offset: 7px; text-decoration-thickness: 1px; }
.ty-hero .aside { position: absolute; right: 72px; top: 120px; width: 180px; text-align: right; line-height: 1.9; }
.ty-hero .breath { display: flex; gap: 20px; margin-top: 80px; max-width: 440px; }
.ty-hero .breath .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--gold); margin-top: 10px; flex: none; }
.ty-hero .breath p { font-family: "Instrument Serif", serif; font-style: italic; font-size: 20px; line-height: 1.45; color: var(--muted); margin: 0; }

/* === Final Design: Kurs-Row === */
.ty-kurs-row { display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 32px; }
.ty-kurs-row h3 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 32px; margin: 0 0 14px; letter-spacing: -.005em; }
.ty-kurs-row .line { font-size: 17px; line-height: 1.6; }
.ty-kurs-row .line em { color: var(--muted); font-style: italic; display: block; }

/* === Final Design: Drei Eingänge === */
.ty-three-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 300; font-size: 48px; line-height: 1.1; margin: 0; letter-spacing: -.012em; max-width: 700px; }
.ty-three-head .sub { font-style: italic; color: var(--muted); font-size: 20px; margin-top: 18px; }
.ty-three { display: grid; grid-template-columns: 200px repeat(3,1fr); gap: 48px; margin-top: 80px; }
.ty-three .col .n { font-family: var(--mono); font-size: 10.5px; letter-spacing: .28em; text-transform: uppercase; font-weight: 500; color: var(--gold); margin-bottom: 28px; }
.ty-three .col h3 { font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 400; font-size: 22px; line-height: 1.3; margin: 0 0 18px; color: var(--ink); }
.ty-three .col p { font-size: 17px; line-height: 1.55; margin: 0 0 24px; }
.ty-three .col .link { font-family: var(--mono); font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; font-weight: 500; border-bottom: 1px solid var(--gold); padding-bottom: 3px; color: var(--ink); text-decoration: none; }

/* === Final Design: Was es ist === */
.ty-what h2 { font-family: "Cormorant Garamond", serif; font-weight: 300; font-size: 56px; line-height: 1.1; margin: 0 0 48px; letter-spacing: -.012em; max-width: 900px; }
.ty-what h2 .it { font-style: italic; color: var(--gold); }
.ty-what .body { font-size: 19px; line-height: 1.65; max-width: 640px; }
.ty-what .body p { margin: 0 0 22px; }
.ty-pull { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 26px; line-height: 1.3; border-left: 1px solid var(--gold); padding-left: 22px; margin: 32px 0; max-width: 540px; }

/* === Final Design: Brief === */
.ty-brief { background: var(--paper-2); border-top: 1px solid var(--rule); padding: 90px 0; }
.ty-brief-inner { display: grid; grid-template-columns: 200px 1fr auto; gap: 48px; align-items: end; max-width: 1280px; margin: 0 auto; padding: 0 72px; }
.ty-brief h3 { font-family: "Cormorant Garamond", serif; font-weight: 300; font-size: 38px; line-height: 1.18; margin: 0 0 12px; max-width: 620px; letter-spacing: -.008em; }
.ty-brief p { font-style: italic; color: var(--muted); font-size: 17px; max-width: 520px; margin: 0; line-height: 1.45; }

/* === Final Design: Footer === */
.ty-footer { padding: 40px 72px; display: flex; justify-content: space-between; font-family: var(--mono); font-size: 10.5px; letter-spacing: .28em; text-transform: uppercase; color: var(--muted); border-top: 1px solid var(--rule); }


/* WP is-layout-constrained Override für Final Design
   → konsolidierte Regel siehe weiter unten,
   Abschnitt "Konsolidierter is-layout-constrained Override" */


/* ty-footer */
.ty-footer {
  padding: 40px 64px;
  border-top: 1px solid var(--ink);
  background: var(--paper);
}
.ty-footer-inner {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--muted);
}
.ty-footer-inner a {
  color: var(--muted);
  text-decoration: none;
}
.ty-footer-inner a:hover {
  color: var(--ink);
}
.ty-footer-sep {
  margin: 0 4px;
}


/* === Philosophie-Seite === */
.ty-philo-hero {
  padding: 110px 64px 70px;
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 0;
}
.ty-philo-h1 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-size: 64px;
  line-height: 1.1;
  margin: 0;
  max-width: 860px;
  letter-spacing: -0.012em;
}
.ty-philo-sub {
  font-size: 19px;
  line-height: 1.55;
  color: var(--muted);
  font-style: italic;
  margin: 40px 0 0;
  max-width: 620px;
}
.ty-philo-row {
  padding: 72px 64px;
  display: grid;
  grid-template-columns: 140px 1fr 1fr;
  gap: 40px;
  align-items: start;
}
.ty-philo-sec-title {
  font-family: "Cormorant Garamond", serif;
  font-size: 36px;
  font-weight: 400;
  margin: 0;
  line-height: 1.15;
  letter-spacing: -0.008em;
}
.ty-philo-body {
  font-size: 17px;
  line-height: 1.65;
}
.ty-philo-body p { margin: 0 0 16px; }
.ty-gold-text { font-style: italic; color: var(--gold); }
.ty-philo-glossar {
  padding: 80px 64px;
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 0;
}
.ty-philo-glossar-title {
  font-family: "Cormorant Garamond", serif;
  font-size: 34px;
  font-weight: 400;
  margin: 0 0 40px;
}
.ty-philo-item {
  border-top: 1px solid var(--ink);
  padding: 28px 0;
  display: grid;
  grid-template-columns: 200px 1fr 80px;
  gap: 28px;
  align-items: baseline;
}
.ty-philo-lemma {
  font-family: "Cormorant Garamond", serif;
  font-size: 24px;
  font-style: italic;
  display: block;
  margin-bottom: 4px;
}
.ty-philo-devanagari {
  font-family: "JetBrains Mono", monospace;
  font-size: 10px;
  letter-spacing: 0.18em;
  color: var(--muted);
  text-transform: uppercase;
  display: block;
}
.ty-philo-defn {
  font-size: 15px;
  line-height: 1.6;
}
.ty-philo-pg {
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  color: var(--muted);
  text-align: right;
}
/* Override is-layout-constrained → siehe konsolidierte Regel unten */


/* Seitentitel ausblenden — wird durch ty-hero ersetzt */
.wp-block-post-title { display: none !important; }


/* Template-Wrapper-Padding entfernen — Final Design bringt eigenes Spacing */
.wp-block-group.has-global-padding {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.entry-content {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}


/* === Kurse-Seite === */
.ty-kurse-hero {
  padding: 110px 64px 70px;
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 0;
}
.ty-kurse-h1 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-size: 64px;
  line-height: 1.1;
  margin: 0;
  letter-spacing: -0.012em;
}
.ty-kurs-block {
  padding: 56px 64px;
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 0;
}
.ty-kurs-inner {
  display: grid;
  grid-template-columns: 1.2fr 1fr auto;
  gap: 48px;
  align-items: baseline;
}
.ty-fach-section {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 48px;
  align-items: baseline;
  padding: 72px 0;
  border-top: 1px solid var(--rule);
}
.ty-fach-section:first-child { border-top: none; }
.ty-fach-block {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 32px;
  padding: 32px 0;
  border-top: 1px solid var(--rule);
}
.ty-fach-block-body {
  flex: 1;
}
.ty-fach-block-meta {
  font-family: "JetBrains Mono", monospace;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 6px;
}
.ty-fach-block-title {
  font-family: "Cormorant Garamond", serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--ink);
  margin-bottom: 10px;
}
.ty-fach-block-desc {
  font-size: 16px;
  color: var(--muted);
  line-height: 1.6;
  max-width: 60ch;
}
.ty-fach-block-link {
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  padding-top: 6px;
}
.ty-fach-block-link:hover { text-decoration: underline; }
.ty-fach-hinweis {
  font-family: "Cormorant Garamond", serif;
  font-style: italic;
  font-size: 22px;
  color: var(--muted);
  line-height: 1.45;
  max-width: 58ch;
}
.ty-fach-hinweis a { color: var(--ink); }
.ty-fach-heading {
  font-family: "Cormorant Garamond", serif;
  font-size: 38px;
  font-weight: 400;
  color: var(--ink);
  margin-bottom: 12px;
}
.ty-fach-sub {
  font-size: 16px;
  color: var(--muted);
  margin-bottom: 48px;
  max-width: 55ch;
}
.entry-content > .ty-section .ty-fach-section {
  max-width: none !important;
}
.ty-kurs-title {
  font-family: "Cormorant Garamond", serif;
  font-size: 34px;
  font-weight: 400;
  margin: 0 0 12px;
  letter-spacing: -0.008em;
}
.ty-kurs-desc {
  font-size: 17px;
  line-height: 1.55;
  margin: 0;
}
.ty-kurs-label {
  font-family: "JetBrains Mono", monospace;
  font-size: 10.5px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 5px;
}
.ty-kurs-val {
  font-size: 15px;
  line-height: 1.55;
}
.ty-muted-i {
  color: var(--muted);
  font-style: italic;
}
.ty-arrow-link {
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--ink);
  border-bottom: 1px solid var(--gold);
  padding-bottom: 3px;
  white-space: nowrap;
}
.ty-kurs-hinweis {
  padding: 80px 64px;
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 0;
}
.ty-kurs-hinweis-text {
  font-family: "Cormorant Garamond", serif;
  font-style: italic;
  font-size: 22px;
  color: var(--muted);
  max-width: 580px;
  line-height: 1.45;
  margin: 0;
}
/* Override is-layout-constrained → siehe konsolidierte Regel unten */


/* =============================================
   HAMBURGER-BUTTON (Desktop: versteckt)
   ============================================= */
.ty-nav-toggle { display: none; }

/* =============================================
   RESPONSIVE — Mobile (max 768px)
   ============================================= */

/* =============================================
   RESPONSIVE — Tablet (769px – 1024px)
   ============================================= */

/* === Mobile-Fixes Startseite — Laufender Kurs + Drei Eingänge === */

/* Mobile: .ty-container padding-left entfernen */

/* Mobile: Brief-Kachel reparieren */

/* === Praxis / Über mich — gemeinsame Elemente === */
.ty-praxis-uebung {
  border-top: 1px solid var(--ink);
  padding-top: 32px;
}
.ty-praxis-meta {
  display: flex;
  gap: 24px;
  margin-bottom: 20px;
}
.ty-praxis-meta .caps-muted {
  font-family: "JetBrains Mono", monospace;
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--muted);
}
.ty-praxis-uebung h2 {
  font-family: "Cormorant Garamond", serif;
  font-size: 36px;
  font-weight: 400;
  margin: 0 0 24px;
  letter-spacing: -0.008em;
  line-height: 1.15;
}
.ty-praxis-body {
  font-size: 17px;
  line-height: 1.65;
  max-width: 580px;
}
.ty-praxis-body p { margin: 0 0 16px; }
.ty-praxis-body a { color: var(--ink); }

/* =============================================
   Konsolidierter is-layout-constrained Override
   Ersetzt fünf vormals verstreute Einzelregeln.
   Bewusst EXPLIZIT statt Attribut-Selektor auf "ty-*":
   .ty-artikel soll gerade NICHT volle Breite bekommen
   (max-width: 680px, zentriert, siehe weiter oben).
   Bei neuen Vollbreite-Sektionen hier ergänzen.
   ============================================= */
.entry-content > .ty-section,
.entry-content > .ty-hero,
.entry-content > .ty-brief,
.entry-content > .ty-philo-hero,
.entry-content > .ty-philo-row,
.entry-content > .ty-philo-glossar,
.entry-content > .ty-kurse-hero,
.entry-content > .ty-kurs-block,
.entry-content > .ty-kurs-hinweis {
  max-width: none !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Mobile: Praxis-Metazeile stapeln */

/* Blog post titles */
.single .wp-block-post-title {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(38px, 5vw, 64px);
  font-weight: 400;
  line-height: 1.1;
  color: var(--ink);
  margin-bottom: 48px;
  max-width: 820px;
}
.single .wp-block-post-meta {
  display: none;
}
.ty-artikel-h1 {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(38px, 5vw, 64px);
  font-weight: 400;
  line-height: 1.1;
  color: var(--ink);
  margin-bottom: 48px;
  max-width: 820px;
}

@media (min-width: 769px) and (max-width: 1024px) {
.ty-nav { padding: 22px 32px; }
  .ty-hero,
  .ty-section,
  .ty-brief,
  .ty-philo-hero,
  .ty-philo-row,
  .ty-kurse-hero,
  .ty-kurs-block {
    padding-left: 32px;
    padding-right: 32px;
  }
  .ty-hero h1 { font-size: 52px; }
  .ty-philo-h1, .ty-kurse-h1 { font-size: 46px; }
  .ty-three .col { padding-right: 8px; }
  .ty-kurs-inner { gap: 24px; }
  .ty-footer { padding: 36px 32px; }
}

@media (max-width: 768px) {
/* --- Navigation --- */
  .ty-nav {
    padding: 18px 24px;
    flex-wrap: wrap;
    position: relative;
  }
  .ty-nav-toggle {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px 4px;
    margin-left: auto;
  }
  .ty-nav-toggle span {
    display: block;
    width: 22px;
    height: 2px;
    background: var(--ink);
    transition: opacity 0.15s;
  }
  .ty-nav-links {
    display: none;
    width: 100%;
    flex-direction: column;
    gap: 0;
    padding: 8px 0 12px;
    border-top: 1px solid var(--rule);
    margin-top: 12px;
  }
  .ty-nav.open .ty-nav-links {
    display: flex;
  }
  .ty-nav-links a {
    padding: 12px 0;
    font-size: 13px;
    border-bottom: 1px solid var(--rule);
  }
  .ty-nav-links a:last-child { border-bottom: none; }

  /* --- Gemeinsames Padding & Grid-Reset --- */
  .ty-hero,
  .ty-section,
  .ty-brief,
  .ty-philo-hero,
  .ty-philo-row,
  .ty-philo-glossar,
  .ty-kurse-hero,
  .ty-kurs-block,
  .ty-kurs-hinweis {
    padding: 48px 24px 36px;
    display: block;
  }

  /* --- Marginalia ausblenden --- */
  .ty-hero > .caps-ink,
  .ty-section > .caps-ink,
  .ty-brief > .caps-ink,
  .ty-philo-hero > .caps-ink,
  .ty-philo-row > .caps-ink,
  .ty-philo-glossar > .caps-ink,
  .ty-kurse-hero > .caps-ink,
  .ty-kurs-block > .caps-ink,
  .ty-kurs-hinweis > .caps-ink {
    display: block;
    margin-bottom: 12px;
  }

  /* --- Startseite Hero --- */
  .ty-hero h1 {
    font-size: 36px;
    line-height: 1.15;
  }
  .ty-hero .ty-sub,
  .ty-hero p {
    font-size: 17px;
    margin-top: 20px;
  }

  /* --- Kurszeile auf Startseite --- */
  .ty-container {
    display: block;
  }
  .ty-container > * { margin-bottom: 12px; }

  /* --- Drei Eingänge --- */
  .ty-three { display: block; }
  .ty-three > div:first-child { display: none; } /* Marginalia-Dummy */
  .col {
    margin-bottom: 36px;
    padding-right: 0;
  }
  .col:last-child { margin-bottom: 0; }

  /* --- Was es ist --- */
  .ty-what { display: block; }
  .ty-what h2 { font-size: 32px; margin-bottom: 20px; }

  /* --- Brief --- */
  .ty-brief-inner {
    display: block;
    text-align: left;
  }
  .ty-brief-inner > div:last-child { margin-top: 20px; }
  .btn, .btn-ghost { display: inline-block; margin-top: 16px; }

  /* --- Philosophie --- */
  .ty-philo-h1 { font-size: 34px; line-height: 1.15; }
  .ty-philo-sub { font-size: 16px; margin-top: 16px; }
  .ty-philo-row { display: block; }
  .ty-philo-sec-title { font-size: 26px; margin: 0 0 16px; }
  .ty-philo-body { margin-top: 0; }

  /* Glossar */
  .ty-philo-glossar { display: block; }
  .ty-philo-glossar-title { font-size: 24px; }
  .ty-philo-item {
    display: block;
    padding: 20px 0;
  }
  .ty-philo-pg { text-align: left; margin-top: 8px; }

  /* --- Kurse --- */
  .ty-kurse-h1 { font-size: 34px; line-height: 1.15; }
  .ty-kurs-inner {
    display: block;
  }
  .ty-kurs-title { font-size: 26px; margin-bottom: 10px; }
  .ty-kurs-meta { margin: 20px 0; }
  .ty-arrow-link { display: inline-block; margin-top: 4px; }
  .ty-kurs-hinweis-text { font-size: 18px; }

  /* --- Footer --- */
  .ty-footer { padding: 32px 24px; }
  .ty-footer-inner {
    flex-direction: column;
    gap: 10px;
  }

/* Laufender Kurs: Marginalie + Inhalt stapeln */
  .ty-grid-side {
    display: block;
  }
  .ty-grid-side > .caps,
  .ty-grid-side > [class*="caps"] {
    margin-bottom: 12px;
  }

  /* Kurs-Zeile: Titel und Button stapeln */
  .ty-kurs-row {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .ty-kurs-row h3 {
    font-size: 22px;
    margin: 0 0 6px;
  }
  .ty-kurs-row .line {
    font-size: 15px;
    line-height: 1.5;
  }
  .ty-kurs-row .btn-ghost {
    align-self: flex-start;
  }

  /* Drei Eingänge Kopf: Überschrift verkleinern */
  .ty-three-head h2 {
    font-size: 26px;
    line-height: 1.2;
    margin: 0 0 6px;
  }
  .ty-three-head .sub {
    font-size: 16px;
  }
  .ty-three-head {
    margin-bottom: 28px;
  }

  /* Drei Spalten auf mobile stapeln */
  .ty-three {
    display: block;
  }
  /* Leere Marginalie-Div ausblenden */
  .ty-three > div:first-child:empty {
    display: none;
  }
  .ty-three .col {
    display: block;
    margin-bottom: 32px;
    padding-right: 0;
  }
  .ty-three .col:last-child {
    margin-bottom: 0;
  }
  .ty-three .col h3 {
    font-size: 20px;
    margin: 8px 0;
  }
  .ty-three .col .n {
    font-size: 10px;
  }
  .ty-three .col p {
    font-size: 15px;
    line-height: 1.55;
  }

.ty-container {
    padding-left: 0;
    padding-right: 0;
  }

.ty-brief {
    padding: 0;
    overflow: hidden;
  }
  .ty-brief-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 40px 24px;
    width: 100%;
    box-sizing: border-box;
    min-width: 0;
  }
  .ty-brief-inner > * {
    max-width: 100%;
    min-width: 0;
  }
  .ty-brief-inner h3 {
    font-size: 22px;
    line-height: 1.3;
  }
  .ty-brief-inner .btn {
    margin-top: 8px;
    display: inline-block;
  }

.ty-praxis-meta {
    flex-direction: column;
    gap: 6px;
  }
  .ty-praxis-uebung h2 {
    font-size: 26px;
  }
  .ty-praxis-body {
    font-size: 16px;
    max-width: 100%;
  }
}

@media (max-width: 640px) {
/* Kacheln: 3-spaltig (Home) und 2x2 (Philosophie) */
  .ty-responsive-table tr { display: block; }
  .ty-responsive-table td {
    display: block;
    width: 100%;
    border-right: none;
    box-sizing: border-box;
  }

  /* Kurs-Banner: Info + Button */
  .ty-kurs-banner tr { display: block; }
  .ty-kurs-banner td {
    display: block;
    width: 100%;
    white-space: normal;
    text-align: left;
  }
  .ty-kurs-banner td:last-child {
    padding-top: 0.5rem;
    padding-left: 2rem;
  }

  /* Newsletter: E-Mail-Input + Button */
  .ty-newsletter-form tr { display: block; }
  .ty-newsletter-form td {
    display: block;
    width: 100%;
    white-space: normal;
  }
  .ty-newsletter-form input[type="email"] {
    width: 100%;
    box-sizing: border-box;
  }
  .ty-newsletter-form a {
    display: block;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
  }

.ty-fach-section {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 40px 0;
  }
  .ty-fach-block {
    flex-direction: column;
    gap: 12px;
  }
  .ty-fach-block-link {
    align-self: flex-start;
  }
}

/* --- aus der Seite „Philosophie des Tantrik Yoga" (philosophie-tantrik-yoga), seit dem 26.09.2026 nur noch hier, der <style>-Block der Seite ist entfernt --- */
.ty-hintergr {
  max-width: 680px;
  margin: 0 auto;
  padding: 5rem 2rem 6rem;
}
.ty-hintergr-eyebrow {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ty-hintergr-eyebrow::after {
  content: '';
  display: block;
  height: 1px;
  width: 2rem;
  background: var(--gold-dark);
}
.ty-hintergr-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 300;
  color: var(--ink);
  line-height: 1.2;
  margin-bottom: 2.5rem;
  max-width: 640px;
}
.ty-hintergr p {
  font-family: 'Noto Sans', sans-serif;
  font-size: 19px;
  color: var(--text-2);
  line-height: 1.9;
  font-weight: 300;
  margin-bottom: 1.6rem;
}
.ty-hintergr strong {
  color: var(--ink);
  font-weight: 400;
}
.ty-hintergr em {
  font-style: italic;
  color: var(--ink);
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
}
.ty-hintergr h2 {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(22px, 2.8vw, 32px);
  font-weight: 300;
  color: var(--ink);
  line-height: 1.3;
  margin: 3.5rem 0 1.2rem;
}
.ty-hintergr-rule {
  height: 1px;
  background: rgba(176, 143, 61,0.18);
  margin: 3rem 0;
}
.ty-hintergr-quote {
  margin: 2.5rem 0;
  padding-left: 1.6rem;
  border-left: 2px solid var(--gold-dark);
}
.ty-hintergr-quote p {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 22px !important;
  font-style: italic;
  color: var(--ink) !important;
  line-height: 1.6;
  margin: 0 !important;
}

/* Begriffe-Block */
.ty-hintergr-begriffe {
  background: var(--paper-3);
  border: 1px solid rgba(176, 143, 61,0.18);
  padding: 2.5rem;
  margin: 2.5rem 0;
}
.ty-hintergr-begriffe-title {
  font-family: 'Noto Sans', sans-serif;
  font-size: 12px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 1.5rem;
}
.ty-hintergr-begriff {
  margin-bottom: 1.4rem;
  padding-bottom: 1.4rem;
  border-bottom: 1px solid rgba(176, 143, 61,0.12);
}
.ty-hintergr-begriff:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.ty-hintergr-begriff-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 22px;
  font-style: italic;
  color: var(--ink);
  margin-bottom: 0.4rem;
}
.ty-hintergr-begriff-text {
  font-family: 'Noto Sans', sans-serif;
  font-size: 16px !important;
  color: var(--text-2) !important;
  line-height: 1.8;
  font-weight: 300;
  margin: 0 !important;
}

/* Links */
.ty-hintergr-links {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 3rem;
  padding-top: 2.5rem;
  border-top: 1px solid rgba(176, 143, 61,0.18);
}
.ty-hintergr-link {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
  font-weight: 400;
  transition: color 0.3s;
}
.ty-hintergr-link::after { content: ' →'; }
.ty-hintergr-link:hover { color: var(--ink); }

/* --- aus der Seite „Datenschutzerklärung" (datenschutzerklaerung), seit dem 26.09.2026 nur noch hier, der <style>-Block der Seite ist entfernt --- */
.ty-dsgvo {
  max-width: 680px;
  margin: 0 auto;
  padding: 5rem 2rem 6rem;
}
.ty-dsgvo-eyebrow {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ty-dsgvo-eyebrow::after {
  content: '';
  display: block;
  height: 1px;
  width: 2rem;
  background: var(--gold-dark);
}
.ty-dsgvo-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 300;
  color: var(--ink);
  line-height: 1.2;
  margin-bottom: 3rem;
}
.ty-dsgvo h2 {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 400;
  margin: 2.8rem 0 0.8rem;
}
.ty-dsgvo p,
.ty-dsgvo li {
  font-family: 'Noto Sans', sans-serif;
  font-size: 17px;
  color: var(--text-2);
  line-height: 1.85;
  font-weight: 300;
  margin-bottom: 0.8rem;
}
.ty-dsgvo ul {
  padding-left: 1.4rem;
  margin-bottom: 0.8rem;
}
.ty-dsgvo a {
  color: var(--gold);
  text-decoration: none;
}
.ty-dsgvo a:hover {
  color: var(--ink);
}
.ty-dsgvo strong {
  color: var(--ink);
  font-weight: 400;
}
.ty-dsgvo-note {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(176, 143, 61,0.18);
  font-family: 'Noto Sans', sans-serif;
  font-size: 15px;
  color: var(--gold-dark);
  line-height: 1.8;
  font-weight: 300;
}

/* --- aus der Seite „Impressum" (impressum), seit dem 26.09.2026 nur noch hier, der <style>-Block der Seite ist entfernt --- */
.ty-legal {
  max-width: 680px;
  margin: 0 auto;
  padding: 5rem 2rem 6rem;
}
.ty-legal-eyebrow {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 300;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ty-legal-eyebrow::after {
  content: '';
  display: block;
  height: 1px;
  width: 2rem;
  background: var(--gold-dark);
}
.ty-legal-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 300;
  color: var(--ink);
  line-height: 1.2;
  margin-bottom: 3rem;
}
.ty-legal h2 {
  font-family: 'Noto Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 400;
  margin: 2.5rem 0 0.8rem;
}
.ty-legal p,
.ty-legal address {
  font-family: 'Noto Sans', sans-serif;
  font-size: 17px;
  color: var(--text-2);
  line-height: 1.85;
  font-weight: 300;
  font-style: normal;
  margin-bottom: 0.5rem;
}
.ty-legal a {
  color: var(--gold);
  text-decoration: none;
}
.ty-legal a:hover {
  color: var(--ink);
}
.ty-legal-note {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(176, 143, 61,0.18);
  font-family: 'Noto Sans', sans-serif;
  font-size: 15px;
  color: var(--gold-dark);
  line-height: 1.8;
  font-weight: 300;
}
