/* Standalone base for the shared L.H Group header + footer on pages that do not
   load site.css (CRM landing, 360, demo hub). Everything is scoped to
   body.nx-product so each product page keeps its own content styles. */
.nx-product {
  --font-display: 'LH Sans', 'Noto Sans Hebrew', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-body: var(--font-display);
  --font-latin: var(--font-display);
  font-family: var(--font-display) !important;
}
.nx-product :where(h1, h2, h3, h4, h5, h6, p, a, li, span, b, strong, small, em, button, input, select, textarea, label, summary, td, th, dt, dd) { font-family: inherit; }
.nx-product .site-header, .nx-product .site-header *, .nx-product .site-footer, .nx-product .site-footer *, .nx-product .nx-intro, .nx-product .nx-intro * { box-sizing: border-box; }
.nx-product .site-header ul, .nx-product .site-footer ul { list-style: none; margin: 0; padding: 0; }
.nx-product .site-header a, .nx-product .site-footer a { text-decoration: none; }
.nx-product .site-header { position: fixed; inset: 0 0 auto 0; z-index: 60; }
.nx-product .site-header .brand { display: inline-flex; align-items: center; gap: 0; min-height: 43px; font-size: 0; }
.nx-product .site-header .brand img { display: block; width: 84px; height: auto; }
.nx-product .site-header .nav { display: flex; align-items: center; gap: 10px; position: static; max-width: none; margin: 0; padding: 0; border: 0; background: none; }
.nx-product .site-header .nav__list { display: flex; align-items: center; margin: 0; }
.nx-product .site-header .nav__link { color: #0b0f1c; }
.nx-product .nav__toggle { display: none; width: 42px; height: 42px; align-items: center; justify-content: center; border: 1px solid #dce5ef; border-radius: 999px; background: #fff; cursor: pointer; padding: 0; }
.nx-product .nav__toggle span, .nx-product .nav__toggle span::before, .nx-product .nav__toggle span::after { content: ""; display: block; width: 18px; height: 1.5px; background: #0b0f1c; position: relative; transition: transform .24s ease, background .18s ease; }
.nx-product .nav__toggle span::before { position: absolute; top: -6px; left: 0; }
.nx-product .nav__toggle span::after { position: absolute; top: 6px; left: 0; }
.nx-product .site-header[data-open="true"] .nav__toggle span { background: transparent; }
.nx-product .site-header[data-open="true"] .nav__toggle span::before { transform: translateY(6px) rotate(45deg); }
.nx-product .site-header[data-open="true"] .nav__toggle span::after { transform: translateY(-6px) rotate(-45deg); }
@media (max-width: 860px) {
  .nx-product .site-header .nav__list { display: none !important; }
  .nx-product .nav__toggle { display: inline-flex; }
  html.nav-open, html.nav-open body.nx-product { overflow: hidden; }
}

/* Footer: the light brand panel used on every L.H Group page */
.nx-product .site-footer { font-family: var(--font-display); color: #69758a; background: linear-gradient(180deg, #f6f9fc, #fff); border-top: 1px solid #dce5ef; padding: clamp(42px, 6vw, 74px) 0 28px; margin: 0; display: block; font-size: 15px; line-height: 1.6; }
.nx-product .site-footer .container { position: relative; max-width: none; padding: 0; width: min(1280px, 100% - 2 * clamp(16px, 4vw, 48px)); margin-inline: auto; }
.nx-product .site-footer .container::before { content: ""; display: block; height: 4px; margin-block-end: 32px; border-radius: 99px; background: linear-gradient(90deg, #3f5efb, #32c8bd 52%, #ff6b57); }
.nx-product .site-footer__grid { display: grid; grid-template-columns: minmax(250px, 1.35fr) repeat(3, minmax(130px, .75fr)); gap: clamp(28px, 5vw, 70px); margin-block-end: 38px; padding: clamp(30px, 5vw, 56px); border: 1px solid #dce5ef; border-radius: 32px; background: rgba(255,255,255,.88); box-shadow: 0 24px 64px -52px rgba(28,47,92,.45); }
.nx-product .site-footer__brand img { display: block; width: min(158px, 100%); height: auto; }
.nx-product .site-footer__tag { margin-block-start: 12px; font-size: 13px; font-weight: 600; color: #087f76; }
.nx-product .site-footer__about { margin: 20px 0 0; max-width: 40ch; color: #69758a; font-size: 14px; line-height: 1.75; }
.nx-product .site-footer__col h4 { margin: 0 0 20px; padding-block-end: 12px; border-block-end: 1px solid #dce5ef; color: #11182b; font-size: 14px; font-weight: 800; }
.nx-product .site-footer__col ul { display: grid; gap: 12px; }
.nx-product .site-footer__col a { display: inline-block; font-size: 15px; color: #2f3a50; transition: color .2s, transform .2s; }
.nx-product .site-footer__col a:hover { color: #3f5efb; transform: translateX(-3px); }
.nx-product .site-footer__bottom { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-block-start: 28px; border-block-start: 1px solid #dce5ef; font-size: 13px; color: #69758a; }
.nx-product .site-footer__bottom a { color: inherit; }
@media (max-width: 860px) { .nx-product .site-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .nx-product .site-footer__grid { grid-template-columns: 1fr; padding: 26px; } }

/* Page sub-navigation (the page's own anchors + CTA), a slim pill under the main header */
.nx-product .nx-subnav { position: relative; z-index: 5; display: flex; align-items: center; gap: 6px; width: min(1280px, 100% - 24px); margin: 92px auto 0; padding: 6px; border-radius: 999px; background: #f4f7fb; border: 1px solid #e3e9f2; overflow-x: auto; scrollbar-width: none; }
.nx-product .nx-subnav::-webkit-scrollbar { display: none; }
.nx-product .nx-subnav__name { flex: none; padding: 0 14px; font-weight: 900; font-size: 15px; color: #0b0f1c; white-space: nowrap; }
.nx-product .nx-subnav__name i { font-style: normal; background: linear-gradient(100deg, #32c8bd, #3f5efb); -webkit-background-clip: text; background-clip: text; color: transparent; }
.nx-product .nx-subnav a:not(.nx-subnav__cta) { flex: none; padding: 9px 14px; border-radius: 999px; font-size: 14px; font-weight: 600; color: #33405a; text-decoration: none; white-space: nowrap; transition: background .2s, color .2s; }
.nx-product .nx-subnav a:not(.nx-subnav__cta):hover { background: #fff; color: #0b0f1c; }
.nx-product .nx-subnav__cta { flex: none; margin-inline-start: auto; display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 18px; border-radius: 999px; font-weight: 800; font-size: 14px; color: #fff !important; text-decoration: none; background: #0b0f1c; white-space: nowrap; }
.nx-product .nx-subnav__cta:hover { background: #3f5efb; }
@media (max-width: 860px) { .nx-product .nx-subnav { margin-top: 78px; border-radius: 18px; } }

/* Demo hub: room for the fixed header, homepage-style gradient title */
.nx-demo .wrap { padding-top: 128px; }
.nx-demo .hero h1 .grad { background: linear-gradient(100deg, #32c8bd, #3f5efb 70%, #7457db); -webkit-background-clip: text; background-clip: text; }
.nx-demo .hero h1 { font-weight: 900; letter-spacing: -.035em; color: #0b0f1c; font-size: clamp(34px, 5vw, 64px); }
.nx-demo .card { border-color: #eef2f6; border-radius: 26px; box-shadow: 0 1px 2px rgba(15,23,42,.04), 0 18px 40px -22px rgba(15,23,42,.22); }
.nx-demo .gen { background: #0b0f1c; border-radius: 28px; }
@media (max-width: 860px) { .nx-demo .wrap { padding-top: 104px; } }

/* One header only: content starts below the floating header */
.nx-crm .hero { padding-top: clamp(120px, 12vw, 170px); }
.nx-360 .hero-stage { padding-top: 96px; }
