/* Global CSS for Elementor HTML blocks and optional site shell */

/* Palette and sizing tokens derived from the reference image: deep burgundy, hot pink CTA, warm gold/orange accents, white text. */
body.mb-site,
.mb-site-header,
.mb-page-strip,
.mb-site-footer,
.mb-article,
.mbpk-article,
.mbpk-page .mb-article {
  --mb-container: 1120px;
  --mb-site-gutter: clamp(16px, 4vw, 32px);

  --mb-bg-0: #120006;
  --mb-bg-1: #21020b;
  --mb-bg-2: #350815;
  --mb-surface: #230711;
  --mb-surface-2: #310917;
  --mb-surface-3: #421021;

  --mb-text: #fff8f4;
  --mb-text-soft: #f4d8dd;
  --mb-muted: #c9a2aa;
  --mb-muted-2: #98727b;

  --mb-primary: #f00662;
  --mb-primary-2: #ff2f7f;
  --mb-primary-3: #c9004d;
  --mb-gold: #ffd36a;
  --mb-orange: #ff9b22;
  --mb-red: #ff3030;
  --mb-blue: #1469aa;

  --mb-border: rgba(255, 211, 106, 0.18);
  --mb-border-pink: rgba(255, 47, 127, 0.35);
  --mb-shadow: 0 24px 70px rgba(0, 0, 0, 0.44);
  --mb-glow: 0 0 34px rgba(240, 6, 98, 0.32), 0 0 80px rgba(255, 155, 34, 0.13);

  --mb-radius-sm: 12px;
  --mb-radius-md: 18px;
  --mb-radius-lg: 28px;
  --mb-radius-xl: 36px;
  --mb-pill: 999px;

  --mb-space-1: clamp(8px, 1.2vw, 12px);
  --mb-space-2: clamp(12px, 1.7vw, 18px);
  --mb-space-3: clamp(18px, 2.4vw, 28px);
  --mb-space-4: clamp(26px, 3.4vw, 42px);
  --mb-space-5: clamp(36px, 4.8vw, 64px);
  --mb-space-6: clamp(48px, 6vw, 86px);

  --mb-font: "Inter", "Segoe UI", Arial, sans-serif;
}

/* Scoped box sizing only. */
body.mb-site,
.mb-site-header,
.mb-site-header *,
.mb-site-header *::before,
.mb-site-header *::after,
.mb-page-strip,
.mb-page-strip *,
.mb-page-strip *::before,
.mb-page-strip *::after,
.mb-site-footer,
.mb-site-footer *,
.mb-site-footer *::before,
.mb-site-footer *::after,
.mb-article,
.mb-article *,
.mb-article *::before,
.mb-article *::after,
.mbpk-article,
.mbpk-article *,
.mbpk-article *::before,
.mbpk-article *::after {
  box-sizing: border-box;
}

/* Optional assembled site shell. */
body.mb-site {
  margin: 0;
  min-height: 100vh;
  color: var(--mb-text);
  font-family: var(--mb-font);
  line-height: 1.65;
  background:
    radial-gradient(circle at 78% 8%, rgba(255, 155, 34, 0.18) 0 12%, transparent 33%),
    radial-gradient(circle at 22% 0%, rgba(240, 6, 98, 0.22) 0 10%, transparent 35%),
    linear-gradient(135deg, var(--mb-bg-0) 0%, var(--mb-bg-1) 42%, #070003 100%);
}

body.mb-site img {
  max-width: 100%;
  height: auto;
}

body.mb-site > main,
body.mb-site .mb-site-main {
  width: 100%;
  max-width: calc(var(--mb-container) + (var(--mb-site-gutter) * 2));
  margin-inline: auto;
  padding: var(--mb-site-gutter);
}

/* Header, topbar, and rounded navigation. */
.mb-site-header {
  width: 100%;
  color: var(--mb-text);
  background:
    linear-gradient(180deg, rgba(18, 0, 6, 0.94), rgba(18, 0, 6, 0.72)),
    radial-gradient(circle at 80% 0%, rgba(240, 6, 98, 0.18), transparent 42%);
  border-bottom: 1px solid rgba(255, 211, 106, 0.12);
}

.mb-site-header__inner,
.mb-topbar__inner,
.mb-page-strip__inner,
.mb-site-footer__inner {
  width: min(100%, var(--mb-container));
  margin-inline: auto;
  padding-inline: var(--mb-site-gutter);
}

.mb-topbar {
  color: var(--mb-muted);
  font-size: 0.9rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.mb-topbar__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 18px;
  padding-block: 8px;
  min-width: 0;
}

.mb-site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(14px, 3vw, 34px);
  padding-block: clamp(14px, 2.4vw, 24px);
  min-width: 0;
}

.mb-brand,
.mb-logo,
.mb-site-title {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  color: var(--mb-text);
  font-weight: 900;
  letter-spacing: 0.02em;
  text-decoration: none;
}

.mb-brand img,
.mb-logo img {
  display: block;
  max-height: 44px;
  width: auto;
}

.mb-brand__mark {
  display: inline-grid;
  place-items: center;
  inline-size: 40px;
  block-size: 40px;
  flex: 0 0 auto;
  color: #ffffff;
  background: radial-gradient(circle at 35% 25%, var(--mb-gold), var(--mb-orange) 48%, var(--mb-primary) 100%);
  border-radius: 50%;
  box-shadow: 0 0 26px rgba(240, 6, 98, 0.32);
}

.mb-site-nav,
.mb-site-nav ul,
.mb-menu,
.mb-footer-nav,
.mb-footer-nav ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 6px;
  list-style: none;
  border-radius: var(--mb-pill);
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 211, 106, 0.14);
}

.mb-site-nav a,
.mb-menu a,
.mb-footer-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  max-width: 100%;
  padding: 10px 16px;
  color: var(--mb-text-soft);
  font-weight: 750;
  line-height: 1.2;
  text-decoration: none;
  border-radius: var(--mb-pill);
  overflow-wrap: anywhere;
  transition: color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.mb-site-nav a:hover,
.mb-menu a:hover,
.mb-footer-nav a:hover,
.mb-site-nav a:focus-visible,
.mb-menu a:focus-visible,
.mb-footer-nav a:focus-visible {
  color: #ffffff;
  background: linear-gradient(135deg, rgba(240, 6, 98, 0.86), rgba(255, 155, 34, 0.74));
  box-shadow: 0 10px 30px rgba(240, 6, 98, 0.22);
  outline: none;
  transform: translateY(-1px);
}

/* Page title and breadcrumbs strip. */
.mb-page-strip {
  color: var(--mb-text);
  background:
    linear-gradient(90deg, rgba(240, 6, 98, 0.13), rgba(255, 155, 34, 0.08), rgba(240, 6, 98, 0.06)),
    rgba(18, 0, 6, 0.58);
  border-block: 1px solid rgba(255, 255, 255, 0.06);
}

.mb-page-strip__inner {
  padding-block: clamp(16px, 3vw, 30px);
}

.mb-page-title {
  margin-block: 0 0.35em;
  color: #ffffff;
  font-size: clamp(1.75rem, 3.4vw, 3rem);
  line-height: 1.08;
  letter-spacing: -0.035em;
}

.mb-breadcrumbs,
.mb-breadcrumbs a {
  color: var(--mb-muted);
  font-size: 0.95rem;
}

.mb-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  max-width: 100%;
  min-width: 0;
}

.mb-breadcrumbs a {
  text-decoration: none;
}

.mb-breadcrumbs a:hover {
  color: var(--mb-gold);
}

/* Footer. */
.mb-site-footer {
  width: 100%;
  margin-block-start: var(--mb-space-6);
  color: var(--mb-muted);
  background:
    radial-gradient(circle at 18% 0%, rgba(240, 6, 98, 0.16), transparent 38%),
    linear-gradient(180deg, rgba(18, 0, 6, 0.6), rgba(8, 0, 3, 0.96));
  border-top: 1px solid rgba(255, 211, 106, 0.12);
}

.mb-site-footer__inner {
  display: grid;
  gap: var(--mb-space-3);
  padding-block: clamp(28px, 4vw, 54px);
}

.mb-site-footer a {
  color: var(--mb-text-soft);
}

.mb-site-footer a:hover {
  color: var(--mb-gold);
}

/* Article root container. */
.mb-article,
.mbpk-article,
.mbpk-page .mb-article {
  direction: ltr;
  text-align: left;
  width: min(100%, var(--mb-container));
  max-width: var(--mb-container);
  margin-inline: auto;
  padding: clamp(16px, 3vw, 30px);
  box-sizing: border-box;
  min-width: 0;
  color: var(--mb-text);
  font-family: var(--mb-font);
  font-size: clamp(1rem, 0.4vw + 0.93rem, 1.075rem);
  line-height: 1.72;
  background:
    radial-gradient(circle at 88% 4%, rgba(255, 155, 34, 0.16), transparent 32%),
    radial-gradient(circle at 8% 10%, rgba(240, 6, 98, 0.18), transparent 34%),
    linear-gradient(180deg, rgba(49, 9, 23, 0.98), rgba(18, 0, 6, 0.98));
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-xl);
  box-shadow: var(--mb-shadow);
  overflow-wrap: break-word;
  word-break: normal;
  isolation: isolate;
}

body.mb-site .mb-article,
body.mb-site .mbpk-article {
  margin-block: var(--mb-space-5);
}

.mb-article__inner,
.mbpk-article .mb-article__inner {
  width: 100%;
  max-width: var(--mb-container);
  margin-inline: auto;
  min-width: 0;
}

[dir="rtl"] .mb-article,
.mb-article[dir="rtl"],
[dir="rtl"] .mbpk-article,
.mbpk-article[dir="rtl"] {
  direction: rtl;
  text-align: right;
}

/* Scoped media and overflow safety. */
.mb-article img,
.mbpk-article img,
.mb-article video,
.mbpk-article video,
.mb-article iframe,
.mbpk-article iframe,
.mb-article embed,
.mbpk-article embed,
.mb-article object,
.mbpk-article object,
.mb-article svg,
.mbpk-article svg {
  max-width: 100%;
}

.mb-article img,
.mbpk-article img {
  height: auto;
  border: 0;
}

.mb-article :where(.mb-row, .mb-copy, .mb-media, .mb-hero, .mb-hero__copy, .mb-hero__media, .mb-cta, .mb-cta__copy, .mb-cta__actions, .mb-grid, .mb-slot-grid, .mb-card, .mb-card__body, .mb-card__copy, .mb-table-wrap, .mb-faq),
.mbpk-article :where(.mb-row, .mb-copy, .mb-media, .mb-hero, .mb-hero__copy, .mb-hero__media, .mb-cta, .mb-cta__copy, .mb-cta__actions, .mb-grid, .mb-slot-grid, .mb-card, .mb-card__body, .mb-card__copy, .mb-table-wrap, .mb-faq) {
  min-width: 0;
  max-width: 100%;
}

/* Typography. */
.mb-article :is(h1, h2, h3, h4, h5, h6),
.mbpk-article :is(h1, h2, h3, h4, h5, h6) {
  max-width: 100%;
  margin-block-start: 0;
  margin-block-end: 0.62em;
  color: #ffffff;
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -0.035em;
  text-align: start;
  text-wrap: balance;
}

.mb-article h1,
.mbpk-article h1 {
  font-size: clamp(2.35rem, 5.5vw, 4.65rem);
}

.mb-article h2,
.mbpk-article h2 {
  font-size: clamp(1.8rem, 3.6vw, 3rem);
}

.mb-article h3,
.mbpk-article h3 {
  font-size: clamp(1.38rem, 2.4vw, 2.05rem);
}

.mb-article h4,
.mbpk-article h4 {
  font-size: clamp(1.15rem, 1.5vw, 1.42rem);
}

.mb-article h5,
.mbpk-article h5,
.mb-article h6,
.mbpk-article h6 {
  font-size: 1rem;
  letter-spacing: 0.01em;
}

.mb-article p,
.mbpk-article p {
  max-width: 100%;
  margin-block-start: 0;
  margin-block-end: 1.05em;
  color: var(--mb-text-soft);
  text-align: start;
}

.mb-article :where(.mb-copy, .mb-hero__copy, .mb-cta__copy, .mb-card__copy, .mb-card__body, ul, ol),
.mbpk-article :where(.mb-copy, .mb-hero__copy, .mb-cta__copy, .mb-card__copy, .mb-card__body, ul, ol) {
  max-width: 100%;
  margin-inline: 0;
}

.mb-article .mb-measure,
.mbpk-article .mb-measure {
  max-width: min(72ch, 100%);
  margin-inline: auto;
}

.mb-article :where(.mb-copy, .mb-hero__copy, .mb-cta__copy, .mb-card__body) > :last-child,
.mbpk-article :where(.mb-copy, .mb-hero__copy, .mb-cta__copy, .mb-card__body) > :last-child {
  margin-block-end: 0;
}

.mb-article a:not(.mb-btn),
.mbpk-article a:not(.mb-btn) {
  color: var(--mb-gold);
  text-decoration-color: rgba(255, 211, 106, 0.5);
  text-underline-offset: 0.18em;
}

.mb-article a:not(.mb-btn):hover,
.mbpk-article a:not(.mb-btn):hover {
  color: #ffffff;
  text-decoration-color: var(--mb-primary-2);
}

.mb-article strong,
.mbpk-article strong {
  color: #ffffff;
  font-weight: 850;
}

.mb-article em,
.mbpk-article em {
  color: var(--mb-text);
}

.mb-article small,
.mbpk-article small {
  color: var(--mb-muted);
}

.mb-article blockquote,
.mbpk-article blockquote {
  max-width: 100%;
  margin: var(--mb-space-3) 0;
  padding: clamp(16px, 2.5vw, 26px);
  color: var(--mb-text-soft);
  background: linear-gradient(135deg, rgba(240, 6, 98, 0.12), rgba(255, 155, 34, 0.07));
  border: 1px solid var(--mb-border-pink);
  border-inline-start: 4px solid var(--mb-primary-2);
  border-radius: var(--mb-radius-md);
}

/* Lists. */
.mb-article ul,
.mb-article ol,
.mbpk-article ul,
.mbpk-article ol {
  padding-inline-start: 1.35em;
  padding-inline-end: 0;
  margin-block-start: 0;
  margin-block-end: 1.15em;
  color: var(--mb-text-soft);
}

.mb-article li,
.mbpk-article li {
  max-width: 100%;
  padding-inline-start: 0.15em;
}

.mb-article li + li,
.mbpk-article li + li {
  margin-block-start: 0.45em;
}

.mb-article li::marker,
.mbpk-article li::marker {
  color: var(--mb-gold);
  font-weight: 850;
}

/* Buttons and action containers. */
.mb-actions,
.mb-hero__actions,
.mb-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.mb-btn,
.mb-article .mb-btn,
.mbpk-article .mb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55em;
  width: auto;
  max-width: 100%;
  min-width: 0;
  min-inline-size: 0;
  padding: 0.95em 1.55em;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--mb-pill);
  font: inherit;
  font-weight: 900;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
  transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease;
}

:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn {
  color: #ffffff;
  background:
    radial-gradient(circle at 25% 18%, rgba(255, 255, 255, 0.28), transparent 28%),
    linear-gradient(135deg, var(--mb-primary-2) 0%, var(--mb-primary) 54%, #be0049 100%);
  box-shadow: 0 14px 34px rgba(240, 6, 98, 0.36), 0 0 38px rgba(240, 6, 98, 0.18);
}

:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn:hover,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn:hover,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn:hover {
  color: #ffffff;
  background:
    radial-gradient(circle at 25% 18%, rgba(255, 255, 255, 0.34), transparent 30%),
    linear-gradient(135deg, #ff4a91 0%, var(--mb-primary) 48%, #d90057 100%);
  border-color: rgba(255, 211, 106, 0.35);
  box-shadow: 0 18px 42px rgba(240, 6, 98, 0.44), 0 0 56px rgba(255, 155, 34, 0.16);
  transform: translateY(-2px);
}

:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn:focus-visible,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn:focus-visible,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn:focus-visible {
  color: #ffffff;
  outline: 3px solid rgba(255, 211, 106, 0.82);
  outline-offset: 3px;
}

:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn--secondary,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn--secondary,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn--secondary {
  color: #ffffff;
  background: linear-gradient(135deg, rgba(255, 211, 106, 0.12), rgba(255, 47, 127, 0.09));
  border-color: rgba(255, 211, 106, 0.44);
  box-shadow: none;
}

:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn--secondary:hover,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn--secondary:hover,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn--secondary:hover {
  color: #ffffff;
  background: linear-gradient(135deg, rgba(255, 155, 34, 0.28), rgba(240, 6, 98, 0.22));
  border-color: rgba(255, 211, 106, 0.76);
}

:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn--accent,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn--accent,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn--accent {
  color: #1a0208;
  background: linear-gradient(135deg, #ffe18a, var(--mb-orange));
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: 0 14px 36px rgba(255, 155, 34, 0.25);
}

:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn--accent:hover,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn--accent:hover,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn--accent:hover,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) a.mb-btn--accent:focus-visible,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) button.mb-btn--accent:focus-visible,
:is(.mb-article, .mbpk-article, .mbpk-page .mb-article) .mb-btn--accent:focus-visible {
  color: #1a0208;
  background: linear-gradient(135deg, #fff0b3, #ffb23d);
}

/* Hero. */
.mb-hero {
  --mb-hero-pad: clamp(18px, 4vw, 42px);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "media"
    "copy";
  gap: 0;
  align-items: start;
  width: 100%;
  max-width: var(--mb-container);
  margin-inline: auto;
  margin-block: 0 var(--mb-space-5);
  padding-inline: 0;
  padding-block-start: 0;
  padding-block-end: clamp(18px, 3vw, 34px);
  min-width: 0;
  overflow: visible;
  color: var(--mb-text);
  background:
    radial-gradient(circle at 78% 15%, rgba(255, 155, 34, 0.18), transparent 36%),
    radial-gradient(circle at 18% 20%, rgba(240, 6, 98, 0.2), transparent 38%),
    linear-gradient(135deg, rgba(66, 16, 33, 0.96), rgba(25, 0, 8, 0.96));
  border: 1px solid var(--mb-border-pink);
  border-radius: var(--mb-radius-xl);
  box-shadow: var(--mb-glow);
}

.mb-hero__media {
  grid-area: media;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 9;
  padding: 0;
  overflow: clip;
  border-radius: var(--mb-radius-xl) var(--mb-radius-xl) var(--mb-radius-md) var(--mb-radius-md);
  background: #090003;
  box-shadow: inset 0 0 0 1px rgba(255, 211, 106, 0.12), 0 20px 65px rgba(0, 0, 0, 0.32);
}

.mb-hero__media img,
.mb-hero__media picture,
.mb-hero__media picture img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.mb-hero__media img,
.mb-hero__media picture img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center;
  transition: transform 420ms ease, filter 420ms ease;
}

.mb-hero__media:hover {
  cursor: pointer;
}

.mb-hero__media:hover img {
  transform: scale(1.035);
  filter: saturate(1.08) contrast(1.04);
}

.mb-hero__copy {
  grid-area: copy;
  width: 100%;
  max-width: 100%;
  padding-inline: var(--mb-hero-pad);
  padding-block-start: clamp(18px, 3.6vw, 42px);
  min-width: 0;
}

.mb-hero__badge,
.mb-badge,
.mb-eyebrow {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  margin-block-end: var(--mb-space-2);
  padding: 0.42em 0.82em;
  color: var(--mb-gold);
  font-size: 0.84rem;
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border: 1px solid rgba(255, 211, 106, 0.34);
  border-radius: var(--mb-pill);
  background: rgba(255, 211, 106, 0.08);
  box-shadow: none;
}

.mb-hero__title {
  margin-block-end: 0.38em;
}

.mb-hero__lead,
.mb-lead {
  color: var(--mb-text-soft);
  font-size: clamp(1.08rem, 1.2vw, 1.32rem);
  line-height: 1.58;
}

.mb-hero > .mb-cta {
  width: calc(100% - (var(--mb-hero-pad) + var(--mb-hero-pad)));
  max-width: none;
  margin-inline: var(--mb-hero-pad);
  margin-block-start: var(--mb-space-4);
  margin-block-end: 0;
}

/* Rows and content sections. */
.mb-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "media"
    "copy";
  align-items: start;
  gap: var(--mb-space-3);
  width: 100%;
  max-width: var(--mb-container);
  margin-inline: auto;
  margin-block: 0 var(--mb-space-5);
  padding: clamp(16px, 3vw, 30px);
  min-width: 0;
  overflow: visible;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.045), rgba(240, 6, 98, 0.055));
  border: 1px solid rgba(255, 211, 106, 0.12);
  border-radius: var(--mb-radius-lg);
}

.mb-row--reverse {
  grid-template-areas:
    "copy"
    "media";
}

.mb-row--stack,
.mb-row--long {
  grid-template-areas:
    "media"
    "copy";
}

.mb-row--stack.mb-row--reverse,
.mb-row--long.mb-row--reverse {
  grid-template-areas:
    "copy"
    "media";
}

.mb-copy {
  grid-area: copy;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding-block-start: 0;
  align-self: start;
}

.mb-media {
  grid-area: media;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  aspect-ratio: 2 / 3;
  padding: 0;
  overflow: clip;
  align-self: start;
  border-radius: var(--mb-radius-lg);
  background: #090003;
  box-shadow: inset 0 0 0 1px rgba(255, 211, 106, 0.12), 0 18px 48px rgba(0, 0, 0, 0.34), 0 0 34px rgba(240, 6, 98, 0.14);
}

figure.mb-media {
  margin: 0;
}

.mb-media img,
.mb-media picture,
.mb-media picture img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.mb-media img,
.mb-media picture img {
  aspect-ratio: 2 / 3;
  object-fit: cover;
  object-position: center;
  transition: transform 420ms ease, filter 420ms ease, box-shadow 420ms ease;
}

.mb-media:hover {
  cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(255, 211, 106, 0.24), 0 22px 58px rgba(0, 0, 0, 0.4), 0 0 46px rgba(240, 6, 98, 0.26);
}

.mb-media:hover img {
  transform: scale(1.04);
  filter: saturate(1.08) contrast(1.04);
}

@supports not (overflow: clip) {
  .mb-hero__media,
  .mb-media,
  .mb-card__media {
    overflow: hidden;
  }
}

/* CTA blocks. */
.mb-cta {
  display: grid;
  gap: var(--mb-space-2);
  width: 100%;
  max-width: var(--mb-container);
  margin-inline: auto;
  margin-block: 0 var(--mb-space-5);
  padding: clamp(20px, 4vw, 42px);
  min-width: 0;
  overflow: visible;
  color: var(--mb-text);
  background:
    radial-gradient(circle at 88% 24%, rgba(255, 211, 106, 0.16), transparent 32%),
    linear-gradient(135deg, rgba(240, 6, 98, 0.2), rgba(66, 16, 33, 0.94));
  border: 1px solid var(--mb-border-pink);
  border-radius: var(--mb-radius-lg);
  box-shadow: 0 18px 55px rgba(0, 0, 0, 0.28), 0 0 38px rgba(240, 6, 98, 0.14);
}

.mb-cta__title {
  margin-block-end: 0.25em;
}

.mb-cta__copy {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.mb-cta__actions {
  margin-block-start: var(--mb-space-1);
}

/* Grids and cards. */
.mb-article .mb-grid,
.mb-article .mb-slot-grid,
.mbpk-article .mb-grid,
.mbpk-article .mb-slot-grid,
.mbpk-page .mb-article .mb-grid,
.mbpk-page .mb-article .mb-slot-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--mb-space-3);
  align-items: stretch;
  width: 100%;
  max-width: var(--mb-container);
  margin-inline: auto;
  margin-block: 0 var(--mb-space-5);
  min-width: 0;
}

.mb-article .mb-grid > .mb-card,
.mb-article .mb-slot-grid > .mb-card,
.mbpk-article .mb-grid > .mb-card,
.mbpk-article .mb-slot-grid > .mb-card,
.mbpk-page .mb-article .mb-grid > .mb-card,
.mbpk-page .mb-article .mb-slot-grid > .mb-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto 1fr;
  gap: 0;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow: visible;
  color: var(--mb-text);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025));
  border: 1px solid rgba(255, 211, 106, 0.13);
  border-radius: var(--mb-radius-lg);
  box-shadow: 0 16px 45px rgba(0, 0, 0, 0.25);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.mb-article .mb-grid > .mb-card:hover,
.mb-article .mb-slot-grid > .mb-card:hover,
.mbpk-article .mb-grid > .mb-card:hover,
.mbpk-article .mb-slot-grid > .mb-card:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 211, 106, 0.28);
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.34), 0 0 34px rgba(240, 6, 98, 0.17);
}

.mb-card__media {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  aspect-ratio: 2 / 3;
  padding: 0;
  overflow: clip;
  border-radius: var(--mb-radius-lg) var(--mb-radius-lg) var(--mb-radius-sm) var(--mb-radius-sm);
  background: #090003;
}

.mb-card__media img,
.mb-card__media picture,
.mb-card__media picture img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.mb-card__media img,
.mb-card__media picture img {
  aspect-ratio: 2 / 3;
  object-fit: cover;
  object-position: center;
  transition: transform 420ms ease, filter 420ms ease;
}

.mb-card:hover .mb-card__media img {
  transform: scale(1.04);
  filter: saturate(1.08) contrast(1.04);
}

.mb-card__body {
  display: grid;
  align-content: start;
  gap: 0.65rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: clamp(16px, 2.5vw, 24px);
}

.mb-card__title {
  margin-block-end: 0.35em;
  font-size: clamp(1.14rem, 1.4vw, 1.42rem);
}

.mb-card__copy {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  color: var(--mb-text-soft);
}

.mb-card > :not(.mb-card__media):not(.mb-card__body) {
  max-width: 100%;
  margin-inline: 0;
  padding-inline: clamp(16px, 2.5vw, 24px);
}

.mb-card > :not(.mb-card__media):not(.mb-card__body):first-child {
  padding-block-start: clamp(16px, 2.5vw, 24px);
}

.mb-card > :not(.mb-card__media):not(.mb-card__body):last-child {
  padding-block-end: clamp(16px, 2.5vw, 24px);
}

.mb-grid__intro,
.mb-slot-grid__intro {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

/* FAQ. */
.mb-faq {
  width: 100%;
  max-width: var(--mb-container);
  margin-inline: auto;
  margin-block: 0 var(--mb-space-5);
  min-width: 0;
}

.mb-faq details {
  width: 100%;
  max-width: 100%;
  margin-block-end: var(--mb-space-2);
  padding: 0;
  overflow: visible;
  color: var(--mb-text-soft);
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(255, 211, 106, 0.13);
  border-radius: var(--mb-radius-md);
}

.mb-faq summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  max-width: 100%;
  padding: clamp(16px, 2.4vw, 24px);
  color: #ffffff;
  font-weight: 850;
  line-height: 1.35;
  cursor: pointer;
  list-style: none;
}

.mb-faq summary::-webkit-details-marker {
  display: none;
}

.mb-faq summary::after {
  content: "+";
  display: inline-grid;
  place-items: center;
  inline-size: 1.65em;
  block-size: 1.65em;
  flex: 0 0 auto;
  color: #1a0208;
  background: linear-gradient(135deg, var(--mb-gold), var(--mb-orange));
  border-radius: 50%;
}

.mb-faq details[open] summary::after {
  content: "–";
}

.mb-faq details > :not(summary) {
  max-width: 100%;
  padding-inline: clamp(16px, 2.4vw, 24px);
}

.mb-faq details > :last-child {
  padding-block-end: clamp(16px, 2.4vw, 24px);
}

/* Tables: horizontal scrolling stays inside the wrapper. */
.mb-table-wrap {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-block: var(--mb-space-3) var(--mb-space-5);
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
  touch-action: pan-x;
  border: 1px solid rgba(255, 211, 106, 0.15);
  border-radius: var(--mb-radius-md);
  background: rgba(255, 255, 255, 0.035);
}

table.mb-table {
  width: 100%;
  min-width: 600px;
  direction: ltr;
  border-collapse: separate;
  border-spacing: 0;
  color: var(--mb-text-soft);
  background: rgba(18, 0, 6, 0.52);
  font-size: 0.96rem;
  line-height: 1.45;
}

table.mb-table caption {
  caption-side: top;
  padding: 14px 16px;
  color: #ffffff;
  font-weight: 850;
  text-align: start;
}

table.mb-table th,
table.mb-table td {
  padding: 14px 16px;
  text-align: start;
  vertical-align: top;
  border-block-end: 1px solid rgba(255, 255, 255, 0.08);
}

table.mb-table th {
  color: #ffffff;
  font-weight: 850;
  background: linear-gradient(135deg, rgba(240, 6, 98, 0.22), rgba(255, 155, 34, 0.12));
}

table.mb-table tr:last-child td {
  border-block-end: 0;
}

table.mb-table tbody tr:hover td {
  background: rgba(255, 255, 255, 0.035);
}

[dir="rtl"] table.mb-table,
.mb-article[dir="rtl"] table.mb-table,
.mbpk-article[dir="rtl"] table.mb-table {
  direction: rtl;
}

/* Standalone separators only. */
.mb-divider {
  width: 100%;
  max-width: var(--mb-container);
  height: 1px;
  margin: var(--mb-space-5) auto;
  border: 0;
  background: linear-gradient(90deg, transparent, rgba(255, 211, 106, 0.32), rgba(240, 6, 98, 0.32), transparent);
}

/* Code and embedded content safety. */
.mb-article pre,
.mbpk-article pre {
  max-width: 100%;
  margin-block: var(--mb-space-3);
  padding: 16px;
  overflow-x: auto;
  color: var(--mb-text-soft);
  background: rgba(0, 0, 0, 0.34);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--mb-radius-md);
}

.mb-article code,
.mbpk-article code {
  color: var(--mb-gold);
  overflow-wrap: anywhere;
}

.mb-article .alignwide,
.mb-article .alignfull,
.mbpk-article .alignwide,
.mbpk-article .alignfull {
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
}

/* Tablet grid: maximum two columns below desktop. */
@media (min-width: 640px) and (max-width: 979.98px) {
  .mb-article .mb-grid,
  .mb-article .mb-slot-grid,
  .mbpk-article .mb-grid,
  .mbpk-article .mb-slot-grid,
  .mbpk-page .mb-article .mb-grid,
  .mbpk-page .mb-article .mb-slot-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Desktop layout. */
@media (min-width: 980px) {
  .mb-row:not(.mb-row--stack):not(.mb-row--long) {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    grid-template-areas: "copy media";
    gap: var(--mb-space-4);
  }

  .mb-row--reverse:not(.mb-row--stack):not(.mb-row--long) {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    grid-template-areas: "media copy";
  }

  .mb-row--stack,
  .mb-row--long {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "media"
      "copy";
  }

  .mb-row--stack.mb-row--reverse,
  .mb-row--long.mb-row--reverse {
    grid-template-areas:
      "copy"
      "media";
  }

  .mb-article .mb-grid,
  .mb-article .mb-slot-grid,
  .mbpk-article .mb-grid,
  .mbpk-article .mb-slot-grid,
  .mbpk-page .mb-article .mb-grid,
  .mbpk-page .mb-article .mb-slot-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .mb-article .mb-grid--orphan-fix,
  .mb-article .mb-slot-grid--orphan-fix,
  .mbpk-article .mb-grid--orphan-fix,
  .mbpk-article .mb-slot-grid--orphan-fix,
  .mbpk-page .mb-article .mb-grid--orphan-fix,
  .mbpk-page .mb-article .mb-slot-grid--orphan-fix {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .mb-article .mb-grid--orphan-fix > .mb-card,
  .mb-article .mb-slot-grid--orphan-fix > .mb-card,
  .mbpk-article .mb-grid--orphan-fix > .mb-card,
  .mbpk-article .mb-slot-grid--orphan-fix > .mb-card,
  .mbpk-page .mb-article .mb-grid--orphan-fix > .mb-card,
  .mbpk-page .mb-article .mb-slot-grid--orphan-fix > .mb-card {
    grid-column: span 2;
  }

  .mb-article .mb-grid--orphan-fix > .mb-card:nth-last-child(2):nth-child(3n + 1),
  .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 2),
  .mb-article .mb-slot-grid--orphan-fix > .mb-card:nth-last-child(2):nth-child(3n + 1),
  .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 2),
  .mbpk-article .mb-grid--orphan-fix > .mb-card:nth-last-child(2):nth-child(3n + 1),
  .mbpk-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 2),
  .mbpk-article .mb-slot-grid--orphan-fix > .mb-card:nth-last-child(2):nth-child(3n + 1),
  .mbpk-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 2),
  .mbpk-page .mb-article .mb-grid--orphan-fix > .mb-card:nth-last-child(2):nth-child(3n + 1),
  .mbpk-page .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 2),
  .mbpk-page .mb-article .mb-slot-grid--orphan-fix > .mb-card:nth-last-child(2):nth-child(3n + 1),
  .mbpk-page .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 2) {
    grid-column: span 3;
  }

  .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1),
  .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1),
  .mbpk-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1),
  .mbpk-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1),
  .mbpk-page .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1),
  .mbpk-page .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
    align-items: start;
  }

  .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  .mbpk-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  .mbpk-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  .mbpk-page .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  .mbpk-page .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media {
    grid-column: 2;
    grid-row: 1;
    border-radius: 0 var(--mb-radius-lg) var(--mb-radius-lg) 0;
  }

  .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  .mbpk-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  .mbpk-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  .mbpk-page .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  .mbpk-page .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
  }

  .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > :not(.mb-card__media):not(.mb-card__body),
  .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > :not(.mb-card__media):not(.mb-card__body),
  .mbpk-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > :not(.mb-card__media):not(.mb-card__body),
  .mbpk-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > :not(.mb-card__media):not(.mb-card__body) {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
  }

  [dir="rtl"] .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  [dir="rtl"] .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  .mb-article[dir="rtl"] .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media,
  .mb-article[dir="rtl"] .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__media {
    grid-column: 1;
    border-radius: var(--mb-radius-lg) 0 0 var(--mb-radius-lg);
  }

  [dir="rtl"] .mb-article .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  [dir="rtl"] .mb-article .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  .mb-article[dir="rtl"] .mb-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body,
  .mb-article[dir="rtl"] .mb-slot-grid--orphan-fix > .mb-card:last-child:nth-child(3n + 1) > .mb-card__body {
    grid-column: 2;
  }
}

/* Mobile safety. */
@media (max-width: 639.98px) {
  body.mb-site > main,
  body.mb-site .mb-site-main {
    padding-inline: clamp(12px, 4vw, 18px);
  }

  .mb-site-header__inner,
  .mb-topbar__inner,
  .mb-page-strip__inner,
  .mb-site-footer__inner {
    padding-inline: clamp(12px, 4vw, 18px);
  }

  .mb-site-header__inner {
    flex-direction: column;
    align-items: stretch;
  }

  .mb-brand,
  .mb-logo,
  .mb-site-title {
    justify-content: center;
  }

  .mb-site-nav,
  .mb-site-nav ul,
  .mb-menu,
  .mb-footer-nav,
  .mb-footer-nav ul {
    width: 100%;
    justify-content: center;
    border-radius: var(--mb-radius-lg);
  }

  .mb-site-nav a,
  .mb-menu a,
  .mb-footer-nav a {
    flex: 1 1 auto;
    min-width: 0;
  }

  .mb-article,
  .mbpk-article,
  .mbpk-page .mb-article {
    width: 100%;
    max-width: 100%;
    padding-inline: clamp(14px, 4vw, 18px);
    border-radius: 24px;
  }

  .mb-hero {
    border-radius: 24px;
  }

  .mb-hero__media {
    border-radius: 24px 24px var(--mb-radius-md) var(--mb-radius-md);
  }

  .mb-hero__copy {
    padding-inline: clamp(16px, 5vw, 22px);
  }

  .mb-hero > .mb-cta {
    width: calc(100% - (clamp(16px, 5vw, 22px) + clamp(16px, 5vw, 22px)));
    margin-inline: clamp(16px, 5vw, 22px);
  }

  .mb-row,
  .mb-cta {
    padding: clamp(16px, 5vw, 22px);
    border-radius: 22px;
  }

  .mb-actions,
  .mb-hero__actions,
  .mb-cta__actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
  }

  .mb-btn,
  .mb-article .mb-btn,
  .mbpk-article .mb-btn,
  .mb-actions .mb-btn,
  .mb-hero__actions .mb-btn,
  .mb-cta__actions .mb-btn {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-inline-size: 0;
  }

  .mb-media,
  .mb-card__media,
  .mb-hero__media,
  .mb-media img,
  .mb-card__media img,
  .mb-hero__media img {
    max-width: 100%;
  }

  .mb-table-wrap {
    width: 100%;
    max-width: 100%;
    margin-block-end: var(--mb-space-5);
  }

  table.mb-table {
    min-width: 580px;
  }

  table.mb-table th,
  table.mb-table td {
    white-space: nowrap;
  }
}

/* fair-pages-kit: Beautiful Site TOC (converter-injected) */
.mb-article .mb-toc,
.mbpk-article .mb-toc,
.mbpk-page .mb-article .mb-toc {
  width: 100%;
  max-width: var(--mb-container);
  margin-inline: auto;
  margin-block-end: var(--mb-stack-gap, var(--mb-space-7, clamp(20px, 4vw, 42px)));
  padding: clamp(20px, 4vw, 36px) var(--mb-page-pad, var(--mb-gutter, clamp(16px, 3.4vw, 28px)));
  border: 1px solid var(--mb-border, rgba(255, 255, 255, 0.12));
  border-radius: var(--mb-radius-lg, 22px);
  background:
    radial-gradient(circle at 88% 10%, rgba(227, 178, 87, 0.12), transparent 16rem),
    linear-gradient(180deg, rgba(36, 16, 8, 0.94), rgba(27, 11, 5, 0.88));
  box-shadow: var(--mb-shadow, 0 22px 70px rgba(0, 0, 0, 0.42));
}

.mb-article .mb-toc__summary,
.mbpk-article .mb-toc__summary,
.mbpk-page .mb-article .mb-toc__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  cursor: pointer;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mb-article .mb-toc__summary::-webkit-details-marker,
.mbpk-article .mb-toc__summary::-webkit-details-marker,
.mbpk-page .mb-article .mb-toc__summary::-webkit-details-marker {
  display: none;
}

.mb-article .mb-toc__summary::after,
.mbpk-article .mb-toc__summary::after,
.mbpk-page .mb-article .mb-toc__summary::after {
  content: "+";
  flex: 0 0 auto;
  width: 1.75rem;
  height: 1.75rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--mb-border-strong, rgba(255, 255, 255, 0.24));
  border-radius: var(--mb-radius-sm, 12px);
  color: var(--mb-gold-2, #ffd985);
  font-size: 1.1rem;
  line-height: 1;
  transition: transform 0.2s ease, background 0.2s ease;
}

.mb-article .mb-toc[open] .mb-toc__summary::after,
.mbpk-article .mb-toc[open] .mb-toc__summary::after,
.mbpk-page .mb-article .mb-toc[open] .mb-toc__summary::after {
  content: "−";
}

.mb-article .mb-toc__title,
.mbpk-article .mb-toc__title,
.mbpk-page .mb-article .mb-toc__title {
  margin: 0;
  color: var(--mb-gold-2, #ffd985);
  font-size: clamp(1.15rem, 2.4vw, 1.45rem);
  line-height: 1.25;
}

.mb-article .mb-toc__list,
.mbpk-article .mb-toc__list,
.mbpk-page .mb-article .mb-toc__list {
  margin: clamp(14px, 2.5vw, 20px) 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: clamp(8px, 1.5vw, 12px);
}

.mb-article .mb-toc__list--sub,
.mbpk-article .mb-toc__list--sub,
.mbpk-page .mb-article .mb-toc__list--sub {
  margin: clamp(8px, 1.5vw, 10px) 0 0;
  padding-left: clamp(12px, 2vw, 18px);
  border-left: 1px solid var(--mb-border, rgba(255, 255, 255, 0.12));
}

.mb-article .mb-toc__item,
.mbpk-article .mb-toc__item,
.mbpk-page .mb-article .mb-toc__item {
  margin: 0;
}

.mb-article .mb-toc__link,
.mbpk-article .mb-toc__link,
.mbpk-page .mb-article .mb-toc__link {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  padding: 0.55rem 0.75rem;
  border-radius: var(--mb-radius-sm, 12px);
  color: var(--mb-text, var(--mb-ink, #f2f2ee));
  text-decoration: none;
  background: rgba(255, 246, 220, 0.03);
  border: 1px solid transparent;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.mb-article .mb-toc__num,
.mbpk-article .mb-toc__num,
.mbpk-page .mb-article .mb-toc__num {
  flex: 0 0 auto;
  min-width: 2.2rem;
  color: var(--mb-gold, #e3b257);
  font-variant-numeric: tabular-nums;
}

.mb-article .mb-toc__text,
.mbpk-article .mb-toc__text,
.mbpk-page .mb-article .mb-toc__text {
  flex: 1 1 auto;
}

.mb-article .mb-toc__link:hover,
.mbpk-article .mb-toc__link:hover,
.mbpk-page .mb-article .mb-toc__link:hover,
.mb-article .mb-toc__link:focus-visible,
.mbpk-article .mb-toc__link:focus-visible,
.mbpk-page .mb-article .mb-toc__link:focus-visible {
  color: var(--mb-gold-2, #ffd985);
  border-color: var(--mb-border-strong, rgba(255, 255, 255, 0.24));
  background: rgba(227, 178, 87, 0.08);
}

@media (max-width: 640px) {
  .mb-article .mb-toc,
  .mbpk-article .mb-toc,
  .mbpk-page .mb-article .mb-toc {
    max-width: 100%;
  }
}

