:root{
  --mb-bg: #ffffff;
  --mb-surface: #ffffff;
  --mb-surface-2: #f7f9ff;
  --mb-border: rgba(15, 23, 42, 0.10);
  --mb-border-strong: rgba(15, 23, 42, 0.14);
  --mb-text: #0b1220;
  --mb-muted: rgba(11, 18, 32, 0.65);

  --mb-primary: #2A46FF;
  --mb-primary-ink: #ffffff;

  --mb-radius-1: 10px;
  --mb-radius-2: 12px;
  --mb-radius-3: 18px;

  --mb-shadow-1: 0 10px 30px rgba(2, 6, 23, 0.08);
  --mb-shadow-2: 0 14px 40px rgba(2, 6, 23, 0.10);

  --mb-container: 1120px;
  --mb-container-narrow: 820px;

  --mb-s1: 6px;
  --mb-s2: 10px;
  --mb-s3: 14px;
  --mb-s4: 18px;
  --mb-s5: 24px;
  --mb-s6: 32px;
  --mb-s7: 44px;
  --mb-s8: 64px;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
body{
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Helvetica Neue", sans-serif;
  background: var(--mb-bg);
  color: var(--mb-text);
  line-height: 1.55;
}

a{ color: inherit; text-decoration: none; }
a:hover{ text-decoration: underline; }

.mb-container{
  width: min(var(--mb-container), calc(100% - 40px));
  margin: 0 auto;
}
.mb-container--narrow{
  width: min(var(--mb-container-narrow), calc(100% - 40px));
  margin: 0 auto;
}

.mb-main{ padding: var(--mb-s8) 0; }

.mb-h1{
  font-size: clamp(34px, 4.2vw, 56px);
  line-height: 1.06;
  letter-spacing: -0.02em;
  margin: 0 0 var(--mb-s4);
}
.mb-h2{
  font-size: clamp(22px, 2.3vw, 34px);
  line-height: 1.12;
  letter-spacing: -0.015em;
  margin: 0 0 var(--mb-s3);
}
.mb-subcopy{
  font-size: 16.5px;
  color: var(--mb-muted);
  margin: 0 0 var(--mb-s5);
}
.mb-meta{
  font-size: 13px;
  color: var(--mb-muted);
}

.mb-divider{
  height: 1px;
  background: var(--mb-border);
  margin: var(--mb-s6) 0;
}
.mb-header__divider{
  height: 1px;
  background: var(--mb-border);
}

.mb-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: var(--mb-radius-2);
  border: 1px solid var(--mb-border);
  background: var(--mb-surface);
  color: var(--mb-text);
  text-decoration: none !important;
  box-shadow: none;
  cursor: pointer;
  transition: transform .08s ease, box-shadow .12s ease, border-color .12s ease;
  font-weight: 600;
  font-size: 14px;
}
.mb-btn:hover{
  transform: translateY(-1px);
  box-shadow: var(--mb-shadow-1);
  border-color: var(--mb-border-strong);
}
.mb-btn--primary{
  background: var(--mb-primary);
  border-color: rgba(42, 70, 255, 0.35);
  color: var(--mb-primary-ink);
}
.mb-btn--ghost{
  background: #fff;
}
.mb-btn--sm{
  padding: 10px 14px;
  font-size: 13px;
}

.mb-header{
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(10px);
}
.mb-header__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--mb-s4);
  padding: 14px 0;
}
.mb-brand{
  display: flex;
  align-items: center;
  gap: 12px;
}
.mb-brand__mark{
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: var(--mb-primary);
  color: #fff;
  font-weight: 800;
}
.mb-brand__text{ display:flex; flex-direction:column; line-height:1.05; }
.mb-brand__name{ font-weight: 800; letter-spacing: -0.01em; }
.mb-brand__tagline{ font-size: 12px; color: var(--mb-muted); }

.mb-navToggle{
  display:none;
  width: 44px; height: 44px;
  border-radius: 12px;
  border: 1px solid var(--mb-border);
  background: #fff;
}
.mb-navToggle__bar{
  display:block;
  height:2px;
  width:18px;
  margin:4px auto;
  background: var(--mb-text);
  opacity: .75;
}

.mb-nav{ display:flex; align-items:center; gap: var(--mb-s4); }
.mb-nav__list{
  list-style:none;
  display:flex;
  gap: 18px;
  margin:0; padding:0;
}
.mb-nav__list a{
  font-size: 14px;
  color: rgba(11,18,32,0.74);
  font-weight: 600;
}
.mb-nav__list a:hover{ color: rgba(11,18,32,1); text-decoration:none; }
.mb-nav__cta{ display:flex; gap: 10px; align-items:center; }

@media (max-width: 980px){
  .mb-navToggle{ display:inline-flex; align-items:center; justify-content:center; }
  .mb-nav{
    position: absolute;
    left: 0;
    right: 0;
    top: 64px;
    background: #fff;
    border-bottom: 1px solid var(--mb-border);
    padding: 12px 20px 18px;
    display: none;
    flex-direction: column;
    align-items: stretch;
  }
  .mb-nav.is-open{ display:flex; }
  .mb-nav__list{ flex-direction: column; gap: 12px; }
  .mb-nav__cta{ justify-content:flex-start; flex-wrap: wrap; }
}

.mb-brand__logoWrap{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.mb-brand__logo--wordmark{ display: inline-flex; align-items:center; }
.mb-brand__wordmarkImg{
  height: 28px;
  width: auto;
  display: block;
}

.mb-brand__logo--mark{
  display: none;
  width: 34px;
  height: 34px;
}

@media (max-width: 520px){
  .mb-brand__tagline{ display:none; }
}

@media (max-width: 420px){
  .mb-brand__logo--wordmark{ display:none; }
  .mb-brand__logo--mark{ display:block; }
}

.mb-section{ padding: var(--mb-s8) 0; }
.mb-section--tight{ padding: var(--mb-s7) 0; }
.mb-card{
  background: var(--mb-surface);
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-3);
  box-shadow: var(--mb-shadow-1);
}
.mb-cardPad{ padding: var(--mb-s6); }
.mb-grid3{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--mb-s5);
}
.mb-grid2{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--mb-s5);
}
@media (max-width: 980px){
  .mb-grid3, .mb-grid2{ grid-template-columns: 1fr; }
}

.mb-hero{
  padding: var(--mb-s8) 0 var(--mb-s7);
}
.mb-hero--simple{
  padding: var(--mb-s7) 0;
}
.mb-ctaRow{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items:center;
}
.mb-disclosure{
  margin-top: 14px;
  font-size: 13px;
  color: var(--mb-muted);
}
.mb-disclosure a{ text-decoration: underline; }
.mb-disclosure--inline{ margin-top: 0; margin-bottom: var(--mb-s4); }

.mb-badgeRow{
  display:flex;
  gap:10px;
  align-items:center;
  margin-bottom:var(--mb-s3);
  flex-wrap:wrap;
}

.mb-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:6px 10px;
  border-radius:8px;

  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;

  background: rgba(11,18,32,0.06);

  font-size:12px;
  line-height:1.2;
  font-weight:600;
  letter-spacing:0.2px;

  color:rgba(11,18,32,0.75);
}

.mb-badge:focus,
.mb-badge:focus-visible{
  outline:0 !important;
  box-shadow:none !important;
}

.mb-prose p{ margin: 0 0 var(--mb-s4); }
.mb-prose h2{ margin-top: var(--mb-s7); }
.mb-prose h3{ margin-top: var(--mb-s6); }
.mb-prose ul{ margin: 0 0 var(--mb-s4) 18px; }

.mb-footer{
  border-top: 1px solid var(--mb-border);
  background: #fff;
  padding: var(--mb-s7) 0;
}
.mb-footer__inner{ display:flex; flex-direction:column; gap: var(--mb-s6); }
.mb-footer__top{
  display:flex;
  gap: var(--mb-s6);
  justify-content: space-between;
}
.mb-footer__brand{ max-width: 360px; }
.mb-footer__name{ font-weight: 900; letter-spacing: -0.01em; font-size: 16px; margin-bottom: 6px; }
.mb-footer__desc{ color: var(--mb-muted); font-size: 14px; margin-bottom: 10px; }

.mb-footer__cols{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--mb-s6);
}
.mb-footer__col{ display:flex; flex-direction:column; gap: 10px; }
.mb-footer__hd{ font-weight: 800; font-size: 13px; color: rgba(11,18,32,0.8); margin-bottom: 2px; }
.mb-footer__col a{ font-size: 14px; color: rgba(11,18,32,0.72); }
.mb-footer__col a:hover{ color: rgba(11,18,32,1); text-decoration:none; }

.mb-footer__bottom{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: var(--mb-s4);
  padding-top: var(--mb-s4);
  border-top: 1px solid var(--mb-border);
}
.mb-footer__copy{ font-size: 13px; color: var(--mb-muted); }

@media (max-width: 980px){
  .mb-footer__top{ flex-direction: column; }
  .mb-footer__cols{ grid-template-columns: 1fr 1fr; }
}
.mb-form {
  display: grid;
  gap: var(--mb-s4);
  margin-top: var(--mb-s4);
}
.mb-field {
  display: grid;
  gap: 8px;
}
.mb-label {
  font-weight: 700;
  font-size: 13px;
  color: rgba(11,18,32,0.78);
}
.mb-input, .mb-select, .mb-textarea {
  width: 100%;
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-2);
  padding: 12px 12px;
  font-size: 14px;
  background: #fff;
  outline: none;
}
.mb-input:focus, .mb-select:focus, .mb-textarea:focus {
  border-color: var(--mb-border-strong);
  box-shadow: 0 0 0 4px rgba(42,70,255,0.10);
}
.mb-textarea { min-height: 110px; resize: vertical; }

.mb-help {
  font-size: 13px;
  color: var(--mb-muted);
}

.mb-acc{
  display: grid;
  gap: 10px;
  margin-top: var(--mb-s4);
}

.mb-acc .mb-acc__item{
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-3);
  background: #fff;
  overflow: hidden;
  box-shadow: var(--mb-shadow-1);
}

.mb-acc button.mb-acc__btn{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;

  padding: 14px 16px;

  background: transparent !important;
  border: 0 !important;
  outline: none;
  cursor: pointer;

  font: inherit;
  font-weight: 800;
  color: rgba(11,18,32,0.92);

  appearance: none;
  -webkit-appearance: none;
}

.mb-acc button.mb-acc__btn:hover{
  background: rgba(15, 23, 42, 0.02) !important;
}

.mb-acc button.mb-acc__btn:focus-visible{
  box-shadow: 0 0 0 4px rgba(42,70,255,0.10);
}

.mb-acc .mb-acc__btn > span:first-child{
  flex: 1 1 auto;
  min-width: 0;
}

.mb-acc .mb-acc__icon{
  width: 28px;
  height: 28px;
  border-radius: 10px;
  border: 1px solid var(--mb-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(11,18,32,0.65);
  flex: 0 0 auto;
  line-height: 1;
}

.mb-acc button.mb-acc__btn[aria-expanded="true"] .mb-acc__icon{
  transform: rotate(45deg);
}

.mb-acc .mb-acc__panel{
  padding: 0 16px 14px;
  color: rgba(11,18,32,0.78);
}

.mb-acc .mb-acc__panel p{
  margin: 0;
}

.mb-acc .mb-acc__panel a{
  text-decoration: underline;
  margin-left: 6px;
}

.mb-acc--cards{
  border: 0;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-shadow: none;
}
.mb-acc--cards .mb-acc__item{
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-3);
  background: #fff;
  overflow: hidden;
}
.mb-acc--cards .mb-acc__item + .mb-acc__item{
  border-top: 0;
  margin-top: var(--mb-s3);
}
.mb-acc--cards .mb-acc__btn{
  padding: 18px 22px;
  font-size: 16px;
}
.mb-acc--cards .mb-acc__panel{
  padding: 0 22px 18px;
}
.mb-acc--cards .mb-acc__icon{
  border: 0;
  width: auto;
  height: auto;
  border-radius: 0;
  font-weight: 900;
  font-size: 20px;
  color: rgba(11,18,32,0.90);
}
.mb-acc__btn:focus-visible{
  outline: none;
  box-shadow: 0 0 0 4px rgba(42,70,255,0.12);
  border-radius: var(--mb-radius-3);
}
.mb-acc__panel a{
  text-decoration: underline;
}

.mb-postList { display: grid; gap: var(--mb-s4); }
.mb-postCard {
  display: block;
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-3);
  background: #fff;
  padding: 16px 18px;
  box-shadow: var(--mb-shadow-1);
}
.mb-postCard:hover { text-decoration: none; box-shadow: var(--mb-shadow-2); }
.mb-postMeta { font-size: 12px; color: var(--mb-muted); font-weight: 700; margin-bottom: 6px; }
.mb-postTitle { font-weight: 900; letter-spacing: -0.01em; margin: 0 0 6px; }
.mb-postExcerpt { margin: 0 0 10px; color: rgba(11,18,32,0.72); }
.mb-postCta { font-weight: 800; font-size: 13px; color: rgba(11,18,32,0.82); }

body.single-post pre,
body.single-post .wp-block-code pre,
body.single-post .wp-block-preformatted pre {
  display: block;
  max-width: 100%;
  box-sizing: border-box;

  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;

  white-space: pre;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,0.10);
  background: rgba(42, 70, 255, 0.06);
}

body.single-post pre code {
  display: block;
  max-width: 100%;
  box-sizing: border-box;
}

.mb-postCardMedia{
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,0.06);
  background: rgba(0,0,0,0.03);
  margin-bottom: 12px;
}

.mb-postCardImg{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mb-postCardMediaPlaceholder{
  width: 100%;
  height: 100%;
}

:root{
  --mb-tint-primary: rgba(42, 70, 255, 0.06);
  --mb-tint-warn: rgba(245, 158, 11, 0.10);
  --mb-warn-border: rgba(245, 158, 11, 0.22);
}

.wp-block-group.mb-box,
.wp-block-group.mb-warn,
.wp-block-group.mb-cta{
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-3);
  background: var(--mb-surface);
  box-shadow: var(--mb-shadow-1);
  padding: var(--mb-s6);
  margin: var(--mb-s6) 0;
}

.wp-block-group.mb-box > h2,
.wp-block-group.mb-box > h3,
.wp-block-group.mb-warn > h2,
.wp-block-group.mb-warn > h3,
.wp-block-group.mb-cta > h2,
.wp-block-group.mb-cta > h3{
  margin-top: 0;
  margin-bottom: var(--mb-s2);
  color: rgba(11,18,32,0.92);
  letter-spacing: -0.01em;
}

.wp-block-group.mb-box p:last-child,
.wp-block-group.mb-warn p:last-child,
.wp-block-group.mb-cta p:last-child{
  margin-bottom: 0;
}

.wp-block-group.mb-box :where(ul,ol),
.wp-block-group.mb-warn :where(ul,ol),
.wp-block-group.mb-cta :where(ul,ol){
  margin: 0 0 var(--mb-s3) 18px;
}

.wp-block-group.mb-box{
  background: linear-gradient(0deg, var(--mb-tint-primary), var(--mb-tint-primary));
  border-color: rgba(42, 70, 255, 0.16);
}

.wp-block-group.mb-warn{
  background: linear-gradient(0deg, var(--mb-tint-warn), var(--mb-tint-warn));
  border-color: var(--mb-warn-border);
}

.wp-block-group.mb-cta{
  background: var(--mb-surface);
  border-color: rgba(42, 70, 255, 0.22);
  position: relative;
  overflow: hidden;
}

.wp-block-group.mb-cta:before{
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 6px;
  background: var(--mb-primary);
}

.wp-block-group.mb-cta a.mb-btn{
  text-decoration: none !important;
}
.wp-block-group.mb-cta a.mb-btn:hover{
  text-decoration: none !important;
}

.wp-block-group.mb-cta a:not(.mb-btn){
  font-weight: 800;
  text-decoration: underline;
}

@media (max-width: 680px){
  .wp-block-group.mb-box,
  .wp-block-group.mb-warn,
  .wp-block-group.mb-cta{
    padding: 18px;
    border-radius: var(--mb-radius-2);
  }
}

body.single-post .wp-block-table.mb-table{
  margin: var(--mb-s6) 0;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  border-radius: var(--mb-radius-3);
}

body.single-post .wp-block-table.mb-table table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 720px;
  background: #fff;
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-3);
  overflow: hidden;
}

body.single-post .wp-block-table.mb-table thead th{
  text-align: left;
  font-size: 12.5px;
  letter-spacing: 0.2px;
  text-transform: none;
  color: rgba(11,18,32,0.82);
  background: #fff;
  border-bottom: 1px solid var(--mb-border);
}

body.single-post .wp-block-table.mb-table th,
body.single-post .wp-block-table.mb-table td{
  padding: 12px 12px;
  border-right: 1px solid var(--mb-border);
  vertical-align: top;
}

body.single-post .wp-block-table.mb-table th:last-child,
body.single-post .wp-block-table.mb-table td:last-child{
  border-right: 0;
}

body.single-post .wp-block-table.mb-table tbody td{
  border-bottom: 1px solid var(--mb-border);
  color: rgba(11,18,32,0.78);
}

body.single-post .wp-block-table.mb-table tbody tr:last-child td{
  border-bottom: 0;
}

body.single-post .wp-block-table.mb-table figcaption{
  margin-top: 10px;
  font-size: 13px;
  color: var(--mb-muted);
}

body.single-post :is(figure,div).wp-block-table.mb-table{
  display: block;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

body.single-post :is(figure,div).wp-block-table.mb-table table{
  width: max-content; 
  min-width: 720px;
}

body.single-post .wp-block-buttons .wp-block-button.mb-btn .wp-block-button__link{
  border-radius: var(--mb-radius-2);
  padding: 12px 16px;
  font-weight: 800;
  text-decoration: none !important;
  border: 1px solid var(--mb-border);
  background: var(--mb-surface);
  color: var(--mb-text);
}

body.single-post .wp-block-buttons .wp-block-button.mb-btn.mb-btn--primary .wp-block-button__link{
  background: var(--mb-primary);
  color: var(--mb-primary-ink);
  border-color: rgba(42, 70, 255, 0.35);
}

body.single-post .wp-block-buttons .wp-block-button.mb-btn.mb-btn--ghost .wp-block-button__link{
  background: #fff;
}

body.single-post .wp-block-buttons .wp-block-button.mb-btn .wp-block-button__link:hover{
  transform: translateY(-1px);
  box-shadow: var(--mb-shadow-1);
  border-color: var(--mb-border-strong);
}
