/**
 * Overrides Next.js export base (html { font-size: 10px }) for MusixFly pages.
 * Load LAST in site_head.php
 *
 * html 12px = readable body text without blowing up legacy rem footer/nav.
 */

html:has(body.mx-body) {
  font-size: 12px !important;
}

body.mx-body {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Nav */
body.mx-body .navigation_menuItem__6q9X2:link,
body.mx-body .navigation_menuItem__6q9X2:visited {
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
}

body.mx-body .navigation-mobile_menuItems__4eCpz a {
  font-size: 16px !important;
}

/* Main content — readable, not oversized */
body.mx-body main,
body.mx-body .page-wrap {
  font-size: 16px;
  line-height: 1.6;
  color: #fff;
}

body.mx-body main p,
body.mx-body main li,
body.mx-body .page-wrap p,
body.mx-body .page-wrap li {
  font-size: 17px !important;
  line-height: 1.6 !important;
  color: #a9bdda !important;
}

body.mx-body main h1,
body.mx-body .page-wrap h1 {
  font-size: clamp(40px, 6.5vw, 72px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
  font-weight: 800 !important;
  font-family: 'Space Grotesk', sans-serif !important;
}

body.mx-body main h2,
body.mx-body .page-wrap h2 {
  font-size: clamp(28px, 4.5vw, 48px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
  font-weight: 700 !important;
  font-family: 'Space Grotesk', sans-serif !important;
}

body.mx-body main h3,
body.mx-body .page-wrap h3 {
  font-size: 22px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

/* Home page uses musixfly-home.css scale */
body.mx-body .mf-home h1,
body.mx-body .mf-home h2,
body.mx-body .mf-home h3,
body.mx-body .mf-home p,
body.mx-body .mf-home li {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

body.mx-body main a:not(.mx-btn):not(.mf-btn):not(.plan-cta) {
  text-decoration: none;
}

body.mx-body main ul {
  padding-left: 0;
  list-style: none;
}

/* Footer — lock to compact sizes (legacy CSS uses 2rem / 1.6rem) */
body.mx-body .footer_footer__MbdlQ {
  padding: 40px 20px !important;
  font-size: 14px !important;
}

body.mx-body .footer_header__YUrrB {
  font-size: 15px !important;
  font-weight: 700 !important;
  margin-bottom: 4px !important;
}

body.mx-body .footer_footer__MbdlQ ul {
  gap: 8px !important;
}

body.mx-body .footer_footer__MbdlQ ul li {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

body.mx-body .footer_footer__MbdlQ ul a:link,
body.mx-body .footer_footer__MbdlQ ul a:visited {
  font-size: 14px !important;
}

body.mx-body .footer_columns__H4hQp {
  row-gap: 28px !important;
  column-gap: 24px !important;
}

body.mx-body .content_content__hiCNB.content_lg__0npCb {
  row-gap: 12px !important;
}
