/* =========================================================
   NURIA GLOBAL — SOLUTIONS
   /assets/css/pages/solutions.css
   ========================================================= */


/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

.ng-solutions-hero{
  position:relative;
  min-height:680px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#0b1628;
  color:#fff;
}

.ng-solutions-hero .ng-page-hero-media{
  position:absolute;
  inset:0;
  z-index:0;
}

.ng-solutions-hero .ng-page-hero-media::after{
  content:"";
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      90deg,
      rgba(7,17,31,.96) 0%,
      rgba(7,17,31,.88) 34%,
      rgba(7,17,31,.52) 58%,
      rgba(7,17,31,.14) 100%
    );
}

.ng-solutions-hero .ng-page-hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}

.ng-solutions-hero .ng-page-hero-container{
  position:relative;
  z-index:2;
}

.ng-solutions-hero .ng-page-hero-content{
  max-width:760px;
}

.ng-solutions-hero .ng-page-kicker{
  color:rgba(255,255,255,.72);
  margin-bottom:20px;
}

.ng-solutions-hero .ng-page-title{
  max-width:760px;
  margin:0;

  color:#fff;
  font-size:clamp(2.7rem, 5vw, 4.7rem);
  font-weight:300;
  line-height:1.06;
  letter-spacing:-.035em;
}

.ng-solutions-hero .ng-page-subtitle{
  max-width:680px;
  margin-top:26px;

  color:rgba(255,255,255,.78);
  font-size:1.08rem;
  line-height:1.75;
}


/* ---------------------------------------------------------
   Overview
   --------------------------------------------------------- */

.ng-solutions-overview{
  padding:110px 0;
  background:#fff;
}

.ng-solutions-overview .ng-page-kicker{
  color:var(--ng-red);
}

.ng-solutions-overview h2{
  max-width:520px;
  margin:0;

  color:#111827;
  font-size:clamp(2rem, 3.2vw, 3.15rem);
  line-height:1.15;
  letter-spacing:-.025em;
}

.ng-solutions-overview .lead{
  max-width:650px;

  color:#4b5563 !important;
  font-size:1.25rem;
  line-height:1.65;
}

.ng-solutions-overview p:not(.lead){
  max-width:650px;

  color:#6b7280 !important;
  font-size:1rem;
  line-height:1.75;
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width:991.98px){

  .ng-solutions-hero{
    min-height:600px;
  }

  .ng-solutions-hero .ng-page-hero-media::after{
    background:
      linear-gradient(
        90deg,
        rgba(7,17,31,.94) 0%,
        rgba(7,17,31,.78) 65%,
        rgba(7,17,31,.48) 100%
      );
  }

  .ng-solutions-overview{
    padding:85px 0;
  }

}


@media (max-width:767.98px){

  .ng-solutions-hero{
    min-height:620px;
    align-items:flex-end;
  }

  .ng-solutions-hero .ng-page-hero-container{
    padding-top:100px;
    padding-bottom:70px;
  }

  .ng-solutions-hero .ng-page-hero-media img{
    object-position:center center;
  }

  .ng-solutions-hero .ng-page-hero-media::after{
    background:
      linear-gradient(
        180deg,
        rgba(7,17,31,.30) 0%,
        rgba(7,17,31,.65) 35%,
        rgba(7,17,31,.96) 100%
      );
  }

  .ng-solutions-hero .ng-page-title{
    font-size:clamp(2.35rem, 11vw, 3.4rem);
  }

  .ng-solutions-hero .ng-page-subtitle{
    font-size:1rem;
    line-height:1.65;
  }

  .ng-solutions-overview{
    padding:70px 0;
  }

}

/* ---------------------------------------------------------
   Solutions — Areas
   --------------------------------------------------------- */

.ng-solutions-areas{
  padding:110px 0;
}

.ng-solutions-kicker{
  margin-bottom:18px;
  color:var(--ng-red) !important;
}

.ng-solutions-heading{
  max-width:560px;
  margin:0;

  color:#111827;

  font-size:clamp(2rem, 3vw, 3rem);
  font-weight:300;
  line-height:1.15;
  letter-spacing:-.02em;
}

.ng-solutions-areas-intro{
  max-width:520px;

  color:#5f6670;
  font-size:1.05rem;
  line-height:1.75;
}


/* Solution Card */

.ng-solution-card{
  position:relative;

  padding:42px 40px;

  border:1px solid rgba(15,27,45,.08);
  border-radius:18px;

  background:#fff;

  box-shadow:0 14px 38px rgba(15,27,45,.04);
}

.ng-solution-card::before{
  content:"";

  position:absolute;
  top:0;
  left:40px;

  width:38px;
  height:2px;

  background:var(--ng-red);
}

.ng-solution-index{
  margin-bottom:32px;

  color:var(--ng-red);

  font-size:.72rem;
  font-weight:600;
  letter-spacing:.14em;
}

.ng-solution-card h3{
  margin-bottom:16px;

  color:#111827;

  font-size:1.3rem;
  font-weight:500;
  letter-spacing:-.01em;
}

.ng-solution-card > p{
  margin-bottom:28px;

  color:#626975;
  font-size:1rem;
  line-height:1.7;
}


/* Operational outcome */

.ng-solution-outcome{
  padding-top:20px;

  border-top:1px solid #eef2f7;

  color:#4b5563;
  font-size:.92rem;
  line-height:1.6;
}

.ng-solution-outcome span{
  display:block;

  margin-bottom:7px;

  color:var(--ng-red);

  font-size:.67rem;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}

/* ---------------------------------------------------------
   Solutions — CTA
   --------------------------------------------------------- */

.ng-solutions-cta{
  position:relative;
  overflow:hidden;
  padding:110px 0;

  background:
    linear-gradient(
      135deg,
      #0b1628 0%,
      var(--ng-navy) 55%,
      #111827 100%
    );
}

.ng-solutions-cta::before{
  content:"";
  position:absolute;

  width:420px;
  height:420px;

  right:-170px;
  bottom:-220px;

  border:1px solid rgba(255,255,255,.06);
  border-radius:50%;
}

.ng-solutions-cta .ng-page-kicker{
  margin-bottom:18px;
  color:rgba(255,255,255,.58);
}

.ng-solutions-cta-title{
  max-width:780px;
  margin:0 auto 24px;

  color:#fff;

  font-size:clamp(2rem, 3.2vw, 3.2rem);
  font-weight:300;
  line-height:1.15;
  letter-spacing:-.02em;
}

.ng-solutions-cta-text{
  max-width:680px;
  margin-bottom:30px;

  color:rgba(255,255,255,.68);

  font-size:1.05rem;
  line-height:1.7;
}

@media (max-width:991.98px){

  .ng-solutions-cta{
    padding:80px 0;
  }

}

@media (max-width:767.98px){

  .ng-solutions-cta{
    padding:64px 0;
  }

}