/* =============================================================
   NLIGN — Homepage Sections
   Covers: Reality · Solution · Trusted By · Impact · CTA Banner
   ============================================================= */

/* ── Shared section container pattern ───────────────────────── */
.nlign-cta-banner__container {
  max-width:     var(--nlign-max-width);
  margin-inline: auto;
  padding-left:  var(--nlign-section-padding-x);
  padding-right: var(--nlign-section-padding-x);
}
.nlign-reality__container{
  max-width:     var(--nlign-max-width);
  margin-inline: auto;
  padding-left:  var(--nlign-section-padding-x);
  padding-right: var(--nlign-section-padding-x);
} 

/* ── Shared section subhead label ────────────────────────────── */
.nlign-reality__subhead,
.nlign-solution__subhead,
.nlign-trusted__label,
.nlign-impact__subhead,
.nlign-cta-banner__subhead {
  font-family:    var(--nlign-subhead-font-family);
  font-weight:    var(--nlign-subhead-font-weight);
  font-size:      var(--nlign-subhead-font-size);
  line-height:    var(--nlign-subhead-line-height);
  letter-spacing: var(--nlign-subhead-letter-spacing);
  text-transform: uppercase;
  color:          var(--nlign-color-orange);
  margin:         0;
}
.nlign-cta-banner__subhead{
  margin-top:15px;
}

/* ── Shared section H2 ───────────────────────────────────────── */
.nlign-solution__heading{

  font-family:    var(--nlign-h1-font-family);
  font-weight:    var(--nlign-h1-font-weight);
  font-size:      var(--nlign-h1-font-size);
  line-height:    var(--nlign-h1-line-height);
  letter-spacing: var(--nlign-h1-letter-spacing);
  color:          var(--nlign-color-dust-grey);
  margin:         0;
  width: 894px !important;
  z-index: 99;
}
.nlign-reality__heading,
.nlign-impact__heading {
  font-family:    var(--nlign-h1-font-family);
  font-weight:    var(--nlign-h1-font-weight);
  font-size:      var(--nlign-h1-font-size);
  line-height:    var(--nlign-h1-line-height);
  letter-spacing: var(--nlign-h1-letter-spacing);
  color:          var(--nlign-color-dust-grey);
  margin:         0;
  width: 902px !important;
}
.nlign-reality__heading{
  margin-top:5px;
  width: 792px !important;
}
/* ── Shared divider ──────────────────────────────────────────── */
.nlign-reality__divider,
.nlign-impact__divider {
  border:     none;
  border-top: 2px solid var(--nlign-color-grey-olive);
  margin:     0;
  opacity:    1;
}

/* ── Shared body copy ────────────────────────────────────────── */
.nlign-reality__body,
.nlign-solution__body {
  font-family: var(--nlign-body-font-family);
  font-weight: 400;
  font-size:   var(--nlign-body-font-size);
  line-height: var(--nlign-body-line-height);
  color:       var(--nlign-color-dust-grey);
  margin:      0;
}


/* =============================================================
   REALITY SECTION
   ============================================================= */

.nlign-reality {
  background-color: var(--nlign-color-onyx-800);
  padding-top:      var(--nlign-section-padding-y);
  padding-bottom:   var(--nlign-section-padding-y);
}

.nlign-reality__container {
  display:        flex;
  flex-direction: column;
  gap:            50px;
}

.nlign-reality__top {
  display:         flex;
  flex-direction:  row;
  align-items:     flex-end;
  justify-content: space-between;
  gap:             140px;
}

.nlign-reality__text-group {
  display:        flex;
  flex-direction: column;
  gap:            16px;
  max-width:      792px;
  flex-shrink:    0;
}

.nlign-reality__heading--accent { color: var(--nlign-color-orange);line-height: 0;vertical-align: middle; }

/* .nlign-reality__body {
  max-width:   280px;
  margin-top:  120px;
  padding-top: 72px;
  flex-shrink: 0;
} */
 .nlign-reality__body {
  max-width: min(280px, 100%);
  margin-top: clamp(40px, 9vw, 133px);
  padding-top: clamp(24px, 5vw, 72px);
  flex-shrink: 0;
}

/* Stats block */
.nlign-reality__stats {
  display:        flex;
  flex-direction: column;
  margin-left:    auto;
  width:          calc(100% - 305px);
  max-width:      892px;
}

.nlign-reality__stat-row {
  display:         flex;
  align-items:     flex-end;
  justify-content: space-between;
  padding:         26px 0 16px 0;
  gap: 127px;
  margin-bottom: 10px;
}

.nlign-reality__stat-left {
  display:        flex;
  flex-direction: column;
  gap:            4px;
  min-width:      260px;
}

.nlign-reality__stat-label {
  font-family:    var(--nlign-subhead-font-family);
  font-weight:    var(--nlign-subhead-font-weight);
  font-size:      var(--nlign-subhead-font-size);
  line-height:    var(--nlign-subhead-line-height);
  letter-spacing: var(--nlign-subhead-letter-spacing);
  text-transform: uppercase;
  color:          var(--nlign-color-orange);
  margin:         0;
  width: 346px;
}

.nlign-reality__stat-value {
  font-family:    var(--nlign-h1-font-family);
  font-weight:    var(--nlign-h1-font-weight);
  font-size:      var(--nlign-h1-font-size);
  line-height:    var(--nlign-h1-line-height);
  letter-spacing: var(--nlign-h1-letter-spacing);
  color:          var(--nlign-color-dust-grey);
  white-space:    nowrap;
  width: 384px;
}

.nlign-reality__stat-desc {
  font-family: var(--nlign-body-font-family);
  font-weight: 400;
  font-size:   var(--nlign-body-font-size);
  line-height: var(--nlign-body-line-height);
  color:       var(--nlign-color-dust-grey);
  width:   375px;
  margin:      0;
}

/* Reality responsive */
@media (max-width: 1199.98px) {
  .nlign-reality__heading    { font-size: 72px; line-height: 76px; }
  .nlign-reality__stat-value { font-size: 64px; line-height: 68px; }

  .nlign-reality__stats      { width: 100%; max-width: 100%; margin-left: 0; }
  .nlign-reality__top{
    gap: 0;
  }
}

@media (max-width: 991.98px) {
  .nlign-reality__top  { flex-direction: column; gap: 32px; }
  .nlign-reality__body { margin-top: 0; max-width: 100%; }
  .nlign-reality__stats { width: 100%; margin-left: 0; }
}

@media (max-width: 767.98px) {
  .nlign-reality__heading    { font-size: 43px; line-height: 52px; }
  .nlign-reality__stat-value { font-size: 43px; line-height: 52px; }
  .nlign-reality__stat-row   { flex-direction: column; align-items: flex-start; gap: 8px; }
  .nlign-reality__container  { margin-left: 24px; margin-right: 24px; }
}


/* =============================================================
   SOLUTION SECTION
   Rectangle1.png occupies the right ~58%; text on the left.
   ============================================================= */

.nlign-solution {
  position:         relative;
  background-color: var(--nlign-color-onyx);
  overflow:         hidden;
  isolation:        isolate;
  padding-top:      var(--nlign-section-padding-y);
  padding-bottom:   var(--nlign-section-padding-y);
  min-height:       520px;
}

/* Background image div */
.nlign-solution__bg {
  position:            absolute;
  top:                 72px;
  left:                auto;
  right:               0;
  width:               691px;
  height:              459px;
  background-repeat:   no-repeat;
  background-size:     cover;
  background-position: center left;
  z-index:             0;
  pointer-events:      none;
  right: 120px;
}

/* Gradient fade: image blends into dark bg on the left */
.nlign-solution__bg::before {
  content:    '';
  position:   absolute;
  inset:      0;
  background: linear-gradient(
    to right,
    var(--nlign-color-onyx) 0%,
    transparent 35%
  );
}

.nlign-solution__container {
  position:       relative;
  z-index:        1;
  display:        flex;
  flex-direction: column;
  gap:            32px;
  padding-left: var(--nlign-section-padding-x);
    padding-right: var(--nlign-section-padding-x);
    max-width: var(--nlign-max-width);
    margin: 0 auto;
}

.nlign-solution__top {
  display:        flex;
  flex-direction: column;
  align-items:    flex-start;
  gap:            30px;
}

.nlign-solution__text-group {
  display:        flex;
  flex-direction: column;
  gap:            20px;
}

.nlign-solution__body { max-width: 378px; }

/* Solution responsive */
@media (max-width: 1199.98px) {
  .nlign-solution__heading  { font-size: 55px; line-height: 76px;max-width: 760px; }
  .nlign-solution__bg       { width: 48%;left: auto;right: 0; height: 52%;top: 160px; background-position: center;}
  .nlign-solution__text-group{ width: 100%;}
}

@media (max-width: 991.98px) {
  .nlign-solution__heading { font-size: 45px; line-height: 60px; max-width: 100%; }
  .nlign-solution__bg      { width: 55%; opacity: 1; left: auto;right: 0; height: 45%;top: 140px;background-position: center;}
  .nlign-solution__top     { max-width: 100%; }
}

@media (max-width: 767.98px) {
  .nlign-solution          { padding-top: 64px; padding-bottom: 64px; min-height: unset; }
  .nlign-solution__heading { font-size: 38px; line-height: 52px; max-width: 100%; }
  .nlign-solution__bg      { width: 100%; opacity: 0.35;height: 50%;background-position: center; }
  .nlign-solution__bg::before {
    background: linear-gradient(
      to bottom,
      var(--nlign-color-onyx) 0%,
      transparent 40%,
      var(--nlign-color-onyx) 100%
    );
  }
  .nlign-solution__container { margin-left: 24px; margin-right: 24px; }
  .nlign-impact{
    margin-left: 24px !important; margin-right: 24px !important;
  }
  .nlign-solution__top       { max-width: 100%; }
  .nlign-solution__heading{
    width: 100% !important;
  }
}


/* =============================================================
   TRUSTED BY SECTION
   ============================================================= */

.nlign-trusted {
  background-color: var(--nlign-color-onyx-800);
  padding-top:      24px;
  padding-bottom:   14px;
  min-height:       140px;
}

.nlign-trusted__container {
  display:         flex;
  flex-direction:  row;
  align-items:     center;
  min-height:      92px;
  padding-left: var(--nlign-section-padding-x);
  padding-right: var(--nlign-section-padding-x);
  max-width: var(--nlign-max-width);
  margin: 0 auto;
}
.nlign-trusted {
  position: relative;
}

.nlign-trusted__label {
  white-space: nowrap;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  /* transform: translateX(9px); */
}

.solution-menu{
  display: none !important;
}
.text-secondary{
  color: #ebeae6  !important;
}



.nlign-trusted__logo:hover { opacity: 1; }
@media screen and (min-width: 1441px) {
  .nlign-hero__bg{
    width: 28%;
  }
  /* .nlign-hero__container,.nlign-reality__container,.nlign-cta-banner__container
  {
    max-width: 100%;
  }
  .nlign-solution__top{
    z-index: 99;
  }
  .nlign-solution__bg{
    width: 80%;
    height: 100%;
    top: 0;
  } */
}

@media screen and (max-width: 1439px) 
{
  .nlign-reality__text-group{
    max-width: 60%;
  }
  .nlign-impact__text-group{
    width: 50%;
  }
  .nlign-impact__heading{
    width: 50% !important;
  }
  .nlign-cta-banner__text-group{
    max-width: 50% !important;
  }
}


/* Trusted responsive */
@media (max-width: 1199.98px) {
  .nlign-trusted__container {gap: 32px; }
  .nlign-trusted__logos     { gap: 32px; }
  .nlign-trusted__logo{
    width: 100px;
  }
  .nlign-reality__heading, .nlign-impact__heading{
    width: 50% !important;
  }
}
@media (max-width: 1023px) {

  .nlign-reality__text-group {
    max-width: 100%;
  }
  .nlign-trusted__logo{
    width: 20%;
  }
  .nlign-reality__heading, .nlign-impact__heading {
    width: 100% !important;
}
.nlign-cta-banner__heading,.nlign-cta-banner__text-group{
  width: 100%;
  max-width: 100% !important;
}
.nlign-cta-banner__container{
  flex-direction: column;
 
}
.nlign-cta-banner__subhead br,.nlign-impact__heading br,.nlign-reality__heading br{
  display: none;
}
.nlign-cta-banner__heading{
  font-size: 41px !important;
}
.nlign-impact__heading,.nlign-reality__heading,.nlign-hero__heading,.nlign-reality__stat-value,
.nlign-impact__stat-value{
  font-size: 51px !important;
  line-height: normal;
}
.nlign-reality__body{
  padding-top:0px;
}
.nlign-trusted__container{
  flex-direction: column;
  
}
.nlign-trusted__logos{
  gap: 0px !important;
}
}


@media (max-width: 767.98px) {
  .nlign-trusted            { min-height: unset; padding-top: 32px; padding-bottom: 32px; }
  .nlign-trusted__container { flex-direction: column; align-items: flex-start; margin-left: 24px; margin-right: 24px; gap: 24px; min-height: unset; }
  .nlign-trusted__logos {gap: 24px;padding: 20px 24px;justify-content: center;}
  .nlign-trusted__label {white-space: normal;text-align: center;width: 100%;margin-bottom: 16px;}
  .nlign-trusted__logo {max-width: 140px;max-height: 36px;}
  .nlign-cta-banner__heading{
    font-size: 31px !important;
  }
  .nlign-impact__heading,.nlign-reality__heading,.nlign-hero__heading,.nlign-reality__stat-value,
  .nlign-impact__stat-value{
    font-size: 41px !important;
    line-height: normal;
  }
  .nlign-impact__text-group{
    width: 100% !important;
  }
  .nlign-tim-hero__container{
    flex-direction: column;
  }
  body .nlign-contact__container{
    padding-left: 24px;
    padding-right: 24px;
  }
}



/* =============================================================
   IMPACT SECTION
   ============================================================= */

.nlign-impact {
  background-color: var(--nlign-color-onyx);
  padding-top:      var(--nlign-section-padding-y);
  padding-bottom:   var(--nlign-section-padding-y);
  
}

.nlign-impact__container {
  display:         flex;
  flex-direction:  row;
  align-items:     flex-start;
  justify-content: space-between;
  max-width: var(--nlign-max-width);
  margin: 0 auto;
  padding-left: var(--nlign-section-padding-x);
  padding-right: var(--nlign-section-padding-x);
  /* padding-left: var(--nlign-section-padding-x);
    padding-right: var(--nlign-section-padding-x); */
  /* gap:             48px; */
}

.nlign-impact__text-group {
  display:        flex;
  flex-direction: column;
  gap:            44px;
  max-width:      792px;
  flex-shrink:    0;
}

.nlign-impact__stats {
  display:        flex;
  flex-direction: column;
  width:          382px;
  flex-shrink:    0;

}

.nlign-impact__stat-row {
  display:         flex;
  align-items:     center;
  justify-content: space-between;
  padding:         14px 0;
  /* gap:             16px; */
}

.nlign-impact__stat-label {
  font-family:    var(--nlign-subhead-font-family);
  font-weight:    var(--nlign-subhead-font-weight);
  font-size:      var(--nlign-subhead-font-size);
  line-height:    var(--nlign-subhead-line-height);
  letter-spacing: var(--nlign-subhead-letter-spacing);
  text-transform: uppercase;
  color:          var(--nlign-color-orange);
  flex:           1;
  margin:         0;
}

.nlign-impact__stat-value {
  font-family:    var(--nlign-h1-font-family);
  font-weight:    var(--nlign-h1-font-weight);
  font-size:      var(--nlign-h1-font-size);
  line-height:    var(--nlign-h1-line-height);
  letter-spacing: var(--nlign-h1-letter-spacing);
  color:          var(--nlign-color-dust-grey);
  text-align:     right;
  white-space:    nowrap;
}

/* Impact responsive */
@media (max-width: 1199.98px) {
  .nlign-impact__heading, .nlign-impact__stat-value { font-size: 72px; line-height: 76px; }
}

@media (max-width: 991.98px) {
  .nlign-impact__container, .nlign-reality__container  { flex-direction: column; gap: 2rem; }
  .nlign-impact__text-group { max-width: 100%; }
  .nlign-impact__stats      { width: 100%; padding-top: 0; }
}

@media (max-width: 767.98px) {
  .nlign-impact__heading, .nlign-impact__stat-value { font-size: 48px; line-height: 52px; }
  .nlign-impact__container { padding-left: 0; padding-right: 0; }
}


/* =============================================================
   CTA BANNER SECTION
   ============================================================= */

.nlign-cta-banner {
  background-color: var(--nlign-color-onyx-800);
  padding-top:      var(--nlign-section-padding-y);
  padding-bottom:   var(--nlign-section-padding-y);
}

.nlign-cta-banner__container {
  display:         flex;
  align-items:     center;
  justify-content: space-between;
  min-height:      243px;
}

.nlign-cta-banner__text-group {
  display:        flex;
  flex-direction: column;
  gap:            18px;
  max-width:      792px;
}

.nlign-cta-banner__heading {
  font-family:    var(--nlign-h2-font-family);
  font-weight:    var(--nlign-h2-font-weight);
  font-size:      var(--nlign-h2-font-size);
  line-height:    var(--nlign-h2-line-height);
  letter-spacing: var(--nlign-h2-letter-spacing);
  color:          var(--nlign-color-dust-grey);
  margin:         0;
  width: 829px;
}

.nlign-cta-banner__action {
  flex-shrink: 0;
  margin-left: 48px;
}

/* CTA banner responsive */
@media (max-width: 1199.98px) {
  .nlign-cta-banner__heading   { font-size: 48px; line-height: 52px; }
  .nlign-trusted__logos { padding-right: 1.5rem;}
}

@media (max-width: 767.98px) {
  .nlign-cta-banner__container {
    flex-direction: column;
    align-items:    flex-start;
    gap:            40px;
    padding-left:   24px;
    padding-right:  24px;
    min-height:     unset;
  }
  .nlign-footer__nav, .nlign-footer__nav .menu, .nlign-footer__nav ul{
    flex-direction: column;
  }
  .nlign-cta-banner__heading { font-size: 30px; line-height: 40px; }
  .nlign-cta-banner__action  { margin-left: 0; }
  .nlign-reality__container,.nlign-solution__container,.nlign-trusted__container{
    padding-left:0;
    padding-right:0;
  }
  .nlign-reality__stat-desc,.nlign-reality__stat-value{
    width: 100% !important;
  }
}
/* =============================================================
   Trusted Logos
   ============================================================= */

.nlign-trusted__logos {
  display: grid;
  align-items: center;
  /* background-color: #060608; */
  position: relative;
  /* transform: translateX(-7px); */
  width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 20px;
}

body.privacy-policy .nlign-page-content{
  background-color: #000;
} 
body.nlign-legal-page .nlign-page-content{
  background-color: #000;
}

.nlign-page-content .wp-block-columns .wp-block-column:last-child {
    margin-bottom: 0;
}
/* =============================================================
   Logo
   ============================================================= */

.nlign-trusted__logo {
  height: auto;
  max-width: 100%;
  object-fit: contain;
  transition: opacity var(--nlign-transition);
}

.nlign-trusted__logo:hover {
  opacity: 1;
}
/* =============================================================
   Tablet
   ============================================================= */
@media (max-width: 991.98px) {
  .nlign-trusted__logos {
    gap: 24px;
    /* left: -20px; */
    padding: 20px;
    justify-content: space-between;
  }

  .nlign-trusted__logo, .nlign-trusted__logo-wrap {
    width: 100%;
    max-height: initial;
  }
}

/* =============================================================
   Mobile
   ============================================================= */
@media (max-width: 767.98px) {
  .nlign-trusted__logos {
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
    left: 0;
    padding: 18px;
    border-radius: 8px;
  }
}
/* Menu Wrapper */
.menu-container {
    width: 100%;
    margin-top: 80px;
}

/* Horizontal Menu */
.menu {
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 64px;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
}

/* Menu Item */
.menu li {
    margin: 0;
}

/* Link */
.menu li a {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    padding: 10px 0;
    white-space: nowrap;
}

/* Mobile */
@media (max-width: 768px) {
    .menu-container {
        margin-top: 40px;
        overflow-x: auto; /* horizontal scroll */
    }
    .menu {
        justify-content: flex-start;
        gap: 24px;
        flex-wrap: nowrap;   /* keep one row */
        width: max-content;
        padding: 0 20px;
    }

    .menu::-webkit-scrollbar {
        display: none;
    }

    .menu li {
        flex: 0 0 auto;
    }

    .menu li a {
        font-size: 14px;
    }
}
@media (max-width: 991.98px) {
  .nlign-solution, .nlign-cta-banner, .nlign-impact, .nlign-trusted, .nlign-solution, .nlign-reality { padding-top: 2rem; padding-bottom: 2rem; }
}