@charset "UTF-8";
/*!
Theme Name: NIT Services
Theme URI: http://underscores.me/
Author: Virendra Singh Karmiyal
Author URI: https://thefuturecreations.com
Description: A custom WordPress theme thoughtfully crafted and tailored specifically for NIT Services, reflecting the brand’s identity and professional excellence.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: nit-services
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

NIT Services is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/* ----------------------------------------------
----- Colors -----
---------------------------------------------- */
:root {
  --primary: #FEEBC1;
  --secondary: #FFEDEC;
  --accent: #e12f29;
  --accent-hover: #c42621;
  --white: #FFFFFF;
  --heading: #373737;
  --text: #151515;
  --white-rgba-7: rgba(255, 255, 255, 0.7);
  --grey: #777777;
  --grey-light: #CCCCCC;
}

/* ----------------------------------------------
----- Typography -----
---------------------------------------------- */
@font-face {
  font-family: "Gilroy-Bold";
  src: url("fonts/gilroy-bold-webfont.woff2") format("woff2"), url("fonts/gilroy-bold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gilroy-Medium";
  src: url("fonts/gilroy-medium-webfont.woff2") format("woff2"), url("fonts/gilroy-medium-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gilroy-Regular";
  src: url("fonts/gilroy-regular-webfont.woff2") format("woff2"), url("fonts/gilroy-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: "Gilroy-Regular", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  line-height: 1.4;
  color: var(--text);
}

h1,
h1 a,
h2,
h2 a,
h3,
h3 a,
h4,
h4 a,
h5,
h5 a,
h6,
h6 a {
  font-family: "Gilroy-Bold", sans-serif;
  font-weight: normal;
  line-height: 1.3;
  color: var(--heading);
}

h5,
h5 a,
h6,
h6 a {
  font-family: "Gilroy-Medium", sans-serif;
}

h1,
h1 a {
  font-size: clamp(1.5rem, 1.0556rem + 2.2222vw, 3rem);
}

h2, h2 a {
  font-size: clamp(1.5rem, 1.2037rem + 1.4815vw, 2.5rem);
}

h3, h3 a {
  font-size: 1.25rem;
}

h4,
h4 a {
  font-size: 1.1rem;
  color: var(--grey);
}

strong, b {
  font-family: "Gilroy-Bold", sans-serif;
  font-weight: normal;
}

a {
  color: var(--accent);
  transition: color 300ms ease-out;
}
a:hover {
  color: var(--accent-hover);
}

.lead {
  font-size: 1rem;
}

@media (min-width: 992px) {
  .lead {
    font-size: 1.25rem;
  }
}
/* ----------------------------------------------
----- Elementor Container Responsive Width -----
---------------------------------------------- */
.e-con {
  max-width: 100%;
}

@media (min-width: 576px) {
  .e-con .e-con-inner {
    max-width: 540px !important;
  }
}
@media (min-width: 768px) {
  .e-con .e-con-inner {
    max-width: 720px !important;
  }
}
@media (min-width: 992px) {
  .e-con .e-con-inner {
    max-width: 960px !important;
  }
}
@media (min-width: 1200px) {
  .e-con .e-con-inner {
    max-width: 1140px !important;
  }
}
@media (min-width: 1400px) {
  .e-con .e-con-inner {
    max-width: 1320px !important;
  }
}
/* ----------------------------------------------
----- Elementor Overrides -----
---------------------------------------------- */
body .elementor-heading-title {
  line-height: 1.3;
}

.e-con.e-grid {
  row-gap: 20px;
  -moz-column-gap: 20px;
       column-gap: 20px;
}

@media (min-width: 768px) {
  .e-con.e-grid {
    row-gap: 30px;
    -moz-column-gap: 30px;
         column-gap: 30px;
  }
}
@media (min-width: 1200px) {
  .e-con.e-grid {
    row-gap: 40px;
    -moz-column-gap: 40px;
         column-gap: 40px;
  }
}
/* ----------------------------------------------
----- Spacing -----
---------------------------------------------- */
.space-break-start {
  padding-top: 50px;
}

.space-break-end {
  padding-bottom: 50px;
}

.space-break-both,
.space-break-both.e-con-full {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

@media (min-width: 768px) {
  .space-break-start {
    padding-top: 70px;
  }
  .space-break-end {
    padding-bottom: 70px;
  }
  .space-break-both,
  .space-break-both.e-con-full {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
}
@media (min-width: 992px) {
  .space-break-start {
    padding-top: 90px;
  }
  .space-break-end {
    padding-bottom: 90px;
  }
  .space-break-both,
  .space-break-both.e-con-full {
    padding-top: 90px !important;
    padding-bottom: 90px !important;
  }
}
/* ----------------------------------------------
----- Buttons -----
---------------------------------------------- */
.elementor-widget-button .elementor-button {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.solid-btn,
.elementor-widget-button .elementor-button {
  background-color: var(--accent);
  color: var(--white);
}
.solid-btn:hover,
.elementor-widget-button .elementor-button:hover {
  background-color: var(--accent-hover);
  color: var(--white);
}

.outline-btn,
.vs-outline-btn.elementor-widget-button .elementor-button {
  background-color: var(--white);
  color: var(--accent);
  border: 1px solid var(--accent);
}
.outline-btn:hover,
.vs-outline-btn.elementor-widget-button .elementor-button:hover {
  background-color: var(--accent);
  color: var(--white);
}

.solid-btn,
.elementor-widget-button .elementor-button,
.outline-btn,
.light-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1.5rem;
  border-radius: 150px;
  font-family: "Gilroy-Medium";
  transition: color 300ms ease-in-out, background-color 300ms ease-in-out;
}
.solid-btn.small,
.elementor-widget-button .elementor-button.small,
.outline-btn.small,
.light-btn.small {
  font-size: 0.875rem;
  padding: 0.3rem 1.3rem;
}
.solid-btn.large,
.elementor-widget-button .elementor-button.large,
.outline-btn.large,
.light-btn.large {
  font-size: 1.125rem;
  padding: 0.7rem 1.875rem;
}
.solid-btn .las,
.elementor-widget-button .elementor-button .las,
.outline-btn .las,
.light-btn .las {
  font-size: 1.25rem;
  margin-left: 1.875rem;
  transition: transform 300ms ease-in-out;
}
.solid-btn:hover .las,
.elementor-widget-button .elementor-button:hover .las,
.outline-btn:hover .las,
.light-btn:hover .las {
  transform: translateX(5px);
}

.elementor-widget-button.large .elementor-button {
  font-size: 1rem;
  padding: 0.625rem 2rem;
}

.elementor-widget-button.small .elementor-button {
  font-size: 0.875rem;
  padding: 0.875rem 1.875rem;
}

@media (min-width: 768px) {
  .elementor-widget-button.large .elementor-button {
    font-size: 1.125rem;
    padding: 0.75rem 2.5rem;
  }
}
/* ----------------------------------------------
----- Common -----
---------------------------------------------- */
.section-head {
  text-align: center !important;
  margin: 0 auto 2rem !important;
}
.section-head h2,
.section-head .elementor-widget-heading h2 {
  margin: 0;
}
.section-head p,
.section-head .elementor-widget-text-editor {
  margin: 1rem 0 0;
}

.light-text {
  color: var(--grey);
}

.red-text {
  color: var(--accent);
}

.yellow-grad-card,
.secondary-base-card,
.secondary-grad-card,
.bottom-cubes-card {
  height: 100%;
  padding: 20px !important;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
  border-radius: 10px !important;
  overflow: hidden !important;
}

.secondary-base-card {
  background-color: var(--secondary);
}

.secondary-grad-card {
  background: linear-gradient(129.14deg, var(--secondary) 2.85%, var(--white) 97.39%);
}

.secondary-grad-card svg,
.yellow-grad-card svg {
  fill: var(--accent);
  margin-bottom: 20px;
}
.secondary-grad-card h3,
.secondary-grad-card h4,
.yellow-grad-card h3,
.yellow-grad-card h4 {
  margin-bottom: 0.5rem;
}
.secondary-grad-card h4,
.yellow-grad-card h4 {
  font-size: 1.25rem;
}
.secondary-grad-card p,
.yellow-grad-card p {
  margin-bottom: 0;
}

.yellow-grad-card {
  background: linear-gradient(129.14deg, var(--primary) 2.85%, var(--white) 97.39%);
  position: relative !important;
  z-index: 0 !important;
  padding-bottom: 40px !important;
}
.yellow-grad-card::after {
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: -3px;
  display: block;
  content: "";
  width: 100%;
  height: 148px;
  background-image: url("images/card-bg-grid.png");
  border-radius: 10px;
  mix-blend-mode: difference;
  opacity: 0.75;
}
.yellow-grad-card .process-icon {
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 20px;
}
.yellow-grad-card .process-icon svg {
  margin-bottom: 0;
}

.bottom-cubes-card {
  height: auto;
  background: linear-gradient(129.14deg, var(--primary) 2.85%, var(--white) 97.39%);
  padding-bottom: 4rem;
  position: relative;
  z-index: 0;
}
.bottom-cubes-card::after {
  display: block;
  content: "";
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 185px;
  background: url("images/card-cubes.png") no-repeat left bottom;
  background-size: contain;
  border-radius: inherit;
  mix-blend-mode: multiply;
  opacity: 0.25;
}
.bottom-cubes-card .work {
  display: block;
  color: var(--accent);
  margin-bottom: 0.625rem;
}
.bottom-cubes-card .summary {
  margin-bottom: 1rem;
}

.counter-card {
  padding-left: 30px;
  border-left: 3px solid var(--secondary);
}
.counter-card strong {
  display: block;
  font-size: 2rem;
  color: var(--accent);
}

.profile-card {
  background: linear-gradient(129.14deg, var(--secondary) 2.85%, var(--white) 97.39%);
  height: 100%;
  border-radius: 10px;
  overflow: hidden;
}
.profile-card .head {
  position: relative;
  z-index: 0;
  background-color: var(--accent);
  padding: 45px 20px 20px 200px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.profile-card .head::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url("images/card-bg-grid.png") no-repeat right bottom;
  background-size: contain;
  mix-blend-mode: plus-lighter;
  border-radius: inherit;
}
.profile-card .head .elementor-widget-image {
  position: absolute;
  top: 20px;
  left: 25px;
  border-radius: 200px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}
.profile-card .head a {
  position: absolute;
  bottom: -70px;
}
.profile-card .name {
  color: var(--white);
}
.profile-card .name h3 {
  color: inherit;
  font-size: 1.5rem;
  margin-bottom: 0;
}
.profile-card .body {
  padding: 30px;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  margin-top: 45px;
}
.profile-card .body p:last-child {
  margin-bottom: 0;
}

.role-card h3 {
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 30px;
}
.role-card h3::after {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 75px;
  height: 2px;
  background-color: var(--accent);
}
.role-card .note {
  color: var(--accent-hover);
  font-size: 0.875rem;
}
.role-card .note .las {
  color: inherit;
}

@media (min-width: 768px) {
  .section-head.footer {
    margin-bottom: 0 !important;
  }
  .section-head.left {
    width: 100% !important;
    text-align: left !important;
  }
}
@media (min-width: 992px) {
  .section-head {
    width: 65% !important;
    margin: 0 auto 3rem !important;
  }
  .yellow-grad-card,
  .secondary-base-card,
  .secondary-grad-card,
  .bottom-cubes-card {
    padding: 30px !important;
  }
}
/* ----------------------------------------------
----- Header -----
---------------------------------------------- */
.navbar {
  position: relative;
  z-index: 1000;
}

.custom-logo-link {
  display: inline-block;
}
.custom-logo-link img {
  width: 50px;
  height: 61px;
}

.navbar-toggler {
  border: 1px solid var(--accent);
  border-radius: 5px;
}
.navbar-toggler:focus {
  box-shadow: none;
}

#mainMenu {
  background-color: var(--accent-hover);
  border: none;
  width: 90%;
}
#mainMenu .offcanvas-header {
  padding-bottom: 0;
}
#mainMenu button {
  height: 44px;
  width: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  border: none;
}
#mainMenu button:focus {
  border: none;
  box-shadow: none;
  outline: none;
}
#mainMenu button svg {
  fill: var(--secondary);
}

.navbar-nav li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.navbar-nav li:last-child {
  border-bottom: 0;
}
.navbar-nav li ul {
  list-style: none;
  padding-left: 18px;
}
.navbar-nav li ul li {
  border-left: 3px solid rgba(255, 255, 255, 0.1);
}
.navbar-nav a {
  display: block;
  padding: 0.625rem 1rem;
  text-decoration: none;
  color: var(--primary);
  font-family: "Gilroy-Medium", sans-serif;
  transition: background-color 300ms ease-out;
}
.navbar-nav .current-menu-item a,
.navbar-nav .current-page-ancestor a,
.navbar-nav .current-menu-ancestor a {
  color: var(--white);
}

.single-post .menu-item-274 a,
.page-id-23 .menu-item-613 a {
  color: var(--accent);
}

@media (min-width: 768px) {
  #mainMenu {
    width: 50%;
  }
}
@media (min-width: 992px) {
  .custom-logo-link img {
    width: 90px;
    height: 110px;
  }
  #mainMenu .offcanvas-body {
    margin-left: auto;
  }
  .navbar-nav li {
    border-bottom: none;
    position: relative;
  }
  .navbar-nav li.menu-item-has-children {
    background-color: transparent;
  }
  .navbar-nav > li {
    margin-left: 0.625rem;
  }
  .navbar-nav a {
    color: var(--text);
    margin: 5px 0;
  }
  .navbar-nav .current-menu-item a,
  .navbar-nav .current-page-ancestor a,
  .navbar-nav .current-menu-ancestor a {
    color: var(--accent);
  }
  .navbar-nav li a:hover {
    color: var(--accent);
  }
  .navbar-nav .sub-menu {
    position: absolute;
    left: 0;
    width: 300px;
    background-color: var(--secondary);
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    margin: 0;
    transform: translateY(100px);
    opacity: 0;
    visibility: hidden;
    transition: transform 300ms ease-out, opacity 300ms ease-out;
  }
  .navbar-nav .sub-menu li {
    border-bottom: 1px solid var(--grey-light);
  }
  .navbar-nav .sub-menu li:last-child {
    border-bottom: 0;
  }
  .navbar-nav .sub-menu li a {
    color: var(--text);
    font-size: 1rem;
    transition: color 300ms ease-out;
  }
  .navbar-nav .sub-menu li a:hover {
    color: var(--accent-hover);
  }
  .navbar-nav .menu-item-has-children:hover .sub-menu {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
/* ----------------------------------------------
----- Hero Section -----
---------------------------------------------- */
.site-main {
  margin-top: -77px;
}

.hero {
  background-color: var(--secondary);
  width: 100%;
  height: 100dvh !important;
  position: relative;
}
.hero::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 323px;
  left: 0;
  bottom: -35px;
  background: linear-gradient(0deg, #FFFFFF 10.99%, rgba(255, 255, 255, 0) 59.91%);
}
.hero .hero-video,
.hero .e-hosted-video {
  width: inherit;
  height: inherit;
}
.hero video {
  width: inherit;
  height: inherit;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none !important;
  touch-action: none !important;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; /* Prevent accidental taps to show controls */
  -webkit-overflow-scrolling: touch; /* Optimize scrolling */
}
.hero video::-webkit-media-controls {
  display: none !important; /* For WebKit browsers like Safari on iOS */
}
.hero video::-webkit-media-controls-panel {
  display: none !important; /* For WebKit browsers like Safari on iOS */
}
.hero .container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  padding-top: 100px;
}
.hero h2.elementor-heading-title {
  font-size: clamp(1.5rem, 0.7593rem + 3.7037vw, 4rem);
  line-height: 1.1;
  margin-bottom: 1rem;
}
.hero p {
  font-size: clamp(1rem, 0.9259rem + 0.3704vw, 1.25rem);
  margin-bottom: 2rem;
}

@media (min-width: 992px) {
  .site-main {
    margin-top: -126px;
  }
}
@media (min-width: 1200px) {
  .hero .container {
    padding-top: 30px;
  }
  .hero p {
    padding: 0 10rem;
  }
}
/* ----------------------------------------------
----- Home Page -----
---------------------------------------------- */
.problems .footer svg {
  width: 100%;
  height: auto;
}

.solution .column-with-right-border {
  position: relative;
  padding-right: 20px;
}
.solution .points .point-with-icon {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}
.solution .points .point-with-icon:nth-child(2) {
  margin: 2rem 0;
}
.solution .points .point-with-icon svg {
  margin-bottom: 0;
}
.solution .points .text {
  margin-left: 1.875rem;
}
.solution .points h3 {
  margin-bottom: 0.3rem;
}
.solution .points p {
  margin-bottom: 0;
}

.solution .trusted,
.why-nit-services .success-rate {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.solution .trusted h3,
.why-nit-services .success-rate h3 {
  font-family: "Gilroy-Regular", sans-serif;
  font-weight: 400;
  font-size: 1.125rem;
}
.solution .trusted .percentage,
.why-nit-services .success-rate .percentage {
  display: block;
  font-family: "Gilroy-Bold", sans-serif;
  font-size: 4rem;
  line-height: 1;
  color: var(--accent);
}
.solution .trusted .percentage span,
.why-nit-services .success-rate .percentage span {
  font-size: 2rem;
  color: var(--heading);
}

.why-nit-services .success-rate {
  background-color: var(--accent);
  padding: 30px;
  border-radius: 10px;
}
.why-nit-services .success-rate .vs-para {
  font-size: 1.25rem;
  color: var(--primary);
}
.why-nit-services .success-rate .percentage {
  color: var(--white);
}
.why-nit-services .success-rate .percentage span {
  color: var(--primary);
}
.why-nit-services .success-rate .lead {
  color: var(--white);
  margin-bottom: 0;
}

.services .service-boxes .description,
.services .service-boxes .benefit {
  margin-bottom: 25px;
}
.services .service-boxes .yellow-grad-card:last-child {
  height: auto;
  margin-top: auto;
}
.services .service-boxes .yellow-grad-card:last-child h3 {
  margin-bottom: 50px;
}

.proven-path .section-head {
  position: relative;
}
.proven-path .curve-path {
  display: none;
  width: 100%;
  height: auto;
}
.proven-path .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border-radius: 80px;
  background-color: var(--primary);
  margin-bottom: 10px;
}
.proven-path .path-card .text-container {
  position: relative;
}
.proven-path .path-card .counter {
  position: absolute;
  top: -60px;
  right: 20px;
  font: italic 6rem "Gilroy-Bold", sans-serif;
  line-height: 0.8;
  text-shadow: -1px -1px 0 var(--accent), 1px -1px 0 var(--accent), -1px 1px 0 var(--accent), 1px 1px 0 var(--accent);
  color: white;
  opacity: 0.2;
  z-index: -1;
}
.proven-path .implement {
  margin: 20px 0;
}
.proven-path .implement .bottom-cubes-card::after {
  transform: scaleX(1) scaleY(-1);
}
.proven-path .operate .bottom-cubes-card::after {
  transform: scaleX(-1) scaleY(-1);
}

.call-to-action {
  background-color: var(--primary);
}
.call-to-action .section-head {
  margin-bottom: 0 !important;
}

@media (min-width: 576px) {
  .solution .column-with-right-border::after {
    display: block;
    content: "";
    background-color: var(--accent);
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0.5;
  }
}
@media (min-width: 768px) {
  .services .service-boxes .description {
    min-height: 100px;
  }
  .services .service-boxes .benefit {
    min-height: 70px;
  }
  .solution .trusted .percentage,
  .why-nit-services .success-rate .percentage {
    font-size: 6rem;
  }
  .solution .trusted .percentage span,
  .why-nit-services .success-rate .percentage span {
    font-size: 4rem;
  }
  .proven-path .section-head {
    width: 65% !important;
    margin-left: 0 !important;
  }
  .proven-path .curve-path {
    display: block;
  }
  .proven-path .curve-path-container {
    margin-top: -150px;
    z-index: -1;
  }
  .proven-path .icon {
    margin-bottom: 30px;
  }
  .proven-path .plan {
    margin-top: -60px;
  }
  .proven-path .implement {
    margin: -115px 0 0;
  }
  .proven-path .operate {
    margin-top: -210px;
  }
}
@media (min-width: 992px) {
  .problems .footer svg {
    width: 70%;
  }
  .proven-path .section-head {
    width: 55% !important;
  }
  .proven-path .curve-path-container {
    margin-top: -220px;
  }
  .proven-path .plan {
    margin-top: -80px;
  }
  .proven-path .implement {
    margin-top: -140px;
  }
  .proven-path .operate {
    margin-top: -255px;
  }
}
@media (min-width: 1200px) {
  .problems .footer svg {
    width: 936px;
    height: 341px;
  }
  .proven-path .section-head {
    width: 40% !important;
  }
  .proven-path .curve-path-container {
    margin-top: -250px;
  }
  .proven-path .plan, .proven-path .implement, .proven-path .operate {
    padding-left: 70px;
  }
  .proven-path .plan {
    margin-top: -70px;
  }
  .proven-path .implement {
    margin-top: -175px;
  }
  .proven-path .operate {
    margin-top: -355px;
  }
}
@media (min-width: 1400px) {
  .proven-path .curve-path-container {
    margin-top: -280px;
  }
  .proven-path .plan,
  .proven-path .implement,
  .proven-path .operate {
    padding-left: 110px;
  }
  .proven-path .plan {
    margin-top: -60px;
  }
  .proven-path .implement {
    margin-top: -195px;
  }
  .proven-path .operate {
    margin-top: -415px;
  }
}
/* ----------------------------------------------
----- Footer -----
---------------------------------------------- */
.site-footer {
  background-color: var(--text);
  color: var(--white-rgba-7);
}
.site-footer .custom-logo-link {
  display: inline-block;
  padding: 0;
  margin-bottom: 30px;
}
.site-footer .custom-logo-link img {
  width: 50px;
  height: 78px;
}
.site-footer .footer-logo-text {
  margin-bottom: 40px;
}
.site-footer .las {
  color: var(--accent);
}
.site-footer .address-link {
  text-decoration: none;
  color: inherit;
  transition: color 300ms ease-in-out;
}
.site-footer a {
  padding: 0.625rem 0;
  color: inherit;
  text-decoration: none;
}
.site-footer a:hover {
  color: var(--accent);
}
.site-footer h3 {
  color: var(--white);
  font-size: 1.125rem;
}
.site-footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.site-footer ul li:not(:last-child) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.site-footer ul a {
  display: block;
}
.site-footer .social-media-icons {
  margin-top: 40px;
}
.site-footer .social-media-icons a {
  padding: 0;
}
.site-footer .social-media-icons .facebook {
  font-size: 0.875rem;
}

@media (min-width: 768px) {
  .site-footer .custom-logo-link img {
    width: 64px;
    height: 100px;
  }
  .site-footer .footer-logo-text {
    width: 70%;
  }
  .site-footer h3 {
    margin-top: 130px;
  }
  .site-footer ul {
    width: 85%;
  }
}
/* ----------------------------------------------
----- Testimonials -----
---------------------------------------------- */
.testimonials {
  background: linear-gradient(180deg, var(--primary) 0%, var(--white) 50%);
}
.testimonials .testimonial {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 90px 20px 20px !important;
  position: relative;
  z-index: 0;
}
.testimonials .testimonial .quote-ribbon {
  position: absolute;
  top: 0;
  left: 20px;
  display: block;
  width: 90px;
  height: 83px;
  background-image: url("images/quote-ribbon.png");
}
.testimonials .testimonial .quote-symbol {
  position: absolute;
  z-index: -1;
  top: 30px;
  right: 30px;
  display: block;
  width: 214px;
  height: 179px;
  background-image: url("images/quote.png");
  opacity: 0.6;
}
.testimonials .testimonial p {
  font-size: 0.9275rem;
}
.testimonials .testimonial cite {
  font-style: normal;
  font-family: "Gilroy-Bold", sans-serif;
}

.testimonial-splide .splide__track {
  padding: 0 20px 15px !important;
  cursor: grab;
}
.testimonial-splide .splide__arrow {
  top: auto;
  left: auto;
  bottom: -60px;
  width: 2.5em;
  height: 2.5em;
  background-color: var(--accent);
  z-index: 5;
}
.testimonial-splide .splide__arrow svg {
  fill: var(--white);
  width: 1em;
  height: 1em;
}
.testimonial-splide .splide__arrow--prev {
  right: 4em;
}
.testimonial-splide .splide__arrows [disabled] + [disabled],
.testimonial-splide .splide__arrows [disabled]:has(+ [disabled]) {
  display: none;
}

.logos {
  overflow: hidden;
  white-space: nowrap;
  position: relative;
}
.logos::before, .logos::after {
  content: "";
  position: absolute;
  top: 0;
  width: 100px;
  height: 100%;
  z-index: 2;
}
.logos::before {
  left: 0;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), white);
}
.logos::after {
  right: 0;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), white);
}
.logos .logos-slide {
  display: inline-flex;
}
.logos .logos-slide img {
  width: 120px;
  height: 67px;
  margin: 0 30px;
}
.logos .logos-slide-to-left {
  width: 5040px;
  animation: 28s slideToLeft linear infinite;
}

@keyframes slideToLeft {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(-2520px);
  }
}
@media (min-width: 992px) {
  .logos::before, .logos::after {
    width: 250px;
    height: 100%;
  }
  .logos .logos-slide img {
    width: 160px;
    height: 89px;
  }
  .logos .logos-slide-to-left {
    width: 6160px;
  }
  @keyframes slideToLeft {
    0% {
      transform: translateX(0px);
    }
    100% {
      transform: translateX(-3080px);
    }
  }
}
/* ----------------------------------------------
----- Pages -----
---------------------------------------------- */
.entry-header {
  position: relative;
  height: 480px;
  margin-top: -126px;
  z-index: 0;
}
.entry-header::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: url("images/page-background.jpg") no-repeat left center;
  background-size: cover;
  opacity: 0.9;
  animation: bg-slide 15s linear infinite;
}
@keyframes bg-slide {
  0% {
    background-position: 0 center;
  }
  100% {
    background-position: 100% center;
  }
}
.entry-header .entry-banner {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.entry-header .entry-header-content {
  position: absolute;
  z-index: 1;
  top: calc(50% + 60px);
  left: 50%;
  transform: translate(-50%, -50%);
}
.entry-header .entry-title {
  color: var(--accent);
}
.entry-header .entry-sub-title {
  display: block;
  color: var(--text);
  font-size: 1rem;
}
.entry-header .entry-sub-title span {
  display: block;
  margin-top: 5px;
  color: var(--accent);
}

.entry-header-breadcrumb {
  padding-top: 20px;
}
.entry-header-breadcrumb .la-caret-right {
  color: var(--grey-light);
}
.entry-header-breadcrumb .current-item {
  color: var(--grey);
}

@media (min-width: 786px) {
  .entry-header {
    height: 70dvh;
  }
  .entry-header .entry-header-content {
    top: calc(50% + 80px);
  }
  .entry-header .entry-title {
    line-height: 1.1;
  }
  .entry-header .entry-sub-title {
    font-size: 1.125rem;
  }
}
/* ----------------------------------------------
----- Service Pages -----
---------------------------------------------- */
.services .section-head.footer {
  width: 75% !important;
}

.main-services {
  background-color: var(--accent);
}
.main-services .section-head h2, .main-services .section-head p {
  color: var(--white);
}
.main-services .section-head p {
  font-size: 1.25rem;
}
.main-services .yellow-grad-card {
  padding: 50px 30px 70px;
}
.main-services .yellow-grad-card h3 {
  position: relative;
  margin-bottom: 30px;
  color: var(--accent);
}
.main-services .yellow-grad-card h3::after {
  position: absolute;
  display: block;
  content: "";
  bottom: -15px;
  left: 0;
  width: 70px;
  height: 2px;
  background-color: var(--accent);
  border-radius: 5px;
}
.main-services .yellow-grad-card .benefit strong {
  color: var(--accent);
}

/* ----------------------------------------------
----- Career Page -----
---------------------------------------------- */
.career-form-container {
  background: linear-gradient(180deg, var(--secondary) 0%, var(--white) 50%);
}
.career-form-container .contact-form {
  background-color: var(--primary);
  padding: 30px;
  border-radius: 10px;
}

/* ----------------------------------------------
----- Contact Page -----
---------------------------------------------- */
.contact-form {
  position: relative !important;
  z-index: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}
.contact-form form p {
  margin-bottom: 1.5rem;
}
.contact-form form label {
  display: block;
  margin-bottom: 5px;
}
.contact-form form label sup {
  line-height: 1;
  color: var(--accent-hover);
}
.contact-form form input,
.contact-form form textarea,
.contact-form form select {
  width: 100%;
  background-color: var(--white);
  border: 1px solid var(--grey-light);
  color: var(--heading) !important;
}
.contact-form form input:focus-visible,
.contact-form form textarea:focus-visible,
.contact-form form select:focus-visible {
  outline: none;
}
.contact-form form input:focus,
.contact-form form textarea:focus,
.contact-form form select:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 0.25rem rgba(255, 47, 41, 0.25);
}
.contact-form .wpcf7-not-valid-tip {
  font-size: 0.875rem;
  margin-top: 3px;
}
.contact-form .wpcf7 form.invalid .wpcf7-response-output {
  color: var(--accent);
  border-color: var(--accent-hover);
  border-radius: 10px;
}

/* ----------------------------------------------
----- Clients Page -----
---------------------------------------------- */
.logo-card .name-link {
  position: relative;
  text-align: center;
}
.logo-card .name-link h3 {
  font-size: 1.125rem;
  margin: 0;
}
.logo-card .name-link p {
  margin: 0;
}
.logo-card .name-link a {
  position: absolute;
  top: -50px;
  right: -20px;
  aspect-ratio: 1;
  padding: 10px;
}
.logo-card .name-link a .las {
  margin-left: 0;
  transition: none;
}
.logo-card .name-link a:hover {
  transition: none;
}
.logo-card .name-link a:hover .las {
  transform: translateX(0);
}

.vs-process .process-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 130px;
  height: 130px;
  border-radius: 100%;
  background-color: var(--secondary);
  margin-left: 20px;
}
.vs-process .process-icon svg {
  fill: var(--accent);
}
.vs-process .process-icon .number {
  position: absolute;
  top: 0;
  left: -20px;
  width: 50px;
  height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--accent);
  color: var(--white);
  font-weight: 700;
  border: 5px solid var(--white);
  border-radius: 50%;
}
.vs-process h3 {
  margin: 30px 0 20px;
}
.vs-process ul li {
  margin: 5px 0;
  font-family: "Gilroy-Medium", sans-serif;
}

/* ----------------------------------------------
----- Pagination -----
---------------------------------------------- */
.nit-pagination {
  margin-top: 50px;
}
.nit-pagination ul {
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
}
.nit-pagination li:not(:last-child) {
  margin-right: 10px;
}
.nit-pagination li span,
.nit-pagination li a {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  text-decoration: none;
  font-size: 0.9375rem;
}
.nit-pagination li span {
  background-color: var(--accent);
}
.nit-pagination li a {
  background-color: var(--accent);
  color: var(--white);
  transition: background-color 300ms ease-in-out;
}
.nit-pagination li a:hover {
  background-color: var(--accent-hover);
}

/* -------------------------------------------------------
----- Single Pages - Blog, Case Study, Press Release -----
------------------------------------------------------- */
.blog-area {
  padding: 70px 0;
}

.blog-card {
  height: 100%;
  background-color: var(--primary);
  border-radius: 10px;
  overflow: hidden;
}
.blog-card .blog-card-thumb {
  width: 100%;
  height: 220px;
  overflow: hidden;
  border-bottom: 2px solid var(--secondary);
}
.blog-card .blog-card-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 300ms ease-in-out;
}
.blog-card .blog-card-content {
  padding: 15px 30px 30px;
}
.blog-card .blog-card-content .title {
  font-size: 1.5rem;
  margin: 10px 0;
  color: var(--heading);
}
.blog-card .blog-card-content .title a {
  font-size: inherit;
  text-decoration: none;
  color: inherit;
  transition: color 300ms ease-out;
}
.blog-card .blog-card-date {
  display: inline-flex;
  align-items: center;
  color: var(--grey);
  font-size: 1rem;
}
.blog-card .blog-card-date .las {
  font-size: 28px;
  color: var(--accent);
  margin-right: 10px;
}
.blog-card:hover .blog-card-thumb img {
  transform: scale(1.1);
}
.blog-card:hover .blog-card-content .title a {
  color: var(--accent);
}

.single-post .entry-header {
  height: 500px;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.single-post .entry-header::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: url("images/page-background.jpg") no-repeat left center;
  background-size: cover;
  opacity: 0.9;
}
.single-post .entry-meta span {
  display: inline-flex;
  align-items: center;
  color: var(--grey);
  font-size: 1rem;
}
.single-post .entry-meta span .las {
  font-size: 28px;
  color: var(--accent);
  margin-right: 10px;
}
.single-post .blog-content .seperator {
  border: 5px solid var(--secondary);
  margin: 1rem 0 2.5rem;
  opacity: 1;
}
.single-post .blog-content .text {
  line-height: 2;
}
.single-post .blog-content .excerpt p {
  font-weight: bold;
}
.single-post .blog-content h2:not(:first-child) {
  margin-top: 40px;
}
.single-post .blog-content h2 {
  color: var(--accent);
}
.single-post .blog-content h2,
.single-post .blog-content h3,
.single-post .blog-content h4,
.single-post .blog-content h5,
.single-post .blog-content h6 {
  margin: 0 0 20px;
}
.single-post .blog-content h3 {
  position: relative;
}
.single-post .blog-content h3:before,
.single-post .blog-content h3:after {
  position: absolute;
  display: block;
  content: "";
  bottom: -5px;
  left: 0;
  width: 50px;
  height: 2px;
  background-color: var(--accent);
  border-radius: 5px;
}
.single-post .blog-content h3:before {
  left: 55px;
  width: 5px;
}
.single-post .blog-content p {
  margin-bottom: 20px;
  line-height: inherit;
}
.single-post .blog-content a {
  font-family: "Gilroy-Medium", sans-serif;
  color: var(--accent);
  text-decoration: none;
}
.single-post .blog-content a:hover {
  text-decoration: underline;
}
.single-post .blog-content ul,
.single-post .blog-content ol {
  padding-left: 15px;
  margin-bottom: 30px;
  line-height: inherit;
  list-style: none;
}
.single-post .blog-content ol {
  padding-left: 30px;
  list-style: auto;
}
.single-post .blog-content li {
  padding-left: 30px;
}
.single-post .blog-content ol li {
  padding-left: 0;
}
.single-post .blog-content ul li {
  position: relative;
}
.single-post .blog-content ul li:before {
  position: absolute;
  top: -12px;
  left: 0;
  content: "⁍";
  color: var(--accent);
  font-size: 2rem;
}
.single-post .blog-content strong,
.single-post .blog-content b {
  color: var(--grey);
}
.single-post .blog-content blockquote {
  background: #fff;
  padding: 0 30px;
  border-left: 5px solid var(--accent);
  margin-top: 30px;
  margin-bottom: 20px;
}
.single-post .blog-content blockquote p {
  font-size: 20px;
  font-weight: 600;
  color: var(--grey);
  line-height: 35px;
  padding-right: 15px;
}
.single-post .blog-content .wp-block-separator {
  border-color: var(--secondary);
}
.single-post .blog-content ul.styled-list,
.single-post .blog-content ol.styled-list {
  background-color: var(--primary);
  padding: 20px;
}
.single-post .blog-content ul.styled-list li,
.single-post .blog-content ol.styled-list li {
  color: var(--white);
  padding-bottom: 10px;
  border-bottom: 1px solid var(--accent-hover);
  margin-bottom: 10px;
}
.single-post .blog-content ul.styled-list li:last-child,
.single-post .blog-content ol.styled-list li:last-child {
  border-bottom: 0;
  margin-bottom: 0;
}
.single-post .blog-content ul.styled-list li::before,
.single-post .blog-content ol.styled-list li::before {
  color: var(--grey);
}
.single-post .post-navigation {
  padding: 50px 20px 0;
}
.single-post .post-navigation .nav-links a {
  display: block;
  background-color: var(--secondary);
  color: var(--text);
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 7px;
  transition: background-color 300ms ease-in-out, color 300ms ease-in-out;
}
.single-post .post-navigation .nav-links a:hover {
  background-color: var(--accent);
  color: var(--white);
}
.single-post .post-navigation .nav-previous {
  margin-bottom: 30px;
}
.single-post .post-navigation .nav-subtitle {
  display: block;
}

@media (min-width: 768px) {
  .single-post .post-navigation .nav-links {
    display: flex;
    -moz-column-gap: 20px;
         column-gap: 20px;
    justify-content: space-between;
  }
  .single-post .post-navigation .nav-previous {
    margin-bottom: 0;
  }
}
@media (min-width: 1200px) {
  .single-post .post-navigation .nav-links {
    align-items: center;
    justify-content: space-between;
  }
  .single-post .post-navigation .nav-links div {
    width: 30%;
  }
}/*# sourceMappingURL=style.css.map */