/* ========================================================================
   MACHABERAUCH · Design-System-Tokens & Reusable Components
   Stand: 2026-05-08 · Phase 2 (Foundation)
   Quellen: Brand-Memory (Farben, Fonts), mu-macher-brandlight.php (Live-Werte),
            Master-Prompt Anhang A (Spacing/Z-Index/Transitions),
            Anhang B (FAQ), Anhang C (Footer), Anhang D (ProfilePress).
   Brief-Tokens (Brief Abschnitt 3) folgen, sobald briefs/MACHERKURSE-BRIEF.md vorliegt.
   ======================================================================== */

:root {
  /* ── Brand-Farben (eingefroren) ───────────────────────────────────── */
  --mk-black:        #060504;
  --mk-black-2:      #14100a;
  --mk-cream:        #e8e0d0;
  --mk-cream-light:  #f8f1e0;
  --mk-cream-dim:    rgba(232, 224, 208, 0.78);
  --mk-cream-faint:  rgba(232, 224, 208, 0.18);
  --mk-gold:         #C9A84C;
  --mk-gold-soft:    rgba(201, 168, 76, 0.14);

  /* ── Typo ─────────────────────────────────────────────────────────── */
  --mk-serif: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
  --mk-sans:  'Barlow Condensed', 'Inter', system-ui, -apple-system, sans-serif;

  /* ── Spacing-Skala (Anhang A) ─────────────────────────────────────── */
  --mk-sp-1:  8px;
  --mk-sp-2:  16px;
  --mk-sp-3:  24px;
  --mk-sp-4:  32px;
  --mk-sp-6:  48px;
  --mk-sp-8:  64px;
  --mk-sp-12: 96px;
  --mk-sp-16: 128px;

  /* ── Z-Index ──────────────────────────────────────────────────────── */
  --mk-z-base:    1;
  --mk-z-overlay: 100;
  --mk-z-modal:   1000;

  /* ── Transitions ──────────────────────────────────────────────────── */
  --mk-ease:     cubic-bezier(0.16, 1, 0.3, 1);
  --mk-dur-fast: 0.2s;
  --mk-dur-base: 0.4s;
}

/* =========================================================================
   Reusable-Layout-Bausteine (Prefix mk-, niemals Astra-Klassen überschreiben)
   ========================================================================= */

.mk-wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-left: var(--mk-sp-4);
  padding-right: var(--mk-sp-4);
}
@media (max-width: 768px) {
  .mk-wrap { padding-left: var(--mk-sp-3); padding-right: var(--mk-sp-3); }
}

.mk-h1 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(2.4rem, 4.5vw, 4.6rem);
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: var(--mk-cream);
}
.mk-h1 em {
  font-style: italic;
  color: var(--mk-gold);
  font-weight: 400;
}

.mk-h2 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.15;
  letter-spacing: -0.005em;
  color: var(--mk-cream);
}
.mk-h2 em { font-style: italic; color: var(--mk-gold); }

.mk-eyebrow {
  font-family: var(--mk-sans);
  text-transform: uppercase;
  letter-spacing: 0.32em;
  font-size: 11px;
  font-weight: 500;
  color: var(--mk-gold);
}

.mk-sec-label {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-bottom: var(--mk-sp-3);
}
.mk-sec-label .num {
  font-family: var(--mk-serif);
  font-style: italic;
  font-size: 18px;
  color: var(--mk-gold);
}
.mk-sec-label .line {
  width: 48px;
  height: 1px;
  background: var(--mk-gold);
  display: inline-block;
}
.mk-sec-label .lbl {
  font-family: var(--mk-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--mk-gold);
}

/* ── Buttons ───────────────────────────────────────────────────────── */
.mk-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-family: var(--mk-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  padding: 16px 32px;
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
  transition: all var(--mk-dur-base) var(--mk-ease);
}
.mk-btn-primary {
  background: var(--mk-gold);
  color: var(--mk-black);
}
.mk-btn-primary:hover {
  background: var(--mk-cream);
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(201, 168, 76, 0.25);
}
.mk-btn-ghost {
  background: transparent;
  color: var(--mk-cream);
  border-color: var(--mk-gold);
}
.mk-btn-ghost:hover {
  background: var(--mk-gold);
  color: var(--mk-black);
}

/* =========================================================================
   FAQ — Anhang B
   ========================================================================= */

.mk-faq {
  background: var(--mk-black);
  padding: 140px 0;
  border-bottom: 1px solid var(--mk-cream-faint);
}
.mk-faq-list {
  margin-top: 64px;
  border-top: 1px solid var(--mk-cream-faint);
}
.mk-faq-item { border-bottom: 1px solid var(--mk-cream-faint); }
.mk-faq-item summary {
  list-style: none;
  cursor: pointer;
  padding: 32px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  transition: color var(--mk-dur-base) var(--mk-ease);
}
.mk-faq-item summary::-webkit-details-marker { display: none; }
.mk-faq-q {
  font-family: var(--mk-serif);
  font-size: 26px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--mk-cream);
}
.mk-faq-icon {
  font-family: var(--mk-serif);
  font-weight: 300;
  font-size: 32px;
  color: var(--mk-gold);
  transition: transform var(--mk-dur-base) var(--mk-ease);
  flex-shrink: 0;
}
.mk-faq-item[open] .mk-faq-icon { transform: rotate(45deg); }
.mk-faq-item:hover summary .mk-faq-q { color: var(--mk-gold); }
.mk-faq-a {
  padding: 0 0 32px 0;
  font-family: var(--mk-sans);
  font-size: 17px;
  color: var(--mk-cream-dim);
  line-height: 1.7;
  max-width: 70ch;
}

/* =========================================================================
   /mitgliedschaft/ Page-spezifisch (Phase 4)
   ========================================================================= */

body.page-mitgliedschaft .ast-container,
body.page-mitgliedschaft .site-content > .ast-container { max-width: none !important; padding: 0 !important; }
body.page-mitgliedschaft .entry-content { margin: 0 !important; }
body.page-mitgliedschaft .entry-header { display: none !important; }
body.page-mitgliedschaft #primary { padding: 0 !important; }

.mk-page-mit { color: var(--mk-cream); }

.mk-mit-hero {
  background: var(--mk-black);
  padding: clamp(96px, 12vw, 160px) clamp(24px, 5vw, 64px);
  position: relative;
  overflow: hidden;
}
.mk-mit-hero::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(circle at 80% 30%, rgba(201,168,76,0.10) 0%, transparent 55%);
  pointer-events: none;
}
.mk-mit-hero-inner { max-width: 880px; margin: 0 auto; position: relative; z-index: 1; text-align: center; }
.mk-mit-eyebrow {
  font-family: var(--mk-sans);
  text-transform: uppercase;
  letter-spacing: 0.32em;
  font-size: 11px;
  font-weight: 600;
  color: var(--mk-gold);
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 28px;
}
.mk-mit-eyebrow::before, .mk-mit-eyebrow::after {
  content: '';
  width: 36px; height: 1px;
  background: var(--mk-gold);
  display: inline-block;
}
.mk-mit-hero h1 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(2.6rem, 5vw, 4.6rem);
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: var(--mk-cream);
  margin: 0 0 24px 0;
}
.mk-mit-hero h1 em { font-style: italic; color: var(--mk-gold); font-weight: 400; }
.mk-mit-hero-lead {
  font-family: var(--mk-sans);
  font-size: 19px;
  line-height: 1.65;
  color: var(--mk-cream-dim);
  max-width: 640px;
  margin: 0 auto;
}

/* Pre-Buy-Trust-Block (zwischen Hero und Pricing) */
.mk-mit-trust {
  background: var(--mk-cream-light);
  padding: clamp(72px, 9vw, 112px) clamp(24px, 5vw, 64px);
  border-top: 1px solid rgba(201,168,76,0.20);
  border-bottom: 1px solid rgba(201,168,76,0.20);
}
.mk-mit-trust-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: clamp(40px, 5vw, 72px);
  align-items: center;
}
.mk-mit-trust-photo { position: relative; max-width: 360px; }
.mk-mit-trust-photo::before {
  content: '';
  position: absolute; inset: -1rem;
  border: 1px solid rgba(201,168,76,0.30);
  transform: translate(1.4rem, 1.4rem);
  transition: transform 0.5s var(--mk-ease);
  pointer-events: none;
}
.mk-mit-trust-photo:hover::before { transform: translate(1rem, 1rem); }
.mk-mit-trust-photo img {
  width: 100%; aspect-ratio: 4/5;
  object-fit: cover; object-position: center 18%;
  display: block;
  border: 1px solid rgba(201,168,76,0.35);
  box-shadow: 0 30px 80px rgba(20,16,10,0.18);
  filter: contrast(1.02);
}
.mk-mit-trust-eyebrow {
  font-family: var(--mk-sans);
  text-transform: uppercase;
  letter-spacing: 0.32em;
  font-size: 11px;
  font-weight: 600;
  color: var(--mk-gold);
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}
.mk-mit-trust-eyebrow::before {
  content: ''; width: 36px; height: 1px;
  background: var(--mk-gold); display: inline-block;
}
.mk-mit-trust h2 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(2rem, 3.5vw, 3.2rem);
  line-height: 1.1;
  color: var(--mk-black);
  margin: 0 0 22px 0;
  letter-spacing: -0.01em;
}
.mk-mit-trust h2 em { font-style: italic; color: var(--mk-gold); }
.mk-mit-trust p {
  font-family: var(--mk-sans);
  font-size: 17px;
  line-height: 1.7;
  color: #3a342a;
  margin: 0;
  max-width: 56ch;
}
.mk-mit-trust-sig {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid rgba(201,168,76,0.25);
  font-family: var(--mk-serif);
  font-style: italic;
  font-size: 18px;
  color: var(--mk-black);
}
.mk-mit-trust-sig small {
  display: block;
  font-family: var(--mk-sans);
  font-style: normal;
  font-size: 11px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(58,52,42,0.65);
  margin-top: 6px;
  font-weight: 500;
}

/* Pricing-Card */
.mk-mit-pricing {
  background: var(--mk-cream);
  padding: clamp(80px, 10vw, 128px) clamp(24px, 5vw, 64px);
}
.mk-mit-pricing-inner { max-width: 720px; margin: 0 auto; }
.mk-mit-card {
  background: var(--mk-black);
  border: 1px solid rgba(201,168,76,0.30);
  padding: clamp(40px, 5vw, 64px);
  position: relative;
  box-shadow: 0 40px 100px rgba(20,16,10,0.20);
}
.mk-mit-card::before {
  content: '';
  position: absolute; inset: -1px;
  border: 1px solid rgba(201,168,76,0.18);
  transform: translate(12px, 12px);
  pointer-events: none;
}
.mk-mit-card-tag {
  font-family: var(--mk-sans);
  font-size: 11px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--mk-gold);
  margin-bottom: 14px;
}
.mk-mit-card h2 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.1;
  color: var(--mk-cream);
  margin: 0 0 28px 0;
}
.mk-mit-card h2 em { font-style: italic; color: var(--mk-gold); }
.mk-mit-price {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 0 0 32px 0;
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(201,168,76,0.20);
}
.mk-mit-price-num {
  font-family: var(--mk-serif);
  font-size: clamp(3rem, 6vw, 4.5rem);
  font-weight: 400;
  color: var(--mk-gold);
  line-height: 1;
}
.mk-mit-price-unit {
  font-family: var(--mk-sans);
  font-size: 14px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--mk-cream-dim);
}
.mk-mit-features {
  list-style: none;
  padding: 0;
  margin: 0 0 36px 0;
}
.mk-mit-features li {
  padding: 12px 0 12px 32px;
  position: relative;
  font-family: var(--mk-sans);
  font-size: 16px;
  line-height: 1.55;
  color: rgba(232,224,208,0.90);
  border-bottom: 1px solid rgba(201,168,76,0.10);
}
.mk-mit-features li:last-child { border-bottom: none; }
.mk-mit-features li::before {
  content: '✓';
  position: absolute; left: 0; top: 12px;
  color: var(--mk-gold);
  font-weight: 600;
}
.mk-mit-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  background: var(--mk-gold);
  color: var(--mk-black);
  font-family: var(--mk-sans);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  padding: 20px 32px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: all var(--mk-dur-base) var(--mk-ease);
}
.mk-mit-cta:hover {
  background: var(--mk-cream);
  transform: translateY(-2px);
  box-shadow: 0 16px 50px rgba(201,168,76,0.35);
}
.mk-mit-card-foot {
  margin-top: 24px;
  font-family: var(--mk-sans);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--mk-cream-dim);
  text-align: center;
}

/* Kapitel */
.mk-mit-chapters {
  background: var(--mk-cream-light);
  padding: clamp(80px, 10vw, 128px) clamp(24px, 5vw, 64px);
}
.mk-mit-chapters-inner { max-width: 1100px; margin: 0 auto; }
.mk-mit-chapters h2 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(2rem, 3.5vw, 3rem);
  color: var(--mk-black);
  margin: 0 0 12px 0;
  line-height: 1.1;
}
.mk-mit-chapters h2 em { font-style: italic; color: var(--mk-gold); }
.mk-mit-chapters-sub {
  font-family: var(--mk-sans);
  font-size: 15px;
  color: rgba(58,52,42,0.70);
  margin: 0 0 56px 0;
}
.mk-mit-chap-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
.mk-mit-chap {
  background: #fff;
  border: 1px solid rgba(201,168,76,0.20);
  padding: clamp(28px, 3.5vw, 44px);
  transition: all var(--mk-dur-base) var(--mk-ease);
}
.mk-mit-chap:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 60px rgba(20,16,10,0.10);
  border-color: rgba(201,168,76,0.45);
}
.mk-mit-chap-num {
  font-family: var(--mk-serif);
  font-style: italic;
  font-size: 14px;
  color: var(--mk-gold);
  margin-bottom: 14px;
  letter-spacing: 0.05em;
}
.mk-mit-chap h3 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: 26px;
  line-height: 1.15;
  color: var(--mk-black);
  margin: 0 0 12px 0;
}
.mk-mit-chap p {
  font-family: var(--mk-sans);
  font-size: 15px;
  line-height: 1.65;
  color: #3a342a;
  margin: 0;
}

/* FAQ-Page-spezifisch (auf /mitgliedschaft/) */
.mk-mit-faq {
  background: var(--mk-black);
  padding: clamp(80px, 10vw, 128px) clamp(24px, 5vw, 64px);
  border-bottom: 1px solid rgba(232,224,208,0.10);
}
.mk-mit-faq-inner { max-width: 800px; margin: 0 auto; }
.mk-mit-faq h2 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(2rem, 3.5vw, 3rem);
  color: var(--mk-cream);
  margin: 0 0 56px 0;
  line-height: 1.1;
  text-align: center;
}
.mk-mit-faq h2 em { font-style: italic; color: var(--mk-gold); }
.mk-mit-faq-list { border-top: 1px solid rgba(232,224,208,0.10); }
.mk-mit-faq-item { border-bottom: 1px solid rgba(232,224,208,0.10); }
.mk-mit-faq-item summary {
  list-style: none;
  cursor: pointer;
  padding: 28px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.mk-mit-faq-item summary::-webkit-details-marker { display: none; }
.mk-mit-faq-q {
  font-family: var(--mk-serif);
  font-size: 22px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--mk-cream);
}
.mk-mit-faq-icon {
  font-family: var(--mk-serif);
  font-weight: 300;
  font-size: 28px;
  color: var(--mk-gold);
  transition: transform var(--mk-dur-base) var(--mk-ease);
  flex-shrink: 0;
}
.mk-mit-faq-item[open] .mk-mit-faq-icon { transform: rotate(45deg); }
.mk-mit-faq-item:hover .mk-mit-faq-q { color: var(--mk-gold); }
.mk-mit-faq-a {
  padding: 0 0 28px 0;
  font-family: var(--mk-sans);
  font-size: 16px;
  color: var(--mk-cream-dim);
  line-height: 1.7;
  max-width: 70ch;
}

/* Final-CTA */
.mk-mit-cta-final {
  background: var(--mk-cream);
  padding: clamp(80px, 10vw, 128px) clamp(24px, 5vw, 64px);
  text-align: center;
}
.mk-mit-cta-final h2 {
  font-family: var(--mk-serif);
  font-weight: 400;
  font-size: clamp(2rem, 3.5vw, 3rem);
  color: var(--mk-black);
  margin: 0 0 24px 0;
  line-height: 1.1;
}
.mk-mit-cta-final h2 em { font-style: italic; color: var(--mk-gold); }
.mk-mit-cta-final-price {
  font-family: var(--mk-sans);
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(58,52,42,0.65);
  margin: 0 0 32px 0;
}
.mk-mit-cta-final .mk-mit-cta { max-width: 360px; }

@media (max-width: 900px) {
  .mk-mit-trust-inner { grid-template-columns: 1fr; gap: 40px; }
  .mk-mit-trust-photo { max-width: 280px; margin: 0 auto; }
}
@media (max-width: 768px) {
  .mk-mit-chap-grid { grid-template-columns: 1fr; }
}

/* =========================================================================
   Footer — Brand-Push mit großem Logo (mu-macher-footer.php)
   Astra-Footer wird ausgeblendet, mk-footer ersetzt
   ========================================================================= */

/* Astra-Footer + mobile Footer-Bar verstecken — wir liefern eigenen */
.site-info,
.ast-small-footer,
.ast-footer-overlay,
.footer-widget-area,
#colophon { display: none !important; }

.mk-footer {
  background: var(--mk-black);
  color: var(--mk-cream-dim);
  padding: clamp(80px, 9vw, 128px) clamp(24px, 5vw, 64px) 32px;
  border-top: 1px solid rgba(232,224,208,0.10);
  font-family: var(--mk-sans);
  position: relative;
  z-index: 5;
}
.mk-footer-brand {
  max-width: 1200px;
  margin: 0 auto clamp(56px, 7vw, 88px) auto;
  text-align: center;
  padding-bottom: clamp(48px, 6vw, 72px);
  border-bottom: 1px solid rgba(232,224,208,0.10);
}
.mk-footer-logo {
  display: block;
  width: 100%;
  max-width: 720px;
  height: auto;
  margin: 0 auto 18px auto;
  filter: drop-shadow(0 24px 60px rgba(201,168,76,0.10));
}
.mk-footer-tag {
  font-family: var(--mk-sans);
  font-size: 12px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--mk-gold);
  font-weight: 500;
  margin: 0;
}

.mk-footer-grid {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(32px, 5vw, 64px);
  padding-bottom: clamp(40px, 5vw, 64px);
  border-bottom: 1px solid rgba(232,224,208,0.10);
}
.mk-footer-col h4 {
  font-family: var(--mk-sans);
  font-size: 11px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--mk-gold);
  margin: 0 0 24px 0;
}
.mk-footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.mk-footer-col li {
  margin-bottom: 12px;
  font-family: var(--mk-sans);
  font-size: 15px;
  line-height: 1.5;
}
.mk-footer-col a {
  color: var(--mk-cream-dim);
  text-decoration: none;
  transition: color var(--mk-dur-base) var(--mk-ease);
  border: none;
}
.mk-footer-col a:hover { color: var(--mk-gold); }

.mk-footer-bottom {
  max-width: 1100px;
  margin: 0 auto;
  padding-top: clamp(28px, 3vw, 40px);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  font-family: var(--mk-sans);
  font-size: 11px;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: rgba(232,224,208,0.55);
}

@media (max-width: 768px) {
  .mk-footer-grid { grid-template-columns: 1fr; gap: 32px; text-align: center; }
  .mk-footer-bottom { flex-direction: column; align-items: center; text-align: center; }
}

/* =========================================================================
   Brand-Logo statt Text-Wortmarken (Login/Register/Reset/Bestell-Pages)
   Aufkleber-Logo (schwarz mit weißer Schrift) als background-image
   ========================================================================= */

body.page-id-1109 .pp-form-container::after,
body.page-id-1111 .pp-form-container::after,
body.page-id-1113 .pp-form-container::after {
  content: '' !important;
  display: block !important;
  width: 280px !important;
  height: 64px !important;
  top: -88px !important;
  background: url('https://macher-kurse.com/wp-content/uploads/2025/03/cropped-machaberauch_Aufkleber-scaled-1.jpg') center/contain no-repeat !important;
}

body.page-id-1196 .entry-content::before,
body.page-id-1198 .entry-content::before {
  content: '' !important;
  display: block !important;
  width: 320px !important;
  height: 72px !important;
  top: -88px !important;
  background: url('https://macher-kurse.com/wp-content/uploads/2025/03/cropped-machaberauch_Aufkleber-scaled-1.jpg') center/contain no-repeat !important;
}

@media (max-width: 600px) {
  body.page-id-1109 .pp-form-container::after,
  body.page-id-1111 .pp-form-container::after,
  body.page-id-1113 .pp-form-container::after {
    width: 200px !important;
    height: 46px !important;
    top: -64px !important;
  }
  body.page-id-1196 .entry-content::before,
  body.page-id-1198 .entry-content::before {
    width: 220px !important;
    height: 50px !important;
    top: -68px !important;
  }
}

/* =========================================================================
   Modern Card-Hover Pattern (Cards + Photo-Frames konsistent)
   Wirkt auf: .mk-features-card, .mk-ausbildung-card, .mk-mit-chap,
              .mk-engagement-card, .mk-judo-photo, .mk-felix-photo,
              .mk-traeume-photo, .mk-ausbildung-photo-wrap, .mk-buch-cover
   ========================================================================= */

/* Karten — Smooth Lift + Glow-Ring + Inner-Sheen */
.mk-features-card,
.mk-ausbildung-card,
.mk-mit-chap,
.mk-mit-card {
  position: relative;
  overflow: hidden;
  transition:
    transform 0.55s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.55s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.55s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.mk-features-card::after,
.mk-ausbildung-card::after,
.mk-mit-chap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(201,168,76,0) 0%, rgba(201,168,76,0.10) 60%, rgba(201,168,76,0) 100%);
  opacity: 0;
  transition: opacity 0.55s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
  z-index: 1;
}
.mk-features-card > *,
.mk-ausbildung-card > *,
.mk-mit-chap > * { position: relative; z-index: 2; }

.mk-features-card:hover,
.mk-ausbildung-card:hover,
.mk-mit-chap:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 32px 72px rgba(20,16,10,0.14),
    0 0 0 1px rgba(201,168,76,0.45) !important;
  border-color: transparent !important;
}
.mk-features-card:hover::after,
.mk-ausbildung-card:hover::after,
.mk-mit-chap:hover::after { opacity: 1; }

.mk-features-card:hover h3,
.mk-ausbildung-card:hover h3,
.mk-mit-chap:hover h3 { color: var(--mk-gold) !important; }
.mk-features-card h3,
.mk-ausbildung-card h3,
.mk-mit-chap h3 {
  transition: color 0.55s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Card-Number (01/02/03) reagiert auf hover */
.mk-features-card-num,
.mk-ausbildung-card-num,
.mk-mit-chap-num {
  transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1), letter-spacing 0.55s cubic-bezier(0.16, 1, 0.3, 1);
}
.mk-features-card:hover .mk-features-card-num,
.mk-ausbildung-card:hover .mk-ausbildung-card-num,
.mk-mit-chap:hover .mk-mit-chap-num {
  transform: translateX(4px);
  letter-spacing: 0.10em;
}

/* Photo-Frames — größerer Schatten + smoothere Frame-Bewegung */
.mk-judo-photo img,
.mk-felix-photo img,
.mk-traeume-photo img,
.mk-engagement-photo img {
  transition:
    transform 0.7s cubic-bezier(0.16, 1, 0.3, 1),
    filter 0.7s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.7s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.mk-judo-photo:hover img,
.mk-felix-photo:hover img,
.mk-traeume-photo:hover img {
  transform: scale(1.015);
  filter: brightness(1.03) contrast(1.04);
}

/* Pricing-Card auf /mitgliedschaft/ — sanftere Pulsation beim Hover */
.mk-mit-card {
  transition:
    transform 0.7s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.7s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.mk-mit-card:hover {
  transform: translateY(-3px);
  box-shadow:
    0 56px 120px rgba(20,16,10,0.30),
    0 0 0 1px rgba(201,168,76,0.50) !important;
}

/* Section-Trennlinien weicher — Gradient-Fade statt scharfer 1px-Border */
section.mk-judo,
section.mk-engagement,
section.mk-felix,
section.mk-traeume,
section.mk-features,
section.mk-ausbildung,
section.mk-buch {
  border-top: none !important;
  border-bottom: none !important;
  position: relative;
}
section.mk-judo::after,
section.mk-engagement::after,
section.mk-felix::after,
section.mk-traeume::after,
section.mk-features::after,
section.mk-ausbildung::after,
section.mk-buch::after {
  content: '';
  position: absolute;
  bottom: 0; left: 50%;
  transform: translateX(-50%);
  width: min(80%, 700px);
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(201,168,76,0.30) 50%, transparent 100%);
  pointer-events: none;
}

/* Mk-eyebrow Linien wachsen on hover des elternsection */
section.mk-judo:hover .mk-judo-eyebrow::before,
section.mk-engagement:hover .mk-engagement-eyebrow::before,
section.mk-felix:hover .mk-felix-eyebrow::before,
section.mk-traeume:hover .mk-traeume-eyebrow::before,
section.mk-features:hover .mk-features-eyebrow::before,
section.mk-ausbildung:hover .mk-ausbildung-eyebrow::before {
  width: 56px;
}
.mk-judo-eyebrow::before,
.mk-engagement-eyebrow::before,
.mk-felix-eyebrow::before,
.mk-traeume-eyebrow::before,
.mk-features-eyebrow::before,
.mk-ausbildung-eyebrow::before {
  transition: width 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Buttons (mk-btn, mk-bestell-cta, mk-mit-cta, mk-buch-submit) — modern shine */
.mk-btn-primary,
.mk-bestell-cta,
.mk-mit-cta,
.mk-buch-submit {
  position: relative;
  overflow: hidden;
}
.mk-btn-primary::before,
.mk-bestell-cta::before,
.mk-mit-cta::before,
.mk-buch-submit::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.30), transparent);
  transition: left 0.7s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}
.mk-btn-primary:hover::before,
.mk-bestell-cta:hover::before,
.mk-mit-cta:hover::before,
.mk-buch-submit:hover::before {
  left: 100%;
}

/* =========================================================================
   /vorgeschmack/ (page 1249) — Card-Hover & Button-Shine ans mk-Pattern angleichen
   Vorgeschmack hat eigene vg-* Klassen, wir legen nur Hover-Polish drüber
   ========================================================================= */

/* Backup-Hide für vg-testi (erfundene Marcus K./Tobias M./Sebastian F.)
   falls killfakes-Strip nicht greift (z.B. Cache-Layer, Plugin-Order) */
body.page-id-1249 .vg-testi,
body.page-id-1249 div.vg-testi { display: none !important; }

body.page-id-1249 .vg-chapter-card {
  position: relative;
  overflow: hidden;
  transition:
    transform 0.55s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.55s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.55s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
body.page-id-1249 .vg-chapter-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(201,168,76,0) 0%, rgba(201,168,76,0.10) 60%, rgba(201,168,76,0) 100%);
  opacity: 0;
  transition: opacity 0.55s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
  z-index: 1;
}
body.page-id-1249 .vg-chapter-card > * { position: relative; z-index: 2; }
body.page-id-1249 .vg-chapter-card:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 32px 72px rgba(20,16,10,0.14),
    0 0 0 1px rgba(201,168,76,0.45) !important;
}
body.page-id-1249 .vg-chapter-card:hover::after { opacity: 1; }
body.page-id-1249 .vg-chapter-name { transition: color 0.55s cubic-bezier(0.16, 1, 0.3, 1); }
body.page-id-1249 .vg-chapter-card:hover .vg-chapter-name { color: var(--mk-gold) !important; }
body.page-id-1249 .vg-chapter-num,
body.page-id-1249 .vg-chapter-dot {
  transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1);
}
body.page-id-1249 .vg-chapter-card:hover .vg-chapter-num,
body.page-id-1249 .vg-chapter-card:hover .vg-chapter-dot {
  transform: translateX(4px);
}

/* Buttons (vg-cta-btn, vg-hero-btn) — Shine wie mk-btn */
body.page-id-1249 .vg-cta-btn,
body.page-id-1249 .vg-hero-btn,
body.page-id-1249 .vg-nav-cta {
  position: relative;
  overflow: hidden;
}
body.page-id-1249 .vg-cta-btn::before,
body.page-id-1249 .vg-hero-btn::before,
body.page-id-1249 .vg-nav-cta::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.30), transparent);
  transition: left 0.7s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}
body.page-id-1249 .vg-cta-btn:hover::before,
body.page-id-1249 .vg-hero-btn:hover::before,
body.page-id-1249 .vg-nav-cta:hover::before {
  left: 100%;
}

/* =========================================================================
   Brand-Mark Hero (Hauptseite + /mitgliedschaft/)
   Kleiner Logo-Bar oben über dem Hero
   ========================================================================= */
.mk-brandmark-hero {
  position: relative;
  z-index: 6;
  background: var(--mk-black);
  padding: 18px 24px;
  text-align: center;
  border-bottom: 1px solid rgba(232,224,208,0.06);
}
.mk-brandmark-hero img {
  display: inline-block;
  max-width: 320px;
  width: 100%;
  height: auto;
  vertical-align: middle;
  filter: drop-shadow(0 6px 20px rgba(201,168,76,0.12));
}
@media (max-width: 600px) {
  .mk-brandmark-hero img { max-width: 220px; }
}

/* =========================================================================
   ProfilePress — Anhang D (Selektoren in Phase 5 via DevTools final verifizieren)
   ========================================================================= */

.pp-form,
.pp-form-style {
  background: var(--mk-black-2);
  border: 1px solid var(--mk-cream-faint);
  padding: 56px 48px;
  max-width: 480px;
  margin: 80px auto;
  font-family: var(--mk-sans);
  color: var(--mk-cream);
}
.pp-form h2,
.pp-form .pp-form-title {
  font-family: var(--mk-serif);
  font-size: 36px;
  font-weight: 400;
  color: var(--mk-cream);
  margin-bottom: 32px;
  letter-spacing: -0.01em;
}
.pp-form label {
  font-family: var(--mk-sans);
  font-size: 11px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--mk-gold);
  margin-bottom: 12px;
  font-weight: 500;
}
.pp-form input[type="text"],
.pp-form input[type="email"],
.pp-form input[type="password"],
.pp-form input[type="tel"],
.pp-form select,
.pp-form textarea {
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--mk-cream-faint);
  color: var(--mk-cream);
  font-family: var(--mk-sans);
  font-size: 17px;
  padding: 12px 0;
  margin-bottom: 24px;
  outline: none;
  transition: border-color var(--mk-dur-base) var(--mk-ease);
}
.pp-form input:focus,
.pp-form textarea:focus {
  border-bottom-color: var(--mk-gold);
}
.pp-form input::placeholder { color: rgba(232, 224, 208, 0.28); }

.pp-form button[type="submit"],
.pp-form input[type="submit"],
.pp-form .pp-form-button {
  width: 100%;
  background: var(--mk-gold);
  color: var(--mk-black);
  border: none;
  font-family: var(--mk-sans);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 12px;
  padding: 18px 32px;
  cursor: pointer;
  transition: all var(--mk-dur-base) var(--mk-ease);
  margin-top: 16px;
}
.pp-form button[type="submit"]:hover {
  background: var(--mk-cream);
  transform: translateY(-2px);
}
.pp-form a {
  color: var(--mk-gold);
  text-decoration: none;
  font-size: 14px;
  letter-spacing: 0.05em;
}
.pp-form a:hover { text-decoration: underline; }

.pp-account-tabs,
.pp-myaccount {
  font-family: var(--mk-sans);
  color: var(--mk-cream);
}
.pp-account-tabs li {
  font-size: 12px;
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
.pp-account-tabs a {
  color: var(--mk-cream-dim);
  border-bottom: 1px solid transparent;
  padding-bottom: 8px;
  transition: all var(--mk-dur-base) var(--mk-ease);
}
.pp-account-tabs a.active,
.pp-account-tabs a:hover {
  color: var(--mk-gold);
  border-bottom-color: var(--mk-gold);
}

.pp-form .pp-error,
.pp-form .pp-message-error {
  background: rgba(220, 38, 38, 0.1);
  border-left: 2px solid #dc2626;
  color: var(--mk-cream);
  padding: 16px 20px;
  font-size: 14px;
  margin-bottom: 24px;
}
.pp-form .pp-success,
.pp-form .pp-message-success {
  background: var(--mk-gold-soft);
  border-left: 2px solid var(--mk-gold);
  color: var(--mk-cream);
  padding: 16px 20px;
  font-size: 14px;
  margin-bottom: 24px;
}

/* =========================================================================
   ProfilePress Live-DOM Overrides — Phase 5
   PP nutzt eigene IDs/Klassen mit hoher Spezifität (.pp-form-container
   #pp-login-1.ppBuildScratch …) und liefert Inline-CSS. Wir matchen die
   echten Live-Selektoren und erzwingen Brand-Look mit !important.
   Pages: 1109 login · 1111 registrierung · 1113 passwort-vergessen · 1115 mein-konto
   ========================================================================= */

/* Astra-Header/Footer auf PP-Pages neutralisieren — die Forms sollen frei stehen */
body.page-id-1109,
body.page-id-1111,
body.page-id-1113 {
  background: var(--mk-black) !important;
  color: var(--mk-cream);
  min-height: 100vh;
}

body.page-id-1109 #masthead,
body.page-id-1109 .ast-mobile-header-wrap,
body.page-id-1111 #masthead,
body.page-id-1111 .ast-mobile-header-wrap,
body.page-id-1113 #masthead,
body.page-id-1113 .ast-mobile-header-wrap {
  display: none !important;
}

body.page-id-1109 #content,
body.page-id-1111 #content,
body.page-id-1113 #content {
  background: var(--mk-black);
  min-height: 100vh;
  padding: 0 !important;
}

body.page-id-1109 .entry-header,
body.page-id-1111 .entry-header,
body.page-id-1113 .entry-header { display: none !important; }

body.page-id-1109 .ast-container,
body.page-id-1111 .ast-container,
body.page-id-1113 .ast-container {
  max-width: none !important;
  padding: 0 !important;
}

/* PP-Form Container = mittig, max-width, dark luxury card */
body.page-id-1109 .pp-form-container,
body.page-id-1111 .pp-form-container,
body.page-id-1113 .pp-form-container {
  max-width: 480px !important;
  width: 100% !important;
  margin: clamp(48px, 8vw, 96px) auto !important;
  padding: clamp(40px, 5vw, 56px) clamp(28px, 4vw, 48px) !important;
  background: var(--mk-black-2) !important;
  border: 1px solid rgba(201,168,76,0.20) !important;
  position: relative;
}
body.page-id-1109 .pp-form-container::before,
body.page-id-1111 .pp-form-container::before,
body.page-id-1113 .pp-form-container::before {
  content: '';
  position: absolute;
  inset: -1px;
  border: 1px solid rgba(201,168,76,0.10);
  transform: translate(10px, 10px);
  pointer-events: none;
  z-index: -1;
}

/* PP-Form-Wrapper innen — Inline-PP-CSS Reset */
body .pp-form-container .pp-form-wrapper.ppBuildScratch {
  background: transparent !important;
  color: var(--mk-cream) !important;
  font-family: var(--mk-sans) !important;
  font-size: 16px !important;
}
body .pp-form-container .pp-form-wrapper.ppBuildScratch * {
  font-family: var(--mk-sans) !important;
}
body .pp-form-container .pp-form-wrapper.ppBuildScratch h1,
body .pp-form-container .pp-form-wrapper.ppBuildScratch h2,
body .pp-form-container .pp-form-wrapper.ppBuildScratch h3,
body .pp-form-container .pp-form-wrapper.ppBuildScratch .ppbs-headline {
  font-family: var(--mk-serif) !important;
  font-weight: 400 !important;
  color: var(--mk-cream) !important;
  letter-spacing: -0.01em !important;
}

/* Field-Labels */
body .pp-form-container .pp-form-wrapper .pp-form-label-wrap .pp-form-label {
  font-family: var(--mk-sans) !important;
  font-size: 11px !important;
  letter-spacing: 0.32em !important;
  text-transform: uppercase !important;
  color: var(--mk-gold) !important;
  font-weight: 500 !important;
}

/* Inputs (text/email/password) */
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap input[type="text"],
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap input[type="email"],
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap input[type="password"],
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap input[type="tel"],
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap select,
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap textarea {
  width: 100% !important;
  background: rgba(232,224,208,0.04) !important;
  border: none !important;
  border-bottom: 1px solid rgba(232,224,208,0.22) !important;
  border-radius: 0 !important;
  color: var(--mk-cream) !important;
  font-family: var(--mk-sans) !important;
  font-size: 16px !important;
  padding: 14px 0 14px 36px !important;
  margin-bottom: 8px !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color var(--mk-dur-base) var(--mk-ease), background var(--mk-dur-base) var(--mk-ease) !important;
}
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap input:focus,
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap select:focus,
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap textarea:focus {
  border-bottom-color: var(--mk-gold) !important;
  background: rgba(232,224,208,0.07) !important;
  box-shadow: none !important;
}
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap ::placeholder {
  color: rgba(232,224,208,0.36) !important;
}

/* Material-Icon links */
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap .pp-form-material-icons {
  color: var(--mk-gold) !important;
  left: 0 !important;
  right: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  position: absolute !important;
  font-size: 18px !important;
  pointer-events: none;
}
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap.field-has-icon .pp-form-field-input-textarea-wrap {
  position: relative !important;
}
/* Default-PP-Klasse fia-right — wir ziehen Icon nach links */
body .pp-form-container .pp-form-wrapper.ppfia-right .pp-form-field-wrap .pp-form-material-icons {
  left: 0 !important;
  right: auto !important;
}

/* Field-Wrapper: Spacing zwischen den Feldern */
body .pp-form-container .pp-form-wrapper .pp-form-field-wrap {
  margin-bottom: 28px !important;
}

/* Submit Button */
body .pp-form-container .pp-form-wrapper .pp-form-submit-button-wrap input[type="submit"],
body .pp-form-container .pp-form-wrapper .pp-form-submit-button-wrap button,
body .pp-form-container .pp-form-wrapper .ppform-submit-button {
  width: 100% !important;
  background: var(--mk-gold) !important;
  color: var(--mk-black) !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: var(--mk-sans) !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  padding: 18px 32px !important;
  cursor: pointer !important;
  transition: all var(--mk-dur-base) var(--mk-ease) !important;
  margin-top: 12px !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
body .pp-form-container .pp-form-wrapper .pp-form-submit-button-wrap input[type="submit"]:hover,
body .pp-form-container .pp-form-wrapper .pp-form-submit-button-wrap button:hover,
body .pp-form-container .pp-form-wrapper .ppform-submit-button:hover {
  background: var(--mk-cream) !important;
  color: var(--mk-black) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 36px rgba(201,168,76,0.30) !important;
}

/* Bottom-Links (Passwort vergessen, Registrieren) */
body .pp-form-container .ppress-form-bottom-links {
  padding-top: 20px !important;
  text-align: center !important;
  border-top: 1px solid rgba(232,224,208,0.10) !important;
  margin-top: 24px !important;
}
body .pp-form-container .ppress-form-bottom-links a {
  font-family: var(--mk-sans) !important;
  font-size: 12px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--mk-gold) !important;
  text-decoration: none !important;
  border-bottom: none !important;
  margin: 0 12px !important;
}
body .pp-form-container .ppress-form-bottom-links a:hover {
  color: var(--mk-cream) !important;
  text-decoration: underline !important;
}

/* Fehler-/Erfolgs-Meldungen */
body .pp-form-container .profilepress-login-status,
body .pp-form-container .pp-form-wrapper .ppress-form-error,
body .pp-form-container .pp-form-wrapper .pp-form-error {
  background: rgba(220, 38, 38, 0.12) !important;
  border-left: 2px solid #dc2626 !important;
  color: #fbbab8 !important;
  padding: 14px 18px !important;
  font-family: var(--mk-sans) !important;
  font-size: 14px !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 20px !important;
  border-radius: 0 !important;
}
body .pp-form-container .profilepress-login-status.success {
  background: rgba(201, 168, 76, 0.14) !important;
  border-left: 2px solid var(--mk-gold) !important;
  color: var(--mk-cream) !important;
}

/* Kleines Brand-Logo oben über der Form */
body.page-id-1109 .pp-form-container::after,
body.page-id-1111 .pp-form-container::after,
body.page-id-1113 .pp-form-container::after {
  content: '#MACHABERAUCH';
  display: block;
  position: absolute;
  top: -54px;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--mk-serif);
  font-style: italic;
  font-size: 22px;
  color: var(--mk-gold);
  letter-spacing: 0.02em;
  white-space: nowrap;
}

/* Mein-Konto / Account-Dashboard (page 1115) — sichtbar nur eingeloggt */
body.page-id-1115 {
  background: var(--mk-black) !important;
  color: var(--mk-cream);
}
body.page-id-1115 .entry-header { display: none !important; }
body.page-id-1115 .ast-container {
  max-width: 1100px !important;
  padding: clamp(40px, 5vw, 80px) clamp(20px, 4vw, 48px) !important;
}
body.page-id-1115 .pp-form-container,
body.page-id-1115 .pp-edit-profile,
body.page-id-1115 .pp-myaccount {
  background: var(--mk-black-2) !important;
  border: 1px solid rgba(201,168,76,0.18) !important;
  padding: clamp(32px, 4vw, 48px) !important;
  color: var(--mk-cream) !important;
  font-family: var(--mk-sans) !important;
}
body.page-id-1115 h1, body.page-id-1115 h2, body.page-id-1115 h3 {
  font-family: var(--mk-serif) !important;
  font-weight: 400 !important;
  color: var(--mk-cream) !important;
}

/* Mobile */
@media (max-width: 600px) {
  body.page-id-1109 .pp-form-container,
  body.page-id-1111 .pp-form-container,
  body.page-id-1113 .pp-form-container {
    margin: 64px 16px !important;
    padding: 32px 24px !important;
  }
  body.page-id-1109 .pp-form-container::after,
  body.page-id-1111 .pp-form-container::after,
  body.page-id-1113 .pp-form-container::after {
    font-size: 18px;
    top: -42px;
  }
}

/* =========================================================================
   Phase 6 — Checkout (1194) · Bestellung erfolgreich (1196) · Bestellung fehlgeschlagen (1198)
   ========================================================================= */

/* Checkout-Page (1194) — dark luxury Frame um den PP-Checkout */
body.page-id-1194 {
  background: var(--mk-black) !important;
  color: var(--mk-cream);
}
body.page-id-1194 #masthead,
body.page-id-1194 .ast-mobile-header-wrap {
  display: none !important;
}
body.page-id-1194 #content {
  background: var(--mk-black) !important;
  padding: 0 !important;
}
body.page-id-1194 .entry-header { display: none !important; }
body.page-id-1194 .ast-container {
  max-width: 720px !important;
  padding: clamp(48px, 8vw, 96px) clamp(20px, 4vw, 32px) !important;
}

/* PP Checkout-Form */
body.page-id-1194 .ppress-checkout__form {
  background: var(--mk-black-2) !important;
  border: 1px solid rgba(201,168,76,0.20) !important;
  padding: clamp(32px, 5vw, 56px) clamp(24px, 4vw, 48px) !important;
  position: relative;
  margin: 0 auto !important;
}
body.page-id-1194 .ppress-checkout__form::before {
  content: '#MACHABERAUCH';
  position: absolute;
  top: -54px; left: 50%;
  transform: translateX(-50%);
  font-family: var(--mk-serif);
  font-style: italic;
  font-size: 22px;
  color: var(--mk-gold);
  white-space: nowrap;
}

/* Section-Headers innerhalb checkout */
body.page-id-1194 .ppress-checkout-section,
body.page-id-1194 .ppress-checkout-summary,
body.page-id-1194 .ppress-checkout_order_summary {
  background: transparent !important;
  color: var(--mk-cream) !important;
  font-family: var(--mk-sans) !important;
}
body.page-id-1194 .ppress-checkout-section h2,
body.page-id-1194 .ppress-checkout-section h3,
body.page-id-1194 .ppress-checkout-summary h2,
body.page-id-1194 .ppress-checkout-summary h3 {
  font-family: var(--mk-serif) !important;
  font-weight: 400 !important;
  color: var(--mk-cream) !important;
  letter-spacing: -0.01em !important;
  border: none !important;
}

/* Inputs */
body.page-id-1194 .ppress-checkout-section input[type="text"],
body.page-id-1194 .ppress-checkout-section input[type="email"],
body.page-id-1194 .ppress-checkout-section input[type="password"],
body.page-id-1194 .ppress-checkout-section input[type="tel"],
body.page-id-1194 .ppress-checkout-section select,
body.page-id-1194 .ppress-checkout-section textarea {
  width: 100% !important;
  background: rgba(232,224,208,0.04) !important;
  border: none !important;
  border-bottom: 1px solid rgba(232,224,208,0.22) !important;
  border-radius: 0 !important;
  color: var(--mk-cream) !important;
  font-family: var(--mk-sans) !important;
  font-size: 16px !important;
  padding: 14px 16px !important;
  outline: none !important;
  box-shadow: none !important;
}
body.page-id-1194 .ppress-checkout-section input:focus,
body.page-id-1194 .ppress-checkout-section select:focus,
body.page-id-1194 .ppress-checkout-section textarea:focus {
  border-bottom-color: var(--mk-gold) !important;
  background: rgba(232,224,208,0.07) !important;
}
body.page-id-1194 .ppress-checkout-section label {
  font-family: var(--mk-sans) !important;
  font-size: 11px !important;
  letter-spacing: 0.32em !important;
  text-transform: uppercase !important;
  color: var(--mk-gold) !important;
  font-weight: 500 !important;
}

/* Submit / Pay Button */
body.page-id-1194 .ppress-checkout__form button[type="submit"],
body.page-id-1194 .ppress-checkout__form input[type="submit"],
body.page-id-1194 .ppress-checkout__form .ppress-checkout__pay-btn {
  background: var(--mk-gold) !important;
  color: var(--mk-black) !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: var(--mk-sans) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  padding: 18px 32px !important;
  cursor: pointer !important;
  width: 100% !important;
  transition: all var(--mk-dur-base) var(--mk-ease) !important;
  box-shadow: none !important;
}
body.page-id-1194 .ppress-checkout__form button[type="submit"]:hover {
  background: var(--mk-cream) !important;
  transform: translateY(-2px);
}

/* Order-Summary (Total, Tax) */
body.page-id-1194 .ppress-checkout-summary,
body.page-id-1194 .ppress-checkout_order_summary {
  border-top: 1px solid rgba(201,168,76,0.20) !important;
  padding-top: 24px !important;
  margin-top: 24px !important;
}
body.page-id-1194 .ppress-checkout-summary table,
body.page-id-1194 .ppress-checkout_order_summary table {
  width: 100% !important;
  border-collapse: collapse !important;
}
body.page-id-1194 .ppress-checkout-summary td,
body.page-id-1194 .ppress-checkout-summary th,
body.page-id-1194 .ppress-checkout_order_summary td,
body.page-id-1194 .ppress-checkout_order_summary th {
  font-family: var(--mk-sans) !important;
  color: var(--mk-cream) !important;
  padding: 10px 0 !important;
  border: none !important;
  font-size: 15px !important;
}
body.page-id-1194 .ppress-checkout-summary tr:last-child td,
body.page-id-1194 .ppress-checkout_order_summary tr:last-child td {
  font-size: 18px !important;
  color: var(--mk-gold) !important;
  font-weight: 600 !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(201,168,76,0.20) !important;
}

/* Bestellung erfolgreich (1196) — dark luxury Container, PP-Order-Details rendert drin */
body.page-id-1196,
body.page-id-1198 {
  background: var(--mk-black) !important;
  color: var(--mk-cream);
}
body.page-id-1196 #masthead,
body.page-id-1198 #masthead { display: block; }
body.page-id-1196 #content,
body.page-id-1198 #content {
  background: var(--mk-black) !important;
  min-height: 70vh;
}
body.page-id-1196 .entry-header,
body.page-id-1198 .entry-header { display: none !important; }

body.page-id-1196 .ast-container,
body.page-id-1198 .ast-container {
  max-width: 720px !important;
  padding: clamp(64px, 10vw, 128px) clamp(20px, 4vw, 32px) !important;
}

body.page-id-1196 .entry-content,
body.page-id-1198 .entry-content {
  background: var(--mk-black-2) !important;
  border: 1px solid rgba(201,168,76,0.20) !important;
  padding: clamp(32px, 5vw, 56px) !important;
  position: relative;
  margin-top: 64px !important;
}
body.page-id-1196 .entry-content::before,
body.page-id-1198 .entry-content::before {
  position: absolute;
  top: -56px; left: 50%;
  transform: translateX(-50%);
  font-family: var(--mk-serif);
  font-style: italic;
  font-size: 22px;
  color: var(--mk-gold);
  white-space: nowrap;
  display: block;
}
body.page-id-1196 .entry-content::before { content: 'Willkommen, Macher.'; }
body.page-id-1198 .entry-content::before { content: 'Etwas ist schiefgelaufen.'; }

/* Style PP-Order-Output auf /bestellung-erfolgreich/ */
body.page-id-1196 .profilepress-myaccount-orders-subs,
body.page-id-1196 .profilepress-myaccount {
  font-family: var(--mk-sans) !important;
  color: var(--mk-cream) !important;
}
body.page-id-1196 .profilepress-myaccount-alert {
  background: rgba(201,168,76,0.10) !important;
  border-left: 2px solid var(--mk-gold) !important;
  color: var(--mk-cream) !important;
  padding: 16px 20px !important;
  font-family: var(--mk-sans) !important;
  font-size: 15px !important;
  margin: 16px 0 !important;
  border-radius: 0 !important;
}
body.page-id-1196 .profilepress-myaccount-alert.pp-alert-danger {
  background: rgba(220,38,38,0.12) !important;
  border-left-color: #dc2626 !important;
  color: #fbbab8 !important;
}
body.page-id-1196 .profilepress-myaccount h2,
body.page-id-1196 .profilepress-myaccount h3 {
  font-family: var(--mk-serif) !important;
  font-weight: 400 !important;
  color: var(--mk-cream) !important;
}
body.page-id-1196 .profilepress-myaccount table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 16px 0 !important;
}
body.page-id-1196 .profilepress-myaccount td,
body.page-id-1196 .profilepress-myaccount th {
  border: none !important;
  border-bottom: 1px solid rgba(201,168,76,0.15) !important;
  padding: 12px 8px !important;
  color: var(--mk-cream) !important;
  font-size: 14px !important;
}

body.page-id-1196 .entry-content p,
body.page-id-1198 .entry-content p {
  font-family: var(--mk-sans) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: var(--mk-cream-dim) !important;
}
body.page-id-1196 .entry-content a,
body.page-id-1198 .entry-content a {
  color: var(--mk-gold) !important;
  text-decoration: none !important;
}
body.page-id-1196 .entry-content a:hover,
body.page-id-1198 .entry-content a:hover { text-decoration: underline !important; }

/* mk-Buttons in den Bestell-Pages */
.mk-bestell-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: var(--mk-gold);
  color: var(--mk-black);
  font-family: var(--mk-sans);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  padding: 16px 32px;
  border: none;
  text-decoration: none;
  margin-top: 24px;
  transition: all var(--mk-dur-base) var(--mk-ease);
}
.mk-bestell-cta:hover {
  background: var(--mk-cream);
  transform: translateY(-2px);
  box-shadow: 0 16px 50px rgba(201,168,76,0.30);
}
.mk-bestell-cta-ghost {
  background: transparent;
  color: var(--mk-cream);
  border: 1px solid var(--mk-gold);
}
.mk-bestell-cta-ghost:hover {
  background: var(--mk-gold);
  color: var(--mk-black);
}

/* =========================================================================
   Stripe-Block in /mein-konto/ (Anhang E) — auf 1115 die Subscription-Anzeige
   PP rendert mit Klassen .ppress_dynamic_user_meta_subscriptions o.ä.
   Wir setzen breit gewollte Selektoren mit !important.
   ========================================================================= */

body.page-id-1115 .pp-subscription-info,
body.page-id-1115 .pp-stripe-block,
body.page-id-1115 .ppress-stripe-customer-portal,
body.page-id-1115 [class*="subscription"],
body.page-id-1115 [class*="stripe"] {
  background: var(--mk-black-2) !important;
  border: 1px solid rgba(201,168,76,0.20) !important;
  padding: clamp(28px, 4vw, 40px) !important;
  margin: 24px 0 !important;
  color: var(--mk-cream) !important;
  font-family: var(--mk-sans) !important;
}
body.page-id-1115 .pp-subscription-status-active,
body.page-id-1115 [class*="status-active"],
body.page-id-1115 [class*="active"] {
  color: var(--mk-gold) !important;
  font-weight: 600 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
}
body.page-id-1115 .pp-subscription-status-canceled,
body.page-id-1115 [class*="canceled"] {
  color: rgba(220,38,38,0.90) !important;
}
body.page-id-1115 .pp-customer-portal-link,
body.page-id-1115 a[href*="billing.stripe.com"],
body.page-id-1115 a[href*="customer-portal"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  background: transparent !important;
  color: var(--mk-cream) !important;
  border: 1px solid var(--mk-gold) !important;
  padding: 14px 28px !important;
  font-family: var(--mk-sans) !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.20em !important;
  font-size: 12px !important;
  text-decoration: none !important;
  margin-top: 16px !important;
  transition: all var(--mk-dur-base) var(--mk-ease) !important;
}
body.page-id-1115 .pp-customer-portal-link:hover,
body.page-id-1115 a[href*="billing.stripe.com"]:hover,
body.page-id-1115 a[href*="customer-portal"]:hover {
  background: var(--mk-gold) !important;
  color: var(--mk-black) !important;
}
