/* ============================================================
   MOSTBET-LIKE GLOBAL CSS (Elementor + Urdu/RTL) — V2 (FIXED)
   Safe for Hello Elementor child theme / Additional CSS
   Scope: .mb-article / .mbpk-article (content) + header/footer only
   ============================================================ */

/* ---------------------------
   Design tokens
---------------------------- */
:root{
  --mb-bg:#ffffff;
  --mb-surface:#ffffff;
  --mb-text:#101828;
  --mb-muted:#475467;

  --mb-heading:#023974;
  --mb-primary:#023974;
  --mb-primary-2:#1d5bbf;
  --mb-accent:#ef6a22;

  --mb-border:rgba(16,24,40,.14);
  --mb-soft:rgba(2,57,116,.06);

  --mb-radius-sm:10px;
  --mb-radius-md:14px;
  --mb-radius-lg:18px;
  --mb-radius-xl:24px;

  --mb-shadow:0 10px 28px rgba(2,57,116,.12);
  --mb-shadow-sm:0 8px 18px rgba(2,57,116,.10);

  --mb-container:1160px;
  --mb-gap:26px;

  --mb-hero-bg:linear-gradient(135deg, rgba(2,57,116,.08), rgba(239,106,34,.10));
  --mb-cta-bg:linear-gradient(135deg, rgba(2,57,116,.08), rgba(2,57,116,.03));
  --mb-card-bg:#ffffff;

  --mb-focus:0 0 0 3px rgba(2,57,116,.22);
}

/* ============================================================
   Header / Footer helpers (optional)
   ============================================================ */
.elementor-location-header .mb-topbar{
  background:linear-gradient(135deg, rgba(2,57,116,.10), rgba(2,57,116,.04));
  border:1px solid var(--mb-border);
  border-radius:var(--mb-radius-xl);
  box-shadow:var(--mb-shadow-sm);
  padding:10px 14px;
  margin:12px auto 10px;
  max-width:var(--mb-container);
}
.elementor-location-header .mb-topbar,
.elementor-location-header .mb-topbar *{ direction:rtl; }

.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu{
  background:rgba(2,57,116,.06);
  border:1px solid var(--mb-border);
  border-radius:999px;
  padding:6px 8px;
  box-shadow:var(--mb-shadow-sm);
}
.elementor-location-header .elementor-nav-menu--main .elementor-item{
  border-radius:999px;
  padding:10px 14px !important;
  transition:transform .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease;
}
.elementor-location-header .elementor-nav-menu--main .elementor-item:hover{
  background:rgba(239,106,34,.10);
  transform:translateY(-1px);
}
.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active{
  background:rgba(2,57,116,.10);
  box-shadow:inset 0 0 0 1px rgba(2,57,116,.14);
}

.mb-title-strip{
  background:linear-gradient(135deg, rgba(2,57,116,.10), rgba(239,106,34,.06));
  border:1px solid var(--mb-border);
  border-radius:var(--mb-radius-xl);
  box-shadow:var(--mb-shadow-sm);
  padding:14px 16px;
  margin:14px auto 16px;
  max-width:var(--mb-container);
}
.mb-title-strip,
.mb-title-strip *{ direction:rtl; }

.elementor-location-footer .mb-footer{
  background:linear-gradient(135deg, rgba(2,57,116,.08), rgba(2,57,116,.03));
  border-top:1px solid var(--mb-border);
  padding:18px 14px;
}
.elementor-location-footer .mb-footer,
.elementor-location-footer .mb-footer *{ direction:rtl; }

.elementor-location-footer .elementor-nav-menu--main .elementor-nav-menu{
  background:rgba(2,57,116,.06);
  border:1px solid var(--mb-border);
  border-radius:999px;
  padding:6px 8px;
}
.elementor-location-footer .elementor-nav-menu--main .elementor-item{
  border-radius:999px;
  padding:10px 14px !important;
  transition:background-color .15s ease, transform .15s ease;
}
.elementor-location-footer .elementor-nav-menu--main .elementor-item:hover{
  background:rgba(239,106,34,.10);
  transform:translateY(-1px);
}

/* ============================================================
   Content scope (Elementor HTML widget)
   ============================================================ */
.mbpk-page .mb-article{ direction:rtl; }
.mbpk-page .mb-article, .mbpk-article{ text-align:right; }

.mb-article,
.mbpk-article{
  direction:rtl;
  text-align:right;

  color:var(--mb-text);
  background:transparent;

  font-family:"Noto Nastaliq Urdu","Noto Naskh Arabic","Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif;
  line-height:1.75;

  max-width:var(--mb-container);
  width:100%;
  margin:0 auto;
  padding:16px 14px 22px;

  overflow-wrap:anywhere;
}

/* Box sizing (scoped) */
.mb-article *, .mb-article *::before, .mb-article *::after,
.mbpk-article *, .mbpk-article *::before, .mbpk-article *::after{
  box-sizing:border-box;
}

/* Links */
.mb-article a, .mbpk-article a{
  color:var(--mb-primary);
  text-decoration:none;
  transition:color .15s ease, opacity .15s ease, transform .15s ease;
}
.mb-article a:hover, .mbpk-article a:hover{ color:var(--mb-accent); }

/* Headings */
.mb-article h1, .mb-article h2, .mb-article h3, .mb-article h4,
.mbpk-article h1, .mbpk-article h2, .mbpk-article h3, .mbpk-article h4{
  color:var(--mb-heading);
  line-height:1.25;
  margin:0 0 10px;
  font-weight:800;
}
.mb-article h1, .mbpk-article h1{ font-size:clamp(26px, 2.3vw, 40px); letter-spacing:-.02em; }
.mb-article h2, .mbpk-article h2{ font-size:clamp(22px, 1.9vw, 30px); }
.mb-article h3, .mbpk-article h3{ font-size:clamp(18px, 1.6vw, 24px); }
.mb-article h4, .mbpk-article h4{ font-size:clamp(16px, 1.3vw, 20px); }

.mb-article p, .mbpk-article p{
  margin:0 0 12px;
  color:var(--mb-text);
}
.mb-article .mb-muted, .mbpk-article .mb-muted{ color:var(--mb-muted); }
.mb-article .mb-strong, .mbpk-article .mb-strong{ font-weight:800; }

.mb-article .mb-divider, .mbpk-article .mb-divider{
  height:1px;
  background:var(--mb-border);
  margin:18px 0;
}

/* Media / images */
.mb-article img, .mbpk-article img{
  max-width:100%;
  height:auto;
  border-radius:var(--mb-radius-lg);
  display:block;
}
.mb-article .mb-media, .mbpk-article .mb-media{ min-width:0; }
.mb-article .mb-media a, .mbpk-article .mb-media a{
  display:block;
  border-radius:var(--mb-radius-lg);
  overflow:hidden;
  box-shadow:var(--mb-shadow-sm);
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
  line-height:0; /* IMPORTANT: removes baseline gaps */
}
.mb-article .mb-media a:hover, .mbpk-article .mb-media a:hover{
  transform:translateY(-2px);
  box-shadow:var(--mb-shadow);
}
.mb-article .mb-media img, .mbpk-article .mb-media img{ width:100%; }

/* Normalize common WP/Elementor image wrappers INSIDE article */
.mb-article figure, .mbpk-article figure,
.mb-article .wp-caption, .mbpk-article .wp-caption,
.mb-article .wp-block-image, .mbpk-article .wp-block-image{
  margin:0;
}

/* Cards / sections */
.mb-article .mb-section, .mbpk-article .mb-section{ margin:18px 0 22px; }
.mb-article .mb-card, .mbpk-article .mb-card{
  background:var(--mb-card-bg);
  border:1px solid var(--mb-border);
  border-radius:var(--mb-radius-lg);
  box-shadow:var(--mb-shadow-sm);
  padding:16px 14px;
  min-width:0;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.mb-article .mb-card:hover, .mbpk-article .mb-card:hover{
  transform:translateY(-2px);
  box-shadow:var(--mb-shadow);
  border-color:rgba(2,57,116,.22);
}

/* ============================================================
   Layout: rows (FIXED TOP ALIGN)
   ============================================================ */
.mb-article .mb-row,
.mbpk-article .mb-row{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, .85fr);
  gap:var(--mb-gap);

  /* FIX: no more vertical centering -> prevents “image drop” */
  align-items:start !important;

  margin:18px 0 22px;
}

/* Children safety */
.mb-article .mb-row > .mb-copy,
.mb-article .mb-row > .mb-media,
.mbpk-article .mb-row > .mb-copy,
.mbpk-article .mb-row > .mb-media{
  min-width:0;
}

/* Keep previous RTL column logic */
.mb-article .mb-row > .mb-copy,
.mbpk-article .mb-row > .mb-copy{ grid-column:1; }
.mb-article .mb-row > .mb-media,
.mbpk-article .mb-row > .mb-media{ grid-column:2; }

/* Reverse swaps columns */
.mb-article .mb-row--reverse > .mb-copy,
.mbpk-article .mb-row--reverse > .mb-copy{ grid-column:2; }
.mb-article .mb-row--reverse > .mb-media,
.mbpk-article .mb-row--reverse > .mb-media{ grid-column:1; }

/* Stack / long = one column, media first */
.mb-article .mb-row--stack,
.mb-article .mb-row--long,
.mbpk-article .mb-row--stack,
.mbpk-article .mb-row--long{
  grid-template-columns:1fr;
  align-items:stretch !important;
}
.mb-article .mb-row--stack > .mb-media,
.mb-article .mb-row--long > .mb-media,
.mbpk-article .mb-row--stack > .mb-media,
.mbpk-article .mb-row--long > .mb-media{
  grid-column:1;
  grid-row:1;
}
.mb-article .mb-row--stack > .mb-copy,
.mb-article .mb-row--long > .mb-copy,
.mbpk-article .mb-row--stack > .mb-copy,
.mbpk-article .mb-row--long > .mb-copy{
  grid-column:1;
  grid-row:2;
}

/* Extra safety: media always pinned to top in 2-col rows */
.mb-article .mb-row > .mb-media,
.mbpk-article .mb-row > .mb-media{ align-self:start !important; }

/* Optional: if you ever want true vertical center for a specific row */
.mb-article .mb-row--vcenter,
.mbpk-article .mb-row--vcenter{ align-items:center !important; }

/* ============================================================
   Hero
   ============================================================ */
.mb-article .mb-hero,
.mbpk-article .mb-hero{
  position:relative;
  background:var(--mb-hero-bg);
  border:1px solid var(--mb-border);
  border-radius:var(--mb-radius-xl);
  box-shadow:var(--mb-shadow);
  padding:24px 18px;
  margin:14px 0 22px;
  overflow:hidden;
}
.mb-article .mb-hero::before,
.mbpk-article .mb-hero::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(600px 240px at 85% 20%, rgba(239,106,34,.18), transparent 60%),
    radial-gradient(640px 260px at 15% 80%, rgba(2,57,116,.18), transparent 60%);
  pointer-events:none;
}
.mb-article .mb-hero > *, .mbpk-article .mb-hero > *{ position:relative; }

.mb-article .mb-badge,
.mbpk-article .mb-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(239,106,34,.12);
  color:var(--mb-accent);
  border:1px solid rgba(239,106,34,.26);
  font-weight:800;
  font-size:13px;
  line-height:1;
}
.mb-article .mb-hero .mb-badge,
.mbpk-article .mb-hero .mb-badge{ margin:0 0 10px; }
.mb-article .mb-hero .mb-row,
.mbpk-article .mb-hero .mb-row{ margin:10px 0 0; }

/* ============================================================
   CTA + Buttons
   ============================================================ */
.mb-article .mb-cta,
.mbpk-article .mb-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;

  background:var(--mb-cta-bg);
  border:1px solid var(--mb-border);
  border-radius:var(--mb-radius-xl);
  box-shadow:var(--mb-shadow-sm);
  padding:16px 14px;

  margin:18px 0 22px;
}
.mb-article .mb-cta__copy,
.mbpk-article .mb-cta__copy{ min-width:0; }

.mb-article .mb-cta__actions,
.mbpk-article .mb-cta__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-start;
}

.mb-article .mb-btn,
.mbpk-article .mb-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;

  padding:12px 16px;
  border-radius:14px;
  border:1px solid rgba(2,57,116,.18);
  background:linear-gradient(135deg, rgba(2,57,116,1), rgba(29,91,191,1));
  color:#fff;

  font-weight:900;
  line-height:1;
  cursor:pointer;
  user-select:none;

  box-shadow:0 10px 22px rgba(2,57,116,.18);
  transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.mb-article .mb-btn:hover,
.mbpk-article .mb-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(2,57,116,.22);
  filter:saturate(1.05);
}
.mb-article .mb-btn:focus-visible,
.mbpk-article .mb-btn:focus-visible{
  outline:none;
  box-shadow:var(--mb-focus), 0 14px 28px rgba(2,57,116,.20);
}
.mb-article .mb-btn--secondary,
.mbpk-article .mb-btn--secondary{
  background:#fff;
  color:var(--mb-primary);
  border:1px solid rgba(2,57,116,.22);
  box-shadow:var(--mb-shadow-sm);
}
.mb-article .mb-btn--secondary:hover,
.mbpk-article .mb-btn--secondary:hover{
  background:rgba(2,57,116,.06);
}

/* ============================================================
   Grids / Slot grid
   ============================================================ */
.mb-article .mb-grid,
.mbpk-article .mb-grid{
  display:grid;
  gap:16px;
  margin:18px 0 22px;
}
.mb-article .mb-grid.mb-grid--2,
.mbpk-article .mb-grid.mb-grid--2{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
.mb-article .mb-grid.mb-grid--3,
.mbpk-article .mb-grid.mb-grid--3{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
.mb-article .mb-grid.mb-grid--4,
.mbpk-article .mb-grid.mb-grid--4{ grid-template-columns:repeat(4, minmax(0, 1fr)); }

.mb-article .mb-card__title,
.mbpk-article .mb-card__title{
  margin:0 0 8px;
  font-weight:900;
  color:var(--mb-heading);
  font-size:18px;
  line-height:1.25;
}
.mb-article .mb-card__meta,
.mbpk-article .mb-card__meta{
  color:var(--mb-muted);
  font-size:14px;
}

.mb-article .mb-slot-grid,
.mbpk-article .mb-slot-grid{
  display:grid;
  gap:14px;
  margin:18px 0 22px;
  grid-template-columns:repeat(3, minmax(0, 1fr));
}
.mb-article .mb-slot-grid .mb-card,
.mbpk-article .mb-slot-grid .mb-card{
  padding:12px 12px 14px;
}
.mb-article .mb-slot-grid .mb-card img,
.mbpk-article .mb-slot-grid .mb-card img{
  border-radius:14px;
  margin:0 0 10px;
}

/* Orphan card fixes */
@media (min-width: 960px){
  .mb-article .mb-grid.mb-grid--3 > .mb-card:last-child:nth-child(3n+1),
  .mbpk-article .mb-grid.mb-grid--3 > .mb-card:last-child:nth-child(3n+1){
    grid-column:2 / span 1;
  }
  .mb-article .mb-grid.mb-grid--2 > .mb-card:last-child:nth-child(2n+1),
  .mbpk-article .mb-grid.mb-grid--2 > .mb-card:last-child:nth-child(2n+1){
    grid-column:1 / -1;
    max-width:720px;
    justify-self:center;
  }
}

/* ============================================================
   Lists (RTL-friendly)
   ============================================================ */
.mb-article ul, .mbpk-article ul{
  margin:0 0 12px;
  padding:0;
  list-style:none;
}
.mb-article ul li, .mbpk-article ul li{
  position:relative;
  padding-right:1.15em;
  margin:0 0 8px;
}
.mb-article ul li::before,
.mbpk-article ul li::before{
  content:"";
  position:absolute;
  right:.25em;
  top:.72em;
  width:.42em;
  height:.42em;
  border-radius:50%;
  background:var(--mb-accent);
  box-shadow:0 0 0 3px rgba(239,106,34,.12);
}
.mb-article ol, .mbpk-article ol{
  margin:0 0 12px;
  padding-right:1.25em;
  padding-left:0;
}
.mb-article ol li, .mbpk-article ol li{ margin:0 0 8px; }

/* ============================================================
   FAQ (details/summary)
   ============================================================ */
.mb-article .mb-faq,
.mbpk-article .mb-faq{
  margin:18px 0 22px;
  display:grid;
  gap:12px;
}
.mb-article .mb-faq details,
.mbpk-article .mb-faq details{
  background:#fff;
  border:1px solid var(--mb-border);
  border-radius:var(--mb-radius-lg);
  box-shadow:var(--mb-shadow-sm);
  overflow:hidden;
}
.mb-article .mb-faq summary,
.mbpk-article .mb-faq summary{
  list-style:none;
  cursor:pointer;
  padding:14px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;

  font-weight:900;
  color:var(--mb-heading);
  user-select:none;
}
.mb-article .mb-faq summary::-webkit-details-marker,
.mbpk-article .mb-faq summary::-webkit-details-marker{ display:none; }
.mb-article .mb-faq summary::after,
.mbpk-article .mb-faq summary::after{
  content:"▾";
  font-size:16px;
  line-height:1;
  color:var(--mb-primary);
  transition:transform .18s ease;
}
.mb-article .mb-faq details[open] summary::after,
.mbpk-article .mb-faq details[open] summary::after{ transform:rotate(180deg); }
.mb-article .mb-faq details > .mb-faq__body,
.mbpk-article .mb-faq details > .mb-faq__body{
  padding:0 14px 14px;
  color:var(--mb-text);
}
.mb-article .mb-faq details > .mb-faq__body p:last-child,
.mbpk-article .mb-faq details > .mb-faq__body p:last-child{ margin-bottom:0; }

/* ============================================================
   Tables (MANDATORY mobile horizontal scroll)
   ============================================================ */
.mb-article .mb-table-wrap,
.mbpk-article .mb-table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  display:block;
  direction:ltr;
  touch-action:pan-x;
  margin:18px 0 22px;
  border-radius:var(--mb-radius-lg);
}
.mb-article p + .mb-table-wrap,
.mbpk-article p + .mb-table-wrap{ margin-top:14px; }
.mb-article .mb-table-wrap + p,
.mbpk-article .mb-table-wrap + p{ margin-top:14px; }

.mb-article table.mb-table,
.mbpk-article table.mb-table{
  width:100%;
  min-width:560px;
  border-collapse:separate;
  border-spacing:0;

  direction:rtl;
  background:var(--mb-surface);
  border:1px solid var(--mb-border);
  border-radius:var(--mb-radius-lg);
  overflow:hidden;
}
.mb-article table.mb-table th,
.mb-article table.mb-table td,
.mbpk-article table.mb-table th,
.mbpk-article table.mb-table td{
  padding:12px 12px;
  border-bottom:1px solid rgba(16,24,40,.10);
  vertical-align:top;
  text-align:right;
}
.mb-article table.mb-table th,
.mbpk-article table.mb-table th{
  background:rgba(2,57,116,.06);
  color:var(--mb-heading);
  font-weight:900;
}
.mb-article table.mb-table tr:last-child td,
.mbpk-article table.mb-table tr:last-child td{ border-bottom:none; }
.mb-article table.mb-table tbody tr:nth-child(even) td,
.mbpk-article table.mb-table tbody tr:nth-child(even) td{
  background:rgba(2,57,116,.03);
}
@media (max-width: 767px){
  .mb-article .mb-table-wrap,
  .mbpk-article .mb-table-wrap{ border-radius:var(--mb-radius-md); }

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

/* ============================================================
   Utilities
   ============================================================ */
.mb-article .mb-note,
.mbpk-article .mb-note{
  background:rgba(239,106,34,.10);
  border:1px solid rgba(239,106,34,.22);
  color:rgba(16,24,40,.95);
  border-radius:var(--mb-radius-lg);
  padding:12px 12px;
  margin:14px 0;
}
.mb-article .mb-alert,
.mbpk-article .mb-alert{
  background:rgba(2,57,116,.07);
  border:1px solid rgba(2,57,116,.20);
  color:rgba(16,24,40,.95);
  border-radius:var(--mb-radius-lg);
  padding:12px 12px;
  margin:14px 0;
}
.mb-article .mb-chip,
.mbpk-article .mb-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(2,57,116,.07);
  border:1px solid rgba(2,57,116,.18);
  color:var(--mb-primary);
  font-weight:800;
  font-size:13px;
}
.mb-article .mb-copy,
.mbpk-article .mb-copy{
  min-width:0;
  overflow-wrap:anywhere;
}
.mb-article .mb-sr-only,
.mbpk-article .mb-sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

/* ============================================================
   Responsive behavior
   ============================================================ */
@media (max-width: 1024px){
  .mb-article .mb-slot-grid,
  .mbpk-article .mb-slot-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .mb-article .mb-grid.mb-grid--4,
  .mbpk-article .mb-grid.mb-grid--4{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px){
  /* Rows stack on mobile; media always first */
  .mb-article .mb-row,
  .mbpk-article .mb-row{
    grid-template-columns:1fr;
    gap:16px;
    align-items:stretch !important;
  }
  .mb-article .mb-row > .mb-media,
  .mbpk-article .mb-row > .mb-media{
    grid-column:1;
    grid-row:1;
  }
  .mb-article .mb-row > .mb-copy,
  .mbpk-article .mb-row > .mb-copy{
    grid-column:1;
    grid-row:2;
  }

  /* Reverse should not change mobile stacking */
  .mb-article .mb-row--reverse > .mb-media,
  .mbpk-article .mb-row--reverse > .mb-media{
    grid-column:1;
    grid-row:1;
  }
  .mb-article .mb-row--reverse > .mb-copy,
  .mbpk-article .mb-row--reverse > .mb-copy{
    grid-column:1;
    grid-row:2;
  }

  /* Hero */
  .mb-article .mb-hero,
  .mbpk-article .mb-hero{
    padding:18px 14px;
    border-radius:20px;
  }

  /* CTA */
  .mb-article .mb-cta,
  .mbpk-article .mb-cta{
    flex-direction:column;
    align-items:stretch;
  }
  .mb-article .mb-cta__actions,
  .mbpk-article .mb-cta__actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }
  .mb-article .mb-btn,
  .mbpk-article .mb-btn{
    width:100%;
    justify-content:center;
  }

  /* Grids */
  .mb-article .mb-grid.mb-grid--2,
  .mb-article .mb-grid.mb-grid--3,
  .mb-article .mb-grid.mb-grid--4,
  .mbpk-article .mb-grid.mb-grid--2,
  .mbpk-article .mb-grid.mb-grid--3,
  .mbpk-article .mb-grid.mb-grid--4{ grid-template-columns:1fr; }

  .mb-article .mb-slot-grid,
  .mbpk-article .mb-slot-grid{ grid-template-columns:1fr; }

  /* Header/footer nav pills wrap */
  .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu,
  .elementor-location-footer .elementor-nav-menu--main .elementor-nav-menu{
    border-radius:20px;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .mb-article a,
  .mbpk-article a,
  .mb-article .mb-btn,
  .mbpk-article .mb-btn,
  .mb-article .mb-card,
  .mbpk-article .mb-card,
  .mb-article .mb-media a,
  .mbpk-article .mb-media a{
    transition:none !important;
  }
}

/* ============================================================
   MB ROW HARD FIX — kill conflicts for .mb-row/.mb-copy/.mb-media
   Paste at the VERY END of your GLOBAL CSS
   ============================================================ */

.mb-article .mb-row,
.mbpk-article .mb-row{
  /* force layout */
  display:grid !important;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, .85fr) !important;
  grid-template-areas:"copy media" !important;
  gap:var(--mb-gap, 26px) !important;
  align-items:start !important;

  /* nuke foreign layout rules */
  float:none !important;
  clear:none !important;
  width:100% !important;
  max-width:100% !important;
}

.mb-article .mb-row > .mb-copy,
.mb-article .mb-row > .mb-media,
.mbpk-article .mb-row > .mb-copy,
.mbpk-article .mb-row > .mb-media{
  /* hard reset for frequent collisions */
  display:block !important;
  float:none !important;
  clear:none !important;

  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;

  margin:0 !important;
  position:static !important;
  transform:none !important;
}

/* place by AREAS (stable in RTL) */
.mb-article .mb-row > .mb-copy,
.mbpk-article .mb-row > .mb-copy{
  grid-area:copy !important;
  direction:rtl;
  text-align:right;
}

.mb-article .mb-row > .mb-media,
.mbpk-article .mb-row > .mb-media{
  grid-area:media !important;
  align-self:start !important;
  justify-self:stretch !important;
}

/* reverse row swaps areas */
.mb-article .mb-row--reverse,
.mbpk-article .mb-row--reverse{
  grid-template-areas:"media copy" !important;
}

/* long/stack: media first, full width */
.mb-article .mb-row--stack,
.mb-article .mb-row--long,
.mbpk-article .mb-row--stack,
.mbpk-article .mb-row--long{
  grid-template-columns:1fr !important;
  grid-template-areas:
    "media"
    "copy" !important;
}

/* mobile: always stack, media first */
@media (max-width: 767px){
  .mb-article .mb-row,
  .mbpk-article .mb-row{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "media"
      "copy" !important;
    gap:16px !important;
  }
}

/* extra safety: prevent flex-wrap based “drops” if some CSS forces flex */
.mb-article .mb-row,
.mbpk-article .mb-row{
  flex-wrap:nowrap !important;
}
/* ============================================================
   MB ROW VCENTER — vertical align middle for side-by-side blocks
   Paste at the VERY END of GLOBAL CSS (after HARD FIX)
   ============================================================ */

.mb-article .mb-row.mb-row--vcenter,
.mbpk-article .mb-row.mb-row--vcenter{
  align-items:center !important;
}

.mb-article .mb-row.mb-row--vcenter > .mb-copy,
.mb-article .mb-row.mb-row--vcenter > .mb-media,
.mbpk-article .mb-row.mb-row--vcenter > .mb-copy,
.mbpk-article .mb-row.mb-row--vcenter > .mb-media{
  align-self:center !important;
}

/* AUTO-STACK  */
.mb-article .mb-hero .mb-row:not(.mb-row--stack):not(.mb-row--long):has(.mb-copy p:nth-of-type(3)),
.mb-article .mb-hero .mb-row:not(.mb-row--stack):not(.mb-row--long):has(.mb-table-wrap),
.mb-article .mb-section > .mb-row:not(.mb-row--stack):not(.mb-row--long):has(.mb-copy p:nth-of-type(4)),
.mb-article .mb-section > .mb-row:not(.mb-row--stack):not(.mb-row--long):has(.mb-table-wrap),
.mb-article .mb-section > .mb-row:not(.mb-row--stack):not(.mb-row--long):has(.mb-copy ol li:nth-of-type(4)),
.mb-article .mb-section > .mb-row:not(.mb-row--stack):not(.mb-row--long):has(.mb-copy ul li:nth-of-type(5)){
  grid-template-columns:1fr !important;
  grid-template-areas:
    "media"
    "copy" !important;
}

/* reverse */
.mb-article .mb-section > .mb-row.mb-row--reverse:has(.mb-copy p:nth-of-type(4)){
  grid-template-areas:
    "media"
    "copy" !important;
}
