:root {
  /* ----------------------------------- */
  /* ✅ Font Families                    */
  /* ----------------------------------- */
  --font-heading: "Outfit", sans-serif;
  --font-para: "Poppins", sans-serif;
  --font-button: "Poppins", sans-serif;
  --font-link: "Plus Jakarta Sans", sans-serif;
  --font-secondary: "Josefin Sans", sans-serif;

  /* ----------------------------------- */
  /* ✅ Font Sizes                       */
  /* ----------------------------------- */

  --font-size-h1: 3rem; /* Main heading */
  --font-size-h2: 2.5rem;
  --font-size-h3: 2rem;
  --font-size-h4: 1.5rem;
  --font-size-body: 1rem;
  --font-size-small: 0.875rem;

  /* ----------------------------------- */
  /* ✅ Color Palette                    */
  /* ----------------------------------- */
  --color-primary-bg: #000000;
  --color-secondary: #f4dfc8;
  --color-tirtary: #f4eae0;
  --color-quaternary: #faf6f0;
  --color-span: #faf6f0;
  --navbar-bg: #f7f7f7;

  /* ----------------------------------- */
  /* ✅ Spacing (Margin + Padding)       */
  /* ----------------------------------- */
  --spacing-xs: 0.5rem; /* 8px */
  --spacing-sm: 1rem; /* 16px */
  --spacing-md: 1.5rem; /* 24px */
  --spacing-lg: 2rem; /* 32px */
  --spacing-xl: 3rem; /* 48px */
  --spacing-xxl: 4rem; /* 64px */

  /* ----------------------------------- */
  /* ✅ Border Radius                    */
  /* ----------------------------------- */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-pill: 999px;

  /* ----------------------------------- */
  /* ✅ Transitions                      */
  /* ----------------------------------- */
  --transition-fast: all 0.2s ease-in-out;
  --transition-default: all 0.3s ease-in-out;
  --transition-slow: all 0.5s ease;

  /* ----------------------------------- */
  /* ✅ Shadows                          */
  /* ----------------------------------- */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.15);
}

@media (max-width: 997px) {
  .hero-section-home {
    height: auto !important;
    padding: 50px 0px !important;
  }
  .hero-heading {
    font-size: 30px !important;
    margin-bottom: 25px;
    line-height: 35px !important;
    width: 100% !important;
  }
   .hero-span-heading {
    font-size: 30px !important;
  }
  .btn-group {
    display: flex;
    flex-direction: column !important;
    gap: 20px;
  }
  .hero-left-content {
    height: auto !important;
  }
 
  .who-we-are-right-content-top {
    width: 100% !important;
  }
  .who-we-are-right-content-top h2 {
    font-size: 36px !important;
    line-height: 40px !important;
  }
  .who-we-are-right-content-top h2 span {
    font-size: 36px !important;
  }
  .number-ten {
    font-size: 70px !important;
  }
  .service-heading {
    width: 100% !important;
    font-size: 36px !important;
  }
  .service-heading span {
    width: 100% !important;
    font-size: 36px !important;
  }
  .who-we-are-left h4 {
    font-size: 20px !important;
  }
  .border-left-second {
    position: absolute;
    height: 1000px;
    width: 1px;
    background-color: rgba(255, 255, 255, 0.596);
    top: 150px;
    right: 10px;
  }
  .what-we-offer-right-top{
    padding: 10px !important;
  }
    .what-we-offer-left-top{
    padding: 10px !important;
  }
  .service-heading-offer{
     font-size: 36px !important;
     text-align: left !important;
  }
  .training-choose-card{
    margin-bottom: 50px;
  }
  .hero-content-main{
    height: auto !important;
    padding-bottom: 40px !important;
  }
  .hero-description{
    text-align: justify !important;
  }
}

.hero-section-home {
  position: relative;
  background-color: var(--color-primary-bg);
  height: auto;
  overflow: hidden;
  z-index: 999;
}

/* Gradient overlay between background and content */
.hero-section-home::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.85),
    rgba(0, 0, 0, 0.2)
  );
  z-index: -1;
}
.hero-description{
  color: white;
  font-family: var(--font-para);
  line-height: 30px;
  margin: 20px 0px;
  letter-spacing: 0.5px;
}
.hero-content-main {
  padding-top: 200px;
  height: 600px;
  background-image: url(/assets/images/hero-banner-img.webp);
}
.hero-heading {
  font-family: var(--font-heading);

  font-size: 40px;
  color: var(--color-quaternary);
  width: 100%;
  position: relative;
  display: inline-block;
}
.hero-span-heading {
  font-family: var(--font-heading);
  font-weight: 200;
  font-size: 40px;
  color: var(--color-secondary);
}
.hero-heading::after {
  content: "";
  background-image: url(/assets/images/shape-style3.png);
  position: absolute;
  right: 0;
}

.img-box-hero {
  position: relative;
}

.img-box-hero .image-1 {
  margin-bottom: 0;
}

.img-box-hero .image-1 img {
  width: 100%;
  border-radius: 30px 30px 0px 30px;
  -webkit-mask-image: url(/assets/images/banner1-frame1.png);
  -webkit-mask-position: right bottom;
  -webkit-mask-repeat: no-repeat;
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.img-box-hero .customer-information {
  position: absolute;
  bottom: 10px;
  right: 40px;
  display: flex;
  gap: 28px;
  padding-left: 15px;
}
.count-outer {
  display: flex;
  align-items: center;
  gap: 21px;
  margin-bottom: 1px;
}
.img-box-customer {
  margin-bottom: 5px;
}
.count-box-content h4 {
  font-family: var(--font-heading);
  color: white;
  font-size: 35px;
  font-weight: 700;
}
.count-title p {
  font-family: var(--font-para);
  color: white;
}
.img-box-hero-mobile .customer-information {
  display: flex;
  gap: 28px;
  padding-left: 15px;
}
.who-we-are-section {
  background-color: black;
  padding: 100px 0px;
  position: relative;
  height: auto;
  position: relative;
}
.who-we-are-left h4 {
  font-family: var(--font-button);
  font-weight: 600;
  color: white;
}
.icon-theme-img {
  padding-top: 50px;
}
.shape-style64 {
  position: absolute;
  top: -50%;
  left: 0;
  overflow: hidden;
  transform: rotateX(180deg);
}
.who-we-are-right-content-top {
  width: 80%;
}
.who-we-are-right-content-top h2 {
  font-family: var(--font-heading);
  color: white;
  font-weight: 300;
  line-height: 50px;
  font-size: 48px;
}
.who-we-are-right-content-top h2 span {
  color: var(--color-secondary);
  font-weight: 400;
  font-family: var(--font-heading);
}
.who-we-are-para-content {
  padding-top: 70px;
}
.who-we-are-para-content p {
  font-family: var(--font-para);
  color: white;
  width: 80%;
}
.who-we-button {
  display: flex;
  gap: 20px;
  margin-top: 50px;
}
.read-more {
  font-family: var(--font-heading);
  font-weight: 400;
  color: var(--color-primary-bg);
  padding: 10px 40px;
  background-color: var(--color-secondary);
  border-radius: 30px;
  border: none;
}
.explore-more {
  font-family: var(--font-heading);
  font-weight: 400;
  color: var(--color-secondary);
  padding: 10px 40px;
  background-color: transparent;
  border-radius: 30px;
  border: 2px solid var(--color-secondary);
}
.number-ten {
  color: var(--color-secondary);
  font-size: 150px;
  font-family: var(--font-heading);
}
.who-we-are-number-content {
  padding-top: 70px;
}
.number-ten-para {
  color: white;
  font-family: var(--font-button);
}
.d-abstract-main {
  position: absolute;
  bottom: 10px;
  right: 0;
}
.service-section {
  height: auto;
  background-color: black;
  padding-bottom: 80px;
}
.service-heading-sub {
  font-family: var(--font-button);
  color: var(--color-secondary);
}
.service-heading {
  font-family: var(--font-button);
  color: white;
  width: 50%;
  font-size: 52px;
  font-weight: 400;
}
.service-heading span {
  font-family: var(--font-button);
  color: var(--color-secondary);
  width: 50%;
  font-size: 52px;
  font-weight: 400;
}
.service-heading-offer {
  font-family: var(--font-button);
  color: white;
 width: 100%;
  font-size: 42px;
  font-weight: 400;
  padding-bottom: 80px;
  text-align: center;
}
.service-heading-offer span {
  font-family: var(--font-button);
  color: var(--color-secondary);
  width: 100%;
  font-size: 52px;
  font-weight: 400;
}
.outer-box {
  position: relative;
  /* background-color: var(--theme-color2); */
  border: 1px solid var(--color-secondary);
  border-radius: 30px;
  padding: 0 50px;
}
.outer-box .swiper-outer {
  overflow-x: hidden;
}
.scrolling-wrapper {
  background-color: var(--color-primary-bg);
  padding: 40px 0px;
}

.swiper-button-next {
  right: 0;
  color: white !important;
}
.swiper-button-prev {
  left: 0;
  color: white !important;
}
.swiper-pagination-bullet {
  background-color: var(--color-secondary);
  opacity: 1;
}
.swiper-pagination-bullet-active {
  background-color: var(--color-secondary);
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: 0px !important;
  right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 0px !important;
  left: auto;
}

.slider-main-container {
  padding: 35px;
  background-color: #222222;
}
.swiper-slide {
  background-color: transparent !important;
  padding: 30px 50px;
}
.card-wrapper {
  border-radius: 0px;
  border: none !important;
}
.card-wrapper .card {
  border-radius: 0px !important;
  border: none !important;
  background-color: transparent !important;
}
.card-wrapper .card .card-body {
  background-color: transparent !important;
}
.card-title-service {
  color: var(--color-span);
  font-family: var(--font-button);
}
.card-text-service {
  color: #373a40;
  font-family: var(--font-link);
  font-size: 14px;
  line-height: 30px;
}
.swiper-button-prev.swiper-navBtn {
  background-color: black;
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
.swiper-button-next.swiper-navBtn {
  background-color: black;
  width: 40px;
  height: 40px;
  border-radius: 50%;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: 15px !important;
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.slider {
  height: 60px;
  position: relative;
  width: 100%;

  display: grid;
  place-items: center;
  overflow: hidden;
}
.slider::before,
.slider::after {
  position: absolute;
  /* background-image:linear-gradient(to right, rgb(37 34 34) 0%, rgba(255, 255, 255, 0) 100%); */
  content: "";
  height: 100%;
  width: 25%;
  z-index: 2;
  pointer-events: none;
}
.slider::before {
  left: 0;
  top: 0;
}
.slider::after {
  right: 0;
  top: 0;
  transform: rotateZ(180deg);
}

/*  IMPORTANT CODE BELOW */

.slide-track {
  width: calc(150px * 20);
  display: flex;
  animation: scroll 20s linear infinite;
  justify-content: space-between;
}

.slide-track2 {
  width: calc(150px * 15);
  display: flex;
  animation: scroll2 15s linear infinite;
  justify-content: space-between;
}

.slide {
  width: 150px;
  height: 60px;

  display: grid;
  place-items: center;
  transition: 0.5s;
  cursor: pointer;
}
.slide:hover {
  transform: scale(0.8);
}

@keyframes scroll {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(calc(-150px * 10));
  }
}

@keyframes scroll2 {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(calc(-150px * 5));
  }
}

@media screen and (max-width: 768px) {
  .slide-track {
    width: calc(80px * 20);
  }

  .slide-track2 {
    width: calc(80px * 15);
  }

  .slide {
    width: 80px;
  }

  @keyframes scroll {
    0% {
      transform: translateX(0px);
    }
    100% {
      transform: translateX(calc(-80px * 10));
    }
  }

  @keyframes scroll2 {
    0% {
      transform: translateX(0px);
    }
    100% {
      transform: translateX(calc(-80px * 5));
    }
  }
}

.slider-reverse {
  height: 60px;
  position: relative;
  width: 100%;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.slider-reverse::before,
.slider-reverse::after {
  position: absolute;
  content: "";
  height: 100%;
  width: 25%;
  z-index: 2;
  pointer-events: none;
}

.slider-reverse::before {
  left: 0;
  top: 0;
}

.slider-reverse::after {
  right: 0;
  top: 0;
  transform: rotateZ(180deg);
}

/* Reverse Animation */
.slide-track-reverse {
  width: calc(150px * 20);
  display: flex;
  animation: scroll-reverse 20s linear infinite;
  justify-content: space-between;
}

.slide-track2-reverse {
  width: calc(150px * 15);
  display: flex;
  animation: scroll2-reverse 15s linear infinite;
  justify-content: space-between;
}

.slide {
  width: 150px;
  height: 60px;
  display: grid;
  place-items: center;
  transition: 0.5s;
  cursor: pointer;
}

.slide:hover {
  transform: scale(0.8);
}

/* Keyframes for Reverse Animation */
@keyframes scroll-reverse {
  0% {
    transform: translateX(calc(-150px * 10));
  }
  100% {
    transform: translateX(0px);
  }
}

@keyframes scroll2-reverse {
  0% {
    transform: translateX(calc(-150px * 5));
  }
  100% {
    transform: translateX(0px);
  }
}

/* Responsive Design */
@media screen and (max-width: 768px) {
  .slide-track-reverse {
    width: calc(80px * 20);
  }

  .slide-track2-reverse {
    width: calc(80px * 15);
  }

  .slide {
    width: 80px;
  }

  @keyframes scroll-reverse {
    0% {
      transform: translateX(calc(-80px * 10));
    }
    100% {
      transform: translateX(0px);
    }
  }

  @keyframes scroll2-reverse {
    0% {
      transform: translateX(calc(-80px * 5));
    }
    100% {
      transform: translateX(0px);
    }
  }
}

.what-we-offer {
  background-color: var(--color-primary-bg);
  padding: 100px 0px;
}
.what-we-offer-left-top {
  padding-top: 10px;
  padding-right: 50px;
  padding-bottom: 30px;
  padding-left: 0px;
}
.what-we-offer-left-top h4 {
  font-family: var(--font-heading);
  color: var(--color-tirtary);
  padding-bottom: 40px;
}

.what-we-offer-left-top p {
  font-family: var(--font-button);
  color: white;
  padding-top: 40px;
  font-size: 14px;
  text-align: justify;
  line-height: 30px;
}

.what-we-offer {
  background-color: var(--color-primary-bg);
  padding: 100px 0px;
}
.what-we-offer-right-top {
  padding-top: 140px;
  padding-right: 0px;
  padding-bottom: 30px;
  padding-left: 50px;
}
.what-we-offer-right-top h4 {
  font-family: var(--font-heading);
  color: var(--color-tirtary);
  padding-bottom: 40px;
}

.what-we-offer-right-top p {
  font-family: var(--font-button);
  color: white;
  padding-top: 40px;
  font-size: 14px;
  text-align: justify;
  line-height: 30px;
}
.border-left {
  position: absolute;
  height: 1000px;
  width: 1px;
  background-color: rgba(255, 255, 255, 0.596);
  top: 150px;
 right: 0;
}
.border-bottom {
  position: absolute;
  height: 1px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.596);
  bottom: 0;
}

.border-bottom-two {
  position: absolute;
  height: 2px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.596);
  bottom: 0;
}
.animated-service-img{
  position: absolute;
  bottom: -50px;
  left: 0;
  overflow: hidden;
}
.animated-service-img-2{
  position: absolute;
  bottom: -50px;
  right: 0;
  overflow: hidden;
}
.why-choose-section{
  background-color: var(--color-primary-bg);
  padding: 70px 0px;
}
.choose-point{
  background-color: #373a40;
  padding: 10px;
}
.choose-point h5{
  font-family: var(--font-button);
  font-size: 14px;
  color: var(--color-quaternary);
}
.img-choose img{
  width: 100%;
}
.training-choose-card {
  position: relative;
  height: 350px;
  background-position: center;
  background-size: cover;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: end;
  overflow: hidden;
  color: white;
  z-index: 1;
}

/* Gradient Overlay */
.training-choose-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  border-radius: 15px;
  z-index: 1;
}

/* Background Image Layer */
.training-choose-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  border-radius: 15px;
  transition: transform 0.5s ease;
  z-index: 0;
}

/* Zoom on hover */
.training-choose-card:hover::before {
  transform: scale(1.2);
}

/* Individual Backgrounds */
.training-choose-cards-1::before {
  background-image: url(/assets/images/it-training.jpg);
}
.training-choose-cards-2::before {
  background-image: url(/assets/images/certified-mentors.jpg);
}
.training-choose-cards-3::before {
  background-image: url(/assets/images/affordable-pricing.jpg);
}
.training-choose-cards-4::before {
  background-image: url(/assets/images/placement-assistance.jpg);
}

.training-heading{
  font-family: var(--font-heading);
  color: white;
  position: relative;
  z-index: 2;
}

.why-choose-section-service{
    background-color: var(--color-primary-bg);
    padding: 70px 0px 0px 0px;
}