@charset "UTF-8";
:root {
  --primary-color: #25c07c;
  --blue: #2f2483;
  --grey: #6a6a6a;
  --black: #000;
  --fs-46: 46px;
  --fs-38: 38px;
  --fs-24: 24px;
  --fs-20: 20px;
  --fs-18: 18px;
  --fs-17: 17px;
  --fs-16: 16px;
  --primary-font: "Inter", sans-serif;
  --secondary-font: "Inter", sans-serif;
  --section-padding: 100px;
  --transition: all 168ms ease;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  letter-spacing: 0;
  font-family: "Inter", sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--primary-font);
}
p {
  font-size: var(--fs-18);
  font-family: "Inter";
  line-height: 1.6;
}
img {
  user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
/* animation menu hamburger */
.menu-btn {
  position: relative;
  display: none;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer;
  z-index: 2;
}
.section_title {
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 0;
}
.blue { 
  color: var(--blue);
}
.section_padding {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
  overflow-x: hidden;
}
.main-navbar.sticky {
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
@media (max-width: 1023px) {
  .menu-btn {
    display: flex;
    z-index: 1008;  
  }
}

.menu-btn .menu-btn__lines,
.menu-btn .menu-btn__lines::before,
.menu-btn .menu-btn__lines::after {
  width: 1.5rem;
  height: 0.12rem;
  background: var(--black);
  transition: all 0.4s ease-in-out;
}

.menu-btn .menu-btn__lines::before,
.menu-btn .menu-btn__lines::after {
  content: "";
  position: absolute;
}

.menu-btn .menu-btn__lines::before {
  transform: translateY(-0.5rem);
}

.menu-btn .menu-btn__lines::after {
  transform: translateY(0.5rem);
}

.menu-btn.open .menu-btn__lines {
  transform: translateX(1rem);
  background: transparent;
}

.menu-btn.open .menu-btn__lines::before {
  transform: rotate(45deg) translate(-0.5rem, 0.5rem);
  background: var(--black);
}

.menu-btn.open .menu-btn__lines::after {
  transform: rotate(-45deg) translate(-0.5rem, -0.5rem);
  background: var(--black);
}

.expand-btn:after {
  position: absolute;
  top: 50%;
  right: 0;
  font-family: "FontAwesome";
  content: "\f107";
  opacity: 0.75;
  transform: translateY(-50%) rotate(0);
  transition: 0.25s;
  font-size: 14px;
}

.expand-btn.open {
  color: var(--primary-color);
}

.expand-btn.open:after {
  transform: translateY(-50%) rotate(180deg);
}
.main-logo img {
  max-width: 220px;
  width: 100%;
}
/* navbar */
.main-navbar {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9;
  justify-content: center;
  display: flex;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #fff;
}

.navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* height: 65px; */
  background: #00000000;

  max-width: 1330px;
  width: 100%;
}

.scrolled {
  background: rgba(0, 0, 0, 0.75);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(15.4px);
  -webkit-backdrop-filter: blur(15.4px);
  z-index: 9;
  position: fixed;
  width: 100%;
}

@media (max-width: 1023px) {
  .navbar {
    padding: 10px 20px;
    justify-content: center !important;
  }
  /* .menu-btn {
    right: 20px !important;
    position: absolute;
  } */
  .video_overlay .container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center !important;
  }
}

.navbar.sticky {
  position: fixed;
  z-index: 999;
  top: 0;
  margin: auto;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.navbar .logo {
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
  text-decoration: none;
}

.navbar .menu-items {
  display: flex;
  align-items: center;
  z-index: 999;
  font-weight: 400;
}

.menu-items li {
  transition: opacity 0.3s ease;
}

/* When hovering over the menu list */
.menu-items:hover li {
  opacity: 0.3;
}

/* Keep the hovered item full opacity */
.menu-items li:hover {
  opacity: 1 !important;
}

.navbar .menu-items::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  background-color: #222;
}

.navbar .menu-items::-webkit-scrollbar {
  width: 6px;
  background-color: #222;
}

.navbar .menu-items::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
  background-color: #fff;
}

.navbar .menu-right,
.navbar .dropdown-menu {
  border: 0 !important;
}
.card-body a {
  color: #111;
}
.card {
  transition: var(--transition);
}
.card:hover {
  box-shadow: #2f24831c 0px 7px 29px 0px !important;
}

@-webkit-keyframes blinker {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.blink {
  text-decoration: blink;
  -webkit-animation-name: blinker;
  -webkit-animation-duration: 1s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-direction: alternate;
}

@media (max-width: 1023px) {
  .navbar .menu-items {
    scrollbar-gutter: stable;
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    max-width: 450px;
    width: 100%;
    height: 100vh;
    padding: 30px;
    background: #fff;
    overflow-y: auto;
    transform: translateX(-100vh);
    transition: 0.3s ease-out;
    padding-top: 60px !important;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  }

  .navbar .menu-items.open {
    transform: translateY(0);
  }

  .navbar .dropdown-menu {
    background: #ffffff17;
  }
}

.navbar .menu-items > li > .menu-item {
  padding: 1rem 1.5rem;
  color: #2e3237;
}

@media (max-width: 1023px) {
  .navbar .menu-items > li > .menu-item {
    padding: 1rem 1rem;
  }
}

.navbar .menu-items li:hover .mega-menu {
  opacity: 1;
  visibility: visible;
}

@media (max-width: 1023px) {
  .navbar .menu-items li a {
    padding: 10px 1rem;
  }
}

.navbar .dropdown {
  position: relative;
}

@media (min-width: 1024px) {
  .navbar .dropdown:hover > .dropdown-menu {
    opacity: 1;
    visibility: visible;
    border: 1px solid #ffffff47 !important;
  }

  .navbar .dropdown:hover > .expand-btn:after {
    transform: translateY(-50%) rotate(180deg);
  }
}

@media (min-width: 1024px) {
  .navbar .dropdown .dropdown-right .expand-btn:after,
  .navbar .dropdown .dropdown-left .expand-btn:after {
    right: 0.625rem;
  }
}

@media (min-width: 1024px) {
  .navbar .dropdown-menu {
    position: absolute;
    top: 55px;
    right: 0;
    left: 0;
    width: 290px;
    padding: 5px 0;
    background: #171b27;
    border-radius: 0 0 5px 5px;
    opacity: 0;
    box-shadow: 0 20px 50px 0 rgba(0, 0, 0, 0.05);
    visibility: hidden;
    /* transition: all 0.4s ease; */
    display: block;
  }
}

@media (max-width: 1023px) {
  .menu-items:hover li {
  opacity: 1;
}
  .navbar .dropdown-menu {
    display: none;
    position: relative;
    top: 0;
    width: 100%;
    /* padding-left: 1rem; */
    overflow: hidden;
  }
  .expand-btn:after {
    right: 15px;
  }
  .main-logo img {
    max-width: 168px;
  }
}

.navbar .menu-right {
  top: 0;
  left: 100%;
  background: #171b27;
}

@media (max-width: 1023px) {
  .navbar .menu-right {
    top: 0;
    left: 0;
    right: auto;
    width: 100%;
    background-color: transparent;
    padding-left: 1.5rem;
  }

  .navbar .menu-right:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 20px;
    width: 1px;
    height: calc(100% - 25px);
    background-color: rgba(255, 255, 255, 0.25);
    transform: translateY(-50%);
  }
}

.navbar .menu-left {
  top: 0;
  left: -100%;
}

@media (max-width: 1023px) {
  .navbar .menu-left {
    top: 0;
    left: 0;
    width: 100%;
    padding-left: 1.5rem;
  }

  .navbar .menu-left:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 20px;
    width: 1px;
    height: calc(100% - 25px);
    background-color: rgba(255, 255, 255, 0.25);
    transform: translateY(-50%);
  }
}

.navbar .menu-item {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 0.5rem 1rem;
  font-size: var(--fs-16);
  /* transition: 0.25s; */
}

.navbar .menu-item:hover {
  color: var(--primary-color);
}

.navbar ul li {
  list-style: none;
  /* transition: 0.3s ease; */
}

.navbar ul li .arrow {
  /* transition: all 0.3s ease-out; */
}

.navbar ul li a {
  position: relative;
  text-decoration: none;
  color: #111;
  font-weight: 700;
}
.btn-outline {
  border-radius: 0;
  font-size: var(--fs-16);
  font-family: var(--primary-font);
  padding: 10px 30px;
  background: linear-gradient(45deg, #20d284, #24c07c, #04a35e);
  border: 0 !important;
  color: #fff;
  transition: all 0.3s ease-out;
  border-radius: 10px;
  font-weight: 500;
  text-shadow: 1px #04a35e;
  text-transform: uppercase;
  font-weight: 700;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
.btn-outline:hover {
  box-shadow: rgba(99, 99, 99, 0.3) 0px 2px 8px 0px;
}
.btn-outline {
  background-size: 600%;
  -webkit-animation: anime 16s linear infinite;
  animation: anime 4s linear infinite;
}
@-webkit-keyframes anime {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes anime {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

table.table.table-striped.table-hover p {
  margin-bottom: 0;
}

.card {
  border: none;
  border-radius: 15px;
  overflow: hidden;
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  background: #ffffff;
}
.letter-spacing-1 {
  letter-spacing: 0.1em;
}

.letter-spacing-2 {
  letter-spacing: 0.2em;
}

.letter-spacing-3 {
  letter-spacing: 0.3em;
}

.card {
  border-color: #11111120 !important;
}
.card:hover {
  transform: translateY(-10px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.card-body {
  padding: 30px !important;
}

.card-title {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 15px;
  color: #34495e;
  line-height: 1.5;
}

.card-text {
  color: #7f8c8d;
}

/* Icon Styling */
.fa-icon {
  font-size: 1.5rem;
  color: var(--black);
  background-color: #0000000f;
  padding: 15px;
  border-radius: 50%;
  margin-bottom: 20px;
  width: 54px;
}

/* ================================== Banner Section ================================== */
.btn-filled {
  border-radius: 0;
  font-size: var(--fs-20);
  font-family: var(--primary-font);
  padding: 10px 30px;
  border: 1px solid #fff;
  background: #fff;
  border: 1px solid #fff;
  transition: all 0.3s ease-out;
  text-decoration: none;
  color: var(--primary-color);
  font-weight: 600;
  transition: all 168ms ease;
  display: flex;
  align-items: center;
  width: max-content;
  gap: 5px;
}
.btn-filled svg {
  margin-left: 8px;
  transition: all 168ms ease;
}
.btn-filled:hover {
  color: var(--primary-color);
}
.btn-filled:hover svg {
  transform: translateX(4px);
}
.video-container h1 {
  font-weight: 800;
  font-size: 60px;
  font-family: var(--primary-font);
  color: #ffff;
  margin: 40px 0;
  width: 100%;
  line-height: 1.4;
  max-width: 700px;
  width: 100%;
  text-shadow: 0px 4px 6px #0000001f;
}
.video-container {
  position: relative;
  width: 100%;
  margin-top: var(--header-height) !important;
  height: calc(100vh - var(--header-height));
  overflow: hidden;
  min-height: 580px;
}
.video-container video {
  /* Make video to at least 100% wide and tall */
  min-width: 100%;
  min-height: 100%;
  /* Setting width & height to auto prevents the browser from stretching or squishing the video */
  width: auto;
  height: auto;
  /* Center the video */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.video_overlay {
  /* background-image: linear-gradient(to bottom right, var(--black), #54121400); */
  /* opacity: 0.8; */
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  box-sizing: border-box;
  line-height: 1.5;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.manufacturer_of span {
  font-weight: 400;
  font-size: 24px;
  font-family: var(--primary-font);
  color: #ffff;
}
.manufacturer_of {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 30px;
  border: 1px solid #fff;
  border-radius: 168px;
  width: max-content;
}
.mobile-only {
  display: none;
}
.brand-name {
  color: #fff;
  font-size: var(--fs-20);
  position: relative;
  max-width: 711px;
  width: 100%;
  display: block;
  margin-top: 40px;
  text-shadow: 0px 4px 6px #0000001f;
}
img#banner-image {
  object-fit: cover;
  object-position: bottom;
}

.section-title {
  font-size: var(--fs-46);
  background: -webkit-linear-gradient(69deg, #24c07c, #1aae6e);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
  position: relative;
}
.outline-text {
  -webkit-text-stroke: 1px #d3f3e5;
  -webkit-text-fill-color: transparent;
  font-size: 127px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) !important;
  width: 100%;
  z-index: -1;
  opacity: 0.5 !important;
}
.description {
  font-size: var(--fs-20);
  color: var(--grey);
  line-height: 1.6;
  font-family: "Inter";
}

.address_card .header img {
  max-width: 55px;
}

.address_card .header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}
.address_card .description {
  margin-top: 20px;
}
.address_card {
  padding: 25px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  border-radius: 36px;
  height: 100%;
  border-bottom: 4px solid var(--primary-color);
  transition: var(--transition);
  transform: scale(0.96);
  background-color: #fff;
}
.address_card:hover .header {
  border-color: #c3c3c3;
}
.address_card:hover {
  box-shadow: #a1a1a125 0px 7px 29px 0px;
  transform: scale(1);
}
.address_card .header {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-bottom: 20px;
  border-bottom: 3px solid #e2e2e2;
  padding-bottom: 20px;
}
.location_block {
  margin-top: -220px !important;
}
.header h3 {
  font-size: var(--fs-38);
}
.address_card h4 {
  font-size: calc(var(--fs-38) - 6px);
  line-height: 1.4;
}
.description {
  font-size: var(--fs-24);
}
/* ----------------- welcome-section ----------------- */
.welcome-section {
}
/* ----------------- End welcome-section ----------------- */

/* ----------------- products-services ----------------- */
.products-services {
  background-size: cover;
  overflow: hidden;
}
.product_card {
  background: #fff;
  padding: 25px;
  border-radius: 24px;
  border-bottom: 5px solid var(--primary-color);
  transition: var(--transition);
}
.product_card:hover {
  transform: translateY(-10px);
}
.product_card:hover h4 {
  color: var(--primary-color) !important;
}

.product_card h4,
.product_card p {
  color: var(--black);
}
.product_card img {
  border-radius: 84px !important;
}
/* ----------------- End products-services ----------------- */

.engines_section .product_card {
  padding: 0 !important;
  overflow: hidden;
}
.engines_section .product_card img {
  border-radius: 0 !important;
}

.footer-bottom-div {
  background-color: var(--primary-color);
}
.footer-bottom-div a,
.footer-bottom-div p {
  color: #fff;
  font-size: 16px;
}
.footer-bottom-div a:hover {
  color: var(--primary-color);
}

svg.icon_before {
  position: absolute;
  top: 200px;
  left: -180px;
}
svg.icon_after {
  position: absolute;
  top: 100px;
  right: -180px;
}
.text-dark {
  color: var(--black) !important;
}
.special-numbers h5 {
  font-size: 64px;
  font-weight: 700;
}
.special-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 15px;
}
.special-numbers p {
  font-size: 24px;
}
.trusted-providers-container {
  max-width: 900px;
  width: 100%;
  margin: auto;
  display: grid;
  gap: 40px;
  grid-template-columns: 1fr 1fr;
  place-items: center;
  justify-content: center;
  align-items: flex-start;
  text-align: center;
}
.trusted-providers {
  width: 100%;
  border: 1px solid #24c27d;
  padding: 0 27px 27px 27px;
  border-bottom-width: 8px;
  border-radius: 12px;
  transition: all 168ms ease;
}
.trusted-providers svg {
  margin-top: -30px;
}
.trusted-providers:hover svg {
  animation: bobbing 2s ease-in-out infinite !important;
}
.trusted-providers:hover {
  background: linear-gradient(180deg, transparent, #f3fffa);
}
.cta-box {
  padding: 60px 100px !important;
  display: flex;
  justify-content: space-between;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 50px;
  border-radius: 12px;
  flex-wrap: wrap;
  align-items: center;
  gap: 33px;
  background: #fff;
}
.cta-section {
  background-image: url("data:image/svg+xml,%3Csvg width='1900' height='150' viewBox='0 0 1900 150' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_2811_15645)'%3E%3Cpath d='M1899.64 0.450195C1078.57 60.7125 290.22 25.5595 0.678606 0.450195L-9.44531 213.823H1899.64V0.450195Z' fill='%2324C27D'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_2811_15645'%3E%3Crect width='1900' height='150' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: 100%;
}

.cta-box {
  position: relative;
  overflow: hidden;
}

.cta-box:before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='257' height='230' viewBox='0 0 257 230' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.1' d='M26.8868 23.7667C23.213 30.3299 17.9691 42.9177 15.0131 54.7064C11.7029 67.9123 6.81875 74.7117 2.86087 76.6104C6.98112 51.363 22.1115 30.4019 26.8868 23.7667ZM219.35 192.149C224.969 184.929 229.87 177.081 233.85 169.232C238.105 160.844 241.308 152.452 243.214 144.826C245.788 134.53 249.637 125.945 254.883 123.155C252.722 139.453 245.412 156.454 236.715 170.417C231.231 179.222 225.152 186.822 219.35 192.149ZM256.658 103.596C247.851 109.054 242.788 120.822 238.599 132.816C235.138 142.728 232.35 153.048 229.174 161.72C221.081 183.829 214.907 199.688 194.133 211.848C211.85 199.284 217.614 178.845 224.201 159.955C226.89 152.244 229.962 141.966 233.479 131.733C238.787 116.293 245.963 102.729 256.658 98.3243V103.594V103.596ZM254.805 79.4851C233.728 90.82 227.179 119.701 221.181 143.276C216.062 163.392 209.612 183.833 197.677 200.772C191.387 209.698 183.209 217.893 174.902 221.218C183.674 214.452 188.651 207.132 193.577 199.297C204.263 182.307 209.645 162.89 214.979 141.418C221.701 114.362 231.446 84.6627 253.872 75.0955C254.174 76.5458 254.442 77.688 254.805 79.4833V79.4851ZM249.482 59.4171C216.317 73.4201 216.57 105.646 209.75 134.331C206.953 146.103 204.427 157.639 200.908 168.647C196.186 183.418 189.617 196.57 180.6 207.818C176.602 212.804 171.848 217.107 167.112 221.627C163.804 224.785 160.669 225.916 156.07 226.921C164.221 220.356 170.834 213.387 176.312 205.838C184.634 194.374 190.344 181.58 194.869 166.848C198.29 155.716 200.821 144.188 203.515 132.857C210.398 103.899 215.04 64.7866 248.279 56.1438C249.135 58.1846 248.842 57.3874 249.478 59.419L249.482 59.4171ZM242.552 43.2978C206.816 52.8317 202.205 85.9967 199.033 116.794C194.228 164.597 180.513 200.009 145.333 228.848C142.61 229.22 142.462 229.237 139.062 229.462C176.214 200.569 189.044 159.458 192.278 116.305C195.673 82.9301 203.456 49.7743 240.705 39.8381C241.671 41.591 241.57 41.209 242.552 43.2996V43.2978ZM233.887 28.8446C210.949 34.4502 197.694 50.9718 191.166 73.5529C186.409 90.0063 186.016 107.91 184.084 124.919C179.08 168.961 167.976 200.362 129.976 229.892C127.186 229.899 126.254 229.988 122.784 229.772C152.757 207.704 163.398 186.464 171.238 158.765C174.48 147.306 176.38 136.087 177.729 124.219C179.709 106.792 180.152 88.6667 185.036 71.7779C191.804 48.3738 208.152 31.5477 232.001 26.2189C233.425 27.9958 232.663 27.0382 233.89 28.8446H233.887ZM225.369 17.8972C197.53 25.0122 180.846 43.8421 175.354 69.8331C172.524 81.9798 171.957 95.2318 171.402 108.255C171.145 114.246 170.893 120.191 170.455 125.701C169.241 141.032 166.623 155.473 161.715 169.07C152.509 194.566 136.336 214.188 113.884 229.067L107.716 228.215C147.732 203.501 160.973 164.37 164.075 125.201C164.534 119.4 164.778 113.724 165.021 108.006C165.592 94.645 166.173 81.0498 169.125 68.3828C176.253 37.8453 197.55 21.3606 222.408 14.5722C224.093 16.2771 223.88 16.1295 225.371 17.8972H225.369ZM215.704 7.92593C183.783 16.5816 165.747 36.4854 159.765 68.2739C157.46 80.5867 158.043 94.1579 157.934 107.069C158.183 130.722 155.104 153.724 146.634 173.954C137.643 195.432 122.575 213.782 98.9645 226.467L94.0416 225.131C116.462 213.25 131.581 194.103 140.909 171.072C149.854 149.74 150.664 129.856 150.854 107.247C150.965 94.0269 151.083 79.9169 153.484 67.0967C159.792 32.0662 183.534 11.5129 212.721 5.22276L215.704 7.92408V7.92593ZM204.224 -1.52501C168.068 8.72304 149.908 36.5906 145.848 68.8164C142.278 92.2648 145.324 115.792 142.667 139.318C140.82 155.676 135.502 170.441 127.734 183.523C118.053 199.827 102.264 214.204 85.0261 222.323L80.4501 220.519C98.839 211.789 112.7 198.181 122.036 181.683C129.362 168.738 133.901 154.011 135.657 138.464C138.326 114.851 135.931 91.416 139.518 67.8661C145.356 29.5365 166.601 6.03464 200.255 -4.37579L204.226 -1.52501H204.224ZM192.18 -9.37988C155.033 4.23191 138.263 30.424 132.759 63.2329C126.413 101.059 136.942 133.224 119.173 171.413C109.788 191.581 92.0838 208.112 71.5601 216.572L67.3531 214.358C89.6371 204.805 105.201 188.224 113.366 168.736C128.439 136.344 118.416 97.3648 125.372 62.5225C132.749 25.5657 154.471 -0.866282 188.468 -11.4594L192.18 -9.37988ZM179.377 -15.742C152.694 -5.43676 131.318 18.4913 122.54 44.9953C116.7 62.6295 115.874 81.4964 115.602 101.099C115.318 121.636 114.851 142.156 107.998 160.957C100.817 182.074 83.3894 201.061 59.6458 209.831L55.1602 206.814C82.7141 196.714 94.5268 177.05 101.3 158.242C107.967 139.951 108.332 120.66 108.292 100.943C108.246 78.2138 110.333 58.8082 116.503 41.9545C125.887 16.3251 148.657 -8.27647 175.395 -17.4211L179.38 -15.7439L179.377 -15.742ZM166.612 -20.4177C154.426 -14.6146 143.885 -7.29853 135.025 1.3719C117.545 18.4747 106.605 40.8381 102.481 67.2203C100.588 79.4113 101.164 91.654 100.891 103.697C100.186 134.696 98.3353 164.001 73.1838 185.8C65.6721 192.31 56.1862 197.882 47.4272 200.98L43.6741 197.723C53.852 193.455 62.7605 188.339 69.2093 182.416C92.7684 160.774 92.8293 135.058 93.5471 103.456C93.8257 91.1964 94.1006 79.1253 96.0583 66.5136C100.363 38.8048 112.416 16.1424 131.059 -1.27222C139.735 -9.37619 149.441 -17.0521 161.219 -22.1595L166.612 -20.4177ZM152.31 -24.2611C114.589 -3.34434 96.11 29.5273 89.5578 66.497C86.707 82.5887 87.4635 99.5679 86.1369 115.805C85.1183 128.297 82.4189 140.239 78.0901 151.238C70.5268 170.465 55.4794 184.132 35.8819 190.295L32.8983 186.999C53.8206 180.27 66.0264 164.438 72.1358 148.911C76.1841 138.619 77.9351 127.103 78.9112 115.152C80.2526 98.7099 79.8264 81.6717 82.7141 65.377C89.3419 27.9755 112.274 -8.07165 147.07 -25.1284C149.756 -24.8959 149.096 -24.8479 152.312 -24.2611H152.31ZM136.589 -26.0842C103.338 -5.95525 84.4836 27.3703 76.6601 66.08C71.3073 92.1024 73.4034 123.527 61.9191 147.509C54.6288 162.733 41.6444 173.077 25.6062 178.12C24.1947 176.319 24.4807 176.807 23.2223 174.805C42.3437 167.99 52.946 153.779 55.9334 144.335C67.1686 122.433 65.2478 89.8697 70.405 64.8032C77.8613 28.553 97.7171 -6.82432 130.183 -26.3167C133.794 -26.4218 133.323 -26.313 136.589 -26.0842ZM119.726 -26.0325C87.4636 -1.44013 72.907 30.6805 64.5743 63.9839C60.6828 79.5405 59.5074 94.2262 56.343 108.641C54.2856 118.009 51.2891 127.373 46.8884 135.781C40.3417 148.293 30.6878 158.694 16.4007 163.853L14.4264 160.126C27.6636 154.783 35.8081 144.666 41.2532 132.82C44.9196 124.843 47.3626 116.08 49.3111 107.463C52.8206 91.9382 55.1529 75.2855 58.3671 62.4321C67.4656 26.0657 86.2624 -5.34634 113.209 -25.4125C116.366 -25.7668 116.475 -25.9162 119.724 -26.0343L119.726 -26.0325ZM101.972 -23.5637C76.6583 -4.07133 62.6571 27.6009 52.7375 59.537C45.296 83.6607 44.0284 105.659 30.2819 127.624C25.1523 135.822 17.9119 142.68 8.57719 146.959L7.17856 143.01C15.5796 138.787 21.0727 131.578 25.3184 124.441C36.5554 105.552 40.1314 78.7397 46.6319 57.6605C56.677 25.0934 72.4679 -2.37194 95.0306 -21.8956C98.1471 -22.8902 98.7892 -22.8939 101.972 -23.5637ZM83.537 -18.1998C66.3419 -2.70038 53.125 18.4674 45.1668 43.2018C42.1832 52.4793 39.1756 62.0963 36.0536 71.1395C28.6821 92.4991 22.0856 112.857 2.74647 126.404L1.84049 121.177C16.5834 110.27 24.3441 85.4413 29.9959 69.0636C33.1603 59.8932 36.4134 50.5566 39.4081 41.5836C47.2094 18.2109 60.3359 -2.22433 74.2854 -14.3083C76.5974 -15.3619 79.3633 -16.7199 83.5333 -18.1979L83.537 -18.1998ZM59.8617 -6.39255C39.5058 12.9208 35.9484 30.9241 28.5253 53.1177C21.6041 73.8113 12.655 92.4622 0.382812 101.23C0.425251 98.4442 0.464 96.8389 0.519355 95.42C11.3062 82.6902 16.9598 67.6004 22.5156 51.935C28.8094 34.1808 35.6753 15.2678 46.929 3.00672C50.4495 -0.067328 56.1603 -3.86837 59.8599 -6.39255H59.8617Z' fill='%2324C27D'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  top: -40px;
  left: 0;
  animation: bobbing 2s ease-in-out infinite;
  z-index: 0;
}

.welcome-section img {
  transition: transform 0.6s ease;
  transform-style: preserve-3d;
}

.welcome-section .col-lg-6:hover img {
  transform: rotateY(360deg);
}

.welcome-section {
  perspective: 1000px;
}
.cta-box a {
  position: relative;
}
button.btn-outline.dark {
  background: #001f52 !important;
  font-size: 22px;
  font-weight: 600;
}

/* Add the shine pseudo-element */
button.btn-outline.dark::after {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.2) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: skewX(-120deg);
  animation: shine 2s ease-in-out infinite;
}

.bob {
  animation: bobbing 2s ease-in-out infinite;
  display: inline-block;
}
@keyframes shine {
  0% {
    left: -75%;
  }
  50% {
    left: 125%;
  }
  100% {
    left: 125%;
  }
}

@keyframes bobbing {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px); /* or +10px if you want it to go down */
  }
}

/* Styled with green gradient + scoped with eightTfour- */
.eightTfour-button {
  position: relative;
  padding: 12px 24px;
  border-radius: 8px;
  border: none;
  color: #fff;
  cursor: pointer;
  background: linear-gradient(45deg, #20d284, #24c07c, #04a35e);
  transition: all 0.2s ease;
}

.eightTfour-button:active {
  transform: scale(0.95);
}

.eightTfour-button:before,
.eightTfour-button:after {
  position: absolute;
  content: "";
  width: 150%;
  left: 50%;
  height: 100%;
  transform: translateX(-50%);
  z-index: -1000;
  background-repeat: no-repeat;
}

.eightTfour-button:hover:before {
  top: -70%;
  background-image: radial-gradient(circle, #04a35e 20%, transparent 20%),
    radial-gradient(circle, transparent 20%, #24c07c 20%, transparent 30%),
    radial-gradient(circle, #20d284 20%, transparent 20%),
    radial-gradient(circle, #24c07c 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, #04a35e 15%, transparent 20%),
    radial-gradient(circle, #24c07c 20%, transparent 20%),
    radial-gradient(circle, #20d284 20%, transparent 20%),
    radial-gradient(circle, #04a35e 20%, transparent 20%),
    radial-gradient(circle, #24c07c 20%, transparent 20%);
  background-size: 10% 10%, 20% 20%, 15% 15%, 20% 20%, 18% 18%, 10% 10%, 15% 15%,
    10% 10%, 18% 18%;
  background-position: 50% 120%;
  animation: eightTfour-greenTopBubbles 0.6s ease;
}
.number_bg {
    font-size: 27px;
    background: linear-gradient(184deg, #24c07c42, transparent);
    padding: 27px;
    width: 52px;
    border-radius: 84px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    font-weight: 600;
    color: #24c07c;
}

.box-why-container {
  position: relative;            /* establish positioning context */
}

.box-why-container:before {
    content: '';
    position: absolute;
    top: 45%;
    left: 0;
    width: 100%;
    height: 2px;
    background: repeating-linear-gradient(
    to right,
    #ebeff2 0,
    #24c07c 7px,
    transparent 5px,
    transparent 12px
  );
    z-index: -1;
    animation: dash-move 0.3s linear infinite;
}

/* move the gradient 12px to loop the dash+gap pattern */
@keyframes dash-move {
  to {
    background-position: 12px center;
  }
}


.box-why-container {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 33px;
}
.box-why {
  box-shadow: rgba(14, 63, 126, 0.06) 0px 0px 0px 1px,
    rgba(42, 51, 70, 0.03) 0px 1px 1px -0.5px,
    rgba(42, 51, 70, 0.04) 0px 2px 2px -1px,
    rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px,
    rgba(42, 51, 70, 0.03) 0px 5px 5px -2.5px,
    rgba(42, 51, 70, 0.03) 0px 10px 10px -5px,
    rgba(42, 51, 70, 0.03) 0px 24px 24px -8px;
  transition: all 168ms ease;
}
.box-why:hover {
  background: linear-gradient(180deg, transparent, #f3fffa);
}

@keyframes eightTfour-greenTopBubbles {
  0% {
    background-position: 5% 90%, 10% 90%, 10% 90%, 15% 90%, 25% 90%, 25% 90%,
      40% 90%, 55% 90%, 70% 90%;
  }

  50% {
    background-position: 0% 80%, 0% 20%, 10% 40%, 20% 0%, 30% 30%, 22% 50%,
      50% 50%, 65% 20%, 90% 30%;
  }

  100% {
    background-position: 0% 70%, 0% 10%, 10% 30%, 20% -10%, 30% 20%, 22% 40%,
      50% 40%, 65% 10%, 90% 20%;
    background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
  }
}

.eightTfour-button:hover::after {
  bottom: -70%;
  background-image: radial-gradient(circle, #20d284 20%, transparent 20%),
    radial-gradient(circle, #24c07c 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, #04a35e 15%, transparent 20%),
    radial-gradient(circle, #04a35e 20%, transparent 20%),
    radial-gradient(circle, #20d284 20%, transparent 20%),
    radial-gradient(circle, #24c07c 20%, transparent 20%),
    radial-gradient(circle, #04a35e 20%, transparent 20%);
  background-size: 15% 15%, 20% 20%, 18% 18%, 20% 20%, 15% 15%, 20% 20%, 18% 18%;
  background-position: 50% 0%;
  animation: eightTfour-greenBottomBubbles 0.6s ease;
}

@keyframes eightTfour-greenBottomBubbles {
  0% {
    background-position: 10% -10%, 30% 10%, 55% -10%, 70% -10%, 85% -10%,
      70% -10%, 70% 0%;
  }

  50% {
    background-position: 0% 80%, 20% 80%, 45% 60%, 60% 100%, 75% 70%, 95% 60%,
      105% 0%;
  }

  100% {
    background-position: 0% 90%, 20% 90%, 45% 70%, 60% 110%, 75% 80%, 95% 70%,
      110% 10%;
    background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
  }
}

/* ================================== End Banner Section ================================== */
#ed-section .col-md-6:first-child {
    border-right: 2px solid #dfdfdf;
}

@media (max-width: 1320px) {
  .outline-text {
    font-size: 96px;
  }
}
@media (max-width: 1200px) {
  .box-why-container {
    grid-template-columns: repeat(3, 1fr);
  }
  .box-why-container:before{
    content: none;
  }
}
@media (max-width: 1024px) {
  :root {
    --fs-38: 33px;
    --section-padding: 60px;
  }
  .svg-container svg {
    width: 55px;
  }
  .description {
    font-size: var(--fs-17);
  }
  .section-title {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
  }
  .navbar {
    padding: 10px 20px;
    justify-content: space-between !important;
  }
  .mobile-only {
    display: block;
  }
  .desk-only {
    display: none;
  }
  /* .menu-btn {
    right: 20px !important;
    position: absolute;
    } */
  .video_overlay .container {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    text-align: start !important;
  }
  .video-container h1 {
    font-size: 33px;
  }
  .video-container {
    height: calc(70vh - var(--header-height));
  }
  svg.icon_before,
  svg.icon_after {
    display: none !important;
  }
  .products-services {
    background-position: right;
  }
  .location_block {
    margin-top: 20px !important;
  }
  .address_card .header {
    border-bottom: 1px solid #e2e2e2;
  }
}

@media (max-width: 990px) {
  .box-why-container {
    grid-template-columns: repeat(2, 1fr);
  }
  .outline-text {
    font-size: 64px;
  }
  .special-numbers {
    flex-direction: column;
  }
  .cta-box {
    padding: 33px !important;
    justify-content: center;
  }
  img#banner-image {
    object-position: 70%;
  }
  .trusted-providers-container {
    gap: 20px;
  }
  .trusted-providers svg {
    height: 60px;
  }
  .trusted-providers {
    padding: 0 8px 8px;
  }
  .special-numbers p {
    font-size: 18px;
    padding-bottom: 11px;
  }
  .special-numbers h5 {
    font-size: 51px;
  }
  .cta-box:before {
    background-size: 120px;
  }
  .cta-section {
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
  }
  button.btn-outline.dark {
    font-size: 18px;
    font-weight: 600;
  }
  .cta-section {
    background-size: 400%;
  }
  :root {
    --fs-46: 33px;
  }
  .control { 
    flex-wrap: wrap;
    margin-bottom: 11px;
}
}
@media (max-width: 767px) {
  #ed-section .col-md-6:first-child {
    border-right: 0;
}
}
@media (max-width: 575px) {
.about-img {
    max-width: 260px;
    width: 100%;
}
}
@media (max-width: 375px) {
  .box-why-container {
    grid-template-columns: repeat(1, 1fr);
  }
}
