/* NoorVista 3.0.60 — public mobile/header/floating consistency */

/* Tariff card actions: one centered CTA */
body:not([data-panel-role]) .tariff-card__actions {
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: auto !important;
}
body:not([data-panel-role]) .tariff-card__actions .btn {
  min-width: 154px !important;
}
body:not([data-panel-role]) .tariff-card__actions .btn-outline[href="/contact"] {
  display: none !important;
}

/* Prevent bottom fixed actions from covering content */
@media (max-width: 720px) {
  html { scroll-padding-bottom: 94px !important; }
  body:not([data-panel-role]) { padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px)) !important; overflow-x: hidden !important; }

  /* Static topbar like the home page: phone left, socials center, province right */
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell {
    display: block !important;
    min-height: 38px !important;
    height: 38px !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 920 !important;
  }
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell .nv-static-topbar {
    min-height: 38px !important;
    height: 38px !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 92px !important;
    grid-template-areas: "call socials location" !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 10px !important;
    direction: ltr !important;
  }
  body:not([data-panel-role]) .nv-static-topbar__mobile-call {
    grid-area: call !important;
    display: inline-flex !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 10px !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(125,211,252,.14) !important;
    justify-self: start !important;
  }
  body:not([data-panel-role]) .nv-static-topbar__socials {
    grid-area: socials !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    direction: ltr !important;
  }
  body:not([data-panel-role]) .nv-static-topbar__contacts {
    grid-area: location !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    min-width: 0 !important;
    direction: rtl !important;
  }
  body:not([data-panel-role]) .nv-static-topbar__item--hours,
  body:not([data-panel-role]) .nv-static-topbar__item--phone {
    display: none !important;
  }
  body:not([data-panel-role]) .nv-static-topbar__item--address {
    display: inline-flex !important;
    max-width: 92px !important;
    overflow: hidden !important;
    justify-content: flex-end !important;
    gap: 4px !important;
    font-size: 12px !important;
  }
  body:not([data-panel-role]) .nv-static-topbar__social {
    width: 28px !important;
    height: 28px !important;
    border-radius: 9px !important;
  }
  body:not([data-panel-role]) .nv-static-topbar__social img {
    width: 21px !important;
    height: 21px !important;
  }

  /* Mobile header: menu right, logo centered, login left; booking CTA only in fixed footer actions */
  body:not([data-panel-role]) .navbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 910 !important;
    min-height: 58px !important;
    background: rgba(255,255,255,.96) !important;
    backdrop-filter: blur(14px) !important;
    border-bottom: 1px solid rgba(186,230,253,.9) !important;
    box-shadow: 0 8px 26px rgba(15,23,42,.05) !important;
  }
  body:not([data-panel-role]) .navbar .nav-inner,
  body:not([data-panel-role]) .navbar .container.nav-inner {
    width: 100% !important;
    min-height: 58px !important;
    height: 58px !important;
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr) 56px !important;
    grid-template-areas: "login brand menu" !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 6px 12px !important;
    position: relative !important;
  }
  body:not([data-panel-role]) .navbar .brand {
    grid-area: brand !important;
    justify-self: center !important;
    align-self: center !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    min-width: 0 !important;
    max-width: 140px !important;
    text-decoration: none !important;
  }
  body:not([data-panel-role]) .navbar .brand > div:not(.brand-logo):not(.brand-logo-image) {
    display: none !important;
  }
  body:not([data-panel-role]) .navbar .brand-logo,
  body:not([data-panel-role]) .navbar .brand-logo-image {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 14px !important;
    margin: 0 !important;
  }
  body:not([data-panel-role]) .navbar .mobile-toggle,
  body:not([data-panel-role]) .navbar #mobileToggle {
    grid-area: menu !important;
    justify-self: end !important;
    align-self: center !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    border-radius: 14px !important;
    border: 1px solid #bae6fd !important;
    background: #fff !important;
    color: #075985 !important;
    padding: 0 !important;
    margin: 0 !important;
    z-index: 1202 !important;
    box-shadow: 0 8px 22px rgba(15,23,42,.06) !important;
  }
  body:not([data-panel-role]) .navbar .nav-actions {
    grid-area: login !important;
    justify-self: start !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body:not([data-panel-role]) .navbar .nav-actions .nav-booking,
  body:not([data-panel-role]) .navbar .nav-actions [data-open-booking] {
    display: none !important;
  }
  body:not([data-panel-role]) .navbar .nav-actions .btn-outline,
  body:not([data-panel-role]) .navbar .nav-actions a[href*="login"] {
    display: inline-flex !important;
    min-height: 38px !important;
    height: 38px !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }
  body:not([data-panel-role]) .navbar nav {
    display: contents !important;
  }
  body:not([data-panel-role]) .navbar .menu {
    position: fixed !important;
    top: 104px !important;
    right: 12px !important;
    left: 12px !important;
    z-index: 1200 !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 7px !important;
    max-height: min(70vh, 520px) !important;
    overflow-y: auto !important;
    padding: 12px !important;
    margin: 0 !important;
    list-style: none !important;
    border: 1px solid #bae6fd !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.98) !important;
    box-shadow: 0 24px 70px rgba(15,23,42,.20) !important;
    opacity: 1 !important;
    transform: none !important;
  }
  body.nv-mobile-menu-open:not([data-panel-role]) .navbar .menu,
  body:not([data-panel-role]) .navbar.is-menu-open .menu,
  body:not([data-panel-role]) .navbar .menu.open,
  body:not([data-panel-role]) .navbar .menu.is-open {
    display: flex !important;
    visibility: visible !important;
  }
  body:not([data-panel-role]) .navbar .menu li,
  body:not([data-panel-role]) .navbar .menu a {
    width: 100% !important;
  }
  body:not([data-panel-role]) .navbar .menu a {
    min-height: 42px !important;
    justify-content: flex-start !important;
    padding: 10px 14px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    background: #f8fbff !important;
    color: #0f172a !important;
  }
  body:not([data-panel-role]) .navbar .menu a.active {
    background: #e0f2fe !important;
    color: #075985 !important;
  }
  body:not([data-panel-role]) .navbar .mega-menu {
    position: static !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 7px !important;
    padding: 10px !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    border: 1px solid #e0f2fe !important;
    background: #fff !important;
  }

  /* Floating actions: globally bottom-centered on mobile */
  body:not([data-panel-role]) .floating-actions {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    transform: translateX(-50%) !important;
    z-index: 800 !important;
    width: min(calc(100vw - 24px), 360px) !important;
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 0 !important;
    pointer-events: none !important;
  }
  body:not([data-panel-role]) .floating-action-btn,
  body:not([data-panel-role]) .chatbot-fab {
    pointer-events: auto !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    width: auto !important;
    height: 48px !important;
    min-height: 48px !important;
    border-radius: 999px !important;
    padding: 0 11px !important;
    font-size: 12px !important;
    box-shadow: 0 12px 26px rgba(15,23,42,.16) !important;
  }
  body:not([data-panel-role]) .floating-action-text,
  body:not([data-panel-role]) .chatbot-fab-label {
    display: inline-flex !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }
  body:not([data-panel-role]) .floating-action-icon {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
  }
  body:not([data-panel-role]) .chatbot-panel {
    right: 10px !important;
    left: 10px !important;
    bottom: calc(70px + env(safe-area-inset-bottom, 0px)) !important;
    width: auto !important;
    max-width: none !important;
    height: min(560px, calc(100vh - 112px)) !important;
    border-radius: 22px !important;
  }
}

/* NoorVista 3.0.61 — mobile header/menu correction */
@media (max-width: 720px) {
  /* Force physical layout: login on left, logo centered, menu on right even on RTL pages */
  body:not([data-panel-role]) .navbar .nav-inner,
  body:not([data-panel-role]) .navbar .container.nav-inner {
    direction: ltr !important;
    grid-template-columns: 58px minmax(0, 1fr) 58px !important;
    grid-template-areas: "login brand menu" !important;
  }

  body:not([data-panel-role]) .navbar .brand,
  body:not([data-panel-role]) .navbar .mobile-toggle,
  body:not([data-panel-role]) .navbar #mobileToggle,
  body:not([data-panel-role]) .navbar .nav-actions,
  body:not([data-panel-role]) .navbar .menu {
    direction: rtl !important;
  }

  body:not([data-panel-role]) .navbar .nav-actions {
    grid-area: login !important;
    justify-self: start !important;
  }

  body:not([data-panel-role]) .navbar .mobile-toggle,
  body:not([data-panel-role]) .navbar #mobileToggle {
    grid-area: menu !important;
    justify-self: end !important;
  }

  body:not([data-panel-role]) .navbar .brand {
    grid-area: brand !important;
    justify-self: center !important;
  }

  /* Keep the topbar phone button vertically centered */
  body:not([data-panel-role]) .nv-static-topbar__mobile-call,
  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 0 !important;
    padding: 0 !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call svg,
  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon svg {
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    position: static !important;
    transform: none !important;
    vertical-align: middle !important;
  }

  /* Mobile menu: show all main items, not only Home */
  body:not([data-panel-role]) .navbar .menu {
    top: 100px !important;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    background: rgba(255,255,255,.98) !important;
  }

  body.nv-mobile-menu-open:not([data-panel-role]) .navbar .menu,
  body:not([data-panel-role]) .navbar.is-menu-open .menu,
  body:not([data-panel-role]) .navbar .menu.open,
  body:not([data-panel-role]) .navbar .menu.is-open {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body:not([data-panel-role]) .navbar .menu > li,
  body:not([data-panel-role]) .navbar .menu > li.has-mega {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-height: 0 !important;
    position: relative !important;
  }

  body:not([data-panel-role]) .navbar .menu > li > a,
  body:not([data-panel-role]) .navbar .menu > li.has-mega > a {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: #0f172a !important;
    background: #f8fbff !important;
    pointer-events: auto !important;
  }

  body:not([data-panel-role]) .navbar .menu > li > a.active,
  body:not([data-panel-role]) .navbar .menu > li > a[aria-current="page"] {
    background: #e0f2fe !important;
    color: #075985 !important;
  }

  /* Keep Services submenu closed until user taps Services */
  body:not([data-panel-role]) .navbar .has-mega .mega-menu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  body:not([data-panel-role]) .navbar .has-mega.is-open .mega-menu,
  body:not([data-panel-role]) .navbar .has-mega.open .mega-menu,
  body:not([data-panel-role]) .navbar .has-mega.submenu-open .mega-menu {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  body:not([data-panel-role]) .navbar .mega-col,
  body:not([data-panel-role]) .navbar .mega-col a {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body:not([data-panel-role]) .navbar .mega-col {
    flex-direction: column !important;
  }
}

/* NoorVista 3.0.64 — mobile topbar phone vertical alignment */
@media (max-width: 720px) {
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell,
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell .nv-static-topbar {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    align-items: center !important;
  }

  body:not([data-panel-role]) .topbar.nv-static-topbar-shell .nv-static-topbar {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call,
  body:not([data-panel-role]) .topbar .nv-mobile-call-action,
  body:not([data-panel-role]) .nv-final-topbar__mobile-call {
    align-self: center !important;
    justify-self: start !important;
    place-self: center start !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    vertical-align: middle !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon,
  body:not([data-panel-role]) .topbar .nv-mobile-call-action .nv-topbar-icon-wrap,
  body:not([data-panel-role]) .nv-final-topbar__mobile-call .nv-final-topbar__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    position: static !important;
    transform: none !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call svg,
  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon svg,
  body:not([data-panel-role]) .topbar .nv-mobile-call-action svg,
  body:not([data-panel-role]) .topbar .nv-mobile-call-svg,
  body:not([data-panel-role]) .nv-final-topbar__mobile-call svg {
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    transform: translateY(-1px) !important;
    transform-origin: center center !important;
    vertical-align: middle !important;
  }
}


/* NoorVista 3.0.65 — public FAQ visibility and exact mobile header/topbar alignment */
.faq-page #publicFaqList,
.faq-page .faq-list {
  max-height: none !important;
  overflow: visible !important;
}
.faq-page .faq-list details {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

@media (max-width: 720px) {
  /* Make the static topbar identical on all public pages */
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 !important;
    overflow: hidden !important;
    display: block !important;
  }

  body:not([data-panel-role]) .topbar.nv-static-topbar-shell .nv-static-topbar,
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell .topbar-inner {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 92px !important;
    grid-template-areas: "call socials location" !important;
    align-items: center !important;
    justify-items: stretch !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 0 10px !important;
    margin: 0 !important;
    direction: ltr !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call {
    grid-area: call !important;
    align-self: center !important;
    justify-self: start !important;
    display: grid !important;
    place-items: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    max-width: 32px !important;
    max-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 10px !important;
    line-height: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon {
    position: absolute !important;
    inset: 0 !important;
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call svg,
  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon svg {
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    transform: translateY(-2px) !important;
    transform-origin: center !important;
    vertical-align: middle !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__socials {
    grid-area: socials !important;
    justify-content: center !important;
    align-items: center !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__contacts {
    grid-area: location !important;
    justify-content: flex-end !important;
    align-items: center !important;
  }

  /* Same mobile navbar geometry as homepage: login left, logo center, menu right */
  body:not([data-panel-role]) .navbar .nav-inner,
  body:not([data-panel-role]) .navbar .container.nav-inner {
    direction: ltr !important;
    grid-template-columns: 58px minmax(0, 1fr) 58px !important;
    grid-template-areas: "login brand menu" !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 6px 12px !important;
  }
  body:not([data-panel-role]) .navbar .nav-actions { grid-area: login !important; justify-self: start !important; direction: rtl !important; }
  body:not([data-panel-role]) .navbar .brand { grid-area: brand !important; justify-self: center !important; direction: rtl !important; }
  body:not([data-panel-role]) .navbar .mobile-toggle,
  body:not([data-panel-role]) .navbar #mobileToggle { grid-area: menu !important; justify-self: end !important; direction: rtl !important; }

  body:not([data-panel-role]) .navbar .menu {
    top: 98px !important;
    right: 12px !important;
    left: 12px !important;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    max-height: min(72vh, 560px) !important;
    overflow-y: auto !important;
  }

  body.nv-mobile-menu-open:not([data-panel-role]) .navbar .menu,
  body:not([data-panel-role]) .navbar.is-menu-open .menu,
  body:not([data-panel-role]) .navbar .menu.open,
  body:not([data-panel-role]) .navbar .menu.is-open {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body:not([data-panel-role]) .navbar .menu > li,
  body:not([data-panel-role]) .navbar .menu > li > a {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body:not([data-panel-role]) .navbar .menu > li { flex-direction: column !important; }

  body:not([data-panel-role]) .navbar .has-mega .mega-menu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  body:not([data-panel-role]) .navbar .has-mega.open .mega-menu,
  body:not([data-panel-role]) .navbar .has-mega.is-open .mega-menu,
  body:not([data-panel-role]) .navbar .has-mega.submenu-open .mega-menu {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    overflow: visible !important;
  }
}


/* NoorVista 3.0.66 — final mobile topbar call centering */
@media (max-width: 720px) {
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell,
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell .nv-static-topbar,
  body:not([data-panel-role]) .topbar.nv-static-topbar-shell .topbar-inner {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    align-items: center !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call,
  body:not([data-panel-role]) .topbar .nv-mobile-call-action,
  body:not([data-panel-role]) .nv-final-topbar__mobile-call {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    justify-self: start !important;
    place-self: center start !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    max-width: 32px !important;
    max-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    overflow: hidden !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon,
  body:not([data-panel-role]) .topbar .nv-mobile-call-action .nv-topbar-icon-wrap,
  body:not([data-panel-role]) .nv-final-topbar__mobile-call .nv-final-topbar__icon {
    position: static !important;
    inset: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    transform: none !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call svg,
  body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon svg,
  body:not([data-panel-role]) .topbar .nv-mobile-call-action svg,
  body:not([data-panel-role]) .topbar .nv-mobile-call-svg,
  body:not([data-panel-role]) .nv-final-topbar__mobile-call svg {
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    translate: none !important;
    vertical-align: middle !important;
  }

  body:not([data-panel-role]) .nv-static-topbar__mobile-call::before,
  body:not([data-panel-role]) .nv-static-topbar__mobile-call::after {
    content: none !important;
  }
}

/* NoorVista 3.0.66 — FAQ desktop hero full width */
body.faq-page .faq-hero .container {
  max-width: min(100% - 48px, 1240px) !important;
}
body.faq-page .faq-hero p {
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 720px) {
  body.faq-page .faq-hero .container {
    max-width: min(100% - 24px, 1240px) !important;
  }
}


/* NoorVista 3.0.118 — authoritative mobile menu state and exact topbar phone centering */
@media(max-width:720px){
 body:not([data-panel-role]) .topbar.nv-static-topbar-shell .nv-static-topbar{position:relative!important;display:grid!important;align-items:center!important;min-height:38px!important;height:38px!important;padding-block:0!important}
 body:not([data-panel-role]) .nv-static-topbar__mobile-call{position:absolute!important;inset-inline-start:7px!important;top:50%!important;bottom:auto!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;transform:translateY(-50%)!important;line-height:0!important;box-sizing:border-box!important}
 body:not([data-panel-role]) .nv-static-topbar__mobile-call .nv-static-topbar__icon{width:18px!important;height:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;line-height:0!important}
 body:not([data-panel-role]) .nv-static-topbar__mobile-call svg{width:16px!important;height:16px!important;display:block!important;margin:0!important;transform:none!important}
 body:not([data-panel-role]) .navbar .mobile-toggle,body:not([data-panel-role]) .navbar #mobileToggle{display:flex!important;align-items:center!important;justify-content:center!important}
 body:not([data-panel-role]) .navbar .menu:not(.open):not(.is-open){visibility:hidden!important;opacity:0!important;pointer-events:none!important}
 body.nv-mobile-menu-open:not([data-panel-role]){overflow:hidden!important}
}
