@charset "UTF-8";
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins/Poppins-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins/Poppins-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins/Poppins-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Funnel Display';
  src: url('../fonts/funnel_display/FunnelDisplay-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Funnel Display';
  src: url('../fonts/funnel_display/FunnelDisplay-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Funnel Display';
  src: url('../fonts/funnel_display/FunnelDisplay-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/*--------- Abstracts variable ---------- */
:root {
  --white: #ffffff;
  --black: #000000;
  --theme: #F00020;
  --primary: #09090B;
  --secondary: #161B2C;
  --dark: #1A2035;
  --font-heading: 'Funnel Display', sans-serif;
  --font-body: 'Poppins', sans-serif;
  --brand: #FD3A25;
  --color-light-blue: #E9EEFF;
  --neutral-50: #FAFAFA;
  --neutral-100: #F2F5FF;
  --neutral-200: #E4E4E7;
  --neutral-300: #D4D4D8;
  --neutral-400: #A1A1AA;
  --neutral-500: #71717A;
  --neutral-600: #52525B;
  --neutral-700: #3F3F46;
  --neutral-800: #27272A;
  --neutral-900: #18181B;
  --neutral-950: #09090B;
  --color-dark-blue: #161B2C;
  --body: #F2F5FF;
}

/*------------ Core CSS ---------------- */
/*--------- Abstracts variable ---------- */
html,
body,
div,
span,
iframe,
h1,
h2,
h3,
h4,
h6,
p,
a,
img,
sub,
b,
i,
ul,
li,
fieldset,
form,
label,
canvas,
footer,
header,
section {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
}

footer,
header,
section {
  display: block;
}

/* Elements
-------------------------------------------------------------- */
html {
  margin-right: 0 !important;
  scroll-behavior: smooth;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: rgba(22, 27, 44, 0.6);
  background-color: var(--body);
}
body::-webkit-scrollbar {
  width: 0px;
}
body::-webkit-scrollbar-thumb {
  cursor: grab;
  background-color: var(--primary);
}

img {
  max-width: 100%;
  height: auto;
  transform: scale(1);
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

ul,
li {
  list-style-type: none;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

svg path {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

button {
  background: transparent;
  border: 0;
  display: inline-flex;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

/* Since FF19 lowers the opacity of the placeholder by default */
:-ms-input-placeholder {
  color: var(--secondary);
}

b {
  font-weight: bolder;
}

a {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  font-family: "Urbanist", sans-serif;
  color: var(--primary);
}
a:focus, a:hover {
  outline: 0;
}

p {
  display: block;
}

@media (max-width: 991px) {
  br {
    display: none;
  }
}

/* Typography
============================================================== */
/* Heading */
h1,
h2,
h3,
h4,
h6 {
  font-family: var(--font-heading);
  text-rendering: optimizeLegibility;
  font-weight: 400;
  margin-bottom: 0;
  letter-spacing: 0;
  color: var(--secondary);
}

h1 {
  font-size: 64px;
  line-height: 64px;
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  h1 {
    font-size: 36px;
    line-height: 44px;
  }
}

h2 {
  font-size: 48px;
  line-height: 60px;
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  h2 {
    font-size: 32px;
    line-height: 40px;
  }
}

h3 {
  font-size: 40px;
  line-height: 52px;
  letter-spacing: -0.01em;
}
@media (max-width: 767px) {
  h3 {
    font-size: 28px;
    line-height: 36px;
  }
}

h4 {
  font-size: 36px;
  line-height: 48px;
  letter-spacing: -0.01em;
}
@media (max-width: 767px) {
  h4 {
    font-size: 26px;
    line-height: 34px;
  }
}

h6 {
  font-size: 24px;
  line-height: 32px;
}
@media (max-width: 767px) {
  h6 {
    font-size: 20px;
    line-height: 26px;
  }
}

/* Font custom */

.text-display-2 {
  font-size: 96px;
  line-height: 96px;
  letter-spacing: -0.03em;
}
@media (max-width: 991px) {
  .text-display-2 {
    font-size: 60px;
    line-height: 66px;
  }
}
@media (max-width: 767px) {
  .text-display-2 {
    font-size: 32px;
    line-height: 40px;
  }
}

.text-body-1 {
  font-size: 18px;
  line-height: 28px;
}

.text-body-3 {
  font-size: 14px;
  line-height: 20px;
}
/* General
============================================================== */
/* Margin */
.mb-2 {
  margin-bottom: 2px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-18 {
  margin-bottom: 18px !important;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-21 {
  margin-bottom: 21px !important;
}

.mb-24 {
  margin-bottom: 24px !important;
}

/* Padding */

/* Gap */
.gap-2 {
  gap: 2px !important;
}

.gap-8 {
  gap: 8px;
}

.gap-10 {
  gap: 10px !important;
}

.gap-12 {
  gap: 12px !important;
}

.gap-15 {
  gap: 15px;
}

.gap-20 {
  gap: 20px !important;
}

/* Spacing */
.flat-spacing {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 991px) {
  .flat-spacing {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media (max-width: 767px) {
  .flat-spacing {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

/* Orther */
.text-white {
  color: var(--white) !important;
}

.text-secondary {
  color: var(--secondary) !important;
}

.text-gradient-2 {
  background: linear-gradient(90deg, #FFF 66.41%, #2E499E 113.82%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  width: -moz-max-content;
}

.z-5 {
  z-index: 5;
}
@media (max-width: 991px) {
  .lg-mb-24 {
    margin-bottom: 24px;
  }
}

.row {
  margin-right: -12px;
  margin-left: -12px;
}
.row > * {
  padding-left: 12px;
  padding-right: 12px;
}

.container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-right: 12px;
  padding-left: 12px;
  width: 1320px;
  max-width: 100%;
}

/*--------- Abstracts variable ---------- */
header {
  position: sticky;
  z-index: 100;
  transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.tf-header {
  padding-top: 48px;
  /* margin-bottom: -116px; */
  position: absolute;
  width: 100%;
  z-index: 1;
}
.tf-header .header-inner {
  max-width: 739px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 25px 8px 25px;
  border-radius: 25px;
  background: rgb(213 213 213 / 9%);
  backdrop-filter: blur(44px);
}
.tf-header.header2 .header-inner {
  max-width: 900px;
}
@media (max-width: 991px) {
  .tf-header .header-inner {
    max-width: unset !important;
    margin: 0 32px;
  }
}
@keyframes iconBounce {
  0%, 100%, 20%, 50%, 80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-8px);
    -ms-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  60% {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}
.effectFade {
  opacity: 0;
}

.effectFade {
  will-change: transform, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

form {
  position: relative;
  z-index: 30;
}
form textarea,
form input[type=text],
form input[type=tel] {
  outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  width: 100%;
  padding: 0 0 11px 0px;
  border: 0;
  border-bottom: 1px solid var(--neutral-300);
  background-color: transparent;
  color: #fff;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
form button {
  background-color: transparent;
  overflow: hidden;
  padding: 0;
}
form textarea {
  height: 150px;
  border-radius: 32px;
  resize: none;
}

.form-contact {
  padding: 56px;
  border-radius: 40px;
  background: rgba(233, 237, 255, 0.03);
  -webkit-backdrop-filter: blur(32.5px);
  backdrop-filter: blur(32.5px);
  box-shadow: 0px 7.77px 16px 0px rgba(0, 0, 0, 0.0588235294), 0px 3px 3px 0px rgba(0, 0, 0, 0.1019607843), 0px -8px 0px 0px rgba(0, 0, 0, 0.0509803922) inset, 0px 4px 0px 0px rgba(255, 255, 255, 0.6) inset;
}
.form-contact .heading {
  margin-bottom: 35px;
  color: #fff;
}
.form-contact label {
  color: #fff;
}
.form-contact textarea {
  height: 80px;
  border-radius: 0;
}

/*--------- Abstracts variable ---------- */
.tf-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: var(--white);
  border-radius: 12px;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  padding: 10px 20px;
  background: #F00020;
  border: 1px solid transparent;
  overflow: hidden;
}
.tf-btn:hover {
  border-color: #fff;
  background: transparent;
  color: #fff;
}
.tf-btn.hover-dark:hover {
  border-color: var(--theme) !important;
  color: var(--theme);
}
@media (max-width: 480px) {
  .tf-btn {
    width: 100%;
  } 
}
.tf-btn-2 {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: var(--white);
  border-radius: 12px;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  padding: 10px 20px;
  color: var(--primary);
  background: radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #F5F5F5, #F5F5F5);
  border: 1px solid transparent;
  overflow: hidden;
}
.tf-btn-2:hover {
  border-color: #fff;
  background: transparent;
  color: #fff;
}

/*--------- Abstracts variable ---------- */
.heading-section .heading-sub {
  display: flex;
  position: relative;
  width: max-content;
  border-radius: 8px;
  color: var(--theme);
  padding: 6px 16px 6px 30px;
  background: radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #F5F5F5, #F5F5F5);
  box-shadow: 0px -3px 0px 0px #E9E9E9 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.6980392157) inset, 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706);
  margin-bottom: 32px;
}
.heading-section .heading-sub::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 99px;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--brand);
}
.heading-section .heading-title {
  font-weight: 500;
  font-size: 48px;
  line-height: 1.1;
  /* letter-spacing: -0.03em; */
  font-family: var(--font-heading);
  color: #161B2C;
}
@media (max-width: 767px) {
  .heading-section .heading-title {
    font-size: 30px;
    line-height: 1.2;
  }
  .heading-section .heading-title br {
    display: none;
  }
}
.heading-section.center {
  text-align: center;
  position: relative;
  z-index: 999;
}
.heading-section.center .heading-sub {
  margin-left: auto;
  margin-right: auto;
}
.heading-section.mb-48 {
  margin-bottom: 48px;
}
.heading-section.mb-64 {
  margin-bottom: 64px;
}
@media (max-width: 767px) {
  .heading-section.mb-48 {
    margin-bottom: 20px;
  }
  .heading-section.mb-64 {
    margin-bottom: 24px;
  }
}

.section-hero {
  padding: 16px 16px 0;
  min-height: 850px;
  background-color: #1A2035;
  position: relative;
}
.section-hero .content-wrap {
  padding: 180px 0 0;
}
.section-hero .content-wrap .title {
  margin-bottom: 33px;
}
.section-hero .content-wrap .title .title2 {
  /* margin-top: 13px; */
  font-size: 66px;
}
@media (min-width: 1199px) and (max-width: 1399px){
  .section-hero .content-wrap .title .title2 {
    font-size: 56px;
  } 
}
@media (min-width: 992px) and (max-width: 1199px){
  .section-hero .content-wrap .title .title2 {
    font-size: 48px;
  } 
}
@media (min-width: 768px) and (max-width: 992px){
  .section-hero .content-wrap .title .title2 {
    font-size: 42px;
  } 
}
@media (max-width: 768px){
  .section-hero .content-wrap .title .title2 {
    font-size: 36px;
  }
}
.section-hero .content-wrap .text {
  margin-bottom: 24px;
  color: #fff;
}
.section-hero .content-wrap .bot-btns {
  display: flex;
  gap: 30px;
  margin-top: 40px;
  justify-content: center;
  align-items: center;
}
.section-hero .scroll-more {
  position: relative;
  margin-top: 60px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 100%;
  border-radius: 40px 40px 0 0;
}
@media (min-width: 992px) {
  .section-hero .scroll-more { 
    width: 70%;
  }
}
.section-hero .scroll-more img {
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}
@media (max-width: 991px) {
  .section-hero {
    min-height: unset;
  }
}
@media (max-width: 767px) {
  .section-hero .content-wrap {
    padding: 125px 0 0;
  }
  .section-hero .content-wrap .bot-btns {
    flex-direction: column;
  }
}

/* .section-about-us .heading-section {
margin-bottom: -17px;
} */
/* .section-about-us .col-left {
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
height: 100%;
text-align: center;
border-radius: 40px;
padding: 80px 0 0px;
overflow: hidden;
} */
/* .section-about-us .col-left img {
width: 100%;
} */
.section-about-us .review-box {
  /* background-color: var(--neutral-100);
  border-radius: 40px; */
  /* padding: 48px 40px 34px; */
  /* box-shadow: 0px 7.77px 2.21px 0px rgba(0, 0, 0, 0.0588235294), 0px 3px 3px 0px rgba(0, 0, 0, 0.1019607843), 0px -8px 0px 0px rgba(0, 0, 0, 0.0509803922) inset, 0px 4px 0px 0px rgba(255, 255, 255, 0.6) inset; */
}
.section-about-us .review-box .desc {
  margin-bottom: 40px;
  margin-top: 20px;
}
@media (max-width: 1439px) {
  .section-about-us {
    min-height: 100vh;
  }
}
@media (max-width: 767px) {
  /* .section-about-us .mission-box,
  .section-about-us .review-box {
  padding-left: 24px;
  padding-right: 24px;
  } */
}
.light-box {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 891px;
  height: 350px;
  clip-path: polygon(14.2% 0%, 85.8% 0%, 100% 100%, 0% 100%);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0) 100%);
  backdrop-filter: blur(56px);
}

.cursor-trail {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 9999;
}
@media (max-width: 1199px) {
  .cursor-trail {
    display: none;
  }
}
.section-faqs {
  background-color: #131827;
}

.section-contact {
  position: relative;
  padding: 80px 0;
  background-color: #1A2035;
}
.section-contact .form-contact {
  margin-left: 8px;
  margin-right: -8px;
}
.section-contact .col-left {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  /* padding: 72px 0; */
}
.section-contact .contact-item {
  display: flex;
  align-items: center;
  gap: 16px;
}
.section-contact .contact-item .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  font-size: 28px;
  border-radius: 16px;
  color: var(--theme);
  background: linear-gradient(0deg, #F5F5F5, #F5F5F5), radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%);
  box-shadow: 0px -3px 0px 0px #E9E9E9 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.6980392157) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706);
}
.section-contact .contact-item .title,
.section-contact .contact-item .text {
  color: #fff;
}
@media (max-width: 1199px) {
  .section-contact .form-contact {
    margin-left: 0;
    margin-right: 0;
    padding: 30px;
  }
  .section-contact .form-contact .heading {
    margin-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .section-contact {
    padding: 24px 12px;
  }
  .section-contact .col-left {
    padding: 0 0 24px 0;
  }
  .section-contact .form-contact {
    padding: 18px;
    border-radius: 24px;
  }
}

.features-wrap {
  display: flex;
  align-items: center;
}
.features-wrap .features-col {
  display: grid;
  gap: 32px;
  width: 32%;
}
.features-col .overflow-hidden {
  overflow: visible !important;
}
@media (max-width: 991px) {
  .features-wrap {
    flex-direction: column;
  }
  .features-wrap .features-center {
    display: none;
  }
  .features-wrap .features-col {
    width: 100%;
    gap: 24px;
  }
}

.side-line-main {
  position: absolute;
  top: 16%;
  left: 0;
  right: 0;
  bottom: 15%;
  z-index: 0;
}
.side-line-main .side-line-wrap {
  margin-left: -20px;
  margin-right: -20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.side-line-main div:not(.link-break-center) {
  height: 100%;
}
.side-line-main .link-break-line {
  width: 66px;
  border: 1px solid #D4D4D8;
  height: 100%;
  border-radius: 0px 20px 20px 0px;
  border-left: 0;
  position: relative;
  overflow: hidden;
}
.side-line-main .link-break-line::after {
  content: "";
  position: absolute;
  inset: 0 1px 1.5px 0px;
  background: var(--body);
  border-radius: 0px 20px 20px 0px;
}
.side-line-main .link-break-line.right {
  transform: rotate(180deg);
}
.side-line-main .link-break-line .item {
  position: absolute;
  left: 0;
  right: 0;
  margin-right: -1px;
  width: 100%;
  animation-iteration-count: infinite;
  animation-duration: 4s;
  animation-delay: 1.3s;
}
.side-line-main .link-break-line .item.top {
  background: radial-gradient(circle at top right, var(--brand) 0%, transparent 90%);
  animation-name: lineRunTop;
}
.side-line-main .link-break-line .item.bottom {
  background: radial-gradient(circle at bottom right, var(--brand) 0%, transparent 90%);
  animation-name: lineRunBottom;
}
.side-line-main .link-break-center {
  border: 1.5px solid #D4D4D8;
  width: 100%;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 1;
}
.side-line-main .link-break-center::before, .side-line-main .link-break-center::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50px;
  background: #D5D0D4;
  z-index: 2;
}
.side-line-main .link-break-center::before {
  left: 60px;
}
.side-line-main .link-break-center::after {
  right: 60px;
}
.side-line-main .simu-electric {
  position: absolute;
  height: 1.5px;
  width: 50px;
  top: 50%;
  transform: translateY(-50%);
}
.side-line-main .simu-electric.left {
  background: linear-gradient(to right, var(--brand) 0%, transparent 100%);
  animation-name: left50To0;
  animation-duration: 4s;
  animation-iteration-count: infinite;
}
.side-line-main .simu-electric.right {
  background: linear-gradient(to left, var(--brand) 0%, transparent 100%);
  animation-name: right50To0;
  animation-duration: 4s;
  animation-iteration-count: infinite;
}

@keyframes lineRunBottom {
  0% {
    bottom: 50%;
    height: 0px;
  }
  30% {
    height: 66px;
  }
  100% {
    bottom: -30%;
  }
}
@keyframes lineRunTop {
  0% {
    top: 50%;
    height: 0px;
  }
  30% {
    height: 66px;
  }
  100% {
    top: -30%;
  }
}
@keyframes left50To0 {
  0% {
    left: 50%;
  }
  100% {
    left: -10%;
  }
}
@keyframes right50To0 {
  0% {
    right: 50%;
  }
  100% {
    right: -10%;
  }
}

/*-- Button Go Top --*/
#goTop {
  position: fixed;
  padding: 0;
  bottom: 40px;
  right: 20px;
  width: 38px;
  height: 38px;
  background: var(--black);
  color: var(--white);
  font-size: 20px;
  text-align: center;
  line-height: 50px;
  cursor: pointer;
  border: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
  border-radius: 99px;
  box-shadow: 0px 4px 20px 0px rgba(255, 255, 255, 0.1019607843);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#goTop .border-progress {
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border-radius: 99px;
  border: 1px solid var(--brand);
  mask-image: conic-gradient(var(--brand) var(--progress-angle, 0deg), transparent 0);
  -webkit-mask-image: conic-gradient(var(--brand) var(--progress-angle, 0deg), transparent 0);
  content: "";
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#goTop .icon {
  font-size: 22px;
  color: var(--white);
  aspect-ratio: 1;
}
#goTop .ic-wrap {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  animation: iconBounce 2s linear 0s infinite;
  display: flex;
}
#goTop:hover {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.5);
}
@media (min-width: 992px) {
  #goTop {
    right: 40px;
  }
}

.features-item {
  padding: 32px;
  border-radius: 32px;
  background-color: var(--neutral-100);
  box-shadow: 0px 7.77px 16px 0px rgba(0, 0, 0, 0.0588235294), 0px 3px 3px 0px rgba(0, 0, 0, 0.1019607843), 0px -8px 0px 0px rgba(0, 0, 0, 0.0509803922) inset, 0px 4px 0px 0px rgba(255, 255, 255, 0.6) inset;
}
.features-item .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  font-size: 25px;
  color: var(--white);
  margin-bottom: 32px;
  border-radius: 16px;
  background-color: #19275a;
  box-shadow: 0px -3px 0px 0px #1A2035 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.3019607843) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706), 0px 12.52px 10.02px 0px rgba(0, 0, 0, 0.1333333333), 0px 22.34px 17.87px 0px rgba(0, 0, 0, 0.1411764706), 0px 41.78px 33.42px 0px rgba(0, 0, 0, 0.1490196078), 0px 100px 80px 0px rgba(0, 0, 0, 0.1490196078);
}
.features-item .title {
  margin-bottom: 8px;
  font-size: 22px;
  font-weight: 500;
}
.features-item.style-2 {
  padding: 40px;
}
.features-item.style-2 .icon {
  width: 80px;
  height: 80px;
  margin-bottom: 40px;
}
@media (max-width: 991px) {
  .features-item {
    padding: 24px !important;
    border-radius: 24px;
  }
}

.features-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 208px;
  height: 160px;
  border-radius: 32px;
  background: var(--theme);
  /* box-shadow: 0px -3px 0px 0px rgba(0, 0, 0, 0.0588235294) inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.6) inset, 0px 3.44px 5.57px 0px rgba(0, 0, 0, 0.0862745098), 0px 22.91px 37.08px 0px rgba(255, 59, 0, 0.1647058824), 0px 76px 123px 0px rgba(255, 59, 0, 0.0509803922), 0px 5.05px 8.18px 0px rgba(255, 59, 0, 0.1019607843), 0px 16.98px 27.47px 0px rgba(255, 59, 0, 0.0470588235), 0px 56px 83px 0px rgba(255, 59, 0, 0.2509803922), 0px 14px 34px 0px rgba(255, 59, 0, 0.2509803922), 0px 1px 2px 0px rgba(255, 59, 0, 0.4); */
}
.features-center img {
  width: 80px;
}
.features-center span {
  font-size: 32px;
  margin-top: 12px;
  font-family: var(--font-heading);
  color: #fff;
}

.nice-select .list:hover .option:not(:hover) {
  background-color: transparent !important;
}

/*-- CSS Custom --*/

.accordion-asked {
  display: grid;
  gap: 16px;
}
.accordion-asked .accordion-asked-item {
  padding: 24px 40px;
  border-radius: 24px;
  background-color: rgba(233, 238, 255, 0.05);
  z-index: 999;
}
.accordion-asked .accordion-button {
  display: flex;
  align-items: center;
  color: #fff;
  justify-content: space-between;
  gap: 16px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.accordion-asked-item:hover .accordion-button {
  color: var(--brand);
}
.accordion-asked-item:hover .right-icon {
  background-color: var(--theme);
}
.accordion-asked .accordion-button::after {
  display: none;
}
.accordion-asked .accordion-button span {
  position: relative;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 50%;
  background: #262F4C;
  /* box-shadow: 0px -3px 0px 0px #080808 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.3019607843) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706); */
}
.accordion-asked .accordion-button span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 11px;
  height: 1px;
  background-color: var(--white);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.accordion-asked .accordion-button span::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1px;
  height: 11px;
  background-color: var(--white);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.accordion-asked .accordion-button:not(.collapsed) span::after {
  opacity: 0;
}
.accordion-asked .accordion-body {
  padding-top: 32px;
  position: relative;
  color: #fff;
}
.accordion-asked .accordion-body::before {
  position: absolute;
  content: "";
  top: 14px;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(212, 212, 216, 0) 0%, #D4D4D8 50%, rgba(212, 212, 216, 0) 100%);
}
@media (max-width: 767px) {
  .accordion-asked .accordion-asked-item {
    padding: 24px 20px;
  }
}

footer {
  position: relative;
}
footer .footer-bottom {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 0;
}
footer .footer-bottom > * {
  width: 100%;
}
@media (max-width: 767px) {
  footer .footer-bottom {
    flex-wrap: wrap;
    gap: 12px;
  }
  footer .footer-bottom > * {
    justify-content: center !important;
  }
}

.bg-middle {
  background-color: #1A2035;
}
.fc-primary {
  color: #F00020;
}
.section-contact .contact-item .content,
.section-contact .contact-item .content a {
  color: #fff;
}

.fc-offwhite {
  color: var(--color-light-blue);
}

.info {
  display: flex;
  align-items: center;
  gap: 15px;
}
.info .contact-link a {
  color: #fff;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 157.4%;
  display: flex;
  gap: 10px;
}
.info .contact-link a:hover {
  color: var(--theme);
}
.rating-area {
  display: flex;
  align-items: center;
  gap: 15px;
}
.rating-area .content span {
  color: #fff;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 15px;
  line-height: 1.2;
  text-align: start;
  display: block;
}
.gap-2 {
  gap: .5rem !important;
}
label span {
  color: red;
}

[type="submit"]:hover {
  border-color: var(--theme) !important;
  color: var(--theme);
}
.form-privacy {
  font-size: 14px;
  color: #fff;
  text-align: center;
  margin-top: 14px;
}

.contact-container {
  position: fixed;
  right: 0;
  bottom: 20px;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  z-index: 1000;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}
.call-us, .whatsapp-us {
  background-color: #fff;
  border: 1px solid #eee;
  border-radius: 18px 0 0 18px;
  max-width: 54px;
  margin-bottom: 10px;
  text-align: center;
  padding: 5px 6px;
  transition: max-width 0.5s ease-in-out, opacity 0.5s ease-in-out;
  white-space: nowrap;
  overflow: hidden;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
}

.call-us a, .whatsapp-us a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: var(--bs-body-color);
}
.call-us:hover, .whatsapp-us:hover {
  max-width: 255px;
}
.chat-with-us p {
  margin-bottom: 0;
  line-height: 20px;
  font-weight: 500;
  font-size: 16px;
}

@media (max-width: 575px) {
  .call-us:hover, .whatsapp-us:hover{
    max-width: 50px !important;
  }
}
.call-us svg,
.whatsapp-us svg {
  width: 30px !important;
  margin-right: 10px;
  margin-left: 6px;
}
.error {
  color: red;
  font-size: 12px;
  margin-top: 5px;
  display: none;
}
.popup {
  display: none;
  position: fixed;
  z-index: 9999;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgb(0 0 0 / .4);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}
.popup-content {
  margin: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 12px;
  /* background-color: #141414; */
  /* padding: 25px; */
}

@media(min-width:768px) and (max-width:1200px) {
  .popup-content {
    width: 450px
  }
}
@media(min-width: 1200px) {
  .popup-content {
    width: 32%;
  }
}
@media(max-width: 547px) {
  .popup-content {
    width: 95%
  }
}
.form-trigger {
  cursor: pointer
}
.close {
  color: #ddd;
  z-index: 999;
  float: right;
  font-size: 35px;
  font-weight: 400;
  cursor: pointer;
  position: relative;
  cursor: pointer;
  top: 20px;
  right: 45px;
}
.close:hover{
  color: #fff;
}

#popupFormContainer .form-contact .heading {
  font-size: 24px;
}
#popupFormContainer .form-contact {
  padding: 25px;
  background-color: #1A2035;
}
#popupFormContainer .form-contact .heading {
  margin-bottom: 20px;
}
.rightimg-content h2 {
  color: #fff !important;
}


.services {
  background: #131827;
}

.services .services-main-box {
  margin-top: 50px;
}

.services .services-main-box .row {
  row-gap: 40px;
}

.services .services-main-box .services-box {
  position: relative;
  border-radius: 24px;
  background: rgba(233, 238, 255, 0.05);
  padding: 45px 20px;
  transition: 0.3s ease all;
  border: 1px solid transparent;
  overflow: hidden;
  height: 100%;
  z-index: 999;
}

.services .services-main-box .services-box::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(90deg, #F00020, transparent, #F00020);
  background-size: 200% 200%;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.services .services-main-box .services-box:hover::before {
  opacity: 1;
  animation: borderMove 3s linear infinite;
}

@keyframes borderMove {
  0% {
    background-position: 0% 50%;
  }
  
  100% {
    background-position: 200% 50%;
  }
}

.services .services-main-box .services-box .service-icon {
  height: 88px;
  width: 88px;
  background: rgba(240, 0, 32, 0.2);
  border-radius: 50%;
  transition: 0.3s ease all;
}

.services .services-main-box .services-box .service-icon img {
  transition: transform 0.5s linear;
}

/* .services .services-main-box .services-box .service-content p {
opacity: 0.6;
} */

.services .services-main-box .services-box .service-link {
  width: 145px;
  height: 45px;
  background: #F00020;
  color: #fff;
  border-radius: 12px;
  margin-top: 20px;
  transition: 0.3s ease all;
  border: 1px solid var(--theme);
}
.services .services-main-box .services-box .service-link img {
  margin-left: 10px;
}
.services .services-main-box .services-box:hover .service-icon img {
  transform: rotate(360deg);
}

.services .services-main-box .services-box:hover .service-link {
  background-color: transparent;
}

.services-box .service-content h4 {
  font-size: 22px;
  letter-spacing: normal;
}

.animate-circle {
  width: 861px;
  height: 861px;
  border-radius: 50%;
  opacity: 0;
  background: #3E4B74;
  filter: blur(150px);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%) scale(0.6);
  transition: transform 1.8s cubic-bezier(0.19, 1, 0.22, 1), opacity 1.8s ease;
  pointer-events: none;
  /* prevent blocking */
}
.iti {
  display: block !important;
}
.iti--separate-dial-code .iti__selected-dial-code {
  color: #fff;
}
.iti__arrow {
  border-top-color: #fff !important;
}
.iti__selected-flag {
  position: relative;
  top: -8px;
}

.section-faqs .animate-circle {
  transform: translate(-50%, -50%);
  opacity: 0.5;
  z-index: 1;
}
.threebox-tabs .tab-content .row {
  row-gap: 30px;
}

.packages .packages-box {
  border-radius: 24px;
  padding: 35px 40px;
  transition: 0.3s ease all;
  height: 100%;
  background-color: var(--neutral-100);
  box-shadow: 0px 7.77px 16px 0px rgba(0, 0, 0, 0.0588235294), 0px 3px 3px 0px rgba(0, 0, 0, 0.1019607843), 0px -8px 0px 0px rgba(0, 0, 0, 0.0509803922) inset, 0px 4px 0px 0px rgba(255, 255, 255, 0.6) inset;
}

@media (max-width: 768px) {
  .packages .packages-box {
    padding: 25px;
  }
}

.packages .packages-box:hover {
  box-shadow: 0 0 8px 0.5px rgba(240, 0, 32, 0.1019607843);
}
.packages .packages-box .package-price {
  padding: 10px 0;
  border-top: 1px solid;
  border-color: rgba(22, 27, 44, 0.2);
  margin-top: 15px;
  margin-bottom: 10px;
}
.packages .packages-box .package-price h3 {
  font-size: 30px;
}
.packages .packages-box .package-price h3 sub {
  position: relative;
  top: 0;
  font-size: 20px;
}
.packages .packages-box .package-price .pkg-text p:last-child {
  margin-bottom: 20px;
  color: rgba(22, 27, 44, 0.6);
}
@media (min-width: 768px) {
  .basic-desc {
    margin-bottom: 68px !important;
  }
}
.packages .packages-box .package-list .tick-icon {
  position: relative;
  top: 5px;
}
.packages .packages-box .package-list span {
  color: rgba(22, 27, 44, 0.6);
  position: relative;
  width: 100%;
  padding-right: 0px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

/* .packages .packages-box .package-list span img{
position:absolute;
right: -15px;
top:0;
} */

.packages .packages-box .pckg-img-logo {
  margin-bottom: 20px;
  display: flex;
  gap: 20px;
  align-items: center;
  
}

.packages .packages-box .pckg-img-logo img {
  height: 50px;
  width: 50px;
  object-fit: contain;
  background: #fff;
  filter: none;
  border-radius: 50%;
  padding: 10px;
  filter: none !important;
}
.text-size {
  font-size: 14px;
}
.fc-darkblue {
  color: var(--color-dark-blue);
}
.text-justify {
  text-align: justify !important;
}
.gap-25 {
  gap: 25px;
}

@media (max-width: 575px) {
  .light-box {
    width: 350px;
  } 
  .tf-header .header-inner {
    margin: 0 15px;
  }
  .tf-header {
    padding-top: 25px;
  }
  .accordion-button {
    font-size: 16px;
  }
  .accordion-asked {
    margin-bottom: 20px;
  }
}
@media (max-width: 992px) {
  .right-image-with-text {
    padding: 60px 0;
  }
}
