body.ndc-mmlc-marketing-page {
  background: var(--ndc-mmlc-bg, #ffffff);
}

body.ndc-mmlc-marketing-page .entry-content,
body.ndc-mmlc-marketing-page .site-content,
body.ndc-mmlc-marketing-page #primary,
body.ndc-mmlc-marketing-page main {
  box-sizing: border-box;
}

/* Layout modes
   Preserve = do not force the page builder/theme width.
   Contained = plugin controls content width.
   Full width = remove common theme/container max-width limits on marketing pages. */
body.ndc-mmlc-layout-contained #content,
body.ndc-mmlc-layout-contained .site-content,
body.ndc-mmlc-layout-contained #primary,
body.ndc-mmlc-layout-contained main,
body.ndc-mmlc-layout-contained article,
body.ndc-mmlc-layout-contained .entry-content,
body.ndc-mmlc-layout-contained .bb-grid,
body.ndc-mmlc-layout-contained .container,
body.ndc-mmlc-layout-contained .content-wrap {
  max-width: var(--ndc-mmlc-max, 1240px);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--ndc-mmlc-pad, 24px);
  padding-right: var(--ndc-mmlc-pad, 24px);
}

body.ndc-mmlc-layout-full-width #page,
body.ndc-mmlc-layout-full-width .site,
body.ndc-mmlc-layout-full-width #content,
body.ndc-mmlc-layout-full-width .site-content,
body.ndc-mmlc-layout-full-width .content-area,
body.ndc-mmlc-layout-full-width #primary,
body.ndc-mmlc-layout-full-width main,
body.ndc-mmlc-layout-full-width article,
body.ndc-mmlc-layout-full-width .entry-content,
body.ndc-mmlc-layout-full-width .bb-grid,
body.ndc-mmlc-layout-full-width .container,
body.ndc-mmlc-layout-full-width .content-wrap,
body.ndc-mmlc-layout-full-width .elementor-container,
body.ndc-mmlc-layout-full-width .elementor-section.elementor-section-boxed > .elementor-container {
  width: 100% !important;
  max-width: none !important;
}

body.ndc-mmlc-layout-full-width #content,
body.ndc-mmlc-layout-full-width .site-content,
body.ndc-mmlc-layout-full-width #primary,
body.ndc-mmlc-layout-full-width main,
body.ndc-mmlc-layout-full-width article,
body.ndc-mmlc-layout-full-width .entry-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.ndc-mmlc-header {
  width: 100%;
  background: #fff;
  border-bottom: 1px solid rgba(0,0,0,.08);
  position: relative;
  z-index: 9999;
}

body.ndc-mmlc-sticky-header .ndc-mmlc-header {
  position: sticky;
  top: 0;
}

.ndc-mmlc-header__inner,
.ndc-mmlc-footer__inner {
  max-width: var(--ndc-mmlc-max, 1240px);
  margin: 0 auto;
  padding: 16px var(--ndc-mmlc-pad, 24px);
  display: flex;
  align-items: center;
  gap: 24px;
}

.ndc-mmlc-brand { flex: 0 0 auto; }
.ndc-mmlc-brand__link { display: inline-flex; align-items: center; text-decoration: none; }
.ndc-mmlc-brand__logo,
.ndc-mmlc-brand img.custom-logo { max-height: 52px; width: auto; }
.ndc-mmlc-brand__text { font-size: 1.125rem; font-weight: 700; color: #143058; }

.ndc-mmlc-nav { flex: 1 1 auto; }

/* Header alignment controls. */
.ndc-mmlc-header--layout-center .ndc-mmlc-header__inner {
  justify-content: center;
  text-align: center;
}
.ndc-mmlc-header--layout-center .ndc-mmlc-brand,
.ndc-mmlc-header--layout-center .ndc-mmlc-nav,
.ndc-mmlc-header--layout-center .ndc-mmlc-actions {
  flex: 0 1 auto;
}
.ndc-mmlc-header--layout-center .ndc-mmlc-menu {
  justify-content: center;
}
.ndc-mmlc-header--layout-split .ndc-mmlc-brand {
  flex: 0 0 auto;
}
.ndc-mmlc-header--layout-split .ndc-mmlc-nav {
  flex: 1 1 auto;
}
.ndc-mmlc-header--layout-split .ndc-mmlc-actions {
  flex: 0 0 auto;
}
.ndc-mmlc-header--menu-center .ndc-mmlc-menu {
  justify-content: center;
}
.ndc-mmlc-header--menu-right .ndc-mmlc-menu {
  justify-content: flex-end;
}
.ndc-mmlc-header--menu-left .ndc-mmlc-menu {
  justify-content: flex-start;
}

.ndc-mmlc-menu,
.ndc-mmlc-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ndc-mmlc-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
}
.ndc-mmlc-menu li {
  margin: 0;
  position: relative;
}
.ndc-mmlc-menu a {
  display: block;
  text-decoration: none;
  color: #143058;
  font-weight: 600;
  padding: 8px 0;
}

/* Dropdown menu support for WordPress nested menus. */
.ndc-mmlc-menu .sub-menu,
.ndc-mmlc-menu .children {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 14px 34px rgba(15, 23, 42, .12);
  border-radius: 12px;
  padding: 8px;
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  pointer-events: none;
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}
.ndc-mmlc-menu .sub-menu .sub-menu,
.ndc-mmlc-menu .children .children {
  top: -8px;
  left: calc(100% + 8px);
}
.ndc-mmlc-menu li:hover > .sub-menu,
.ndc-mmlc-menu li:focus-within > .sub-menu,
.ndc-mmlc-menu li:hover > .children,
.ndc-mmlc-menu li:focus-within > .children {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.ndc-mmlc-menu .sub-menu a,
.ndc-mmlc-menu .children a {
  padding: 10px 12px;
  border-radius: 8px;
  white-space: nowrap;
}
.ndc-mmlc-menu .sub-menu a:hover,
.ndc-mmlc-menu .sub-menu a:focus,
.ndc-mmlc-menu .children a:hover,
.ndc-mmlc-menu .children a:focus {
  background: rgba(20,48,88,.08);
  outline: none;
}
.ndc-mmlc-menu .menu-item-has-children > a::after,
.ndc-mmlc-menu .page_item_has_children > a::after {
  content: " ▾";
  font-size: .78em;
}
.ndc-mmlc-menu .sub-menu .menu-item-has-children > a::after,
.ndc-mmlc-menu .children .page_item_has_children > a::after {
  content: " ›";
  float: right;
}

.ndc-mmlc-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}
.ndc-mmlc-cta__button,
.ndc-mmlc-auth-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 999px;
  padding: 10px 16px;
  font-weight: 700;
  white-space: nowrap;
}
.ndc-mmlc-cta__button {
  background: #143058;
  color: #fff;
}
.ndc-mmlc-auth-button {
  background: rgba(20,48,88,.08);
  color: #143058;
  border: 1px solid rgba(20,48,88,.14);
}
.ndc-mmlc-auth-button:hover,
.ndc-mmlc-auth-button:focus {
  background: rgba(20,48,88,.13);
}

.ndc-mmlc-footer {
  margin-top: 40px;
  border-top: 1px solid rgba(0,0,0,.08);
  background: #fff;
}

body.ndc-mmlc-marketing-page .ndc-mmlc-footer__inner {
  color: #425466;
}
.ndc-mmlc-footer--align-left .ndc-mmlc-footer__inner { justify-content: flex-start; text-align: left; }
.ndc-mmlc-footer--align-center .ndc-mmlc-footer__inner { justify-content: center; text-align: center; }
.ndc-mmlc-footer--align-right .ndc-mmlc-footer__inner { justify-content: flex-end; text-align: right; }

body.ndc-mmlc-hide-buddyboss-chrome .bb-title,
body.ndc-mmlc-hide-buddyboss-chrome .entry-header,
body.ndc-mmlc-hide-buddyboss-chrome .page-title,
body.ndc-mmlc-hide-buddyboss-chrome .bp-page-title,
body.ndc-mmlc-hide-buddyboss-chrome .bb-breadcrumb-wrap,
body.ndc-mmlc-hide-buddyboss-chrome .breadcrumbs,
body.ndc-mmlc-hide-buddyboss-chrome .breadcrumb,
body.ndc-mmlc-hide-buddyboss-chrome .yoast-breadcrumb,
body.ndc-mmlc-hide-buddyboss-chrome .page-breadcrumb,
body.ndc-mmlc-hide-buddyboss-chrome .subnav-filters,
body.ndc-mmlc-hide-buddyboss-chrome .bp-profile-search,
body.ndc-mmlc-hide-buddyboss-chrome .item-header-wrap,
body.ndc-mmlc-hide-buddyboss-chrome .widget-area,
body.ndc-mmlc-hide-buddyboss-chrome .buddypanel,
body.ndc-mmlc-hide-buddyboss-chrome .bb-mobile-panel-wrapper,
body.ndc-mmlc-hide-buddyboss-chrome .bb-cover-list,
body.ndc-mmlc-hide-buddyboss-chrome .single-headers,
body.ndc-mmlc-hide-buddyboss-chrome .bp-member-type-list,
body.ndc-mmlc-hide-buddyboss-chrome .bp-group-type-list {
  display: none !important;
}

body.ndc-mmlc-hide-theme-title-area .page-header,
body.ndc-mmlc-hide-theme-title-area .archive-header,
body.ndc-mmlc-hide-theme-title-area .entry-hero,
body.ndc-mmlc-hide-theme-title-area .site-subheader,
body.ndc-mmlc-hide-theme-title-area .page-title-wrap,
body.ndc-mmlc-hide-theme-title-area .bb-page-title-wrap,
body.ndc-mmlc-hide-theme-title-area .page-top-header {
  display: none !important;
}

body.ndc-mmlc-hide-theme-header-footer header.site-header,
body.ndc-mmlc-hide-theme-header-footer .site-header-container,
body.ndc-mmlc-hide-theme-header-footer footer.site-footer,
body.ndc-mmlc-hide-theme-header-footer #masthead,
body.ndc-mmlc-hide-theme-header-footer #colophon,
body.ndc-mmlc-hide-theme-header-footer #site-header,
body.ndc-mmlc-hide-theme-header-footer .bb-mobile-header-wrapper,
body.ndc-mmlc-hide-theme-header-footer .bb-mobile-header,
body.ndc-mmlc-hide-theme-header-footer .header-mobile,
body.ndc-mmlc-hide-theme-header-footer .mobile-header-wrap,
body.ndc-mmlc-hide-theme-header-footer .buddypanel-header,
body.ndc-mmlc-hide-theme-header-footer .bb-header,
body.ndc-mmlc-hide-theme-header-footer .bb-sticky-header,
body.ndc-mmlc-hide-theme-header-footer .bb-mobile-panel-header {
  display: none !important;
}

@media (max-width: 900px) {
  .ndc-mmlc-header__inner {
    flex-wrap: wrap;
    gap: 12px;
  }
  .ndc-mmlc-nav {
    width: 100%;
    order: 3;
  }
  .ndc-mmlc-actions {
    margin-left: auto;
  }
  .ndc-mmlc-header--layout-center .ndc-mmlc-actions {
    margin-left: 0;
  }
  .ndc-mmlc-menu {
    gap: 12px;
    align-items: flex-start;
  }
  .ndc-mmlc-menu .sub-menu,
  .ndc-mmlc-menu .children,
  .ndc-mmlc-menu .sub-menu .sub-menu,
  .ndc-mmlc-menu .children .children {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
    box-shadow: none;
    border: 0;
    border-left: 2px solid rgba(20,48,88,.12);
    border-radius: 0;
    min-width: 0;
    margin: 0 0 0 12px;
    padding: 0 0 0 10px;
  }
  .ndc-mmlc-menu .sub-menu a,
  .ndc-mmlc-menu .children a {
    white-space: normal;
  }
}

body.ndc-mmlc-homepage-hardening #content,
body.ndc-mmlc-homepage-hardening .site-content,
body.ndc-mmlc-homepage-hardening .content-area,
body.ndc-mmlc-homepage-hardening #primary,
body.ndc-mmlc-homepage-hardening main,
body.ndc-mmlc-homepage-hardening article,
body.ndc-mmlc-homepage-hardening .entry-content,
body.ndc-mmlc-homepage-hardening .elementor-section-wrap,
body.ndc-mmlc-homepage-hardening .elementor-widget-wrap {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.ndc-mmlc-homepage-hardening .home .entry-header:empty,
body.ndc-mmlc-homepage-hardening .entry-header:empty,
body.ndc-mmlc-homepage-hardening .page-header:empty,
body.ndc-mmlc-homepage-hardening .bb-title:empty,
body.ndc-mmlc-homepage-hardening .site-subheader:empty {
  display: none !important;
}

body.ndc-mmlc-homepage-hardening .site-content > .container:first-child,
body.ndc-mmlc-homepage-hardening .content-wrap > .container:first-child,
body.ndc-mmlc-homepage-hardening main > .container:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.ndc-mmlc-home-context.ndc-mmlc-hide-buddyboss-chrome .entry-header,
body.ndc-mmlc-home-context.ndc-mmlc-hide-buddyboss-chrome .page .entry-header,
body.ndc-mmlc-home-context.ndc-mmlc-hide-buddyboss-chrome .single-page .entry-header,
body.ndc-mmlc-home-context.ndc-mmlc-hide-buddyboss-chrome .bb-page-title,
body.ndc-mmlc-home-context.ndc-mmlc-hide-buddyboss-chrome .page-title-wrap,
body.ndc-mmlc-home-context.ndc-mmlc-hide-buddyboss-chrome .page-top-header,
body.ndc-mmlc-home-context.ndc-mmlc-hide-buddyboss-chrome .elementor-location-header {
  display: none !important;
}

body.ndc-mmlc-homepage-hardening .ndc-mmlc-header + #page,
body.ndc-mmlc-homepage-hardening .ndc-mmlc-header + .site,
body.ndc-mmlc-homepage-hardening .ndc-mmlc-header + .site-content {
  margin-top: 0 !important;
}

/* v1.0.3: BuddyBoss/BuddyPanel offset reset for marketing pages.
   Fixes cases where the theme header is hidden but the main content wrapper keeps
   a left/right offset reserved for the BuddyBoss panel/sidebar. */
body.ndc-mmlc-marketing-page #page,
body.ndc-mmlc-marketing-page .site,
body.ndc-mmlc-marketing-page .site-content,
body.ndc-mmlc-marketing-page .content-area,
body.ndc-mmlc-marketing-page #primary,
body.ndc-mmlc-marketing-page main,
body.ndc-mmlc-marketing-page article,
body.ndc-mmlc-marketing-page .entry-content,
body.ndc-mmlc-marketing-page .bb-grid,
body.ndc-mmlc-marketing-page .bb-grid-cell,
body.ndc-mmlc-marketing-page .buddypress-wrap,
body.ndc-mmlc-marketing-page .buddypress {
  left: auto !important;
  right: auto !important;
  transform: none !important;
}

body.ndc-mmlc-marketing-page #page,
body.ndc-mmlc-marketing-page .site,
body.ndc-mmlc-marketing-page .site-content,
body.ndc-mmlc-marketing-page .content-area,
body.ndc-mmlc-marketing-page #primary,
body.ndc-mmlc-marketing-page main {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.ndc-mmlc-marketing-page .site-content,
body.ndc-mmlc-marketing-page .content-area,
body.ndc-mmlc-marketing-page #primary,
body.ndc-mmlc-marketing-page main,
body.ndc-mmlc-marketing-page article,
body.ndc-mmlc-marketing-page .entry-content {
  width: 100% !important;
}

/* Keep plugin header out of any BuddyBoss/sidebar offset logic. */
body.ndc-mmlc-marketing-page .ndc-mmlc-header,
body.ndc-mmlc-marketing-page .ndc-mmlc-footer {
  margin-left: 0 !important;
  margin-right: 0 !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important;
}

/* When the theme header/footer is hidden, also remove common BuddyBoss panel spacers. */
body.ndc-mmlc-hide-theme-header-footer .buddypanel-spacer,
body.ndc-mmlc-hide-theme-header-footer .bb-buddypanel-spacer,
body.ndc-mmlc-hide-theme-header-footer .bb-mobile-panel,
body.ndc-mmlc-hide-theme-header-footer .bb-mobile-panel-inner,
body.ndc-mmlc-hide-theme-header-footer .bb-left-panel,
body.ndc-mmlc-hide-theme-header-footer .bb-left-panel-wrapper {
  display: none !important;
}

/* Safer dropdown stacking over full-width page sections. */
body.ndc-mmlc-marketing-page .ndc-mmlc-menu .sub-menu,
body.ndc-mmlc-marketing-page .ndc-mmlc-menu .children {
  z-index: 100000;
}
