/* ================================================================
   MNQAZ DESIGN SYSTEM — widgets.css v1.1
   Brand: Navy (#152742) + Cyan/Teal (#1fb8ad)
   Direction: RTL Arabic | Font: Cairo + Tajawal
   ================================================================ */

:root {
    --mnqaz-primary: #152742;
    --mnqaz-primary-glow: #1c3a5e;
    --mnqaz-secondary: #1fb8ad;
    --mnqaz-secondary-glow: #33d6c4;
    --mnqaz-bg: #fafbfc;
    --mnqaz-fg: #0f1e30;
    --mnqaz-card: #ffffff;
    --mnqaz-muted: #f0f2f5;
    --mnqaz-muted-fg: #586878;
    --mnqaz-border: #dee3ea;
    --mnqaz-destructive: #dd2424;
    --mnqaz-radius: 1rem;
    --mnqaz-font: 'Cairo', 'Tajawal', sans-serif;
    --mnqaz-gradient-brand: linear-gradient(135deg, #152742 0%, #1a5c6e 55%, #1fb8ad 100%);
    --mnqaz-gradient-soft: linear-gradient(135deg, rgba(21,39,66,0.92) 0%, rgba(31,184,173,0.88) 100%);
    --mnqaz-gradient-glow: radial-gradient(ellipse at top, rgba(31,184,173,0.35), transparent 60%);
    --mnqaz-gradient-card: linear-gradient(160deg, #ffffff 0%, #eaf9f8 100%);
    --mnqaz-shadow-glow: 0 20px 60px -15px rgba(31,184,173,0.45);
    --mnqaz-shadow-card: 0 10px 40px -10px rgba(21,39,66,0.18);
    --mnqaz-shadow-elegant: 0 24px 60px -20px rgba(21,39,66,0.35);
}

/* ── Box-sizing ── */
[class^="mnqaz-"], [class*=" mnqaz-"],
[class^="mnqaz-"] *, [class*=" mnqaz-"] *,
[class^="mnqaz-"] *::before, [class*=" mnqaz-"] *::before,
[class^="mnqaz-"] *::after, [class*=" mnqaz-"] *::after { box-sizing: border-box; }

/* ── Horizontal-scroll defense ── */
.mnqaz-section, .mnqaz-hero, .mnqaz-page-hero, .mnqaz-cta-banner,
.mnqaz-footer, .mnqaz-header, .mnqaz-contact-form-section, .mnqaz-form {
    max-width: 100%; overflow-x: hidden; overflow-x: clip;
}
[class^="mnqaz-"][class*="-grid"] > *,
[class^="mnqaz-"][class*="-row"] > *,
.mnqaz-form-row > *, .mnqaz-form-field { min-width: 0; max-width: 100%; }
[class^="mnqaz-"] img, [class*=" mnqaz-"] img,
[class^="mnqaz-"] svg, [class*=" mnqaz-"] svg { max-width: 100%; }
[class^="mnqaz-"] img { height: auto; }

/* ── Typography baseline ── */
.mnqaz-section, .mnqaz-hero, .mnqaz-page-hero, .mnqaz-cta-banner,
.mnqaz-footer, .mnqaz-header {
    font-family: var(--mnqaz-font); direction: rtl; text-align: right;
    line-height: 1.7; color: var(--mnqaz-fg);
}

/* ── Container — matches Lovable max-w-7xl ── */
.mnqaz-container { max-width: 1280px; width: 100%; margin: 0 auto; padding: 0 1rem; }
@media(min-width:768px) { .mnqaz-container { padding: 0 2rem; } }
.mnqaz-container-sm { max-width: 896px; }
.mnqaz-container-md { max-width: 960px; }

/* ── Center utility ── */
.mnqaz-center, .mnqaz-center h1, .mnqaz-center h2, .mnqaz-center h3, .mnqaz-center p {
    text-align: center !important;
}
.mnqaz-center h1, .mnqaz-center h2, .mnqaz-center h3 {
    margin-left: auto !important; margin-right: auto !important;
}

/* ── Common elements ── */
.mnqaz-eyebrow {
    display: inline-block; padding: 0.375rem 1rem; border-radius: 9999px;
    background: rgba(31,184,173,0.1); color: var(--mnqaz-secondary);
    font-size: 0.875rem; font-weight: 600; margin-bottom: 1rem;
}
.mnqaz-heading {
    font-size: clamp(2.25rem, 4vw, 3rem); font-weight: 900; margin-bottom: 1rem; line-height: 1.25;
    color: var(--mnqaz-fg);
}
.mnqaz-heading-left { text-align: right; }
.mnqaz-subheading {
    font-size: 1.125rem; color: var(--mnqaz-muted-fg); max-width: 42rem; margin: 0 auto 2rem;
    line-height: 1.625;
}

/* ── Gradient text (for partial heading gradient) ── */
.mnqaz-gradient-text {
    background: var(--mnqaz-gradient-brand); -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; background-clip: text; color: transparent;
}

/* ── Buttons ── */
.mnqaz-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
    padding: 0.75rem 2rem; border-radius: 9999px; font-weight: 700;
    font-size: 1rem; text-decoration: none !important; border: none; cursor: pointer;
    transition: transform 0.3s, box-shadow 0.3s; font-family: var(--mnqaz-font); line-height: 1.5;
}
.mnqaz-btn:hover { transform: scale(1.05); }
.mnqaz-btn-gradient {
    background: var(--mnqaz-gradient-brand) !important;
    color: #fff !important; box-shadow: var(--mnqaz-shadow-glow);
}
.mnqaz-btn-white {
    background: #fff !important; color: var(--mnqaz-primary) !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.15);
}
.mnqaz-btn-white:hover { background: var(--mnqaz-secondary) !important; color: #fff !important; }
.mnqaz-btn-glass {
    background: rgba(255,255,255,0.15) !important; color: #fff !important;
    backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255,255,255,0.3);
}
.mnqaz-btn-lg { padding: 1rem 2rem; font-size: 1.125rem; }
.mnqaz-btn-submit { width: 100%; font-size: 1.125rem; padding: 1rem; }
@media(max-width:600px) {
    .mnqaz-btn { padding: 0.625rem 1.5rem; font-size: 0.9375rem; }
    .mnqaz-btn-lg { padding: 0.75rem 1.5rem; font-size: 1rem; }
}

/* ── Reveal animations ── */
.mnqaz-reveal { opacity: 0; transform: translateY(28px); transition: opacity 0.8s ease, transform 0.8s ease; }
.mnqaz-reveal.mnqaz-revealed { opacity: 1; transform: translateY(0); }
.elementor-editor-active .mnqaz-reveal,
body.elementor-editor-preview .mnqaz-reveal {
    opacity: 1 !important; transform: none !important; transition: none !important;
}
@media (prefers-reduced-motion: reduce) {
    .mnqaz-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* ── Keyframes ── */
@keyframes mnqaz-float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }
@keyframes mnqaz-pulse-glow {
    0%,100%{box-shadow:0 0 0 0 rgba(31,184,173,0.55),0 0 30px rgba(31,184,173,0.3)}
    50%{box-shadow:0 0 0 18px rgba(31,184,173,0),0 0 50px rgba(31,184,173,0.6)}
}
@keyframes mnqaz-shimmer { 0%{background-position:-200% 0} 100%{background-position:200% 0} }
@keyframes mnqaz-fade-in { from{opacity:0} to{opacity:1} }

/* ================================================================
   HEADER
   ================================================================ */
.mnqaz-header {
    position: sticky; top: 0; z-index: 50; width: 100%;
    background: rgba(250,251,252,0.92); backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px); border-bottom: 1px solid var(--mnqaz-border);
}
.mnqaz-header-inner {
    max-width: 1280px; margin: 0 auto; height: 5rem;
    padding: 0 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem;
}
@media(min-width:768px) { .mnqaz-header-inner { padding: 0 2rem; } }
.mnqaz-header-logo img { height: 60px; width: auto; object-fit: contain; }
@media(min-width:768px) { .mnqaz-header-logo img { height: 72px; } }
.mnqaz-header-nav { display: none; }
@media(min-width:1024px) { .mnqaz-header-nav { display: flex; align-items: center; gap: 0.25rem; } }
.mnqaz-header-menu { list-style: none; margin: 0; padding: 0; display: flex; gap: 0.25rem; }
.mnqaz-header-menu li a {
    padding: 0.5rem 1rem; border-radius: 9999px; font-size: 0.875rem; font-weight: 700;
    color: var(--mnqaz-fg); text-decoration: none; transition: all 0.3s; display: block;
}
.mnqaz-header-menu li a:hover,
.mnqaz-header-menu li.current-menu-item > a,
.mnqaz-header-menu li.current_page_item > a {
    background: var(--mnqaz-gradient-brand); color: #fff !important;
}
.mnqaz-header-actions { display: flex; align-items: center; gap: 0.75rem; flex-shrink: 0; }
.mnqaz-header-cta { display: none !important; }
@media(min-width:768px) { .mnqaz-header-cta { display: inline-flex !important; } }
/* Burger — bulletproof */
.mnqaz-header-burger {
    display: inline-flex; align-items: center; justify-content: center;
    width: 2.5rem; height: 2.5rem; background: transparent; border: 0;
    cursor: pointer; color: var(--mnqaz-fg); border-radius: 0.5rem; padding: 0;
}
@media(min-width:1024px) { .mnqaz-header-burger { display: none; } }
.mnqaz-header-burger:hover { background: rgba(0,0,0,0.04); }
.mnqaz-header-burger svg { width: 24px; height: 24px; }
.mnqaz-header-burger-close { display: none; }
.mnqaz-header.is-open .mnqaz-header-burger-open { display: none; }
.mnqaz-header.is-open .mnqaz-header-burger-close { display: inline-flex; }
/* Mobile nav */
.mnqaz-header-mobile-nav {
    display: none; border-top: 1px solid var(--mnqaz-border);
    background: rgba(250,251,252,0.98); backdrop-filter: blur(16px);
    padding: 1rem; animation: mnqaz-fade-in 0.3s ease;
}
.mnqaz-header.is-open .mnqaz-header-mobile-nav { display: block; }
@media(min-width:1024px) { .mnqaz-header-mobile-nav { display: none !important; } }
.mnqaz-mobile-menu { list-style: none; margin: 0; padding: 0; }
.mnqaz-mobile-menu li a {
    display: block; padding: 0.75rem 1rem; border-radius: 0.75rem;
    font-size: 1rem; font-weight: 700; color: var(--mnqaz-fg) !important;
    text-decoration: none !important; transition: all 0.3s;
}
.mnqaz-mobile-menu li a:hover,
.mnqaz-mobile-menu li.current-menu-item > a {
    background: var(--mnqaz-gradient-brand) !important; color: #fff !important;
}
.mnqaz-header-mobile-cta { margin-top: 0.75rem; width: 100%; text-align: center; }

/* ================================================================
   HERO — matches source py-28 md:py-40
   ================================================================ */
.mnqaz-hero {
    position: relative; min-height: 90vh; background-size: cover; background-position: center;
    background-repeat: no-repeat; display: flex; align-items: center; justify-content: center;
    background-attachment: fixed; padding: 7rem 0;
}
@media(max-width:767px) { .mnqaz-hero { background-attachment: scroll !important; min-height: 100svh; padding: 5rem 0; } }
.mnqaz-hero-overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(21,39,66,0.92) 0%, rgba(26,92,110,0.82) 55%, rgba(31,184,173,0.78) 100%); }
.mnqaz-hero-glow { position: absolute; inset: 0; background: var(--mnqaz-gradient-glow); }
.mnqaz-hero-orb { position: absolute; border-radius: 50%; filter: blur(60px); animation: mnqaz-float 6s ease-in-out infinite; }
.mnqaz-hero-orb-1 { top: 5rem; right: 5rem; width: 18rem; height: 18rem; background: rgba(31,184,173,0.2); }
.mnqaz-hero-orb-2 { bottom: 5rem; left: 5rem; width: 24rem; height: 24rem; background: rgba(28,58,94,0.3); animation-delay: 2s; }
.mnqaz-hero-content { position: relative; z-index: 2; max-width: 64rem; margin: 0 auto; padding: 0 1rem; text-align: center; }
@media(min-width:768px) { .mnqaz-hero-content { padding: 0 2rem; } }
.mnqaz-hero-badge { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1.25rem; border-radius: 9999px; background: #fff; box-shadow: 0 4px 20px rgba(0,0,0,0.1); margin-bottom: 1.5rem; }
.mnqaz-hero-badge-dot { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: var(--mnqaz-secondary); animation: mnqaz-pulse-glow 2.4s ease-in-out infinite; }
.mnqaz-hero-badge-text { font-size: 0.875rem; font-weight: 700; background: var(--mnqaz-gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.mnqaz-hero-title { font-size: clamp(2.25rem, 5vw, 4.5rem); font-weight: 900; color: #fff; line-height: 1.15; margin-bottom: 1.5rem; }
.mnqaz-hero-title-gradient { display: block; margin-top: 0.5rem; background: linear-gradient(135deg,rgba(31,184,173,0.9),rgba(51,214,196,1)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.mnqaz-hero-subtitle { font-size: clamp(1.125rem,2.5vw,1.5rem); color: rgba(255,255,255,0.85); margin-bottom: 0.5rem; line-height: 1.625; }
.mnqaz-hero-desc { font-size: clamp(1rem,2vw,1.125rem); color: rgba(255,255,255,0.75); margin-bottom: 2.5rem; }
.mnqaz-hero-ctas { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
.mnqaz-hero-scroll-hint { position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%); color: rgba(255,255,255,0.7); animation: mnqaz-float 3s ease-in-out infinite; }

/* ================================================================
   STATS — matches source py-20 md:py-24
   ================================================================ */
.mnqaz-stats { padding: 5rem 0; background: var(--mnqaz-bg); position: relative; }
@media(min-width:768px) { .mnqaz-stats { padding: 6rem 0; } }
.mnqaz-stats-glow { position: absolute; inset: -10rem 0 auto; height: 20rem; background: var(--mnqaz-gradient-glow); }
.mnqaz-stats-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1.5rem; position: relative; }
@media(min-width:1024px) { .mnqaz-stats-grid { grid-template-columns: repeat(4,1fr); } }
.mnqaz-stat-card {
    text-align: center; padding: 2rem; border-radius: 1.5rem; background: var(--mnqaz-card);
    box-shadow: var(--mnqaz-shadow-card); transition: transform 0.35s, box-shadow 0.35s;
    position: relative; overflow: hidden;
}
.mnqaz-stat-card:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-stat-icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 4rem; height: 4rem; border-radius: 1rem; background: var(--mnqaz-gradient-brand);
    color: #fff; margin-bottom: 1rem; transition: transform 0.3s;
}
.mnqaz-stat-card:hover .mnqaz-stat-icon { transform: scale(1.1); }
.mnqaz-stat-value { font-size: clamp(2rem,4vw,3rem); font-weight: 900; background: var(--mnqaz-gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; margin-bottom: 0.5rem; }
.mnqaz-stat-label { font-size: 0.875rem; color: var(--mnqaz-muted-fg); font-weight: 500; }

/* ================================================================
   SERVICES — 2-col, icon+title aligned top (items-start)
   ================================================================ */
.mnqaz-services { padding: 6rem 0; background: rgba(240,242,245,0.3); position: relative; overflow: hidden; }
.mnqaz-services-orb { position: absolute; border-radius: 50%; width: 24rem; height: 24rem; filter: blur(60px); }
.mnqaz-services-orb-1 { top: 0; right: 0; background: rgba(31,184,173,0.1); }
.mnqaz-services-orb-2 { bottom: 0; left: 0; background: rgba(21,39,66,0.1); }
.mnqaz-services-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1rem; }
@media(min-width:768px) { .mnqaz-services-grid { gap: 1.5rem; } }
@media(min-width:1024px) { .mnqaz-services-grid { gap: 2rem; } }
.mnqaz-service-card {
    position: relative; padding: 1.25rem; border-radius: 1.5rem; background: var(--mnqaz-card);
    box-shadow: var(--mnqaz-shadow-card); transition: transform 0.35s, box-shadow 0.35s; overflow: hidden;
}
@media(min-width:768px) { .mnqaz-service-card { padding: 2rem; } }
.mnqaz-service-card:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-service-card-orb { position: absolute; top: -5rem; left: -5rem; width: 10rem; height: 10rem; border-radius: 50%; background: rgba(31,184,173,0.1); transition: transform 0.5s; }
.mnqaz-service-card:hover .mnqaz-service-card-orb { transform: scale(1.5); }
.mnqaz-service-card-inner { position: relative; }
/* FIX: icon+title layout — column on mobile (2-col grid), row on desktop */
.mnqaz-service-top { display: flex; flex-direction: column; gap: 0.75rem; margin-bottom: 0.75rem; }
@media(min-width:768px) { .mnqaz-service-top { flex-direction: row; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; } }
.mnqaz-service-icon {
    flex-shrink: 0; width: 3rem; height: 3rem; border-radius: 0.75rem;
    background: var(--mnqaz-gradient-brand); display: flex; align-items: center;
    justify-content: center; color: #fff;
}
@media(min-width:768px) { .mnqaz-service-icon { width: 4rem; height: 4rem; border-radius: 1rem; } }
.mnqaz-service-title { font-size: 1rem; font-weight: 700; margin: 0 0 0.375rem; line-height: 1.3; transition: color 0.3s; }
@media(min-width:768px) { .mnqaz-service-title { font-size: 1.375rem; margin-bottom: 0.5rem; } }
.mnqaz-service-card:hover .mnqaz-service-title { color: var(--mnqaz-secondary); }
.mnqaz-service-desc { color: var(--mnqaz-muted-fg); line-height: 1.625; margin: 0; font-size: 0.8125rem; }
@media(min-width:768px) { .mnqaz-service-desc { font-size: 0.9375rem; } }
.mnqaz-service-subs {
    list-style: none; padding: 0; margin: 0.75rem 0 0; display: grid;
    grid-template-columns: 1fr; gap: 0.375rem;
}
@media(min-width:768px) { .mnqaz-service-subs { grid-template-columns: repeat(2,1fr); gap: 0.5rem; } }
.mnqaz-service-subs li { display: flex; align-items: center; gap: 0.375rem; font-size: 0.75rem; color: rgba(15,30,48,0.8); }
@media(min-width:768px) { .mnqaz-service-subs li { font-size: 0.875rem; gap: 0.5rem; } }
.mnqaz-service-subs li svg { color: var(--mnqaz-secondary); flex-shrink: 0; }

/* ================================================================
   FEATURES — 4-col grid, icon centred
   ================================================================ */
.mnqaz-features { padding: 6rem 0; background: var(--mnqaz-bg); }
.mnqaz-features-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
@media(min-width:768px) { .mnqaz-features-grid { grid-template-columns: repeat(2,1fr); } }
@media(min-width:1024px) { .mnqaz-features-grid { grid-template-columns: repeat(4,1fr); } }
.mnqaz-feature-card {
    padding: 1.75rem; border-radius: 1.5rem;
    background: linear-gradient(to bottom right, var(--mnqaz-card), rgba(31,184,173,0.08));
    box-shadow: var(--mnqaz-shadow-card); transition: transform 0.35s, box-shadow 0.35s;
}
.mnqaz-feature-card:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-feature-icon {
    display: inline-flex; width: 3.5rem; height: 3.5rem; border-radius: 1rem;
    background: var(--mnqaz-gradient-brand); align-items: center; justify-content: center;
    color: #fff; margin-bottom: 1rem; transition: transform 0.3s;
}
.mnqaz-feature-card:hover .mnqaz-feature-icon { transform: rotate(6deg); }
.mnqaz-feature-title { font-weight: 700; font-size: 1.125rem; margin-bottom: 0.5rem; }
.mnqaz-feature-desc { font-size: 0.875rem; color: var(--mnqaz-muted-fg); line-height: 1.625; }

/* ================================================================
   WHY CHOOSE — 2-col
   ================================================================ */
.mnqaz-why-choose { padding: 6rem 0; position: relative; overflow: hidden; background: linear-gradient(to bottom, var(--mnqaz-bg), rgba(31,184,173,0.04), var(--mnqaz-bg)); }
.mnqaz-why-orb-1, .mnqaz-why-orb-2 { position: absolute; border-radius: 50%; filter: blur(60px); animation: mnqaz-float 6s ease-in-out infinite; }
.mnqaz-why-orb-1 { top: 2rem; left: 2rem; width: 20rem; height: 20rem; background: rgba(31,184,173,0.1); }
.mnqaz-why-orb-2 { bottom: 2rem; right: 2rem; width: 24rem; height: 24rem; background: rgba(21,39,66,0.1); animation-delay: 2.5s; }
.mnqaz-why-grid { display: grid; grid-template-columns: 1fr; gap: 3rem; align-items: center; }
@media(min-width:1024px) { .mnqaz-why-grid { grid-template-columns: 1fr 1fr; } }
.mnqaz-why-image-col { position: relative; order: 2; }
@media(min-width:1024px) { .mnqaz-why-image-col { order: 1; } }
.mnqaz-why-image-glow { position: absolute; inset: -1.5rem; background: var(--mnqaz-gradient-brand); border-radius: 2rem; opacity: 0.2; filter: blur(40px); }
.mnqaz-why-image-wrap { position: relative; border-radius: 2rem; overflow: hidden; box-shadow: var(--mnqaz-shadow-card); border: 1px solid var(--mnqaz-border); background: var(--mnqaz-card); }
.mnqaz-why-image-wrap img { width: 100%; height: auto; display: block; object-fit: cover; }
.mnqaz-why-image-badge {
    position: absolute; bottom: -1.5rem; right: -1.5rem; width: 7rem; height: 7rem;
    border-radius: 1.5rem; background: var(--mnqaz-gradient-brand); color: #fff;
    display: none; align-items: center; justify-content: center; flex-direction: column;
    box-shadow: var(--mnqaz-shadow-glow); animation: mnqaz-float 6s ease-in-out infinite;
}
@media(min-width:768px) { .mnqaz-why-image-badge { display: flex; } }
.mnqaz-why-badge-num { font-size: 1.875rem; font-weight: 900; }
.mnqaz-why-badge-sub { font-size: 0.75rem; }
.mnqaz-why-text-col { order: 1; }
@media(min-width:1024px) { .mnqaz-why-text-col { order: 2; } }
.mnqaz-why-desc { font-size: 1.125rem; color: var(--mnqaz-muted-fg); line-height: 1.625; margin-bottom: 1.5rem; }
.mnqaz-why-points { display: grid; grid-template-columns: 1fr; gap: 1rem; }
@media(min-width:640px) { .mnqaz-why-points { grid-template-columns: repeat(2,1fr); } }
.mnqaz-why-point {
    display: flex; gap: 1rem; padding: 1.25rem; border-radius: 1rem; background: var(--mnqaz-card);
    border: 1px solid var(--mnqaz-border); box-shadow: var(--mnqaz-shadow-card);
    transition: transform 0.35s, box-shadow 0.35s; align-items: flex-start;
}
.mnqaz-why-point:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-why-point-icon {
    flex-shrink: 0; width: 3rem; height: 3rem; border-radius: 0.75rem;
    background: var(--mnqaz-gradient-brand); color: #fff; display: flex; align-items: center;
    justify-content: center; transition: transform 0.3s;
}
.mnqaz-why-point:hover .mnqaz-why-point-icon { transform: rotate(6deg); }
.mnqaz-why-point-title { font-weight: 700; margin-bottom: 0.25rem; }
.mnqaz-why-point-desc { font-size: 0.875rem; color: var(--mnqaz-muted-fg); line-height: 1.625; }

/* ================================================================
   COMPATIBILITY — devices 2-per-row on mobile
   ================================================================ */
.mnqaz-compat { padding: 6rem 0; background: rgba(240,242,245,0.3); position: relative; overflow: hidden; }
.mnqaz-compat-orb-1, .mnqaz-compat-orb-2 { position: absolute; border-radius: 50%; width: 24rem; height: 24rem; filter: blur(60px); }
.mnqaz-compat-orb-1 { top: 33%; right: 0; background: rgba(21,39,66,0.1); }
.mnqaz-compat-orb-2 { bottom: 0; left: 0; background: rgba(31,184,173,0.1); }
.mnqaz-compat-grid { display: grid; grid-template-columns: 1fr; gap: 3rem; align-items: center; }
@media(min-width:1024px) { .mnqaz-compat-grid { grid-template-columns: 1fr 1fr; } }
.mnqaz-compat-desc { font-size: 1.125rem; color: var(--mnqaz-muted-fg); line-height: 1.625; margin-bottom: 1rem; }
/* Ports: 3-col on sm+, stack on very small */
.mnqaz-compat-ports { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin-top: 1rem; }
@media(max-width:479px) { .mnqaz-compat-ports { grid-template-columns: 1fr 1fr; } }
.mnqaz-compat-port {
    padding: 1.25rem; border-radius: 1rem; background: var(--mnqaz-card);
    border: 1px solid var(--mnqaz-border); box-shadow: var(--mnqaz-shadow-card);
    text-align: center; transition: transform 0.35s, box-shadow 0.35s;
}
.mnqaz-compat-port:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-compat-port-icon {
    width: 3rem; height: 3rem; margin: 0 auto 0.75rem; border-radius: 0.75rem;
    background: var(--mnqaz-gradient-brand); color: #fff; display: flex;
    align-items: center; justify-content: center; transition: transform 0.3s;
}
.mnqaz-compat-port:hover .mnqaz-compat-port-icon { transform: scale(1.1); }
.mnqaz-compat-port-label { font-weight: 700; }
.mnqaz-compat-port-note { font-size: 0.75rem; color: var(--mnqaz-muted-fg); margin-top: 0.25rem; }
.mnqaz-compat-devices { margin-top: 1.5rem; }
.mnqaz-compat-devices-title { font-weight: 700; margin-bottom: 0.75rem; display: flex; align-items: center; gap: 0.5rem; }
.mnqaz-compat-devices-title svg { color: var(--mnqaz-secondary); }
/* FIX: 2-per-row on mobile */
.mnqaz-compat-tags { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.mnqaz-compat-tag {
    padding: 0.5rem 1rem; border-radius: 9999px; background: var(--mnqaz-card);
    border: 1px solid var(--mnqaz-border); font-size: 0.875rem; font-weight: 500;
    transition: border-color 0.3s, color 0.3s;
    flex: 0 0 calc(50% - 0.25rem);
}
@media(min-width:640px) { .mnqaz-compat-tag { flex: 0 0 auto; } }
.mnqaz-compat-tag:hover { border-color: var(--mnqaz-secondary); color: var(--mnqaz-secondary); }
.mnqaz-compat-image { position: relative; }
.mnqaz-compat-image-glow { position: absolute; inset: -2rem; background: var(--mnqaz-gradient-brand); border-radius: 3rem; opacity: 0.25; filter: blur(40px); }
.mnqaz-compat-image-wrap {
    position: relative; border-radius: 2rem; overflow: hidden; padding: 2rem;
    background: linear-gradient(to bottom right, var(--mnqaz-card), var(--mnqaz-bg), rgba(31,184,173,0.08));
    border: 1px solid var(--mnqaz-border); box-shadow: var(--mnqaz-shadow-card);
}
.mnqaz-compat-image-wrap img { width: 100%; height: auto; object-fit: contain; }

/* ================================================================
   GALLERY
   ================================================================ */
.mnqaz-gallery { padding: 6rem 0; position: relative; overflow: hidden; background: linear-gradient(to bottom, var(--mnqaz-bg), rgba(31,184,173,0.06), var(--mnqaz-bg)); }
.mnqaz-gallery-orb-1, .mnqaz-gallery-orb-2 { position: absolute; border-radius: 50%; width: 24rem; height: 24rem; filter: blur(60px); animation: mnqaz-float 6s ease-in-out infinite; }
.mnqaz-gallery-orb-1 { top: 0; left: 25%; background: rgba(31,184,173,0.1); }
.mnqaz-gallery-orb-2 { bottom: 0; right: 25%; background: rgba(21,39,66,0.1); animation-delay: 3s; }
.mnqaz-gallery-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
@media(min-width:768px) { .mnqaz-gallery-grid { grid-template-columns: repeat(2,1fr); } }
.mnqaz-gallery-item {
    position: relative; overflow: hidden; border-radius: 1.5rem; box-shadow: var(--mnqaz-shadow-card);
    transition: transform 0.35s, box-shadow 0.35s; background: var(--mnqaz-card); margin: 0;
}
.mnqaz-gallery-item:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-gallery-img-wrap { aspect-ratio: 16/10; overflow: hidden; }
.mnqaz-gallery-img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s; }
.mnqaz-gallery-img-wrap.mnqaz-gallery-contain { background: linear-gradient(to bottom right, rgba(31,184,173,0.08), var(--mnqaz-bg)); display: flex; align-items: center; justify-content: center; padding: 1.5rem; }
.mnqaz-gallery-img-wrap.mnqaz-gallery-contain img { object-fit: contain; width: auto; max-height: 100%; }
.mnqaz-gallery-item:hover .mnqaz-gallery-img-wrap img { transform: scale(1.05); }
.mnqaz-gallery-caption {
    position: absolute; inset: auto 0 0; padding: 1.25rem;
    background: linear-gradient(to top, rgba(21,39,66,0.95), rgba(21,39,66,0.7), transparent);
    color: #fff; display: flex; align-items: center; gap: 0.75rem;
}
.mnqaz-gallery-caption-icon {
    width: 2.5rem; height: 2.5rem; border-radius: 50%;
    background: rgba(31,184,173,0.9); display: flex; align-items: center;
    justify-content: center; flex-shrink: 0;
}
.mnqaz-gallery-caption-text { font-weight: 700; font-size: 1.125rem; }

/* ================================================================
   PROCESS — 4-col
   ================================================================ */
.mnqaz-process { padding: 6rem 0; background: linear-gradient(to bottom right, rgba(240,242,245,0.5), var(--mnqaz-bg)); position: relative; overflow: hidden; }
.mnqaz-process-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; position: relative; }
@media(min-width:768px) { .mnqaz-process-grid { grid-template-columns: repeat(2,1fr); } }
@media(min-width:1024px) { .mnqaz-process-grid { grid-template-columns: repeat(4,1fr); } }
.mnqaz-process-step { text-align: center; position: relative; }
.mnqaz-process-circle {
    position: relative; width: 6rem; height: 6rem; border-radius: 50%; margin: 0 auto 1.25rem;
    background: var(--mnqaz-gradient-brand); display: flex; align-items: center;
    justify-content: center; box-shadow: var(--mnqaz-shadow-glow); transition: transform 0.3s;
}
.mnqaz-process-step:hover .mnqaz-process-circle { transform: scale(1.1); }
.mnqaz-process-num { font-size: 1.875rem; font-weight: 900; color: #fff; position: relative; z-index: 1; }
.mnqaz-process-circle-glow {
    position: absolute; inset: -0.5rem; border-radius: 50%;
    background: var(--mnqaz-gradient-brand); opacity: 0.3; filter: blur(20px);
    animation: mnqaz-pulse-glow 2.4s ease-in-out infinite;
}
.mnqaz-process-icon {
    display: inline-flex; width: 2.5rem; height: 2.5rem; border-radius: 0.75rem;
    background: rgba(31,184,173,0.1); color: var(--mnqaz-secondary);
    align-items: center; justify-content: center; margin-bottom: 0.75rem;
}
.mnqaz-process-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 0.5rem; }
.mnqaz-process-desc { font-size: 0.875rem; color: var(--mnqaz-muted-fg); line-height: 1.625; padding: 0 0.5rem; }
.mnqaz-process-connector { display: none; }
@media(min-width:1024px) {
    .mnqaz-process-connector {
        display: block; position: absolute; top: 3rem; left: -50%; width: 100%;
        height: 2px; background: linear-gradient(to left, rgba(31,184,173,0.4), transparent);
    }
}

/* ================================================================
   TESTIMONIALS — tighter spacing
   ================================================================ */
.mnqaz-testimonials { padding: 6rem 0; background: var(--mnqaz-bg); }
.mnqaz-testimonials-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
@media(min-width:768px) { .mnqaz-testimonials-grid { grid-template-columns: repeat(3,1fr); } }
.mnqaz-testimonial-card {
    padding: 2rem; border-radius: 1.5rem; background: var(--mnqaz-card);
    box-shadow: var(--mnqaz-shadow-card); position: relative; overflow: hidden;
    transition: transform 0.35s, box-shadow 0.35s;
}
.mnqaz-testimonial-card:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-testimonial-quote { position: absolute; top: -0.25rem; right: -0.25rem; font-size: 6rem; color: rgba(31,184,173,0.1); font-family: serif; line-height: 1; }
.mnqaz-testimonial-stars { display: flex; gap: 0.25rem; color: var(--mnqaz-secondary); margin-bottom: 1rem; position: relative; }
.mnqaz-testimonial-text { color: rgba(15,30,48,0.85); line-height: 1.625; margin-bottom: 1.5rem; min-height: 5rem; position: relative; }
/* FIX: tighter author spacing */
.mnqaz-testimonial-author { display: flex; align-items: center; gap: 0.75rem; padding-top: 1rem; border-top: 1px solid var(--mnqaz-border); position: relative; }
.mnqaz-testimonial-avatar {
    width: 3rem; height: 3rem; border-radius: 50%; background: var(--mnqaz-gradient-brand);
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: 1.125rem; flex-shrink: 0;
}
.mnqaz-testimonial-name { font-weight: 700; margin: 0; line-height: 1.3; }
.mnqaz-testimonial-loc { font-size: 0.875rem; color: var(--mnqaz-muted-fg); margin: 0; }

/* ================================================================
   CONTACT CTA — smaller buttons on mobile
   ================================================================ */
.mnqaz-cta-banner { padding: 6rem 0; position: relative; overflow: hidden; }
.mnqaz-cta-bg { position: absolute; inset: 0; background: var(--mnqaz-gradient-brand); }
.mnqaz-cta-glow { position: absolute; inset: 0; background: var(--mnqaz-gradient-glow); }
.mnqaz-cta-orb-1, .mnqaz-cta-orb-2 { position: absolute; border-radius: 50%; filter: blur(60px); animation: mnqaz-float 6s ease-in-out infinite; }
.mnqaz-cta-orb-1 { top: 2rem; right: 2rem; width: 18rem; height: 18rem; background: rgba(51,214,196,0.3); }
.mnqaz-cta-orb-2 { bottom: 2rem; left: 2rem; width: 20rem; height: 20rem; background: rgba(255,255,255,0.1); animation-delay: 2s; }
.mnqaz-cta-content { position: relative; text-align: center; color: #fff; }
.mnqaz-cta-badge { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1rem; border-radius: 9999px; background: rgba(255,255,255,0.15); backdrop-filter: blur(14px); font-size: 0.875rem; font-weight: 500; margin-bottom: 1.5rem; }
.mnqaz-cta-badge-icon { color: var(--mnqaz-secondary-glow); }
.mnqaz-cta-heading { font-size: clamp(2.25rem,4vw,3.75rem); font-weight: 900; margin-bottom: 1.5rem; line-height: 1.2; color: #fff; }
.mnqaz-cta-desc { font-size: 1.25rem; color: rgba(255,255,255,0.85); max-width: 42rem; margin: 0 auto 2.5rem; line-height: 1.625; }
.mnqaz-cta-btns { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
/* FIX: smaller buttons on mobile, CTA matches hero gradient */
@media(max-width:600px) {
    .mnqaz-cta-btns .mnqaz-btn { width: auto; padding: 0.625rem 1.5rem; font-size: 0.9375rem; }
}

/* ================================================================
   PAGE HERO — tighter padding pt-32 pb-20
   ================================================================ */
.mnqaz-page-hero {
    position: relative; padding: 8rem 0 5rem; overflow: hidden;
    background: var(--mnqaz-gradient-brand);
}
@media(max-width:767px) { .mnqaz-page-hero { padding: 6rem 0 3rem; } }
.mnqaz-page-hero-glow { position: absolute; inset: 0; background: var(--mnqaz-gradient-glow); }
.mnqaz-page-hero-orb-1, .mnqaz-page-hero-orb-2 { position: absolute; border-radius: 50%; filter: blur(60px); animation: mnqaz-float 6s ease-in-out infinite; }
.mnqaz-page-hero-orb-1 { top: 2rem; right: 25%; width: 18rem; height: 18rem; background: rgba(51,214,196,0.3); }
.mnqaz-page-hero-orb-2 { bottom: 0; left: 25%; width: 24rem; height: 24rem; background: rgba(255,255,255,0.1); animation-delay: 2s; }
.mnqaz-page-hero-content { text-align: center; color: #fff; position: relative; }
.mnqaz-page-hero-badge { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1rem; border-radius: 9999px; background: rgba(255,255,255,0.15); backdrop-filter: blur(14px); font-size: 0.875rem; margin-bottom: 1.25rem; }
.mnqaz-page-hero-badge-icon { color: var(--mnqaz-secondary-glow); }
/* FIX: tighter title margin */
.mnqaz-page-hero-title { font-size: clamp(2.25rem,5vw,3.75rem); font-weight: 900; line-height: 1.15; margin-bottom: 1.25rem; color: #fff; }
.mnqaz-page-hero-subtitle { font-size: 1.125rem; color: rgba(255,255,255,0.85); max-width: 48rem; margin: 0 auto; line-height: 1.625; }

/* ================================================================
   PACKAGES
   ================================================================ */
.mnqaz-packages { padding: 6rem 0; background: rgba(240,242,245,0.3); position: relative; overflow: hidden; }
.mnqaz-packages-glow { position: absolute; inset: 0 0 auto; height: 10rem; background: var(--mnqaz-gradient-glow); }
.mnqaz-packages-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; align-items: stretch; }
@media(min-width:768px) { .mnqaz-packages-grid { grid-template-columns: repeat(3,1fr); } }
.mnqaz-package-card {
    position: relative; padding: 2rem; border-radius: 1.5rem; display: flex;
    flex-direction: column; background: var(--mnqaz-card); box-shadow: var(--mnqaz-shadow-card);
    transition: transform 0.35s, box-shadow 0.35s;
}
.mnqaz-package-card:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-package-hl {
    background: var(--mnqaz-gradient-brand) !important; color: #fff !important;
    transform: scale(1.05); box-shadow: var(--mnqaz-shadow-glow) !important;
}
.mnqaz-package-hl .mnqaz-package-tagline, .mnqaz-package-hl .mnqaz-package-price-note,
.mnqaz-package-hl .mnqaz-package-unit { color: rgba(255,255,255,0.8) !important; }
.mnqaz-package-badge { position: absolute; top: -0.75rem; left: 50%; transform: translateX(-50%); padding: 0.25rem 1rem; border-radius: 9999px; background: #fff; color: var(--mnqaz-primary); font-size: 0.75rem; font-weight: 700; white-space: nowrap; }
.mnqaz-package-icon { width: 3.5rem; height: 3.5rem; border-radius: 1rem; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; background: var(--mnqaz-gradient-brand); color: #fff; }
.mnqaz-package-hl .mnqaz-package-icon { background: rgba(255,255,255,0.2); }
.mnqaz-package-name { font-size: 1.5rem; font-weight: 700; margin-bottom: 0.25rem; }
.mnqaz-package-tagline { font-size: 0.875rem; color: var(--mnqaz-muted-fg); margin-bottom: 1.25rem; }
.mnqaz-package-price-block { margin-bottom: 1.5rem; }
.mnqaz-package-price-note { font-size: 0.75rem; color: var(--mnqaz-muted-fg); margin-bottom: 0.25rem; }
.mnqaz-package-price { display: flex; align-items: baseline; gap: 0.5rem; }
.mnqaz-package-amount { font-size: 3rem; font-weight: 900; }
.mnqaz-package-currency { font-size: 1.125rem; font-weight: 700; }
.mnqaz-package-unit { font-size: 0.875rem; color: var(--mnqaz-muted-fg); margin-top: 0.25rem; }
.mnqaz-package-features { list-style: none; padding: 0; margin: 0 0 2rem; flex: 1; }
.mnqaz-package-features li { display: flex; align-items: flex-start; gap: 0.5rem; font-size: 0.875rem; margin-bottom: 0.75rem; }
.mnqaz-package-features li svg { flex-shrink: 0; margin-top: 0.125rem; color: var(--mnqaz-secondary); }
.mnqaz-package-hl .mnqaz-package-features li svg { color: var(--mnqaz-secondary-glow); }
.mnqaz-package-card .mnqaz-btn { text-align: center; }
.mnqaz-package-hl .mnqaz-btn-gradient { background: #fff !important; color: var(--mnqaz-primary) !important; }

/* ================================================================
   FAQ — tighter
   ================================================================ */
.mnqaz-faq { padding: 6rem 0; background: var(--mnqaz-bg); }
.mnqaz-faq-items { display: flex; flex-direction: column; gap: 0.75rem; }
.mnqaz-faq-item { border-radius: 1rem; background: var(--mnqaz-card); box-shadow: var(--mnqaz-shadow-card); overflow: hidden; border: 1px solid var(--mnqaz-border); }
.mnqaz-faq-trigger {
    width: 100%; text-align: right; padding: 1.25rem; display: flex; align-items: center;
    justify-content: space-between; gap: 1rem; background: none; border: none; cursor: pointer;
    font-family: var(--mnqaz-font); font-size: 1rem; transition: background 0.3s;
}
.mnqaz-faq-trigger:hover { background: rgba(31,184,173,0.04); }
.mnqaz-faq-q { display: flex; align-items: center; gap: 0.75rem; font-weight: 700; font-size: 1.125rem; flex: 1; text-align: right; }
.mnqaz-faq-num {
    flex-shrink: 0; width: 2.25rem; height: 2.25rem; border-radius: 0.75rem;
    background: var(--mnqaz-gradient-brand); color: #fff; font-size: 0.875rem; font-weight: 900;
    display: flex; align-items: center; justify-content: center;
}
.mnqaz-faq-chevron { color: var(--mnqaz-secondary); transition: transform 0.3s; flex-shrink: 0; }
.mnqaz-faq-item[data-open="true"] .mnqaz-faq-chevron { transform: rotate(180deg); }
.mnqaz-faq-answer {
    display: none; padding: 0 1.25rem 1.25rem; border-top: 1px solid var(--mnqaz-border);
    color: rgba(15,30,48,0.8); line-height: 1.625; animation: mnqaz-fade-in 0.3s ease;
}
.mnqaz-faq-answer.mnqaz-faq-open { display: block; }
.mnqaz-faq-answer p { padding-top: 0.75rem; margin: 0; }

/* ================================================================
   CONTACT FORM
   ================================================================ */
.mnqaz-contact-form-section { padding: 6rem 0; background: var(--mnqaz-bg); }
.mnqaz-form-card { border-radius: 1.5rem; background: var(--mnqaz-card); box-shadow: var(--mnqaz-shadow-card); padding: 2rem; position: relative; overflow: hidden; }
@media(min-width:768px) { .mnqaz-form-card { padding: 3rem; } }
.mnqaz-form-card-orb { position: absolute; top: -5rem; left: -5rem; width: 15rem; height: 15rem; border-radius: 50%; background: rgba(31,184,173,0.1); filter: blur(60px); }
.mnqaz-form-card-inner { position: relative; }
.mnqaz-form { display: flex; flex-direction: column; gap: 1rem; }
.mnqaz-input {
    width: 100%; border-radius: 1rem; border: 2px solid var(--mnqaz-border); padding: 0.875rem 1.25rem;
    outline: none; transition: border-color 0.3s; background: var(--mnqaz-bg); font-family: var(--mnqaz-font);
    font-size: 1rem; line-height: 1.5;
}
.mnqaz-input:focus { border-color: var(--mnqaz-secondary); }
.mnqaz-textarea { resize: none; }
.mnqaz-form-row { display: grid; grid-template-columns: 1fr; gap: 1rem; }
@media(min-width:768px) { .mnqaz-form-row { grid-template-columns: 1fr 1fr; } }
.mnqaz-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.mnqaz-form-msg { padding: 0.75rem 1rem; border-radius: 1rem; font-weight: 500; display: flex; align-items: center; gap: 0.5rem; }
.mnqaz-form-msg-success { background: rgba(31,184,173,0.1); border: 1px solid var(--mnqaz-secondary); color: var(--mnqaz-fg); }
.mnqaz-form-msg-error { background: rgba(221,36,36,0.1); border: 1px solid var(--mnqaz-destructive); color: var(--mnqaz-destructive); }

/* ================================================================
   CONTACT INFO
   ================================================================ */
.mnqaz-contact-info { padding: 5rem 0; background: rgba(240,242,245,0.3); }
.mnqaz-contact-info-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1rem; }
@media(min-width:1024px) { .mnqaz-contact-info-grid { grid-template-columns: repeat(4,1fr); } }
.mnqaz-info-card {
    text-align: center; padding: 1.75rem; border-radius: 1.5rem; background: var(--mnqaz-card);
    box-shadow: var(--mnqaz-shadow-card); text-decoration: none !important; color: inherit;
    transition: transform 0.35s, box-shadow 0.35s; display: block;
}
.mnqaz-info-card:hover { transform: translateY(-6px); box-shadow: var(--mnqaz-shadow-elegant); }
.mnqaz-info-icon {
    display: inline-flex; width: 4rem; height: 4rem; border-radius: 1rem;
    background: var(--mnqaz-gradient-brand); color: #fff; align-items: center;
    justify-content: center; margin-bottom: 1rem; transition: transform 0.3s;
}
.mnqaz-info-card:hover .mnqaz-info-icon { transform: scale(1.1); }
.mnqaz-info-label { font-size: 0.875rem; color: var(--mnqaz-muted-fg); margin-bottom: 0.25rem; }
.mnqaz-info-value { font-weight: 700; font-size: 1rem; word-break: break-word; overflow-wrap: anywhere; }

/* ================================================================
   LEGAL
   ================================================================ */
.mnqaz-legal { padding: 5rem 0; background: var(--mnqaz-bg); }
.mnqaz-legal-card { border-radius: 1.5rem; background: var(--mnqaz-card); box-shadow: var(--mnqaz-shadow-card); padding: 2rem; }
@media(min-width:768px) { .mnqaz-legal-card { padding: 3rem; } }
.mnqaz-legal-title { font-size: 2rem; font-weight: 900; margin-bottom: 1rem; background: var(--mnqaz-gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.mnqaz-legal-intro { color: rgba(15,30,48,0.8); line-height: 1.625; margin-bottom: 2rem; }
.mnqaz-legal-sections { display: flex; flex-direction: column; gap: 1.5rem; }
.mnqaz-legal-sec { border-right: 4px solid var(--mnqaz-secondary); padding-right: 1.25rem; }
.mnqaz-legal-sec-title { font-weight: 700; font-size: 1.125rem; margin-bottom: 0.5rem; color: var(--mnqaz-primary); }
.mnqaz-legal-text { color: rgba(15,30,48,0.8); line-height: 1.625; }
.mnqaz-legal-list { list-style: none; padding: 0; margin: 0; }
.mnqaz-legal-list li { display: flex; align-items: flex-start; gap: 0.5rem; color: rgba(15,30,48,0.8); margin-bottom: 0.5rem; }
.mnqaz-legal-list li svg { flex-shrink: 0; color: var(--mnqaz-secondary); margin-top: 0.25rem; }

/* ================================================================
   FOOTER
   ================================================================ */
.mnqaz-footer { position: relative; background: var(--mnqaz-primary); color: #fff; overflow: hidden; font-size: 0.875rem; }
.mnqaz-footer-glow { position: absolute; inset: 0; opacity: 0.3; background: var(--mnqaz-gradient-glow); }
.mnqaz-footer-inner { position: relative; max-width: 1280px; margin: 0 auto; padding: 4rem 1rem; }
@media(min-width:768px) { .mnqaz-footer-inner { padding: 4rem 2rem; } }
.mnqaz-footer-grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; }
@media(min-width:768px) { .mnqaz-footer-grid { grid-template-columns: repeat(3,1fr); } }
.mnqaz-footer-logo-wrap { display: inline-block; padding: 0.75rem; border-radius: 1rem; background: #fff; margin-bottom: 1rem; }
.mnqaz-footer-logo-wrap img { height: 5rem; width: auto; object-fit: contain; }
.mnqaz-footer-company { font-weight: 700; font-size: 1.125rem; margin-bottom: 0.75rem; }
.mnqaz-footer-info-list { list-style: none; padding: 0; margin: 0; }
.mnqaz-footer-info-list li { color: rgba(255,255,255,0.8); margin-bottom: 0.375rem; }
.mnqaz-footer-heading { font-size: 1.25rem; font-weight: 700; margin-bottom: 1.25rem; background: var(--mnqaz-gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.mnqaz-footer-links { list-style: none; padding: 0; margin: 0; }
.mnqaz-footer-links li { margin-bottom: 0.625rem; }
.mnqaz-footer-links li a { color: rgba(255,255,255,0.85) !important; text-decoration: none !important; transition: color 0.3s; display: inline-flex; align-items: center; gap: 0.5rem; }
.mnqaz-footer-links li a:hover { color: var(--mnqaz-secondary) !important; }
.mnqaz-footer-links li a i { font-size: 0.75rem; color: var(--mnqaz-secondary); }
.mnqaz-footer-contact { list-style: none; padding: 0; margin: 0; }
.mnqaz-footer-contact li { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
.mnqaz-footer-contact-icon { color: var(--mnqaz-secondary); }
.mnqaz-footer-contact li a { color: rgba(255,255,255,0.85) !important; text-decoration: none !important; word-break: break-word; }
.mnqaz-footer-note { font-size: 0.75rem; color: rgba(255,255,255,0.6); margin-top: 1rem; }
.mnqaz-footer-social { display: flex; gap: 0.75rem; margin-top: 1.25rem; }
.mnqaz-social-icon { width: 2.75rem; height: 2.75rem; border-radius: 50%; background: rgba(255,255,255,0.1); display: flex; align-items: center; justify-content: center; color: #fff; text-decoration: none !important; transition: all 0.3s; }
.mnqaz-social-icon:hover { background: var(--mnqaz-gradient-brand); transform: scale(1.1); }
.mnqaz-footer-bottom { position: relative; border-top: 1px solid rgba(255,255,255,0.1); padding: 1.25rem 1rem; text-align: center; font-size: 0.875rem; color: rgba(255,255,255,0.6); display: flex; flex-direction: column; gap: 0.5rem; align-items: center; max-width: 1280px; margin: 0 auto; }
@media(min-width:768px) { .mnqaz-footer-bottom { flex-direction: row; justify-content: space-between; padding: 1.25rem 2rem; } }
.mnqaz-footer-agency a { color: var(--mnqaz-secondary) !important; text-decoration: none !important; }
.mnqaz-footer-agency a:hover { text-decoration: underline !important; }

/* ── Mobile responsive ── */
@media(max-width:600px) {
    .mnqaz-form-row { grid-template-columns: 1fr !important; }
    .mnqaz-hero-ctas { flex-direction: column; align-items: center; }
    .mnqaz-hero-ctas .mnqaz-btn { width: 100%; }
    .mnqaz-cta-btns { flex-direction: column; align-items: center; }
}
