/* ==========================================================================
   Modkrat — National Digital Platform (header, footer, home sections)
   ========================================================================== */

/* custom.css forces font-size/line-height on h1-h6, p, a, li with !important
   site-wide, so every sizing rule here carries !important to win on source order. */

:root {
    --mk-primary: #4f46e5;
    --mk-primary-hover: #4338ca;
    --mk-purple: #8b5cf6;
    --mk-green: #10b981;
    --mk-orange: #f59e0b;
    --mk-red: #ef4444;
    --mk-ink: #1e2533;
    --mk-body: #4b5563;
    --mk-muted: #6b7280;
    --mk-border: #e5e7eb;
    --mk-soft: #f3f4f6;
    --mk-navy: #08072a;
    --mk-navy-card: #121236;
    --mk-slate: #141a2a;
    --mk-radius: 16px;
    --mk-font-head: 'Plus Jakarta Sans', 'IBM Plex Sans Arabic', sans-serif;
    --mk-font-body: 'Inter', 'IBM Plex Sans Arabic', sans-serif;
}

html[dir="rtl"] {
    --mk-font-head: 'IBM Plex Sans Arabic', 'Plus Jakarta Sans', sans-serif;
    --mk-font-body: 'IBM Plex Sans Arabic', 'Inter', sans-serif;
}

body.mk-body {
    font-family: var(--mk-font-body);
    color: var(--mk-body);
    background: #fff;
    overflow-x: hidden;
}

.mk-body h1, .mk-body h2, .mk-body h3, .mk-body h4, .mk-body h5 {
    font-family: var(--mk-font-head);
}

.mk-container {
    width: 100%;
    max-width: 1312px;
    margin-inline: auto;
    padding-inline: 16px;
}

.mk-accent { color: var(--mk-purple); }

/* ----------------------------- Buttons ---------------------------------- */
.mk-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 52px;
    padding: 12px 22px;
    border-radius: 6px;
    border: 1.5px solid transparent;
    font-family: var(--mk-font-head);
    font-size: 16px !important;
    font-weight: 500;
    line-height: 1.2 !important;
    text-decoration: none;
    transition: background .2s, color .2s, border-color .2s, transform .2s;
    white-space: nowrap;
}
.mk-btn:hover { transform: translateY(-1px); }
.mk-btn-primary { background: var(--mk-primary); color: #fff; }
.mk-btn-primary:hover { background: var(--mk-primary-hover); color: #fff; }
.mk-btn-outline { border-color: var(--mk-purple); color: var(--mk-purple); background: transparent; }
.mk-btn-outline:hover { background: var(--mk-purple); color: #fff; }
.mk-btn-ghost { border-color: var(--mk-border); color: var(--mk-green); text-decoration: underline; text-underline-offset: 3px; background: transparent; }
.mk-btn-ghost:hover { border-color: var(--mk-green); color: var(--mk-green); }
.mk-dark .mk-btn-outline { border-color: var(--mk-primary); color: #8b8cf7; }
.mk-dark .mk-btn-outline:hover { background: var(--mk-primary); color: #fff; }
.mk-dark .mk-btn-ghost { border-color: rgba(255,255,255,.08); background: rgba(255,255,255,.03); }

.mk-btn-group { display: flex; flex-wrap: wrap; gap: 16px; }

.mk-link-explore {
    color: var(--mk-orange);
    font-style: italic;
    font-size: 15px !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.mk-link-explore:hover { color: #fbbf24; }

/* ----------------------------- Top bar ---------------------------------- */
.mk-topbar {
    background: #f3f4f6;
    border-bottom: 1px solid var(--mk-border);
    font-size: 15px !important;
}
.mk-topbar .mk-container {
    max-width: 1920px;
    padding-inline: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 82px;
}
.mk-topbar-left, .mk-topbar-right { display: flex; align-items: center; gap: 20px; }

.mk-vision {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 6px 26px 6px 10px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    background: #f9fafb;
}
.mk-vision img { height: 42px; width: auto; }
.mk-vision-text {
    border-inline-start: 1px solid #d1d5db;
    padding-inline-start: 14px;
    line-height: 1.35 !important;
    font-size: 14px !important;
}
.mk-vision-text span { display: block; color: var(--mk-muted); text-transform: uppercase; }
.mk-vision-text strong { display: block; color: #047857; font-weight: 600; text-transform: uppercase; }

.mk-status {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 6px 12px;
    border-radius: 6px;
    background: #ede9fe;
    color: #1f2937;
    font-weight: 500;
    font-size: 14px !important;
    text-transform: uppercase;
}
.mk-status::before {
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--mk-purple);
    box-shadow: 0 0 0 0 rgba(139, 92, 246, .5);
    animation: mk-pulse 2s infinite;
}
@keyframes mk-pulse {
    70% { box-shadow: 0 0 0 8px rgba(139, 92, 246, 0); }
    100% { box-shadow: 0 0 0 0 rgba(139, 92, 246, 0); }
}

.mk-topbar a.mk-topbar-link { color: #111827; text-decoration: none; }
.mk-topbar a.mk-topbar-link:hover { color: var(--mk-primary); }

.mk-lang-switch {
    display: inline-flex;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
}
.mk-lang-switch a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    color: #111827;
    font-weight: 500;
    font-size: 14px !important;
    text-decoration: none;
}
.mk-lang-switch a.active { background: #e5e7eb; }
.mk-lang-switch .mk-flag { width: 24px; height: 16px; border-radius: 2px; display: inline-block; }

/* ----------------------------- Navbar ----------------------------------- */
.mk-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid transparent;
    transition: box-shadow .2s, border-color .2s;
}
.mk-header.is-scrolled { border-color: var(--mk-border); box-shadow: 0 6px 24px rgba(17, 24, 39, .06); }
.mk-header .mk-container {
    max-width: 1920px;
    padding-inline: 50px;
    display: flex;
    align-items: center;
    gap: 32px;
    min-height: 116px;
}
.mk-logo img { height: 92px; width: auto; display: block; }

.mk-nav { display: flex; align-items: center; gap: 4px; margin-inline-end: auto; }
.mk-nav > .mk-nav-item { position: relative; }
.mk-nav > .mk-nav-item > a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    font-size: 17px !important;
    color: #374151;
    text-decoration: none;
    border-radius: 6px;
}
.mk-nav > .mk-nav-item > a:hover { color: var(--mk-primary); }
.mk-nav .bi-chevron-down { font-size: 12px !important; transition: transform .2s; }
.mk-nav-item:hover .bi-chevron-down { transform: rotate(180deg); }

.mk-dropdown {
    position: absolute;
    top: 100%;
    inset-inline-start: 0;
    min-width: 280px;
    padding: 10px;
    background: #fff;
    border: 1px solid var(--mk-border);
    border-radius: 12px;
    box-shadow: 0 18px 40px rgba(17, 24, 39, .12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: all .2s;
    list-style: none;
    margin: 0;
}
.mk-nav-item:hover > .mk-dropdown,
.mk-nav-item:focus-within > .mk-dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
.mk-dropdown a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 8px;
    color: var(--mk-ink);
    text-decoration: none;
    font-size: 15px !important;
}
.mk-dropdown a:hover { background: #f5f3ff; color: var(--mk-primary); }
.mk-dropdown a i { color: var(--mk-purple); width: 18px; text-align: center; }

.mk-header-actions { display: flex; align-items: center; gap: 20px; }

.mk-search {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 66px;
    width: 170px;
    padding-inline: 18px;
    border: 1px solid #9ca3af;
    border-radius: 10px;
    background: #fff;
}
.mk-search i { color: #9ca3af; font-size: 18px !important; }
.mk-search input {
    border: 0;
    outline: 0;
    width: 100%;
    background: transparent;
    font-size: 17px !important;
    color: var(--mk-ink);
}
.mk-search input::placeholder { color: #6b7280; }

.mk-btn-wallet {
    height: 66px;
    padding-inline: 42px;
    border: 1px solid var(--mk-primary);
    border-radius: 36px;
    color: #111827;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 17px !important;
}
.mk-btn-wallet i { color: var(--mk-purple); font-size: 22px !important; }
.mk-btn-wallet:hover { background: #f5f3ff; color: var(--mk-primary); }

.mk-btn-signin {
    height: 66px;
    padding-inline: 40px;
    border-radius: 36px;
    background: #4c1d95;
    background: linear-gradient(90deg, #4c1d95, #3b0fa8);
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 17px !important;
}
.mk-btn-signin:hover { color: #fff; filter: brightness(1.12); }

.mk-nav-toggle {
    display: none;
    margin-inline-start: auto;
    border: 1px solid var(--mk-border);
    background: #fff;
    border-radius: 8px;
    width: 46px;
    height: 46px;
    font-size: 24px !important;
    color: var(--mk-ink);
}

/* Mobile offcanvas */
.mk-offcanvas .offcanvas-header { border-bottom: 1px solid var(--mk-border); }
.mk-offcanvas .mk-logo img { height: 56px; }
.mk-mobile-nav { list-style: none; padding: 0; margin: 0; }
.mk-mobile-nav > li { border-bottom: 1px solid var(--mk-soft); }
.mk-mobile-nav a, .mk-mobile-nav button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 14px 4px;
    background: none;
    border: 0;
    color: var(--mk-ink);
    font-size: 16px !important;
    text-decoration: none;
    text-align: start;
}
.mk-mobile-nav ul { list-style: none; padding: 0 0 8px 12px; margin: 0; }
.mk-mobile-nav ul a { padding: 8px 4px; font-size: 15px !important; color: var(--mk-body); }
.mk-offcanvas .mk-btn { width: 100%; }

/* ----------------------------- Footer ----------------------------------- */
.mk-footer { background: var(--mk-slate); color: #9ca3af; padding: 80px 0 0; margin-top: 70px; }
.mk-footer-grid {
    display: grid;
    grid-template-columns: 2fr repeat(4, 1fr);
    gap: 40px;
}
.mk-footer-brand .mk-footer-logo {
    display: inline-block;
    background: #fff;
    padding: 2px;
    margin-bottom: 28px;
}
.mk-footer-brand .mk-footer-logo img { height: 46px; width: auto; display: block; }
.mk-footer-brand p { max-width: 300px; font-size: 15px !important; line-height: 1.5 !important; color: #9ca3af; }
.mk-footer h5 { color: #fff; font-size: 16px !important; font-weight: 700; margin-bottom: 20px; }
.mk-footer ul { list-style: none; padding: 0; margin: 0; }
.mk-footer ul li { margin-bottom: 12px; }
.mk-footer a { color: #9ca3af; text-decoration: none; font-size: 15px !important; }
.mk-footer a:hover { color: #fff; }

.mk-social { display: flex; gap: 12px; margin-top: 40px; }
.mk-social a {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #273041;
    color: #cbd5e1;
    font-size: 15px !important;
}
.mk-social a:hover { background: var(--mk-primary); color: #fff; }
.mk-social a i { color: inherit !important; }

.mk-footer-bottom {
    margin-top: 60px;
    padding: 30px 0 40px;
    border-top: 1px solid #374151;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    font-size: 14px !important;
    color: #4b5563;
}
.mk-footer-bottom a { color: #4b5563; font-size: 14px !important; }
.mk-footer-bottom nav { display: flex; gap: 24px; flex-wrap: wrap; }

/* ----------------------------- Sections --------------------------------- */
.mk-section { padding: 120px 0; position: relative; }
.mk-dark { background: var(--mk-navy); color: #9ca3af; overflow: hidden; }
.mk-dark h2, .mk-dark h3, .mk-dark h4 { color: #fff; }

.mk-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 56px;
}
.mk-section-head > div { max-width: 610px; }
.mk-title {
    font-size: clamp(34px, 4vw, 60px) !important;
    font-weight: 700;
    line-height: 1.12 !important;
    letter-spacing: -.02em;
    color: var(--mk-ink);
    margin-bottom: 20px;
}
.mk-lead { font-size: 17px !important; line-height: 1.55 !important; margin: 0; }

.mk-grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }

/* Hero */
.mk-hero {
    padding: 120px 0 80px;
    text-align: center;
    background:
        radial-gradient(600px 400px at 5% 20%, rgba(167, 139, 250, .18), transparent 70%),
        radial-gradient(500px 400px at 95% 90%, rgba(16, 185, 129, .14), transparent 70%),
        linear-gradient(120deg, #f3f0ff 0%, #eef0f6 50%, #e6f3ee 100%);
}
.mk-hero h1 {
    max-width: 1100px;
    margin: 0 auto 60px;
    font-size: clamp(36px, 4.4vw, 62px) !important;
    font-weight: 700;
    line-height: 1.18 !important;
    letter-spacing: -.02em;
    color: #111827;
}
.mk-hero p.mk-hero-desc {
    max-width: 1140px;
    margin: 0 auto 46px;
    font-size: 20px !important;
    line-height: 1.6 !important;
    color: #1f2937;
}
.mk-hero .mk-btn-group { justify-content: center; }
.mk-hero .mk-btn { min-width: 172px; min-height: 56px; }
.mk-hero .mk-btn-ghost { background: rgba(255,255,255,.4); }
.mk-hero-note {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-top: 40px;
    text-align: start;
    color: var(--mk-orange);
    font-size: 16px !important;
}
.mk-hero-note i { font-size: 34px !important; }
.mk-hero-note strong { display: block; font-weight: 600; }

/* Wallet */
.mk-wallet { padding: 160px 0 60px; background: linear-gradient(200deg, #eefaf4 0%, #fff 30%); }
.mk-wallet-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
.mk-wallet h2 {
    font-size: clamp(36px, 4vw, 62px) !important;
    font-weight: 700;
    line-height: 1.15 !important;
    text-transform: uppercase;
    color: var(--mk-ink);
    margin-bottom: 46px;
}
.mk-wallet-copy p { font-size: 17px !important; line-height: 1.55 !important; color: #4b5563; margin-bottom: 18px; }
.mk-wallet .mk-btn-group { margin-top: 26px; }
.mk-wallet-link { display: inline-block; margin-top: 30px; color: var(--mk-purple); text-decoration: none; font-weight: 500; }
.mk-wallet-link:hover { color: var(--mk-primary); text-decoration: underline; }
.mk-wallet-panel { background: #e8f8f1; border-radius: 24px; padding: 42px 40px 44px; }
.mk-wallet-panel h3 {
    font-size: 26px !important;
    font-weight: 500;
    color: #1f2937;
    padding-bottom: 14px;
    margin-bottom: 18px;
    border-bottom: 1px solid #c8d6d0;
}
.mk-wallet-list {
    list-style: none;
    padding: 0;
    margin: 0;
    columns: 2;
    column-gap: 30px;
}
.mk-wallet-list li {
    display: flex;
    align-items: center;
    gap: 12px;
    break-inside: avoid;
    padding: 14px 0;
    font-size: 17px !important;
    color: #1f2937;
}
.mk-wallet-list li i { color: var(--mk-purple); width: 18px; text-align: center; flex-shrink: 0; }

/* Dark card grid (services / integration services) */
.mk-dark-glow::after {
    content: "";
    position: absolute;
    width: 1100px;
    height: 1100px;
    inset-inline-end: -250px;
    top: 210px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.05), rgba(255,255,255,.015) 60%, transparent 70%);
    pointer-events: none;
}
.mk-dark .mk-container { position: relative; z-index: 1; }
.mk-card {
    padding: 24px;
    border-radius: 14px;
    transition: transform .2s, box-shadow .2s, border-color .2s;
}
.mk-card:hover { transform: translateY(-4px); }
.mk-card-icon { font-size: 22px !important; line-height: 1 !important; margin-bottom: 22px; display: inline-block; }
.mk-card h4 { font-size: 17px !important; font-weight: 600; color: var(--mk-purple); margin-bottom: 18px; font-family: var(--mk-font-body); }
.mk-card p { font-size: 15px !important; line-height: 1.5 !important; margin-bottom: 18px; }
.mk-card-dark { background: var(--mk-navy-card); }
.mk-card-dark .mk-card-icon { color: var(--mk-orange); }
.mk-card-dark h4 { color: #8b5cf6; }
.mk-card-dark:hover { box-shadow: 0 10px 30px rgba(79, 70, 229, .18); }

.mk-card-light { background: #fff; border: 1px solid var(--mk-border); }
.mk-card-light .mk-card-icon { color: var(--mk-red); }
.mk-card-light p { color: #9ca3af; }
.mk-card-light .mk-link-explore { color: #3b82f6; }
.mk-card-light:hover { border-color: #c4b5fd; box-shadow: 0 12px 30px rgba(17, 24, 39, .06); }

/* Integration */
.mk-integration { padding-bottom: 60px; }
.mk-integration-head { display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; align-items: start; margin-bottom: 90px; }
.mk-integration h2 {
    font-size: clamp(36px, 4.2vw, 64px) !important;
    font-weight: 700;
    line-height: 1 !important;
    letter-spacing: -.035em;
    margin-bottom: 30px;
}
.mk-integration-head p { font-size: 19px !important; line-height: 1.5 !important; color: #a1a1c2; margin: 0; }

.mk-member-card {
    justify-self: end;
    width: 100%;
    max-width: 384px;
    padding: 28px;
    border-radius: 18px;
    background: linear-gradient(140deg, #1d2148 0%, #191b3d 60%, #1f1f4d 100%);
    border: 1px solid rgba(139, 92, 246, .35);
    box-shadow: 0 0 40px rgba(79, 70, 229, .35), inset 0 0 0 1px rgba(255,255,255,.03);
    color: #c7c9e4;
    position: relative;
}
.mk-member-card .mk-chip {
    position: absolute;
    top: 28px;
    inset-inline-end: 28px;
    width: 40px;
    height: 28px;
    border-radius: 5px;
    background: linear-gradient(135deg, #fde68a, #f59e0b);
    box-shadow: inset 0 0 0 4px rgba(251, 191, 36, .9);
}
.mk-member-label { font-size: 11px !important; font-weight: 700; letter-spacing: .1em; color: #38bdf8; text-transform: uppercase; }
.mk-member-title { font-size: 20px !important; font-weight: 600; color: #fff; margin: 4px 0 46px; }
.mk-member-caption { font-size: 12px !important; color: #9ca3af; display: flex; align-items: center; gap: 8px; }
.mk-member-number { font-size: 19px !important; letter-spacing: .1em; color: #fff; font-weight: 600; margin: 8px 0 40px; direction: ltr; }
.mk-member-foot {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 10px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,.08);
}
.mk-member-foot small { display: block; font-size: 10px !important; text-transform: uppercase; color: #9ca3af; }
.mk-member-foot strong { color: #fff; font-weight: 500; font-size: 15px !important; }
.mk-member-badge {
    font-size: 10px !important;
    padding: 4px 8px;
    border-radius: 4px;
    border: 1px solid #3b82f6;
    background: rgba(59, 130, 246, .15);
    color: #93c5fd;
    white-space: nowrap;
}

.mk-subhead { font-size: 19px !important; font-weight: 500; color: #fff; max-width: 380px; line-height: 1.5 !important; margin-bottom: 30px; font-family: var(--mk-font-head); }
.mk-benefit {
    padding: 18px 16px;
    border-radius: 6px;
    background: #10132e;
    border: 1px solid rgba(255,255,255,.08);
}
.mk-benefit i { font-size: 20px !important; margin-bottom: 18px; display: inline-block; }
.mk-benefit p { margin: 0; font-size: 15px !important; line-height: 1.4 !important; color: #8b8fa8; }
.mk-benefit:nth-child(7n+1) i { color: #34d399; }
.mk-benefit:nth-child(7n+2) i { color: #38bdf8; }
.mk-benefit:nth-child(7n+3) i { color: #818cf8; }
.mk-benefit:nth-child(7n+4) i { color: #a78bfa; }
.mk-benefit:nth-child(7n+5) i { color: #a3e635; }
.mk-benefit:nth-child(7n+6) i { color: #818cf8; }
.mk-benefit:nth-child(7n+7) i { color: #f43f5e; }

.mk-integration-services { padding-top: 60px; }
.mk-integration-services .mk-card { background: #141633; }
.mk-integration-services .mk-card:nth-child(7n+1) .mk-card-icon { color: #34d399; }
.mk-integration-services .mk-card:nth-child(7n+2) .mk-card-icon { color: #f59e0b; }
.mk-integration-services .mk-card:nth-child(7n+3) .mk-card-icon { color: #3b82f6; }
.mk-integration-services .mk-card:nth-child(7n+4) .mk-card-icon { color: #fff; }
.mk-integration-services .mk-card:nth-child(7n+5) .mk-card-icon { color: #a3e635; }
.mk-integration-services .mk-card:nth-child(7n+6) .mk-card-icon { color: #818cf8; }
.mk-integration-services .mk-card:nth-child(7n+7) .mk-card-icon { color: #22d3ee; }
.mk-integration-services .mk-card p { color: #a1a1b5; }
.mk-integration-services .mk-btn-group { margin-top: 56px; }

/* Partners */
.mk-partners { text-align: center; padding: 120px 0 60px; }
.mk-partners-icon { font-size: 48px !important; color: var(--mk-green); line-height: 1 !important; margin-bottom: 20px; display: inline-block; }
.mk-partners .mk-lead { max-width: 760px; margin: 0 auto 60px; font-size: 18px !important; }
.mk-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px 20px; max-width: 1180px; margin: 0 auto; }
.mk-chip-pill {
    display: inline-flex;
    align-items: center;
    padding: 14px 24px;
    border: 1px solid #9ca3af;
    border-radius: 6px;
    color: #1f2937;
    font-size: 16px !important;
    font-weight: 500;
    background: #fff;
    transition: all .2s;
}
.mk-chip-pill:hover, .mk-chip-pill.is-active { background: var(--mk-green); border-color: var(--mk-green); color: #fff; }

/* Why */
.mk-why { padding: 60px 0 90px; }
.mk-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; margin-bottom: 96px; }
.mk-why-grid p { font-size: 17px !important; line-height: 1.55 !important; color: #4b5563; max-width: 590px; }
.mk-why-grid img { width: 100%; height: 400px; object-fit: cover; border-radius: 24px; }
.mk-why-grid .mk-title { margin-bottom: 50px; }
.mk-feature { padding: 26px 24px; border: 1px solid var(--mk-border); border-radius: 14px; background: #fff; transition: all .2s; }
.mk-feature:hover { border-color: #c4b5fd; box-shadow: 0 10px 28px rgba(17, 24, 39, .06); }
.mk-feature h4 { font-size: 17px !important; font-weight: 600; color: #1f2937; margin-bottom: 18px; font-family: var(--mk-font-body); }
.mk-feature p { font-size: 15px !important; line-height: 1.5 !important; color: #6b7280; margin: 0; }

/* CTA */
.mk-cta-box {
    background: var(--mk-slate);
    border-radius: 24px;
    padding: 130px 40px 120px;
    text-align: center;
}
.mk-cta-box h2 { color: #fff; font-size: clamp(30px, 3.4vw, 50px) !important; font-weight: 700; margin-bottom: 18px; }
.mk-cta-box .mk-cta-sub { color: var(--mk-orange); font-size: 21px !important; margin-bottom: 34px; font-family: var(--mk-font-head); }
.mk-cta-box p { max-width: 930px; margin: 0 auto 26px; font-size: 16px !important; line-height: 1.6 !important; color: #9ca3af; }

/* ----------------------------- Responsive ------------------------------- */
@media (max-width: 1599px) {
    .mk-topbar .mk-container, .mk-header .mk-container { padding-inline: 24px; }
    .mk-header .mk-container { gap: 20px; }
    .mk-logo img { height: 72px; }
    .mk-nav > .mk-nav-item > a { font-size: 16px !important; padding: 10px 10px; }
    .mk-search { width: 140px; height: 54px; }
    .mk-btn-wallet, .mk-btn-signin { height: 54px; padding-inline: 24px; font-size: 15px !important; }
}

@media (max-width: 1399px) {
    .mk-nav, .mk-header-actions { display: none; }
    .mk-nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
    .mk-header .mk-container { min-height: 84px; }
    .mk-logo img { height: 60px; }
}

@media (max-width: 1199px) {
    .mk-grid-4 { grid-template-columns: repeat(2, 1fr); }
    .mk-footer-grid { grid-template-columns: repeat(2, 1fr); }
    .mk-footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 991px) {
    .mk-section { padding: 80px 0; }
    .mk-hero { padding: 80px 0 60px; }
    .mk-wallet { padding: 80px 0 40px; }
    .mk-wallet-grid, .mk-why-grid, .mk-integration-head { grid-template-columns: 1fr; }
    .mk-member-card { justify-self: start; }
    .mk-section-head { flex-direction: column; align-items: flex-start; }
    .mk-topbar .mk-status, .mk-topbar .mk-topbar-link { display: none; }
    .mk-hero p.mk-hero-desc { font-size: 17px !important; }
}

@media (max-width: 575px) {
    .mk-grid-4, .mk-footer-grid { grid-template-columns: 1fr; }
    .mk-wallet-list { columns: 1; }
    .mk-wallet-panel { padding: 28px 22px; }
    .mk-topbar .mk-container { padding-inline: 16px; min-height: 64px; }
    .mk-vision { padding-inline-end: 12px; }
    .mk-vision img { height: 32px; }
    .mk-vision-text { font-size: 12px !important; }
    .mk-lang-switch a span { display: none; }
    .mk-header .mk-container { padding-inline: 16px; }
    .mk-logo img { height: 48px; }
    .mk-btn-group .mk-btn { width: 100%; }
    .mk-cta-box { padding: 60px 20px; }
    .mk-why-grid img { height: 260px; }
}

/* ==========================================================================
   Inner pages (About, ...)
   ========================================================================== */
.mk-page-banner {
    padding: 58px 0 52px;
    text-align: center;
    background:
        radial-gradient(500px 300px at 6% 50%, rgba(167, 139, 250, .2), transparent 70%),
        linear-gradient(120deg, #f1eefe 0%, #eef0f4 55%, #e7f1ea 100%);
}
.mk-page-banner h1 { font-size: clamp(30px, 3vw, 42px) !important; font-weight: 700; color: #2d3446; margin-bottom: 14px; }
.mk-breadcrumb { display: flex; justify-content: center; gap: 6px; font-size: 16px !important; color: #9ca3af; }
.mk-breadcrumb a { color: #6b7280; text-decoration: none; font-size: 16px !important; }
.mk-breadcrumb a:hover { color: var(--mk-primary); }

.mk-kicker {
    display: block;
    margin-bottom: 26px;
    color: var(--mk-purple);
    font-size: 16px !important;
    letter-spacing: .5em;
}
html[dir="rtl"] .mk-kicker { letter-spacing: 0; }

.mk-about-intro { padding: 70px 0 120px; background: radial-gradient(500px 400px at 0 0, rgba(167, 139, 250, .1), transparent 70%), radial-gradient(500px 500px at 100% 20%, rgba(16, 185, 129, .07), transparent 70%); }
.mk-about-intro-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 60px; }
.mk-about-intro .mk-title { color: #2d3446; margin-bottom: 50px; }
.mk-about-intro p { font-size: 16px !important; line-height: 1.65 !important; color: #4b5563; max-width: 620px; margin-bottom: 20px; }

.mk-about-visual { position: relative; align-self: start; max-width: 520px; width: 100%; justify-self: end; aspect-ratio: 1 / 1.1; }
.mk-about-visual img { width: 92%; aspect-ratio: 1; object-fit: cover; border-radius: 50%; margin-inline-start: 6%; display: block; }
.mk-shape { position: absolute; display: block; }
.mk-shape--dot-top { width: 50px; height: 50px; border-radius: 50%; background: #ef4444; top: 0; inset-inline-end: 0; }
.mk-shape--play-top { top: 24px; inset-inline-end: 62px; border-style: solid; border-width: 30px 0 30px 52px; border-color: transparent transparent transparent #f59e0b; }
.mk-shape--tri { top: 74%; inset-inline-start: 0; border-style: solid; border-width: 0 30px 52px 30px; border-color: transparent transparent #10b981 transparent; }
.mk-shape--dot { width: 50px; height: 50px; border-radius: 50%; background: #ef4444; top: 87%; inset-inline-start: 9%; }
.mk-shape--play { top: 87%; inset-inline-start: 25%; border-style: solid; border-width: 30px 0 30px 52px; border-color: transparent transparent transparent #4f46e5; }
.mk-shape--bar { width: 74px; height: 8px; background: #8b5cf6; top: 93%; inset-inline-start: 47%; transform: rotate(32deg); }
html[dir="rtl"] .mk-shape--play-top, html[dir="rtl"] .mk-shape--play { transform: scaleX(-1); }

.mk-soft-bg { background: #f4f4f5; }
.mk-grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; }
.mk-vision-mission { padding: 96px 0 100px; }
.mk-vm-card { background: #fff; border: 1px solid var(--mk-border); border-radius: 24px; padding: 46px 48px 48px; }
.mk-badge {
    display: inline-block;
    padding: 4px 16px;
    border-radius: 20px;
    background: #f3e8ff;
    color: #7e22ce;
    font-size: 13px !important;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 22px;
}
.mk-vm-card h3 { font-size: 32px !important; font-weight: 700; color: #3b82f6; margin-bottom: 26px; }
.mk-vm-card p { font-size: 16px !important; line-height: 1.7 !important; color: #4b5563; margin: 0; }

.mk-list-label { font-size: 21px !important; font-weight: 600; color: #6b7280; max-width: 440px; line-height: 1.25 !important; margin: 40px 0 18px; }
.mk-title--accent { color: var(--mk-purple) !important; }
.mk-text-card { padding: 22px 20px; border: 1px solid #d1d5db; border-radius: 8px; background: transparent; transition: border-color .2s, box-shadow .2s; }
.mk-text-card:hover { border-color: #c4b5fd; box-shadow: 0 10px 24px rgba(17, 24, 39, .05); }
.mk-text-card p { font-size: 16px !important; line-height: 1.5 !important; color: #4b5563; margin: 0; }
.mk-text-card-icon { display: inline-block; font-size: 20px !important; margin-bottom: 12px; }
.mk-audience .mk-text-card { min-height: 152px; }
.mk-audience .mk-text-card:nth-child(4n+1) .mk-text-card-icon { color: #f59e0b; }
.mk-audience .mk-text-card:nth-child(4n+2) .mk-text-card-icon { color: #8b5cf6; }
.mk-audience .mk-text-card:nth-child(4n+3) .mk-text-card-icon { color: #10b981; }
.mk-audience .mk-text-card:nth-child(4n+4) .mk-text-card-icon { color: #ef4444; }

.mk-values { padding: 140px 0 150px; }
.mk-values .mk-subhead { margin: 40px 0 30px; }
.mk-values-grid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 20px; }
.mk-values-grid .mk-benefit { min-height: 110px; padding: 22px 16px; }
.mk-values-grid .mk-benefit:nth-child(8n) i { color: #f59e0b; }

.mk-title--upper { text-transform: uppercase; }
.mk-split { padding: 140px 0 60px; }
.mk-split-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 130px; align-items: start; }
.mk-split--reverse .mk-split-grid { grid-template-columns: 1.15fr 1fr; gap: 130px; align-items: center; }
.mk-split-media { background: #d9d9d9; border-radius: 16px; min-height: 480px; overflow: hidden; }
.mk-split-media img { width: 100%; height: 100%; min-height: 480px; object-fit: cover; display: block; }
.mk-split:not(.mk-split--reverse) .mk-split-media, .mk-split:not(.mk-split--reverse) .mk-split-media img { min-height: 584px; }
.mk-split-copy .mk-title { color: #111827; margin: 0 0 50px; }
.mk-split--reverse .mk-split-copy .mk-title { margin-bottom: 36px; }
.mk-split-copy p { font-size: 16px !important; line-height: 1.65 !important; color: #4b5563; }
.mk-split-arrow { display: block; width: 1.5px; height: 120px; margin: 54px 0 20px 16px; background: #9ca3af; position: relative; }
.mk-split-arrow::after { content: ""; position: absolute; bottom: 0; left: -5px; width: 11px; height: 11px; border-right: 1px solid #9ca3af; border-bottom: 1px solid #9ca3af; transform: rotate(45deg); }
html[dir="rtl"] .mk-split-arrow { margin: 54px 16px 20px 0; }
.mk-btn-pill { border-radius: 30px; min-height: 52px; padding-inline: 24px; }

@media (max-width: 1199px) {
    .mk-values-grid { grid-template-columns: repeat(4, 1fr); }
    .mk-split-grid, .mk-split--reverse .mk-split-grid { gap: 50px; }
}
@media (max-width: 991px) {
    .mk-about-intro-grid, .mk-grid-2, .mk-split-grid, .mk-split--reverse .mk-split-grid { grid-template-columns: 1fr; }
    .mk-about-visual { justify-self: center; max-width: 420px; }
    .mk-split, .mk-values { padding: 80px 0; }
    .mk-split--reverse .mk-split-media { order: -1; }
    .mk-split-media, .mk-split-media img, .mk-split:not(.mk-split--reverse) .mk-split-media, .mk-split:not(.mk-split--reverse) .mk-split-media img { min-height: 320px; }
}
@media (max-width: 575px) {
    .mk-values-grid { grid-template-columns: repeat(2, 1fr); }
    .mk-vm-card { padding: 30px 24px; }
    .mk-about-intro { padding: 50px 0 70px; }
}

/* Policy pages */
.mk-policy { padding: 80px 0; }
.mk-policy .mk-container { max-width: 900px; }
.mk-policy p, .mk-policy li { font-size: 16px !important; line-height: 1.75 !important; color: #4b5563; }
.mk-policy h2, .mk-policy h3, .mk-policy h4 { color: var(--mk-ink); margin: 32px 0 12px; }

/* Services page */
.mk-services-intro { padding-bottom: 60px; }
.mk-services-intro-media { background: #d9d9d9; min-height: 684px; margin-top: 14px; overflow: hidden; }
.mk-services-intro-media img { width: 100%; height: 100%; min-height: 684px; object-fit: cover; display: block; }
.mk-services-list { padding: 40px 0 60px; }
.mk-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px 20px; }
.mk-service-card {
    display: flex;
    flex-direction: column;
    padding: 24px;
    border: 1px solid #8b5cf6;
    border-radius: 12px;
    background: #fff;
    transition: box-shadow .2s, transform .2s;
}
.mk-service-card:hover { transform: translateY(-3px); box-shadow: 0 16px 36px rgba(139, 92, 246, .12); }
.mk-service-icon {
    width: 100px;
    height: 100px;
    border-radius: 12px;
    background: #e9e2fd;
    color: var(--mk-purple);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 30px !important;
    margin-bottom: 30px;
}
.mk-service-card h3 { font-size: 21px !important; font-weight: 600; color: #1f2937; margin-bottom: 20px; font-family: var(--mk-font-body); }
.mk-service-card > p { font-size: 15px !important; line-height: 1.5 !important; color: #6b7280; margin-bottom: 18px; }
.mk-service-card ul { list-style: disc; padding-inline-start: 22px; margin: 0 0 20px; }
.mk-service-card li { list-style: disc !important; display: list-item; font-size: 15px !important; line-height: 1.6 !important; color: #374151; }
.mk-service-btn { margin-top: auto; width: 100%; min-height: 42px; background: #8b5cf6; color: #fff; font-weight: 600; font-size: 15px !important; }
.mk-service-btn:hover { background: #7c3aed; color: #fff; }

@media (max-width: 1199px) { .mk-grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 991px) {
    .mk-services-intro-media, .mk-services-intro-media img { min-height: 360px; }
}
@media (max-width: 767px) { .mk-grid-3 { grid-template-columns: 1fr; } }

/* ==========================================================================
   Knowledge Center / Investment / Programs / Retiree
   ========================================================================== */
.mk-services-intro-media.is-rounded { border-radius: 16px; }
.mk-intro-buttons { margin-top: 60px; }

/* Checklist: image bleeding off the start edge + two-column ticks */
.mk-checklist { position: relative; padding: 140px 0 60px; }
.mk-checklist-media {
    position: absolute;
    inset-inline-start: 0;
    top: 140px;
    bottom: 60px;
    width: 39%;
    background: #d9d9d9;
    border-start-end-radius: 24px;
    border-end-end-radius: 24px;
    overflow: hidden;
}
.mk-checklist-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mk-checklist-copy { margin-inline-start: 42%; min-height: 560px; }
.mk-checklist-copy .mk-title { color: #111827; margin-bottom: 26px; }
.mk-checklist-subtitle { font-size: 17px !important; font-weight: 600; color: #374151; margin-bottom: 18px; font-family: var(--mk-font-body); }
.mk-checklist-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.mk-checklist-grid li {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 12px;
    background: #f3f4f6;
    border-radius: 6px;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: #374151;
}
.mk-checklist-grid li i { color: var(--mk-purple); font-size: 18px; flex-shrink: 0; }

/* Dark grid */
.mk-dark-grid .mk-card { background: #111631; }
.mk-dark-grid .mk-card p { color: #a1a1b5; }
.mk-dark-grid:not(.mk-dark-grid--centered) .mk-card:nth-child(4n+1) .mk-card-icon { color: #34d399; }
.mk-dark-grid:not(.mk-dark-grid--centered) .mk-card:nth-child(4n+2) .mk-card-icon { color: #f59e0b; }
.mk-dark-grid:not(.mk-dark-grid--centered) .mk-card:nth-child(4n+3) .mk-card-icon { color: #3b82f6; }
.mk-dark-grid:not(.mk-dark-grid--centered) .mk-card:nth-child(4n+4) .mk-card-icon { color: #fff; }
.mk-dark-grid--centered .mk-section-head { flex-direction: column; align-items: center; text-align: center; margin-bottom: 100px; }
.mk-dark-grid--centered .mk-section-head > div { max-width: none; }
.mk-dark-grid--centered .mk-lead { font-size: 21px !important; color: #9ca3af; font-family: var(--mk-font-head); }
.mk-dark-grid--centered .mk-card { background: #0f1429; border: 1px solid rgba(255, 255, 255, .1); padding: 20px; }
.mk-dark-grid--centered .mk-card-icon {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #08072a;
    color: var(--mk-purple);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 28px !important;
}
.mk-dark-grid--centered .mk-card h4 { font-size: 21px !important; }
.mk-dark-grid--centered .mk-card p { font-size: 16px !important; line-height: 1.6 !important; }

/* Detail cards: image header, list label, dark theme */
.mk-service-media { height: 200px; border-radius: 16px; background: #d9d9d9; overflow: hidden; margin-bottom: 40px; }
.mk-service-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mk-service-list-label { font-size: 17px !important; font-weight: 600; color: #1f2937; margin: 4px 0 18px; font-family: var(--mk-font-body); }
.mk-services-list--dark { padding: 120px 0; }
.mk-services-list--dark .mk-service-card { background: #10152b; border-color: #262b45; }
.mk-services-list--dark .mk-service-card:hover { box-shadow: 0 16px 36px rgba(0, 0, 0, .3); }
.mk-services-list--dark .mk-service-card h3 { color: #fff; }
.mk-services-list--dark .mk-service-card > p { color: #9ca3af; }
.mk-services-list--dark .mk-service-card li { color: #8b8fa8; }
.mk-services-list--dark .mk-service-list-label { color: var(--mk-purple); }

/* Split block 2x2 buttons */
.mk-split-buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 16px; margin-top: 150px; max-width: 630px; }
.mk-split-buttons .mk-btn { width: 100%; padding-inline: 12px; }
.mk-btn-soft { background: #e8f7f0; color: var(--mk-green); }
.mk-btn-soft:hover { background: #d1f2e3; color: #059669; }
.mk-btn-link { border-color: #e5e7eb; color: #3b82f6; text-decoration: underline; text-underline-offset: 3px; background: #fff; }
.mk-btn-link:hover { border-color: #3b82f6; color: #2563eb; }

@media (max-width: 991px) {
    .mk-checklist { padding: 80px 0 40px; }
    .mk-checklist-media { position: static; width: auto; height: 300px; margin: 0 16px 40px; border-radius: 16px; }
    .mk-checklist-copy { margin-inline-start: 0; min-height: 0; }
    .mk-split-buttons { margin-top: 40px; }
    .mk-intro-buttons { margin-top: 30px; }
}
@media (max-width: 575px) {
    .mk-checklist-grid, .mk-split-buttons { grid-template-columns: 1fr; }
}
#investment-tools { padding-top: 140px; }

/* ==========================================================================
   Polish: smooth header, motion, depth (overrides earlier rules)
   ========================================================================== */
html { scroll-behavior: smooth; }
section[id] { scroll-margin-top: 100px; }

/* ---- Header: glass, shrink on scroll, animated links ---- */
.mk-header {
    background: rgba(255, 255, 255, .85);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    backdrop-filter: saturate(180%) blur(14px);
    transition: box-shadow .3s ease, border-color .3s ease, background .3s ease;
}
.mk-header.is-scrolled { background: rgba(255, 255, 255, .94); box-shadow: 0 10px 30px -12px rgba(17, 24, 39, .15); }
.mk-header .mk-container { transition: min-height .3s ease; }
.mk-logo img { transition: height .3s ease; }
.mk-search, .mk-btn-wallet, .mk-btn-signin { transition: height .3s ease, width .3s ease, background .25s, color .25s, box-shadow .25s, border-color .25s, transform .25s; }
.mk-header.is-scrolled .mk-container { min-height: 84px; }
.mk-header.is-scrolled .mk-logo img { height: 62px; }
.mk-header.is-scrolled .mk-search,
.mk-header.is-scrolled .mk-btn-wallet,
.mk-header.is-scrolled .mk-btn-signin { height: 52px; }

.mk-nav > .mk-nav-item > a { position: relative; transition: color .2s ease; }
.mk-nav > .mk-nav-item > a::after {
    content: "";
    position: absolute;
    inset-inline: 12px;
    bottom: 2px;
    height: 2px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--mk-primary), var(--mk-purple));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .3s cubic-bezier(.2, .8, .2, 1);
}
html[dir="rtl"] .mk-nav > .mk-nav-item > a::after { transform-origin: right; }
.mk-nav > .mk-nav-item > a:hover::after,
.mk-nav > .mk-nav-item > a.is-active::after { transform: scaleX(1); }
.mk-nav > .mk-nav-item > a.is-active { color: var(--mk-primary); }
.mk-dropdown { transition: opacity .25s ease, transform .25s cubic-bezier(.2, .8, .2, 1), visibility .25s; }
.mk-dropdown a { transition: background .2s, color .2s, padding .2s; }
.mk-dropdown a:hover { padding-inline-start: 16px; }

.mk-btn-signin { box-shadow: 0 10px 24px -10px rgba(76, 29, 149, .6); }
.mk-btn-signin:hover { transform: translateY(-1px); box-shadow: 0 14px 30px -10px rgba(76, 29, 149, .7); }
.mk-lang-switch a { transition: background .2s; }
.mk-lang-switch a:not(.active):hover { background: #f3f4f6; }
.mk-lang-switch--mobile { width: 100%; }
.mk-lang-switch--mobile a { flex: 1; justify-content: center; padding: 10px; }

/* Laptops (1200-1599): keep the full menu, just tighter */
@media (min-width: 1200px) and (max-width: 1599px) {
    .mk-nav, .mk-header-actions { display: flex; }
    .mk-nav-toggle { display: none; }
    .mk-topbar .mk-container, .mk-header .mk-container { padding-inline: 24px; }
    .mk-header .mk-container { gap: 18px; min-height: 92px; }
    .mk-logo img { height: 60px; }
    .mk-header.is-scrolled .mk-logo img { height: 52px; }
    .mk-header.is-scrolled .mk-container { min-height: 74px; }
    .mk-nav { gap: 0; }
    .mk-nav > .mk-nav-item > a { font-size: 15px !important; padding: 8px 10px; gap: 6px; }
    .mk-nav > .mk-nav-item > a::after { inset-inline: 10px; }
    .mk-header-actions { gap: 12px; }
    /* Search collapses to an icon and expands when focused */
    .mk-search { position: relative; width: 48px; height: 48px; padding: 0; justify-content: center; cursor: pointer; }
    .mk-search input { position: absolute; inset: 0; padding-inline: 44px 14px; opacity: 0; cursor: pointer; transition: opacity .2s; }
    .mk-search i { position: absolute; inset-inline-start: 14px; pointer-events: none; }
    .mk-search:focus-within { width: 220px; }
    .mk-search:focus-within input { opacity: 1; cursor: text; }
    .mk-btn-wallet, .mk-btn-signin { height: 48px; padding-inline: 20px; font-size: 14px !important; }
    .mk-header.is-scrolled .mk-search, .mk-header.is-scrolled .mk-btn-wallet, .mk-header.is-scrolled .mk-btn-signin { height: 44px; }
    .mk-header.is-scrolled .mk-search { width: 44px; }
    .mk-header.is-scrolled .mk-search:focus-within { width: 220px; }
}
@media (min-width: 1200px) and (max-width: 1365px) {
    .mk-logo img { height: 50px; }
    .mk-nav > .mk-nav-item > a { font-size: 14px !important; padding: 8px 7px; }
    .mk-nav > .mk-nav-item > a::after { inset-inline: 7px; }
    .mk-btn-wallet, .mk-btn-signin { padding-inline: 14px; font-size: 13px !important; }
}
@media (max-width: 1199px) {
    .mk-nav, .mk-header-actions { display: none; }
    .mk-nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
    .mk-header .mk-container { min-height: 80px; }
    .mk-logo img, .mk-header.is-scrolled .mk-logo img { height: 54px; }
    .mk-header.is-scrolled .mk-container { min-height: 68px; }
}

/* ---- Hero: floating colour blobs, dotted texture, gradient accent ---- */
.mk-hero { position: relative; overflow: hidden; isolation: isolate; }
.mk-hero::before,
.mk-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    filter: blur(70px);
    animation: mk-float 16s ease-in-out infinite alternate;
    pointer-events: none;
}
.mk-hero::before { width: 560px; height: 560px; top: -180px; inset-inline-start: -140px; background: rgba(139, 92, 246, .28); }
.mk-hero::after { width: 500px; height: 500px; bottom: -220px; inset-inline-end: -120px; background: rgba(16, 185, 129, .22); animation-delay: -8s; }
.mk-hero .mk-container { position: relative; }
.mk-hero .mk-container::before {
    content: "";
    position: absolute;
    inset: -120px -200px;
    z-index: -1;
    background-image: radial-gradient(rgba(79, 70, 229, .10) 1px, transparent 1px);
    background-size: 22px 22px;
    -webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
    mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
    pointer-events: none;
}
.mk-hero .mk-accent {
    background: linear-gradient(90deg, #8b5cf6, #6366f1 60%, #8b5cf6);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: mk-shine 6s linear infinite;
}
@keyframes mk-float {
    0% { transform: translate(0, 0) scale(1); }
    100% { transform: translate(70px, 50px) scale(1.15); }
}
@keyframes mk-shine { to { background-position: 200% center; } }

/* ---- Buttons and cards: softer, springier motion ---- */
.mk-btn { transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .3s ease, background .25s, color .25s, border-color .25s; }
.mk-btn:hover { transform: translateY(-2px); }
.mk-btn:active { transform: translateY(0); }
.mk-btn-primary { box-shadow: 0 10px 22px -10px rgba(79, 70, 229, .65); }
.mk-btn-primary:hover { box-shadow: 0 16px 30px -12px rgba(79, 70, 229, .7); }
.mk-card, .mk-feature, .mk-text-card, .mk-service-card, .mk-benefit, .mk-vm-card, .mk-chip-pill {
    transition: transform .4s cubic-bezier(.2, .8, .2, 1), box-shadow .4s ease, border-color .3s ease, background .3s ease;
}
.mk-card-dark:hover, .mk-dark-grid .mk-card:hover, .mk-integration-services .mk-card:hover {
    box-shadow: 0 0 0 1px rgba(139, 92, 246, .35), 0 20px 40px -14px rgba(79, 70, 229, .45);
}
.mk-benefit:hover { transform: translateY(-3px); border-color: rgba(139, 92, 246, .35); }
.mk-feature:hover, .mk-text-card:hover { transform: translateY(-3px); }
.mk-vm-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -18px rgba(17, 24, 39, .18); }
.mk-chip-pill:hover { transform: translateY(-2px); box-shadow: 0 10px 20px -10px rgba(16, 185, 129, .6); }
.mk-wallet-panel { box-shadow: 0 30px 60px -30px rgba(16, 185, 129, .35); }
.mk-wallet-list li { transition: transform .25s ease; }
.mk-wallet-list li:hover { transform: translateX(4px); }
html[dir="rtl"] .mk-wallet-list li:hover { transform: translateX(-4px); }
.mk-why-grid img, .mk-split-media img, .mk-services-intro-media img { transition: transform .8s cubic-bezier(.2, .8, .2, 1); }
.mk-why-grid img:hover, .mk-split-media:hover img { transform: scale(1.03); }

/* ---- Tinted backgrounds so the white sections stay distinct ---- */
#programs { background: linear-gradient(180deg, #fff 0%, #f6f4ff 100%); }
.mk-partners { background: radial-gradient(700px 300px at 50% 0%, rgba(16, 185, 129, .08), transparent 70%); }
.mk-why { background: linear-gradient(180deg, #fff 0%, #f8fafc 100%); }
.mk-integration { background: radial-gradient(800px 500px at 0% 0%, rgba(139, 92, 246, .14), transparent 60%), var(--mk-navy); }
.mk-cta-box { position: relative; overflow: hidden; isolation: isolate; }
.mk-cta-box::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: -40% 20% auto;
    height: 420px;
    border-radius: 50%;
    background: radial-gradient(closest-side, rgba(99, 102, 241, .35), transparent);
    filter: blur(20px);
}
.mk-member-card { animation: mk-bob 6s ease-in-out infinite; }
@keyframes mk-bob { 50% { transform: translateY(-10px); } }

/* ---- Back to top ---- */
.mk-to-top {
    position: fixed;
    bottom: 24px;
    inset-inline-end: 24px;
    z-index: 1020;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    background: var(--mk-primary);
    color: #fff;
    font-size: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 24px -10px rgba(79, 70, 229, .7);
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: opacity .3s, transform .3s, visibility .3s, background .2s;
}
.mk-to-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.mk-to-top:hover { background: var(--mk-primary-hover); }

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .mk-hero::before, .mk-hero::after, .mk-hero .mk-accent, .mk-member-card, .mk-status::before { animation: none; }
    *, *::before, *::after { transition-duration: .01ms !important; }
}

/* custom.css sets overflow-x:hidden on html/body, which turns body into a scroll
   container and breaks position:sticky on the header. clip hides overflow without that. */
html, body { overflow-x: clip !important; }

/* style.css pads every <header>; the buttons also carry .mk-btn min-height. Let the header sizes rule. */
.mk-header { padding: 0 !important; }
.mk-header .mk-btn-wallet, .mk-header .mk-btn-signin { min-height: 0; }

/* Chip-list sections (Knowledge Center, Retiree), CTA button rows, card section heading */
.mk-pill-section { padding: 100px 0; text-align: center; }
.mk-pill-section .mk-lead { max-width: 820px; margin: 0 auto 44px; font-size: 18px !important; }
.mk-pill-section .mk-chip-pill { gap: 10px; }
.mk-pill-section .mk-chip-pill i { color: var(--mk-green); font-size: 13px; }
.mk-pill-section.mk-dark .mk-chip-pill { background: rgba(255, 255, 255, .04); border-color: rgba(255, 255, 255, .14); color: #e5e7eb; }
.mk-pill-section.mk-dark .mk-chip-pill:hover { background: var(--mk-primary); border-color: var(--mk-primary); }
.mk-pill-section.mk-dark .mk-lead { color: #a1a1c2; }
.mk-pill-btn { margin-top: 44px; }
.mk-checklist-btn { margin-top: 30px; }
.mk-cta-buttons { justify-content: center; margin-top: 8px; }
.mk-cta-box .mk-btn-outline { border-color: rgba(255, 255, 255, .35); color: #fff; }
.mk-cta-box .mk-btn-outline:hover { background: #fff; color: var(--mk-ink); }
.mk-cta-box .mk-btn-ghost { color: var(--mk-green); border-color: rgba(255, 255, 255, .12); }
.mk-cards-title { text-align: center; margin-bottom: 50px; }
.mk-service-card[id] { scroll-margin-top: 110px; }
.mk-service-card:target { box-shadow: 0 0 0 3px rgba(139, 92, 246, .45); }
.mk-hero p.mk-hero-desc + p.mk-hero-desc { margin-top: -26px; }

/* Website forms */
.mk-form-section { background: linear-gradient(180deg, #f8f7ff 0%, #fff 100%); }
.mk-form-card { max-width: 920px; margin: 0 auto; background: #fff; border: 1px solid var(--mk-border); border-radius: 20px; padding: 48px; box-shadow: 0 30px 60px -40px rgba(17, 24, 39, .25); }
.mk-form-card > .mk-title { font-size: clamp(26px, 2.6vw, 36px) !important; margin-bottom: 12px; }
.mk-form-card > .mk-lead { margin-bottom: 28px; color: var(--mk-muted); }
.mk-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 22px; }
.mk-field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.mk-field--full, .mk-form-heading { grid-column: 1 / -1; }
.mk-form-heading { font-size: 18px !important; font-weight: 700; color: var(--mk-ink); margin: 18px 0 0; padding-top: 18px; border-top: 1px solid var(--mk-border); font-family: var(--mk-font-body); }
.mk-form-grid > .mk-form-heading:first-child { border-top: 0; padding-top: 0; margin-top: 0; }
.mk-field .mk-form-heading { margin-bottom: 6px; }
.mk-label { font-size: 14px !important; font-weight: 600; color: #374151; }
.mk-label em, .mk-check em { color: var(--mk-red); font-style: normal; }
.mk-field input:not([type=checkbox]), .mk-field select, .mk-field textarea {
    width: 100%; border: 1px solid #d1d5db; border-radius: 10px; padding: 12px 14px; font-size: 15px !important;
    color: var(--mk-ink); background: #fff; transition: border-color .2s, box-shadow .2s; font-family: var(--mk-font-body);
}
.mk-field input[type=file] { padding: 10px; background: #f9fafb; }
.mk-field input:focus, .mk-field select:focus, .mk-field textarea:focus { outline: 0; border-color: var(--mk-purple); box-shadow: 0 0 0 4px rgba(139, 92, 246, .15); }
.mk-field.is-invalid input, .mk-field.is-invalid select, .mk-field.is-invalid textarea { border-color: var(--mk-red); }
.mk-field-error { color: var(--mk-red); font-size: 13px !important; }
.mk-hint { color: var(--mk-muted); font-size: 13px !important; }
.mk-check { display: flex; align-items: flex-start; gap: 10px; font-size: 15px !important; color: #374151; cursor: pointer; margin: 0; }
.mk-check input { width: 18px; height: 18px; margin-top: 3px; accent-color: var(--mk-primary); flex-shrink: 0; }
.mk-check-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 16px; padding: 14px; border: 1px solid var(--mk-border); border-radius: 12px; background: #fafafa; }
.mk-form-submit { margin-top: 28px; min-width: 240px; }
.mk-form-alt { margin: 16px 0 0; color: var(--mk-muted); font-size: 15px !important; }
.mk-form-alt a { color: var(--mk-primary); font-weight: 600; }
.mk-form-success, .mk-form-errors, .mk-form-note { border-radius: 12px; padding: 16px 18px; margin-bottom: 24px; font-size: 15px !important; }
.mk-form-success { display: flex; gap: 14px; align-items: center; background: #ecfdf5; border: 1px solid #a7f3d0; color: #065f46; }
.mk-form-success i { font-size: 26px; }
.mk-form-success strong, .mk-form-success span { display: block; }
.mk-form-errors { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }
.mk-form-errors ul { margin: 0; padding-inline-start: 18px; }
.mk-form-note { background: #f5f3ff; border: 1px solid #ddd6fe; color: #5b21b6; }

/* Contact channels */
.mk-channels .mk-channel { text-align: center; }
.mk-channel-icon { width: 56px; height: 56px; border-radius: 50%; background: #ede9fe; color: var(--mk-purple); display: inline-flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 14px; }
.mk-channel-pending { color: var(--mk-muted) !important; font-style: italic; }

/* Legal pages */
.mk-legal-body { max-width: 860px; margin: 0 auto; }
.mk-legal-body h3 { font-size: 21px !important; margin: 36px 0 12px; color: var(--mk-ink); }
.mk-legal-body h3:first-child { margin-top: 0; }
.mk-legal-body ul { padding-inline-start: 22px; }
.mk-legal-body li { list-style: disc !important; display: list-item; margin-bottom: 6px; }

@media (max-width: 767px) {
    .mk-form-card { padding: 28px 20px; }
    .mk-form-grid { grid-template-columns: 1fr; }
    .mk-check-grid { grid-template-columns: 1fr 1fr; }
    .mk-form-submit { width: 100%; }
}

/* Header dropdowns built from child menu items */
.mk-dropdown-arrow { font-size: 10px !important; color: #c4b5fd !important; }
html[dir="rtl"] .mk-dropdown-arrow { transform: scaleX(-1); }
.mk-dropdown a.is-active { background: #f5f3ff; color: var(--mk-primary); font-weight: 600; }
.mk-nav > .mk-nav-item > a { white-space: nowrap; }

/* Header fit with the full document menu (7 items) */
@media (min-width: 1200px) {
    .mk-header .mk-search { position: relative; width: 48px; height: 48px; padding: 0; justify-content: center; cursor: pointer; flex-shrink: 0; }
    .mk-header .mk-search input { position: absolute; inset: 0; padding-inline: 44px 14px; opacity: 0; cursor: pointer; transition: opacity .2s; }
    .mk-header .mk-search i { position: absolute; inset-inline-start: 14px; pointer-events: none; }
    .mk-header .mk-search:focus-within { width: 220px; }
    .mk-header .mk-search:focus-within input { opacity: 1; cursor: text; }
    .mk-nav { flex-wrap: nowrap; min-width: 0; }
    .mk-header-actions { flex-shrink: 0; }
}
@media (min-width: 1600px) {
    .mk-header .mk-container { gap: 24px; }
    .mk-logo img { height: 76px; }
    .mk-nav > .mk-nav-item > a { font-size: 16px !important; padding: 10px 11px; }
    .mk-header .mk-search, .mk-header.is-scrolled .mk-search { height: 52px; width: 52px; }
    .mk-btn-wallet, .mk-btn-signin { height: 56px; padding-inline: 26px; font-size: 15px !important; }
}
@media (min-width: 1200px) and (max-width: 1599px) {
    .mk-header .mk-container { gap: 14px; }
    .mk-nav > .mk-nav-item > a { padding: 8px 8px; }
    /* Wallet collapses to an icon button; its label stays available to screen readers */
    .mk-btn-wallet { width: 48px; padding: 0 !important; font-size: 0 !important; gap: 0; }
    .mk-btn-wallet i { font-size: 20px !important; }
    .mk-header.is-scrolled .mk-btn-wallet { width: 44px; }
}
@media (min-width: 1200px) and (max-width: 1365px) {
    .mk-nav > .mk-nav-item > a { font-size: 13.5px !important; padding: 8px 6px; gap: 4px; }
    .mk-btn-signin { padding-inline: 12px; font-size: 12.5px !important; }
}

/* "More" overflow menu: the nav takes the free space and the script moves items that don't fit */
@media (min-width: 1200px) {
    .mk-nav { flex: 1 1 auto; margin-inline-end: 0; }
}
@media (min-width: 1200px) and (max-width: 1599px) {
    .mk-nav > .mk-nav-item > a { font-size: 14px !important; padding: 8px 7px; gap: 4px; }
    .mk-logo img, .mk-header.is-scrolled .mk-logo img { height: 52px; }
    .mk-btn-signin { padding-inline: 16px; font-size: 13px !important; }
}
.mk-nav-more[hidden] { display: none !important; }
.mk-dropdown--more { inset-inline-start: auto; inset-inline-end: 0; max-height: 70vh; overflow-y: auto; }
.mk-dropdown--more .mk-more-parent { font-weight: 700; color: var(--mk-ink); }
.mk-dropdown--more .mk-more-child { padding-inline-start: 26px; font-size: 14px !important; color: var(--mk-body); }
.mk-dropdown--more .mk-more-child i:not(.mk-dropdown-arrow) { display: none; }
@media (min-width: 1600px) {
    .mk-header .mk-container { gap: 20px; padding-inline: 40px; }
    .mk-logo img { height: 66px; }
    .mk-header.is-scrolled .mk-logo img { height: 56px; }
    .mk-nav > .mk-nav-item > a { font-size: 15px !important; padding: 9px 9px; gap: 6px; }
    .mk-btn-wallet, .mk-btn-signin { height: 52px; padding-inline: 22px; font-size: 14px !important; }
}
@media (min-width: 1600px) and (max-width: 1799px) {
    .mk-btn-wallet, .mk-header.is-scrolled .mk-btn-wallet { width: 52px; padding: 0 !important; font-size: 0 !important; gap: 0; }
    .mk-btn-wallet i { font-size: 20px !important; }
}

/* Sign In button dropdown (sign in + registration forms) */
.mk-signin-menu { position: relative; }
.mk-signin-menu .mk-btn-signin { border: 0; cursor: pointer; gap: 8px; }
.mk-signin-menu .mk-btn-signin .bi-chevron-down { font-size: 12px; transition: transform .25s; }
.mk-signin-dropdown { inset-inline-start: auto; inset-inline-end: 0; top: calc(100% + 10px); min-width: 270px; padding: 8px; }
.mk-signin-dropdown::before { content: ""; position: absolute; inset-inline: 0; top: -12px; height: 12px; } /* hover bridge */
.mk-signin-menu:hover .mk-signin-dropdown,
.mk-signin-menu.is-open .mk-signin-dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
.mk-signin-menu:hover .mk-btn-signin .bi-chevron-down,
.mk-signin-menu.is-open .mk-btn-signin .bi-chevron-down { transform: rotate(180deg); }
.mk-signin-dropdown a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 8px; color: var(--mk-ink); text-decoration: none; font-size: 15px !important; transition: background .2s, color .2s; }
.mk-signin-dropdown a:hover, .mk-signin-dropdown a.is-active { background: #f5f3ff; color: var(--mk-primary); }
.mk-signin-dropdown a i { color: var(--mk-purple); width: 18px; text-align: center; }
.mk-signin-login { font-weight: 700; }
.mk-signin-label { display: block; margin: 6px 12px 4px; padding-top: 10px; border-top: 1px solid var(--mk-border); font-size: 12px !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--mk-muted); }
html[dir="rtl"] .mk-signin-label { letter-spacing: 0; }
.mk-mobile-register { display: flex; flex-direction: column; border: 1px solid var(--mk-border); border-radius: 12px; padding: 4px 6px 8px; }
.mk-mobile-register .mk-signin-label { border-top: 0; padding-top: 6px; }
.mk-mobile-register a { display: flex; align-items: center; gap: 10px; padding: 10px; color: var(--mk-ink); text-decoration: none; font-size: 15px !important; }
.mk-mobile-register a i { color: var(--mk-purple); }
.mk-signin-dropdown { min-width: 300px; } .mk-signin-dropdown a { white-space: nowrap; }

/* Intro image follows the text column's height (short intros no longer get a 684px image) */
.mk-services-intro .mk-about-intro-grid { align-items: stretch; }
.mk-services-intro .mk-services-intro-media { position: relative; min-height: 380px; max-height: 620px; margin-top: 0; align-self: stretch; }
.mk-services-intro .mk-services-intro-media img { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; }
@media (max-width: 991px) {
    .mk-services-intro .mk-services-intro-media { min-height: 300px; max-height: 360px; }
}

/* Numbered cards (01, 02, …) */
.mk-numbered { background: linear-gradient(180deg, #fff 0%, #f6f4ff 100%); }
.mk-numbered-head { text-align: center; max-width: 760px; margin: 0 auto 50px; }
.mk-numbered-head .mk-title { margin-bottom: 12px; }
.mk-numbered-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; counter-reset: none; }
.mk-numbered-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 180px;
    padding: 26px 22px 24px;
    background: #fff;
    border: 1px solid var(--mk-border);
    border-radius: 16px;
    overflow: hidden;
    transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s, border-color .3s;
}
.mk-numbered-card::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    top: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--mk-primary), var(--mk-purple));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .35s ease;
}
html[dir="rtl"] .mk-numbered-card::after { transform-origin: right; }
.mk-numbered-card:hover { transform: translateY(-4px); border-color: #c4b5fd; box-shadow: 0 18px 36px -18px rgba(79, 70, 229, .35); }
.mk-numbered-card:hover::after { transform: scaleX(1); }
.mk-numbered-no {
    font-family: var(--mk-font-head);
    font-size: 40px !important;
    font-weight: 800;
    line-height: 1 !important;
    background: linear-gradient(135deg, var(--mk-primary), var(--mk-purple));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.mk-numbered-card p { margin: 0; font-size: 16px !important; line-height: 1.55 !important; color: #374151; font-weight: 500; }
.mk-numbered-cta { text-align: center; margin-top: 40px; }
@media (max-width: 1199px) { .mk-numbered-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) { .mk-numbered-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .mk-numbered-card { min-height: 150px; } }
@media (max-width: 420px) { .mk-numbered-grid { grid-template-columns: 1fr; } }

/* ==========================================================================
   User dashboard (frame for dashboard, profile, password, support tickets)
   ========================================================================== */
.mk-dash-band {
    padding: 50px 0 120px;
    background:
        radial-gradient(500px 300px at 8% 30%, rgba(167, 139, 250, .25), transparent 70%),
        radial-gradient(500px 300px at 95% 80%, rgba(16, 185, 129, .15), transparent 70%),
        linear-gradient(120deg, #f1eefe 0%, #eef0f4 55%, #e7f1ea 100%);
}
.mk-dash-band .mk-kicker { margin-bottom: 10px; }
.mk-dash-band h1 { font-size: clamp(28px, 3vw, 40px) !important; font-weight: 700; color: var(--mk-ink); margin-bottom: 6px; }
.mk-dash-band p { color: var(--mk-muted); margin: 0; }
.mk-dash { margin-top: -80px; padding-bottom: 80px; }
.mk-dash-grid { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 28px; align-items: start; }

.mk-dash-side { position: sticky; top: 110px; background: #fff; border: 1px solid var(--mk-border); border-radius: 18px; padding: 22px; box-shadow: 0 20px 50px -30px rgba(17, 24, 39, .25); }
.mk-dash-user { display: flex; align-items: center; gap: 12px; padding-bottom: 18px; margin-bottom: 14px; border-bottom: 1px solid var(--mk-border); }
.mk-dash-user img, .mk-dash-avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.mk-dash-avatar { display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--mk-primary), var(--mk-purple)); color: #fff; font-weight: 700; font-size: 18px; }
.mk-dash-user strong { display: block; color: var(--mk-ink); font-size: 16px; }
.mk-dash-user small { display: block; color: var(--mk-muted); font-size: 13px; word-break: break-all; }
.mk-dash-nav { display: flex; flex-direction: column; gap: 4px; }
.mk-dash-nav a { display: flex; align-items: center; gap: 12px; padding: 11px 14px; border-radius: 10px; color: #374151; text-decoration: none; font-size: 15px !important; font-weight: 500; transition: background .2s, color .2s; }
.mk-dash-nav a i { font-size: 17px; color: var(--mk-purple); }
.mk-dash-nav a:hover { background: #f5f3ff; color: var(--mk-primary); }
.mk-dash-nav a.is-active { background: linear-gradient(90deg, var(--mk-primary), var(--mk-purple)); color: #fff; }
.mk-dash-nav a.is-active i { color: #fff; }
.mk-dash-nav .mk-dash-logout { margin-top: 10px; border-top: 1px solid var(--mk-border); border-radius: 0 0 10px 10px; padding-top: 16px; color: var(--mk-red); }
.mk-dash-nav .mk-dash-logout i { color: var(--mk-red); }

.mk-dash-main { min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.mk-dash-main > form, .mk-dash-main > .row, .mk-dash-main > .card, .mk-dash-main > .table-responsive {
    background: #fff; border: 1px solid var(--mk-border); border-radius: 18px; padding: 28px; box-shadow: 0 20px 50px -30px rgba(17, 24, 39, .2); margin: 0;
}
.mk-dash-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.mk-dash-stat { display: flex; align-items: center; gap: 14px; padding: 20px; background: #fff; border: 1px solid var(--mk-border); border-radius: 16px; box-shadow: 0 20px 50px -34px rgba(17, 24, 39, .3); }
.mk-dash-stat-icon { width: 46px; height: 46px; border-radius: 12px; background: #ede9fe; color: var(--mk-purple); display: inline-flex; align-items: center; justify-content: center; font-size: 20px; flex-shrink: 0; }
.mk-dash-stat:nth-child(2) .mk-dash-stat-icon { background: #e0f2fe; color: #0284c7; }
.mk-dash-stat:nth-child(3) .mk-dash-stat-icon { background: #fef3c7; color: #d97706; }
.mk-dash-stat:nth-child(4) .mk-dash-stat-icon { background: #d1fae5; color: #059669; }
.mk-dash-stat small { display: block; color: var(--mk-muted); font-size: 13px; }
.mk-dash-stat strong { display: block; color: var(--mk-ink); font-size: 20px; font-family: var(--mk-font-head); }
.mk-dash-muted { color: var(--mk-muted); font-size: 14px; font-weight: 500; }

.mk-dash-card { background: #fff; border: 1px solid var(--mk-border); border-radius: 18px; padding: 26px; box-shadow: 0 20px 50px -30px rgba(17, 24, 39, .2); }
.mk-dash-card-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; flex-wrap: wrap; }
.mk-dash-card-head h2 { font-size: 20px !important; font-weight: 700; color: var(--mk-ink); margin: 0; }
.mk-btn-sm { min-height: 40px; padding: 8px 16px; font-size: 14px !important; }
.mk-dash-empty { text-align: center; padding: 30px 10px; color: var(--mk-muted); }
.mk-dash-empty i { font-size: 38px; color: #c4b5fd; display: block; margin-bottom: 8px; }
.mk-dash-table-wrap { overflow-x: auto; }
.mk-dash-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.mk-dash-table th { text-align: start; font-weight: 600; color: var(--mk-muted); font-size: 13px; padding: 10px 12px; border-bottom: 1px solid var(--mk-border); white-space: nowrap; }
.mk-dash-table td { padding: 14px 12px; border-bottom: 1px solid var(--mk-soft); color: #374151; vertical-align: middle; }
.mk-dash-table tr:last-child td { border-bottom: 0; }
.mk-dash-badge { display: inline-block; padding: 4px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.mk-dash-badge--new { background: #e0f2fe; color: #0369a1; }
.mk-dash-badge--review { background: #fef3c7; color: #92400e; }
.mk-dash-badge--done { background: #d1fae5; color: #065f46; }
.mk-dash-badge--rejected { background: #fee2e2; color: #991b1b; }
.mk-dash-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.mk-dash-link { display: flex; align-items: center; gap: 12px; padding: 16px; border: 1px solid var(--mk-border); border-radius: 12px; color: var(--mk-ink); text-decoration: none; font-weight: 600; font-size: 15px !important; transition: all .25s; }
.mk-dash-link > i:first-child { font-size: 20px; color: var(--mk-purple); }
.mk-dash-link span { flex: 1; }
.mk-dash-link-go { color: #c4b5fd; transition: transform .25s; }
html[dir="rtl"] .mk-dash-link-go { transform: scaleX(-1); }
.mk-dash-link:hover { border-color: #c4b5fd; background: #faf9ff; color: var(--mk-primary); transform: translateY(-2px); }
.mk-dash-link:hover .mk-dash-link-go { color: var(--mk-primary); }

/* Existing account forms (profile, password, support) inside the frame */
.mk-dash-main .form-label { font-weight: 600; color: #374151; font-size: 14px !important; }
.mk-dash-main .form-control, .mk-dash-main .form-select { border: 1px solid #d1d5db; border-radius: 10px; padding: 11px 14px; font-size: 15px !important; }
.mk-dash-main .form-control:focus, .mk-dash-main .form-select:focus { border-color: var(--mk-purple); box-shadow: 0 0 0 4px rgba(139, 92, 246, .15); }
.mk-dash-main .btn-base, .mk-dash-main .btn--base, .mk-dash-main .btn-primary { background: var(--mk-primary); border: 0; color: #fff; border-radius: 10px; padding: 12px 20px; font-weight: 600; }
.mk-dash-main .btn-base:hover, .mk-dash-main .btn--base:hover, .mk-dash-main .btn-primary:hover { background: var(--mk-primary-hover); color: #fff; }
.mk-dash-main .card.custom-card { border: 0; box-shadow: none; padding: 0; }
.mk-dash-main > .row > .col-12.col-md-6 { width: 100%; max-width: 560px; }

@media (max-width: 1199px) {
    .mk-dash-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .mk-dash-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
    .mk-dash-grid { grid-template-columns: 1fr; }
    .mk-dash-side { position: static; }
    .mk-dash-nav { flex-direction: row; flex-wrap: wrap; }
    .mk-dash-nav .mk-dash-logout { margin-top: 0; border-top: 0; padding-top: 11px; }
}
@media (max-width: 575px) {
    .mk-dash-stats, .mk-dash-links { grid-template-columns: 1fr; }
    .mk-dash-main > form, .mk-dash-main > .row, .mk-dash-card { padding: 20px; }
}

/* Numbered card icon */
.mk-numbered-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mk-numbered-icon { width: 48px; height: 48px; border-radius: 14px; background: #ede9fe; color: var(--mk-purple); display: inline-flex; align-items: center; justify-content: center; font-size: 20px !important; flex-shrink: 0; transition: background .3s, color .3s, transform .3s; }
.mk-numbered-card:hover .mk-numbered-icon { background: linear-gradient(135deg, var(--mk-primary), var(--mk-purple)); color: #fff; transform: rotate(-6deg) scale(1.05); }
.mk-numbered-card:nth-child(5n+2) .mk-numbered-icon { background: #e0f2fe; color: #0284c7; }
.mk-numbered-card:nth-child(5n+3) .mk-numbered-icon { background: #d1fae5; color: #059669; }
.mk-numbered-card:nth-child(5n+4) .mk-numbered-icon { background: #fef3c7; color: #d97706; }
.mk-numbered-card:nth-child(5n+5) .mk-numbered-icon { background: #fee2e2; color: #dc2626; }
.mk-numbered-card:hover .mk-numbered-icon { background: linear-gradient(135deg, var(--mk-primary), var(--mk-purple)) !important; color: #fff !important; }

/* Benefit cards: centered icon, no number */
.mk-numbered-card { align-items: center; text-align: center; justify-content: flex-start; padding-top: 30px; }
.mk-numbered-icon { width: 64px; height: 64px; border-radius: 18px; font-size: 26px !important; }

/* ==========================================================================
   Sign in / Sign up — split card (purple panel + white form)
   ========================================================================== */
.mk-auth { padding: 50px 0 80px; background: #f5f3fb; }
.mk-auth-shell {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    max-width: 1060px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #ebe8f5;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 30px 70px -40px rgba(49, 18, 105, .45);
}
.mk-auth-shell--wide { grid-template-columns: 1fr 1.45fr; max-width: 1160px; }

/* Panel */
.mk-auth-panel {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 40px 40px 44px;
    color: #fff;
    background:
        radial-gradient(420px 300px at 10% 0%, rgba(167, 139, 250, .45), transparent 70%),
        linear-gradient(160deg, #5b21b6 0%, #4c1d95 45%, #2e1065 100%);
    display: flex;
    flex-direction: column;
}
.mk-auth-orb { position: absolute; z-index: -1; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .12); }
.mk-auth-orb--a { width: 380px; height: 380px; top: -170px; inset-inline-end: -140px; }
.mk-auth-orb--b { width: 260px; height: 260px; bottom: -120px; inset-inline-start: -90px; background: rgba(255, 255, 255, .04); }
.mk-auth-logo { align-self: flex-start; display: inline-block; background: #fff; border-radius: 14px; padding: 8px 12px; box-shadow: 0 10px 24px -12px rgba(0, 0, 0, .4); }
.mk-auth-logo img { height: 44px; width: auto; display: block; }
.mk-auth-panel h2 { color: #fff; font-size: clamp(26px, 2.6vw, 34px) !important; font-weight: 800; margin: 34px 0 12px; }
.mk-auth-panel > p { color: rgba(255, 255, 255, .78); font-size: 15px !important; line-height: 1.7 !important; margin-bottom: 26px; }
.mk-auth-perks { list-style: none; padding: 0; margin: 0 0 32px; display: flex; flex-direction: column; gap: 14px; }
.mk-auth-perks li { display: flex; align-items: center; gap: 12px; font-size: 15px !important; font-weight: 600; color: #fff; }
.mk-auth-perks span { width: 38px; height: 38px; border-radius: 10px; background: rgba(255, 255, 255, .12); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.mk-auth-perks span i { color: #fde047; font-size: 15px; }

.mk-auth-card {
    position: relative;
    margin-top: auto;
    align-self: center;
    width: min(320px, 100%);
    aspect-ratio: 1.6;
    border-radius: 18px;
    background: linear-gradient(135deg, #1f1f2e 0%, #2b2b3d 55%, #17171f 100%);
    box-shadow: 0 24px 50px -20px rgba(0, 0, 0, .65), inset 0 0 0 1px rgba(255, 255, 255, .06);
    transform: rotate(-6deg);
    animation: mk-auth-card 7s ease-in-out infinite;
}
@keyframes mk-auth-card { 50% { transform: rotate(-4deg) translateY(-8px); } }
.mk-auth-card-nfc { position: absolute; top: 20px; inset-inline-start: 22px; color: rgba(255, 255, 255, .6); transform: rotate(90deg); }
.mk-auth-card-chip { position: absolute; top: 46%; inset-inline-start: 22px; width: 42px; height: 30px; border-radius: 6px; background: linear-gradient(135deg, #fde68a, #d4a017); }
.mk-auth-card-brand { position: absolute; top: 18px; inset-inline-end: 22px; font-weight: 800; color: #fde047; font-size: 15px; }
.mk-auth-card-number { position: absolute; bottom: 20px; inset-inline-start: 22px; color: #fff; font-weight: 600; letter-spacing: .12em; font-size: 15px; }

/* Form side */
.mk-auth-form { padding: 44px 48px; display: flex; flex-direction: column; justify-content: center; }
.mk-auth-head { margin-bottom: 26px; }
.mk-auth-head h1 { font-size: clamp(26px, 2.4vw, 32px) !important; font-weight: 800; color: #1f1f2e; margin-bottom: 6px; }
.mk-auth-head p { color: var(--mk-muted); margin: 0; font-size: 15px !important; }
.mk-auth-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
.mk-auth-field { margin-bottom: 18px; min-width: 0; }
.mk-auth-field label, .mk-auth-label-row label { display: block; font-size: 14px !important; font-weight: 700; color: #1f1f2e; margin-bottom: 8px; }
.mk-auth-label-row { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.mk-auth-label-row a { font-size: 13px !important; font-weight: 600; color: #6d28d9; text-decoration: none; }
.mk-auth-label-row a:hover { text-decoration: underline; }
.mk-auth-input {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    height: 52px;
    padding: 0 14px;
    border: 1px solid #ddd9ea;
    border-radius: 12px;
    background: #fff;
    transition: border-color .2s, box-shadow .2s;
}
.mk-auth-input:focus-within { border-color: #7c3aed; box-shadow: 0 0 0 4px rgba(124, 58, 237, .13); }
.mk-auth-input.is-invalid { border-color: var(--mk-red); }
.mk-auth-input > i { color: #8b85a5; font-size: 17px; flex-shrink: 0; }
.mk-auth-input input, .mk-auth-input select {
    flex: 1;
    min-width: 0;
    height: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    font-size: 15px !important;
    color: #1f1f2e;
    font-family: var(--mk-font-body);
    padding: 0;
}
.mk-auth-input select { cursor: pointer; }
.mk-auth-input input::placeholder { color: #a8a3bd; }
.mk-auth-eye { border: 0; background: transparent; padding: 4px; color: #8b85a5; cursor: pointer; font-size: 17px; line-height: 1; }
.mk-auth-eye:hover { color: #6d28d9; }
.mk-auth-input--prefix { padding-inline-start: 0; overflow: hidden; }
.mk-auth-dial { align-self: stretch; display: inline-flex; align-items: center; padding: 0 14px; background: #f3f0fb; color: #4c1d95; font-weight: 700; font-size: 14px; border-inline-end: 1px solid #ddd9ea; }

.mk-auth-rules { display: flex; flex-wrap: wrap; gap: 8px 20px; padding: 12px 14px; margin-bottom: 18px; background: #f7f5fc; border-radius: 12px; font-size: 13px; color: #8b85a5; }
.mk-auth-rules span { display: inline-flex; align-items: center; gap: 6px; transition: color .2s; }
.mk-auth-rules span.is-ok { color: #059669; }
.mk-auth-remember, .mk-auth-agree { margin-bottom: 22px; font-size: 14px !important; }
.mk-auth-agree a { color: #4c1d95; font-weight: 700; text-decoration: none; }
.mk-auth-agree a:hover { text-decoration: underline; }
.mk-auth-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    height: 54px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(90deg, #4c1d95, #3b0764);
    color: #fff;
    font-weight: 700;
    font-size: 16px !important;
    cursor: pointer;
    box-shadow: 0 14px 28px -14px rgba(76, 29, 149, .8);
    transition: transform .25s, box-shadow .25s, filter .25s;
}
.mk-auth-submit:hover { transform: translateY(-1px); filter: brightness(1.12); }
.mk-auth-submit:disabled { opacity: .8; cursor: wait; transform: none; }
.mk-auth-switch { text-align: center; margin: 20px 0 0; color: var(--mk-muted); font-size: 14px !important; }
.mk-auth-switch a { color: #4c1d95; font-weight: 700; text-decoration: none; }
.mk-auth-switch a:hover { text-decoration: underline; }

@media (max-width: 991px) {
    .mk-auth-shell, .mk-auth-shell--wide { grid-template-columns: 1fr; max-width: 640px; }
    .mk-auth-form { order: -1; padding: 34px 28px; }
    .mk-auth-card { display: none; }
    .mk-auth-panel { padding: 32px 28px; }
    .mk-auth-panel h2 { margin-top: 22px; }
    .mk-auth-perks { margin-bottom: 0; }
}
@media (max-width: 575px) {
    .mk-auth { padding: 24px 0 50px; }
    .mk-auth-grid { grid-template-columns: 1fr; }
    .mk-auth-form { padding: 28px 20px; }
}

/* Sign in / Sign up — refinements to match the approved reference */
.mk-auth-shell { border-radius: 18px; }
.mk-auth-panel {
    background:
        radial-gradient(360px 300px at 85% 12%, rgba(147, 51, 234, .45), transparent 70%),
        linear-gradient(165deg, #4a0f85 0%, #3b0a6e 45%, #2c0556 100%);
    padding-bottom: 36px;
}
.mk-auth-orb--a { width: 420px; height: 420px; top: -150px; inset-inline-end: -170px; border-color: rgba(255, 255, 255, .1); }
.mk-auth-logo { border-radius: 12px; padding: 10px 14px; }
.mk-auth-perks span { width: 38px; height: 38px; border-radius: 8px; background: rgba(255, 255, 255, .1); }
.mk-auth-perks span i { color: #e6ee4e; }

/* Card: smaller, bottom-start, tilted, brand at the bottom */
.mk-auth-card {
    align-self: flex-start;
    width: 280px;
    margin-inline-start: -6px;
    margin-top: auto;
    border-radius: 16px;
    background: linear-gradient(135deg, #2a2337 0%, #231b30 50%, #1a1424 100%);
    box-shadow: 0 26px 50px -18px rgba(0, 0, 0, .7), inset 0 0 0 1px rgba(255, 255, 255, .07);
    transform: rotate(-7deg);
    animation: mk-auth-card2 7s ease-in-out infinite;
}
html[dir="rtl"] .mk-auth-card { transform: rotate(7deg); animation-name: mk-auth-card2-rtl; }
@keyframes mk-auth-card2 { 50% { transform: rotate(-5deg) translateY(-6px); } }
@keyframes mk-auth-card2-rtl { 50% { transform: rotate(5deg) translateY(-6px); } }
.mk-auth-card-mark {
    position: absolute; top: 18px; inset-inline-start: 20px;
    width: 32px; height: 32px; border-radius: 50%;
    border: 2.5px solid #d4e157; color: #d4e157;
    display: inline-flex; align-items: center; justify-content: center; font-size: 13px;
}
.mk-auth-card-nfc { top: 20px; inset-inline-start: auto; inset-inline-end: 20px; font-size: 14px; }
.mk-auth-card-chip { top: 44%; inset-inline-start: 22px; width: 40px; height: 30px; border-radius: 6px; }
.mk-auth-card-brand { top: auto; bottom: 20px; inset-inline-end: auto; inset-inline-start: 22px; color: #fff; font-size: 16px; }
.mk-auth-card-number { display: none; }

/* Form controls: flatter, tighter */
.mk-auth-input { height: 48px; border-radius: 6px; border-color: #dcd9e4; }
.mk-auth-input:focus-within { border-color: #5b21b6; box-shadow: 0 0 0 3px rgba(91, 33, 182, .12); }
.mk-auth-dial { background: #f5f2fa; }
.mk-auth-rules { border-radius: 8px; padding: 13px 14px; }
.mk-auth-submit {
    height: 54px;
    border-radius: 6px;
    background: #3f0a6e;
    box-shadow: none;
}
.mk-auth-submit:hover { background: #33075c; filter: none; transform: none; }
.mk-auth-agree a, .mk-auth-switch a { color: #4c1d95; }
.mk-auth-head h1 { font-family: var(--mk-font-body); font-weight: 800; letter-spacing: -.01em; }

/* Website account forms in the split auth layout (member-registration-form) */
.mk-auth-form .mk-form-grid { gap: 0 18px; }
.mk-auth-form .mk-field { margin-bottom: 18px; gap: 0; }
.mk-auth-form .mk-label { display: block; font-size: 14px !important; font-weight: 700; color: #1f1f2e; margin-bottom: 8px; }
.mk-auth-form .mk-field .mk-auth-input input, .mk-auth-form .mk-field .mk-auth-input select { border: 0 !important; box-shadow: none !important; padding: 0 !important; height: 100%; border-radius: 0; background: transparent; }
.mk-auth-form .mk-field.is-invalid .mk-auth-input { border-color: var(--mk-red); }
.mk-auth-form .mk-check { font-size: 14px !important; }
.mk-auth-form .mk-form-alt { text-align: center; margin-top: 20px; font-size: 14px !important; }
.mk-auth-form .mk-form-alt a { color: #4c1d95; font-weight: 700; }
.mk-auth-form .mk-form-errors, .mk-auth-form .mk-form-note { margin-bottom: 18px; }
.mk-auth-form .mk-auth-submit { margin-top: 6px; }
@media (max-width: 575px) { .mk-auth-form .mk-form-grid { grid-template-columns: 1fr; } }

/* Auth panel without the card: highlights + Vision 2030 badge */
.mk-auth-perks li { align-items: flex-start; line-height: 1.5 !important; }
.mk-auth-perks li span { margin-top: -2px; }
.mk-auth-vision { margin-top: auto; align-self: flex-start; display: inline-flex; align-items: center; gap: 10px; padding: 10px 16px; border-radius: 8px; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .16); color: #fff; font-weight: 600; font-size: 14px !important; }
.mk-auth-vision i { color: #4ade80; }
@media (max-width: 991px) { .mk-auth-vision { margin-top: 24px; } }

/* Partner Categories cards: white band so it separates from the benefits above */
#partner-categories { background: #fff; padding-top: 40px; }
#partner-categories .mk-numbered-card { min-height: 160px; }

/* Icon cards: centre an incomplete last row */
.mk-numbered-grid { display: flex; flex-wrap: wrap; justify-content: center; }
.mk-numbered-card { flex: 0 0 calc((100% - 80px) / 5); }
@media (max-width: 1199px) { .mk-numbered-card { flex-basis: calc((100% - 40px) / 3); } }
@media (max-width: 767px) { .mk-numbered-card { flex-basis: calc((100% - 20px) / 2); } }
@media (max-width: 420px) { .mk-numbered-card { flex-basis: 100%; } }

/* Icon cards on phones: always 2 per row */
@media (max-width: 767px) {
    .mk-numbered-grid { gap: 12px; }
    .mk-numbered-card { flex-basis: calc((100% - 12px) / 2) !important; min-height: 0 !important; padding: 18px 12px; gap: 12px; }
    .mk-numbered-icon { width: 50px; height: 50px; border-radius: 14px; font-size: 20px !important; }
    .mk-numbered-card p { font-size: 14px !important; line-height: 1.45 !important; }
}

/* Mobile: show the purple panel (left side on desktop) first, then the form */
@media (max-width: 991px) {
    .mk-auth-form { order: 0; }
    .mk-auth-panel { padding: 28px 22px 26px; }
    .mk-auth-panel h2 { margin: 18px 0 8px; }
    .mk-auth-panel > p { margin-bottom: 18px; }
    .mk-auth-perks { gap: 10px; }
    .mk-auth-vision { margin-top: 20px; }
}

/* Second icon-card section on a page gets a white band */
#provider-benefits, #retiree-gains { background: #fff; padding-top: 40px; }
/* Long forms in the split layout (retiree): 2-column checkbox groups, headings tighter */
.mk-auth-form .mk-check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mk-auth-form .mk-form-heading { font-size: 16px !important; }
.mk-auth-form .mk-field input[type=file] { border: 1px dashed #cfc9df; border-radius: 6px; padding: 10px; background: #faf9fd; }
@media (max-width: 575px) { .mk-auth-form .mk-check-grid { grid-template-columns: 1fr; } }

/* Review note under the submit button: justified on phones */
@media (max-width: 767px) { .mk-form-note-text { text-align: justify !important; text-align-last: start; hyphens: auto; } }

/* Mobile: in every image + text section, the image comes first */
@media (max-width: 991px) {
    .mk-about-intro-grid > .mk-services-intro-media, .mk-about-intro-grid > .mk-about-visual { order: -1; }
    .mk-why-grid > img { order: -1; }
    .mk-split-grid > .mk-split-media { order: -1; }
    .mk-about-intro-grid, .mk-why-grid, .mk-split-grid { gap: 28px; }
}

/* Phones: shorter section images */
@media (max-width: 767px) {
    .mk-services-intro .mk-services-intro-media, .mk-services-intro-media { min-height: 0 !important; max-height: none !important; height: 220px !important; }
    .mk-split-media, .mk-split-media img, .mk-split:not(.mk-split--reverse) .mk-split-media, .mk-split:not(.mk-split--reverse) .mk-split-media img { min-height: 0 !important; height: 220px !important; }
    .mk-checklist-media { height: 220px !important; margin-bottom: 28px; }
    .mk-why-grid img { height: 220px !important; }
    .mk-about-visual { max-width: 260px !important; }
    .mk-service-media { height: 160px; margin-bottom: 24px; }
}

/* Top bar: only language switch + Sign In, aligned to the end */
.mk-topbar { position: relative; z-index: 1040; }
.mk-topbar .mk-container { justify-content: flex-end; min-height: 60px; }
.mk-topbar-right { gap: 14px; }
.mk-topbar .mk-btn-signin { height: 40px; min-height: 0; padding: 0 18px; font-size: 14px !important; border-radius: 20px; gap: 8px; box-shadow: 0 8px 18px -10px rgba(76, 29, 149, .7); }
.mk-topbar .mk-btn-signin i { font-size: 15px; }
.mk-topbar .mk-btn-signin .bi-chevron-down { font-size: 11px; }
.mk-topbar .mk-signin-dropdown { top: calc(100% + 8px); }
.mk-header-actions { gap: 0; }
@media (max-width: 575px) { .mk-topbar .mk-container { min-height: 52px; } .mk-topbar .mk-btn-signin { height: 36px; padding: 0 14px; font-size: 13px !important; } }

/* Top bar colour #3E006D */
.mk-topbar { background: #3E006D; border-bottom: 0; }
.mk-topbar .mk-lang-switch { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .25); }
.mk-topbar .mk-lang-switch a { color: #fff; }
.mk-topbar .mk-lang-switch a.active { background: rgba(255, 255, 255, .2); }
.mk-topbar .mk-lang-switch a:not(.active):hover { background: rgba(255, 255, 255, .12); }
.mk-topbar .mk-btn-signin { background: #fff; color: #3E006D; box-shadow: none; }
.mk-topbar .mk-btn-signin:hover { background: #f3e8ff; color: #3E006D; filter: none; }

/* Top bar pills (En/Ar toggle + Sign In), light grey on the purple bar */
.mk-topbar-pill, .mk-topbar .mk-btn-signin {
    display: inline-flex; align-items: center; gap: 8px; height: 42px; min-height: 0; padding: 0 18px;
    border: 0; border-radius: 22px; background: #e6e3ec; color: #1f1f2e; font-weight: 700; font-size: 14px !important;
    text-decoration: none; box-shadow: none; transition: background .2s, transform .2s;
}
.mk-topbar-pill:hover, .mk-topbar .mk-btn-signin:hover { background: #fff; color: #1f1f2e; transform: none; }
.mk-lang-toggle i { font-size: 18px; color: #1f1f2e; }
.mk-topbar .mk-btn-signin .bi-person-circle { color: #6d28d9; font-size: 18px; }
.mk-topbar .mk-btn-signin .bi-grid-1x2 { color: #6d28d9; }
.mk-topbar .mk-btn-signin .bi-chevron-down { color: #4b5563; }
@media (max-width: 575px) { .mk-topbar-pill, .mk-topbar .mk-btn-signin { height: 36px; padding: 0 14px; font-size: 13px !important; } }
.mk-topbar .mk-btn-signin { text-transform: none; }

/* Breadcrumb / page-title band: same colour as the top bar */
.mk-page-banner { background: radial-gradient(520px 260px at 12% 20%, rgba(139, 92, 246, .35), transparent 70%), radial-gradient(420px 240px at 92% 90%, rgba(167, 139, 250, .18), transparent 70%), #3E006D; }
.mk-page-banner h1 { color: #fff !important; }
.mk-breadcrumb, .mk-breadcrumb span { color: rgba(255, 255, 255, .6); }
.mk-breadcrumb a { color: rgba(255, 255, 255, .85); }
.mk-breadcrumb a:hover { color: #fff; }
.mk-breadcrumb span[aria-current] { color: #e9d5ff; }

/* ==========================================================================
   Mobile menu (offcanvas)
   ========================================================================== */
.mk-offcanvas.offcanvas {
    width: min(360px, 88vw);
    border: 0 !important;
    display: flex;
    flex-direction: column;
    background: #fff;
    box-shadow: 0 0 60px rgba(30, 0, 60, .35);
    transition: transform .42s cubic-bezier(.22, .8, .24, 1) !important;
}
.offcanvas-backdrop.show { opacity: 1 !important; background: rgba(30, 6, 56, .45); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }

.mk-mm-head {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 18px 18px;
    background: radial-gradient(260px 160px at 85% 0%, rgba(139, 92, 246, .45), transparent 70%), #3E006D;
}
.mk-mm-logo { background: #fff; border-radius: 12px; padding: 6px 10px; display: inline-block; }
.mk-mm-logo img { height: 40px; width: auto; display: block; }
.mk-mm-close {
    width: 40px; height: 40px; border-radius: 50%; border: 0;
    background: rgba(255, 255, 255, .14); color: #fff; font-size: 16px;
    display: inline-flex; align-items: center; justify-content: center;
    transition: background .2s, transform .3s;
}
.mk-mm-close:hover { background: rgba(255, 255, 255, .25); transform: rotate(90deg); }

.mk-mm-body { flex: 1; overflow-y: auto; padding: 18px 16px 10px; -webkit-overflow-scrolling: touch; }
.mk-mm-search { display: flex; align-items: center; gap: 10px; height: 46px; padding: 0 14px; border-radius: 12px; background: #f4f2f8; margin-bottom: 14px; }
.mk-mm-search i { color: #8b85a5; }
.mk-mm-search input { flex: 1; border: 0; outline: 0; background: transparent; font-size: 15px !important; color: var(--mk-ink); min-width: 0; }

.mk-mm-nav { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.mk-mm-link {
    display: flex; align-items: center; gap: 12px; width: 100%;
    padding: 10px 10px; border: 0; border-radius: 12px; background: transparent;
    color: #1f1f2e; font-size: 16px !important; font-weight: 600; text-align: start; text-decoration: none;
    transition: background .2s, color .2s;
}
.mk-mm-link:hover { background: #f6f3fc; color: #3E006D; }
.mk-mm-icon {
    width: 38px; height: 38px; border-radius: 10px; flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center;
    background: #f1ecfb; color: #6d28d9; font-size: 17px;
    transition: background .2s, color .2s;
}
.mk-mm-text { flex: 1; }
.mk-mm-caret { font-size: 13px; color: #9a93b3; transition: transform .3s ease; }
.mk-mm-link:not(.collapsed)[aria-expanded="true"] .mk-mm-caret { transform: rotate(180deg); color: #3E006D; }
.mk-mm-link.is-active { background: #f3edfd; color: #3E006D; }
.mk-mm-link.is-active .mk-mm-icon { background: #3E006D; color: #fff; }

.mk-mm-sub { list-style: none; margin: 2px 0 6px; padding: 4px 0 4px; margin-inline-start: 28px; border-inline-start: 2px solid #ece6f8; }
.mk-mm-sub a {
    display: block; padding: 9px 14px; margin-inline-start: 10px; border-radius: 8px;
    color: #4b5563; font-size: 15px !important; text-decoration: none; transition: background .2s, color .2s;
}
.mk-mm-sub a:hover, .mk-mm-sub a.is-active { background: #f6f3fc; color: #3E006D; font-weight: 600; }
.mk-offcanvas .collapsing { transition: height .32s cubic-bezier(.22, .8, .24, 1); }

.mk-mm-register { margin-top: 18px; padding: 14px; border-radius: 14px; background: #f7f4fc; }
.mk-mm-label { display: block; font-size: 12px !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #8b85a5; margin-bottom: 10px; }
html[dir="rtl"] .mk-mm-label { letter-spacing: 0; }
.mk-mm-register-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.mk-mm-register-grid a {
    display: flex; align-items: center; gap: 8px; padding: 10px; border-radius: 10px;
    background: #fff; border: 1px solid #ebe5f6; color: #1f1f2e; font-size: 14px !important; font-weight: 600; text-decoration: none;
    transition: border-color .2s, color .2s, transform .2s;
}
.mk-mm-register-grid a i { color: #6d28d9; }
.mk-mm-register-grid a:hover { border-color: #c4b5fd; color: #3E006D; transform: translateY(-1px); }

.mk-mm-foot { display: flex; gap: 10px; padding: 14px 16px 18px; border-top: 1px solid #efeaf7; background: #fff; }
.mk-mm-lang, .mk-mm-signin {
    flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 48px; border-radius: 12px;
    font-weight: 700; font-size: 15px !important; text-decoration: none; transition: background .2s, color .2s;
}
.mk-mm-lang { background: #f1eef6; color: #1f1f2e; }
.mk-mm-lang:hover { background: #e7e2ef; color: #1f1f2e; }
.mk-mm-signin { background: #3E006D; color: #fff; }
.mk-mm-signin:hover { background: #2e0052; color: #fff; }

/* Staggered entrance when the menu opens */
.mk-offcanvas .mk-mm-item { opacity: 0; transform: translateX(-14px); }
html[dir="rtl"] .mk-offcanvas .mk-mm-item { transform: translateX(14px); }
.mk-offcanvas.show .mk-mm-item, .mk-offcanvas.showing .mk-mm-item {
    animation: mk-mm-in .45s cubic-bezier(.22, .8, .24, 1) forwards;
    animation-delay: calc(var(--i, 0) * 45ms + 80ms);
}
@keyframes mk-mm-in { to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
    .mk-offcanvas .mk-mm-item { opacity: 1; transform: none; animation: none !important; }
}

/* ==========================================================================
   Header dropdowns (nav, More, Sign In) — smoother open/close
   ========================================================================== */
.mk-nav .mk-dropdown, .mk-signin-dropdown {
    top: calc(100% + 12px);
    min-width: 270px;
    padding: 8px;
    border: 1px solid #ece7f6;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 24px 50px -18px rgba(46, 10, 90, .28), 0 4px 12px -6px rgba(46, 10, 90, .12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px) scale(.97);
    transform-origin: top center;
    /* closing: fade out, then hide after a short grace period */
    transition: opacity .22s ease, transform .3s cubic-bezier(.22, .8, .24, 1), visibility 0s linear .3s;
}
/* invisible bridge so the menu stays open while the pointer travels into it */
.mk-nav .mk-dropdown::before, .mk-signin-dropdown::before {
    content: ""; position: absolute; inset-inline: 0; top: -14px; height: 14px;
}
/* small pointer arrow */
.mk-nav .mk-dropdown::after, .mk-signin-dropdown::after {
    content: ""; position: absolute; top: -6px; inset-inline-start: 26px;
    width: 12px; height: 12px; background: #fff;
    border-top: 1px solid #ece7f6; border-inline-start: 1px solid #ece7f6;
    transform: rotate(45deg); border-radius: 3px 0 0 0;
}
html[dir="rtl"] .mk-nav .mk-dropdown::after, html[dir="rtl"] .mk-signin-dropdown::after { border-radius: 0 3px 0 0; }
.mk-dropdown--more::after, .mk-signin-dropdown::after { inset-inline-start: auto; inset-inline-end: 26px; }

.mk-nav-item:hover > .mk-dropdown,
.mk-nav-item:focus-within > .mk-dropdown,
.mk-signin-menu:hover .mk-signin-dropdown,
.mk-signin-menu.is-open .mk-signin-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    transition: opacity .25s ease, transform .35s cubic-bezier(.22, .8, .24, 1), visibility 0s;
}

/* items */
.mk-nav .mk-dropdown li { list-style: none; }
.mk-nav .mk-dropdown a, .mk-signin-dropdown a {
    display: flex; align-items: center; gap: 12px;
    padding: 9px 10px; border-radius: 10px;
    color: #1f1f2e; font-size: 15px !important; font-weight: 500; text-decoration: none;
    transition: background .2s ease, color .2s ease, transform .25s cubic-bezier(.22, .8, .24, 1);
}
.mk-nav .mk-dropdown a > i:first-child, .mk-signin-dropdown a > i:first-child {
    width: 32px; height: 32px; border-radius: 9px; flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center;
    background: #f3eefc; color: #6d28d9 !important; font-size: 14px !important;
    transition: background .2s, color .2s;
}
.mk-nav .mk-dropdown a > i.mk-dropdown-arrow { font-size: 11px !important; }
.mk-nav .mk-dropdown a:hover, .mk-signin-dropdown a:hover,
.mk-nav .mk-dropdown a.is-active, .mk-signin-dropdown a.is-active {
    background: #f7f3fd; color: #3E006D; padding-inline-start: 10px; transform: translateX(3px);
}
html[dir="rtl"] .mk-nav .mk-dropdown a:hover, html[dir="rtl"] .mk-signin-dropdown a:hover { transform: translateX(-3px); }
.mk-nav .mk-dropdown a:hover > i:first-child, .mk-signin-dropdown a:hover > i:first-child,
.mk-nav .mk-dropdown a.is-active > i:first-child { background: #3E006D; color: #fff !important; }
.mk-dropdown a.is-active { font-weight: 600; }

/* items fade in one after another */
.mk-nav-item:hover > .mk-dropdown > li,
.mk-nav-item:focus-within > .mk-dropdown > li { animation: mk-dd-in .35s cubic-bezier(.22, .8, .24, 1) both; }
.mk-nav .mk-dropdown > li:nth-child(2) { animation-delay: .03s; }
.mk-nav .mk-dropdown > li:nth-child(3) { animation-delay: .06s; }
.mk-nav .mk-dropdown > li:nth-child(4) { animation-delay: .09s; }
.mk-nav .mk-dropdown > li:nth-child(5) { animation-delay: .12s; }
.mk-nav .mk-dropdown > li:nth-child(n+6) { animation-delay: .15s; }
@keyframes mk-dd-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* the menu label's caret turns while its dropdown is open */
.mk-nav > .mk-nav-item > a .bi-chevron-down { transition: transform .3s cubic-bezier(.22, .8, .24, 1); }
.mk-nav-item:hover > a .bi-chevron-down, .mk-nav-item:focus-within > a .bi-chevron-down { transform: rotate(180deg); }


@media (prefers-reduced-motion: reduce) {
    .mk-nav .mk-dropdown, .mk-signin-dropdown, .mk-nav .mk-dropdown > li { transition: none !important; animation: none !important; }
}
html[dir="rtl"] .mk-nav .mk-dropdown a > i.mk-dropdown-arrow::before { display: inline-block; transform: scaleX(-1); }

/* Header rows sit in the same centred container as the page content */
.mk-header .mk-container, .mk-topbar .mk-container { max-width: 1312px !important; padding-inline: 16px !important; }

/* Icon cards on a navy band */
.mk-numbered--dark { background: radial-gradient(700px 360px at 85% 0%, rgba(139, 92, 246, .22), transparent 70%), var(--mk-navy); }
.mk-numbered--dark .mk-numbered-head .mk-title { color: #fff; }
.mk-numbered--dark .mk-numbered-head .mk-lead { color: #a1a1c2; }
.mk-numbered--dark .mk-numbered-card { background: #121236; border-color: rgba(255, 255, 255, .08); }
.mk-numbered--dark .mk-numbered-card p { color: #e5e7eb; }
.mk-numbered--dark .mk-numbered-card:hover { border-color: rgba(139, 92, 246, .5); box-shadow: 0 18px 40px -18px rgba(79, 70, 229, .6); }
.mk-numbered--dark .mk-numbered-icon { background: rgba(139, 92, 246, .16) !important; color: #c4b5fd !important; }
#knowledge-news, #smart-search { padding-block: 90px; }
#smart-search { background: #fff; }
#experts { background: #fff; padding-block: 90px; }

/* Calmer heading scale (section titles were up to 60px) */
.mk-title { font-size: clamp(26px, 2.5vw, 40px) !important; line-height: 1.2 !important; }
.mk-hero h1 { font-size: clamp(30px, 3.4vw, 52px) !important; }
.mk-wallet h2, .mk-integration h2 { font-size: clamp(28px, 2.8vw, 44px) !important; line-height: 1.15 !important; }
.mk-cta-box h2 { font-size: clamp(24px, 2.4vw, 36px) !important; }
.mk-page-banner h1 { font-size: clamp(26px, 2.4vw, 36px) !important; }
.mk-vm-card h3 { font-size: 26px !important; }
.mk-about-intro .mk-title, .mk-split-copy .mk-title, .mk-why-grid .mk-title { margin-bottom: 24px; }
@media (max-width: 575px) { .mk-title { font-size: 24px !important; } .mk-hero h1 { font-size: 28px !important; } }

/* Header without search: menu sits at the far end, away from the logo */
@media (min-width: 1200px) {
    .mk-header .mk-container { gap: 48px; }
    .mk-nav { justify-content: flex-end; margin-inline-start: auto; }
}
#partners.mk-numbered { background: radial-gradient(700px 300px at 50% 0%, rgba(16, 185, 129, .07), transparent 70%), #fff; }

/* Header: smoother motion */
.mk-header {
    --mk-ease: cubic-bezier(.22, .8, .24, 1);
    transition: transform .45s var(--mk-ease), box-shadow .35s ease, background-color .35s ease, border-color .35s ease !important;
    will-change: transform;
}
.mk-header.is-hidden { transform: translateY(-100%); box-shadow: none; }
.mk-header .mk-container { transition: min-height .4s var(--mk-ease) !important; }
.mk-logo img { transition: height .4s var(--mk-ease), transform .35s var(--mk-ease) !important; }
.mk-logo:hover img { transform: translateY(-1px) scale(1.03); }
.mk-header.is-scrolled { box-shadow: 0 12px 30px -16px rgba(46, 10, 90, .22); border-color: rgba(62, 0, 109, .06); }
.mk-nav > .mk-nav-item > a { border-radius: 10px; transition: color .25s ease, background-color .25s ease !important; }
.mk-nav > .mk-nav-item > a:hover { background: #f6f2fd; color: #3E006D; }
.mk-nav > .mk-nav-item > a.is-active { color: #3E006D; }
.mk-nav > .mk-nav-item > a::after { background: linear-gradient(90deg, #3E006D, var(--mk-purple)); transition: transform .35s var(--mk-ease); }
@media (prefers-reduced-motion: reduce) { .mk-header, .mk-header .mk-container, .mk-logo img { transition: none !important; } .mk-header.is-hidden { transform: none; } }
#support-topics { background: #fff; }

/* Menu sits near the logo with a moderate gap (not pushed to the far end) */
@media (min-width: 1200px) {
    .mk-header .mk-container { gap: 56px; }
    .mk-nav { justify-content: flex-start; margin-inline-start: 0; }
}
@media (min-width: 1200px) and (max-width: 1365px) { .mk-header .mk-container { gap: 32px; } }

/* ==========================================================================
   User dashboard — refresh
   ========================================================================== */
/* Welcome band */
.mk-dash-band {
    position: relative; overflow: hidden; isolation: isolate;
    padding: 46px 0 120px;
    background:
        radial-gradient(520px 280px at 10% 10%, rgba(139, 92, 246, .45), transparent 70%),
        radial-gradient(420px 260px at 95% 100%, rgba(16, 185, 129, .18), transparent 70%),
        #3E006D;
}
.mk-dash-band-orb { position: absolute; z-index: -1; width: 420px; height: 420px; border-radius: 50%; inset-inline-end: -120px; top: -180px; border: 1px solid rgba(255, 255, 255, .12); }
.mk-dash-band-inner { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.mk-dash-band-kicker { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 20px; background: rgba(255, 255, 255, .12); color: #e9d5ff; font-size: 13px !important; font-weight: 600; margin-bottom: 14px; }
.mk-dash-band h1 { color: #fff !important; font-size: clamp(26px, 2.6vw, 38px) !important; font-weight: 800; margin-bottom: 6px; }
.mk-dash-band p { color: rgba(255, 255, 255, .7); margin: 0; font-size: 15px !important; }
.mk-dash-wave { display: inline-block; transform-origin: 70% 70%; animation: mk-wave 2.4s ease-in-out 1s 2; }
@keyframes mk-wave { 0%, 60%, 100% { transform: rotate(0); } 10%, 30% { transform: rotate(14deg); } 20%, 40% { transform: rotate(-8deg); } }
.mk-dash-band-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.mk-dash-band-btn {
    display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 18px; border-radius: 12px;
    background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .22); color: #fff; font-weight: 600; font-size: 14px !important; text-decoration: none;
    transition: background .25s ease, transform .25s ease;
}
.mk-dash-band-btn:hover { background: rgba(255, 255, 255, .22); color: #fff; transform: translateY(-2px); }
.mk-dash-band-btn--light { background: #fff; border-color: #fff; color: #3E006D; }
.mk-dash-band-btn--light:hover { background: #f3e8ff; color: #3E006D; }

/* Frame */
.mk-dash { margin-top: -80px; }
.mk-dash-side { border-radius: 20px; box-shadow: 0 24px 60px -34px rgba(46, 10, 90, .45); }
.mk-dash-nav a { position: relative; transition: background .25s ease, color .25s ease, padding .25s ease; }
.mk-dash-nav a:not(.is-active):hover { padding-inline-start: 18px; }
.mk-dash-nav a.is-active { background: #3E006D; box-shadow: 0 10px 22px -12px rgba(62, 0, 109, .8); }

/* Cards and rows */
.mk-dash-card { border-radius: 20px; border-color: #ece7f6; box-shadow: 0 24px 60px -40px rgba(46, 10, 90, .35); transition: box-shadow .3s ease; }
.mk-dash-card-head { align-items: flex-start; }
.mk-dash-sub { margin: 4px 0 0; color: var(--mk-muted); font-size: 14px !important; }
.mk-dash-row { display: grid; grid-template-columns: 1.6fr 1fr; gap: 24px; }

/* Stats */
.mk-dash-stat {
    position: relative; overflow: hidden; border-radius: 18px; border-color: #ece7f6;
    transition: transform .35s cubic-bezier(.22, .8, .24, 1), box-shadow .35s ease;
}
.mk-dash-stat::after { content: ""; position: absolute; inset-inline: 0; bottom: 0; height: 3px; background: var(--accent, #8b5cf6); opacity: .9; }
.mk-dash-stat:hover { transform: translateY(-4px); box-shadow: 0 22px 40px -24px rgba(46, 10, 90, .45); }
.mk-dash-stat-icon { width: 50px; height: 50px; border-radius: 14px; color: #fff !important; background: var(--accent-grad, linear-gradient(135deg, #8b5cf6, #6d28d9)) !important; box-shadow: 0 10px 20px -10px var(--accent, #8b5cf6); }
.mk-dash-stat strong { font-size: 22px; }
.mk-dash-stat--violet { --accent: #8b5cf6; --accent-grad: linear-gradient(135deg, #a78bfa, #6d28d9); }
.mk-dash-stat--blue { --accent: #0ea5e9; --accent-grad: linear-gradient(135deg, #38bdf8, #0369a1); }
.mk-dash-stat--amber { --accent: #f59e0b; --accent-grad: linear-gradient(135deg, #fbbf24, #d97706); }
.mk-dash-stat--green { --accent: #10b981; --accent-grad: linear-gradient(135deg, #34d399, #047857); }

/* Profile completeness */
.mk-dash-profile { display: flex; align-items: center; gap: 26px; }
.mk-dash-ring { position: relative; width: 120px; height: 120px; flex-shrink: 0; }
.mk-dash-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.mk-dash-ring circle { fill: none; stroke-width: 10; }
.mk-dash-ring-bg { stroke: #f1ecfb; }
.mk-dash-ring-fg {
    stroke: #6d28d9; stroke-linecap: round;
    stroke-dasharray: 326.7; stroke-dashoffset: 326.7;
    transition: stroke-dashoffset 1.2s cubic-bezier(.22, .8, .24, 1) .2s;
}
.mk-dash-ready .mk-dash-ring-fg { stroke-dashoffset: calc(326.7 - 326.7 * var(--p) / 100); }
.mk-dash-ring > span { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: var(--mk-font-head); font-size: 24px; font-weight: 800; color: #3E006D; }
.mk-dash-profile-copy h2 { font-size: 19px !important; font-weight: 700; color: var(--mk-ink); margin-bottom: 6px; }
.mk-dash-profile-copy p { color: var(--mk-muted); font-size: 14px !important; margin-bottom: 12px; }
.mk-dash-missing { list-style: none; padding: 0; margin: 0 0 16px; display: flex; flex-wrap: wrap; gap: 8px; }
.mk-dash-missing li { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 20px; background: #f7f3fd; color: #5b21b6; font-size: 13px !important; font-weight: 600; }

/* Help card */
.mk-dash-help { background: linear-gradient(160deg, #faf7ff 0%, #fff 60%); }
.mk-dash-help-icon { width: 46px; height: 46px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; background: #3E006D; color: #fff; font-size: 20px; margin-bottom: 14px; }
.mk-dash-help h2 { font-size: 19px !important; font-weight: 700; color: var(--mk-ink); margin-bottom: 6px; }
.mk-dash-help p { color: var(--mk-muted); font-size: 14px !important; margin-bottom: 14px; }
.mk-dash-help-links { display: flex; flex-direction: column; gap: 6px; }
.mk-dash-help-links a { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: 10px; color: #1f1f2e; text-decoration: none; font-weight: 600; font-size: 14px !important; transition: background .2s, color .2s, padding .25s; }
.mk-dash-help-links a i { color: #6d28d9; }
.mk-dash-help-links a:hover { background: #f3edfd; color: #3E006D; padding-inline-start: 16px; }

/* Buttons */
.mk-dash-btn { display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 16px; border-radius: 10px; background: #3E006D; color: #fff; font-weight: 600; font-size: 14px !important; text-decoration: none; border: 1px solid #3E006D; transition: background .2s, color .2s, transform .25s; }
.mk-dash-btn:hover { background: #2e0052; color: #fff; transform: translateY(-1px); }
.mk-dash-btn--outline { background: #fff; color: #3E006D; border-color: #d9cdee; }
.mk-dash-btn--outline:hover { background: #f7f3fd; color: #3E006D; }
html[dir="rtl"] .mk-dash-btn .bi-arrow-right { transform: scaleX(-1); }

/* Requests list */
.mk-dash-requests { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.mk-dash-request {
    display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 14px;
    padding: 14px 16px; border: 1px solid #efeaf7; border-radius: 14px; background: #fff;
    transition: border-color .25s, box-shadow .25s, transform .3s cubic-bezier(.22, .8, .24, 1);
}
.mk-dash-request:hover { border-color: #d9cdee; box-shadow: 0 14px 30px -20px rgba(46, 10, 90, .35); transform: translateY(-2px); }
.mk-dash-request-icon { width: 42px; height: 42px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; background: #f3eefc; color: #6d28d9; font-size: 18px; }
.mk-dash-request-main strong { display: block; color: var(--mk-ink); font-size: 15px; }
.mk-dash-request-main span { display: block; color: var(--mk-muted); font-size: 13px; }
.mk-dash-request-meta { text-align: end; }
.mk-dash-request-meta code { display: block; color: #3E006D; background: none; font-size: 13px; font-weight: 700; padding: 0; }
.mk-dash-request-meta small { color: var(--mk-muted); font-size: 12px; }

/* Empty state */
.mk-dash-empty { padding: 34px 10px 18px; }
.mk-dash-empty-art { width: 84px; height: 84px; margin: 0 auto 14px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 30% 30%, #f3e8ff, #ede9fe); color: #7c3aed; font-size: 34px; animation: mk-float-y 4s ease-in-out infinite; }
.mk-dash-empty-art i { display: block; margin: 0; font-size: 34px; color: #7c3aed; }
@keyframes mk-float-y { 50% { transform: translateY(-6px); } }
.mk-dash-empty h3 { font-size: 18px !important; font-weight: 700; color: var(--mk-ink); margin-bottom: 6px; }
.mk-dash-empty p { max-width: 420px; margin: 0 auto 18px; }
.mk-dash-empty-actions { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }

/* Explore links */
.mk-dash-link { gap: 14px; padding: 16px; border-radius: 14px; border-color: #efeaf7; }
.mk-dash-link-icon { width: 44px; height: 44px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; background: #f3eefc; color: #6d28d9; font-size: 19px; flex-shrink: 0; transition: background .25s, color .25s, transform .3s; }
.mk-dash-link-text { flex: 1; min-width: 0; }
.mk-dash-link-text b { display: block; color: var(--mk-ink); font-size: 15px; }
.mk-dash-link-text small { display: block; color: var(--mk-muted); font-size: 12.5px; font-weight: 500; }
.mk-dash-link:hover .mk-dash-link-icon { background: #3E006D; color: #fff; transform: rotate(-6deg) scale(1.05); }
.mk-dash-link:hover .mk-dash-link-go { transform: translateX(4px); }
html[dir="rtl"] .mk-dash-link:hover .mk-dash-link-go { transform: scaleX(-1) translateX(4px); }

/* Entrance */
.mk-dash-reveal { opacity: 0; transform: translateY(14px); }
.mk-dash-ready .mk-dash-reveal { animation: mk-dash-in .6s cubic-bezier(.22, .8, .24, 1) forwards; }
.mk-dash-ready .mk-dash-reveal:nth-of-type(2) { animation-delay: .08s; }
.mk-dash-ready .mk-dash-reveal:nth-of-type(3) { animation-delay: .16s; }
.mk-dash-ready .mk-dash-reveal:nth-of-type(4) { animation-delay: .24s; }
@keyframes mk-dash-in { to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
    .mk-dash-reveal { opacity: 1; transform: none; animation: none !important; }
    .mk-dash-ring-fg { transition: none; }
    .mk-dash-wave, .mk-dash-empty-art { animation: none; }
}

@media (max-width: 1199px) { .mk-dash-row { grid-template-columns: 1fr; } }
@media (max-width: 767px) {
    .mk-dash-band { padding: 34px 0 100px; }
    .mk-dash-profile { flex-direction: column; text-align: center; }
    .mk-dash-missing { justify-content: center; }
    .mk-dash-request { grid-template-columns: auto 1fr; }
    .mk-dash-request-meta { grid-column: 2; text-align: start; }
    .mk-dash-request .mk-dash-badge { grid-column: 2; justify-self: start; }
}
.mk-dash-link > .mk-dash-link-icon { flex: 0 0 44px; width: 44px; font-size: 19px !important; }
.mk-dash-link > .mk-dash-link-icon i { font-size: 19px !important; color: inherit; }
.mk-dash-stat strong { white-space: nowrap; font-size: 20px; }
.mk-dash-user small { word-break: normal; overflow-wrap: anywhere; }

/* Card grids: column variants */
.mk-numbered-grid--4 .mk-numbered-card { flex-basis: calc((100% - 60px) / 4); }
.mk-numbered-grid--3 .mk-numbered-card { flex-basis: calc((100% - 40px) / 3); }
@media (max-width: 1199px) { .mk-numbered-grid--4 .mk-numbered-card, .mk-numbered-grid--3 .mk-numbered-card { flex-basis: calc((100% - 20px) / 2); } }

/* Numbered text cards (long sentences): badge + text aligned to the start */
.mk-numbered-grid--text .mk-numbered-card {
    flex-direction: row; align-items: flex-start; text-align: start; gap: 16px;
    min-height: 0; padding: 22px 22px;
}
.mk-numbered-badge {
    flex-shrink: 0; width: 46px; height: 46px; border-radius: 14px;
    display: inline-flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, #f3e8ff, #ede9fe); color: #3E006D;
    font-family: var(--mk-font-head); font-weight: 800; font-size: 16px !important;
    transition: background .3s ease, color .3s ease, transform .35s cubic-bezier(.22, .8, .24, 1);
}
.mk-numbered-grid--text .mk-numbered-card p { font-size: 15px !important; line-height: 1.6 !important; font-weight: 500; padding-top: 2px; }
.mk-numbered-grid--text .mk-numbered-card:hover .mk-numbered-badge { background: linear-gradient(135deg, #3E006D, #7c3aed); color: #fff; transform: rotate(-6deg); }
@media (max-width: 767px) { .mk-numbered-grid--text .mk-numbered-card { flex-basis: 100% !important; padding: 18px 16px; } }

/* About page bands */
#objectives { background: #fff; }
#audience { background: linear-gradient(180deg, #f8f6fd 0%, #fff 100%); }

/* Vision & Mission cards */
.mk-vision-mission { background: linear-gradient(180deg, #f8f6fd 0%, #fff 100%); }
.mk-vm-card {
    position: relative; overflow: hidden; isolation: isolate;
    border: 1px solid #ece7f6; border-radius: 24px; padding: 44px 44px 46px;
    box-shadow: 0 30px 60px -44px rgba(46, 10, 90, .45);
    transition: transform .4s cubic-bezier(.22, .8, .24, 1), box-shadow .4s ease, border-color .3s ease;
}
.mk-vm-card::before {
    content: ""; position: absolute; inset-inline: 0; top: 0; height: 5px;
    background: linear-gradient(90deg, #3E006D, #8b5cf6, #10b981);
}
.mk-vm-card::after {
    content: ""; position: absolute; z-index: -1; width: 260px; height: 260px; border-radius: 50%;
    inset-inline-end: -90px; top: -110px; background: radial-gradient(closest-side, rgba(139, 92, 246, .14), transparent);
    transition: transform .6s cubic-bezier(.22, .8, .24, 1);
}
.mk-vm-card:hover { transform: translateY(-6px); border-color: #d9cdee; box-shadow: 0 34px 60px -36px rgba(46, 10, 90, .5); }
.mk-vm-card:hover::after { transform: scale(1.25); }
.mk-vm-card .mk-badge { background: #3E006D; color: #fff; padding: 6px 14px; letter-spacing: .04em; }
.mk-vm-card h3 { color: #3E006D !important; font-size: 26px !important; }
.mk-vm-card p { font-size: 16px !important; line-height: 1.75 !important; }
@media (max-width: 575px) { .mk-vm-card { padding: 32px 24px; } }

/* Dashboard menu on tablets/phones: one swipeable row of tabs (no wrapping) */
@media (max-width: 991px) {
    .mk-dash-side { padding: 14px; }
    .mk-dash-user { padding-bottom: 12px; margin-bottom: 12px; }
    .mk-dash-nav {
        flex-direction: row !important; flex-wrap: nowrap !important; gap: 8px;
        overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch; scrollbar-width: none; margin-inline: -14px; padding: 2px 14px 4px;
    }
    .mk-dash-nav::-webkit-scrollbar { display: none; }
    .mk-dash-nav a, .mk-dash-nav .mk-dash-logout {
        flex: 0 0 auto; white-space: nowrap; scroll-snap-align: start;
        padding: 10px 14px !important; margin: 0 !important; border: 1px solid #ece7f6 !important; border-radius: 12px !important; background: #faf8fe;
    }
    .mk-dash-nav a.is-active { border-color: #3E006D !important; }
    .mk-dash-nav .mk-dash-logout { border-color: #fde2e2 !important; background: #fff7f7; }
    .mk-dash-nav a:not(.is-active):hover { padding-inline-start: 14px !important; }
}
@media (max-width: 991px) { .mk-dash-grid { grid-template-columns: minmax(0, 1fr) !important; } .mk-dash-side, .mk-dash-main { min-width: 0; max-width: 100%; } .mk-dash-nav { max-width: none; } }

/* ==========================================================================
   About — Vision & Mission (dark navy + purple cards)
   ========================================================================== */
.mk-vision-mission { background: #f7f3fb; padding: 70px 0; }
.mk-vm-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.mk-vision-mission .mk-vm-card {
    position: relative; overflow: hidden; isolation: isolate;
    padding: 40px 36px 44px; border: 0; border-radius: 10px; box-shadow: none; color: #fff;
    transition: transform .4s cubic-bezier(.22, .8, .24, 1), box-shadow .4s ease;
}
.mk-vision-mission .mk-vm-card::before { content: none; }
.mk-vision-mission .mk-vm-card::after {
    content: ""; position: absolute; z-index: -1; width: 200px; height: 200px; border-radius: 50%;
    inset-inline-end: -40px; top: -60px; background: rgba(255, 255, 255, .07);
    transition: transform .6s cubic-bezier(.22, .8, .24, 1);
}
.mk-vm-card--dark { background: #140040; }
.mk-vm-card--purple { background: #662d91; }
.mk-vision-mission .mk-vm-card:hover { transform: translateY(-6px); box-shadow: 0 30px 50px -28px rgba(30, 0, 70, .6); }
.mk-vision-mission .mk-vm-card:hover::after { transform: scale(1.2); }
.mk-vm-icon {
    width: 64px; height: 64px; border-radius: 50%; background: #fff;
    display: inline-flex; align-items: center; justify-content: center;
    color: #3E006D; font-size: 24px; margin-bottom: 22px;
    transition: transform .4s cubic-bezier(.22, .8, .24, 1);
}
.mk-vm-card--purple .mk-vm-icon { color: #662d91; }
.mk-vision-mission .mk-vm-card:hover .mk-vm-icon { transform: scale(1.08) rotate(-6deg); }
.mk-vision-mission .mk-vm-card h3 { color: #fff !important; font-size: 26px !important; font-weight: 800; margin-bottom: 14px; }
.mk-vision-mission .mk-vm-card p { color: rgba(255, 255, 255, .88) !important; font-size: 16px !important; line-height: 1.8 !important; margin: 0; }

/* ==========================================================================
   About — Our Objectives (icon + outlined number cards)
   ========================================================================== */
.mk-objectives { background: #fff; }
.mk-objectives-head { padding-bottom: 18px; margin-bottom: 32px; border-bottom: 1px solid #e7e3ee; }
.mk-objectives-head .mk-title { margin: 0; color: #2b2b33; }
.mk-objectives-head .mk-lead { margin: 8px 0 0; color: var(--mk-muted); }
.mk-objectives-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.mk-objective {
    position: relative; overflow: hidden;
    padding: 26px 24px 30px; border: 1px solid #e6e1ee; border-radius: 16px;
    background: linear-gradient(180deg, #fff 0%, #f6f2fb 100%);
    box-shadow: 0 16px 34px -26px rgba(62, 0, 109, .35);
    transition: transform .4s cubic-bezier(.22, .8, .24, 1), box-shadow .4s ease, border-color .3s ease;
}
.mk-objective::after {
    content: ""; position: absolute; inset-inline-start: 0; bottom: 0; width: 56px; height: 4px;
    background: linear-gradient(90deg, #662d91, #e11d48); border-radius: 0 3px 0 0;
    transition: width .45s cubic-bezier(.22, .8, .24, 1);
}
html[dir="rtl"] .mk-objective::after { border-radius: 3px 0 0 0; background: linear-gradient(-90deg, #662d91, #e11d48); }
.mk-objective:hover { transform: translateY(-5px); border-color: #d6c8ea; box-shadow: 0 24px 44px -26px rgba(62, 0, 109, .45); }
.mk-objective:hover::after { width: 100%; }
.mk-objective-top { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 22px; }
.mk-objective-icon {
    width: 58px; height: 58px; border-radius: 14px; background: #ece4f4; color: #662d91;
    display: inline-flex; align-items: center; justify-content: center; font-size: 22px;
    transition: background .3s ease, color .3s ease;
}
.mk-objective:hover .mk-objective-icon { background: #662d91; color: #fff; }
.mk-objective-no {
    font-family: var(--mk-font-head); font-size: 44px !important; font-weight: 800; line-height: 1 !important;
    color: transparent; -webkit-text-stroke: 1.5px #d9c9ea; margin-top: 6px;
    transition: -webkit-text-stroke-color .3s ease;
}
.mk-objective:hover .mk-objective-no { -webkit-text-stroke-color: #b79ad6; }
.mk-objective p { margin: 0; color: #2b2b33; font-size: 16px !important; line-height: 1.65 !important; font-weight: 600; }

@media (max-width: 1199px) { .mk-objectives-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
    .mk-vm-grid, .mk-objectives-grid { grid-template-columns: 1fr; }
    .mk-vision-mission .mk-vm-card { padding: 30px 24px 32px; }
    .mk-objective-no { font-size: 36px !important; }
}

/* Contact page: dark "Contact Information" panel + form card */
.mk-form-section--contact { background: #fff; }
.mk-contact-shell { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 11fr); gap: 24px; align-items: stretch; }
.mk-contact-aside { position: relative; overflow: hidden; background: #140042; color: #fff; border-radius: 10px; padding: 44px 30px; }
.mk-contact-aside::after { content: ""; position: absolute; width: 230px; height: 230px; border-radius: 50%; background: rgba(139, 92, 246, .14); inset-inline-end: -80px; bottom: -100px; pointer-events: none; }
.mk-contact-aside h3 { color: #fff !important; font-size: 24px !important; font-weight: 800; margin: 0 0 28px; }
.mk-contact-aside ul { list-style: none; margin: 0; padding: 0; position: relative; z-index: 1; }
.mk-contact-aside li { display: flex; align-items: center; gap: 14px; padding: 16px 0; border-bottom: 1px solid rgba(255, 255, 255, .12); }
.mk-contact-aside li:first-child { padding-top: 0; }
.mk-contact-aside li:last-child { border-bottom: 0; }
.mk-contact-aside-icon { width: 44px; height: 44px; flex-shrink: 0; border-radius: 50%; background: rgba(255, 255, 255, .1); color: #d9f24a; display: inline-flex; align-items: center; justify-content: center; font-size: 17px; }
.mk-contact-aside small { display: block; color: rgba(255, 255, 255, .7); font-size: 13px !important; margin-bottom: 3px; }
.mk-contact-aside a, .mk-contact-aside span:not(.mk-contact-aside-icon) { color: #fff; font-size: 16px !important; font-weight: 500; word-break: break-word; }
.mk-contact-aside a:hover { color: #d9f24a; }
.mk-contact-aside .is-pending { color: rgba(255, 255, 255, .6) !important; font-style: italic; font-weight: 400; }
.mk-contact-shell .mk-form-card { max-width: none; margin: 0; border-radius: 10px; padding: 44px 36px; box-shadow: none; border-color: #e5e7eb; }
.mk-contact-shell .mk-form-card > .mk-title { font-size: 26px !important; font-weight: 800; margin-bottom: 8px; }
.mk-contact-shell .mk-form-card > .mk-lead { font-size: 16px !important; margin-bottom: 26px; }
.mk-contact-shell .mk-form-grid { gap: 20px 16px; }
.mk-contact-shell .mk-label { font-size: 14px !important; font-weight: 700; color: #1f2937; }
.mk-contact-shell .mk-field input:not([type=checkbox]), .mk-contact-shell .mk-field select { height: 48px; border-radius: 6px; padding: 0 16px; }
.mk-contact-shell .mk-field textarea { border-radius: 6px; min-height: 168px; resize: vertical; }
.mk-contact-shell .mk-form-submit { min-width: 0; margin-top: 24px; padding: 14px 30px; border-radius: 4px; background: #3E006D; border-color: #3E006D; display: inline-flex; align-items: center; gap: 10px; }
.mk-contact-shell .mk-form-submit:hover { background: #2c004d; border-color: #2c004d; }
.mk-contact-shell .mk-form-note-text { font-size: 14px !important; }
@media (max-width: 991px) { .mk-contact-shell { grid-template-columns: 1fr; } }
@media (max-width: 767px) {
    .mk-contact-aside { padding: 32px 22px; }
    .mk-contact-shell .mk-form-card { padding: 30px 20px; }
}
.mk-contact-shell .mk-form-note-text { display: none; }

/* ---- Home hero: one soft brand palette (lavender → white), calmer motion ---- */
.mk-hero {
    background:
        radial-gradient(900px 520px at 50% -10%, rgba(196, 181, 253, .38), transparent 70%),
        radial-gradient(700px 480px at 100% 100%, rgba(233, 213, 255, .45), transparent 70%),
        linear-gradient(180deg, #f6f2ff 0%, #faf8ff 55%, #ffffff 100%);
}
.mk-hero::before { background: rgba(167, 139, 250, .22); filter: blur(90px); animation-duration: 22s; }
.mk-hero::after { background: rgba(216, 180, 254, .30); filter: blur(90px); animation-duration: 22s; }
.mk-hero .mk-container::before { background-image: radial-gradient(rgba(62, 0, 109, .07) 1px, transparent 1px); }
.mk-hero h1 { color: #1e1b3a; }
.mk-hero p.mk-hero-desc { color: #4b4768; }
.mk-hero .mk-accent { background-image: linear-gradient(90deg, #3E006D, #7c3aed 50%, #3E006D); animation-duration: 8s; }

.mk-hero .mk-btn { border-radius: 12px; transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease, border-color .25s ease; }
.mk-hero .mk-btn:hover { transform: translateY(-2px); }
.mk-hero .mk-btn-primary { background: linear-gradient(135deg, #3E006D, #6d28d9); border-color: transparent; color: #fff; box-shadow: 0 14px 30px -14px rgba(62, 0, 109, .55); }
.mk-hero .mk-btn-primary:hover { box-shadow: 0 18px 36px -14px rgba(62, 0, 109, .65); color: #fff; }
.mk-hero .mk-btn-outline { background: #fff; border-color: #c4b5fd; color: #3E006D; }
.mk-hero .mk-btn-outline:hover { background: #3E006D; border-color: #3E006D; color: #fff; }
.mk-hero .mk-btn-ghost { background: rgba(255, 255, 255, .7); border-color: #e9e3fb; color: #6d28d9; text-decoration: none; }
.mk-hero .mk-btn-ghost:hover { background: #f3eeff; color: #3E006D; }
.mk-hero .mk-btn-link { background: transparent; border-color: transparent; color: #3E006D; }
.mk-hero .mk-btn-link:hover { color: #6d28d9; }
.mk-hero .mk-hero-note { color: #5b21b6; padding: 12px 20px; background: rgba(255, 255, 255, .65); border: 1px solid #ede7fb; border-radius: 14px; backdrop-filter: blur(6px); }
.mk-hero .mk-hero-note i { color: #7c3aed; font-size: 28px !important; }
.mk-hero .mk-hero-note strong { color: #3E006D; }

/* ---- Home hero: richer lavender background so the colour reads clearly ---- */
.mk-hero {
    background:
        radial-gradient(800px 520px at 12% 8%, rgba(139, 92, 246, .38), transparent 68%),
        radial-gradient(760px 520px at 92% 92%, rgba(192, 132, 252, .40), transparent 68%),
        radial-gradient(600px 360px at 55% 45%, rgba(255, 255, 255, .55), transparent 75%),
        linear-gradient(135deg, #ece4ff 0%, #f3edff 45%, #f8e9ff 100%);
}
.mk-hero::before { background: rgba(124, 58, 237, .30); }
.mk-hero::after { background: rgba(217, 70, 239, .22); }
