/* Scope compatibility to the portal; plugin visibility and JS remain plugin-owned. */
.nti-header-widgets .widget { margin: 0; }
.nti-header-widgets .wp-block-search { width: 100% !important; float: none; margin: 0; }
.nti-header-widgets .wp-block-search__inside-wrapper { width: 100%; max-width: 100%; min-height: 52px; border: 1px solid #74849c; border-radius: 6px; padding: 4px; }
.nti-header-widgets .wp-block-search__input { min-width: 0; border: 0; border-radius: 0; padding: 8px 10px; color: var(--nti-ink); background: var(--nti-surface); font: inherit; font-size: .875rem; }
.nti-header-widgets .wp-block-search__button { min-width: 44px; min-height: 44px; margin-left: 4px; border-radius: 4px; border: 0; background: #183883; color: #fff; }
.nti-content .nti-services-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-block: 30px; }
.nti-content .nti-card { display: flex; justify-content: center; align-items: center; min-height: 120px; border: 1px solid var(--nti-line); border-radius: 8px; padding: 20px; background: #fff; }
.nti-content .nti-card img { max-height: 90px; width: auto; object-fit: contain; }
.nti-content :where(.gform_wrapper, .wpforms-container, .wpdt-c, .wpDataTablesWrapper, .dataTables_wrapper, .sp-tab__lay-default, .sp-tab__lay-horizontal) { max-width: 100%; min-width: 0; }
.nti-content .gform_wrapper .gfield, .nti-content .gform_wrapper .ginput_container { min-width: 0; }
.nti-content .gform_wrapper :where(.gform_validation_errors, .validation_error, .validation_message), .nti-content .wpforms-error { color: #a32336; }
.nti-content .gform_wrapper :where(.gform_validation_errors, .validation_error) { border-color: #a32336; border-radius: 6px; }
.nti-content .gform_wrapper .gform_fields { row-gap: 24px; }
.nti-content .gform_wrapper .ginput_container :where(input, select, textarea) { max-width: 100%; }
.nti-content .wpforms-container button[type="submit"], .nti-content .gform_wrapper input[type="submit"] { background: #183883; color: #fff; min-height: 44px; border-radius: 5px; }
.nti-content .wpDataTablesWrapper table { margin-block: 0; }
.nti-content .wpdt-c .dataTables_wrapper { overflow-x: auto; }
.nti-content :where(.dataTables_filter input, .dataTables_length select) { min-height: 36px; }
.nti-content .sp-tab__nav { flex-wrap: wrap; }
.nti-content .sp-tab__nav-link { min-height: 44px; }
.nti-content :where(.gallery, .wp-block-gallery) { max-width: 100%; }
.nti-content .gallery { display: flex; flex-wrap: wrap; gap: 12px; }
.nti-content .gallery-item { margin: 0; flex: 1 1 160px; }
.nti-content :where(table[style*="height"], tr[style*="height"], td[style*="height"]) { height: auto !important; }
.nti-content :where(p[style*="text-align: justify"], .CDt4Ke, .zfr3Q) { text-align: start !important; }
/* Plugin styles use generated IDs; override presentation only within theme sidebars. */
.nti-sidebar .mega-menu-wrap { width: 100%; background: transparent !important; font-family: var(--nti-font) !important; }
.nti-sidebar .mega-menu-wrap > .mega-menu { background: var(--nti-background) !important; padding: 0 !important; }
.nti-sidebar .mega-menu-wrap > .mega-menu > .mega-menu-item,
.nti-sidebar .widget_nav_menu .menu > li { margin: 0 0 4px !important; }
.nti-sidebar .mega-menu-wrap .mega-menu-link,
.nti-sidebar .widget_nav_menu .menu a {
  box-sizing: border-box; width: 100%; height: auto !important; min-height: 44px !important;
  padding: 11px 12px !important; border: 0 !important; border-inline-start: 3px solid transparent !important;
  border-radius: 7px !important; color: var(--nti-ink) !important; background: transparent !important;
  font-family: var(--nti-font) !important; font-size: .875rem !important; font-weight: 500 !important;
  line-height: 1.5 !important; white-space: normal !important; overflow-wrap: anywhere;
  text-decoration: none !important; box-shadow: none;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}
.nti-sidebar .mega-menu-wrap .mega-menu-link:hover,
.nti-sidebar .mega-menu-wrap .mega-toggle-on > .mega-menu-link,
.nti-sidebar .widget_nav_menu .menu a:hover { color: var(--nti-primary) !important; background: var(--nti-soft) !important; }
.nti-sidebar .mega-menu-wrap :is(.mega-current-menu-item, .mega-current-menu-ancestor, .mega-current-page-ancestor) > .mega-menu-link,
.nti-sidebar .mega-menu-wrap .mega-menu-link[aria-current="page"],
.nti-sidebar .widget_nav_menu :is(.current-menu-item, .current-menu-ancestor) > a {
  color: var(--nti-primary) !important; background: var(--nti-soft) !important;
  border-inline-start-color: var(--nti-primary) !important; font-weight: 700 !important;
}
.nti-sidebar .mega-menu-wrap .mega-menu-link:focus-visible,
.nti-sidebar .widget_nav_menu .menu a:focus-visible {
  outline: 3px solid var(--nti-focus) !important; outline-offset: 2px !important;
  color: var(--nti-primary) !important; background: var(--nti-soft) !important;
}
.nti-sidebar .mega-menu-wrap .mega-sub-menu { background: var(--nti-surface) !important; border: 1px solid var(--nti-line) !important; border-radius: 8px !important; }
.nti-sidebar .mega-menu-wrap .mega-menu-toggle { min-height: 44px; color: var(--nti-primary) !important; background: var(--nti-soft) !important; border-radius: 7px !important; }
.nti-sidebar .mega-menu-wrap .mega-toggle-animated { min-height: 44px; min-width: 44px; }
.nti-sidebar .mega-menu-wrap .mega-toggle-animated-box { transform: scale(.65); }
.nti-sidebar .mega-menu-wrap .mega-toggle-label { color: var(--nti-primary) !important; }
.nti-sidebar .mega-menu-wrap .mega-toggle-animated-inner,
.nti-sidebar .mega-menu-wrap .mega-toggle-animated-inner::before,
.nti-sidebar .mega-menu-wrap .mega-toggle-animated-inner::after { background: var(--nti-primary) !important; }
.nti-sidebar .widget_nav_menu .sub-menu { padding-left: 14px; }
/* Keep links available when the plugin's script cannot run, including mobile drawers. */
.nti-sidebar .mega-menu-wrap > .mega-menu.mega-no-js,
.nti-sidebar .mega-menu-wrap .mega-no-js .mega-sub-menu {
  display: block !important; position: static !important; transform: none !important;
  width: 100% !important; max-width: 100% !important; height: auto !important;
  visibility: visible !important; opacity: 1 !important;
}
.nti-sidebar .mega-menu-wrap:has(> .mega-no-js) > .mega-menu-toggle { display: none !important; }
.nti-high-contrast .nti-sidebar .widget-title { color: var(--nti-primary); }
.nti-high-contrast .nti-sidebar .mega-menu-link,
.nti-high-contrast .nti-sidebar .widget_nav_menu .menu a { color: var(--nti-primary) !important; }
@media (prefers-reduced-motion: reduce) {
  .nti-sidebar .mega-menu-wrap .mega-menu-link,
  .nti-sidebar .widget_nav_menu .menu a { transition: none !important; }
}
.nti-site #pojo-a11y-toolbar { z-index: 9999; }
.nti-site .nti-content [id] { scroll-margin-top: 120px; }
@media (min-width: 960px) { .nti-content .nti-services-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 639px) {
  .nti-content .nti-services-grid { grid-template-columns: minmax(0, 1fr); }
  .nti-content :where(p[style*="padding-left"], div[style*="padding-left"]) { padding-left: 0 !important; }
  .nti-content .gform_wrapper :where(.ginput_complex, .gform-grid-row) { flex-wrap: wrap; }
}
.nti-help-panel .nti-header-widgets .wp-block-search__inside-wrapper { display: flex; align-items: stretch; }
.nti-help-panel .nti-header-widgets .wp-block-search__input { border: 0; border-radius: 0; padding: 10px; flex: 1 1 auto; width: 100%; }
.nti-help-panel .nti-header-widgets .wp-block-search__button { display: flex; align-items: center; justify-content: center; flex: 0 0 44px; border: 0; border-radius: 4px; padding: 8px; background: #183883; color: #fff; }
.nti-help-panel .nti-header-widgets .wp-block-search__button svg { fill: currentColor; width: 24px; height: 24px; }
