/**
 * Alex Lamberti — Font-System (global)
 * MULTIVERSUM: Space Grotesk | NEXORA: Orbitron | PROFESSIONAL: Manrope | FREIRAUM: Syne
 * Navigation & roter Faden: Space Grotesk | Fliesstext: Space Grotesk (Professional: Manrope)
 */
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Orbitron:wght@500;600;700&family=Space+Grotesk:wght@400;500;600;700&family=Syne:wght@500;600;700;800&display=swap");

:root {
  --font-main: "Space Grotesk", system-ui, sans-serif;
  --font-nexora: "Orbitron", system-ui, sans-serif;
  --font-professional: "Manrope", system-ui, sans-serif;
  --font-freiraum: "Syne", system-ui, sans-serif;
}

/* ── Master-Shell (3-Welten-Master-iframe) ── */
html,
html body,
.mv4-bar,
.mv4-worlds button,
.mv4-fx,
.mv4-flag,
.mv-transition__title,
.mv4-transition__title {
  font-family: var(--font-main) !important;
}

.mv4-worlds button[data-world-key="nexora"] {
  font-family: var(--font-nexora) !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.mv4-worlds button[data-world-key="vertex"] {
  font-family: var(--font-professional) !important;
  letter-spacing: 0.02em !important;
}

.mv4-worlds button[data-world-key="freiraum"] {
  font-family: var(--font-freiraum) !important;
  letter-spacing: 0.03em !important;
}

/* ── Navigation: Space Grotesk (roter Faden) ── */
.experience-rail,
.experience-step,
.experience-step::after,
.menu-links a,
.btn-menu,
.btn-close,
.world-switch,
.world-btn,
.site-header .brand-mark,
.nexora-orbit-nav__btn {
  font-family: var(--font-main) !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
}

/* ══════════════════════════════════════
   MULTIVERSUM (general)
   ══════════════════════════════════════ */
body[data-world="general"],
html.mv-world-general body {
  font-family: var(--font-main) !important;
}

body[data-world="general"] h1,
body[data-world="general"] h2,
body[data-world="general"] h3,
body[data-world="general"] h4,
body[data-world="general"] .section-title,
body[data-world="general"] .exp-block-title,
body[data-world="general"] .world-intro,
body[data-world="general"] .menu-title,
body[data-world="general"] .chapter-label,
body[data-world="general"] .vz-kicker,
body[data-world="general"] .projects-accordion__label,
body[data-world="general"] .mv-scroll-slide h2,
body[data-world="general"] .mv-static-hero__tag,
body[data-world="general"] .mv-scroll-slide__body,
body[data-world="general"] .faq-question,
body[data-world="general"] .welten-world-switch__title {
  font-family: var(--font-main) !important;
  text-transform: none !important;
  letter-spacing: -0.02em !important;
}

body[data-world="general"] .btn,
body[data-world="general"] .btn-primary,
body[data-world="general"] .btn-open,
body[data-world="general"] .projects-accordion__trigger {
  font-family: var(--font-main) !important;
}

body[data-world="general"] p,
body[data-world="general"] .prose,
body[data-world="general"] li,
body[data-world="general"] .slide-inner,
body[data-world="general"] .contact-copy,
body[data-world="general"] .mv-scroll-slide__lead,
body[data-world="general"] .projects-intro,
body[data-world="general"] .faq-answer,
body[data-world="general"] .menu-kicker {
  font-family: var(--font-main) !important;
}

/* ══════════════════════════════════════
   NEXORA
   ══════════════════════════════════════ */
body[data-world="nexora"] {
  font-family: var(--font-main) !important;
}

body[data-world="nexora"] h1,
body[data-world="nexora"] h2,
body[data-world="nexora"] h3,
body[data-world="nexora"] h4,
body[data-world="nexora"] .section-title,
body[data-world="nexora"] .exp-block-title,
body[data-world="nexora"] .world-intro,
body[data-world="nexora"] .menu-title,
body[data-world="nexora"] .chapter-label,
body[data-world="nexora"] .vz-kicker,
body[data-world="nexora"] .projects-accordion__label,
body[data-world="nexora"] .mv-scroll-slide h2,
body[data-world="nexora"] .mv-static-hero__tag,
body[data-world="nexora"] .mv-scroll-slide__body,
body[data-world="nexora"] .faq-question,
body[data-world="nexora"] .welten-world-switch__title {
  font-family: var(--font-nexora) !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

body[data-world="nexora"] .btn,
body[data-world="nexora"] .btn-primary,
body[data-world="nexora"] .btn-open,
body[data-world="nexora"] .projects-accordion__trigger {
  font-family: var(--font-nexora) !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

body[data-world="nexora"] p,
body[data-world="nexora"] .prose,
body[data-world="nexora"] li,
body[data-world="nexora"] .glass-card p,
body[data-world="nexora"] .vz-row p,
body[data-world="nexora"] .slide-inner,
body[data-world="nexora"] .contact-copy,
body[data-world="nexora"] .mv-scroll-slide__lead,
body[data-world="nexora"] .projects-intro,
body[data-world="nexora"] .faq-answer,
body[data-world="nexora"] .menu-kicker {
  font-family: var(--font-main) !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

/* ══════════════════════════════════════
   PROFESSIONAL (vertex)
   ══════════════════════════════════════ */
body[data-world="vertex"] {
  font-family: var(--font-professional) !important;
}

body[data-world="vertex"] h1,
body[data-world="vertex"] h2,
body[data-world="vertex"] h3,
body[data-world="vertex"] h4,
body[data-world="vertex"] .section-title,
body[data-world="vertex"] .exp-block-title,
body[data-world="vertex"] .world-intro,
body[data-world="vertex"] .menu-title,
body[data-world="vertex"] .chapter-label,
body[data-world="vertex"] .vz-kicker,
body[data-world="vertex"] .projects-accordion__label,
body[data-world="vertex"] .mv-scroll-slide h2,
body[data-world="vertex"] .mv-static-hero__tag,
body[data-world="vertex"] .mv-scroll-slide__body,
body[data-world="vertex"] .faq-question,
body[data-world="vertex"] .welten-world-switch__title {
  font-family: var(--font-professional) !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

body[data-world="vertex"] .btn,
body[data-world="vertex"] .btn-primary,
body[data-world="vertex"] .btn-open,
body[data-world="vertex"] .projects-accordion__trigger {
  font-family: var(--font-professional) !important;
}

body[data-world="vertex"] p,
body[data-world="vertex"] .prose,
body[data-world="vertex"] li,
body[data-world="vertex"] .glass-card p,
body[data-world="vertex"] .vz-row p,
body[data-world="vertex"] .slide-inner,
body[data-world="vertex"] .contact-copy,
body[data-world="vertex"] .mv-scroll-slide__lead,
body[data-world="vertex"] .projects-intro,
body[data-world="vertex"] .faq-answer,
body[data-world="vertex"] .menu-kicker,
body[data-world="vertex"] input,
body[data-world="vertex"] textarea,
body[data-world="vertex"] select,
body[data-world="vertex"] label {
  font-family: var(--font-professional) !important;
}

/* ══════════════════════════════════════
   FREIRAUM
   ══════════════════════════════════════ */
body[data-world="freiraum"] {
  font-family: var(--font-main) !important;
}

body[data-world="freiraum"] h1,
body[data-world="freiraum"] h2,
body[data-world="freiraum"] h3,
body[data-world="freiraum"] h4,
body[data-world="freiraum"] .section-title,
body[data-world="freiraum"] .exp-block-title,
body[data-world="freiraum"] .world-intro,
body[data-world="freiraum"] .menu-title,
body[data-world="freiraum"] .chapter-label,
body[data-world="freiraum"] .vz-kicker,
body[data-world="freiraum"] .projects-accordion__label,
body[data-world="freiraum"] .mv-scroll-slide h2,
body[data-world="freiraum"] .mv-static-hero__tag,
body[data-world="freiraum"] .mv-scroll-slide__body,
body[data-world="freiraum"] .faq-question,
body[data-world="freiraum"] .welten-world-switch__title {
  font-family: var(--font-freiraum) !important;
  letter-spacing: 0.03em !important;
  text-transform: none !important;
}

body[data-world="freiraum"] .btn,
body[data-world="freiraum"] .btn-primary,
body[data-world="freiraum"] .btn-open,
body[data-world="freiraum"] .projects-accordion__trigger {
  font-family: var(--font-freiraum) !important;
}

body[data-world="freiraum"] p,
body[data-world="freiraum"] .prose,
body[data-world="freiraum"] li,
body[data-world="freiraum"] .glass-card p,
body[data-world="freiraum"] .vz-row p,
body[data-world="freiraum"] .slide-inner,
body[data-world="freiraum"] .contact-copy,
body[data-world="freiraum"] .mv-scroll-slide__lead,
body[data-world="freiraum"] .projects-intro,
body[data-world="freiraum"] .faq-answer,
body[data-world="freiraum"] .menu-kicker {
  font-family: var(--font-main) !important;
}

/* ── Responsive Typografie ── */
@media (max-width: 1200px) {
  body[data-world="nexora"] h1,
  body[data-world="nexora"] .home-copy h1,
  body[data-world="nexora"] .section-title {
    letter-spacing: 0.06em !important;
  }
}

@media (max-width: 900px) {
  body h1,
  body .home-copy h1 {
    font-size: clamp(1.85rem, 7vw, 2.65rem) !important;
  }

  body h2.section-title,
  body .section-title {
    font-size: clamp(1.45rem, 5.5vw, 2rem) !important;
  }

  body[data-world="nexora"] h1,
  body[data-world="nexora"] h2,
  body[data-world="nexora"] .section-title {
    letter-spacing: 0.05em !important;
  }

  .mv4-worlds button {
    font-size: 11px !important;
    padding: 8px 12px !important;
  }
}

@media (max-width: 600px) {
  body h1,
  body .home-copy h1 {
    font-size: clamp(1.65rem, 8.2vw, 2.2rem) !important;
    line-height: 1.1 !important;
  }

  body h2.section-title,
  body .section-title {
    font-size: clamp(1.28rem, 6.4vw, 1.72rem) !important;
  }

  body[data-world="nexora"] .world-intro,
  body[data-world="nexora"] .chapter-label {
    letter-spacing: 0.12em !important;
    font-size: 0.72rem !important;
  }

  body .world-intro {
    font-size: 0.78rem !important;
  }
}
