/*-----------------------------------------------------------------------------------

    Theme Name: Bexon - Corporate Business HTML5 Template
    Author: Theme-Junction
    Author URI: https://themeforest.net/user/theme-junction
    Description: Bexon - Corporate Business HTML5 Template
    Version: 1.0

-----------------------------------------------------------------------------------


/************ TABLE OF CONTENTS ***************

  Theme Default CSS
	Buttons CSS
	Header CSS
	Footer CSS
	Search CSS
	Hamburger CSS
	Preloader CSS
	Heading CSS
	Hero CSS
	Choose CSS
	Client CSS
	About CSS
	Services CSS
	Marquee CSS
	Project CSS
	Testimonial CSS
	Faq CSS
	Blog CSS
	CTA CSS
	Countup CSS
	Working process CSS
	Contact CSS
	Slider CSS
	Team CSS
	Team details
	Breadcrumb CSS
	Pricing CSS
	Blog Details CSS
	Error 404
	Animate CSS

**********************************************/
/**----------------------------------------
START: Theme Default CSS
----------------------------------------*/

html {
  scroll-behavior: smooth;
}
@import url("https://fonts.googleapis.com/css2?family=Mona+Sans:ital,wght@0,200..900;1,200..900&amp;display=swap");
:root {
  /**
     @Font-Family Declaration
   */
  --tj-ff-body: "Mona Sans", sans-serif;
  --tj-ff-heading: "Mona Sans", sans-serif;
  --tj-ff-fontawesome: "Font Awesome 6 Pro";
  /**
     @Font-weight Declaration
   */
  --tj-fw-normal: normal;
  --tj-fw-thin: 100;
  --tj-fw-elight: 200;
  --tj-fw-light: 300;
  --tj-fw-regular: 400;
  --tj-fw-medium: 500;
  --tj-fw-sbold: 600;
  --tj-fw-bold: 700;
  --tj-fw-ebold: 800;
  --tj-fw-black: 900;
  /**
     @Font-Size Declaration
   */
  --tj-fs-body: 16px;
  --tj-fs-p: 16px;
  --tj-fs-h1: 74px;
  --tj-fs-h2: 48px;
  --tj-fs-h3: 32px;
  --tj-fs-h4: 24px;
  --tj-fs-h5: 20px;
  --tj-fs-h6: 18px;
  /**
     @Color Declaration
   */
  --tj-color-common-white: #ffffff;
  --tj-color-common-black: #000000;
  --tj-color-heading-primary: #0c1e21;
  :root {
    --tj-color-text-body: #4a4354;
    --tj-color-text-body-2: #9b94a8;
    --tj-color-text-body-3: #6f687a;
    --tj-color-text-body-4: #21103a;
    --tj-color-text-body-5: rgba(255, 255, 255, 0.8);
  }
  --tj-color-theme-primary: #21103a;
  --tj-color-theme-bg: #f7f4fb;
  --tj-color-theme-bg-2: #eee8f7;
  --tj-color-theme-bg-3: #21103a;

  --tj-color-theme-dark: #21103a;
  --tj-color-theme-dark-2: #2b1450;
  --tj-color-theme-dark-3: #4a3268;
  --tj-color-theme-dark-4: #75658a;
  --tj-color-theme-dark-5: #8b8298;
  --tj-color-red-1: #ff0000;
  --tj-color-grey-1: #ecf0f0;
  --tj-color-grey-2: #a9b8b8;
  --tj-color-grey-3: rgba(255, 255, 255, 0.1019607843);
  --tj-color-border-1: #c9d1d1;
  --tj-color-border-2: #313d3d;
  --tj-color-border-3: rgba(255, 255, 255, 0.1490196078);
  --tj-color-border-4: rgba(255, 255, 255, 0.2);
  --tj-color-border-5: rgba(30, 138, 138, 0.1490196078);
}

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.site-main {
  position: relative;
}

body {
  font-family: var(--tj-ff-body);
  font-size: var(--tj-fs-body);
  font-weight: normal;
  color: var(--tj-color-text-body);
  background-color: var(--tj-color-grey-1);
  line-height: 1.5;
}

a {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--tj-ff-heading);
  color: var(--tj-color-heading-primary);
  margin-top: 0px;
  font-weight: var(--tj-fw-medium);
  line-height: 1.2;
  letter-spacing: -0.03em;
}

h1 {
  font-size: var(--tj-fs-h1);
  line-height: 1.108;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  h1 {
    font-size: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  h1 {
    font-size: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  h1 {
    font-size: 45px;
  }
}

h2 {
  font-size: var(--tj-fs-h2);
  line-height: 1.125;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  h2 {
    font-size: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  h2 {
    font-size: 36px;
  }
}
@media (max-width: 575px) {
  h2 {
    font-size: 30px;
  }
}

h3 {
  font-size: var(--tj-fs-h3);
  line-height: 1.25;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  h3 {
    font-size: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  h3 {
    font-size: 25px;
  }
}

h4 {
  font-size: var(--tj-fs-h4);
  line-height: 1.333;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  h4 {
    font-size: 22px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  h4 {
    font-size: 20px;
  }
}

h5 {
  font-size: var(--tj-fs-h5);
  line-height: 1.4;
}

h6 {
  font-size: var(--tj-fs-h6);
  line-height: 1.444;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-size: inherit;
  color: inherit;
  font-weight: inherit;
  line-height: inherit;
  display: block;
}

h1:hover a,
h2:hover a,
h3:hover a,
h4:hover a,
h5:hover a,
h6:hover a {
  font-size: inherit;
  color: inherit;
  font-weight: inherit;
}

ul {
  margin: 0px;
  padding: 0px;
}

a,
.btn,
button,
span,
p,
input,
select,
textarea,
li,
svg path,
h1,
h2,
h3,
h4,
h5,
h6 {
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}

a:focus,
button:focus,
button:focus-visible {
  text-decoration: none;
  outline: none;
  -webkit-box-shadow: 0 0 0;
  box-shadow: 0 0 0;
}

a:focus,
a:hover {
  color: inherit;
  text-decoration: none;
}

a,
button {
  color: var(--tj-color-theme-primary);
  outline: none;
  border: none;
  background: transparent;
  padding: 0;
}

.uppercase {
  text-transform: uppercase;
}

.capitalize {
  text-transform: capitalize;
}

select,
.nice-select,
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="email"],
input[type="url"],
textarea {
  outline: none;
  background-color: var(--tj-color-common-white);
  height: auto;
  width: 100%;
  font-size: var(--tj-fs-body);
  border: 1px solid var(--tj-color-border-1);
  color: var(--tj-color-text-body);
  padding: 10px 15px;
  -webkit-box-shadow: 0 0 0;
  box-shadow: 0 0 0;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

* {
  scrollbar-width: thin;
  scrollbar-color: var(--tj-color-theme-primary) var(--tj-color-common-white);
}

::-webkit-scrollbar {
  height: 4px;
  width: 6px;
}

::-webkit-scrollbar-thumb {
  background: var(--tj-color-theme-primary);
  -webkit-border-radius: 1ex;
  -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.75);
}

::-webkit-scrollbar-corner {
  background: transparent;
}

*::-moz-selection {
  background: var(--tj-color-common-black);
  color: var(--tj-color-common-white);
  text-shadow: none;
}

::-moz-selection {
  background: var(--tj-color-common-black);
  color: var(--tj-color-common-white);
  text-shadow: none;
}

::selection {
  background: var(--tj-color-common-black);
  color: var(--tj-color-common-white);
  text-shadow: none;
}

*::-webkit-input-placeholder {
  color: var(--tj-color-text-body);
  font-size: var(--tj-fs-body);
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
*::-moz-placeholder {
  color: var(--tj-color-text-body);
  font-size: var(--tj-fs-body);
  opacity: 1;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
*:-ms-input-placeholder {
  color: var(--tj-color-text-body);
  font-size: var(--tj-fs-body);
  opacity: 1;
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
*::-ms-input-placeholder {
  color: var(--tj-color-text-body);
  font-size: var(--tj-fs-body);
  opacity: 1;
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
*::placeholder {
  color: var(--tj-color-text-body);
  font-size: var(--tj-fs-body);
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

/**
 	Common Classes CSS
*/
table {
  border-collapse: separate;
  border-spacing: 0;
}

img {
  max-width: 100%;
}

.w-img img {
  width: 100%;
}

.m-img img {
  max-width: 100%;
}

.fix {
  overflow: hidden;
}

.section-gap {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-gap {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .section-gap {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}

.section-gap-2 {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-gap-2 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .section-gap-2 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.gap-top,
.section-top-gap {
  padding-top: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .gap-top,
  .section-top-gap {
    padding-top: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .gap-top,
  .section-top-gap {
    padding-top: 70px;
  }
}

.gap-bottom,
.section-bottom-gap {
  padding-bottom: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .gap-bottom,
  .section-bottom-gap {
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .gap-bottom,
  .section-bottom-gap {
    padding-bottom: 70px;
  }
}

.section-gap-x {
  -webkit-margin-start: 15px;
  margin-inline-start: 15px;
  -webkit-margin-end: 15px;
  margin-inline-end: 15px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .section-gap-x {
    -webkit-margin-start: 12px;
    margin-inline-start: 12px;
    -webkit-margin-end: 12px;
    margin-inline-end: 12px;
  }
}

.section-separator {
  border-top: 1px dashed var(--tj-color-border-1);
}

.mt-10 {
  margin-top: 10px;
}

.rg-30 {
  row-gap: 30px;
}

.rg-40 {
  row-gap: 40px;
}

.rg-50 {
  row-gap: 50px;
}

.rg-60 {
  row-gap: 60px;
}

.rg-70 {
  row-gap: 70px;
}

.rg-80 {
  row-gap: 80px;
}

.mt-30 {
  margin-top: 30px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mt-40 {
  margin-top: 40px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mt-50 {
  margin-top: 50px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mt-60 {
  margin-top: 60px;
}

.mb-60 {
  margin-bottom: 60px;
}

.gap-15 {
  --bs-gutter-x: 15px;
  padding: 0 15px;
}
.gap-15 .row {
  --bs-gutter-x: 15px;
  --bs-gutter-y: 15px;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .space-for-header {
    padding-top: 95px;
  }
}

.top-space-15 {
  padding-top: 15px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .top-space-15 {
    padding-top: 12px;
  }
}

.top-space-65 {
  padding-top: 65px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .top-space-65 {
    padding-top: 94px;
  }
}

.gap-30 {
  --bs-gutter-x: 30px;
}
.gap-30 .row {
  --bs-gutter-x: 30px;
  --bs-gutter-y: 30px;
}

.gap-0 {
  --bs-gutter-x: 0;
}
.gap-0 .row {
  --bs-gutter-x: 0;
}

.wow {
  visibility: hidden;
}

.container-end-align {
  -webkit-margin-start: calc((100% - 1320px) / 2);
  margin-inline-start: calc((100% - 1320px) / 2);
  width: auto;
  min-width: auto;
  max-width: inherit;
  -webkit-padding-end: 0;
  padding-inline-end: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .container-end-align {
    -webkit-margin-start: calc((100% - 1140px) / 2);
    margin-inline-start: calc((100% - 1140px) / 2);
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .container-end-align {
    -webkit-margin-start: calc((100% - 960px) / 2);
    margin-inline-start: calc((100% - 960px) / 2);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .container-end-align {
    -webkit-margin-start: calc((100% - 720px) / 2);
    margin-inline-start: calc((100% - 720px) / 2);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .container-end-align {
    -webkit-margin-start: calc((100% - 540px) / 2);
    margin-inline-start: calc((100% - 540px) / 2);
  }
}
@media (max-width: 575px) {
  .container-end-align {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-padding-end: 12px;
    padding-inline-end: 12px;
  }
}

.vbox-grab .vbox-child {
  background-color: transparent !important;
}
.vbox-grab .vbox-child img {
  border-radius: 12px;
}

#smooth-content {
  padding-bottom: 15px;
  will-change: transform;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  #smooth-content {
    padding-bottom: 0;
  }
}

.tj-sticky-panel,
.tj-sticky-panel-2,
.tj-sticky-panel-3,
.slidebar-stickiy {
  will-change: transform;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  [data-speed=".8"] {
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
  }
}

.tj-scroll-btn {
  cursor: pointer;
}

/**
  Buttons CSS
*/
.tj-primary-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 10px;
  position: relative;
  background-color: #330879;
  font-size: 16px;
  font-weight: var(--tj-fw-sbold);
  padding: 5px 5px 5px 25px;
  text-align: center;
  border-radius: 50px;
  line-height: 1;
  z-index: 2;
  overflow: hidden;
  white-space: nowrap;
}
.tj-primary-btn .btn-text {
  color: white;
  overflow: hidden;
  font-weight: 200;
}
/* =========================================================
   GET STARTED NOW — WHITE BUTTON
========================================================= */

.tj-primary-btn.btn-dark {
  background: #ffffff;
  border: 1px solid #330879;
}

.tj-primary-btn.btn-dark .btn-text span {
  color: #21103a;
}

.tj-primary-btn.btn-dark .btn-icon {
  color: #330879;
}

/* Hover */

.tj-primary-btn.btn-dark:hover {
  background: #330879;
  border-color: #330879;
}

.tj-primary-btn.btn-dark:hover .btn-text span,
.tj-primary-btn.btn-dark:hover .btn-icon {
  color: #ffffff;
}
.tj-primary-btn .btn-text span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
  text-shadow: 0 30px 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
  color: white;
}
.tj-primary-btn.btn-submit .btn-text span {
  color: #fff;
  text-shadow: 0px 30px 0px #fff;
}

.tj-primary-btn .btn-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 20px;
  line-height: 1;
  width: 42px;
  height: 42px;
  overflow: hidden;
  background-color: white;
  border-radius: 50%;
}
.tj-primary-btn .btn-icon i {
  color: black;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.tj-primary-btn.btn-dark {
  background-color: #6c3bff;
}
.tj-primary-btn.btn-dark .btn-icon {
  background-color: var(--tj-color-common-white);
}
.tj-primary-btn.btn-dark .btn-icon i {
  color: var(--tj-color-theme-dark);
}
.tj-primary-btn.transparent-btn {
  background-color: transparent;
  border: 1px solid var(--tj-color-border-1);
}
.tj-primary-btn.transparent-btn .btn-text {
  color: var(--tj-color-heading-primary);
}
.tj-primary-btn.transparent-btn:hover {
  border-color: var(--tj-color-theme-dark);
}
.tj-primary-btn:hover .btn-text span {
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
}
.tj-primary-btn:hover .btn-icon i {
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}
.tj-primary-btn-lg {
  font-size: 20px;
  padding: 7px 7px 7px 44px;
  gap: 14px;
}
.tj-primary-btn-lg .btn-icon {
  font-size: 27px;
  width: 59px;
  height: 59px;
}

.text-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 10px;
  position: relative;
  font-size: 16px;
  font-weight: var(--tj-fw-sbold);
  text-align: center;
  line-height: 1;
  z-index: 2;
}
.text-btn .btn-text {
  color: var(--tj-color-heading-primary);
  overflow: hidden;
}
.text-btn .btn-text span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
  text-shadow: 0 30px 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
.text-btn .btn-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 20px;
  line-height: 1;
  width: 30px;
  height: 30px;
  overflow: hidden;
  background-color: var(--tj-color-theme-dark);
  border-radius: 50%;
}
.text-btn .btn-icon i {
  color: var(--tj-color-common-white);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.text-btn:hover .btn-text span {
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
}
.text-btn:hover .btn-icon {
  background-color: var(--tj-color-theme-primary);
}
.text-btn:hover .btn-icon i {
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}
.tj-cta-section .tj-primary-btn .btn-icon,
.tj-cta-section .tj-primary-btn .btn-icon i {
  color: #ffffff !important;
}

.tji-icon-btn {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 1px solid var(--tj-color-theme-primary);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 26px;
}
.tji-icon-btn i {
  color: var(--tj-color-theme-primary);
  font-weight: var(--tj-fw-normal);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.tji-icon-btn:hover {
  background-color: var(--tj-color-theme-primary);
}
.tji-icon-btn:hover i {
  color: var(--tj-color-common-white);
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .tji-icon-btn {
    width: 60px;
    height: 60px;
    font-size: 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tji-icon-btn {
    width: 50px;
    height: 50px;
    font-size: 20px;
  }
}

/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.header-area {
  background-color: var(--tj-color-common-white);
  border-end-start-radius: 12px;
  border-end-end-radius: 12px;
  position: relative;
  z-index: 99;
}
.header-area.header-1.header-absolute {
  top: 0;
  position: absolute;
  inset-inline-start: 0;
  width: calc(100% - 30px);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.header-1.header-absolute {
    width: calc(100% - 24px);
  }
}
.header-area.header-1 .header-wrapper {
  padding: 0 18px;
  background-color: var(--tj-color-common-white);
}
.header-area.header-2.header-absolute {
  position: absolute;
  top: 30px;
  inset-inline-start: 15px;
  width: calc(100% - 60px);
  z-index: 999;
  background-color: transparent;
  border-radius: 0;
}
.header-area.header-2.header-absolute > .container-fluid {
  --bs-gutter-x: 0;
}
.header-area.header-2.header-absolute > .container-fluid > .row {
  --bs-gutter-x: 0;
}
.header-area.header-2.header-absolute .header-wrapper {
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  padding: 0 20px;
  border-radius: 14px;
}
.header-area.header-2.header-absolute .search_popup {
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}
.header-area.header-2.header-absolute
  .search_popup
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ),
.header-area.header-2.header-absolute
  .search_popup
  .search-box
  input[type="text"] {
  background-color: var(--tj-color-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.header-2.header-absolute {
    top: 24px;
    inset-inline-start: 12px;
    width: calc(100% - 48px);
  }
}
.header-area.header-2.header-sticky .header-wrapper {
  padding: 0 8px;
}
.header-area.header-3.header-absolute {
  background-color: transparent;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: calc(100% - 30px);
  z-index: 999;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.header-3.header-absolute {
    width: calc(100% - 24px);
  }
}
.header-area.header-3 .header-wrapper {
  padding: 0 12px;
  border-start-start-radius: 12px;
  border-start-end-radius: 12px;
}
.header-area.header-duplicate {
  position: fixed;
  width: calc(100% - 30px);
  top: 0;
  inset-inline-start: 0;
  border-bottom: none;
  z-index: 1002;
  background-color: var(--tj-color-common-white);
  -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.header-duplicate {
    width: 100%;
  }
  .header-area.header-duplicate.section-gap-x {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.header-area.sticky {
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .header-area.header-3 .header-wrapper,
  .header-area.header-1 .header-wrapper {
    padding: 0 8px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-area.header-3 .header-wrapper,
  .header-area.header-1 .header-wrapper {
    padding: 0 4px;
  }
  .header-area.header-2.header-absolute .header-wrapper {
    padding: 0 16px;
  }
  .header-area.header-2.header-sticky .header-wrapper {
    padding: 0 4px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.header-3 .header-wrapper,
  .header-area.header-1 .header-wrapper {
    padding: 15px 0px;
  }
  .header-area.header-2.header-absolute .header-wrapper {
    padding: 15px 12px;
  }
  .header-area.header-2.header-sticky .header-wrapper {
    padding: 15px 0;
  }
}

.header-top {
  background-color: var(--tj-color-theme-primary);
  border-end-start-radius: 12px;
  border-end-end-radius: 12px;
  padding: 0 12px;
  margin-bottom: 15px;
}
.header-top-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.header-top-content .topbar-text {
  color: var(--tj-color-common-white);
  padding: 13px 0;
  margin: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 5px;
}
.header-top-content .topbar-text i {
  color: var(--tj-color-common-white);
  font-size: 20px;
}
.header-top-content .topbar-text a {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.header-top-content .topbar-text a::after {
  content: "\e913";
  font-size: 21px;
  line-height: 1.2;
  font-family: "bexon-icons" !important;
  font-weight: normal;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  color: var(--tj-color-common-white);
}
.header-top-content .topbar-text a:hover {
  opacity: 0.7;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header-top-content .topbar-text {
    font-size: 15px;
  }
  .header-top-content .topbar-text i {
    font-size: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-top-content .topbar-text {
    font-size: 15px;
    padding: 10px 0;
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .header-top-content .topbar-text i {
    font-size: 18px;
  }
}
.header-top-content .header-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.header-top-content .header-info .info-item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  position: relative;
  padding: 0 15px;
  -webkit-border-start: 1px dashed rgba(255, 255, 255, 0.15);
  border-inline-start: 1px dashed rgba(255, 255, 255, 0.15);
}
.header-top-content .header-info .info-item:last-child {
  -webkit-padding-end: 0;
  padding-inline-end: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-top-content .header-info .info-item:last-child {
    display: none;
  }
}
.header-top-content .header-info .info-item span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  color: var(--tj-color-common-white);
}
.header-top-content .header-info .info-item a {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-top-content .header-info .info-item {
    border: 0;
    padding: 0 10px 10px 10px;
  }
}
.header-top-content .header-info .social-links ul li a {
  width: 22px;
  height: 22px;
  font-size: 14px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-top-content {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-top {
    padding: 0 8px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-top {
    padding: 0px;
  }
}

.header-bottom {
  border-bottom: 1px dashed #c9d1d1;
}

.header-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  z-index: 99;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-wrapper {
    padding: 15px 0;
  }
}

.site_logo .logo {
  display: inline-block;
  max-width: 90px;
  width: 100%;
}

.menu-area {
  gap: 25px;
}

.mainmenu ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 30px;
  -moz-column-gap: 30px;
  column-gap: 30px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mainmenu ul > li {
  position: relative;
  z-index: 1;
}
.mainmenu ul > li > a {
  position: relative;
  font-size: 16px;
  color: black;
  display: block;
  padding: 37px 0;
  font-weight: var(--tj-fw-medium);
  line-height: 1;
}
.mainmenu ul > li.menu-item-has-children > a,
.mainmenu ul > li.has-dropdown > a {
  -webkit-padding-end: 20px;
  padding-inline-end: 20px;
}
.mainmenu ul > li.menu-item-has-children > a::after,
.mainmenu ul > li.has-dropdown > a::after {
  content: "\e929";
  font-family: "bexon-icons";
  color: inherit;
  font-size: 12px;
  position: absolute;
  top: 40px;
  inset-inline-end: 0;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.mainmenu ul > li.menu-item-has-children:hover > a::after,
.mainmenu ul > li.has-dropdown:hover > a::after {
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.mainmenu ul > li.current-menu-ancestor > a,
.mainmenu ul > li.current-menu-item > a,
.mainmenu ul > li:hover > a {
  color: #2e078a;
}
.mainmenu ul > li.current-menu-ancestor > a::after,
.mainmenu ul > li.current-menu-item > a::after,
.mainmenu ul > li:hover > a::after {
  color: var(--tj-color-theme-primary);
}
.mainmenu ul > li.current-menu-ancestor > a::before,
.mainmenu ul > li.current-menu-item > a::before,
.mainmenu ul > li:hover > a::before {
  opacity: 1;
  visibility: visible;
}
.mainmenu ul > li > .sub-menu {
  display: block;
  position: absolute;
  top: 100%;
  inset-inline-start: 0;
  width: 220px;
  top: 100%;
  inset-inline-start: 0;
  z-index: 99;
  text-align: start;
  background-color: var(--tj-color-common-white);
  -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  opacity: 0;
  visibility: hidden;
  gap: 0;
  padding: 10px 0;
  pointer-events: none;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.mainmenu ul > li > .sub-menu > li {
  display: block;
  width: 100%;
}
.mainmenu ul > li > .sub-menu > li > a {
  position: relative;
  padding: 10px 20px;
  display: block;
  color: #330879;
}
.mainmenu ul > li > .sub-menu > li > a::before {
  display: none;
}
.mainmenu ul > li > .sub-menu > li:last-child {
  padding-bottom: 0;
}
.mainmenu ul > li > .sub-menu > li.menu-item-has-children > a::after,
.mainmenu ul > li > .sub-menu > li.has-dropdown > a::after {
  top: 13px;
  inset-inline-end: 15px;
  color: var(--tj-color-text-body);
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.mainmenu ul > li > .sub-menu > li.current-menu-ancestor > a,
.mainmenu ul > li > .sub-menu > li.current-menu-item > a,
.mainmenu ul > li > .sub-menu > li:hover > a {
  color: var(--tj-color-theme-primary);
}
.mainmenu ul > li > .sub-menu > li.current-menu-ancestor > a::before,
.mainmenu ul > li > .sub-menu > li.current-menu-item > a::before,
.mainmenu ul > li > .sub-menu > li:hover > a::before {
  opacity: 1;
  visibility: visible;
  width: 14px;
}
.mainmenu ul > li > .sub-menu > li.current-menu-ancestor > a::after,
.mainmenu ul > li > .sub-menu > li.current-menu-item > a::after,
.mainmenu ul > li > .sub-menu > li:hover > a::after {
  color: var(--tj-color-theme-primary);
}
.mainmenu ul > li > .sub-menu > li > .sub-menu {
  inset-inline-start: 100%;
  top: -10px;
}
.mainmenu ul > li:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  pointer-events: inherit;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mainmenu ul {
    gap: 0 22px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mainmenu ul {
    gap: 0 16px;
  }
}

.header-search {
  line-height: 1;
  position: relative;
}
.header-search .search {
  color: var(--tj-color-heading-primary);
  font-size: 20px;
  line-height: 1;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: var(--tj-color-grey-1);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.header-search .search i {
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition:
    transform 0.3s,
    -webkit-transform 0.3s;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-search .search {
    font-size: 18px;
    width: 44px;
    height: 44px;
  }
}
.header-search .search:hover i {
  -webkit-animation: gelatine 0.6s;
  animation: gelatine 0.6s;
}
.header-search .search.search-hide {
  opacity: 0;
  visibility: hidden;
  -webkit-transform: scale(0.5);
  -ms-transform: scale(0.5);
  transform: scale(0.5);
}
.header-search .search_close_btn {
  color: var(--tj-color-heading-primary);
  font-size: 20px;
  line-height: 1;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: var(--tj-color-grey-1);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  inset-inline-start: 0;
  top: 0;
}
.header-search .search_close_btn i {
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-search .search_close_btn {
    font-size: 18px;
    width: 44px;
    height: 44px;
  }
}
.header-search .search_close_btn.close-show {
  opacity: 1;
  visibility: visible;
}

.header-contact {
  font-size: 20px;
  line-height: 1;
  color: var(--tj-color-heading-primary);
  gap: 8px;
}
.header-contact .call-text {
  font-weight: var(--tj-fw-sbold);
  position: relative;
}
.header-contact .call-text::after {
  content: "";
  position: absolute;
  bottom: -1px;
  inset-inline-end: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}
.header-contact:hover .call-text::after {
  -webkit-animation: linehover 0.8s linear;
  animation: linehover 0.8s linear;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .header-contact {
    font-size: 18px;
  }
}

.header-right-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
}
.header-right-item .tj-primary-btn .btn-icon {
  width: 38px;
  height: 38px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-right-item .tj-primary-btn .btn-icon {
    width: 35px;
    height: 35px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-right-item {
    gap: 12px;
  }
}

.menu_bar {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 6px;
  width: 25px;
  height: 25px;
  position: relative;
  top: 0;
  inset-inline-start: 0;
  -webkit-margin-start: 5px;
  margin-inline-start: 5px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.menu_bar span {
  display: block;
  width: 18px;
  height: 2px;
  background-color: var(--tj-color-common-black);
  border-radius: 10px;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.menu_bar span:last-child,
.menu_bar span:first-child {
  width: 25px;
}
.menu_bar.mobile_menu_bar {
  width: 50px;
  height: 50px;
  padding: 12px;
  background: var(--tj-color-theme-primary);
  border-radius: 7px;
}
.menu_bar.mobile_menu_bar span {
  background-color: var(--tj-color-common-white);
}
.menu_bar:hover span {
  width: 100%;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .menu_bar {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}

.header-2.header-absolute .mainmenu > ul > li > a {
  color: var(--tj-color-common-white);
  padding-top: 32px;
  padding-bottom: 32px;
}
.header-2.header-absolute .mainmenu > ul > li.menu-item-has-children > a::after,
.header-2.header-absolute .mainmenu > ul > li.has-dropdown > a::after {
  color: currentColor;
  top: 35px;
}
.header-2.header-absolute .mainmenu > ul > li:hover > a,
.header-2.header-absolute .mainmenu > ul > li.current-menu-ancestor > a {
  color: var(--tj-color-text-body-2);
}
.header-2.header-absolute .mainmenu > ul > li:hover > a::after,
.header-2.header-absolute .mainmenu > ul > li.current-menu-ancestor > a::after {
  color: currentColor;
}
.header-2.header-absolute .menu_bar span {
  background-color: var(--tj-color-common-white);
}

.header-3.header-absolute .mainmenu > ul > li > a {
  padding-top: 32px;
  padding-bottom: 32px;
}
.header-3.header-absolute .mainmenu > ul > li.menu-item-has-children > a::after,
.header-3.header-absolute .mainmenu > ul > li.has-dropdown > a::after {
  color: currentColor;
  top: 35px;
}

/* !END: Theme Header CSS */
/* START: Mega Menu CSS */
.gap-60-25 {
  --bs-gutter-x: 60px;
}
.gap-60-25 .row {
  --bs-gutter-x: 25px;
  --bs-gutter-y: 25px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .gap-60-25 {
    --bs-gutter-x: 40px;
  }
  .gap-60-25 .row {
    --bs-gutter-x: 20px;
    --bs-gutter-y: 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .gap-60-25 {
    --bs-gutter-x: 32px;
  }
  .gap-60-25 .row {
    --bs-gutter-x: 16px;
    --bs-gutter-y: 16px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .gap-60-25 {
    --bs-gutter-x: 0;
  }
  .gap-60-25 .row {
    --bs-gutter-x: 0;
    --bs-gutter-y: 20px;
  }
}

.gap-30-30 {
  --bs-gutter-x: 30;
}
.gap-30-30 .row {
  --bs-gutter-x: 30px;
  --bs-gutter-y: 30px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .gap-30-30 {
    --bs-gutter-x: 20px;
  }
  .gap-30-30 .row {
    --bs-gutter-y: 20px;
  }
}

.header-wrapper:has(.mega-menu) {
  position: static;
}

.mainmenu ul > li:has(.mega-menu),
.mobile_menu ul > li:has(.mega-menu) {
  position: static;
}
.mainmenu ul > li > .mega-menu,
.mobile_menu ul > li > .mega-menu {
  max-width: 1920px;
  width: 100%;
  inset-inline-start: 50%;
  -webkit-transform: scaleY(0) translateX(-50%);
  -ms-transform: scaleY(0) translateX(-50%);
  transform: scaleY(0) translateX(-50%);
  padding: 30px 0;
  max-height: 89dvh;
  overflow: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mainmenu ul > li > .mega-menu,
  .mobile_menu ul > li > .mega-menu {
    padding: 20px 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mainmenu ul > li > .mega-menu,
  .mobile_menu ul > li > .mega-menu {
    padding: 16px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu,
  .mobile_menu ul > li > .mega-menu {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  .mainmenu ul > li > .mega-menu li,
  .mobile_menu ul > li > .mega-menu li {
    -webkit-padding-start: 0 !important;
    padding-inline-start: 0 !important;
  }
}
.mainmenu ul > li > .mega-menu::before,
.mobile_menu ul > li > .mega-menu::before {
  display: none;
}
.mainmenu ul > li > .mega-menu .container-fluid,
.mobile_menu ul > li > .mega-menu .container-fluid {
  max-width: 1920px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  width: 100%;
}
.mainmenu ul > li > .mega-menu-pages,
.mobile_menu ul > li > .mega-menu-pages {
  width: calc(100% - 30px);
  max-width: 1320px;
  padding: 0;
  margin: 0 auto;
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-wrapper,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-pages .mega-menu-wrapper,
  .mobile_menu ul > li > .mega-menu-pages .mega-menu-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single {
  width: 315px;
  -webkit-border-start: 1px solid var(--tj-color-border-1);
  border-inline-start: 1px solid var(--tj-color-border-1);
  padding: 26px 30px 20px;
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child,
.mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single:first-child,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single:first-child {
  -webkit-border-start: 0;
  border-inline-start: 0;
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child {
  width: 377px;
  padding: 15px 15px;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child,
  .mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child {
    width: 350px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child,
  .mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single:last-child {
    width: 100%;
    padding: 0;
  }
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single .feature-box,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single .feature-box {
  position: relative;
  background: var(--tj-color-theme-dark);
  border-radius: 10px;
  overflow: hidden;
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content {
  padding: 30px 28px 30px;
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .title,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .title {
  font-size: 74px;
  color: var(--tj-color-common-white);
  margin-bottom: 15px;
  line-height: 1;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    .title,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    .title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    .title,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    .title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    .title,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    .title {
    font-size: 60px;
  }
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  > span,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  > span {
  display: block;
  font-size: 20px;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-common-white);
  line-height: 1;
  margin-bottom: 26px;
}
@media (max-width: 575px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    > span,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content
    > span {
    margin-bottom: 20px;
  }
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact {
  background-color: var(--tj-color-theme-primary);
  padding: 7px 12px;
  border-radius: 50px;
  line-height: 1;
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 0;
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact
  span,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact
  span {
  color: var(--tj-color-common-white);
  font-size: 18px;
  font-weight: var(--tj-fw-sbold);
  margin: 0;
  text-shadow: 0 30px 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact
  i,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact
  i {
  color: var(--tj-color-common-white);
  font-size: 20px;
  -webkit-margin-end: 6px;
  margin-inline-end: 6px;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact:hover
  span,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-content
  .feature-contact:hover
  span {
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content {
    padding: 30px 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-content {
    padding: 0 0 30px 0;
  }
}
@media (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single .feature-box,
  .mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single .feature-box {
    max-width: 360px;
    margin: 0 auto;
  }
}
@media (max-width: 400px) {
  .mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single .feature-box,
  .mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single .feature-box {
    max-width: 320px;
    margin: 0 auto;
  }
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-images,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-images {
  width: 285px;
  height: 285px;
  border-radius: 50%;
  overflow: hidden;
  -webkit-margin-start: 116px;
  margin-inline-start: 116px;
  margin-bottom: -50px;
  border: 5px solid var(--tj-color-theme-primary);
}
.mainmenu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-images
  img,
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-pages-single
  .feature-box
  .feature-images
  img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images {
    width: 299px;
    height: 299px;
    -webkit-margin-start: 102px;
    margin-inline-start: 102px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images {
    width: 325px;
    height: 325px;
    -webkit-margin-start: 56px;
    margin-inline-start: 56px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images {
    width: 500px;
    height: 500px;
    -webkit-margin-start: 260px;
    margin-inline-start: 260px;
    margin-bottom: -70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images {
    -webkit-margin-start: 180px;
    margin-inline-start: 180px;
  }
}
@media (max-width: 400px) {
  .mainmenu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images,
  .mobile_menu
    ul
    > li
    > .mega-menu-pages
    .mega-menu-pages-single
    .feature-box
    .feature-images {
    width: 320px;
    height: 320px;
    -webkit-margin-start: 45px;
    margin-inline-start: 45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-pages .mega-menu-pages-single,
  .mobile_menu ul > li > .mega-menu-pages .mega-menu-pages-single {
    width: 100%;
    padding: 20px 0;
    -webkit-border-start: 0;
    border-inline-start: 0;
  }
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-title,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-title {
  font-size: 18px;
  font-family: var(--tj-ff-body);
  font-weight: var(--tj-fw-sbold);
  padding-bottom: 10px;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-pages .mega-menu-title,
  .mobile_menu ul > li > .mega-menu-pages .mega-menu-title {
    color: var(--tj-color-common-white);
  }
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-title::before,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-title::before {
  position: absolute;
  content: "";
  width: 32px;
  height: 3px;
  background: var(--tj-color-border-1);
  bottom: 0px;
  inset-inline-start: 0;
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-list,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-list a,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-list a {
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-common-black-2);
  padding: 12px 0;
  line-height: 1;
  position: relative;
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-list a:has(.mega-menu-badge),
.mobile_menu
  ul
  > li
  > .mega-menu-pages
  .mega-menu-list
  a:has(.mega-menu-badge) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.mainmenu ul > li > .mega-menu-pages .mega-menu-list a:hover,
.mainmenu ul > li > .mega-menu-pages .mega-menu-list a.active,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-list a:hover,
.mobile_menu ul > li > .mega-menu-pages .mega-menu-list a.active {
  color: var(--tj-color-theme-primary);
  -webkit-padding-start: 5px;
  padding-inline-start: 5px;
}
.mainmenu ul > li > .mega-menu .mega-menu-badge,
.mobile_menu ul > li > .mega-menu .mega-menu-badge {
  font-size: 10px;
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  padding: 3px 7px;
  border-radius: 40px;
}
.mainmenu ul > li > .mega-menu .mega-menu-badge-hot,
.mobile_menu ul > li > .mega-menu .mega-menu-badge-hot {
  background-color: var(--tj-color-red-1);
}
.mainmenu ul > li:hover .mega-menu,
.mobile_menu ul > li:hover .mega-menu {
  -webkit-transform: scaleY(1) translateX(-50%);
  -ms-transform: scaleY(1) translateX(-50%);
  transform: scaleY(1) translateX(-50%);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li:hover .mega-menu,
  .mobile_menu ul > li:hover .mega-menu {
    -webkit-transform: scaleY(1) translateX(0);
    -ms-transform: scaleY(1) translateX(0);
    transform: scaleY(1) translateX(0);
  }
}
.mainmenu ul > li > .mega-menu-service,
.mobile_menu ul > li > .mega-menu-service {
  width: 346px;
  -webkit-margin-start: -25px;
  margin-inline-start: -25px;
  padding: 15px 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-service,
  .mobile_menu ul > li > .mega-menu-service {
    width: 100%;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
.mainmenu ul > li > .mega-menu-service::before,
.mobile_menu ul > li > .mega-menu-service::before {
  display: none;
}
.mainmenu ul > li > .mega-menu-service li a,
.mobile_menu ul > li > .mega-menu-service li a {
  padding: 15px 25px;
  border-bottom: 1px solid var(--tj-color-border-1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  font-size: 16px;
  font-weight: var(--tj-fw-sbold);
  font-weight: var(--tj-fw-medium);
  letter-spacing: -0.03em;
}
.mainmenu ul > li > .mega-menu-service li:last-child a,
.mobile_menu ul > li > .mega-menu-service li:last-child a {
  border-bottom: 0;
}
.mainmenu ul > li > .mega-menu-service li:hover a,
.mobile_menu ul > li > .mega-menu-service li:hover a {
  -webkit-padding-start: 25px;
  padding-inline-start: 25px;
}
.mainmenu ul > li > .mega-menu-service li:hover a::before,
.mobile_menu ul > li > .mega-menu-service li:hover a::before {
  display: none;
}
.mainmenu ul > li > .mega-menu-service-single,
.mobile_menu ul > li > .mega-menu-service-single {
  gap: 12px;
}
.mainmenu ul > li > .mega-menu-service-single .mega-menu-service-icon,
.mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-icon {
  width: 54px;
  height: 54px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 50%;
  position: relative;
  z-index: 2;
  text-align: center;
  background: linear-gradient(
    -45deg,
    rgba(30, 138, 138, 0.3) 0%,
    rgba(30, 138, 138, 0) 50%,
    rgba(30, 138, 138, 0.3) 100%
  );
  color: var(--tj-color-theme-primary);
  font-size: 40px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-transition: 0.4s ease-in-out 0s;
  transition: 0.4s ease-in-out 0s;
}
.mainmenu ul > li > .mega-menu-service-single .mega-menu-service-title,
.mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-title {
  line-height: 1.375;
  max-width: 171px;
  display: inline-block;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-service-single .mega-menu-service-title,
  .mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-title {
    max-width: 156px;
  }
}
.mainmenu ul > li > .mega-menu-service-single .mega-menu-service-nav,
.mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-nav {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
  inset-inline-end: -16px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  min-width: 45px;
  height: 100%;
  z-index: 2;
  font-size: 1.6em;
  line-height: 1;
  color: var(--tj-color-theme-primary);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .mainmenu ul > li > .mega-menu-service-single .mega-menu-service-nav,
  .mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-nav {
    color: var(--tj-color-common-white);
  }
}
.mainmenu ul > li > .mega-menu-service-single .mega-menu-service-nav i,
.mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-nav i {
  -webkit-transition: -webkit-transform 0.4s ease-in-out 0s;
  transition: -webkit-transform 0.4s ease-in-out 0s;
  transition: transform 0.4s ease-in-out 0s;
  transition:
    transform 0.4s ease-in-out 0s,
    -webkit-transform 0.4s ease-in-out 0s;
}
.mainmenu
  ul
  > li
  > .mega-menu-service-single
  .mega-menu-service-nav
  i:last-child,
.mobile_menu
  ul
  > li
  > .mega-menu-service-single
  .mega-menu-service-nav
  i:last-child {
  position: absolute;
  -webkit-transform: translateX(-150%);
  -ms-transform: translateX(-150%);
  transform: translateX(-150%);
}
.mainmenu
  ul
  > li
  > .mega-menu-service-single
  .mega-menu-service-nav:hover
  i:first-child,
.mobile_menu
  ul
  > li
  > .mega-menu-service-single
  .mega-menu-service-nav:hover
  i:first-child {
  -webkit-transform: translateX(150%);
  -ms-transform: translateX(150%);
  transform: translateX(150%);
}
.mainmenu
  ul
  > li
  > .mega-menu-service-single
  .mega-menu-service-nav:hover
  i:last-child,
.mobile_menu
  ul
  > li
  > .mega-menu-service-single
  .mega-menu-service-nav:hover
  i:last-child {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}
.mainmenu ul > li > .mega-menu-service-single:hover .mega-menu-service-icon,
.mobile_menu ul > li > .mega-menu-service-single:hover .mega-menu-service-icon {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.mainmenu ul > li > .mega-menu-service-single:hover .mega-menu-service-nav,
.mobile_menu ul > li > .mega-menu-service-single:hover .mega-menu-service-nav {
  opacity: 1;
}

.tj-demo-wrapper {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-demo-wrapper {
    margin-bottom: 0px;
  }
}
.tj-demo-top-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  row-gap: 20px;
  margin-bottom: 50px;
}
.tj-demo-top-title {
  font-size: 32px;
  margin-bottom: 0;
}
.tj-demo-top-title span {
  color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-demo-top-title {
    font-size: 28px;
  }
}
@media (max-width: 575px) {
  .tj-demo-top-title {
    font-size: 24px;
  }
}
.tj-demo-thumb {
  padding: 9px 9px 20px;
  position: relative;
  z-index: 1;
  border: 1px solid var(--tj-color-border-1);
  border-radius: 10px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-demo-thumb {
    border-color: var(--tj-color-border-2);
  }
}
.tj-demo-thumb .image {
  max-width: 596px;
  width: 100%;
  margin-bottom: 20px;
  position: relative;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 8px;
  overflow: hidden;
}
.tj-demo-thumb .image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  inset-inline-start: 0;
  background: var(--tj-color-theme-dark);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.tj-demo-thumb .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-demo-thumb .image {
    max-width: 100%;
  }
}
.tj-demo-thumb .tj-demo-title {
  color: var(--tj-color-heading-primary);
  font-weight: var(--tj-fw-medium);
  font-size: 16px;
  text-align: center;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-demo-thumb .tj-demo-title {
    font-size: 14px;
  }
}
.tj-demo-thumb .tj-demo-title a {
  color: var(--tj-color-heading-primary);
}
.tj-demo-thumb .tj-demo-title a:hover {
  color: var(--tj-color-theme-primary);
}
.tj-demo-thumb:not(.coming):hover .image::before {
  opacity: 0.6;
  visibility: visible;
}
.tj-demo-thumb:not(.coming):hover .tj-demo-button {
  top: 50%;
  opacity: 1;
  visibility: visible;
}
@media (max-width: 575px) {
  .tj-demo-thumb {
    padding: 15px 15px 25px;
  }
}
.tj-demo-thumb.coming .image::before {
  display: none;
}
.tj-demo-thumb .tj-demo-badge {
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-red-1);
  padding: 3px 7px;
  border-radius: 40px;
  position: absolute;
  inset-inline-start: 11px;
  top: 11px;
}
.tj-demo-button {
  position: absolute;
  top: 60%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: ease-out 0.4s;
  transition: ease-out 0.4s;
}
.tj-demo-button .tj-primary-btn {
  background-color: var(--tj-color-common-white);
}
.tj-demo-button .tj-primary-btn .btn-text {
  color: var(--tj-color-theme-dark);
}

.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li:has(.tj-demo-thumb).dropdown-opened
  > a {
  border-bottom: 0;
}
.hamburger_menu .mean-container .mean-nav ul li .mega-menu li a,
.hamburger_menu .mean-container .mean-nav ul li .mega-menu-service a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  float: none;
  border-bottom: 0;
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu
  li
  a:has(.mega-menu-badge),
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-service
  a:has(.mega-menu-badge) {
  gap: 5px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.hamburger_menu .mean-container .mean-nav ul li .mega-menu li a.tj-primary-btn,
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-service
  a.tj-primary-btn {
  padding: 4.5px;
  -webkit-padding-start: 15px;
  padding-inline-start: 15px;
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu
  li
  a
  .mega-menu-badge,
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-service
  a
  .mega-menu-badge {
  font-size: 10px;
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  padding: 3px 7px;
  border-radius: 40px;
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu
  li
  a
  .mega-menu-badge-hot,
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-service
  a
  .mega-menu-badge-hot {
  background-color: var(--tj-color-red-1);
}
.hamburger_menu .mean-container .mean-nav ul li .mega-menu li .tj-demo-title a,
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-service
  .tj-demo-title
  a {
  padding: 0;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .hamburger_menu .mean-container .mean-nav ul li .mega-menu-service li,
  .hamburger_menu .mean-container .mean-nav ul li .mega-menu-pages li {
    -webkit-padding-start: 0 !important;
    padding-inline-start: 0 !important;
  }
}
.hamburger_menu .mean-container .mean-nav ul li .mega-menu-service li a,
.hamburger_menu .mean-container .mean-nav ul li .mega-menu-pages li a {
  border-bottom: 1px solid var(--tj-color-border-2);
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-pages
  li
  .mega-menu-title::after {
  background-color: var(--tj-color-theme-dark);
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-pages
  li
  a:not(.tj-primary-btn) {
  width: auto;
  padding: 18px 0;
  text-transform: capitalize;
  color: var(--tj-color-common-white);
  border-bottom: 1px solid var(--tj-color-border-2);
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-pages
  li
  a:not(.tj-primary-btn)::before {
  display: none;
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-pages
  li
  a:not(.tj-primary-btn):hover {
  color: var(--tj-color-theme-primary);
  padding: 18px 0;
}
.hamburger_menu
  .mean-container
  .mean-nav
  ul
  li
  .mega-menu-pages
  li
  .cta-btn
  .tj-primary-btn {
  width: auto;
}

/* !END: Mega Menu CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.tj-footer-section {
  background-color: white;
  position: relative;
  z-index: 1;

  border-radius: 12px;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-footer-section {
    padding-top: 150px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section {
    padding-top: 135px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section {
    padding-top: 320px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section {
    padding-top: 100px;
    margin-bottom: 0;
    border-end-start-radius: 0;
    border-end-end-radius: 0;
  }
}

.footer-main-area {
  position: relative;
  padding: 100px 0 90px 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-main-area {
    padding: 70px 0;
  }
}
/* FOOTER LOGO */
.footer-logo {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 10px;
}

.footer-logo a {
    display: block;
}

.footer-logo img {
    display: block;
    width: 155px;
    max-width: 100%;
    height: auto;
}

/* FOOTER TAGLINE */
.footer-text {
    width: 100%;
    text-align: left;
    margin: 0;
    font-weight: 500;
}

.footer-text p {
    margin: 0;
    padding: 0;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.5;
    color: #333;
    letter-spacing: 0.3px;
    text-align: left;
}

@media (max-width: 767px) {
    .footer-logo img {
        width: 140px;
    }

    .footer-text p {
        font-size: 14px;
    }
}
.award-logo-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 18px;
}
.award-logo-area .award-logo {
  max-width: 96px;
}

.footer-widget .footer-text {
  max-width: 280px;
  width: 100%;
}
.footer-widget .footer-text p {
  margin-top: 28px;
  margin-bottom: 34px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-widget .footer-text p {
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-widget .footer-text {
    max-width: 100%;
  }
}
.footer-widget .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 33px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-widget .title {
    margin-bottom: 18px;
  }
}
.footer-widget.footer-col-1 .footer-text p {
  color: var(--tj-color-text-body-2);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-widget.footer-col-1 {
    margin-bottom: 10px;
  }
}

.social-links ul {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8px;
}
.social-links ul li a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  font-size: 16px;
  line-height: 1;
}
.social-links ul li a i {
  color: #4b20c9;
}
.social-links ul li a:hover {
  background-color: var(--tj-color-theme-primary);
  -webkit-transform: translateY(-3px);
  -ms-transform: translateY(-3px);
  transform: translateY(-3px);
}
.social-links ul li a:hover i {
  color: var(--tj-color-common-white);
}
.social-links ul li::after {
  display: none;
}
.social-links.style-2 ul li a {
  background-color: var(--tj-color-common-white);
  opacity: 0.4;
}
.social-links.style-2 ul li a i {
  color: var(--tj-color-theme-primary);
}
.social-links.style-2 ul li a:hover {
  opacity: 1;
}
.social-links.style-3 ul li a {
  background-color: var(--tj-color-common-white);
  opacity: 0.3;
}
.social-links.style-3 ul li a i {
  color: #12051f;
  font-weight: 400;
}

.social-links.style-3 ul li a:hover {
  background-color: var(--tj-color-theme-primary);
  opacity: 1;
}
.social-links.style-3 ul li a:hover i {
  color: var(--tj-color-common-white);
}

.widget-nav-menu {
  -webkit-padding-start: 40px;
  padding-inline-start: 40px;
}
.widget-nav-menu ul {
  list-style: none;
}
.widget-nav-menu ul li {
  padding: 6px 0;
}
.widget-nav-menu ul li:first-child {
  padding-top: 0;
}
.widget-nav-menu ul li a {
  color: var(--tj-color-text-body);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4px;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}
.widget-nav-menu ul li a .badge {
  font-size: 10px;
  text-transform: uppercase;
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  border-radius: 50px;
  padding: 3px 6px 4px;
}
.widget-nav-menu ul li a:hover {
  color: var(--tj-color-theme-primary);
  -webkit-transform: translateX(5px);
  -ms-transform: translateX(5px);
  transform: translateX(5px);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .widget-nav-menu {
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .widget-nav-menu {
    -webkit-padding-start: 80px;
    padding-inline-start: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-nav-menu {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-nav-menu {
    margin-top: 30px;
  }
}
.widget-nav-menu.footer-col-3,
.widget-nav-menu.footer-col-2 {
  -webkit-padding-start: 115px;
  padding-inline-start: 115px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .widget-nav-menu.footer-col-3,
  .widget-nav-menu.footer-col-2 {
    -webkit-padding-start: 70px;
    padding-inline-start: 70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-nav-menu.footer-col-3,
  .widget-nav-menu.footer-col-2 {
    margin-top: 30px;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.widget-nav-menu.footer-col-3 {
  -webkit-padding-start: 120px;
  padding-inline-start: 120px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .widget-nav-menu.footer-col-3 {
    -webkit-padding-start: 80px;
    padding-inline-start: 80px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-nav-menu.footer-col-3 {
    margin-top: 30px;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}

.widget-subscribe {
  max-width: 350px;
  width: 100%;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
.widget-subscribe .title {
  margin-bottom: 25px;
  font-weight: var(--tj-fw-medium);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .widget-subscribe {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    margin-top: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-subscribe {
    max-width: 100%;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    margin-top: 30px;
  }
}

.subscribe-form {
  position: relative;
}
.subscribe-form input[type="email"] {
  height: 64px;
  padding: 15px 60px 15px 25px;
  border: 0;
  border-radius: 8px;
  outline: 1px solid transparent;
}
.subscribe-form input[type="email"]:focus {
  outline-color: var(--tj-color-theme-primary);
}
.subscribe-form input[type="checkbox"] {
  position: relative;
  -webkit-margin-end: 8px;
  margin-inline-end: 8px;
  width: 18px;
  height: 18px;
  border: 1px solid var(--tj-color-theme-dark);
  border-radius: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}
.subscribe-form input[type="checkbox"]::before {
  content: "\e911";
  font-size: 10px;
  line-height: 1;
  font-family: "bexon-icons" !important;
  color: var(--tj-color-common-white);
  position: absolute;
  width: 100%;
  text-align: center;
  line-height: 16px;
  -webkit-transform: scale(0.5);
  -ms-transform: scale(0.5);
  transform: scale(0.5);
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.subscribe-form input[type="checkbox"]:checked {
  background-color: var(--tj-color-theme-dark);
}
.subscribe-form input[type="checkbox"]:checked::before {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}
.subscribe-form button {
  position: absolute;
  width: 64px;
  height: 64px;
  inset-inline-end: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1;
  color: var(--tj-color-theme-primary);
}
.subscribe-form button i {
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
.subscribe-form button:hover i,
.subscribe-form button:focus i {
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}
.subscribe-form button::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 20px;
  height: 24px;
  -webkit-border-start: 1px solid var(--tj-color-border-1);
  border-inline-start: 1px solid var(--tj-color-border-1);
}
.subscribe-form label {
  color: var(--tj-color-text-body);
  margin-top: 20px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.subscribe-form label a {
  color: var(--tj-color-theme-dark);
  font-weight: var(--tj-fw-sbold);
  -webkit-margin-start: 4px;
  margin-inline-start: 4px;
}
.subscribe-form label a:hover {
  color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .subscribe-form {
    margin-top: 18px;
  }
}

.copyright-content-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 30px;
  padding: 20px 0;
}
.copyright-content-area .footer-contact ul {
  list-style: none;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 22px;
}
.copyright-content-area .footer-contact ul li a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 7px;
  color: var(--tj-color-text-body);
}
.copyright-content-area .footer-contact ul li a .icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  font-size: 28px;
  line-height: 1;
}
.copyright-content-area .footer-contact ul li a .icon i {
  color: var(--tj-color-common-white);
}
.copyright-content-area .footer-contact ul li a .text {
  position: relative;
}
.copyright-content-area .footer-contact ul li a .text::before {
  content: "";
  position: absolute;
  bottom: -2px;
  inset-inline-start: auto;
  inset-inline-end: 0;
  width: 0;
  height: 1px;
  background-color: var(--tj-color-text-body);
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.copyright-content-area .footer-contact ul li a:hover .text::before {
  width: 100%;
  inset-inline-start: 0;
  inset-inline-end: auto;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .copyright-content-area .footer-contact {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .copyright-content-area .social-links ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .copyright-content-area .social-links {
    width: 100%;
  }
}
.copyright-content-area .copyright-text p {
  margin: 0;
}
.copyright-content-area .copyright-text a {
  color: var(--tj-color-common-black);
}
.copyright-content-area .copyright-text a:hover {
  color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .copyright-content-area .copyright-text {
    width: 100%;
    text-align: center;
  }
}
.copyright-content-area .copyright-menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.copyright-content-area .copyright-menu ul li {
  position: relative;
  -webkit-margin-end: 13px;
  margin-inline-end: 13px;
  -webkit-padding-end: 12px;
  padding-inline-end: 12px;
  z-index: 1;
}
.copyright-content-area .copyright-menu ul li::before {
  content: "";
  background: var(--tj-color-border-2);
  position: absolute;
  width: 1px;
  height: 11px;
  top: 50%;
  inset-inline-end: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.copyright-content-area .copyright-menu ul li a {
  font-size: 16px;
  font-weight: var(--tj-fw-regular);
  color: var(--tj-color-text-body-2);
}
.copyright-content-area .copyright-menu ul li a:hover {
  color: var(--tj-color-common-white);
}
.copyright-content-area .copyright-menu ul li:last-child {
  -webkit-padding-end: 0;
  padding-inline-end: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}
.copyright-content-area .copyright-menu ul li:last-child::before {
  display: none;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .copyright-content-area .copyright-menu {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .copyright-content-area {
    gap: 18px;
  }
}

.tj-copyright-area {
  padding-bottom: 30px;
}
.tj-copyright-area .copyright-content-area {
  border-top: 1px solid var(--tj-color-border-1);
  border-bottom: 1px solid var(--tj-color-border-1);
  padding: 20px 0;
}

.tj-footer-section.footer-2 {
  background-color: var(--tj-color-theme-dark);
  padding-top: 100px;
}
.tj-footer-section.footer-2 .footer-widget .title {
  color: var(--tj-color-common-white);
}
.tj-footer-section.footer-2 .footer-widget ul li a {
  color: var(--tj-color-text-body-2);
}
.tj-footer-section.footer-2 .footer-widget ul li a:hover {
  color: var(--tj-color-theme-primary);
}
.tj-footer-section.footer-2 .footer-col-1 {
  position: relative;
}
.tj-footer-section.footer-2 .footer-col-1::before {
  content: "";
  position: absolute;
  bottom: -160px;
  inset-inline-start: -50px;
  width: 350px;
  height: 300px;
  border-radius: 50%;
  background: var(--tj-color-theme-primary);
  -webkit-filter: blur(50px);
  filter: blur(50px);
  opacity: 0.15;
  z-index: -1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.footer-2 {
    padding-top: 60px;
  }
}

.footer-subscribe {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 20px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  padding: 40px 50px;
  border-radius: 12px;
}
.footer-subscribe .subscribe-form {
  width: 49%;
}
.footer-subscribe .subscribe-form input[type="email"] {
  color: var(--tj-color-text-body-2);
  background-color: transparent;
  backdrop-filter: blur(10px);
  border-radius: 50px;
  padding: 5px 205px 5px 30px;
  outline: 1px solid transparent;
}
@media (max-width: 575px) {
  .footer-subscribe .subscribe-form input[type="email"] {
    padding: 5px 24px 5px;
  }
}
.footer-subscribe
  .subscribe-form
  input[type="email"]::-webkit-input-placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.footer-subscribe .subscribe-form input[type="email"]::-moz-placeholder {
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.footer-subscribe .subscribe-form input[type="email"]:-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.footer-subscribe .subscribe-form input[type="email"]::-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.footer-subscribe .subscribe-form input[type="email"]::placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.footer-subscribe .subscribe-form input[type="email"]:focus {
  outline-color: var(--tj-color-theme-primary);
}
.footer-subscribe .subscribe-form button {
  width: auto;
  height: auto;
  top: 6px;
  inset-inline-end: 8px;
  font-size: 16px;
  font-weight: var(--tj-fw-sbold);
}
@media (max-width: 575px) {
  .footer-subscribe .subscribe-form button {
    position: static;
    margin-top: 20px;
  }
}
.footer-subscribe .subscribe-form button::before {
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-subscribe .subscribe-form {
    width: 70%;
    margin-top: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-subscribe .subscribe-form {
    width: 100%;
    margin-top: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-subscribe {
    padding: 30px 20px;
  }
}

.subscribe-logo {
  max-width: 225px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .subscribe-logo {
    max-width: 160px;
  }
}

.widget-contact {
  -webkit-padding-start: 76px;
  padding-inline-start: 76px;
}
.widget-contact .title {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .widget-contact {
    -webkit-padding-start: 30px;
    padding-inline-start: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .widget-contact {
    margin-top: 30px;
    -webkit-padding-start: 70px;
    padding-inline-start: 70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-contact {
    margin-top: 30px;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}

.footer-contact-info {
  max-width: 230px;
  width: 100%;
}
.footer-contact-info .contact-item {
  margin-bottom: 14px;
}
.footer-contact-info .contact-item:last-child {
  margin-bottom: 0;
}
.footer-contact-info .contact-item span {
  color: var(--tj-color-text-body-2);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
}
.footer-contact-info .contact-item span i {
  font-size: 20px;
  color: var(--tj-color-theme-primary);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.footer-contact-info .contact-item a {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 3px;
}
.footer-contact-info .contact-item a:hover {
  color: var(--tj-color-theme-primary);
}

.footer-marquee {
  border-top: 1px dashed var(--tj-color-border-2);
  border-bottom: 1px dashed var(--tj-color-border-2);
}
.footer-marquee .marquee-text {
  opacity: 0.2;
}
.footer-marquee .marquee-text:hover {
  opacity: 0.7;
}

.tj-copyright-area-2 .copyright-content-area {
  padding: 25px 0;
}
.tj-copyright-area-2 .copyright-text p {
  color: var(--tj-color-text-body-2);
}
.tj-copyright-area-2 .copyright-text a {
  color: var(--tj-color-common-white);
}
.tj-copyright-area-2 .copyright-text a:hover {
  color: var(--tj-color-theme-bg);
}

.tj-footer-section.footer-3 {
  background-color: var(--tj-color-theme-dark);
  position: relative;
  z-index: 1;
  padding-top: 0;
}
.tj-footer-section.footer-3 .footer-main-area {
  padding-top: 120px;
  padding-bottom: 110px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.footer-3 .footer-main-area {
    padding-top: 100px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.footer-3 .footer-main-area {
    padding-top: 70px;
    padding-bottom: 60px;
  }
}
.tj-footer-section.footer-3 .footer-widget .title {
  color: var(--tj-color-common-white);
}
.tj-footer-section.footer-3 .footer-widget ul li a {
  color: var(--tj-color-text-body-2);
}
.tj-footer-section.footer-3 .footer-widget ul li a:hover {
  color: var(--tj-color-theme-primary);
}

.footer-bottom-area {
  padding-bottom: 50px;
}

.widget-subscribe-2 {
  max-width: 850px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  padding: 40px 30px;
  border-radius: 12px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 50px;
}
.widget-subscribe-2 .title {
  color: var(--tj-color-common-white);
  max-width: 250px;
  width: 100%;
  margin-bottom: 25px;
  font-weight: var(--tj-fw-medium);
}
.widget-subscribe-2 .subscribe-form {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.widget-subscribe-2 .subscribe-form input[type="email"] {
  background-color: transparent;
  backdrop-filter: blur(10px);
  border-radius: 10px;
  color: var(--tj-color-text-body-2);
  outline: 1px solid transparent;
}
.widget-subscribe-2
  .subscribe-form
  input[type="email"]::-webkit-input-placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.widget-subscribe-2 .subscribe-form input[type="email"]::-moz-placeholder {
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.widget-subscribe-2 .subscribe-form input[type="email"]:-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.widget-subscribe-2 .subscribe-form input[type="email"]::-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.widget-subscribe-2 .subscribe-form input[type="email"]::placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-2);
}
.widget-subscribe-2 .subscribe-form input[type="email"]:focus {
  outline-color: var(--tj-color-theme-primary);
}
.widget-subscribe-2 .subscribe-form button::before {
  border-color: var(--tj-color-theme-dark-4);
}
.widget-subscribe-2 .subscribe-form input[type="checkbox"] {
  border: 1px solid var(--tj-color-text-body-2);
}
.widget-subscribe-2 .subscribe-form input[type="checkbox"]::before {
  color: var(--tj-color-theme-dark);
}
.widget-subscribe-2 .subscribe-form input[type="checkbox"]:checked {
  background-color: var(--tj-color-common-white);
  border-color: var(--tj-color-common-white);
}
.widget-subscribe-2 .subscribe-form label {
  color: var(--tj-color-text-body-2);
}
.widget-subscribe-2 .subscribe-form label a {
  color: var(--tj-color-common-white);
}
.widget-subscribe-2 .subscribe-form label a:hover {
  color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-subscribe-2 .subscribe-form {
    margin-top: 0;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .widget-subscribe-2 {
    max-width: 760px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .widget-subscribe-2 {
    padding: 30px 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-subscribe-2 {
    max-width: 100%;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    margin-top: 30px;
    padding: 30px 20px;
    gap: 0;
  }
}

.tj-copyright-area-3 {
  background-color: var(--tj-color-theme-primary);
}
.tj-copyright-area-3 .copyright-content-area {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 25px 0;
}
.tj-copyright-area-3 .copyright-text p {
  color: var(--tj-color-common-white);
}
.tj-copyright-area-3 .copyright-text a {
  color: var(--tj-color-common-white);
}
.tj-copyright-area-3 .copyright-text a:hover {
  color: var(--tj-color-theme-bg);
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Theme Search CSS
----------------------------------------*/
.search_popup {
  position: absolute;
  top: 101%;
  inset-inline-start: 0;
  width: 100%;
  height: auto;
  background-color: var(--tj-color-common-white);
  padding: 80px 0;
  -webkit-transform: translateY(calc(-100% - 200px));
  -ms-transform: translateY(calc(-100% - 200px));
  transform: translateY(calc(-100% - 200px));
  -webkit-transition:
    opacity 0.3s ease-in-out,
    -webkit-transform 0.3s ease-in-out;
  transition:
    opacity 0.3s ease-in-out,
    -webkit-transform 0.3s ease-in-out;
  transition:
    transform 0.3s ease-in-out,
    opacity 0.3s ease-in-out;
  transition:
    transform 0.3s ease-in-out,
    opacity 0.3s ease-in-out,
    -webkit-transform 0.3s ease-in-out;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
  z-index: 10;
  border-radius: 12px;
}
.search_popup .search_close {
  position: absolute;
  top: 36px;
  inset-inline-end: 36px;
}
.search_popup .search_close .search_close_btn {
  font-size: 24px;
  color: var(--tj-color-theme-dark);
}
.search_popup .search_close .search_close_btn svg {
  width: 24px;
  height: 24px;
  -webkit-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
}
.search_popup .search_close .search_close_btn svg path {
  fill: var(--tj-color-theme-dark);
}
.search_popup .search_close .search_close_btn svg:hover {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.search_popup .search_close .search_close_btn svg:hover path {
  fill: var(--tj-color-theme-primary);
}
.search_popup.search-opened {
  -webkit-transform: translateY(0%);
  -ms-transform: translateY(0%);
  transform: translateY(0%);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}
.search_popup.search-opened .search_form .search_input {
  -webkit-transform: translateY(0px);
  -ms-transform: translateY(0px);
  transform: translateY(0px);
  opacity: 1;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.search_popup.search-opened .search_form .search_input::after {
  width: 100%;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
.search_popup .logo {
  max-width: 150px;
  width: 100%;
  position: absolute;
  inset-inline-start: 36px;
  top: 36px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .search_popup {
    display: none;
  }
}

.tj_search_wrapper {
  min-height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.tj_search_wrapper .search_form {
  width: 100%;
}
.tj_search_wrapper .search_form form .search_input {
  position: relative;
  z-index: 1;
}
.tj_search_wrapper .search_form form .search_input .search-box {
  position: relative;
  z-index: 1;
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ),
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"] {
  width: 100%;
  height: 65px;
  font-size: 20px;
  font-family: var(--tj-ff-body);
  color: var(--tj-color-text-body);
  border-color: var(--tj-color-border-1);
  background: transparent;
  padding: 16px 90px 16px 24px;
  border-radius: 10px;
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::-webkit-input-placeholder,
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"]::-webkit-input-placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-size: 20px;
  color: var(--tj-color-text-body);
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::-moz-placeholder,
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"]::-moz-placeholder {
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  font-size: 20px;
  color: var(--tj-color-text-body);
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ):-ms-input-placeholder,
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"]:-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  font-size: 20px;
  color: var(--tj-color-text-body);
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::-ms-input-placeholder,
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"]::-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  font-size: 20px;
  color: var(--tj-color-text-body);
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::placeholder,
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"]::placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-size: 20px;
  color: var(--tj-color-text-body);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
      [type="search"]
    )::-webkit-input-placeholder,
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input[type="text"]::-webkit-input-placeholder {
    font-size: 20px;
  }
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
      [type="search"]
    )::-moz-placeholder,
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input[type="text"]::-moz-placeholder {
    font-size: 20px;
  }
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
      [type="search"]
    ):-ms-input-placeholder,
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input[type="text"]:-ms-input-placeholder {
    font-size: 20px;
  }
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
      [type="search"]
    )::-ms-input-placeholder,
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input[type="text"]::-ms-input-placeholder {
    font-size: 20px;
  }
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
      [type="search"]
    )::placeholder,
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input[type="text"]::placeholder {
    font-size: 20px;
  }
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ):focus,
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"]:focus {
  border-color: var(--tj-color-theme-primary);
}
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ):focus
  + button,
.tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"]:focus
  + button {
  border-color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
      [type="search"]
    ),
  .tj_search_wrapper
    .search_form
    form
    .search_input
    .search-box
    input[type="text"] {
    font-size: 20px;
  }
}
.tj_search_wrapper .search_form form .search_input .search-box button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  inset-inline-end: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  max-width: 60px;
  font-size: 25px;
  color: var(--tj-color-theme-primary);
  width: 100%;
  height: 100%;
}
.tj_search_wrapper .search_form form .search_input .search-box button::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 18px;
  height: 30px;
  -webkit-border-start: 1px solid var(--tj-color-border-1);
  border-inline-start: 1px solid var(--tj-color-border-1);
}

.search-popup-overlay {
  position: fixed;
  inset-inline-start: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(12, 30, 33, 0.01);
  z-index: 99;
  -webkit-transform: translateY(calc(-100% - 80px));
  -ms-transform: translateY(calc(-100% - 80px));
  transform: translateY(calc(-100% - 80px));
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
.search-popup-overlay.search-popup-overlay-open {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* !END: Theme Search CSS */
/* !START: hamburger CSS */
/* =========================================================
   HAMBURGER / SIDEBAR AREA
========================================================= */

.hamburger-area {
  position: fixed;
  inset-inline-end: -490px;
  top: 15px;
  width: 450px;
  height: calc(100% - 30px);

  -webkit-box-shadow: -5px 0 20px -5px rgba(43, 10, 69, 0.2);
  box-shadow: -5px 0 20px -5px rgba(43, 10, 69, 0.2);

  -webkit-transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);

  -webkit-transition-duration: 1s;
  transition-duration: 1s;

  z-index: 9999;

  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow-y: scroll;

  border-radius: 12px;
}

.hamburger-area::-webkit-scrollbar {
  display: none;
}

.hamburger-area.opened {
  inset-inline-end: 15px;
}

/* =========================================================
   TABLET / MOBILE
========================================================= */

@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .hamburger-area.opened {
    inset-inline-end: 0;
  }
}

@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .hamburger-area {
    top: 0;
    height: 100%;

    border-start-end-radius: 0;
    border-end-end-radius: 0;
  }
}

@media (max-width: 575px) {
  .hamburger-area {
    width: 320px;
  }
}

/* =========================================================
   SIDEBAR BACKGROUND
========================================================= */

.hamburger_bg {
  background: #ffffff !important;

  height: 100%;
  width: 100%;

  position: absolute;
  top: 0;
  inset-inline-start: 0;

  z-index: -1;

  border-start-start-radius: 12px;
  border-end-start-radius: 12px;
}

/* =========================================================
   SIDEBAR WRAPPER
========================================================= */

.hamburger_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;

  position: relative;

  padding: 40px;

  overflow: auto;

  height: 100%;

  background: #ffffff;
}

/* =========================================================
   REMOVE PURPLE GLOW
========================================================= */

.hamburger_wrapper::before {
  display: none;
}

/* =========================================================
   MOBILE PADDING
========================================================= */

@media (max-width: 575px) {
  .hamburger_wrapper {
    padding: 30px 20px;
  }
}

/* =========================================================
   TOP AREA
========================================================= */

.hamburger_top {
  margin-bottom: 30px;
}

/* =========================================================
   CLOSE BUTTON
========================================================= */

.hamburger_close_btn {
  display: inline-block;

  font-size: 35px;
  line-height: 1;

  color: #2b0a45 !important;

  transition: all 0.3s ease;
}

@media (max-width: 575px) {
  .hamburger_close_btn {
    font-size: 30px;
  }
}

.hamburger_close_btn:hover {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);

  color: #7b3ff2 !important;
}

/* =========================================================
   SEARCH AREA
========================================================= */

.hamburger_search {
  position: relative;
  margin-bottom: 30px;
}

/* =========================================================
   SEARCH INPUT
========================================================= */

.hamburger_search select,
.hamburger_search .nice-select,
.hamburger_search
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
.hamburger_search input {
  width: 100%;

  height: 60px;
  line-height: 60px;

  padding: 0 40px 0 16px;

  background: #ffffff !important;

  border: 1px solid #e5ddea !important;

  outline: none;

  font-size: 18px;
  font-family: var(--tj-ff-body);

  color: #2b0a45 !important;

  border-radius: 10px;

  transition: all 0.3s ease;
}

/* =========================================================
   SEARCH INPUT FOCUS
========================================================= */

.hamburger_search input:focus,
.hamburger_search select:focus,
.hamburger_search .nice-select:focus {
  border-color: #7b3ff2 !important;

  box-shadow: 0 0 0 3px rgba(123, 63, 242, 0.08);
}

/* =========================================================
   SEARCH PLACEHOLDER
========================================================= */

.hamburger_search select::-webkit-input-placeholder,
.hamburger_search .nice-select::-webkit-input-placeholder,
.hamburger_search
  input:not([type="submit"]):not([type="radio"]):not(
    [type="checkbox"]
  )::-webkit-input-placeholder,
.hamburger_search input::-webkit-input-placeholder {
  color: #8a7d94;
}

.hamburger_search select::-moz-placeholder,
.hamburger_search .nice-select::-moz-placeholder,
.hamburger_search
  input:not([type="submit"]):not([type="radio"]):not(
    [type="checkbox"]
  )::-moz-placeholder,
.hamburger_search input::-moz-placeholder {
  color: #8a7d94;
}

.hamburger_search select:-ms-input-placeholder,
.hamburger_search .nice-select:-ms-input-placeholder,
.hamburger_search
  input:not([type="submit"]):not([type="radio"]):not(
    [type="checkbox"]
  ):-ms-input-placeholder,
.hamburger_search input:-ms-input-placeholder {
  color: #8a7d94;
}

.hamburger_search select::-ms-input-placeholder,
.hamburger_search .nice-select::-ms-input-placeholder,
.hamburger_search
  input:not([type="submit"]):not([type="radio"]):not(
    [type="checkbox"]
  )::-ms-input-placeholder,
.hamburger_search input::-ms-input-placeholder {
  color: #8a7d94;
}

.hamburger_search select::placeholder,
.hamburger_search .nice-select::placeholder,
.hamburger_search
  input:not([type="submit"]):not([type="radio"]):not(
    [type="checkbox"]
  )::placeholder,
.hamburger_search input::placeholder {
  color: #8a7d94;
}

/* =========================================================
   SEARCH BUTTON
========================================================= */

.hamburger_search button {
  position: absolute;

  height: 58px;
  width: 58px;

  top: 50%;
  inset-inline-end: 0;

  font-size: 24px;

  color: #2b0a45 !important;

  background: transparent;

  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);

  -webkit-border-start: 1px solid #e5ddea;
  border-inline-start: 1px solid #e5ddea;

  transition: all 0.3s ease;
}

.hamburger_search button:hover {
  color: #7b3ff2 !important;
}

/* =========================================================
   MOBILE MENU CONTAINER
========================================================= */

.hamburger_menu .mean-container .mean-bar {
  background: transparent;

  -webkit-box-sizing: border-box;
  box-sizing: border-box;

  margin-bottom: 30px;
}

.hamburger_menu .mean-container .mean-bar * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.hamburger_menu .mean-nav {
  background: transparent;

  margin-top: 0;

  overflow: hidden;
}

.hamburger_menu .mean-nav > ul {
  display: block !important;
}

/* =========================================================
   FIRST MENU ITEM
========================================================= */

.hamburger_menu .mean-nav > ul > li:first-child > a {
  border-top: none;
}

/* =========================================================
   MENU ITEMS
========================================================= */

.hamburger_menu .mean-nav ul li {
  position: relative;
}

.hamburger_menu .mean-nav ul li a {
  color: #2b0a45 !important;

  width: 100%;

  font-size: 16px;
  line-height: 1;

  letter-spacing: 0.5px;

  font-family: var(--tj-ff-body);

  font-weight: var(--tj-fw-medium);

  text-transform: capitalize;

  padding: 18px 0;

  border-top: none;

  border-bottom: 1px solid rgba(43, 10, 69, 0.1);

  -webkit-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
}

/* =========================================================
   MENU HOVER
========================================================= */

.hamburger_menu .mean-nav ul li a:hover {
  color: #7b3ff2 !important;
}

/* =========================================================
   MENU EXPAND BUTTON
========================================================= */

.hamburger_menu .mean-nav ul li a.mean-expand {
  padding: 0;

  width: 30px;
  height: 30px;

  text-align: center;
  line-height: 30px;

  position: absolute;

  inset-inline-end: 0;

  top: 12px;

  color: #2b0a45 !important;

  -webkit-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
}

.hamburger_menu .mean-nav ul li a.mean-expand:hover {
  color: #7b3ff2 !important;
}

.hamburger_menu .mean-nav ul li a.mean-expand i {
  font-size: 15px;
}

/* =========================================================
   EXPANDED MENU
========================================================= */

.hamburger_menu .mean-nav ul li a.mean-expand.mean-clicked {
  color: #7b3ff2 !important;

  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.hamburger_menu .mean-nav ul li a.mean-expand.mean-clicked i {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

/* =========================================================
   SUB MENU
========================================================= */

.hamburger_menu .mean-nav ul li .sub-menu li {
  -webkit-padding-start: 25px;
  padding-inline-start: 25px;

  position: relative;
}

.hamburger_menu .mean-nav ul li .sub-menu li a {
  width: 100%;

  padding: 18px 0;

  color: #4a3560 !important;
}

.hamburger_menu .mean-nav ul li .sub-menu li a:hover {
  color: #7b3ff2 !important;
}

.hamburger_menu .mean-nav ul li .sub-menu li a.mean-expand {
  padding: 0;

  width: 30px;
}

/* =========================================================
   DROPDOWN ACTIVE
========================================================= */

.hamburger_menu .mean-nav ul li.dropdown-opened > a {
  color: #7b3ff2 !important;
}

/* =========================================================
   OFFCANVAS AREA
========================================================= */

.tj-offcanvas-area {
  position: fixed;

  inset-inline-end: -490px;

  top: 15px;

  width: 470px;

  height: calc(100% - 30px);

  background: #ffffff !important;

  -webkit-box-shadow: -5px 0 20px -5px rgba(43, 10, 69, 0.2);
  box-shadow: -5px 0 20px -5px rgba(43, 10, 69, 0.2);

  -webkit-transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);

  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;

  z-index: 9999;

  -ms-overflow-style: none;

  scrollbar-width: none;

  overflow-y: scroll;

  border-start-start-radius: 12px;
  border-end-start-radius: 12px;

  border-radius: 12px;
}

/* =========================================================
   OFFCANVAS SCROLLBAR
========================================================= */

.tj-offcanvas-area::-webkit-scrollbar {
  display: none;
}

/* =========================================================
   OFFCANVAS OPEN
========================================================= */

.tj-offcanvas-area.opened {
  inset-inline-end: 15px;
}

/* =========================================================
   OFFCANVAS TEXT
========================================================= */

.offcanvas-text {
  margin-bottom: 40px;
}

.offcanvas-text p {
  color: #665a70 !important;

  margin-bottom: 0;

  line-height: 1.7;
}

/* =========================================================
   SEARCH AREA
========================================================= */

.hamburger-search-area {
  margin-bottom: 45px;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .hamburger-search-area {
    margin-bottom: 30px;
  }
}

/* =========================================================
   SIDEBAR TITLE
========================================================= */

.hamburger-title {
  color: #2b0a45 !important;

  font-size: 22px;

  line-height: 1;

  margin-bottom: 25px;

  position: relative;

  z-index: 1;
}

/* =========================================================
   CONTACT INFORMATION
========================================================= */

.hamburger-infos {
  margin-bottom: 45px;

  color: #2b0a45;
}

.hamburger-infos .contact-info .contact-item {
  padding: 15px 0 10px 0;

  color: #2b0a45;
}

.hamburger-infos .contact-info .contact-item:first-child {
  padding-top: 0;
}

/* =========================================================
   CONTACT LABEL
========================================================= */

.hamburger-infos .contact-info .contact-item span,
.hamburger-infos .contact-info .contact-item label {
  color: #75677f;
}

/* =========================================================
   CONTACT TEXT
========================================================= */

.hamburger-infos .contact-info .contact-item p {
  color: #2b0a45;
}

/* =========================================================
   CONTACT LINKS
========================================================= */

.hamburger-infos .contact-info .contact-item a {
  color: #2b0a45 !important;

  transition: all 0.3s ease;
}

.hamburger-infos .contact-info .contact-item a:hover {
  color: #7b3ff2 !important;
}

/* =========================================================
   LOGO
========================================================= */

.hamburger_logo .mobile_logo {
  display: inline-block;

  max-width: 185px;

  width: 100%;

  height: auto;

  filter: none !important;
}

/* =========================================================
   MENU BAR
========================================================= */

.menu-bar button {
  height: 25px;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;

  -ms-flex-direction: column;
  flex-direction: column;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;

  justify-content: space-between;

  position: relative;

  -webkit-transform-origin: center center;

  -ms-transform-origin: center center;

  transform-origin: center center;

  -webkit-transform: rotate(0deg);

  -ms-transform: rotate(0deg);

  transform: rotate(0deg);

  cursor: pointer;

  -webkit-transition: -webkit-transform 300ms ease;

  transition: -webkit-transform 300ms ease;

  transition: transform 300ms ease;

  transition:
    transform 300ms ease,
    -webkit-transform 300ms ease;
}

/* =========================================================
   MENU BAR LINES
========================================================= */

.menu-bar button span {
  height: 3px;

  width: 35px;

  display: block;

  background: #2b0a45 !important;

  cursor: pointer;

  -webkit-transition: all 0.3s ease-in-out 0s;

  transition: all 0.3s ease-in-out 0s;

  -webkit-margin-start: auto;

  margin-inline-start: auto;
}

.menu-bar button span:nth-child(2) {
  width: 40px;

  -webkit-transition-delay: 200ms;

  transition-delay: 200ms;
}

.menu-bar button span:nth-child(3) {
  width: 30px;
}

.menu-bar button span:nth-child(4) {
  position: absolute;

  top: -8px;

  inset-inline-start: 50%;

  -webkit-transform: translateX(-50%);

  -ms-transform: translateX(-50%);

  transform: translateX(-50%);

  display: block;

  width: 3px;

  height: 0;

  -webkit-transition: height 400ms;

  transition: height 400ms;
}

/* =========================================================
   MENU BAR STYLE 2
========================================================= */

.menu-bar.style-2 button span {
  background: #2b0a45 !important;
}

/* =========================================================
   MENU BAR TOGGLED
========================================================= */

.menu-bar.menu-bar-toggeled button {
  -webkit-transform: rotate(45deg);

  -ms-transform: rotate(45deg);

  transform: rotate(45deg);

  -webkit-transition-delay: 400ms;

  transition-delay: 400ms;
}

.menu-bar.menu-bar-toggeled button span:nth-child(1) {
  width: 0;
}

.menu-bar.menu-bar-toggeled button span:nth-child(3) {
  width: 0;
}

.menu-bar.menu-bar-toggeled button span:nth-child(4) {
  height: 40px;

  -webkit-transition: height 200ms ease;

  transition: height 200ms ease;

  -webkit-transition-delay: 200ms;

  transition-delay: 200ms;
}

/* =========================================================
   MENU BAR MOBILE
========================================================= */

@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .menu-bar {
    -webkit-margin-start: 0;

    margin-inline-start: 0;
  }
}

/* =========================================================
   BODY OVERLAY
========================================================= */

.body-overlay {
  height: 100%;

  width: 100%;

  position: fixed;

  top: 0;

  z-index: 9998;

  inset-inline-start: 0;

  opacity: 0;

  visibility: hidden;

  background: rgba(30, 10, 45, 0.35);

  -webkit-transition: all 0.3s ease-out 0s;

  transition: all 0.3s ease-out 0s;

  backdrop-filter: blur(8px);
}

/* =========================================================
   BODY OVERLAY OPEN
========================================================= */

.body-overlay.opened {
  opacity: 1;

  visibility: visible;
}

/* ========================================
   OFFCANVAS SIDEBAR COLORS
======================================== */

/* Menu Links */
.hamburger_menu .mean-nav ul li a {
  color: #2b0a45;
}

.hamburger_menu .mean-nav ul li a:hover {
  color: #7b3ff2;
}

/* Heading */
.hamburger-title {
  color: #2b0a45;
}

/* Description */
.offcanvas-text p {
  color: #665a70;
}

/* Close Button */
.hamburger_close_btn {
  color: #2b0a45;
}

/* Contact Information */
.hamburger-infos .contact-info .contact-item,
.hamburger-infos .contact-info .contact-item p,
.hamburger-infos .contact-info .contact-item a {
  color: #2b0a45;
}

.hamburger-infos .contact-info .contact-item a:hover {
  color: #7b3ff2;
}
/* =========================================================
   FINAL MOBILE
========================================================= */

@media (max-width: 575px) {
  .hamburger-area {
    width: 320px;

    top: 0;

    height: 100%;

    border-radius: 0;
  }

  .hamburger_wrapper {
    padding: 30px 20px;
  }

  .hamburger-title {
    font-size: 20px;
  }

  .hamburger_close_btn {
    font-size: 30px;
  }
}
/* !END: hamburger CSS */
/**---------------------------------------- */

.tj-preloader {
  position: fixed;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  z-index: 100000000;
  color: #fdfdf9;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.tj-preloader.is-loading .tj-preloader-ball-inner,
.tj-preloader.is-loading .tj-preloader-ball-shadow {
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.tj-preloader.is-loaded {
  pointer-events: none;
}

.tj-preloader .tj-preloader-overlay {
  position: fixed;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  z-index: 99999999;
  opacity: 1;
  -webkit-animation: tj-fade-out 1.5s forwards;
  animation: tj-fade-out 1.5s forwards;
}

@-webkit-keyframes tj-fade-out {
  0% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes tj-fade-out {
  0% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

.tj-preloader .tj-preloader-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tj-preloader .tj-preloader-ball-wrap {
  gap: 10px;
  position: relative;
  display: flex;
  inset-inline-start: 0;
  align-items: center;
  justify-content: center;
  transform: translateX(16px);
}

@media only screen and (min-width: 1025px) {
  .tj-preloader .tj-preloader-ball-wrap {
    transform: none;
  }
}

.tj-preloader .tj-preloader-ball-inner-wrap {
  position: absolute;
  width: 10px;
  height: 100%;
  top: 50%;
  inset-inline-start: -16px;
  transform: translate(-100%, -50%);
  z-index: 10000;
}

@media only screen and (min-width: 1025px) {
  .tj-preloader .tj-preloader-ball-inner-wrap {
    inset-inline-start: -30px;
  }
}

.tj-preloader .tj-preloader-ball-shadow {
  position: absolute;
  width: 16px;
  height: 4px;
  inset-inline-start: 50%;
  transform: translateX(-50%);
  background-color: rgba(75, 32, 201, 0.75);
  bottom: 0;
  border-radius: 50%;
  filter: blur(8px);
  -webkit-filter: blur(8px);
  box-shadow: 0 3px 12px rgba(75, 32, 201, 0.3);
  -webkit-box-shadow: 0 3px 12px rgba(75, 32, 201, 0.3);
  transition: 0.7s cubic-bezier(0.77, 0, 0.175, 1);
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
  -webkit-animation: tj-shadow-blur 1s linear infinite;
  animation: tj-shadow-blur 1s linear infinite;
}

.tj-preloader .tj-preloader-ball-inner {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #4b20c9;
  box-shadow: 0 0 8px rgba(75, 32, 201, 0.4);
  -webkit-box-shadow: 0 0 8px rgba(75, 32, 201, 0.4);
  -webkit-animation: tj-bounce-anim 1s linear infinite;
  animation: tj-bounce-anim 1s linear infinite;
  transition: 0.7s cubic-bezier(0.77, 0, 0.175, 1);
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}

.tj-preloader .tj-preloader-ball {
  position: absolute;
  width: 14px;
  height: 14px;
  bottom: 50%;
  inset-inline-start: 50%;
  transform: translate(-50%, 50%);
  border-radius: 50%;
  background-color: rgba(75, 32, 201, 0.08);
  box-shadow: 0 0 16px rgba(75, 32, 201, 0.28);
  -webkit-box-shadow: 0 0 16px rgba(75, 32, 201, 0.28);
  filter: blur(7px);
  -webkit-filter: blur(7px);
}

.tj-preloader.is-loaded .tj-preloader-ball-shadow {
  display: none;
}

.tj-preloader.is-loaded .tj-preloader-ball-inner {
  -webkit-animation: fadeLeftToRight 0.7s linear;
  animation: fadeLeftToRight 0.7s linear;
}

.tj-preloader .tj-preloader-text {
  font-size: 20px;
  position: relative;
  letter-spacing: 0;
  transform: translateY(-0.03em);
  transition: 0.3s;
  font-weight: var(--tj-fw-sbold);
}

@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-preloader .tj-preloader-text {
    font-size: 16px;
  }
}

.tj-preloader.is-loaded .tj-preloader-text {
  opacity: 0;
  visibility: hidden;
}

#tj-weave-anim span {
  position: relative;
  transition: all 0.3s ease;
  display: inline-block;
  -webkit-animation: tj-weave-anim 1.15s ease infinite;
  animation: tj-weave-anim 1.15s ease infinite;
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

#tj-weave-anim span:nth-child(1) {
  animation-delay: 0s;
}
#tj-weave-anim span:nth-child(2) {
  animation-delay: 0.05s;
}
#tj-weave-anim span:nth-child(3) {
  animation-delay: 0.1s;
}
#tj-weave-anim span:nth-child(4) {
  animation-delay: 0.15s;
}
#tj-weave-anim span:nth-child(5) {
  animation-delay: 0.2s;
}
#tj-weave-anim span:nth-child(6) {
  animation-delay: 0.25s;
}
#tj-weave-anim span:nth-child(7) {
  animation-delay: 0.3s;
}
#tj-weave-anim span:nth-child(8) {
  animation-delay: 0.35s;
}
#tj-weave-anim span:nth-child(9) {
  animation-delay: 0.4s;
}
#tj-weave-anim span:nth-child(10) {
  animation-delay: 0.45s;
}
#tj-weave-anim span:nth-child(11) {
  animation-delay: 0.5s;
}
#tj-weave-anim span:nth-child(12) {
  animation-delay: 0.55s;
}
#tj-weave-anim span:nth-child(13) {
  animation-delay: 0.6s;
}
#tj-weave-anim span:nth-child(14) {
  animation-delay: 0.65s;
}
#tj-weave-anim span:nth-child(15) {
  animation-delay: 0.7s;
}
#tj-weave-anim span:nth-child(16) {
  animation-delay: 0.75s;
}
#tj-weave-anim span:nth-child(17) {
  animation-delay: 0.8s;
}
#tj-weave-anim span:nth-child(18) {
  animation-delay: 0.85s;
}
#tj-weave-anim span:nth-child(19) {
  animation-delay: 0.9s;
}
#tj-weave-anim span:nth-child(20) {
  animation-delay: 0.95s;
}
#tj-weave-anim span:nth-child(21) {
  animation-delay: 1s;
}
#tj-weave-anim span:nth-child(22) {
  animation-delay: 1.05s;
}
#tj-weave-anim span:nth-child(23) {
  animation-delay: 1.15s;
}

@keyframes tj-shadow-blur {
  0% {
    filter: blur(10px);
    -webkit-filter: blur(10px);
    transform: translate(-50%) scale(0.6);
    opacity: 0.25;
  }

  30% {
    filter: blur(4px);
    -webkit-filter: blur(4px);
    transform: translate(-50%, -0.5rem) scale(1);
    opacity: 0.65;
  }

  100% {
    filter: blur(10px);
    -webkit-filter: blur(10px);
    transform: translate(-50%) scale(0.6);
    opacity: 0.25;
  }
}

@keyframes fadeLeftToRight {
  0% {
    filter: blur(0);
    -webkit-filter: blur(0);
    transform: translate(0) scale(1);
    opacity: 1;
  }

  30% {
    filter: blur(0);
    -webkit-filter: blur(0);
    transform: translate(-3000%, 0) scale(1);
    opacity: 1;
  }

  40% {
    filter: blur(0);
    -webkit-filter: blur(0);
    transform: translate(-2000%, 0) scale(1);
    opacity: 1;
  }

  60% {
    filter: blur(0);
    -webkit-filter: blur(0);
    transform: translate(0%, 0) scale(1);
    opacity: 1;
  }

  100% {
    filter: blur(10px);
    -webkit-filter: blur(10px);
    transform: translate(1000%, 0) scale(7);
    opacity: 0.35;
  }
}

@keyframes tj-weave-anim {
  0% {
    transform: translate3D(0, 0, 0) scale(1) rotateY(0);
  }

  12% {
    transform: translate3D(2px, -2px, 2px) scale(1.16) rotateY(6deg);
  }

  24% {
    transform: translate3D(0, 0, 0) scale(1) rotateY(0);
  }

  36% {
    transform: translate3D(0, 0, 0) scale(1);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes tj-bounce-anim {
  0% {
    transform: translateY(calc(-50% - 1rem)) scaleX(1.4);
  }

  3% {
    transform: translateY(calc(-50% - 0.95rem)) scale(1.1, 1.05);
  }

  5% {
    transform: translateY(calc(-50% - 0.9rem)) scale(1.2, 1.1);
  }

  8% {
    transform: translateY(calc(-50% - 0.8rem)) scale(0.98, 1.15);
  }

  12% {
    transform: translateY(calc(-50% - 0.7rem)) scale(0.95, 1.2);
  }

  16% {
    transform: translateY(calc(-50% - 0.5rem)) scale(0.92, 1.25);
  }

  20% {
    transform: translateY(calc(-50% - 0.2rem)) scale(0.9, 1.4);
  }

  24% {
    transform: translateY(calc(-50% + 0.4rem)) scale(0.9, 1.7);
  }

  26% {
    transform: translateY(calc(-50% + 0.8rem)) scale(0.9, 1.4);
  }

  28% {
    transform: translateY(calc(-50% + 0.95rem)) scale(1.2, 0.7);
  }

  30% {
    transform: translateY(calc(-50% + 1rem)) scale(1.5, 0.3);
  }

  32% {
    transform: translateY(calc(-50% + 0.8rem)) scale(1.4, 0.4);
  }

  36% {
    transform: translateY(calc(-50% + 0.5rem)) scale(1.2, 0.8);
  }

  42% {
    transform: translateY(calc(-50% + 0.2rem)) scaleY(1.2);
  }

  48% {
    transform: translateY(calc(-50% - 0.2rem)) scale(0.9, 1.4);
  }

  54% {
    transform: translateY(calc(-50% - 0.3rem)) scale(0.92, 1.3);
  }

  62% {
    transform: translateY(calc(-50% - 0.5rem)) scale(0.95, 1.2);
  }

  68% {
    transform: translateY(calc(-50% - 0.6rem)) scale(0.97, 1.15);
  }

  75% {
    transform: translateY(calc(-50% - 0.7rem)) scale(0.98, 1.1);
  }

  80% {
    transform: translateY(calc(-50% - 0.8rem)) scale(0.99, 1.08);
  }

  85% {
    transform: translateY(calc(-50% - 0.9rem)) scaleY(1.05);
  }

  90% {
    transform: translateY(calc(-50% - 0.95rem)) scale(1.2, 1.03);
  }

  95% {
    transform: translateY(calc(-50% - 0.98rem)) scale(1.1, 1.01);
  }

  100% {
    transform: translateY(calc(-50% - 1rem)) scaleX(1.4);
  }
}

/* ==========================================
   HERO TEXT SPACING FIX — MOBILE ONLY
   Desktop styles remain unchanged.
   ========================================== */

@media screen and (max-width: 767px) {
  /* Hero content */
  .hero-container .hero-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0 !important;
  }

  /* Small label */
  .hero-container .hero-label {
    margin-bottom: 20px !important;
  }

  /* Main heading */
  .hero-container .hero-content .hero-title {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 0 12px 0 !important;
    padding: 0 !important;

    font-size: clamp(36px, 9vw, 46px) !important;
    line-height: 1.18 !important;
    letter-spacing: -1.5px !important;

    white-space: normal !important;
    overflow: visible !important;
    transform: none !important;
  }

  /* Heading lines */
  .hero-container .hero-title .title-line {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: inherit !important;
    transform: none !important;
  }

  /* Paragraph and button wrapper */
  .hero-container .hero-content .hero-bottom {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
    gap: 24px !important;

    transform: none !important;
  }

  /* Paragraph */
  .hero-container .hero-content .hero-description {
    position: relative !important;
    display: block !important;

    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    inset: auto !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 14px !important;
    line-height: 1.7 !important;
    letter-spacing: normal !important;
    word-spacing: normal !important;

    text-align: left !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;

    transform: none !important;
  }
}

/* Mobile sidebar dropdowns */
.hamburger-area .mobile_menu .has-dropdown {
  position: relative;
}

.hamburger-area .mobile_menu .has-dropdown > .sub-menu {
  display: none;
  width: 100%;
  margin: 0;
  padding: 0 0 0 15px;
}

.hamburger-area .mobile_menu .has-dropdown.dropdown-open > .sub-menu {
  display: block !important;
}

.hamburger-area .mobile_menu .mobile-dropdown-toggle {
  display: block;
  padding-right: 50px;
}

.hamburger-area .mobile_menu .mobile-dropdown-button {
  position: absolute;
  top: 0;
  right: 0;
  width: 44px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  z-index: 2;
}

.hamburger-area .mobile_menu .mobile-dropdown-button i {
  transition: transform 0.2s ease;
}

.hamburger-area
  .mobile_menu
  .has-dropdown.dropdown-open
  > .mobile-dropdown-button
  i {
  transform: rotate(180deg);
}

/* MOBILE MENU DROPDOWN ARROWS */
.hamburger-area .mobile_menu .has-dropdown {
  position: relative;
}

.hamburger-area .mobile_menu .has-dropdown > a.mean-expand {
  display: flex !important;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  right: 0;
  width: 45px;
  height: 45px;
  padding: 0 !important;
  background: transparent !important;
  border: 0;
  color: inherit;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 10;
}

.hamburger-area .mobile_menu .has-dropdown > a.mean-expand i {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  font-size: 16px;
  line-height: 1;
  transition: transform 0.25s ease;
}

.hamburger-area .mobile_menu .has-dropdown > a:not(.mean-expand) {
  padding-right: 50px;
}

#apply-now {
  scroll-margin-top: 110px;
}
.header-area.header-1 {
  background: #fff;
  z-index: 1000;
}
.header-area.header-1 .header-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  flex-wrap: nowrap;
  min-height: 104px;
  padding: 14px 22px;
}
.header-area.header-1 .site_logo {
  flex: 0 0 185px;
  width: 185px;
  min-width: 150px;
  margin: 0;
}
.header-area.header-1 .site_logo img {
  display: block;
  width: 100%;
  max-width: 185px;
  max-height: 76px;
  object-fit: contain;
  object-position: left center;
}
.header-area.header-1 .menu-area {
  flex: 1 1 auto;
  min-width: 0;
  justify-content: center;
}
.header-area.header-1 .mainmenu,
.header-area.header-1 .mainmenu > ul {
  width: 100%;
}
.header-area.header-1 .mainmenu > ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: clamp(10px, 1.15vw, 19px);
  margin: 0;
  padding: 0;
}
.header-area.header-1 .mainmenu > ul > li {
  flex: 0 0 auto;
  white-space: nowrap;
}
.header-area.header-1 .mainmenu > ul > li > a {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.15px;
  color: #171323;
  padding: 12px 0;
  transition: color 0.2s ease;
}
.header-area.header-1 .mainmenu > ul > li > a:hover,
.header-area.header-1 .mainmenu > ul > li.current-menu-item > a {
  color: #3b0b83;
}
.header-area.header-1 .header-right-item {
  flex: 0 0 auto;
  margin-left: 2px;
}
.header-area.header-1 .header-button .tj-primary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 48px;
  padding: 7px 8px 7px 22px;
  border-radius: 50px;
  background: #3b0b83;
  color: #fff;
  white-space: nowrap;
}
.header-area.header-1 .header-button .btn-text,
.header-area.header-1 .header-button .btn-text span {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}
.header-area.header-1 .header-button .btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  color: #3b0b83;
}
.header-area.header-1 .header-button .btn-icon i {
  color: #3b0b83;
}
.header-area.header-1 .sub-menu {
  min-width: 235px;
  padding: 10px 0;
  border: 1px solid #eee9f7;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(32, 13, 63, 0.12);
}
.header-area.header-1 .sub-menu li a {
  display: block;
  padding: 10px 18px;
  font-size: 13px;
  line-height: 1.45;
  color: #252033;
}
.header-area.header-1 .sub-menu li a:hover {
  color: #3b0b83;
  background: #f7f3fc;
}
@media (max-width: 1399px) and (min-width: 992px) {
  .header-area.header-1 .header-wrapper {
    gap: 14px;
    padding-inline: 12px;
  }
  .header-area.header-1 .site_logo {
    flex-basis: 150px;
    width: 150px;
    min-width: 140px;
  }
  .header-area.header-1 .site_logo img {
    max-width: 150px;
  }
  .header-area.header-1 .mainmenu > ul {
    gap: 10px;
  }
  .header-area.header-1 .mainmenu > ul > li > a {
    font-size: 11.5px;
  }
  .header-area.header-1 .header-button .tj-primary-btn {
    padding-left: 15px;
  }
}
@media (max-width: 991px) {
  .header-area.header-1 .header-wrapper {
    min-height: 78px;
    padding: 10px 16px;
    gap: 12px;
  }
  .header-area.header-1 .site_logo {
    flex: 0 1 175px;
    width: 175px;
    min-width: 0;
  }
  .header-area.header-1 .site_logo img {
    max-width: 175px;
    max-height: 62px;
  }
  .header-area.header-1 .menu_bar {
    flex: 0 0 auto;
    margin-left: auto;
  }
  .hamburger-area .hamburger_menu .mean-nav > ul > li > a {
    font-size: 15px;
    font-weight: 600;
  }
  .hamburger-area .hamburger_menu .mean-nav ul ul li a {
    padding-left: 28px;
    font-size: 14px;
  }
}
.header-area.header-1 {
  background: #fff;
  z-index: 1000;
}
.header-area.header-1 .header-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  flex-wrap: nowrap;
  min-height: 104px;
  padding: 14px 22px;
}
.header-area.header-1 .site_logo {
  flex: 0 0 185px;
  width: 185px;
  min-width: 150px;
  margin: 0;
}
.header-area.header-1 .site_logo img {
  display: block;
  width: 100%;
  max-width: 185px;
  max-height: 76px;
  object-fit: contain;
  object-position: left center;
}
.header-area.header-1 .menu-area {
  flex: 1 1 auto;
  min-width: 0;
  justify-content: center;
}
.header-area.header-1 .mainmenu,
.header-area.header-1 .mainmenu > ul {
  width: 100%;
}
.header-area.header-1 .mainmenu > ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: clamp(10px, 1.15vw, 19px);
  margin: 0;
  padding: 0;
}
.header-area.header-1 .mainmenu > ul > li {
  flex: 0 0 auto;
  white-space: nowrap;
}
.header-area.header-1 .mainmenu > ul > li > a {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.15px;
  color: #171323;
  padding: 12px 0;
  transition: color 0.2s ease;
}
.header-area.header-1 .mainmenu > ul > li > a:hover,
.header-area.header-1 .mainmenu > ul > li.current-menu-item > a {
  color: #3b0b83;
}
.header-area.header-1 .header-right-item {
  flex: 0 0 auto;
  margin-left: 2px;
}
.header-area.header-1 .header-button .tj-primary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 48px;
  padding: 7px 8px 7px 22px;
  border-radius: 50px;
  background: #3b0b83;
  color: #fff;
  white-space: nowrap;
}
.header-area.header-1 .header-button .btn-text,
.header-area.header-1 .header-button .btn-text span {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}
.header-area.header-1 .header-button .btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  color: #3b0b83;
}
.header-area.header-1 .header-button .btn-icon i {
  color: #3b0b83;
}
.header-area.header-1 .sub-menu {
  min-width: 235px;
  padding: 10px 0;
  border: 1px solid #eee9f7;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(32, 13, 63, 0.12);
}
.header-area.header-1 .sub-menu li a {
  display: block;
  padding: 10px 18px;
  font-size: 13px;
  line-height: 1.45;
  color: #252033;
}
.header-area.header-1 .sub-menu li a:hover {
  color: #3b0b83;
  background: #f7f3fc;
}
/* Keep dropdown arrows beside their menu labels, not on a second line. */
.header-area.header-1 .mainmenu > ul > li.has-dropdown > a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  position: relative;
  white-space: nowrap;
}
.header-area.header-1 .mainmenu > ul > li.has-dropdown > a::after {
  position: static !important;
  display: inline-block !important;
  inset: auto !important;
  margin: 0 !important;
  transform: none !important;
  vertical-align: middle;
}
.header-area.header-1 .mainmenu > ul > li.has-dropdown {
  display: flex;
  align-items: center;
}
@media (max-width: 1399px) and (min-width: 992px) {
  .header-area.header-1 .header-wrapper {
    gap: 16px;
    padding-inline: 20px;
  }
  .header-area.header-1 .site_logo {
    flex-basis: 165px;
    width: 165px;
    min-width: 150px;
  }
  .header-area.header-1 .site_logo img {
    max-width: 165px;
  }
  .header-area.header-1 .mainmenu > ul {
    gap: clamp(9px, 0.8vw, 14px);
  }
 
  .header-area.header-1 .header-button .tj-primary-btn {
    padding-left: 17px;
  }
}
@media (max-width: 991px) {
  .header-area.header-1 .header-wrapper {
    min-height: 78px;
    padding: 10px 16px;
    gap: 12px;
  }
  .header-area.header-1 .site_logo {
    flex: 0 1 175px;
    width: 175px;
    min-width: 0;
  }

  .header-area.header-1 .menu_bar {
    flex: 0 0 auto;
    margin-left: auto;
  }
  .hamburger-area .hamburger_menu .mean-nav > ul > li > a {
    font-size: 15px;
    font-weight: 600;
  }
  .hamburger-area .hamburger_menu .mean-nav ul ul li a {
    padding-left: 28px;
    font-size: 14px;
  }
}
/* Make ITology logo bigger */
.header-area.header-1 .site_logo {
  flex: 0 0 150px !important;
  width: 150px !important;
  max-width: 150px !important;
}

.header-area.header-1 .site_logo img {
  width: 90px !important;
  max-width: 90px !important;
  height: 90px !important;
  max-height: 90px !important;
  object-fit: contain;
}

/* Keep logo vertically centered */
.header-area.header-1 .header-wrapper {
  min-height: 110px;
  align-items: center;
}

/* !END: Preloader CSS */
/* logo */
.site_logo img {
  width: 90px;
  height: auto;
  max-width: 125%;
  object-fit: contain;
  display: block;
}

/**----------------------------------------
START: Error 404 CSS
----------------------------------------*/
.tj-error-section {
  padding: 150px 0 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-error-section {
    padding: 100px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-error-section {
    padding: 70px 0;
  }
}
.tj-error-content {
  position: relative;
  max-width: 900px;
  width: 100%;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  z-index: 1;
}
.tj-error-content .error-img {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 800px;
  margin-bottom: 45px;
}
@media (max-width: 575px) {
  .tj-error-content .error-img {
    padding: 0 20px;
    margin-bottom: 30px;
  }
}
.tj-error-content .error-title {
  font-size: var(--tj-fs-h1);
  margin: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-error-content .error-title {
    font-size: 70px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-error-content .error-title {
    font-size: 65px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-error-content .error-title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-error-content .error-title {
    font-size: 55px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-error-content .error-title {
    font-size: 45px;
  }
}
@media (max-width: 575px) {
  .tj-error-content .error-title {
    font-size: 40px;
  }
}
.tj-error-content .error-desc {
  max-width: 600px;
  margin: 20px auto 0;
}
.tj-error-content .error-btn {
  margin-top: 35px;
}
@media (max-width: 575px) {
  .tj-error-content .error-btn {
    margin-top: 25px;
  }
}

/* !END: Error 404 CSS */
/**----------------------------------------
START: Back to top CSS
----------------------------------------*/
#tj-back-to-top {
  height: 60px;
  width: 60px;
  background-color: var(--tj-color-common-white);
  border-radius: 50%;
  position: fixed;
  bottom: 30px;
  inset-inline-end: 40px;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  display: grid;
  place-items: center;
  cursor: pointer;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 100;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  #tj-back-to-top {
    height: 50px;
    width: 50px;
  }
}
#tj-back-to-top.active {
  bottom: 40px;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
  visibility: visible;
  -webkit-animation: 500ms ease-in-out 0s normal none 1 running scrollToTop;
  animation: 500ms ease-in-out 0s normal none 1 running scrollToTop;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  background: var(--tj-color-theme-primary);
}
#tj-back-to-top .return {
  visibility: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#tj-back-to-top-percentage {
  height: calc(100% - 2px);
  width: calc(100% - 2px);
  background-color: var(--tj-color-common-white);
  color: var(--tj-color-theme-dark);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 12px;
  font-weight: var(--tj-fw-sbold);
  -webkit-box-shadow: rgba(0, 0, 0, 0.05) 0px 5px 15px 0px;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 5px 15px 0px;
}
#tj-back-to-top-percentage i {
  font-size: var(--tj-fs-h5);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  #tj-back-to-top {
    inset-inline-end: 30px;
  }
  #tj-back-to-top.active {
    bottom: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  #tj-back-to-top {
    bottom: 20px;
    inset-inline-end: 20px;
  }
  #tj-back-to-top.active {
    bottom: 20px;
  }
}

@-webkit-keyframes scrollToTop {
  0% {
    -webkit-transform: translate3d(0, 80%, 0);
    transform: translate3d(0, 80%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes scrollToTop {
  0% {
    -webkit-transform: translate3d(0, 80%, 0);
    transform: translate3d(0, 80%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}
/* !END: Back to top CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.tj-footer-section.footer-4 {
  padding-top: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.footer-4 {
    padding-top: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.footer-4 {
    padding-top: 70px;
  }
}

.footer-cta .cta-title {
  max-width: 580px;
  font-size: 74px;
  line-height: 1.108;
  margin-bottom: 30px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .footer-cta .cta-title {
    font-size: 70px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-cta .cta-title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .footer-cta .cta-title {
    font-size: 50px;
  }
}
@media (max-width: 575px) {
  .footer-cta .cta-title {
    font-size: 43px;
    margin-bottom: 25px;
  }
}
.footer-cta .cta-btn {
  background-color: var(--tj-color-theme-primary);
  border-radius: 50px;
  padding: 10px;
  -webkit-padding-end: 25px;
  padding-inline-end: 25px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 9px;
}
.footer-cta .cta-btn .customers ul li img {
  width: 48px;
  height: 48px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .footer-cta .cta-btn .customers ul li img {
    width: 40px;
    height: 40px;
  }
}
.footer-cta .cta-btn .btn-text {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2px;
  overflow: hidden;
}
.footer-cta .cta-btn .btn-text span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
  text-shadow: 0 30px 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
.footer-cta .cta-btn .btn-text i {
  font-size: 20px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.footer-cta .cta-btn:hover .customers ul li:not(:first-child) {
  -webkit-margin-start: -12px;
  margin-inline-start: -12px;
}
.footer-cta .cta-btn:hover .btn-text span {
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
}

.widget-subscribe-3 {
  background-color: var(--tj-color-theme-primary);
  padding: 40px 30px;
  border-radius: 12px;
}
.widget-subscribe-3 .title {
  color: var(--tj-color-common-white);
  margin-bottom: 25px;
  font-weight: var(--tj-fw-medium);
}
.widget-subscribe-3 .subscribe-form input[type="email"] {
  background-color: var(--tj-color-common-white);
  border-radius: 50px;
  color: var(--tj-color-text-body-4);
  padding: 15px 180px 15px 25px;
  outline: 1px solid transparent;
}
@media (max-width: 575px) {
  .widget-subscribe-3 .subscribe-form input[type="email"] {
    padding: 15px 25px 15px;
  }
}
.widget-subscribe-3
  .subscribe-form
  input[type="email"]::-webkit-input-placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-4);
}
.widget-subscribe-3 .subscribe-form input[type="email"]::-moz-placeholder {
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-4);
}
.widget-subscribe-3 .subscribe-form input[type="email"]:-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-4);
}
.widget-subscribe-3 .subscribe-form input[type="email"]::-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-4);
}
.widget-subscribe-3 .subscribe-form input[type="email"]::placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body-4);
}
.widget-subscribe-3 .subscribe-form input[type="email"]:focus {
  outline-color: var(--tj-color-theme-primary);
}
.widget-subscribe-3 .subscribe-form button {
  width: auto;
  height: auto;
  top: 6px;
  inset-inline-end: 8px;
  font-size: 16px;
  font-weight: var(--tj-fw-sbold);
}
@media (max-width: 575px) {
  .widget-subscribe-3 .subscribe-form button {
    position: static;
    margin-top: 15px;
    background-color: var(--tj-color-common-white);
  }
  .widget-subscribe-3 .subscribe-form button .btn-text {
    color: var(--tj-color-heading-primary);
  }
}
.widget-subscribe-3 .subscribe-form button::before {
  display: none;
}
.widget-subscribe-3 .subscribe-form input[type="checkbox"] {
  border: 1px solid var(--tj-color-grey-1);
}
.widget-subscribe-3 .subscribe-form input[type="checkbox"]::before {
  color: var(--tj-color-common-white);
}
.widget-subscribe-3 .subscribe-form input[type="checkbox"]:checked {
  background-color: var(--tj-color-theme-dark);
  border-color: var(--tj-color-theme-dark);
}
.widget-subscribe-3 .subscribe-form label {
  color: var(--tj-color-grey-1);
  margin-top: 15px;
}
.widget-subscribe-3 .subscribe-form label a {
  color: var(--tj-color-common-white);
}
.widget-subscribe-3 .subscribe-form label a:hover {
  color: var(--tj-color-theme-dark);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-subscribe-3 .subscribe-form {
    margin-top: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .widget-subscribe-3 {
    padding: 30px 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-subscribe-3 {
    margin-top: 30px;
    padding: 30px 20px;
  }
}
@media (max-width: 575px) {
  .widget-subscribe-3 {
    padding: 24px 20px 32px;
  }
}

.widget-contact.style-2 .title {
  color: var(--tj-color-heading-primary);
}
.widget-contact.style-2 .footer-contact-info .contact-item span {
  color: var(--tj-color-text-body);
}
.widget-contact.style-2 .footer-contact-info .contact-item a {
  color: var(--tj-color-heading-primary);
}
.widget-contact.style-2 .footer-contact-info .contact-item a:hover {
  color: var(--tj-color-theme-primary);
}

.tj-copyright-area-4 {
  background-color: var(--tj-color-theme-primary);
}
.tj-copyright-area-4 .copyright-content-area {
  padding: 25px 0;
}
.tj-copyright-area-4 .copyright-text p {
  color: var(--tj-color-common-white);
}
.tj-copyright-area-4 .copyright-text a {
  color: var(--tj-color-common-white);
  position: relative;
}
.tj-copyright-area-4 .copyright-text a::before {
  content: "";
  position: absolute;
  bottom: 2px;
  inset-inline-start: auto;
  inset-inline-end: 0;
  width: 0;
  height: 1px;
  background-color: var(--tj-color-common-white);
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.tj-copyright-area-4 .copyright-text a:hover {
  color: var(--tj-color-common-white);
}
.tj-copyright-area-4 .copyright-text a:hover::before {
  width: 100%;
  inset-inline-start: 0;
  inset-inline-end: auto;
}
.tj-copyright-area-4 .social-links.style-2 ul li a:hover {
  background-color: var(--tj-color-theme-dark);
}
.tj-copyright-area-4 .social-links.style-2 ul li a:hover i {
  color: var(--tj-color-common-white);
}
.tj-copyright-area-4 .copyright-menu ul li::before {
  background: var(--tj-color-border-1);
}
.tj-copyright-area-4 .copyright-menu ul li a {
  color: var(--tj-color-grey-1);
}
.tj-copyright-area-4 .copyright-menu ul li a:hover {
  color: var(--tj-color-heading-primary);
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Animation  CSS
----------------------------------------*/
.tj-anim-move-var-big {
  -webkit-animation-name: moveVarBig;
  animation-name: moveVarBig;
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes moveVarBig {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(150px);
    transform: translateY(150px);
  }
}

@keyframes moveVarBig {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(150px);
    transform: translateY(150px);
  }
}
.tj-anim-move-var-big-reverse {
  -webkit-animation-name: moveVarBigReverse;
  animation-name: moveVarBigReverse;
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes moveVarBigReverse {
  0% {
    -webkit-transform: translateY(150px);
    transform: translateY(150px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes moveVarBigReverse {
  0% {
    -webkit-transform: translateY(150px);
    transform: translateY(150px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
.tj-zoom-in-out-anim {
  -webkit-animation-name: zoomInOutAnim;
  animation-name: zoomInOutAnim;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes zoomInOutAnim {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}

@keyframes zoomInOutAnim {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}
/* !END: Animation CSS */
/* cursor css  */
.cb-cursor {
  position: fixed;
  top: 0;
  inset-inline-start: 0;
  z-index: 150;
  contain: layout style size;
  pointer-events: none;
  will-change: transform;
  -webkit-transition:
    opacity 0.3s,
    color 0.4s;
  transition:
    opacity 0.3s,
    color 0.4s;
}

.cb-cursor:before {
  content: "";
  position: absolute;
  top: -24px;
  inset-inline-start: -24px;
  display: block;
  width: 164px;
  height: 52px;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  border-radius: 100px;
  -webkit-transition:
    opacity 0.1s,
    -webkit-transform 0.3s ease-in-out;
  transition:
    opacity 0.1s,
    -webkit-transform 0.3s ease-in-out;
  transition:
    transform 0.3s ease-in-out,
    opacity 0.1s;
  transition:
    transform 0.3s ease-in-out,
    opacity 0.1s,
    -webkit-transform 0.3s ease-in-out;
}

.cb-cursor-text {
  position: absolute;
  top: -24px;
  inset-inline-start: -24px;
  width: 164px;
  height: 52px;
  line-height: 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transform: scale(0) rotate(10deg);
  -ms-transform: scale(0) rotate(10deg);
  transform: scale(0) rotate(10deg);
  opacity: 0;
  color: var(--tj-color-theme-dark);
  text-align: center;
  white-space: nowrap;
  letter-spacing: 0;
  font-weight: var(--tj-fw-sbold);
  -webkit-transition:
    opacity 0.4s,
    -webkit-transform 0.3s;
  transition:
    opacity 0.4s,
    -webkit-transform 0.3s;
  transition:
    opacity 0.4s,
    transform 0.3s;
  transition:
    opacity 0.4s,
    transform 0.3s,
    -webkit-transform 0.3s;
}

@supports (mix-blend-mode: exclusion) {
  .cb-cursor.-exclusion,
  .cb-cursor.-opaque {
    mix-blend-mode: exclusion;
  }
}
@supports (mix-blend-mode: exclusion) {
  .cb-cursor.-exclusion:before,
  .cb-cursor.-opaque:before {
    background: white;
  }
}
.cb-cursor.-normal,
.cb-cursor.-text {
  mix-blend-mode: normal;
}

.cb-cursor.-normal:before,
.cb-cursor.-text:before {
  background: currentColor;
}

.cb-cursor.-inverse {
  color: white;
}

.cb-cursor.-visible:before {
  -webkit-transform: scale(0.2);
  -ms-transform: scale(0.2);
  transform: scale(0.2);
}

.cb-cursor.-visible.-active:before {
  -webkit-transform: scale(0.23);
  -ms-transform: scale(0.23);
  transform: scale(0.23);
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}

.cb-cursor.-pointer:before {
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
}

.cb-cursor.-text:before {
  background: var(--tj-color-common-white);
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.cb-cursor.-text .cb-cursor-text {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.cb-cursor.-text.-active:before {
  -webkit-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}

/*----------------------------------------*/
/*  2.178 Range Slider css start
/*----------------------------------------*/
.ui-button-icon-only,
.ui-controlgroup-vertical .ui-controlgroup-item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.ui-checkboxradio-disabled,
.ui-state-disabled {
  pointer-events: none;
}

.ui-datepicker .ui-icon,
.ui-icon {
  text-indent: -99999px;
  background-repeat: no-repeat;
}

.ui-helper-reset,
.ui-menu {
  outline: 0;
  list-style: none;
}

.ui-helper-hidden,
.ui-resizable-autohide .ui-resizable-handle,
.ui-resizable-disabled .ui-resizable-handle {
  display: none;
}

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
}

.ui-helper-clearfix:after,
.ui-helper-clearfix:before {
  content: "";
  display: table;
  border-collapse: collapse;
}

.ui-helper-clearfix:after {
  clear: both;
}

.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  inset-inline-start: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0);
}

.ui-front {
  z-index: 100;
}

.ui-state-disabled {
  cursor: default !important;
}

.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -0.25em;
  position: relative;
  overflow: hidden;
}

.ui-widget-icon-block {
  inset-inline-start: 50%;
  -webkit-margin-start: -8px;
  margin-inline-start: -8px;
  display: block;
}

.ui-widget-overlay {
  position: fixed;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
}

.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin: 2px 0 0;
  padding: 0.5em 0.5em 0.5em 0.7em;
  font-size: 100%;
}

.ui-autocomplete,
.ui-menu .ui-menu {
  position: absolute;
}

.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  overflow: auto;
}

.ui-autocomplete {
  top: 0;
  inset-inline-start: 0;
  cursor: default;
}

.ui-menu {
  padding: 0;
  margin: 0;
  display: block;
}

.ui-button,
.ui-controlgroup {
  display: inline-block;
  vertical-align: middle;
}

.ui-button,
.ui-menu-icons,
.ui-resizable {
  position: relative;
}

.ui-menu .ui-menu-item {
  margin: 0;
  cursor: pointer;
  list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}

.ui-menu .ui-menu-item-wrapper {
  position: relative;
  padding: 3px 1em 3px 0.4em;
}

.ui-menu .ui-menu-divider {
  margin: 5px 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0;
}

.ui-menu .ui-state-active,
.ui-menu .ui-state-focus {
  margin: -1px;
}

.ui-menu-icons .ui-menu-item-wrapper {
  -webkit-padding-start: 2em;
  padding-inline-start: 2em;
}

.ui-button,
.ui-controlgroup .ui-controlgroup-label {
  padding: 0.4em 1em;
}

.ui-menu .ui-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  inset-inline-start: 0.2em;
  margin: auto 0;
}

.ui-menu .ui-menu-icon {
  inset-inline-start: auto;
  inset-inline-end: 0;
}

.ui-button {
  line-height: normal;
  -webkit-margin-end: 0.1em;
  margin-inline-end: 0.1em;
  cursor: pointer;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow: visible;
}

.ui-button,
.ui-button:active,
.ui-button:hover,
.ui-button:link,
.ui-button:visited {
  text-decoration: none;
}

.ui-button-icon-only {
  width: 2em;
  text-indent: -9999px;
  white-space: nowrap;
}

input.ui-button.ui-button-icon-only {
  text-indent: 0;
}

.ui-button-icon-only .ui-icon {
  position: absolute;
  top: 50%;
  inset-inline-start: 50%;
  margin-top: -8px;
  -webkit-margin-start: -8px;
  margin-inline-start: -8px;
}

.ui-button.ui-icon-notext .ui-icon {
  padding: 0;
  width: 2.1em;
  height: 2.1em;
  text-indent: -9999px;
  white-space: nowrap;
}

input.ui-button.ui-icon-notext .ui-icon {
  width: auto;
  height: auto;
  text-indent: 0;
  white-space: normal;
  padding: 0.4em 1em;
}

button.ui-button::-moz-focus-inner,
input.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.ui-controlgroup > .ui-controlgroup-item {
  float: left;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}

.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus,
.ui-controlgroup > .ui-controlgroup-item:focus {
  z-index: 9999;
}

.ui-controlgroup-vertical > .ui-controlgroup-item {
  display: block;
  float: none;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  text-align: start;
}

.ui-controlgroup .ui-controlgroup-label span {
  font-size: 80%;
}

.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
  -webkit-border-start: none;
  border-inline-start: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
  border-top: none;
}

.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
  -webkit-border-end: none;
  border-inline-end: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
  border-bottom: none;
}

.ui-controlgroup-vertical .ui-spinner-input {
  width: 75%;
  width: calc(100% - 2.4em);
}

.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
  border-top-style: solid;
}

.ui-checkboxradio-label .ui-icon-background {
  -webkit-box-shadow: inset 1px 1px 1px #ccc;
  box-shadow: inset 1px 1px 1px #ccc;
  border-radius: 0.12em;
  border: none;
}

.ui-checkboxradio-radio-label .ui-icon-background {
  width: 16px;
  height: 16px;
  border-radius: 1em;
  overflow: visible;
  border: none;
}

.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
  background-image: none;
  width: 8px;
  height: 8px;
  border-width: 4px;
  border-style: solid;
}

.ui-datepicker {
  width: 17em;
  padding: 0.2em 0.2em 0;
  display: none;
}

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: 0.2em 0;
}

.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-prev {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em;
}

.ui-datepicker .ui-datepicker-next-hover,
.ui-datepicker .ui-datepicker-prev-hover {
  top: 1px;
}

.ui-datepicker .ui-datepicker-prev {
  inset-inline-start: 2px;
}

.ui-datepicker .ui-datepicker-next {
  inset-inline-end: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
  inset-inline-start: 1px;
}

.ui-datepicker .ui-datepicker-next-hover {
  inset-inline-end: 1px;
}

.ui-datepicker .ui-datepicker-next span,
.ui-datepicker .ui-datepicker-prev span {
  display: block;
  position: absolute;
  inset-inline-start: 50%;
  -webkit-margin-start: -8px;
  margin-inline-start: -8px;
  top: 50%;
  margin-top: -8px;
}

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center;
}

.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%;
}

.ui-datepicker table {
  width: 100%;
  font-size: 0.9em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
}

.ui-datepicker th {
  padding: 0.7em 0.3em;
  text-align: center;
  font-weight: 700;
  border: 0;
}

.ui-datepicker td {
  border: 0;
  padding: 1px;
}

.ui-datepicker td a,
.ui-datepicker td span {
  display: block;
  padding: 0.2em;
  text-align: end;
  text-decoration: none;
}

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0;
  padding: 0 0.2em;
  -webkit-border-start: 0;
  border-inline-start: 0;
  -webkit-border-end: 0;
  border-inline-end: 0;
  border-bottom: 0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em;
  width: auto;
  overflow: visible;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-multi .ui-datepicker-group,
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}

.ui-datepicker.ui-datepicker-multi {
  width: auto;
}

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-inline-start-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0;
}

.ui-datepicker-rtl {
  direction: rtl;
}

.ui-datepicker-rtl .ui-datepicker-prev {
  inset-inline-end: 2px;
  inset-inline-start: auto;
}

.ui-datepicker-rtl .ui-datepicker-next {
  inset-inline-start: 2px;
  inset-inline-end: auto;
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  inset-inline-end: 1px;
  inset-inline-start: auto;
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
  inset-inline-start: 1px;
  inset-inline-end: auto;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group,
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  float: right;
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-inline-end-width: 0;
  border-inline-start-width: 1px;
}

.ui-datepicker .ui-icon {
  display: block;
  overflow: hidden;
  inset-inline-start: 0.5em;
  top: 0.3em;
}

.ui-dialog {
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  padding: 0.2em;
  outline: 0;
}

.ui-dialog .ui-dialog-titlebar {
  padding: 0.4em 1em;
  position: relative;
}

.ui-dialog .ui-dialog-title {
  float: left;
  margin: 0.1em 0;
  white-space: nowrap;
  width: 90%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  inset-inline-end: 0.3em;
  top: 50%;
  width: 20px;
  margin: -10px 0 0;
  padding: 1px;
  height: 20px;
}

.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  padding: 0.5em 1em;
  background: 0 0;
  overflow: auto;
}

.ui-dialog .ui-dialog-buttonpane {
  text-align: start;
  border-width: 1px 0 0;
  background-image: none;
  margin-top: 0.5em;
  padding: 0.3em 1em 0.5em 0.4em;
}

.ui-dialog .ui-dialog-buttonpane button {
  margin: 0.5em 0.4em 0.5em 0;
  cursor: pointer;
}

.ui-dialog .ui-resizable-n {
  height: 2px;
  top: 0;
}

.ui-dialog .ui-resizable-e {
  width: 2px;
  inset-inline-end: 0;
}

.ui-dialog .ui-resizable-s {
  height: 2px;
  bottom: 0;
}

.ui-dialog .ui-resizable-w {
  width: 2px;
  inset-inline-start: 0;
}

.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw,
.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw {
  width: 7px;
  height: 7px;
}

.ui-dialog .ui-resizable-se {
  inset-inline-end: 0;
  bottom: 0;
}

.ui-dialog .ui-resizable-sw {
  inset-inline-start: 0;
  bottom: 0;
}

.ui-dialog .ui-resizable-ne {
  inset-inline-end: 0;
  top: 0;
}

.ui-dialog .ui-resizable-nw {
  inset-inline-start: 0;
  top: 0;
}

.ui-draggable .ui-dialog-titlebar {
  cursor: move;
}

.ui-draggable-handle,
.ui-selectable,
.ui-sortable-handle {
  -ms-touch-action: none;
  touch-action: none;
}

.ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  display: block;
  -ms-touch-action: none;
  touch-action: none;
}

.ui-resizable-n {
  cursor: n-resize;
  height: 7px;
  width: 100%;
  top: -5px;
  inset-inline-start: 0;
}

.ui-resizable-s {
  cursor: s-resize;
  height: 7px;
  width: 100%;
  bottom: -5px;
  inset-inline-start: 0;
}

.ui-resizable-e {
  cursor: e-resize;
  width: 7px;
  inset-inline-end: -5px;
  top: 0;
  height: 100%;
}

.ui-resizable-w {
  cursor: w-resize;
  width: 7px;
  inset-inline-start: -5px;
  top: 0;
  height: 100%;
}

.ui-resizable-se {
  cursor: se-resize;
  width: 12px;
  height: 12px;
  inset-inline-end: 1px;
  bottom: 1px;
}

.ui-resizable-sw {
  cursor: sw-resize;
  width: 9px;
  height: 9px;
  inset-inline-start: -5px;
  bottom: -5px;
}

.ui-resizable-nw {
  cursor: nw-resize;
  width: 9px;
  height: 9px;
  inset-inline-start: -5px;
  top: -5px;
}

.ui-resizable-ne {
  cursor: ne-resize;
  width: 9px;
  height: 9px;
  inset-inline-end: -5px;
  top: -5px;
}

.ui-progressbar {
  height: 2em;
  text-align: start;
  overflow: hidden;
}

.ui-progressbar .ui-progressbar-value {
  margin: -1px;
  height: 100%;
}

.ui-progressbar .ui-progressbar-overlay {
  background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
  height: 100%;
  opacity: 0.25;
}

.ui-progressbar-indeterminate .ui-progressbar-value {
  background-image: none;
}

.ui-selectable-helper {
  position: absolute;
  z-index: 100;
  border: 1px dotted #000;
}

.ui-selectmenu-menu {
  padding: 0;
  margin: 0;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  display: none;
}

.ui-selectmenu-menu .ui-menu {
  overflow: auto;
  overflow-x: hidden;
  padding-bottom: 1px;
}

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
  font-size: 1em;
  font-weight: 700;
  line-height: 1.5;
  padding: 2px 0.4em;
  margin: 0.5em 0 0;
  height: auto;
  border: 0;
}

.ui-selectmenu-open {
  display: block;
}

.ui-selectmenu-text {
  display: block;
  -webkit-margin-end: 20px;
  margin-inline-end: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ui-selectmenu-button.ui-button {
  text-align: start;
  white-space: nowrap;
  width: 14em;
}

.ui-selectmenu-icon.ui-icon {
  float: right;
  margin-top: 0;
}

.ui-slider {
  position: relative;
  text-align: start;
}

.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1.2em;
  height: 1.2em;
  cursor: default;
  -ms-touch-action: none;
  touch-action: none;
}

.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  font-size: 0.7em;
  display: block;
  border: 0;
  background-position: 0 0;
}

.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
  -webkit-filter: inherit;
  filter: inherit;
}

.ui-slider-horizontal {
  height: 0.8em;
}

.ui-slider-horizontal .ui-slider-handle {
  top: -0.3em;
  -webkit-margin-start: -0.6em;
  margin-inline-start: -0.6em;
}

.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
}

.ui-slider-horizontal .ui-slider-range-min {
  inset-inline-start: 0;
}

.ui-slider-horizontal .ui-slider-range-max {
  inset-inline-end: 0;
}

.ui-slider-vertical {
  width: 0.8em;
  height: 100px;
}

.ui-slider-vertical .ui-slider-handle {
  inset-inline-start: -0.3em;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  margin-bottom: -0.6em;
}

.ui-slider-vertical .ui-slider-range {
  inset-inline-start: 0;
  width: 100%;
}

.ui-slider-vertical .ui-slider-range-min,
.ui-spinner-down {
  bottom: 0;
}

.ui-slider-vertical .ui-slider-range-max,
.ui-spinner-up {
  top: 0;
}

.ui-spinner {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  vertical-align: middle;
}

.ui-spinner-input {
  border: none;
  background: 0 0;
  color: inherit;
  padding: 0.222em 0;
  margin: 0.2em 2em 0.2em 0.4em;
  vertical-align: middle;
}

.ui-spinner-button {
  width: 1.6em;
  height: 50%;
  font-size: 0.5em;
  padding: 0;
  margin: 0;
  text-align: center;
  position: absolute;
  cursor: default;
  display: block;
  overflow: hidden;
  inset-inline-end: 0;
}

.ui-spinner a.ui-spinner-button {
  border-top-style: none;
  border-bottom-style: none;
  border-inline-end-style: none;
}

.ui-tabs {
  position: relative;
  padding: 0.2em;
}

.ui-tabs .ui-tabs-nav {
  margin: 0;
  padding: 0.2em 0.2em 0;
}

.ui-tabs .ui-tabs-nav li {
  list-style: none;
  float: left;
  position: relative;
  top: 0;
  margin: 1px 0.2em 0 0;
  border-bottom-width: 0;
  padding: 0;
  white-space: nowrap;
}

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
  float: left;
  padding: 0.5em 1em;
  text-decoration: none;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active {
  margin-bottom: -1px;
  padding-bottom: 1px;
}

.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
  cursor: text;
}

.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
  cursor: pointer;
}

.ui-tabs .ui-tabs-panel {
  display: block;
  border-width: 0;
  padding: 1em 1.4em;
  background: 0 0;
}

.ui-tooltip {
  padding: 8px;
  position: absolute;
  z-index: 9999;
  max-width: 300px;
}

body .ui-tooltip {
  border-width: 2px;
}

.ui-widget,
.ui-widget button,
.ui-widget input,
.ui-widget select,
.ui-widget textarea {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
}

.ui-widget .ui-widget {
  font-size: 1em;
}

.ui-widget.ui-widget-content {
  border: 1px solid #c5c5c5;
}

.ui-widget-content {
  border: 1px solid #ddd;
  background: #fff;
  color: #333;
}

.ui-widget-content a,
.ui-widget-header a {
  color: #333;
}

.ui-widget-header {
  border: 1px solid #ddd;
  background: #e9e9e9;
  color: #333;
  font-weight: 700;
}

.ui-button,
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
html .ui-button.ui-state-disabled:active,
html .ui-button.ui-state-disabled:hover {
  border: 1px solid #c5c5c5;
  background: #f6f6f6;
  font-weight: 400;
  color: #454545;
}

.ui-button,
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button {
  color: #454545;
  text-decoration: none;
}

.ui-button:focus,
.ui-button:hover,
.ui-state-focus,
.ui-state-hover,
.ui-widget-content .ui-state-focus,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-focus,
.ui-widget-header .ui-state-hover {
  border: 1px solid #ccc;
  background: #ededed;
  font-weight: 400;
  color: #2b2b2b;
}

.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
a.ui-button:focus,
a.ui-button:hover {
  color: #2b2b2b;
  text-decoration: none;
}

.ui-visual-focus {
  -webkit-box-shadow: 0 0 3px 1px #5e9ed6;
  box-shadow: 0 0 3px 1px #5e9ed6;
}

.ui-button.ui-state-active:hover,
.ui-button:active,
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active {
  border: 1px solid #003eff;
  background: #007fff;
  font-weight: 400;
  color: #fff;
}

.ui-icon-background,
.ui-state-active .ui-icon-background {
  border: #003eff;
  background-color: #fff;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #fff;
  text-decoration: none;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #dad55e;
  background: #fffa90;
  color: #777620;
}

.ui-state-checked {
  border: 1px solid #dad55e;
  background: #fffa90;
}

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #777620;
}

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #f1a899;
  background: #fddfdf;
  color: #5f3f3f;
}

.ui-state-error a,
.ui-state-error-text,
.ui-widget-content .ui-state-error a,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error a,
.ui-widget-header .ui-state-error-text {
  color: #5f3f3f;
}

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: 700;
}

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: 0.7;
  filter: Alpha(Opacity=70);
  font-weight: 400;
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: 0.35;
  filter: Alpha(Opacity=35);
  background-image: none;
}

.ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35);
}

.ui-icon {
  width: 16px;
  height: 16px;
}

.ui-icon,
.ui-widget-content .ui-icon,
.ui-widget-header .ui-icon {
  background-image: url("images/ui-icons_444444_256x240.html");
}

.ui-button:focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-state-hover .ui-icon {
  background-image: url("images/ui-icons_555555_256x240.html");
}

.ui-button:active .ui-icon,
.ui-state-active .ui-icon {
  background-image: url("images/ui-icons_ffffff_256x240.html");
}

.ui-button .ui-state-highlight.ui-icon,
.ui-state-highlight .ui-icon {
  background-image: url("images/ui-icons_777620_256x240.html");
}

.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url("images/ui-icons_cc0000_256x240.html");
}

.ui-button .ui-icon {
  background-image: url("images/ui-icons_777777_256x240.html");
}

.ui-icon-blank {
  background-position: 16px 16px;
}

.ui-icon-caret-1-n {
  background-position: 0 0;
}

.ui-icon-caret-1-ne {
  background-position: -16px 0;
}

.ui-icon-caret-1-e {
  background-position: -32px 0;
}

.ui-icon-caret-1-se {
  background-position: -48px 0;
}

.ui-icon-caret-1-s {
  background-position: -65px 0;
}

.ui-icon-caret-1-sw {
  background-position: -80px 0;
}

.ui-icon-caret-1-w {
  background-position: -96px 0;
}

.ui-icon-caret-1-nw {
  background-position: -112px 0;
}

.ui-icon-caret-2-n-s {
  background-position: -128px 0;
}

.ui-icon-caret-2-e-w {
  background-position: -144px 0;
}

.ui-icon-triangle-1-n {
  background-position: 0 -16px;
}

.ui-icon-triangle-1-ne {
  background-position: -16px -16px;
}

.ui-icon-triangle-1-e {
  background-position: -32px -16px;
}

.ui-icon-triangle-1-se {
  background-position: -48px -16px;
}

.ui-icon-triangle-1-s {
  background-position: -65px -16px;
}

.ui-icon-triangle-1-sw {
  background-position: -80px -16px;
}

.ui-icon-triangle-1-w {
  background-position: -96px -16px;
}

.ui-icon-triangle-1-nw {
  background-position: -112px -16px;
}

.ui-icon-triangle-2-n-s {
  background-position: -128px -16px;
}

.ui-icon-triangle-2-e-w {
  background-position: -144px -16px;
}

.ui-icon-arrow-1-n {
  background-position: 0 -32px;
}

.ui-icon-arrow-1-ne {
  background-position: -16px -32px;
}

.ui-icon-arrow-1-e {
  background-position: -32px -32px;
}

.ui-icon-arrow-1-se {
  background-position: -48px -32px;
}

.ui-icon-arrow-1-s {
  background-position: -65px -32px;
}

.ui-icon-arrow-1-sw {
  background-position: -80px -32px;
}

.ui-icon-arrow-1-w {
  background-position: -96px -32px;
}

.ui-icon-arrow-1-nw {
  background-position: -112px -32px;
}

.ui-icon-arrow-2-n-s {
  background-position: -128px -32px;
}

.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px;
}

.ui-icon-arrow-2-e-w {
  background-position: -160px -32px;
}

.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px;
}

.ui-icon-arrowstop-1-n {
  background-position: -192px -32px;
}

.ui-icon-arrowstop-1-e {
  background-position: -208px -32px;
}

.ui-icon-arrowstop-1-s {
  background-position: -224px -32px;
}

.ui-icon-arrowstop-1-w {
  background-position: -240px -32px;
}

.ui-icon-arrowthick-1-n {
  background-position: 1px -48px;
}

.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px;
}

.ui-icon-arrowthick-1-e {
  background-position: -32px -48px;
}

.ui-icon-arrowthick-1-se {
  background-position: -48px -48px;
}

.ui-icon-arrowthick-1-s {
  background-position: -64px -48px;
}

.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px;
}

.ui-icon-arrowthick-1-w {
  background-position: -96px -48px;
}

.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px;
}

.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px;
}

.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px;
}

.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px;
}

.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px;
}

.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px;
}

.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px;
}

.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px;
}

.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px;
}

.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px;
}

.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px;
}

.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px;
}

.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px;
}

.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px;
}

.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px;
}

.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px;
}

.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px;
}

.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px;
}

.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px;
}

.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px;
}

.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px;
}

.ui-icon-arrow-4 {
  background-position: 0 -80px;
}

.ui-icon-arrow-4-diag {
  background-position: -16px -80px;
}

.ui-icon-extlink {
  background-position: -32px -80px;
}

.ui-icon-newwin {
  background-position: -48px -80px;
}

.ui-icon-refresh {
  background-position: -64px -80px;
}

.ui-icon-shuffle {
  background-position: -80px -80px;
}

.ui-icon-transfer-e-w {
  background-position: -96px -80px;
}

.ui-icon-transferthick-e-w {
  background-position: -112px -80px;
}

.ui-icon-folder-collapsed {
  background-position: 0 -96px;
}

.ui-icon-folder-open {
  background-position: -16px -96px;
}

.ui-icon-document {
  background-position: -32px -96px;
}

.ui-icon-document-b {
  background-position: -48px -96px;
}

.ui-icon-note {
  background-position: -64px -96px;
}

.ui-icon-mail-closed {
  background-position: -80px -96px;
}

.ui-icon-mail-open {
  background-position: -96px -96px;
}

.ui-icon-suitcase {
  background-position: -112px -96px;
}

.ui-icon-comment {
  background-position: -128px -96px;
}

.ui-icon-person {
  background-position: -144px -96px;
}

.ui-icon-print {
  background-position: -160px -96px;
}

.ui-icon-trash {
  background-position: -176px -96px;
}

.ui-icon-locked {
  background-position: -192px -96px;
}

.ui-icon-unlocked {
  background-position: -208px -96px;
}

.ui-icon-bookmark {
  background-position: -224px -96px;
}

.ui-icon-tag {
  background-position: -240px -96px;
}

.ui-icon-home {
  background-position: 0 -112px;
}

.ui-icon-flag {
  background-position: -16px -112px;
}

.ui-icon-calendar {
  background-position: -32px -112px;
}

.ui-icon-cart {
  background-position: -48px -112px;
}

.ui-icon-pencil {
  background-position: -64px -112px;
}

.ui-icon-clock {
  background-position: -80px -112px;
}

.ui-icon-disk {
  background-position: -96px -112px;
}

.ui-icon-calculator {
  background-position: -112px -112px;
}

.ui-icon-zoomin {
  background-position: -128px -112px;
}

.ui-icon-zoomout {
  background-position: -144px -112px;
}

.ui-icon-search {
  background-position: -160px -112px;
}

.ui-icon-wrench {
  background-position: -176px -112px;
}

.ui-icon-gear {
  background-position: -192px -112px;
}

.ui-icon-heart {
  background-position: -208px -112px;
}

.ui-icon-star {
  background-position: -224px -112px;
}

.ui-icon-link {
  background-position: -240px -112px;
}

.ui-icon-cancel {
  background-position: 0 -128px;
}

.ui-icon-plus {
  background-position: -16px -128px;
}

.ui-icon-plusthick {
  background-position: -32px -128px;
}

.ui-icon-minus {
  background-position: -48px -128px;
}

.ui-icon-minusthick {
  background-position: -64px -128px;
}

.ui-icon-close {
  background-position: -80px -128px;
}

.ui-icon-closethick {
  background-position: -96px -128px;
}

.ui-icon-key {
  background-position: -112px -128px;
}

.ui-icon-lightbulb {
  background-position: -128px -128px;
}

.ui-icon-scissors {
  background-position: -144px -128px;
}

.ui-icon-clipboard {
  background-position: -160px -128px;
}

.ui-icon-copy {
  background-position: -176px -128px;
}

.ui-icon-contact {
  background-position: -192px -128px;
}

.ui-icon-image {
  background-position: -208px -128px;
}

.ui-icon-video {
  background-position: -224px -128px;
}

.ui-icon-script {
  background-position: -240px -128px;
}

.ui-icon-alert {
  background-position: 0 -144px;
}

.ui-icon-info {
  background-position: -16px -144px;
}

.ui-icon-notice {
  background-position: -32px -144px;
}

.ui-icon-help {
  background-position: -48px -144px;
}

.ui-icon-check {
  background-position: -64px -144px;
}

.ui-icon-bullet {
  background-position: -80px -144px;
}

.ui-icon-radio-on {
  background-position: -96px -144px;
}

.ui-icon-radio-off {
  background-position: -112px -144px;
}

.ui-icon-pin-w {
  background-position: -128px -144px;
}

.ui-icon-pin-s {
  background-position: -144px -144px;
}

.ui-icon-play {
  background-position: 0 -160px;
}

.ui-icon-pause {
  background-position: -16px -160px;
}

.ui-icon-seek-next {
  background-position: -32px -160px;
}

.ui-icon-seek-prev {
  background-position: -48px -160px;
}

.ui-icon-seek-end {
  background-position: -64px -160px;
}

.ui-icon-seek-first,
.ui-icon-seek-start {
  background-position: -80px -160px;
}

.ui-icon-stop {
  background-position: -96px -160px;
}

.ui-icon-eject {
  background-position: -112px -160px;
}

.ui-icon-volume-off {
  background-position: -128px -160px;
}

.ui-icon-volume-on {
  background-position: -144px -160px;
}

.ui-icon-power {
  background-position: 0 -176px;
}

.ui-icon-signal-diag {
  background-position: -16px -176px;
}

.ui-icon-signal {
  background-position: -32px -176px;
}

.ui-icon-battery-0 {
  background-position: -48px -176px;
}

.ui-icon-battery-1 {
  background-position: -64px -176px;
}

.ui-icon-battery-2 {
  background-position: -80px -176px;
}

.ui-icon-battery-3 {
  background-position: -96px -176px;
}

.ui-icon-circle-plus {
  background-position: 0 -192px;
}

.ui-icon-circle-minus {
  background-position: -16px -192px;
}

.ui-icon-circle-close {
  background-position: -32px -192px;
}

.ui-icon-circle-triangle-e {
  background-position: -48px -192px;
}

.ui-icon-circle-triangle-s {
  background-position: -64px -192px;
}

.ui-icon-circle-triangle-w {
  background-position: -80px -192px;
}

.ui-icon-circle-triangle-n {
  background-position: -96px -192px;
}

.ui-icon-circle-arrow-e {
  background-position: -112px -192px;
}

.ui-icon-circle-arrow-s {
  background-position: -128px -192px;
}

.ui-icon-circle-arrow-w {
  background-position: -144px -192px;
}

.ui-icon-circle-arrow-n {
  background-position: -160px -192px;
}

.ui-icon-circle-zoomin {
  background-position: -176px -192px;
}

.ui-icon-circle-zoomout {
  background-position: -192px -192px;
}

.ui-icon-circle-check {
  background-position: -208px -192px;
}

.ui-icon-circlesmall-plus {
  background-position: 0 -208px;
}

.ui-icon-circlesmall-minus {
  background-position: -16px -208px;
}

.ui-icon-circlesmall-close {
  background-position: -32px -208px;
}

.ui-icon-squaresmall-plus {
  background-position: -48px -208px;
}

.ui-icon-squaresmall-minus {
  background-position: -64px -208px;
}

.ui-icon-squaresmall-close {
  background-position: -80px -208px;
}

.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px;
}

.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px;
}

.ui-icon-grip-solid-vertical {
  background-position: -32px -224px;
}

.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px;
}

.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px;
}

.ui-icon-grip-diagonal-se {
  background-position: -80px -224px;
}

.ui-corner-all,
.ui-corner-left,
.ui-corner-tl,
.ui-corner-top {
  border-start-start-radius: 3px;
}

.ui-corner-all,
.ui-corner-right,
.ui-corner-top,
.ui-corner-tr {
  border-start-end-radius: 3px;
}

.ui-corner-all,
.ui-corner-bl,
.ui-corner-bottom,
.ui-corner-left {
  border-end-start-radius: 3px;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-br,
.ui-corner-right {
  border-end-end-radius: 3px;
}

.ui-widget-overlay {
  background: #aaa;
  opacity: 0.3;
  filter: Alpha(Opacity=30);
}

.ui-widget-shadow {
  -webkit-box-shadow: 0 0 5px #666;
  box-shadow: 0 0 5px #666;
}

/**----------------------------------------
START: Heading CSS
----------------------------------------*/
.sec-heading {
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  width: 100%;
  margin-bottom: 52px;
}
.sec-heading-centered {
  max-width: 550px;
  text-align: center;
}
.sec-heading .sec-title {
  margin-bottom: 0;
}
.sec-heading .sec-title span {
  color: var(--tj-color-theme-primary);
}
.sec-heading .sub-title {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4px;
  color: #21103a;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: var(--tj-fw-bold);
  border: 1px dashed var(--tj-color-border-1);
  padding: 2px 10px;
  margin-bottom: 20px;
  border-radius: 4px;
}
.sec-heading .sub-title i {
  color: var(--tj-color-theme-primary);
  font-size: 22px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .sec-heading .sub-title {
    margin-bottom: 15px;
  }
}
.sec-heading .sub-title.text-white {
  border-color: rgba(255, 255, 255, 0.15);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .sec-heading .sub-title {
    font-size: 13px;
  }
}
.sec-heading.style-2 .sec-title span {
  color: var(--tj-color-text-body-2);
}
.sec-heading.style-2 .sub-title {
  color: var(--tj-color-theme-primary);
  background-color: var(--tj-color-common-white);
  border: 0;
  padding: 7px 10px;
}
.sec-heading.style-3 .sub-title {
  color: var(--tj-color-theme-primary);
  padding: 0;
  border: 0;
}
.sec-heading.style-4 .sub-title {
  color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}
.sec-heading.style-6 .sub-title {
  padding: 4px 8px;
}
.sec-heading.style-7 .sub-title {
  color: var(--tj-color-heading-primary);
  padding: 4px 8px;
}
.sec-heading.style-8 .sub-title {
  color: var(--tj-color-theme-primary);
  border: 0;
  padding: 0 0 0 12px;
  position: relative;
}
.sec-heading.style-8 .sub-title::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  position: absolute;
  inset-inline-start: 0;
  top: 6px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .sec-heading {
    margin-bottom: 35px;
  }
}

.heading-wrap-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 25px;
  margin-bottom: 52px;
}
.heading-wrap-content .sec-heading {
  max-width: 500px;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
  margin-bottom: 0;
}
.heading-wrap-content .desc {
  max-width: 360px;
  margin-bottom: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .heading-wrap-content .desc {
    max-width: 100%;
  }
}
.heading-wrap-content .btn-wrap {
  max-width: 220px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .heading-wrap-content {
    margin-bottom: 35px;
  }
}

.sec-heading-wrap .sub-title {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4px;
  color: var(--tj-color-heading-primary);
  font-size: 14px;
  line-height: 1;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: var(--tj-fw-bold);
  border: 1px dashed var(--tj-color-border-1);
  padding: 2px 10px;
  margin-bottom: 20px;
  border-radius: 4px;
}
.sec-heading-wrap .sub-title i {
  color: var(--tj-color-theme-primary);
  font-size: 22px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .sec-heading-wrap .sub-title {
    margin-bottom: 15px;
  }
}
.sec-heading-wrap.style-3 .sub-title {
  color: var(--tj-color-theme-primary);
  padding: 0;
  border: 0;
}

.content-wrap .sec-heading {
  max-width: 550px;
  margin: 0 0 20px 0;
}
.content-wrap .desc {
  margin-bottom: 0;
}
.content-wrap .tj-primary-btn {
  margin-top: 14px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .content-wrap .tj-primary-btn {
    margin-top: 5px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .content-wrap .desc br {
    display: none;
  }
}

.title-anim > div {
  overflow: hidden;
}

.tj-text-invert > div {
  background-size: 200% 100%;
  background-position-x: 100%;
  color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(50%, var(--tj-color-heading-primary)),
    color-stop(50%, var(--tj-color-text-body-2))
  );
  background-image: linear-gradient(
    to right,
    var(--tj-color-heading-primary) 50%,
    var(--tj-color-text-body-2) 50%
  );
}

.line {
  position: relative;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  --highlight-offset: 0%;
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(var(--tj-color-heading-primary)),
    to(var(--tj-color-text-body-2))
  );
  background-image: linear-gradient(
    90deg,
    var(--tj-color-heading-primary) var(--highlight-offset),
    var(--tj-color-text-body-2) var(--highlight-offset)
  );
}

/* !END: Heading CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.tj-banner-section {
  position: relative;
}

.banner-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  min-height: 792px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .banner-area {
    min-height: 700px;
  }
}

.banner-left-box {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  padding: 70px;
  width: calc(50% - 15px);
  -webkit-margin-end: 15px;
  margin-inline-end: 15px;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
}
.banner-left-box::before {
  content: "";
  position: absolute;
  top: 5%;
  inset-inline-start: 5%;
  width: 350px;
  height: 350px;
  border-radius: 50%;
  background: var(--tj-color-theme-primary);
  -webkit-filter: blur(65px);
  filter: blur(65px);
  opacity: 0.26;
  z-index: -1;
  backdrop-filter: blur(10px);
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .banner-left-box {
    -webkit-padding-end: 40px;
    padding-inline-end: 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .banner-left-box {
    -webkit-padding-start: 50px;
    padding-inline-start: 50px;
    -webkit-padding-end: 40px;
    padding-inline-end: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .banner-left-box {
    width: 100%;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    margin-bottom: 15px;
    padding: 60px 0;
  }
}

.banner-content {
  max-width: 635px;
  width: 100%;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
.banner-content .sub-title {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  color: var(--tj-color-common-white);
  font-size: 14px;
  line-height: 1;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: var(--tj-fw-bold);
  border: 1px dashed var(--tj-color-border-2);
  padding: 6px 10px;
  margin-bottom: 20px;
  border-radius: 4px;
}
.banner-content .sub-title i {
  color: var(--tj-color-theme-primary);
  font-size: 22px;
}
.banner-content .banner-title {
  color: var(--tj-color-common-white);
  line-height: 1.135;
  margin-bottom: 15px;
}
.banner-content .banner-title span {
  display: inline-block;
  color: var(--tj-color-theme-primary);
  font-weight: var(--tj-fw-medium);
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .banner-content .banner-title {
    font-size: 68px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .banner-content .banner-title {
    font-size: 58px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .banner-content .banner-title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .banner-content .banner-title {
    font-size: 45px;
  }
}
@media (max-width: 575px) {
  .banner-content .banner-title {
    font-size: 38px;
  }
}
.banner-content .banner-link {
  font-size: 75px;
  color: var(--tj-color-common-white);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  padding: 10px 30px 15px 0;
  -webkit-border-end: 1px dashed var(--tj-color-border-2);
  border-inline-end: 1px dashed var(--tj-color-border-2);
}
.banner-content .banner-link span {
  overflow: hidden;
}
.banner-content .banner-link i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  -webkit-transform: rotate(-45deg) translateX(0);
  -ms-transform: rotate(-45deg) translateX(0);
  transform: rotate(-45deg) translateX(0);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  text-shadow: -120px 0 0;
}
.banner-content .banner-link:hover i {
  -webkit-transform: rotate(-45deg) translateX(120px);
  -ms-transform: rotate(-45deg) translateX(120px);
  transform: rotate(-45deg) translateX(120px);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .banner-content .banner-link {
    font-size: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .banner-content .banner-link {
    font-size: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .banner-content .banner-link {
    font-size: 45px;
  }
}
.banner-content .banner-desc-area {
  max-width: 475px;
  width: 100%;
  border-top: 1px dashed var(--tj-color-border-2);
  border-bottom: 1px dashed var(--tj-color-border-2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 23px 0;
  margin-top: 40px;
  -webkit-margin-end: 57px;
  margin-inline-end: 57px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
.banner-content .banner-desc-area .banner-desc {
  -webkit-padding-start: 44px;
  padding-inline-start: 44px;
}
@media (max-width: 575px) {
  .banner-content .banner-desc-area .banner-desc {
    -webkit-padding-start: 35px;
    padding-inline-start: 35px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .banner-content .banner-desc-area {
    -webkit-margin-end: 20px;
    margin-inline-end: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .banner-content .banner-desc-area {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}
@media (max-width: 480px) {
  .banner-content .banner-desc-area {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.banner-content .banner-desc {
  color: var(--tj-color-text-body-2);
  font-size: 18px;
  line-height: 1.444;
  max-width: 517px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  (max-width: 575px) {
  .banner-content .banner-desc {
    font-size: 16px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .banner-content {
    max-width: 565px;
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .banner-content {
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .banner-content {
    max-width: 720px;
    margin: 0 auto;
    padding: 0 15px;
  }
}

.banner-img {
  width: 100%;
  height: 100%;
  border-radius: 12px;
  position: relative;
  overflow: hidden;
}
.banner-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 12px;
}

.banner-shape {
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
}
.banner-shape img {
  width: 100%;
  height: 100%;
}

.banner-scroll {
  position: absolute;
  inset-inline-start: 38px;
  bottom: 50px;
  z-index: 5;
}
.banner-scroll .scroll-down {
  color: var(--tj-color-common-white);
  line-height: 1;
  font-weight: var(--tj-fw-sbold);
  -webkit-writing-mode: sideways-lr;
  -ms-writing-mode: sideways-lr;
  writing-mode: sideways-lr;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 12px;
  opacity: 0.5;
}
.banner-scroll .scroll-down span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  font-size: 22px;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.banner-scroll .scroll-down:hover {
  opacity: 1;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .banner-scroll {
    inset-inline-start: 23px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .banner-scroll {
    inset-inline-start: 16px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .banner-scroll {
    bottom: 150px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .banner-scroll {
    display: none;
  }
}

.banner-right-box {
  width: 50%;
  position: relative;
  min-height: 390px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .banner-right-box {
    width: 100%;
  }
}
.banner-right-box .box-area {
  max-width: 261px;
}
@media (max-width: 575px) {
  .banner-right-box .box-area {
    max-width: 200px;
  }
}

.customers-box {
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  padding: 30px 25px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .customers-box {
    padding: 25px 18px 20px;
  }
}

.customers ul {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  list-style: none;
}
.customers ul li {
  line-height: 1;
  -webkit-margin-start: -15px;
  margin-inline-start: -15px;
}
.customers ul li img {
  width: 59px;
  height: 59px;
  background-color: var(--tj-color-common-white);
  border-radius: 50%;
  -webkit-box-shadow: 0 0 0 2px var(--tj-color-common-white);
  box-shadow: 0 0 0 2px var(--tj-color-common-white);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .customers ul li img {
    width: 50px;
    height: 50px;
  }
}
@media (max-width: 575px) {
  .customers ul li img {
    width: 40px;
    height: 40px;
  }
}
.customers ul li:first-child {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
}
.customers ul li:last-child span {
  width: 59px;
  height: 59px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 22px;
  -webkit-box-shadow: 0 0 0 2px var(--tj-color-common-white);
  box-shadow: 0 0 0 2px var(--tj-color-common-white);
}
.customers ul li:last-child span i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .customers ul li:last-child span {
    width: 50px;
    height: 50px;
  }
}
@media (max-width: 575px) {
  .customers ul li:last-child span {
    width: 40px;
    height: 40px;
  }
}
@media (max-width: 575px) {
  .customers ul li {
    -webkit-margin-start: -16px;
    margin-inline-start: -16px;
  }
}

.customers-number {
  color: var(--tj-color-theme-dark);
  font-size: 58px;
  line-height: 0.8;
  letter-spacing: -1.2px;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-sbold);
  padding: 45px 0 13px 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .customers-number {
    font-size: 50px;
    padding: 25px 0 13px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .customers-number {
    font-size: 40px;
    padding: 20px 0 10px 0;
  }
}

.customers-text {
  color: var(--tj-color-text-body);
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  margin-bottom: 0;
  font-weight: var(--tj-fw-regular);
}

.tj-banner-section-2 {
  background-color: var(--tj-color-theme-bg);
  padding-top: 125px;
  padding-bottom: 55px;
  border-radius: 12px;
  position: relative;
  z-index: 1;
}
.tj-banner-section-2 .banner-content-2 {
  max-width: 450px;
  padding: 40px 0;
}
.tj-banner-section-2 .banner-content-2 .sub-title {
  font-size: 14px;
  font-weight: var(--tj-fw-bold);
  color: var(--tj-color-theme-primary);
  letter-spacing: 1.4px;
  text-transform: uppercase;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding-bottom: 15px;
}
.tj-banner-section-2 .banner-content-2 .sub-title i {
  font-size: 22px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-banner-section-2 .banner-content-2 .banner-title {
    line-height: 1.25;
  }
}
.tj-banner-section-2 .banner-content-2 .title-video {
  max-width: 148px;
  border-radius: 6px;
  vertical-align: top;
  margin-top: 10px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow: hidden;
  position: relative;
}
.tj-banner-section-2 .banner-content-2 .title-video i {
  position: absolute;
  top: 50%;
  inset-inline-start: 54%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 14px;
  color: var(--tj-color-common-white);
  z-index: 2;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
.tj-banner-section-2 .banner-content-2 .title-video::after {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.25;
}
.tj-banner-section-2 .banner-content-2 .title-video:hover i {
  -webkit-transform: translate(-50%, -50%) scale(1.2);
  -ms-transform: translate(-50%, -50%) scale(1.2);
  transform: translate(-50%, -50%) scale(1.2);
}
.tj-banner-section-2 .banner-content-2 .title-video:hover::after {
  opacity: 0.4;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-banner-section-2 .banner-content-2 .title-video {
    max-width: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-banner-section-2 .banner-content-2 .title-video {
    max-width: 95px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-banner-section-2 .banner-content-2 .title-video {
    max-width: 100px;
    margin-top: 7px;
  }
}
.tj-banner-section-2 .banner-content-2 .btn-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  margin-top: 20px;
}
.tj-banner-section-2 .banner-content-2 .btn-area .number {
  color: var(--tj-color-heading-primary);
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1;
  gap: 8px;
}
.tj-banner-section-2 .banner-content-2 .btn-area .number i {
  font-size: 19px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.tj-banner-section-2 .banner-content-2 .btn-area .number span {
  position: relative;
}
.tj-banner-section-2 .banner-content-2 .btn-area .number span::after {
  content: "";
  position: absolute;
  bottom: -2px;
  inset-inline-end: 0;
  width: 100%;
  height: 1px;
  background-color: var(--tj-color-heading-primary);
}
.tj-banner-section-2 .banner-content-2 .btn-area .number:hover span::after {
  -webkit-animation: linehover 0.8s linear;
  animation: linehover 0.8s linear;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-banner-section-2 .banner-content-2 {
    padding-top: 0;
    -webkit-padding-start: 30px;
    padding-inline-start: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-banner-section-2 .banner-content-2 {
    padding-top: 0;
    -webkit-padding-start: 40px;
    padding-inline-start: 40px;
  }
}
.tj-banner-section-2 .banner-img-area {
  position: relative;
  z-index: 1;
  max-width: 704px;
  width: 100%;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: -30px;
  margin-inline-end: -30px;
}
.tj-banner-section-2 .banner-img-area::before {
  content: "";
  background-color: var(--tj-color-common-white);
  position: absolute;
  bottom: 0;
  inset-inline-start: 0;
  width: 50%;
  height: 343px;
  z-index: -1;
  border-start-start-radius: 100%;
  border-end-start-radius: 8px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-banner-section-2 .banner-img-area::before {
    height: 290px;
  }
}
@media (max-width: 575px) {
  .tj-banner-section-2 .banner-img-area::before {
    height: 260px;
  }
}
.tj-banner-section-2 .banner-img-area .banner-author {
  position: absolute;
  left: 88px;
  bottom: 224px;
  -webkit-writing-mode: sideways-lr;
  -ms-writing-mode: sideways-lr;
  writing-mode: sideways-lr;
}
.tj-banner-section-2 .banner-img-area .banner-author .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
  position: relative;
}
.tj-banner-section-2 .banner-img-area .banner-author .title::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  position: absolute;
  bottom: -18px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-animation: pulse3 1.5s linear infinite;
  animation: pulse3 1.5s linear infinite;
}
.tj-banner-section-2 .banner-img-area .banner-author .designation {
  font-size: 14px;
  color: var(--tj-color-text-body);
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-banner-section-2 .banner-img-area .banner-author {
    left: 60px;
    bottom: 180px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-banner-section-2 .banner-img-area .banner-author {
    left: 40px;
    bottom: 150px;
  }
}
@media (max-width: 575px) {
  .tj-banner-section-2 .banner-img-area .banner-author {
    left: 20px;
    bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-banner-section-2 .banner-img-area {
    -webkit-margin-end: -20px;
    margin-inline-end: -20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-banner-section-2 .banner-img-area {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.tj-banner-section-2 .banner-img {
  max-width: 507px;
  width: 100%;
  position: relative;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media (max-width: 575px) {
  .tj-banner-section-2 .banner-img > img {
    min-height: 440px;
  }
}
.tj-banner-section-2 .banner-img .brand-name {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 2px rgba(255, 255, 255, 0.6);
  font-weight: var(--tj-fw-sbold);
  font-size: 120px;
  -webkit-writing-mode: sideways-lr;
  -ms-writing-mode: sideways-lr;
  writing-mode: sideways-lr;
  line-height: 0.9;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (max-width: 575px) {
  .tj-banner-section-2 .banner-img .brand-name {
    font-size: 100px;
  }
}
@media (max-width: 430px) {
  .tj-banner-section-2 .banner-img .brand-name {
    font-size: 90px;
  }
}
.tj-banner-section-2 .banner-img .growth-box {
  width: 198px;
  height: 209px;
  position: absolute;
  inset-inline-start: 15px;
  bottom: 15px;
  border-radius: 10px;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  padding: 20px;
}
.tj-banner-section-2 .banner-img .growth-box img {
  border-radius: 0;
}
@media (max-width: 575px) {
  .tj-banner-section-2 .banner-img .growth-box {
    width: 165px;
    height: 175px;
    padding: 10px;
  }
}
@media (max-width: 430px) {
  .tj-banner-section-2 .banner-img .growth-box {
    width: 145px;
    height: 155px;
    inset-inline-start: 10px;
    bottom: 10px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-banner-section-2 .banner-img {
    max-width: 460px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-banner-section-2 .banner-img {
    max-width: 400px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-banner-section-2 .banner-img {
    max-width: calc(100% - 110px);
  }
}
@media (max-width: 575px) {
  .tj-banner-section-2 .banner-img {
    max-width: calc(100% - 90px);
    min-height: 440px;
  }
}
.tj-banner-section-2 .banner-scroll .scroll-down {
  color: var(--tj-color-heading-primary);
  opacity: 1;
}
.tj-banner-section-2 .banner-scroll .scroll-down span {
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  overflow: hidden;
}

.marquee-vr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.marquee-vr .text {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  white-space: nowrap;
  -webkit-animation: marquee 15s linear infinite;
  animation: marquee 15s linear infinite;
  -webkit-animation-delay: 2.5s;
  animation-delay: 2.5s;
}
.marquee-vr .text .icon {
  margin: 40px 0;
}

/* !END: Hero CSS */
/**----------------------------------------
START: Choose CSS
----------------------------------------*/
.tj-choose-section {
  overflow: hidden;
}
.tj-choose-section .sec-heading {
  max-width: 550px;
}
.tj-choose-section.choose-3 .sec-heading {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}

.choose-box {
  height: 100%;
  padding: 50px 28px 45px;
  background-color: var(--tj-color-common-white);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.choose-box .choose-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
}
.choose-box .choose-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  color: var(--tj-color-theme-primary);
  font-size: 88px;
  line-height: 1;
  max-width: 88px;
  margin-bottom: 43px;
}
.choose-box .choose-icon i {
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .choose-box .choose-icon {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .choose-box .choose-icon {
    font-size: 65px;
    max-width: 65px;
    margin-bottom: 20px;
  }
}
.choose-box .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .choose-box .title {
    font-size: 18px;
    margin-bottom: 10px;
  }
}
.choose-box .desc {
  margin-bottom: 0;
}
.choose-box .text-btn {
  margin-top: auto;
  padding-top: 27px;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.choose-box:hover {
  background-color: var(--tj-color-theme-primary);
}
.choose-box:hover .choose-icon {
  color: var(--tj-color-common-white);
  -webkit-animation: gelatine 0.6s;
  animation: gelatine 0.6s;
}
.choose-box:hover .btn-icon {
  background-color: var(--tj-color-theme-dark);
}
.choose-box:hover .btn-text,
.choose-box:hover .desc,
.choose-box:hover .title {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .choose-box {
    padding: 40px 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .choose-box {
    padding: 30px 15px;
  }
}
.choose-box.style-2 {
  padding: 40px 28px;
}
.choose-box.style-2 .choose-icon {
  margin-bottom: 25px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .choose-box.style-2 .choose-icon {
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .choose-box.style-2 {
    padding: 30px 15px;
  }
}

.work-experience-area {
  max-width: 570px;
}
.work-experience-area .sec-heading {
  margin-bottom: 65px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .work-experience-area .sec-heading {
    margin-bottom: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .work-experience-area .sec-heading {
    margin-bottom: 35px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .work-experience-area {
    max-width: 100%;
    margin-bottom: 50px;
  }
}

.experience-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  border-top: 1px dashed rgba(0, 0, 0, 0.16);
  border-bottom: 1px dashed rgba(0, 0, 0, 0.16);
}
.experience-wrap .year-count {
  color: var(--tj-color-theme-primary);
  font-size: 404px;
  line-height: 0.75;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-light);
  letter-spacing: -8.08px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 17px 30px 38px 0;
  -webkit-border-end: 1px dashed rgba(0, 0, 0, 0.16);
  border-inline-end: 1px dashed rgba(0, 0, 0, 0.16);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .experience-wrap .year-count {
    font-size: 335px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .experience-wrap .year-count {
    font-size: 250px;
  }
}
@media (max-width: 575px) {
  .experience-wrap .year-count {
    font-size: 210px;
  }
}
.experience-wrap .experience-text {
  -webkit-padding-start: 32px;
  padding-inline-start: 32px;
  padding-bottom: 35px;
}
.experience-wrap .experience-text .title {
  max-width: 110px;
  font-size: 16px;
  font-weight: var(--tj-fw-sbold);
  font-family: var(--tj-ff-body);
  text-transform: uppercase;
  letter-spacing: 0;
  margin-bottom: 0;
}
.experience-wrap .experience-text span {
  color: var(--tj-color-theme-primary);
  font-size: 24px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.experience-wrap .experience-text span i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
@media (max-width: 575px) {
  .experience-wrap .experience-text {
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
  }
}

/* !END: Choose CSS */
/**----------------------------------------
START: Client CSS
----------------------------------------*/
.tj-client-section {
  position: relative;
}
.tj-client-section .client-container {
  padding: 0;
  overflow: hidden;
}
.tj-client-section-2 {
  background-color: var(--tj-color-theme-primary);
  border-radius: 12px;
  padding: 30px 5px;
  margin-top: 15px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-client-section-2 {
    padding: 18px 5px;
  }
}

.client-section-gap {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .client-section-gap {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .client-section-gap {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.client-section-gap-2 {
  padding: 100px 0;
  margin: 120px 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .client-section-gap-2 {
    padding: 80px 0;
    margin: 90px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .client-section-gap-2 {
    padding: 65px 0;
    margin: 70px 0;
  }
}
@media (max-width: 575px) {
  .client-section-gap-2 {
    padding: 60px 0;
    margin: 50px 0;
  }
}

.client-content {
  width: 320px;
  height: 320px;
  border-radius: 50%;
  border: 1px dashed var(--tj-color-border-1);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  inset-inline-start: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 2;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(8px);
}
.client-content .sec-title {
  max-width: 200px;
  width: 100%;
  letter-spacing: 0;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
}
@media (max-width: 575px) {
  .client-content .sec-title {
    font-size: 15px;
  }
}
.client-content span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.client-content .client-numbers {
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  line-height: 1.2;
  border-radius: 50px;
  padding: 0 5px;
}
.client-content .client-text {
  color: var(--tj-color-text-body-3);
  position: relative;
}
.client-content .client-text::after {
  content: "";
  position: absolute;
  bottom: 3px;
  inset-inline-start: auto;
  width: 100%;
  border-bottom: 1px solid rgba(12, 30, 33, 0.2);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .client-content {
    width: 260px;
    height: 260px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .client-content {
    width: 220px;
    height: 220px;
  }
}
@media (max-width: 575px) {
  .client-content {
    width: 190px;
    height: 190px;
  }
}
.client-content.style-2 {
  max-width: 440px;
  width: 100%;
  display: block;
  margin: 0 auto 60px;
  height: auto;
  border-radius: 40px;
  position: unset;
  background: transparent;
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0);
  padding: 0 15px 4px;
}
@media (max-width: 575px) {
  .client-content.style-2 {
    padding: 4px 15px 4px;
  }
}
.client-content.style-2 .sec-title {
  max-width: 100%;
  line-height: 1.2;
  margin-bottom: 0;
  letter-spacing: -0.6px;
}
.client-content.style-2 .client-numbers {
  color: var(--tj-color-theme-primary);
  background: transparent;
  padding: 0;
  border-radius: 0;
}
.client-content.style-2 .client-text::after {
  display: none;
}
@media (max-width: 575px) {
  .client-content.style-2 {
    width: calc(100% - 30px);
    margin: 0 auto 40px;
  }
}

.client-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}

.client-slider-1 {
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.client-slider-1::before,
.client-slider-1::after {
  content: "";
  position: absolute;
  width: 448px;
  height: 100%;
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgb(233, 237, 237)),
    to(rgba(233, 237, 237, 0))
  );
  background-image: linear-gradient(
    90deg,
    rgb(233, 237, 237) 0%,
    rgba(233, 237, 237, 0) 100%
  );
  top: 0;
  inset-inline-start: 0;
  z-index: 2;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .client-slider-1::before,
  .client-slider-1::after {
    width: 300px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .client-slider-1::before,
  .client-slider-1::after {
    width: 200px;
  }
}
@media (max-width: 575px) {
  .client-slider-1::before,
  .client-slider-1::after {
    width: 100px;
  }
}
.client-slider-1::after {
  inset-inline-start: auto;
  inset-inline-end: 0;
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(rgb(233, 237, 237)),
    to(rgba(233, 237, 237, 0))
  );
  background-image: linear-gradient(
    -90deg,
    rgb(233, 237, 237) 0%,
    rgba(233, 237, 237, 0) 100%
  );
}

.client-item {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-padding-end: 30px;
  padding-inline-end: 30px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .client-item {
    -webkit-padding-end: 20px;
    padding-inline-end: 20px;
  }
}

.client-logo {
  width: 284px;
  height: 120px;
  background-color: var(--tj-color-common-white);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  z-index: 5;
  border-radius: 8px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .client-logo {
    width: 220px;
    height: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .client-logo {
    width: 190px;
    height: 70px;
    padding: 20px;
  }
}

.client-slider-2 .client-logo {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.client-slider-2 .client-logo img {
  opacity: 0.85;
}

/* !END: Client CSS */
/**----------------------------------------
START: About CSS
----------------------------------------*/
.about-img-area {
  position: relative;
  -webkit-margin-end: -8px;
  margin-inline-end: -8px;
}
.about-img-area .about-img {
  width: 100%;
  height: 100%;
  position: relative;
  border-radius: 12px;
}
.about-img-area .about-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 12px;
}
@media (max-width: 575px) {
  .about-img-area .box-area {
    max-width: 230px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .about-img-area {
    margin-top: 15px;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.about-img-area.style-2 {
  max-width: 591px;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
}
.about-img-area.style-2 .box-area {
  max-width: 343px;
  background-color: var(--tj-color-theme-bg);
}
.about-img-area.style-2 .box-area::after,
.about-img-area.style-2 .box-area::before {
  background: url('data:image/svg+xml,<svg viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-11 h-11"><path d="M11 1.54972e-06L0 0L2.38419e-07 11C1.65973e-07 4.92487 4.92487 1.62217e-06 11 1.54972e-06Z" fill="%23d8e5e5"></path></svg>');
}
@media (max-width: 575px) {
  .about-img-area.style-2 .box-area {
    max-width: 270px;
  }
}
.about-img-area.style-2 .box-area.style-2 {
  background: transparent;
  padding: 0 0 15px 15px;
  border-start-end-radius: 0;
  border-end-start-radius: 12px;
}
.about-img-area.style-2 .box-area.style-2::after,
.about-img-area.style-2 .box-area.style-2::before {
  display: none;
}
.about-img-area.style-2 .box-area.style-2 .progress-box {
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(6px);
}
.about-img-area.style-2 .box-area.style-2 .progress-box .tj-progress-percent,
.about-img-area.style-2 .box-area.style-2 .progress-box .tj-progress-title,
.about-img-area.style-2 .box-area.style-2 .progress-box .title {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .about-img-area.style-2 {
    max-width: 100%;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .about-img-area {
    height: 100%;
  }
}

.box-area {
  background: var(--tj-color-grey-1);
  position: absolute;
  bottom: 0;
  inset-inline-start: 0;
  max-width: 241px;
  width: 100%;
  padding: 15px 15px 0 0;
  border-start-end-radius: 12px;
}
.box-area::after,
.box-area::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: -13px;
  width: 13px;
  height: 13px;
  background: url('data:image/svg+xml,<svg viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-11 h-11"><path d="M11 1.54972e-06L0 0L2.38419e-07 11C1.65973e-07 4.92487 4.92487 1.62217e-06 11 1.54972e-06Z" fill="%23ecf0f0"></path></svg>');
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.box-area::after {
  inset-inline-start: auto;
  top: auto;
  inset-inline-end: -13px;
  bottom: 0;
}

.experience-box {
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  padding: 28px 25px;
}
.experience-box .sub-title {
  color: var(--tj-color-theme-primary);
  font-weight: var(--tj-fw-medium);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .experience-box {
    padding: 25px 18px 20px;
  }
}

.about-content-area.style-1 {
  background-color: var(--tj-color-common-white);
  border-radius: 12px;
  padding: 30px;
  min-height: 408px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .about-content-area.style-1 {
    min-height: 300px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .about-content-area.style-1 {
    padding: 30px 20px;
    min-height: 300px;
  }
}
.about-content-area .sec-heading {
  margin-bottom: 30px;
}

.about-bottom-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 15px;
}
.about-bottom-area .client-review-cont {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  border-radius: 10px;
  padding: 30px;
}
.about-bottom-area .client-review-cont .rating-area {
  margin-bottom: 12px;
}
.about-bottom-area .client-review-cont .star-ratings {
  font-size: 16px;
  letter-spacing: 4px;
  -webkit-text-stroke: 1px var(--tj-color-common-white);
}
.about-bottom-area .client-review-cont .star-ratings .fill-ratings {
  color: var(--tj-color-common-white);
}
.about-bottom-area .client-review-cont .desc {
  margin-bottom: 38px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .about-bottom-area .client-review-cont .desc {
    margin-bottom: 20px;
  }
}
.about-bottom-area .client-review-cont .quote-icon {
  font-size: 40px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 575px) {
  .about-bottom-area .client-review-cont .quote-icon {
    font-size: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .about-bottom-area .client-review-cont {
    padding: 30px 15px;
  }
}
@media (max-width: 575px) {
  .about-bottom-area .client-review-cont {
    padding: 15px;
  }
}
.about-bottom-area .client-info-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.about-bottom-area .client-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.about-bottom-area .client-info .title {
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-common-white);
  line-height: 1;
  margin-bottom: 6px;
}
.about-bottom-area .client-info .designation {
  font-size: 14px;
  color: var(--tj-color-theme-bg);
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.video-img {
  max-width: 224px;
  width: 100%;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
.video-img::before {
  position: absolute;
  content: "";
  inset-inline-start: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.25;
}
.video-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .video-img {
    max-width: 180px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .video-img {
    max-width: 120px;
  }
}
@media (max-width: 575px) {
  .video-img {
    max-width: 100px;
  }
}

.video-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  line-height: 1;
  color: var(--tj-color-common-white);
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  position: absolute;
  top: 50%;
  inset-inline-start: 50%;
  z-index: 5;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 50%;
  backdrop-filter: blur(10px);
}
.video-btn span {
  font-size: 15px;
  -webkit-margin-start: 2px;
  margin-inline-start: 2px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.video-btn:hover {
  color: var(--tj-color-common-white);
  -webkit-transform: translate(-50%, -50%) scale(1.1);
  -ms-transform: translate(-50%, -50%) scale(1.1);
  transform: translate(-50%, -50%) scale(1.1);
}

.about-content-area-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 85px;
}
.about-content-area-2 .about-content {
  max-width: 550px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .about-content-area-2 .about-content {
    max-width: 440px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .about-content-area-2 .about-content {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .about-content-area-2 .about-content {
    width: calc(100% - 130px);
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
.about-content-area-2 .sec-heading {
  margin-bottom: 27px;
}
.about-content-area-2 .video-img {
  max-width: 120px;
}
.about-content-area-2 .video-img::before {
  opacity: 0.15;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .about-content-area-2 .video-img {
    max-width: 100px;
  }
}
.about-content-area-2 .video-btn:hover {
  -webkit-transform: translate(-50%, -50%) scale(0.9);
  -ms-transform: translate(-50%, -50%) scale(0.9);
  transform: translate(-50%, -50%) scale(0.9);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .about-content-area-2 {
    gap: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .about-content-area-2 {
    gap: 20px;
  }
}

.customers-box.style-2 {
  background-color: var(--tj-color-theme-primary);
  height: 100%;
  position: relative;
  overflow: hidden;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.customers-box.style-2 .customers-bg {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-blend-mode: luminosity;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  opacity: 0.15;
  z-index: -1;
}
.customers-box.style-2 ul li span {
  background-color: var(--tj-color-theme-dark);
}
.customers-box.style-2 .customers-text {
  max-width: 250px;
  font-size: 24px;
  line-height: 1.333;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-common-white);
}
.customers-box.style-2 .star-icon {
  position: absolute;
  width: 50px;
  height: 50px;
  top: 50%;
  inset-inline-end: 120px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .customers-box.style-2 {
    min-height: 315px;
  }
}

.countup-item.style-2 {
  width: 100%;
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  padding: 28px 30px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  text-align: start;
}
.countup-item.style-2 .count-inner {
  padding-top: 90px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .countup-item.style-2 .count-inner {
    padding-top: 60px;
  }
}
.countup-item.style-2 .count-text {
  color: var(--tj-color-text-body);
  font-weight: var(--tj-fw-medium);
}
.countup-item.style-2 .inline-content {
  color: var(--tj-color-heading-primary);
  margin: 11px 0 10px;
}
.countup-item.style-2 .inline-content .odometer {
  color: var(--tj-color-heading-primary);
}
.countup-item.style-2 .inline-content .odometer .odometer-digit,
.countup-item.style-2 .inline-content .odometer span {
  color: var(--tj-color-heading-primary);
}
.countup-item.style-2 .count-icon {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--tj-color-grey-1);
  font-size: 48px;
  color: var(--tj-color-theme-primary);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
}
.countup-item.style-2 .steps {
  position: absolute;
  top: 28px;
  inset-inline-end: 30px;
  color: var(--tj-color-text-body);
  font-size: 20px;
  line-height: 1;
  font-weight: var(--tj-fw-sbold);
}
@media (max-width: 575px) {
  .countup-item.style-2 .steps {
    inset-inline-end: 20px;
  }
}
@media (max-width: 575px) {
  .countup-item.style-2 {
    padding: 25px 20px;
  }
}

.tj-about-section-2 {
  background-color: var(--tj-color-theme-bg);
  border-radius: 12px;
  position: relative;
  z-index: 1;
}

.progress-box {
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  padding: 28px 30px 35px;
}
.progress-box .title {
  font-weight: var(--tj-fw-sbold);
}
@media (max-width: 575px) {
  .progress-box {
    padding: 20px 18px 25px;
  }
}

.mission-vision-box {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  background-color: var(--tj-color-common-white);
  border-radius: 12px;
  padding: 25px 20px 30px 26px;
}
.mission-vision-box .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 18px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 575px) {
  .mission-vision-box {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }
}

.about-btn-area {
  margin-top: 15px;
}
.about-btn-area .tj-primary-btn {
  width: 100%;
  border-radius: 10px;
  padding: 13px;
}
.about-btn-area .tj-primary-btn .btn-icon {
  width: 30px;
  height: 30px;
  font-size: 20px;
}

/* !END: About CSS */
/**----------------------------------------
START: Services CSS
----------------------------------------*/
/* =========================================================
   DIGITAL / IT SERVICES SECTION
   ========================================================= */

/* =========================================================
   DIGITAL / IT SERVICES SECTION
   ========================================================= */

.tj-service-section,
.it-services-section {
  position: relative;
  width: 100%;
  overflow: hidden;

  /* Clean white + soft purple background */
  background: linear-gradient(180deg, #ffffff 0%, #fbf9ff 52%, #f8f5ff 100%);

  border-radius: 12px;
}

/* =========================================================
   REMOVE ALL BACKGROUND BUBBLES
   ========================================================= */

.it-services-section::before,
.it-services-section::after,
.tj-service-section::before,
.tj-service-section::after {
  display: none;
  content: none;
}

/* =========================================================
   SECTION SPACING
   ========================================================= */

.tj-service-section.section-gap,
.it-services-section {
  padding-top: 90px;
  padding-bottom: 85px;
}

.tj-service-section.section-gap-x {
  margin-left: 15px;
  margin-right: 15px;
}

/* =========================================================
   CONTAINER
   ========================================================= */

.it-services-container,
.tj-service-section .service-wrapper {
  position: relative;
  z-index: 2;

  width: 100%;
  max-width: 1700px;

  margin-left: auto;
  margin-right: auto;
}

/* =========================================================
   SECTION HEADING
   ========================================================= */

.it-services-heading,
.tj-service-section .sec-heading {
  position: relative;
  z-index: 3;

  max-width: 760px;

  margin: 0 auto 50px;

  padding-top: 0;

  text-align: center;
}

/* =========================================================
   SUBTITLE
   ========================================================= */

.it-services-subtitle,
.tj-service-section .sec-heading .sub-title {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 12px;

  margin-bottom: 16px;

  color: #21103a;
  border: 0;

  font-size: 13px;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 1.8px;

  text-transform: uppercase;
}

.it-services-subtitle::before,
.it-services-subtitle::after {
  content: "";

  width: 28px;
  height: 1px;

  background: #c9b8ff;
}

.tj-service-section .sec-heading .sub-title i {
  color: #6c3bff;
}

/* =========================================================
   MAIN TITLE
   ========================================================= */

.it-services-title,
.tj-service-section .sec-title {
  margin: 0 0 16px;

  color: #171321;

  font-size: clamp(34px, 4vw, 52px);
  font-weight: 700;
  line-height: 1.15;

  letter-spacing: -1.2px;
}

.it-services-title span,
.tj-service-section .sec-title span {
  color: #330879;
}

/* Gradient text */
.it-services-title .gradient-text,
.tj-service-section .sec-title .gradient-text {
  background: linear-gradient(90deg, #6c3bff 0%, #8b5cf6 50%, #a855f7 100%);

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  background-clip: text;
}

/* =========================================================
   DESCRIPTION
   ========================================================= */

.it-services-description,
.tj-service-section .sec-heading p {
  max-width: 680px;

  margin: 0 auto;

  color: #312d36;

  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
}

/* =========================================================
   SERVICE SLIDER WRAPPER
   ========================================================= */

.it-services-slider-wrap {
  position: relative;
  z-index: 5;

  width: 100%;

  padding: 10px 45px 25px;
}

/* =========================================================
   SLIDER
   ========================================================= */

.it-services-slider {
  position: relative;
  z-index: 5;

  width: 100%;

  overflow: hidden;

  padding: 5px 4px 18px;
}

.it-services-slider .swiper-wrapper,
.tj-service-section .swiper-wrapper {
  display: flex;

  align-items: stretch;
}

.it-services-slider .swiper-slide,
.tj-service-section .swiper-slide {
  height: auto;

  display: flex;
}

/* =========================================================
   PURPLE SLIDER GROUND
   ========================================================= */

.it-services-slider-wrap::after {
  content: "";

  position: absolute;

  left: 7%;
  right: 7%;
  bottom: 8px;

  height: 2px;

  border-radius: 50%;

  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(108, 59, 255, 0.08) 15%,
    rgba(108, 59, 255, 0.28) 50%,
    rgba(108, 59, 255, 0.08) 85%,
    transparent 100%
  );

  pointer-events: none;
}

/* =========================================================
   SERVICE CARD
   ========================================================= */

.it-service-card {
  position: relative;
  z-index: 2;

  width: 100%;
  height: 300px;

  padding: 26px 25px 24px;

  background: #ffffff;

  border: 1px solid #e5def0;

  border-radius: 20px;

  overflow: hidden;

  box-shadow: 0 8px 25px rgba(62, 35, 105, 0.055);

  transition:
    transform 0.35s ease,
    border-color 0.35s ease,
    box-shadow 0.35s ease,
    background 0.35s ease;
}

/* =========================================================
   CARD TOP PURPLE DECORATION
   ========================================================= */

.it-service-card::before {
  content: "";

  position: absolute;

  right: -55px;
  top: -55px;

  width: 140px;
  height: 140px;

  border-radius: 50%;

  background: #f1ecff;

  transition:
    transform 0.45s ease,
    background 0.35s ease;
}

/* =========================================================
   CARD BOTTOM PURPLE LINE
   ========================================================= */

.it-service-card::after {
  content: "";

  position: absolute;

  left: 25px;
  bottom: 0;

  width: 42px;
  height: 3px;

  border-radius: 10px 10px 0 0;

  background: linear-gradient(90deg, #6c3bff, #9b6cff);

  transition: width 0.35s ease;
}

/* =========================================================
   CARD HOVER
   ========================================================= */

.it-service-card:hover {
  transform: translateY(-7px);

  background: #ffffff;

  border-color: rgba(108, 59, 255, 0.35);

  box-shadow: 0 20px 45px rgba(74, 42, 125, 0.12);
}

.it-service-card:hover::before {
  transform: scale(1.4);

  background: #eee7ff;
}

.it-service-card:hover::after {
  width: 75px;
}

/* =========================================================
   CARD TOP
   ========================================================= */

.it-service-card-top {
  position: relative;
  z-index: 3;

  display: flex;

  align-items: center;
  justify-content: space-between;

  margin-bottom: 20px;
}

/* =========================================================
   SERVICE NUMBER
   ========================================================= */

.it-service-number {
  color: #a29aa9;

  font-size: 12px;
  font-weight: 700;

  letter-spacing: 0.8px;
}

/* =========================================================
   ICON
   ========================================================= */

.it-service-icon,
.it-crm-feature-icon {
  position: relative;
  z-index: 3;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 52px;
  height: 52px;

  border-radius: 15px;

  background: #f1ecff;

  color: #6c3bff;

  font-size: 20px;

  box-shadow: 0 6px 15px rgba(108, 59, 255, 0.08);

  transition:
    background 0.35s ease,
    color 0.35s ease,
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.it-service-card:hover .it-service-icon {
  background: #6c3bff;

  color: #ffffff;

  transform: rotate(-4deg);

  box-shadow: 0 8px 20px rgba(108, 59, 255, 0.25);
}

/* =========================================================
   CARD TITLE
   ========================================================= */

.it-service-card h3 {
  position: relative;
  z-index: 3;

  min-height: 56px;

  margin: 0 0 10px;

  color: #171321;

  font-size: 20px;
  font-weight: 700;

  line-height: 1.3;

  letter-spacing: -0.2px;

  transition: color 0.3s ease;
}

.it-service-card:hover h3 {
  color: #5b2fd4;
}

/* =========================================================
   CARD DESCRIPTION
   ========================================================= */

.it-service-card p {
  position: relative;
  z-index: 3;

  display: -webkit-box;

  overflow: hidden;

  margin: 0 0 16px;

  color: #716a7d;

  font-size: 13.5px;
  font-weight: 400;

  line-height: 1.65;

  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* =========================================================
   CARD LINK
   ========================================================= */

.it-service-link {
  position: absolute;
  z-index: 4;

  bottom: 20px;
  left: 25px;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  color: #330879;

  font-size: 13px;
  font-weight: 700;

  text-decoration: none;

  transition:
    color 0.3s ease,
    gap 0.3s ease;
}

.it-service-link i {
  transition: transform 0.3s ease;
}

.it-service-link:hover {
  color: #4b20c9;
}

.it-service-link:hover i {
  transform: translateX(5px);
}

/* =========================================================
   SWIPER ARROWS
   ========================================================= */

.it-service-prev,
.it-service-next {
  position: absolute;

  top: 50%;

  z-index: 20;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 44px;
  height: 44px;

  padding: 0;

  border: 1px solid #cfc1eb;

  border-radius: 50%;

  background: #ffffff;

  color: #6c3bff;

  font-size: 15px;

  cursor: pointer;

  transform: translateY(-50%);

  box-shadow: 0 6px 18px rgba(82, 46, 140, 0.1);

  transition: all 0.3s ease;
}

/* Left arrow */
.it-service-prev {
  left: 0;
}

/* Right arrow */
.it-service-next {
  right: 0;
}

/* Purple hover */
.it-service-prev:hover,
.it-service-next:hover {
  border-color: #6c3bff;

  background: #6c3bff;

  color: #ffffff;

  box-shadow: 0 8px 22px rgba(108, 59, 255, 0.25);
}

/* Disabled */
.it-service-prev.swiper-button-disabled,
.it-service-next.swiper-button-disabled {
  opacity: 0.35;

  border-color: #ddd6e8;

  background: #ffffff;

  color: #a9a1b5;

  cursor: not-allowed;

  box-shadow: none;
}

/* =========================================================
   SWIPER PAGINATION
   ========================================================= */

.it-service-pagination {
  position: relative;
  z-index: 5;

  display: flex;

  align-items: center;
  justify-content: center;

  gap: 7px;

  margin-top: 28px;
}

/* Normal bullet */
.it-service-pagination .swiper-pagination-bullet {
  width: 7px;
  height: 7px;

  margin: 0 !important;

  border-radius: 50%;

  background: #d5ccea;

  opacity: 1;

  transition:
    width 0.3s ease,
    background 0.3s ease,
    transform 0.3s ease;
}

/* Active purple bullet */
.it-service-pagination .swiper-pagination-bullet-active {
  width: 25px;

  border-radius: 10px;

  background: linear-gradient(90deg, #6c3bff, #9b6cff);
}

/* =========================================================
   SWIPER GENERAL FIX
   ========================================================= */

.it-services-slider .swiper-slide {
  box-sizing: border-box;
}

.it-services-slider .swiper-slide > * {
  width: 100%;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1199px) {
  .it-services-section {
    padding: 80px 0 75px;
  }

  .it-services-heading {
    margin-bottom: 40px;
  }

  .it-services-slider-wrap {
    padding: 10px 38px 25px;
  }

  .it-service-card {
    height: 300px;
  }
}

/* =========================================================
   SMALL TABLET
   ========================================================= */

@media (max-width: 991px) {
  .it-services-section {
    padding: 75px 0 70px;
  }

  .it-services-slider-wrap {
    padding: 10px 35px 25px;
  }

  .it-service-card {
    height: 295px;
  }

  .it-service-card h3 {
    font-size: 19px;
  }

  .it-services-title,
  .tj-service-section .sec-title {
    font-size: 42px;
  }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {
  .it-services-section {
    padding: 65px 0;
  }

  .it-services-heading {
    padding: 0 15px;

    margin-bottom: 32px;
  }

  .it-services-title,
  .tj-service-section .sec-title {
    font-size: 32px;

    letter-spacing: -0.5px;
  }

  .it-services-description,
  .tj-service-section .sec-heading p {
    font-size: 14px;

    line-height: 1.7;
  }

  /* Slider */
  .it-services-slider-wrap {
    padding: 5px 15px 22px;
  }

  .it-services-slider {
    padding: 5px 2px 15px;
  }

  /* Cards */
  .it-service-card {
    height: 285px;

    padding: 24px 22px;
  }

  .it-service-card::after {
    left: 22px;
  }

  .it-service-card h3 {
    min-height: auto;

    font-size: 19px;
  }

  .it-service-card p {
    font-size: 13px;
  }

  .it-service-link {
    left: 22px;
  }

  /* Hide arrows on mobile */
  .it-service-prev,
  .it-service-next {
    display: none;
  }

  /* Ground */
  .it-services-slider-wrap::after {
    left: 10%;
    right: 10%;
  }
}

/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {
  .it-services-section {
    padding: 55px 0;
  }

  .it-services-title,
  .tj-service-section .sec-title {
    font-size: 29px;
  }

  .it-service-card {
    height: 280px;
  }

  .it-services-slider-wrap {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* =========================================================
   SERVICE SLIDER
   ========================================================= */

.tj-service-section .service-wrapper {
  margin-top: 20px;

  margin-bottom: 80px;
}

.tj-service-section .service-slider {
  overflow: visible;
}

/* =========================================================
   PURPLE THEME FOR TJ SERVICE SLIDER
   ========================================================= */

.tj-service-section .swiper-button-prev,
.tj-service-section .swiper-button-next {
  color: #6c3bff;
}

.tj-service-section .swiper-button-prev:hover,
.tj-service-section .swiper-button-next:hover {
  color: #ffffff;

  background: #6c3bff;

  border-color: #6c3bff;
}
/* =========================================================
   SWIPER PURPLE THEME
   ========================================================= */

/* Swiper navigation arrows */
.it-services-slider .swiper-button-prev,
.it-services-slider .swiper-button-next {
  color: #6c3bff !important;
}

/* Arrow hover */
.it-services-slider .swiper-button-prev:hover,
.it-services-slider .swiper-button-next:hover {
  color: #ffffff !important;
  background: #6c3bff !important;
  border-color: #6c3bff !important;
}

/* Disabled arrows */
.it-services-slider .swiper-button-disabled {
  color: #b8a9d9 !important;
  opacity: 0.4 !important;
}

/* =========================================================
   SWIPER PAGINATION
   ========================================================= */

.it-services-slider .swiper-pagination-bullet {
  background: #d8ccf2 !important;
  opacity: 1 !important;
}

.it-services-slider .swiper-pagination-bullet-active {
  background: #6c3bff !important;
  opacity: 1 !important;
}

/* =========================================================
   SWIPER SCROLLBAR
   ========================================================= */

.it-services-slider .swiper-scrollbar {
  background: #ede8f8 !important;
}

.it-services-slider .swiper-scrollbar-drag {
  background: #6c3bff !important;
}

/* =========================================================
   IF PAGINATION IS OUTSIDE .it-services-slider
   ========================================================= */

.it-service-pagination .swiper-pagination-bullet {
  background: #d8ccf2 !important;
  opacity: 1 !important;
}

.it-service-pagination .swiper-pagination-bullet-active {
  width: 25px !important;
  border-radius: 20px !important;
  background: #6c3bff !important;
}

/* =========================================================
   YOUR CUSTOM ARROWS
   ========================================================= */

.it-service-prev,
.it-service-next {
  border: 1px solid #d5c9ed !important;
  background: #ffffff !important;
  color: #6c3bff !important;
}

.it-service-prev:hover,
.it-service-next:hover {
  border-color: #6c3bff !important;
  background: #6c3bff !important;
  color: #ffffff !important;
}

/* =========================================================
   TJ SERVICE SWIPER
   ========================================================= */

.tj-service-section .swiper-button-prev,
.tj-service-section .swiper-button-next {
  color: #6c3bff !important;
}

.tj-service-section .swiper-button-prev:hover,
.tj-service-section .swiper-button-next:hover {
  color: #ffffff !important;
  background: #6c3bff !important;
  border-color: #6c3bff !important;
}

.tj-service-section .swiper-pagination-bullet {
  background: #d8ccf2 !important;
  opacity: 1 !important;
}

.tj-service-section .swiper-pagination-bullet-active {
  background: #330879 !important;
}

/* =========================================================
   ACCESSIBILITY / SMOOTH MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
  .it-service-card,
  .it-service-icon,
  .it-service-link,
  .it-service-prev,
  .it-service-next {
    transition: none;
  }
}

/* =========================================================
   SERVICE SLIDER
   ========================================================= */

.tj-service-section .service-wrapper {
  margin-top: 20px;
  margin-bottom: 80px;
}

.tj-service-section .service-slider {
  overflow: visible;
}
/* =========================================================
   SERVICE CARD
   ========================================================= */

.service-item.style-1 {
  position: relative;

  width: 100%;
  height: 470px;

  padding: 0;
  margin-bottom: 30px;

  background: #24103f;

  border-radius: 14px;
  overflow: hidden;

  border: 1px solid rgba(139, 92, 246, 0.2);

  box-shadow:
    0 20px 50px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);

  transition:
    transform 0.4s ease,
    box-shadow 0.4s ease,
    border-color 0.4s ease;
}

/* Card hover */

.service-item.style-1:hover {
  transform: translateY(-8px);

  border-color: rgba(139, 92, 246, 0.55);

  box-shadow:
    0 25px 60px rgba(0, 0, 0, 0.3),
    0 0 35px rgba(112, 43, 220, 0.12);
}

/* =========================================================
   CARD IMAGE
   ========================================================= */

.service-item.style-1 .service-img {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.service-item.style-1 .service-img img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  border: 1px solid rgba(139, 92, 246, 0.35);
  border-radius: 14px;

  transition:
    transform 0.7s ease,
    filter 0.5s ease;
}

/* Image zoom */

.service-item.style-1:hover .service-img img {
  transform: scale(1.07);
  filter: brightness(0.75);
}

/* =========================================================
   DARK OVERLAY
   ========================================================= */

.service-item.style-1::before {
  content: "";

  position: absolute;
  inset: 0;

  background: linear-gradient(
    to top,
    rgba(16, 5, 29, 0.98) 0%,
    rgba(27, 5, 49, 0.78) 40%,
    rgba(27, 5, 49, 0.18) 75%,
    rgba(27, 5, 49, 0.05) 100%
  );

  z-index: 1;

  opacity: 1;

  transition:
    background 0.4s ease,
    opacity 0.4s ease;
}

/* =========================================================
   PURPLE HOVER GLOW
   ========================================================= */

.service-item.style-1::after {
  content: "";

  position: absolute;

  width: 350px;
  height: 350px;

  top: -180px;
  left: 50%;

  transform: translateX(-50%);

  background: #702bdc;

  filter: blur(100px);

  border-radius: 50%;

  opacity: 0;

  pointer-events: none;

  z-index: 1;

  transition: opacity 0.5s ease;
}

.service-item.style-1:hover::after {
  opacity: 0.22;
}

/* =========================================================
   SERVICE ICON
   ========================================================= */

.service-item.style-1 .service-icon {
  position: absolute;

  top: 32px;
  left: 30px;

  width: 78px;
  height: 78px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  font-size: 55px;
  line-height: 1;

  border-radius: 50%;

  background: linear-gradient(
    135deg,
    rgba(112, 43, 220, 0.3),
    rgba(85, 32, 196, 0.08)
  );

  border: 1px solid rgba(139, 92, 246, 0.35);

  color: #8b5cf6;

  z-index: 3;

  transition:
    transform 0.45s ease,
    opacity 0.35s ease,
    background 0.35s ease;
}

.service-item.style-1 .service-icon i {
  color: #8b5cf6;

  display: inline-flex;
  line-height: 1;

  transition: color 0.3s ease;
}

/* Icon hover */

.service-item.style-1:hover .service-icon {
  transform: scale(0.82);
  opacity: 0;
}

/* =========================================================
   SERVICE CONTENT
   ========================================================= */

.service-item.style-1 .service-content {
  position: absolute;

  left: 0;
  bottom: 0;

  width: 100%;

  padding: 35px 30px 25px;

  z-index: 3;

  overflow: hidden;

  transition: padding 0.35s ease;
}

/* =========================================================
   TITLE
   ========================================================= */

.service-item.style-1 .service-content .title {
  max-width: 330px;

  margin-bottom: 12px;

  font-size: 23px;
  line-height: 1.25;

  font-weight: 700;

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}

.service-item.style-1 .service-content .title a {
  color: #ffffff;
  text-decoration: none;
}

.service-item.style-1 .service-content .title a:hover {
  color: #a78bfa;
}

/* =========================================================
   DESCRIPTION
   ========================================================= */

.service-item.style-1 .service-content .desc {
  max-width: 390px;

  color: rgba(255, 255, 255, 0.72);

  font-size: 15px;
  line-height: 1.65;

  margin-bottom: 0;

  opacity: 0;
  visibility: hidden;

  height: 0;

  transform: translateY(10px);

  transition:
    opacity 0.3s ease,
    transform 0.3s ease,
    height 0.3s ease;
}

/* =========================================================
   LEARN MORE BUTTON
   ========================================================= */

.service-item.style-1 .text-btn {
  position: absolute;

  left: 30px;
  bottom: 0;

  display: inline-flex;
  align-items: center;
  gap: 12px;

  opacity: 0;
  visibility: hidden;

  transform: translateY(15px);

  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.service-item.style-1 .text-btn .btn-text {
  color: #ffffff;
  font-size: 15px;
  font-weight: 600;
}

.service-item.style-1 .text-btn .btn-icon {
  width: 38px;
  height: 38px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #702bdc;

  color: #ffffff;

  transition:
    background 0.3s ease,
    transform 0.3s ease;
}

.service-item.style-1 .text-btn:hover .btn-icon {
  background: #8b5cf6;
  transform: translateX(4px);
}

/* =========================================================
   CARD HOVER CONTENT
   ========================================================= */

.service-item.style-1:hover .service-content {
  padding-bottom: 95px;
}

.service-item.style-1:hover .service-content .desc {
  opacity: 1;
  visibility: visible;

  height: auto;

  transform: translateY(0);
}

.service-item.style-1:hover .text-btn {
  opacity: 1;
  visibility: visible;

  bottom: 35px;

  transform: translateY(0);
}

/* =========================================================
   PAGINATION
   ========================================================= */

.tj-service-section .swiper-pagination-area {
  margin-top: 20px;

  display: flex;
  justify-content: center;
  align-items: center;

  gap: 8px;

  position: relative;
  z-index: 4;
}

.tj-service-section .swiper-pagination-bullet {
  width: 9px;
  height: 9px;

  background: rgba(255, 255, 255, 0.25);

  opacity: 1;

  border-radius: 50%;

  transition:
    width 0.3s ease,
    background 0.3s ease,
    border-radius 0.3s ease;
}

.tj-service-section .swiper-pagination-bullet-active {
  width: 28px;

  background: #8b5cf6;

  border-radius: 20px;
}

/* =========================================================
   BACKGROUND SHAPES
   ========================================================= */

.tj-service-section .bg-shape-1,
.tj-service-section .bg-shape-2 {
  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  max-width: 370px;

  z-index: 0;

  pointer-events: none;

  opacity: 0.35;

  mix-blend-mode: screen;
}

.tj-service-section .bg-shape-1 img,
.tj-service-section .bg-shape-2 img {
  width: 100%;
  height: auto;
}

.tj-service-section .bg-shape-2 {
  top: auto;
  left: auto;

  bottom: 0;
  right: 0;

  transform: scaleX(-1);
}

/* =========================================================
   CONTAINER
   ========================================================= */

.tj-service-section .container,
.tj-service-section .container-fluid {
  position: relative;
  z-index: 2;
}

/* =========================================================
   TABLET
   ========================================================= */

@media only screen and (max-width: 1199px) {
  .tj-service-section.section-gap {
    padding-top: 90px;
    padding-bottom: 80px;
  }

  .tj-service-section .sec-title {
    font-size: 40px;
  }

  .service-item.style-1 {
    height: 450px;
  }

  .service-item.style-1 .service-content {
    padding: 30px 25px 22px;
  }

  .service-item.style-1 .service-icon {
    left: 25px;
    top: 25px;
  }

  .service-item.style-1:hover .service-content {
    padding-bottom: 85px;
  }

  .service-item.style-1:hover .text-btn {
    left: 25px;
    bottom: 30px;
  }
}

/* =========================================================
   TABLET
   ========================================================= */

@media only screen and (max-width: 991px) {
  .tj-service-section .sec-heading {
    margin-bottom: 40px;
    padding-bottom: 40px;
  }

  .tj-service-section .sec-title {
    font-size: 36px;
  }

  .service-item.style-1 {
    height: 440px;
  }

  .service-item.style-1 .service-content .title {
    font-size: 21px;
  }

  .service-item.style-1 .service-content .desc {
    font-size: 14px;
  }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media only screen and (max-width: 767px) {
  .tj-service-section {
    border-radius: 10px;
  }

  .tj-service-section.section-gap {
    padding-top: 70px;
    padding-bottom: 65px;
  }

  .tj-service-section.section-gap-x {
    margin-left: 12px;
    margin-right: 12px;
  }

  .tj-service-section .sec-heading {
    padding: 0 15px;
    margin-bottom: 35px;
  }

  .tj-service-section .sec-title {
    font-size: 32px;
    line-height: 1.2;
  }

  .service-item.style-1 {
    height: 430px;
    border-radius: 12px;
  }

  .service-item.style-1 .service-icon {
    width: 68px;
    height: 68px;

    top: 22px;
    left: 22px;

    font-size: 48px;
  }

  .service-item.style-1 .service-content {
    padding: 25px 20px 20px;
  }

  .service-item.style-1 .service-content .title {
    font-size: 20px;
  }

  .service-item.style-1:hover .service-content {
    padding-bottom: 80px;
  }

  .service-item.style-1 .text-btn {
    left: 20px;
  }

  .service-item.style-1:hover .text-btn {
    bottom: 25px;
  }

  .tj-service-section .bg-shape-1,
  .tj-service-section .bg-shape-2 {
    max-width: 230px;
  }
}

/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media only screen and (max-width: 575px) {
  .tj-service-section.section-gap {
    padding-top: 60px;
    padding-bottom: 55px;
  }

  .tj-service-section .sec-title {
    font-size: 28px;
  }

  .tj-service-section .sec-heading .sub-title {
    font-size: 13px;
    margin-bottom: 20px;
  }

  .service-item.style-1 {
    height: 410px;
  }

  .service-item.style-1 .service-icon {
    width: 62px;
    height: 62px;

    top: 20px;
    left: 18px;

    font-size: 43px;
  }

  .service-item.style-1 .service-content {
    padding: 20px 18px;
  }

  .service-item.style-1 .service-content .title {
    font-size: 19px;
    margin-bottom: 10px;
  }

  .service-item.style-1 .service-content .desc {
    font-size: 13px;
    line-height: 1.55;
  }

  .service-item.style-1:hover .service-content {
    padding-bottom: 75px;
  }

  .service-item.style-1 .text-btn {
    left: 18px;
  }

  .service-item.style-1:hover .text-btn {
    bottom: 22px;
  }

  .service-item.style-1 .text-btn .btn-icon {
    width: 34px;
    height: 34px;
  }
}

/* =========================================================
   ACCESSIBILITY / SMOOTH ANIMATION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
  .service-item.style-1,
  .service-item.style-1 *,
  .service-item.style-1::before,
  .service-item.style-1::after {
    transition: none !important;
  }
}
-webkit-box-pack: justify;

/* !END: Services CSS */
/**----------------------------------------
START: Theme Marquee CSS
----------------------------------------*/
.tj-marquee-section {
  background-color: var(--tj-color-theme-primary);
  position: relative;
  padding-top: 33px;
  padding-bottom: 37px;
  border-radius: 12px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-marquee-section {
    padding-top: 22px;
    padding-bottom: 16px;
  }
}

.marquee-slider {
  padding-bottom: 10px;
}
.marquee-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}

.marquee-item {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 30px;
  -webkit-padding-end: 30px;
  padding-inline-end: 30px;
}
.marquee-item .marquee-text {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 2px var(--tj-color-common-white);
  font-size: 136px;
  font-weight: var(--tj-fw-sbold);
  font-family: var(--tj-ff-heading);
  line-height: 1.2;
  margin: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .marquee-item .marquee-text {
    font-size: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .marquee-item .marquee-text {
    font-size: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .marquee-item .marquee-text {
    font-size: 50px;
    -webkit-text-stroke: 1px var(--tj-color-common-white);
  }
}
.marquee-item .marquee-img {
  position: relative;
  top: 4px;
  color: var(--tj-color-theme-primary);
  height: 98px;
  border-radius: 4px;
  overflow: hidden;
}
.marquee-item .marquee-img img {
  height: 100%;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .marquee-item .marquee-img {
    height: 75px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .marquee-item .marquee-img {
    height: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .marquee-item .marquee-img {
    height: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .marquee-item {
    gap: 25px;
    -webkit-padding-end: 25px;
    padding-inline-end: 25px;
  }
}
@media (max-width: 575px) {
  .marquee-item {
    gap: 20px;
    -webkit-padding-end: 20px;
    padding-inline-end: 20px;
  }
}

/* !END: Theme Marquee CSS */
/**----------------------------------------
START: Project CSS
----------------------------------------*/
.tj-project-section {
  position: relative;
}
.tj-project-section .sec-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.tj-project-section .sec-text {
  max-width: 550px;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-project-section .sec-text {
    max-width: 380px;
  }
}
.tj-project-section .project-navigation {
  gap: 20px;
  margin-bottom: 27px;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-project-section .project-navigation {
    margin-bottom: 20px;
  }
}
.tj-project-section-2 {
  overflow: hidden;
}
.tj-project-section-2 .container-fluid,
.tj-project-section-2 .project-wrapper {
  padding: 0;
}
.tj-project-section-2 .sec-heading {
  max-width: 550px;
}
.tj-project-section-3 {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-project-section-3 .container-fluid {
    -webkit-padding-end: 0;
    padding-inline-end: 0;
  }
}
.tj-project-section-3 .sub-title {
  color: var(--tj-color-theme-primary);
  border: 0;
  padding: 0;
}
.tj-project-section-3 .sec-title {
  color: var(--tj-color-common-white);
}
.tj-project-section-3 .slider-next,
.tj-project-section-3 .slider-prev {
  border-color: var(--tj-color-border-2);
}
.tj-project-section-3 .slider-next .anim-icon i,
.tj-project-section-3 .slider-prev .anim-icon i {
  color: var(--tj-color-common-white);
}

.project-wrapper {
  padding: 0 15px;
}
@media (max-width: 575px) {
  .project-wrapper {
    padding: 0;
  }
}

.project-area {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  position: relative;
}
.project-area .project-item {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  min-height: 550px;
  grid-column: span 1 / span 3;
}
.project-area .project-item:first-child,
.project-area .project-item:last-child {
  grid-column: span 2 / span 3;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .project-area .project-item:first-child,
  .project-area .project-item:last-child {
    grid-column: span 3 / span 5;
  }
}
.project-area .project-item .project-img {
  position: absolute;
  width: 100%;
  height: 100%;
  inset-inline-start: 0;
  top: 0;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-transition: all 0.5s linear;
  transition: all 0.5s linear;
}
.project-area .project-item .project-img::before {
  opacity: 0.25;
}
.project-area .project-item .project-content {
  position: absolute;
  inset-inline-start: 0;
  bottom: 0;
  width: 100%;
  padding: 30px;
  z-index: 3;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .project-area .project-item .project-content {
    padding: 20px;
  }
}
.project-area .project-item .project-content .title {
  color: var(--tj-color-common-white);
  max-width: 245px;
  width: 100%;
  margin-bottom: 0;
}
.project-area .project-item .project-content .title a {
  color: var(--tj-color-common-white);
}
.project-area .project-item .project-content .title a:hover {
  opacity: 0.8;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .project-area .project-item .project-content .title {
    font-size: 20px;
    width: calc(100% - 70px);
  }
}
@media (max-width: 575px) {
  .project-area .project-item .project-content .title {
    font-size: 20px;
    width: calc(100% - 70px);
  }
}
.project-area .project-item .project-content .project-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 18px;
}
.project-area .project-item .project-content .categories a {
  background-color: rgba(255, 255, 255, 0.1);
  color: var(--tj-color-common-white);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}
.project-area .project-item .project-content .categories a:hover {
  background-color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .project-area .project-item .project-content {
    padding: 25px;
  }
}
@media (max-width: 575px) {
  .project-area .project-item .project-content {
    padding: 25px 20px;
  }
}
.project-area .project-item:hover .project-img {
  -webkit-transform: scale(1.1) rotate(-2deg);
  -ms-transform: scale(1.1) rotate(-2deg);
  transform: scale(1.1) rotate(-2deg);
}
.project-area .project-item:hover .project-btn {
  opacity: 1;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .project-area .project-item {
    min-height: 450px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .project-area .project-item {
    min-height: 450px;
    grid-column: span 2 / span 5;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-area .project-item {
    min-height: 350px;
    grid-column: 1/3;
  }
}
.project-area .project-btn {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.1);
  border: 2px solid rgba(255, 255, 255, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 22px;
  backdrop-filter: blur(15px);
  opacity: 0;
}
.project-area .project-btn i {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-normal);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.project-area .project-btn:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}
.project-area .project-btn:hover i {
  color: var(--tj-color-common-white);
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .project-area .project-btn {
    width: 50px;
    height: 50px;
    font-size: 18px;
  }
}
@media (max-width: 575px) {
  .project-area .project-btn {
    width: 55px;
    height: 55px;
    font-size: 18px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .project-area {
    gap: 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .project-area {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-area {
    min-height: 350px;
    gap: 20px;
    grid-template-columns: 1fr;
  }
}

.project-item {
  background-color: var(--tj-color-common-white);
  position: relative;
  border-radius: 12px;
  overflow: hidden;
}
.project-item .project-img {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: all 0.5s linear;
  transition: all 0.5s linear;
}
.project-item .project-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.project-item .project-img::before {
  content: "";
  background: var(--tj-color-theme-dark);
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  inset-inline-start: 0;
  opacity: 0.16;
  pointer-events: none;
  z-index: 2;
}
.project-item .project-content {
  padding: 25px 20px 25px 30px;
}
.project-item .project-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 18px;
}
.project-item .title {
  max-width: 245px;
  width: 100%;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
}
.project-item .title a:hover {
  color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .project-item .title {
    width: calc(100% - 60px);
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-item .title {
    max-width: 100%;
    width: calc(100% - 60px);
  }
}
.project-item .categories a {
  background-color: transparent;
  backdrop-filter: none;
  color: var(--tj-color-text-body);
  border-color: var(--tj-color-border-1);
}
.project-item:hover .project-img img {
  -webkit-transform: scale(1.1) rotate(-2deg);
  -ms-transform: scale(1.1) rotate(-2deg);
  transform: scale(1.1) rotate(-2deg);
}
.project-item:hover .project-btn {
  opacity: 1;
}

.project-btn {
  font-size: 35px;
  width: 50px;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0;
}
.project-btn i {
  color: var(--tj-color-theme-dark);
  font-weight: var(--tj-fw-bold);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.project-btn:hover i {
  color: var(--tj-color-theme-primary);
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}

.categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
}
.categories a {
  background-color: rgba(255, 255, 255, 0.15);
  font-size: 16px;
  line-height: 1;
  color: var(--tj-color-text-body);
  font-weight: var(--tj-fw-medium);
  padding: 2px 7px 4px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow: hidden;
  border-radius: 4px;
  border: 1px solid var(--tj-color-border-1);
  backdrop-filter: blur(15px);
}
.categories a:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}

.project-slider .project-item {
  position: relative;
  min-height: 550px;
  overflow: hidden;
}
.project-slider .project-item .project-img {
  position: absolute;
  width: 100%;
  height: 100%;
  inset-inline-start: 0;
  top: 0;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-transition: all 0.5s linear;
  transition: all 0.5s linear;
}
.project-slider .project-item .project-content {
  position: absolute;
  inset-inline-start: 50%;
  top: 50%;
  bottom: inherit;
  width: 100%;
  padding: 0 20px;
  z-index: 3;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
.project-slider .project-item .project-content .categories {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.project-slider .project-item .project-content .categories a {
  color: var(--tj-color-text-body-2);
  background-color: rgba(255, 255, 255, 0.1);
}
.project-slider .project-item .project-content .categories a:hover {
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
}
.project-slider .project-item .project-content .title {
  color: var(--tj-color-common-white);
  max-width: 350px;
  margin: 0 auto;
  text-align: center;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .project-slider .project-item .project-content .title {
    font-size: 20px;
    width: calc(100% - 70px);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .project-slider .project-item .project-content .title {
    font-size: 20px;
    width: calc(100% - 70px);
  }
}
@media (max-width: 575px) {
  .project-slider .project-item .project-content .title {
    font-size: 20px;
    width: calc(100% - 70px);
  }
}
.project-slider .project-item .project-content .project-text {
  display: block;
  margin-top: 15px;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .project-slider .project-item .project-content {
    padding: 25px;
  }
}
@media (max-width: 575px) {
  .project-slider .project-item .project-content {
    padding: 25px 20px;
  }
}
.project-slider .project-item .project-content .project-btn {
  background-color: transparent;
  border: 0;
  opacity: 1;
  backdrop-filter: none;
  width: 60px;
  height: 60px;
  font-size: 52px;
  margin: 35px auto 0;
}
.project-slider .project-item .project-content .project-btn i {
  color: var(--tj-color-common-white);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.project-slider .project-item .project-content .project-btn:hover i {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-slider .project-item .project-content {
    opacity: 1;
    visibility: visible;
  }
}
.project-slider .project-item:hover .project-img {
  -webkit-transform: scale(1.1) rotate(-2deg);
  -ms-transform: scale(1.1) rotate(-2deg);
  transform: scale(1.1) rotate(-2deg);
}
.project-slider .project-item:hover .project-img::before {
  opacity: 0.6;
}
.project-slider .project-item:hover .project-content {
  opacity: 1;
  visibility: visible;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .project-slider .project-item {
    min-height: 450px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .project-slider .project-item {
    min-height: 400px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-slider .project-item {
    min-height: 330px;
  }
}

.project-slider-2 .project-item {
  background-color: var(--tj-color-theme-dark-2);
}
.project-slider-2 .project-item .title {
  color: var(--tj-color-common-white);
  margin-bottom: 0;
}
.project-slider-2 .project-item .title a {
  display: inline;
}
.project-slider-2 .project-item .title a:hover {
  color: var(--tj-color-theme-primary);
}
.project-slider-2 .project-item .categories a {
  background-color: transparent;
  backdrop-filter: none;
  color: var(--tj-color-text-body-2);
  border-color: rgba(255, 255, 255, 0.1);
}
.project-slider-2 .project-item .categories a:hover {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.project-slider-2 .project-item .project-btn i {
  color: var(--tj-color-common-white);
}
.project-slider-2 .project-item .project-btn:hover i {
  color: var(--tj-color-theme-primary);
}

/* !END: Project CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.tj-testimonial-section {
  background-color: var(--tj-color-theme-bg);
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
}
.tj-testimonial-section .sec-heading-wrap {
  padding-top: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-testimonial-section .sec-heading-wrap {
    padding-top: 100px;
  }
}

.testimonial-wrapper {
  position: relative;
  height: 100%;
}
@media (max-width: 575px) {
  .testimonial-wrapper {
    -webkit-margin-end: -12px;
    margin-inline-end: -12px;
  }
}

.testimonial-slider .testimonial-item {
  background-color: var(--tj-color-common-white);
  border: 2px solid var(--tj-color-common-white);
  padding: 45px 26px 35px;
  height: 100%;
  border-radius: 12px;
}
.testimonial-slider .testimonial-item .quote-icon {
  color: var(--tj-color-theme-primary);
  font-size: 46px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.testimonial-slider .testimonial-item .rating-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
}
.testimonial-slider .testimonial-item .rating-wrap .rating-img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-bg);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.testimonial-slider .testimonial-item .rating-wrap .rating-img img {
  width: 33px;
  height: 33px;
}
.testimonial-slider .testimonial-item .rating-wrap .rating-text {
  color: var(--tj-color-text-body-2);
  font-size: 14px;
}
.testimonial-slider .testimonial-item .rating-wrap .rating-text strong {
  font-size: 16px;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-common-black);
}
.testimonial-slider .testimonial-item .desc {
  font-size: 18px;
  line-height: 1.444;
  padding-top: 23px;
  padding-bottom: 22px;
}
.testimonial-slider .testimonial-item .desc p {
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .testimonial-slider .testimonial-item .desc {
    font-size: 17px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider .testimonial-item .desc {
    font-size: 16px;
  }
}
.testimonial-slider .testimonial-item .testimonial-author .title {
  line-height: 1;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 2px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .testimonial-slider .testimonial-item {
    padding: 35px 23px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider .testimonial-item {
    padding: 30px 20px;
  }
}
.testimonial-slider .swiper-slide-active .testimonial-item {
  border-color: var(--tj-color-theme-primary);
}

.testimonial-author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 30px;
  border-top: 1px dashed var(--tj-color-border-1);
}
.testimonial-author .author-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 12px;
}
.testimonial-author .author-img {
  width: 59px;
  height: 59px;
  border-radius: 50%;
  overflow: hidden;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-author .author-img {
    width: 50px;
    height: 50px;
  }
}
.testimonial-author .title {
  margin-bottom: 0;
  line-height: 1;
}
.testimonial-author .designation {
  font-size: 14px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.testimonial-author .quote-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  color: var(--tj-color-theme-primary);
  font-size: 43px;
}
.testimonial-author .quote-icon i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-author .quote-icon {
    font-size: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-author {
    padding-top: 20px;
  }
}

.star-ratings {
  unicode-bidi: bidi-override;
  font-size: 17px;
  line-height: 1;
  letter-spacing: 3px;
  position: relative;
  margin: 0;
  padding: 0;
  -webkit-text-stroke: 1px var(--tj-color-theme-primary);
}
.star-ratings .fill-ratings {
  color: var(--tj-color-theme-primary);
  padding: 0;
  position: absolute;
  z-index: 1;
  display: block;
  top: 0;
  inset-inline-start: 0;
  overflow: hidden;
}
.star-ratings .fill-ratings span {
  display: inline-block;
  margin: 0;
}
.star-ratings .empty-ratings {
  padding: 0;
  display: block;
  z-index: 0;
  color: transparent;
}

.tj-testimonial-section-2 {
  overflow: hidden;
}
@media (max-width: 575px) {
  .tj-testimonial-section-2 .testimonial-wrapper {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.testimonial-img-area {
  position: relative;
}
.testimonial-img-area .testimonial-img {
  width: 100%;
  height: 100%;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
}
.testimonial-img-area .testimonial-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-img-area .testimonial-img img {
    -o-object-fit: unset;
    object-fit: unset;
  }
}
.testimonial-img-area .testimonial-img .sec-heading {
  position: absolute;
  top: 40px;
  inset-inline-start: 30px;
  width: 60%;
  z-index: 2;
}
.testimonial-img-area .testimonial-img .sec-heading .sec-title {
  color: var(--tj-color-common-white);
}
.testimonial-img-area .testimonial-img .sec-heading .sec-title span {
  color: var(--tj-color-text-body-3);
}
.testimonial-img-area .testimonial-img::after {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.25;
}
.testimonial-img-area .box-area {
  max-width: 239px;
  bottom: 0;
  inset-inline-end: 0;
  inset-inline-start: inherit;
  padding: 15px 0 0 15px;
  border-start-start-radius: 12px;
  border-start-end-radius: 0;
}
.testimonial-img-area .box-area::before {
  inset-inline-start: inherit;
  inset-inline-end: 0;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.testimonial-img-area .box-area::after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  inset-inline-start: -12px;
  inset-inline-end: inherit;
}
@media (max-width: 575px) {
  .testimonial-img-area .box-area {
    max-width: 215px;
  }
}

.rating-box {
  background-color: var(--tj-color-theme-primary);
  border-radius: 10px;
  padding: 18px 25px 25px;
}
.rating-box .rating-area {
  margin-bottom: 8px;
}
.rating-box .star-ratings {
  -webkit-text-stroke: 1px var(--tj-color-common-white);
}
.rating-box .star-ratings .fill-ratings {
  color: var(--tj-color-common-white);
}
.rating-box .rating-text {
  color: var(--tj-color-common-white);
}
.rating-box .title {
  font-size: 74px;
  line-height: 1;
  color: var(--tj-color-common-white);
  margin-bottom: 58px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .rating-box .title {
    font-size: 50px;
    margin-bottom: 20px;
  }
}
.rating-box .number {
  color: var(--tj-color-common-white);
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1.1;
  border-bottom: 1px solid currentColor;
}
@media (max-width: 575px) {
  .rating-box .number {
    font-size: 18px;
  }
}
@media (max-width: 575px) {
  .rating-box {
    padding: 20px 18px 25px;
  }
}

.testimonial-slider-2 {
  height: 100%;
}
.testimonial-slider-2 .testimonial-item {
  background-color: var(--tj-color-common-white);
  padding: 60px 50px;
  height: 100%;
  border-radius: 12px;
}
.testimonial-slider-2 .testimonial-item .quote-icon {
  color: var(--tj-color-theme-primary);
  font-size: 63px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2 .testimonial-item .quote-icon {
    font-size: 45px;
  }
}
.testimonial-slider-2 .testimonial-item .desc {
  font-size: 22px;
  line-height: 1.444;
  padding-top: 30px;
  padding-bottom: 15px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .testimonial-slider-2 .testimonial-item .desc {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2 .testimonial-item .desc {
    font-size: 16px;
    padding-top: 20px;
  }
}
.testimonial-slider-2 .testimonial-item .testimonial-author .author-img {
  width: 80px;
  height: 80px;
}
.testimonial-slider-2 .testimonial-item .testimonial-author .title {
  line-height: 1;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 2px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .testimonial-slider-2 .testimonial-item {
    padding: 50px 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .testimonial-slider-2 .testimonial-item {
    padding: 35px 26px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2 .testimonial-item {
    padding: 30px 20px;
  }
}
.testimonial-slider-2 .swiper-pagination-area {
  position: absolute;
  inset-inline-start: inherit;
  bottom: 60px;
  inset-inline-end: 45px;
  z-index: 10;
  max-width: 200px;
  width: auto;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2 .swiper-pagination-area {
    bottom: 30px;
  }
}

.tj-testimonial-section-3 {
  overflow: hidden;
}

.testimonial-wrapper-2 {
  background-color: var(--tj-color-theme-bg);
  border-radius: 12px;
  margin-top: 20px;
  padding-bottom: 80px;
  position: relative;
  z-index: 1;
}
.testimonial-wrapper-2 .sec-title {
  max-width: 290px;
  width: 100%;
  display: block;
  margin: 0 auto;
  border: 1px dashed var(--tj-color-border-1);
  background-color: var(--tj-color-grey-1);
  border-radius: 40px;
  padding: 2px 22px 4px;
  position: relative;
  top: -19px;
  font-weight: var(--tj-fw-sbold);
}
.testimonial-wrapper-2 .sec-title span {
  color: var(--tj-color-theme-primary);
}
.testimonial-wrapper-2 .client-thumb {
  max-width: 270px;
  margin: 0 auto;
  padding-top: 50px;
}
.testimonial-wrapper-2 .client-thumb .thumb-item {
  margin-bottom: 14px;
}
.testimonial-wrapper-2 .client-thumb .thumb-img {
  width: 82px;
  height: 82px;
  background-color: var(--tj-color-theme-bg);
  border-radius: 50%;
  border: 2px solid transparent;
  overflow: hidden;
  position: relative;
  cursor: pointer;
}
.testimonial-wrapper-2 .client-thumb .thumb-img img {
  mix-blend-mode: luminosity;
}
.testimonial-wrapper-2 .client-thumb .author-header {
  width: 140px;
  text-align: center;
  margin-top: 15px;
  position: relative;
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
}
.testimonial-wrapper-2 .client-thumb .author-header .title {
  font-size: 20px;
  line-height: 1;
}
.testimonial-wrapper-2 .client-thumb .swiper-slide-active .thumb-img {
  border-color: var(--tj-color-theme-primary);
}
.testimonial-wrapper-2 .client-thumb .swiper-slide-active .author-header {
  opacity: 1;
  visibility: visible;
}
.testimonial-wrapper-2 .client-thumb .swiper-slide-active img {
  mix-blend-mode: unset;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-wrapper-2 .client-thumb {
    padding-top: 30px;
  }
}
.testimonial-wrapper-2 .testimonial-item {
  background-color: var(--tj-color-common-white);
  border-radius: 12px;
  position: relative;
  margin: 17px 220px 0;
  padding: 40px 38px;
}
.testimonial-wrapper-2 .testimonial-item::before {
  content: "";
  position: absolute;
  top: -12px;
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
  width: 24px;
  height: 24px;
  background-color: var(--tj-color-common-white);
}
.testimonial-wrapper-2 .testimonial-item .desc {
  font-size: 26px;
  line-height: 1.385;
  text-align: center;
}
.testimonial-wrapper-2 .testimonial-item .desc p {
  margin: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .testimonial-wrapper-2 .testimonial-item .desc {
    font-size: 24px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .testimonial-wrapper-2 .testimonial-item .desc {
    font-size: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-wrapper-2 .testimonial-item .desc {
    font-size: 18px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .testimonial-wrapper-2 .testimonial-item {
    margin: 17px 160px 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .testimonial-wrapper-2 .testimonial-item {
    margin: 17px 120px 0;
    padding: 35px 25px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-wrapper-2 .testimonial-item {
    margin: 17px 15px 0;
    padding: 30px 20px;
  }
}
.testimonial-wrapper-2 .testimonial-navigation {
  position: absolute;
  top: 54%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 5;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.testimonial-wrapper-2 .slider-prev {
  margin-top: -52px;
  -webkit-margin-start: -24px;
  margin-inline-start: -24px;
  background-color: #ecf0f0;
}
.testimonial-wrapper-2 .slider-next {
  background-color: #ecf0f0;
  margin-top: -52px;
  -webkit-margin-end: -24px;
  margin-inline-end: -24px;
}
.testimonial-wrapper-2:hover .testimonial-navigation {
  opacity: 1;
  visibility: visible;
}
.testimonial-wrapper-2 .quote-icon {
  position: absolute;
  bottom: 0;
  inset-inline-end: 0;
  font-size: 299px;
  color: var(--tj-color-theme-primary);
  opacity: 0.1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.testimonial-wrapper-2 .quote-icon i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-wrapper-2 .quote-icon {
    font-size: 190px;
  }
}
.testimonial-wrapper-2 .bg-shape-2,
.testimonial-wrapper-2 .bg-shape-1 {
  max-width: 280px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-wrapper-2 {
    padding-bottom: 60px;
  }
}

.slider-navigation {
  gap: 13px;
}

.slider-next,
.slider-prev {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  font-size: 24px;
  background-color: transparent;
  border: 1px solid var(--tj-color-border-1);
  border-radius: 50%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.slider-next .anim-icon,
.slider-prev .anim-icon {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow: hidden;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}
.slider-next .anim-icon i,
.slider-prev .anim-icon i {
  position: relative;
  top: 0;
  color: var(--tj-color-common-black);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.slider-next .anim-icon i:last-child,
.slider-prev .anim-icon i:last-child {
  position: absolute;
  -webkit-transform: translateX(150%);
  -ms-transform: translateX(150%);
  transform: translateX(150%);
  color: var(--tj-color-common-white);
}
.slider-next:hover,
.slider-prev:hover {
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}
.slider-next:hover .anim-icon i:first-child,
.slider-prev:hover .anim-icon i:first-child {
  -webkit-transform: translateX(-150%);
  -ms-transform: translateX(-150%);
  transform: translateX(-150%);
}
.slider-next:hover .anim-icon i:last-child,
.slider-prev:hover .anim-icon i:last-child {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .slider-next,
  .slider-prev {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }
}

.slider-next .anim-icon i:last-child {
  -webkit-transform: translateX(-150%);
  -ms-transform: translateX(-150%);
  transform: translateX(-150%);
}
.slider-next:hover .anim-icon i:first-child {
  -webkit-transform: translateX(150%);
  -ms-transform: translateX(150%);
  transform: translateX(150%);
}

.swiper-pagination-area {
  text-align: center;
  line-height: 0;
  margin-top: 55px;
}
.swiper-pagination-area.white-pagination .swiper-pagination-bullet {
  background-color: var(--tj-color-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .swiper-pagination-area {
    margin-top: 30px;
  }
}
.swiper-pagination-bullet {
  width: 12px;
  height: 8px;
  background-color: var(--tj-color-theme-primary);
  border-radius: 30px;
  opacity: 0.15;
  position: relative;
  margin: 5px;
  -webkit-transition: all 0.5s ease-in-out 0s;
  transition: all 0.5s ease-in-out 0s;
}
.swiper-pagination-bullet-active {
  width: 64px;
  opacity: 1;
}

/* !END: Testimonial CSS */
/**----------------------------------------
START: Faq CSS
----------------------------------------*/
.tj-faq-section .sec-heading {
  max-width: 550px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-faq-section .sec-heading {
    max-width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-faq-section .content-wrap .desc {
    margin-bottom: 20px;
  }
  .tj-faq-section .content-wrap .desc br {
    display: none;
  }
}

.faq-img-area {
  max-width: 585px;
  position: relative;
}
.faq-img-area .faq-img {
  width: 100%;
  height: 100%;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
}
.faq-img-area .faq-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.faq-img-area .faq-img .title {
  position: absolute;
  top: 40px;
  inset-inline-start: 30px;
  max-width: 400px;
  color: var(--tj-color-common-white);
  z-index: 2;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .faq-img-area .faq-img .title {
    max-width: 280px;
  }
}
.faq-img-area .faq-img::after {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.25;
}
.faq-img-area .box-area {
  max-width: 239px;
  bottom: 0;
  inset-inline-end: 0;
  inset-inline-start: inherit;
  padding: 15px 0 0 15px;
  border-start-start-radius: 12px;
  border-start-end-radius: 0;
}
.faq-img-area .box-area::before {
  inset-inline-start: inherit;
  inset-inline-end: 0;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.faq-img-area .box-area::after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  inset-inline-start: -12px;
  inset-inline-end: inherit;
}
@media (max-width: 575px) {
  .faq-img-area .box-area {
    max-width: 215px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .faq-img-area {
    max-width: 100%;
  }
}

.call-box {
  background-color: var(--tj-color-theme-primary);
  border-radius: 10px;
  padding: 25px 20px 30px;
}
.call-box .call-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: var(--tj-color-theme-dark);
  color: var(--tj-color-common-white);
  font-size: 20px;
  height: 52px;
  width: 52px;
  border-radius: 50%;
  margin-bottom: 9px;
}
@media (max-width: 575px) {
  .call-box .call-icon {
    font-size: 18px;
    height: 45px;
    width: 45px;
  }
}
.call-box .title {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-sbold);
  max-width: 145px;
  margin-bottom: 29px;
}
@media (max-width: 575px) {
  .call-box .title {
    margin-bottom: 18px;
  }
}
.call-box .number {
  color: var(--tj-color-common-white);
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.call-box .number span {
  position: relative;
}
.call-box .number span::after {
  content: "";
  position: absolute;
  bottom: -2px;
  inset-inline-end: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}
.call-box .number:hover span::after {
  -webkit-animation: linehover 0.8s linear;
  animation: linehover 0.8s linear;
}
@media (max-width: 575px) {
  .call-box .number {
    font-size: 18px;
  }
}
.call-box:hover .call-icon {
  -webkit-animation: bellshake 0.5s linear;
  animation: bellshake 0.5s linear;
}
@media (max-width: 575px) {
  .call-box {
    padding: 20px 18px 25px;
  }
}

.tj-faq .accordion-item {
  margin-bottom: 20px;
  padding: 0 30px;
  border-radius: 8px;
  border: 0;
  position: relative;
}
.tj-faq .accordion-item:last-child {
  margin-bottom: 0;
}
.tj-faq .accordion-item .faq-title {
  font-size: 18px;
  text-align: start;
  color: var(--tj-color-heading-primary);
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-sbold);
  padding: 27px 60px 27px 0;
  width: 100%;
  position: relative;
  z-index: 2;
  -webkit-transition: none;
  transition: none;
}
.tj-faq .accordion-item .faq-title::after {
  content: "\e927";
  color: var(--tj-color-theme-primary);
  font-size: 20px;
  font-family: "bexon-icons" !important;
  font-weight: normal;
  text-align: center;
  position: absolute;
  inset-inline-end: 0;
  top: 50%;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid var(--tj-color-theme-primary);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-faq .accordion-item .faq-title {
    padding: 20px 40px 20px 0;
  }
}
.tj-faq .accordion-item .accordion-body {
  padding: 0;
  padding-bottom: 25px;
  margin-top: 15px;
  color: var(--tj-color-text-body);
}
.tj-faq .accordion-item .accordion-body p:last-child {
  margin-bottom: 0;
}
.tj-faq .accordion-item.active .faq-title {
  border-bottom: 1px dashed var(--tj-color-border-1);
}
.tj-faq .accordion-item.active .faq-title::after {
  content: "\e918";
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-faq .accordion-item {
    padding: 0 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-faq {
    padding-top: 40px;
  }
}
.tj-faq.style-2 .accordion-item.active {
  background-color: var(--tj-color-theme-primary);
}
.tj-faq.style-2 .accordion-item.active .faq-title {
  color: var(--tj-color-common-white);
  border-color: rgba(255, 255, 255, 0.15);
}
.tj-faq.style-2 .accordion-item.active .faq-title::after {
  color: var(--tj-color-common-white);
  border-color: rgba(255, 255, 255, 0.1);
}
.tj-faq.style-2 .accordion-item.active .accordion-body p {
  color: var(--tj-color-common-white);
}

/* !END: Faq CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.tj-blog-section .sec-heading {
  max-width: 550px;
}
.tj-blog-section-2 .sec-heading-wrap .sub-title {
  color: var(--tj-color-theme-primary);
  background-color: var(--tj-color-common-white);
  border: 0;
  padding: 7px 10px;
}
.tj-blog-section-3 {
  background-color: var(--tj-color-theme-bg);
  border-radius: 12px;
  position: relative;
  z-index: 1;
}
.tj-blog-section-3 .sec-heading {
  max-width: 550px;
}

.blog-item {
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
}
.blog-item .blog-thumb {
  min-height: 280px;
  overflow: hidden;
  position: relative;
}
.blog-item .blog-thumb::before {
  content: "";
  background-color: var(--tj-color-theme-dark);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  inset-inline-start: 0;
  opacity: 0.25;
  z-index: 1;
  pointer-events: none;
}
.blog-item .blog-thumb img {
  width: 100%;
  min-height: 280px;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 575px) {
  .blog-item .blog-thumb {
    min-height: 240px;
  }
  .blog-item .blog-thumb img {
    min-height: 240px;
  }
}
.blog-item .blog-content {
  background-color: var(--tj-color-common-white);
  padding: 25px 28px 35px 28px;
  height: 100%;
}
.blog-item .blog-content .title {
  font-weight: var(--tj-fw-sbold);
  margin: 0;
}
.blog-item .blog-content .title a {
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(currentColor),
    to(currentColor)
  );
  background-image: linear-gradient(
    to bottom,
    currentColor 0%,
    currentColor 100%
  );
  background-size: 0 2px;
  background-repeat: no-repeat;
  background-position: 0 85%;
  display: inline;
}
.blog-item .blog-content .title a:hover {
  background-size: 100% 2px;
}
.blog-item .blog-content .desc {
  margin-top: 15px;
}
.blog-item .blog-content .desc:last-of-type {
  margin-bottom: 0;
}
.blog-item .blog-content .text-btn {
  margin-top: 15px;
}
.blog-item .blog-content .categories a:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.blog-item:hover .blog-thumb img {
  -webkit-transform: scale(1.1) rotate(-2deg);
  -ms-transform: scale(1.1) rotate(-2deg);
  transform: scale(1.1) rotate(-2deg);
}
.blog-item.style-2 {
  padding: 15px 0 15px 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background-color: var(--tj-color-common-white);
}
@media (max-width: 575px) {
  .blog-item.style-2 {
    padding: 15px;
  }
}
.blog-item.style-2 .blog-thumb {
  width: 47%;
  min-height: 330px;
  border-radius: 10px;
}
@media (max-width: 575px) {
  .blog-item.style-2 .blog-thumb {
    width: 100%;
  }
}
.blog-item.style-2 .blog-content {
  width: 53%;
  height: auto;
  padding: 35px 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .blog-item.style-2 .blog-content .title {
    font-size: 22px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .blog-item.style-2 .blog-content {
    padding: 30px 24px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .blog-item.style-2 .blog-content {
    padding: 25px 20px;
  }
}
@media (max-width: 575px) {
  .blog-item.style-2 .blog-content {
    width: 100%;
    padding: 25px 12px 15px;
  }
}
.blog-item.style-3 {
  border: 0;
  padding: 0;
  position: relative;
}
.blog-item.style-3 .blog-thumb::before {
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(rgb(12, 30, 33)),
    to(rgba(12, 30, 33, 0))
  );
  background: linear-gradient(
    0deg,
    rgb(12, 30, 33) 0%,
    rgba(12, 30, 33, 0) 100%
  );
  opacity: 1;
}
.blog-item.style-3 .blog-content {
  position: absolute;
  inset-inline-start: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  padding: 28px;
  z-index: 3;
  overflow: hidden;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background-color: transparent;
}
.blog-item.style-3 .blog-content .title a {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .blog-item.style-3 .blog-content .title {
    font-size: 19px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .blog-item.style-3 .blog-content {
    padding: 25px 20px;
  }
}
@media (max-width: 575px) {
  .blog-item.style-3 .blog-content {
    padding: 18px 15px;
  }
}
.blog-item.style-3 .blog-meta .categories a {
  color: var(--tj-color-text-body-2);
  border-color: transparent;
}
.blog-item.style-3 .blog-meta .categories a:hover {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.blog-item.style-3 .blog-meta span {
  color: var(--tj-color-text-body-2);
}
.blog-item.style-3 .blog-meta span a {
  color: var(--tj-color-grey-1);
}
.blog-item.style-3 .text-btn {
  position: absolute;
  margin: 0;
  inset-inline-start: 30px;
  bottom: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}
.blog-item.style-3 .text-btn .btn-text {
  color: var(--tj-color-common-white);
}
.blog-item.style-3 .text-btn .btn-icon {
  background-color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .blog-item.style-3 .text-btn {
    inset-inline-start: 20px;
  }
}
@media (max-width: 575px) {
  .blog-item.style-3 .text-btn {
    inset-inline-start: 15px;
  }
}
.blog-item.style-3:hover::before {
  height: 100%;
}
.blog-item.style-3:hover .blog-content {
  padding-bottom: 90px;
}
@media (max-width: 575px) {
  .blog-item.style-3:hover .blog-content {
    padding-bottom: 70px;
  }
}
.blog-item.style-3:hover .text-btn {
  opacity: 1;
  visibility: visible;
  bottom: 35px;
}
@media (max-width: 575px) {
  .blog-item.style-3:hover .text-btn {
    bottom: 25px;
  }
}

.blog-date {
  position: absolute;
  inset-inline-start: 15px;
  top: 15px;
  text-align: center;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  padding: 20px;
  border-radius: 6px;
  z-index: 2;
}
.blog-date .date {
  display: block;
  font-family: var(--tj-ff-heading);
  font-size: 32px;
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-medium);
  letter-spacing: -0.96px;
  margin-bottom: 8px;
  line-height: 1;
}
.blog-date .month {
  display: block;
  font-size: 14px;
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-bold);
  letter-spacing: 1.4px;
  text-transform: uppercase;
  line-height: 1;
}

.blog-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
}
.blog-meta span {
  color: var(--tj-color-text-body-3);
  line-height: 1;
}
.blog-meta span a {
  color: var(--tj-color-heading-primary);
}
.blog-meta span a:hover {
  color: var(--tj-color-theme-primary);
}
@media (max-width: 575px) {
  .blog-meta {
    margin-bottom: 15px;
  }
}

.blog-post-wrapper .blog-item {
  margin-bottom: 40px;
}
.blog-post-wrapper .blog-item .blog-thumb {
  border-radius: 12px;
}
.blog-post-wrapper .blog-item .blog-content {
  background-color: transparent;
  padding: 25px 0 0 0;
}
.blog-post-wrapper .blog-item .blog-meta {
  margin-bottom: 12px;
}

.tj-pagination {
  margin-top: 50px;
}
.tj-pagination ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
}
.tj-pagination ul li .page-numbers {
  display: inline-block;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  line-height: 48px;
  text-align: center;
  border: 1px solid var(--tj-color-border-1);
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-heading-primary);
}
.tj-pagination ul li .page-numbers i {
  line-height: 1;
  color: var(--tj-color-heading-primary);
}
.tj-pagination ul li .page-numbers:hover {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  border-color: var(--tj-color-theme-primary);
}
.tj-pagination ul li .page-numbers:hover i {
  color: var(--tj-color-common-white);
}
.tj-pagination ul li .page-numbers.current {
  background-color: var(--tj-color-theme-dark);
  color: var(--tj-color-common-white);
  border-color: var(--tj-color-theme-dark);
}
.tj-pagination ul li .page-numbers.current i {
  color: var(--tj-color-common-white);
}
.tj-pagination ul li .page-numbers.next {
  font-size: 22px;
}

/* !END: Blog CSS */
/**----------------------------------------
START: CTA CSS
----------------------------------------*/
/* =========================================================
   CTA SECTION
========================================================= */

.tj-cta-section {
  position: relative;
  z-index: 5;
  padding: 70px 0 0;
  margin-bottom: -90px;
}

/* =========================================================
   CTA CARD
========================================================= */

.tj-cta-section .cta-area {
  position: relative;

  width: 100%;
  min-height: 300px;

  display: flex;
  align-items: stretch;

  overflow: hidden;

  border-radius: 28px;

  background:
    radial-gradient(
      circle at 15% 20%,
      rgba(125, 75, 255, 0.18),
      transparent 38%
    ),
    linear-gradient(135deg, #330879 0%, #21103a 100%);

  box-shadow: 0 30px 80px rgba(33, 16, 58, 0.22);

  isolation: isolate;
}

/* =========================================================
   CTA CONTENT
========================================================= */

.tj-cta-section .cta-content {
  position: relative;
  z-index: 3;

  width: 58%;

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;

  padding: 42px 55px;
}

/* =========================================================
   CTA TITLE
========================================================= */

.tj-cta-section .cta-content .title {
  margin: 0;

  max-width: 620px;

  color: #ffffff;

  font-family: "Manrope", sans-serif;

  font-size: clamp(38px, 4vw, 62px);

  font-weight: 700;

  line-height: 0.98;

  letter-spacing: -0.045em;
}

/* Remove unwanted animation-generated spacing */

.tj-cta-section .cta-content .title > div {
  margin: 0;
  padding: 0;
}

.tj-cta-section .cta-content .title > div + div {
  margin-top: 3px;
}

/* =========================================================
   CTA BUTTON
========================================================= */

.tj-cta-section .cta-btn {
  margin-top: 28px;
}

/* =========================================================
   BUTTON
========================================================= */

.tj-cta-section .tj-primary-btn {
  position: relative;

  display: inline-flex;
  align-items: center;
  justify-content: space-between;

  width: 205px;
  height: 58px;

  padding: 0 7px 0 25px;

  border: 0;
  border-radius: 100px;

  background: #ffffff;
  color: #21103a;

  text-decoration: none;

  font-family: "Manrope", sans-serif;
  font-size: 10px;
  font-weight: 700;

  letter-spacing: 0.13em;
  text-transform: uppercase;

  overflow: hidden;

  box-sizing: border-box;

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

/* Button text */

.tj-cta-section .tj-primary-btn .btn-text {
  position: relative;
  z-index: 2;

  white-space: nowrap;
}

/* Button icon */

.tj-cta-section .tj-primary-btn .btn-icon {
  width: 44px;
  height: 44px;

  flex: 0 0 44px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #330879;
  color: #ffffff;

  font-size: 16px;

  transition:
    transform 0.4s ease,
    background 0.3s ease;
}

/* Hover */

.tj-cta-section .tj-primary-btn:hover {
  color: #21103a;

  transform: translateY(-3px);

  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.18);
}

.tj-cta-section .tj-primary-btn:hover .btn-icon {
  transform: rotate(-45deg);
}

/* =========================================================
   CTA IMAGE
========================================================= */

.tj-cta-section .cta-img {
  position: absolute;

  top: 0;
  right: 0;

  width: 45%;
  height: 100%;

  overflow: hidden;

  z-index: 1;
}

/* Image */

.tj-cta-section .cta-img img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  object-position: center;

  opacity: 0.75;

  mix-blend-mode: screen;

  transition:
    transform 0.8s ease,
    opacity 0.4s ease;
}

/* Dark overlay */

.tj-cta-section .cta-img::after {
  content: "";

  position: absolute;
  inset: 0;
}

/* Image hover */

.tj-cta-section .cta-area:hover .cta-img img {
  transform: scale(1.04);
  opacity: 0.85;
}

/* =========================================================
   DECORATIVE GLOW
========================================================= */

.tj-cta-section .cta-area::before {
  content: "";

  position: absolute;

  width: 280px;
  height: 280px;

  left: -120px;
  bottom: -150px;

  border-radius: 50%;

  background: rgba(150, 100, 255, 0.18);

  filter: blur(30px);

  z-index: 0;

  pointer-events: none;
}

/* =========================================================
   FOOTER OVERLAP
========================================================= */

.tj-cta-section + footer,
.tj-cta-section ~ footer {
  position: relative;
  z-index: 1;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
  .tj-cta-section {
    padding-top: 60px;
    margin-bottom: -70px;
  }

  .tj-cta-section .cta-area {
    min-height: 280px;
    border-radius: 24px;
  }

  .tj-cta-section .cta-content {
    width: 62%;
    padding: 38px 40px;
  }

  .tj-cta-section .cta-content .title {
    font-size: clamp(34px, 5vw, 50px);
  }

  .tj-cta-section .cta-img {
    width: 48%;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
  .tj-cta-section {
    padding: 45px 15px 0;
    margin-bottom: -55px;
  }

  .tj-cta-section .cta-area {
    min-height: 0;

    display: flex;
    flex-direction: column;

    border-radius: 22px;
  }

  /* Content */

  .tj-cta-section .cta-content {
    width: 100%;

    min-height: 255px;

    padding: 35px 28px;

    justify-content: center;
  }

  /* Title */

  .tj-cta-section .cta-content .title {
    max-width: 100%;

    font-size: clamp(34px, 10vw, 46px);

    line-height: 1;

    letter-spacing: -0.04em;
  }

  /* Button */

  .tj-cta-section .cta-btn {
    margin-top: 24px;
  }

  .tj-cta-section .tj-primary-btn {
    width: 195px;
    height: 55px;

    padding-left: 22px;
  }

  .tj-cta-section .tj-primary-btn .btn-icon {
    width: 41px;
    height: 41px;

    flex-basis: 41px;
  }

  /* Image */

  .tj-cta-section .cta-img {
    position: relative;

    top: auto;
    right: auto;

    width: 100%;
    height: 125px;
  }

  .tj-cta-section .cta-img::after {
    background: linear-gradient(
      180deg,
      #21103a 0%,
      rgba(33, 16, 58, 0.15) 100%
    );
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .tj-cta-section {
    padding-left: 12px;
    padding-right: 12px;
  }

  .tj-cta-section .cta-content {
    min-height: 235px;
    padding: 30px 23px;
  }

  .tj-cta-section .cta-content .title {
    font-size: 32px;
  }

  .tj-cta-section .cta-img {
    height: 110px;
  }

  .tj-cta-section .tj-primary-btn {
    width: 185px;
  }
}
/* !END: CTA CSS */
/**----------------------------------------
START: Countup CSS
----------------------------------------*/
.tj-countup-section {
  position: relative;
  z-index: 2;
  margin-bottom: -122px;
}

.countup-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background-color: var(--tj-color-theme-primary);
  border-radius: 12px;
}

.countup-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 25%;
  padding: 68px 50px 74px 50px;
  position: relative;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .countup-item {
    padding: 55px 30px 60px 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .countup-item {
    width: 50%;
    padding: 45px 30px 50px 30px;
  }
}
@media (max-width: 575px) {
  .countup-item {
    width: 100%;
    padding: 38px 0 45px 0;
    text-align: center;
  }
  .countup-item:last-child {
    padding-bottom: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .countup-item:nth-child(2) .count-separator {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .countup-item:nth-child(4),
  .countup-item:nth-child(3) {
    padding-top: 0;
  }
}

.inline-content {
  font-size: 74px;
  line-height: 1;
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-common-white);
  font-family: var(--tj-ff-heading);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 5px;
  letter-spacing: -1.48px;
}
.inline-content .odometer {
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-common-white);
  font-family: var(--tj-ff-heading);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.inline-content .odometer .odometer-digit,
.inline-content .odometer span {
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-common-white);
  font-family: var(--tj-ff-heading);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: bottom;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .inline-content {
    font-size: 65px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .inline-content {
    font-size: 60px;
  }
}
@media (max-width: 575px) {
  .inline-content {
    font-size: 55px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.count-text {
  color: var(--tj-color-common-white);
  display: block;
}

.count-separator {
  position: absolute;
  width: 10px;
  height: 90px;
  top: 50%;
  inset-inline-end: -5px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 0.15;
}
@media (max-width: 575px) {
  .count-separator {
    top: inherit;
    bottom: 0;
    inset-inline-end: 50%;
    -webkit-transform: translate(0, 50%) rotate(90deg);
    -ms-transform: translate(0, 50%) rotate(90deg);
    transform: translate(0, 50%) rotate(90deg);
  }
}

/* !END: Countup CSS */
/**----------------------------------------
START: Working process CSS
----------------------------------------*/
.tj-working-process {
  background-color: var(--tj-color-theme-bg);
  position: relative;
  z-index: 1;
  border-radius: 12px;
}
.tj-working-process .sec-heading-wrap .sub-title {
  color: var(--tj-color-theme-primary);
  background-color: var(--tj-color-common-white);
  border: 0;
  padding: 7px 10px;
}
.tj-working-process .content-wrap {
  margin-bottom: 45px;
}

.working-process-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 15px;
}

.process-item {
  max-width: 422px;
  width: 100%;
  background-color: var(--tj-color-common-white);
  padding: 25px 28px 40px 28px;
  position: relative;
  border-radius: 10px;
  z-index: 3;
}
.process-item:nth-child(2) {
  z-index: 2;
}
.process-item:last-child {
  z-index: 1;
}
.process-item:not(:last-child)::after {
  content: "\e916";
  font-size: 24px;
  line-height: 1;
  color: var(--tj-color-theme-primary);
  font-family: "bexon-icons" !important;
  font-weight: normal;
  position: absolute;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background-color: var(--tj-color-common-white);
  border: 7px solid var(--tj-color-theme-bg);
  top: 50%;
  inset-inline-end: -34px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 5;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: none;
  transition: none;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .process-item:not(:last-child)::after {
    font-size: 20px;
    width: 50px;
    height: 50px;
    inset-inline-end: -30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .process-item:not(:last-child)::after {
    -webkit-transform: translate(-50%, 0) rotate(90deg);
    -ms-transform: translate(-50%, 0) rotate(90deg);
    transform: translate(-50%, 0) rotate(90deg);
    top: inherit;
    inset-inline-end: inherit;
    bottom: -40px;
    inset-inline-start: 50%;
  }
}
.process-item .process-step {
  font-size: 120px;
  color: var(--tj-color-theme-primary);
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(var(--tj-color-theme-primary)),
    color-stop(90%, var(--tj-color-common-white))
  );
  background: linear-gradient(
    180deg,
    var(--tj-color-theme-primary) 0%,
    var(--tj-color-common-white) 90%
  );
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  margin-bottom: 16px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .process-item .process-step {
    font-size: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .process-item .process-step {
    font-size: 80px;
    margin-bottom: 20px;
  }
}
.process-item .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .process-item .title {
    margin-bottom: 10px;
  }
}
.process-item .desc {
  margin: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .process-item {
    max-width: 362px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .process-item {
    max-width: 302px;
    padding: 35px 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .process-item {
    max-width: 100%;
    padding: 35px 15px 30px 15px;
  }
}

.working-process-wrap {
  padding-top: 120px;
  padding-bottom: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .working-process-wrap {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .working-process-wrap {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .working-process-wrap .content-wrap {
    margin-bottom: 30px;
  }
}

.tj-faq.style-3 {
  max-width: 460px;
  width: 100%;
  padding: 0;
  counter-reset: steps;
}
.tj-faq.style-3 .accordion-item {
  background: transparent;
  border: none;
  -webkit-border-start: 4px solid var(--tj-color-border-1);
  border-inline-start: 4px solid var(--tj-color-border-1);
  -webkit-padding-start: 20px;
  padding-inline-start: 20px;
  margin-bottom: 0;
}
.tj-faq.style-3 .accordion-item .faq-title {
  -webkit-padding-end: 0;
  padding-inline-end: 0;
  -webkit-padding-start: 27px;
  padding-inline-start: 27px;
  color: var(--tj-color-heading-primary);
}
.tj-faq.style-3 .accordion-item .faq-title::after {
  display: none;
}
.tj-faq.style-3 .accordion-item .faq-title::before {
  counter-increment: steps;
  content: "0" counter(steps) ".";
  font-size: 14px;
  line-height: 1;
  font-weight: var(--tj-fw-medium);
  position: absolute;
  top: 50%;
  inset-inline-start: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-faq.style-3 .accordion-item .faq-title {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-faq.style-3 .accordion-item .faq-title {
    font-size: 18px;
  }
}
.tj-faq.style-3 .accordion-item .accordion-body {
  padding: 0 0 23px 27px;
}
.tj-faq.style-3 .accordion-item.active {
  border-color: var(--tj-color-theme-primary);
}
.tj-faq.style-3 .accordion-item.active .faq-title::before {
  color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-faq.style-3 .accordion-item {
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
  }
}

.working-img-area {
  position: absolute;
  inset-inline-end: 0;
  top: 0;
  width: 50%;
  height: 100%;
}
.working-img-area .circle-text-wrap.video-btn {
  inset-inline-end: inherit;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 5;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .working-img-area .circle-text-wrap.video-btn {
    width: 130px;
    height: 130px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .working-img-area {
    position: relative;
    width: 100%;
    min-height: 500px;
  }
}

.working-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  inset-inline-end: 0;
  z-index: 2;
}
.working-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* !END: Working process CSS */
/**----------------------------------------
START: Contact CSS
----------------------------------------*/
.tj-contact-section {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.tj-contact-section .sec-heading {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
  margin-bottom: 35px;
}
.tj-contact-section .sec-heading .sec-title {
  color: var(--tj-color-common-white);
}

.map-area {
  width: 100%;
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
}
.map-area iframe {
  width: 100%;
  height: 100%;
  min-height: 360px;
  display: block;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .map-area {
    height: auto;
    margin-top: 30px;
  }
}

.contact-info .contact-item {
  padding: 13px 0 9px 0;
}
.contact-info .contact-item .subtitle {
  display: block;
  font-size: 14px;
  line-height: 1;
  color: var(--tj-color-text-body-2);
  margin-bottom: 7px;
}
.contact-info .contact-item a:hover {
  color: var(--tj-color-theme-primary);
}
.contact-info .contact-item .contact-link {
  display: inline-block;
  color: #2b0a45;
  font-weight: 400;
}
.contact-info .contact-item:last-child {
  border: 0;
}

.contact-form {
  background-color: var(--tj-color-common-white);
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 15px;
  margin-inline-end: 15px;
  padding: 60px 50px;
  border-radius: 12px;
}
.contact-form .title {
  margin-bottom: 35px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form .title {
    margin-bottom: 25px;
  }
}
.contact-form .form-input {
  margin-bottom: 27px;
  position: relative;
}
.contact-form .form-input textarea,
.contact-form .form-input select,
.contact-form .form-input .nice-select,
.contact-form .form-input input[type="tel"],
.contact-form .form-input input[type="text"],
.contact-form .form-input input[type="email"] {
  background-color: transparent;
  color: var(--tj-color-text-body-3);
  padding: 11px 0;
  border: 0;
  border-bottom: 1px dashed var(--tj-color-border-1);
}
.contact-form .form-input textarea::-webkit-input-placeholder,
.contact-form .form-input select::-webkit-input-placeholder,
.contact-form .form-input .nice-select::-webkit-input-placeholder,
.contact-form .form-input input[type="tel"]::-webkit-input-placeholder,
.contact-form .form-input input[type="text"]::-webkit-input-placeholder,
.contact-form .form-input input[type="email"]::-webkit-input-placeholder {
  color: var(--tj-color-text-body-3);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea::-moz-placeholder,
.contact-form .form-input select::-moz-placeholder,
.contact-form .form-input .nice-select::-moz-placeholder,
.contact-form .form-input input[type="tel"]::-moz-placeholder,
.contact-form .form-input input[type="text"]::-moz-placeholder,
.contact-form .form-input input[type="email"]::-moz-placeholder {
  color: var(--tj-color-text-body-3);
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea:-ms-input-placeholder,
.contact-form .form-input select:-ms-input-placeholder,
.contact-form .form-input .nice-select:-ms-input-placeholder,
.contact-form .form-input input[type="tel"]:-ms-input-placeholder,
.contact-form .form-input input[type="text"]:-ms-input-placeholder,
.contact-form .form-input input[type="email"]:-ms-input-placeholder {
  color: var(--tj-color-text-body-3);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea::-webkit-input-placeholder,
.contact-form .form-input select::-webkit-input-placeholder,
.contact-form .form-input .nice-select::-webkit-input-placeholder,
.contact-form .form-input input[type="tel"]::-webkit-input-placeholder,
.contact-form .form-input input[type="text"]::-webkit-input-placeholder,
.contact-form .form-input input[type="email"]::-webkit-input-placeholder {
  color: var(--tj-color-text-body-3);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea::-moz-placeholder,
.contact-form .form-input select::-moz-placeholder,
.contact-form .form-input .nice-select::-moz-placeholder,
.contact-form .form-input input[type="tel"]::-moz-placeholder,
.contact-form .form-input input[type="text"]::-moz-placeholder,
.contact-form .form-input input[type="email"]::-moz-placeholder {
  color: var(--tj-color-text-body-3);
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea:-ms-input-placeholder,
.contact-form .form-input select:-ms-input-placeholder,
.contact-form .form-input .nice-select:-ms-input-placeholder,
.contact-form .form-input input[type="tel"]:-ms-input-placeholder,
.contact-form .form-input input[type="text"]:-ms-input-placeholder,
.contact-form .form-input input[type="email"]:-ms-input-placeholder {
  color: var(--tj-color-text-body-3);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea::-ms-input-placeholder,
.contact-form .form-input select::-ms-input-placeholder,
.contact-form .form-input .nice-select::-ms-input-placeholder,
.contact-form .form-input input[type="tel"]::-ms-input-placeholder,
.contact-form .form-input input[type="text"]::-ms-input-placeholder,
.contact-form .form-input input[type="email"]::-ms-input-placeholder {
  color: var(--tj-color-text-body-3);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea::placeholder,
.contact-form .form-input select::placeholder,
.contact-form .form-input .nice-select::placeholder,
.contact-form .form-input input[type="tel"]::placeholder,
.contact-form .form-input input[type="text"]::placeholder,
.contact-form .form-input input[type="email"]::placeholder {
  color: var(--tj-color-text-body-3);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form .form-input textarea:focus,
.contact-form .form-input select:focus,
.contact-form .form-input .nice-select:focus,
.contact-form .form-input input[type="tel"]:focus,
.contact-form .form-input input[type="text"]:focus,
.contact-form .form-input input[type="email"]:focus {
  border-color: var(--tj-color-theme-dark);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form .form-input textarea,
  .contact-form .form-input select,
  .contact-form .form-input .nice-select,
  .contact-form .form-input input[type="tel"],
  .contact-form .form-input input[type="text"],
  .contact-form .form-input input[type="email"] {
    padding: 6px 0 10px;
  }
}
.contact-form .form-input .error {
  color: var(--tj-color-red-1);
}
.contact-form .form-input .cf-label {
  font-size: 16px;
  color: var(--tj-color-text-body-3);
  position: absolute;
  top: 10px;
  inset-inline-start: 0;
  pointer-events: none;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.contact-form .form-input .cf-label span {
  color: var(--tj-color-theme-primary);
}
.contact-form .form-input textarea:focus ~ .cf-label,
.contact-form .form-input input[type="tel"]:focus ~ .cf-label,
.contact-form .form-input input[type="text"]:focus ~ .cf-label,
.contact-form .form-input input[type="email"]:focus ~ .cf-label {
  visibility: hidden;
  opacity: 0;
}
.contact-form .form-input .nice-select {
  color: var(--tj-color-text-body-3);
  line-height: 1.5;
  border-radius: 0;
  margin-bottom: 27px;
}
.contact-form .form-input .nice-select .list {
  width: 100%;
  border-radius: 8px;
}
.contact-form .form-input .nice-select .list .option {
  color: var(--tj-color-theme-dark);
  padding: 0 20px;
}
.contact-form .form-input .nice-select .list .option:hover,
.contact-form .form-input .nice-select .list .option.focus {
  background: var(--tj-color-theme-bg);
  color: var(--tj-color-theme-dark);
}
.contact-form .form-input .nice-select::after {
  content: "\e929";
  font-family: "bexon-icons";
  color: var(--tj-color-common-black);
  font-size: 16px;
  line-height: 1;
  width: 16px;
  height: 16px;
  top: 20px;
  inset-inline-end: 5px;
  border: 0;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}
.contact-form .form-input .nice-select.open::after {
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form .form-input .nice-select {
    margin-bottom: 20px;
  }
}
.contact-form .form-input textarea {
  height: 130px;
  resize: none;
  padding-top: 0;
}
.contact-form .form-input.message-input {
  margin-bottom: 30px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form .form-input {
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form {
    max-width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form {
    padding: 25px 20px 30px;
  }
}
.contact-form.style-2 {
  max-width: 610px;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(6px);
  position: relative;
  z-index: 2;
}
.contact-form.style-2 .title {
  margin-bottom: 40px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form.style-2 .title {
    margin-bottom: 20px;
  }
}
.contact-form.style-2 .form-input {
  margin-bottom: 27px;
  position: relative;
}
.contact-form.style-2 .form-input.message-input {
  margin-top: 0;
}
@media (max-width: 575px) {
  .contact-form.style-2 .form-input.message-input {
    margin-top: 20px;
  }
}
.contact-form.style-2 .form-input textarea,
.contact-form.style-2 .form-input input[type="tel"],
.contact-form.style-2 .form-input input[type="text"],
.contact-form.style-2 .form-input input[type="email"] {
  color: var(--tj-color-text-body-2);
  padding: 11px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.contact-form.style-2 .form-input textarea::-webkit-input-placeholder,
.contact-form.style-2 .form-input input[type="tel"]::-webkit-input-placeholder,
.contact-form.style-2 .form-input input[type="text"]::-webkit-input-placeholder,
.contact-form.style-2
  .form-input
  input[type="email"]::-webkit-input-placeholder {
  color: var(--tj-color-text-body-2);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea::-moz-placeholder,
.contact-form.style-2 .form-input input[type="tel"]::-moz-placeholder,
.contact-form.style-2 .form-input input[type="text"]::-moz-placeholder,
.contact-form.style-2 .form-input input[type="email"]::-moz-placeholder {
  color: var(--tj-color-text-body-2);
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea:-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="tel"]:-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="text"]:-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="email"]:-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea::-webkit-input-placeholder,
.contact-form.style-2 .form-input input[type="tel"]::-webkit-input-placeholder,
.contact-form.style-2 .form-input input[type="text"]::-webkit-input-placeholder,
.contact-form.style-2
  .form-input
  input[type="email"]::-webkit-input-placeholder {
  color: var(--tj-color-text-body-2);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea::-moz-placeholder,
.contact-form.style-2 .form-input input[type="tel"]::-moz-placeholder,
.contact-form.style-2 .form-input input[type="text"]::-moz-placeholder,
.contact-form.style-2 .form-input input[type="email"]::-moz-placeholder {
  color: var(--tj-color-text-body-2);
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea:-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="tel"]:-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="text"]:-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="email"]:-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea::-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="tel"]::-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="text"]::-ms-input-placeholder,
.contact-form.style-2 .form-input input[type="email"]::-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea::placeholder,
.contact-form.style-2 .form-input input[type="tel"]::placeholder,
.contact-form.style-2 .form-input input[type="text"]::placeholder,
.contact-form.style-2 .form-input input[type="email"]::placeholder {
  color: var(--tj-color-text-body-2);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-2 .form-input textarea:focus,
.contact-form.style-2 .form-input input[type="tel"]:focus,
.contact-form.style-2 .form-input input[type="text"]:focus,
.contact-form.style-2 .form-input input[type="email"]:focus {
  border-color: rgb(255, 255, 255);
}
.contact-form.style-2 .form-input .cf-label {
  color: var(--tj-color-text-body-2);
}
.contact-form.style-2 .form-input .nice-select {
  color: var(--tj-color-text-body-2);
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.contact-form.style-2 .form-input .nice-select.open {
  border-color: rgb(255, 255, 255);
}
.contact-form.style-2 .form-input .nice-select::after {
  color: var(--tj-color-common-white);
  font-size: 13px;
  width: 13px;
  height: 13px;
}
.contact-form.style-2 .form-input textarea {
  height: 140px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form.style-2 {
    max-width: 100%;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form.style-2 {
    padding: 35px 20px 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.contact-item.style-2 {
  padding: 30px 25px 40px;
  background-color: var(--tj-color-common-white);
  text-align: center;
  border-radius: 12px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .contact-item.style-2 {
    padding: 25px;
  }
}
.contact-item.style-2 p {
  margin-bottom: 0;
  max-width: 224px;
  margin: 0 auto;
}
.contact-item.style-2:hover .contact-icon {
  background: var(--tj-color-theme-primary);
}
.contact-item.style-2:hover .contact-icon i {
  color: var(--tj-color-common-white);
}
.contact-item.style-2 .contact-icon {
  width: 88px;
  height: 88px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: var(--tj-color-theme-bg);
  border-radius: 50%;
  margin-bottom: 22px;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.contact-item.style-2 .contact-icon i {
  font-size: 32px;
  color: var(--tj-color-theme-primary);
}
.contact-item.style-2 .contact-title {
  font-size: 24px;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 20px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .contact-item.style-2 .contact-title {
    font-size: 20px;
  }
}
.contact-item.style-2 .contact-list {
  list-style: none;
}
.contact-item.style-2 .contact-list li a {
  color: var(--tj-color-text-body);
}
.contact-item.style-2 .contact-list li a:hover {
  color: var(--tj-color-theme-primary);
}
.contact-item.style-2 .contact-list li.active a {
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-theme-primary);
}
/* contact content */
/* =========================================================
   ITOLOGY CONTACT SECTION
   PURPLE THEME
   Colors:
   Dark Purple  : #21103a
   Main Purple  : #330879
========================================================= */

.it-contact-section {
  padding: 110px 0 120px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
}

/* =========================================================
   HEADER
========================================================= */

.it-contact-header {
  max-width: 760px;
  margin: 0 auto 55px;
  text-align: center;
}

.it-contact-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #330879;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.it-contact-header h2 {
  margin: 0;
  color: #21103a;
  font-size: 52px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.5px;
}

.it-contact-header h2 span {
  color: #330879;
}

.it-contact-header p {
  max-width: 620px;
  margin: 20px auto 0;
  color: #686270;
  font-size: 17px;
  line-height: 1.7;
}

/* =========================================================
   MAIN LAYOUT
========================================================= */

.it-contact-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  align-items: stretch;
}

/* =========================================================
   MAP
========================================================= */

.it-contact-map {
  position: relative;
  min-height: 680px;
  border-radius: 24px;
  overflow: hidden;
  background: #21103a;
  box-shadow: 0 20px 60px rgba(33, 16, 58, 0.12);
}

.it-map-frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.it-map-frame iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  filter: grayscale(15%) contrast(1.02);
}

/* =========================================================
   MAP OVERLAY
========================================================= */

.it-map-caption {
  position: absolute;
  left: 25px;
  bottom: 25px;
  right: 25px;

  display: flex;
  align-items: center;
  gap: 14px;

  padding: 17px 20px;

  background: rgba(33, 16, 58, 0.94);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 14px;

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  z-index: 2;
}

.it-map-dot {
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow:
    0 0 0 6px rgba(255, 255, 255, 0.12),
    0 0 18px rgba(255, 255, 255, 0.5);
}

.it-map-caption strong {
  display: block;
  color: #ffffff;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 700;
}

.it-map-caption span {
  display: block;
  margin-top: 3px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 13px;
  line-height: 1.4;
}

/* =========================================================
   FORM BOX
========================================================= */

.it-contact-form-box {
  position: relative;
  padding: 48px;
  background: #f8f6fb;
  border: 1px solid #e9e2f1;
  border-radius: 24px;

  box-shadow: 0 20px 60px rgba(33, 16, 58, 0.08);
}

/* =========================================================
   FORM HEADING
========================================================= */

.it-form-top {
  margin-bottom: 35px;
}

.it-form-top > span {
  display: inline-block;
  margin-bottom: 10px;

  color: #330879;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}

.it-form-top h3 {
  max-width: 500px;
  margin: 0;

  color: #21103a;
  font-size: 34px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -0.7px;
}

/* =========================================================
   FORM ROW
========================================================= */

.it-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 20px;
}

/* =========================================================
   FORM GROUP
========================================================= */

.it-form-group {
  position: relative;
}

.it-form-group label {
  display: block;
  margin: 0 0 9px;

  color: #21103a;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
}

/* =========================================================
   INPUT
========================================================= */

.it-form-group input,
.it-form-group textarea,
.it-form-group select {
  width: 100%;
  border: 1px solid #ddd5e8;
  outline: none;

  background: #ffffff;
  color: #21103a;

  font-family: inherit;
  font-size: 14px;
  font-weight: 500;

  border-radius: 10px;

  transition:
    border-color 0.25s ease,
    box-shadow 0.25s ease,
    background 0.25s ease;
}

/* INPUT */

.it-form-group input {
  height: 56px;
  padding: 0 17px;
}

/* TEXTAREA */

.it-form-group textarea {
  min-height: 145px;
  padding: 16px 17px;
  resize: vertical;
  line-height: 1.6;
}

/* PLACEHOLDER */

.it-form-group input::placeholder,
.it-form-group textarea::placeholder {
  color: #9991a5;
  opacity: 1;
}

/* FOCUS */

.it-form-group input:focus,
.it-form-group textarea:focus,
.it-form-group select:focus {
  border-color: #330879;
  background: #ffffff;

  box-shadow: 0 0 0 3px rgba(51, 8, 121, 0.1);
}

/* =========================================================
   SELECT / DROPDOWN
========================================================= */

.it-select-wrap {
  position: relative;
  width: 100%;
}

/*
   Important:
   The select stays clickable.
   The arrow is only visual.
*/

.it-select-wrap select {
  height: 56px;
  padding: 0 48px 0 17px;

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  cursor: pointer;
}

/* Remove old browser arrow */

.it-select-wrap select::-ms-expand {
  display: none;
}

/* CUSTOM ARROW */

.it-select-arrow {
  position: absolute;
  top: 50%;
  right: 17px;

  width: 26px;
  height: 26px;

  display: flex;
  align-items: center;
  justify-content: center;

  transform: translateY(-50%);

  color: #330879;
  background: #f3eef8;

  border-radius: 6px;

  pointer-events: none;
  z-index: 2;
}

.it-select-arrow i {
  font-size: 11px;
}

/* SELECT PLACEHOLDER */

.it-form-group select:invalid {
  color: #9991a5;
}

/* SELECT OPTIONS */

.it-form-group select option {
  color: #21103a;
  background: #ffffff;
  font-size: 14px;
  padding: 10px;
}

/* =========================================================
   MESSAGE
========================================================= */

.it-message-group {
  margin-top: 2px;
  margin-bottom: 24px;
}

.it-message-group textarea {
  min-height: 155px;
}

/* =========================================================
   SUBMIT
========================================================= */

.it-form-submit {
  display: flex;
  align-items: center;
}

.it-contact-submit {
  min-width: 190px;
  height: 56px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;

  padding: 0 22px;

  border: 0;
  border-radius: 9px;

  background: #330879;
  color: #ffffff;

  font-family: inherit;
  font-size: 14px;
  font-weight: 700;

  cursor: pointer;

  box-shadow: 0 12px 25px rgba(51, 8, 121, 0.2);

  transition:
    background 0.25s ease,
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.it-contact-submit span {
  color: #ffffff;
}

.it-contact-submit i {
  color: #ffffff;
  font-size: 15px;

  transition: transform 0.25s ease;
}

.it-contact-submit:hover {
  background: #21103a;
  color: #ffffff;

  transform: translateY(-2px);

  box-shadow: 0 16px 30px rgba(33, 16, 58, 0.25);
}

.it-contact-submit:hover i {
  transform: translateX(4px);
}

/* =========================================================
   HOVER INPUT
========================================================= */

.it-form-group input:hover,
.it-form-group textarea:hover,
.it-form-group select:hover {
  border-color: #c9bdd9;
}

/* =========================================================
   MAP + FORM HOVER
========================================================= */

.it-contact-map,
.it-contact-form-box {
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.it-contact-map:hover {
  box-shadow: 0 25px 70px rgba(33, 16, 58, 0.16);
}

.it-contact-form-box:hover {
  box-shadow: 0 25px 70px rgba(33, 16, 58, 0.11);
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {
  .it-contact-section {
    padding: 90px 0 100px;
  }

  .it-contact-header h2 {
    font-size: 46px;
  }

  .it-contact-form-box {
    padding: 38px;
  }

  .it-contact-map {
    min-height: 620px;
  }
}

/* =========================================================
   TABLET / SMALL LAPTOP
========================================================= */

@media (max-width: 991px) {
  .it-contact-layout {
    grid-template-columns: 1fr;
  }

  .it-contact-map {
    min-height: 500px;
  }

  .it-contact-form-box {
    padding: 40px;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
  .it-contact-section {
    padding: 70px 0 80px;
  }

  .it-contact-header {
    margin-bottom: 35px;
    padding: 0 10px;
  }

  .it-contact-kicker {
    font-size: 11px;
    letter-spacing: 1.5px;
  }

  .it-contact-header h2 {
    font-size: 34px;
    line-height: 1.18;
    letter-spacing: -0.8px;
  }

  .it-contact-header p {
    margin-top: 15px;
    font-size: 15px;
  }

  .it-contact-layout {
    gap: 20px;
  }

  .it-contact-map {
    min-height: 400px;
    border-radius: 18px;
  }

  .it-map-caption {
    left: 15px;
    right: 15px;
    bottom: 15px;

    padding: 14px 15px;
  }

  .it-contact-form-box {
    padding: 28px 20px;
    border-radius: 18px;
  }

  .it-form-top {
    margin-bottom: 27px;
  }

  .it-form-top h3 {
    font-size: 27px;
  }

  .it-form-row {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 18px;
  }

  .it-form-group input,
  .it-form-group select {
    height: 53px;
  }

  .it-form-group textarea {
    min-height: 135px;
  }

  .it-contact-submit {
    width: 100%;
    height: 54px;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
  .it-contact-header h2 {
    font-size: 30px;
  }

  .it-contact-map {
    min-height: 350px;
  }

  .it-contact-form-box {
    padding: 24px 16px;
  }

  .it-form-top h3 {
    font-size: 25px;
  }

  .it-map-caption {
    gap: 11px;
  }

  .it-map-caption strong {
    font-size: 14px;
  }

  .it-map-caption span {
    font-size: 12px;
  }
}

/* =========================================================
   DISABLE HORIZONTAL OVERFLOW
========================================================= */

.it-contact-section,
.it-contact-layout {
  max-width: 100%;
}

.it-contact-section * {
  box-sizing: border-box;
}

/* =========================================================
   IMPORTANT DROPDOWN FIX
   Keeps the arrow from blocking the select.
========================================================= */

.it-select-wrap {
  pointer-events: auto;
}

.it-select-wrap select {
  position: relative;
  z-index: 1;
}

.it-select-arrow {
  pointer-events: none !important;
}

/* =========================================================
   OPTIONAL: REMOVE NICE-SELECT EFFECT IF MAIN.JS
   INITIALIZES SELECTS
========================================================= */

.it-contact-form .nice-select {
  width: 100%;
  height: 56px;

  display: flex;
  align-items: center;

  padding: 0 45px 0 17px;

  border: 1px solid #ddd5e8;
  border-radius: 10px;

  background: #ffffff;

  color: #21103a;

  font-size: 14px;
  font-weight: 500;

  line-height: 56px;

  box-shadow: none;
}

.it-contact-form .nice-select:hover {
  border-color: #c9bdd9;
}

.it-contact-form .nice-select:focus,
.it-contact-form .nice-select.open {
  border-color: #330879;
  box-shadow: 0 0 0 3px rgba(51, 8, 121, 0.1);
}

.it-contact-form .nice-select .list {
  width: 100%;
  max-height: 260px;
  overflow-y: auto;

  margin-top: 5px;
  padding: 7px;

  border: 1px solid #e3dced;
  border-radius: 10px;

  background: #ffffff;

  box-shadow: 0 15px 40px rgba(33, 16, 58, 0.15);
}

.it-contact-form .nice-select .option {
  min-height: 40px;
  padding: 0 12px;

  color: #21103a;

  line-height: 40px;
  border-radius: 7px;
}

.it-contact-form .nice-select .option:hover,
.it-contact-form .nice-select .option.focus,
.it-contact-form .nice-select .option.selected.focus {
  color: #ffffff;
  background: #330879;
}

.it-contact-form .nice-select:after {
  width: 8px;
  height: 8px;

  right: 18px;

  border-color: #330879;
  border-width: 0 2px 2px 0;
}

.location-indicator {
  width: 19px;
  height: 19px;
  background-color: var(--tj-color-common-white);
  border-radius: 50%;
  position: absolute;
  cursor: pointer;
  z-index: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .location-indicator {
    width: 12px;
    height: 12px;
  }
}
.location-indicator.loc-1 {
  top: 38%;
  inset-inline-start: 21%;
}
.location-indicator.loc-2 {
  top: 36%;
  inset-inline-start: 46%;
}
.location-indicator.loc-3 {
  top: 73%;
  inset-inline-start: 30%;
}
.location-indicator::after {
  content: "";
  background: rgba(255, 255, 255, 0.1);
  width: 100%;
  height: 100%;
  z-index: -2;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  border-radius: 50%;
  -webkit-animation: pulse4 1.6s linear infinite;
  animation: pulse4 1.6s linear infinite;
}
.location-indicator:hover .location-tooltip {
  opacity: 1;
  visibility: visible;
  margin-bottom: 42px;
}
.location-tooltip {
  width: 222px;
  background-color: var(--tj-color-theme-primary);
  font-size: 14px;
  padding: 15px;
  position: absolute;
  margin-bottom: 35px;
  inset-inline-start: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  cursor: default;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.location-tooltip::after {
  content: "";
  background: var(--tj-color-theme-primary);
  width: 14px;
  height: 14px;
  z-index: -1;
  position: absolute;
  inset-inline-start: 50%;
  bottom: -7px;
  -webkit-transform: translateX(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
}
.location-tooltip span {
  color: var(--tj-color-common-white);
  margin-bottom: 5px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.location-tooltip p {
  color: var(--tj-color-common-white);
  margin-bottom: 5px;
}
.location-tooltip a {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-medium);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.location-tooltip a:hover {
  color: var(--tj-color-theme-bg);
}
@media (max-width: 575px) {
  .location-tooltip {
    width: 205px;
  }
}

/* !END: Contact CSS */
/**----------------------------------------
START: Theme Slider CSS
----------------------------------------*/
.tj-slider-section {
  position: relative;
  z-index: 1;
  margin: 0 15px 0 15px;
  border-radius: 16px;
  overflow: hidden;
}
.tj-slider-section .banner-scroll {
  inset-inline-start: 60px;
  bottom: 60px;
}
.tj-slider-section .banner-scroll .scroll-down {
  color: var(--tj-color-common-white);
}
.tj-slider-section .banner-scroll .scroll-down span {
  border-color: var(--tj-color-common-white);
}
.tj-slider-section .banner-scroll .scroll-down span::before {
  background-color: var(--tj-color-common-white);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-slider-section .banner-scroll {
    inset-inline-start: 27px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-slider-section .banner-scroll {
    inset-inline-start: 12px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-slider-section {
    border-radius: 14px;
    margin: 0 12px 0;
  }
}

.tj-slider-item {
  min-height: 92.5vh;
  background-color: #0c1e21;
  position: relative;
  z-index: 1;
}
.tj-slider-item::after {
  position: absolute;
  content: "";
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(20%, rgb(12, 30, 33)),
    color-stop(60%, rgba(12, 30, 33, 0.4)),
    to(rgba(12, 30, 33, 0.1))
  );
  background: linear-gradient(
    90deg,
    rgb(12, 30, 33) 20%,
    rgba(12, 30, 33, 0.4) 60%,
    rgba(12, 30, 33, 0.1) 100%
  );
}
.tj-slider-item .slider-wrapper {
  padding: 195px 0 347px;
  position: relative;
  z-index: 3;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .tj-slider-item .slider-wrapper {
    -webkit-padding-start: 50px;
    padding-inline-start: 50px;
    padding-top: 170px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-slider-item .slider-wrapper {
    padding: 170px 0 280px 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-slider-item .slider-wrapper {
    padding: 170px 0 280px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-slider-item .slider-wrapper {
    padding: 150px 0 450px 0;
  }
}
.tj-slider-item .slider-content {
  max-width: 660px;
}
.tj-slider-item .slider-content .slider-title {
  color: var(--tj-color-common-white);
  font-size: 96px;
  line-height: 1.042;
  letter-spacing: -2.88px;
  margin-bottom: 10px;
}
.tj-slider-item .slider-content .slider-title span {
  color: var(--tj-color-text-body-2);
}
.tj-slider-item .slider-content .slider-title img {
  max-width: 188px;
  border-radius: 50px;
  border: 4px solid var(--tj-color-theme-primary);
  vertical-align: top;
  margin-top: 5px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-slider-item .slider-content .slider-title img {
    max-width: 165px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-slider-item .slider-content .slider-title img {
    max-width: 140px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-slider-item .slider-content .slider-title img {
    max-width: 105px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-slider-item .slider-content .slider-title {
    font-size: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-slider-item .slider-content .slider-title {
    font-size: 70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-slider-item .slider-content .slider-title {
    font-size: 50px;
  }
}
.tj-slider-item .slider-content .slider-desc {
  max-width: 440px;
  font-size: 18px;
  line-height: 1.444;
  color: var(--tj-color-text-body-2);
}
.tj-slider-item .slider-content .slider-btn {
  margin-top: 25px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-slider-item .slider-content {
    max-width: 600px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-slider-item .slider-content {
    max-width: 550px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .tj-slider-item {
    min-height: 95vh;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-slider-item {
    min-height: auto;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-slider-item {
    min-height: 100vh;
  }
}

.swiper-slide .slider-content .slider-title,
.swiper-slide .slider-content .slider-desc,
.swiper-slide .slider-content .slider-btn {
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition-duration: 0.8s;
  transition-duration: 0.8s;
}
.swiper-slide.swiper-slide-active .slider-content .slider-title,
.swiper-slide.swiper-slide-active .slider-content .slider-desc,
.swiper-slide.swiper-slide-active .slider-content .slider-btn {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.swiper-slide.swiper-slide-active .slider-content .slider-title {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
.swiper-slide.swiper-slide-active .slider-content .slider-desc {
  -webkit-transition-delay: 1.25s;
  transition-delay: 1.25s;
}
.swiper-slide.swiper-slide-active .slider-content .slider-btn {
  -webkit-transition-delay: 1.5s;
  transition-delay: 1.5s;
}

.slider-bg-image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: absolute;
}



.circle-text-wrap {
  position: absolute;
  width: 200px;
  height: 200px;
  bottom: 60px;
  inset-inline-end: 285px;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 50%;
  z-index: 5;
  overflow: hidden;
}
.circle-text-wrap .circle-icon,
.circle-text-wrap .circle-text {
  position: absolute;
  inset-inline-start: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 6;
}
.circle-text-wrap .circle-text {
  width: 164px;
  height: 160px;
  background-size: 100%;
  background-repeat: no-repeat;
  -webkit-animation: textrotate 20s infinite linear;
  animation: textrotate 20s infinite linear;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .circle-text-wrap .circle-text {
    width: 134px;
    height: 130px;
  }
}
.circle-text-wrap .circle-icon {
  color: var(--tj-color-common-white);
  font-size: 73px;
  width: 200px;
  height: 200px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.circle-text-wrap .circle-icon i {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.circle-text-wrap .circle-icon:hover i {
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .circle-text-wrap .circle-icon {
    font-size: 60;
    width: 150px;
    height: 150px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .circle-text-wrap {
    inset-inline-end: 6%;
    bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .circle-text-wrap {
    bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .circle-text-wrap {
    width: 160px;
    height: 160px;
    inset-inline-end: 6%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .circle-text-wrap {
    inset-inline-end: 10%;
    bottom: 40px;
  }
}
@media (max-width: 575px) {
  .circle-text-wrap {
    inset-inline-end: 15px;
    bottom: 40px;
  }
}

/* !END: Slider CSS */
/**----------------------------------------
START: Team CSS
----------------------------------------*/
.tj-team-section {
  padding-top: 120px;
  padding-bottom: 90px;
  overflow: hidden;
}
.tj-team-section .sec-heading {
  max-width: 550px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-team-section {
    padding-top: 100px;
    padding-bottom: 70px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-team-section {
    padding-top: 70px;
    padding-bottom: 40px;
  }
}
.tj-team-section-2 .sub-title {
  color: var(--tj-color-theme-primary);
  border: 0;
  padding: 0;
}
.tj-team-section-3 {
  background-color: var(--tj-color-theme-bg);
  padding-top: 120px;
  padding-bottom: 90px;
  overflow: hidden;
  position: relative;
  z-index: 1;
  border-radius: 12px;
}
.tj-team-section-3 .sec-heading {
  max-width: 500px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-team-section-3 {
    padding-top: 100px;
    padding-bottom: 70px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-team-section-3 {
    padding-top: 70px;
    padding-bottom: 40px;
  }
}

.team-item {
  position: relative;
  margin-bottom: 30px;
}
.team-item .team-img {
  position: relative;
  z-index: 0;
}
.team-item .team-img .team-img-inner {
  background-color: var(--tj-color-grey-2);
  border-radius: 10px;
  overflow: hidden;
}
.team-item .team-img img {
  width: 100%;
  border-radius: 10px;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition:
    transform 500ms,
    -webkit-transform 500ms;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  -webkit-transform: perspective(0) rotateX(0) rotateY(0) scaleX(1) scaleY(1);
  transform: perspective(0) rotateX(0) rotateY(0) scaleX(1) scaleY(1);
}
.team-item .team-img::after,
.team-item .team-img::before {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0;
  border-radius: 10px;
  z-index: -1;
}
.team-item .team-img::before {
  z-index: 1;
}
.team-item .team-img::after {
  background-color: var(--tj-color-theme-primary);
  opacity: 1;
  z-index: -1;
}
.team-item .social-links {
  position: absolute;
  top: 50%;
  inset-inline-start: 50%;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2;
}
.team-item .social-links ul {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.team-item .social-links ul li a {
  width: 30px;
  height: 30px;
  background-color: var(--tj-color-theme-bg);
  opacity: 0.4;
}
.team-item .social-links ul li a i {
  color: var(--tj-color-theme-dark);
}
.team-item .social-links ul li a:hover {
  opacity: 1;
  background-color: var(--tj-color-theme-primary);
}
.team-item .social-links ul li a:hover i {
  color: var(--tj-color-common-white);
}
.team-item .team-content {
  position: relative;
  margin-top: 18px;
}
.team-item .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
  width: calc(100% - 35px);
}
.team-item .title a {
  display: inline-block;
}
.team-item .title a:hover {
  color: var(--tj-color-theme-primary);
}
.team-item .designation {
  font-size: 14px;
  color: var(--tj-color-text-body-3);
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.team-item .mail-at {
  width: 31px;
  height: 31px;
  border-radius: 50%;
  background-color: var(--tj-color-common-white);
  color: var(--tj-color-heading-primary);
  font-size: 22px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: 6px;
  inset-inline-end: 0;
}
.team-item .mail-at:hover {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.team-item:hover .team-img img {
  -webkit-transform: perspective(400px) rotateX(0.09deg) rotateY(0) scaleX(1.1)
    scaleY(1.1);
  transform: perspective(400px) rotateX(0.09deg) rotateY(0) scaleX(1.1)
    scaleY(1.1);
}
.team-item:hover .team-img::before {
  opacity: 0.75;
}
.team-item:hover .team-img::after {
  -webkit-transform: rotate(3deg);
  -ms-transform: rotate(3deg);
  transform: rotate(3deg);
}
.team-item:hover .social-links {
  opacity: 1;
  visibility: visible;
}

.team-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-wrapper {
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.team-img-wrap {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: block;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-img-wrap {
    display: none;
  }
}
.team-img-wrap .team-img {
  height: 100%;
  background-color: var(--tj-color-grey-2);
  border-radius: 12px;
  overflow: hidden;
}
.team-img-wrap .team-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 12px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-img-wrap {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
}

.team-item-wrap {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.team-item-wrap .team-item {
  overflow: hidden;
  margin-bottom: 20px;
  padding: 0;
}
.team-item-wrap .team-item:last-child {
  margin-bottom: 0;
  padding: 0;
}
.team-item-wrap .team-item-inner {
  background-color: var(--tj-color-common-white);
  position: relative;
  text-align: start;
  width: 100%;
  border-radius: 12px;
  padding: 35px 30px 30px;
  z-index: 1;
  overflow: hidden;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-item-wrap .team-item-inner {
    padding: 20px;
  }
}
.team-item-wrap .team-item .team-link {
  color: var(--tj-color-theme-primary);
  font-size: 75px;
  line-height: 1;
  position: absolute;
  top: 20px;
  inset-inline-end: 15px;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.team-item-wrap .team-item .team-link:hover {
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .team-item-wrap .team-item .team-link {
    font-size: 65px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-item-wrap .team-item .team-link {
    font-size: 50px;
    top: 12px;
  }
}
.team-item-wrap .team-item .team-content {
  margin-top: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.team-item-wrap .team-item .title {
  width: calc(100% - 50px);
  font-weight: var(--tj-fw-medium);
  line-height: 1;
  -webkit-transition: none;
  transition: none;
  margin-bottom: 11px;
}
.team-item-wrap .team-item .designation {
  font-size: 16px;
}
.team-item-wrap .team-item .social-links {
  top: inherit;
  inset-inline-start: inherit;
  bottom: 30px;
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0);
}
.team-item-wrap .team-item .social-links ul {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.team-item-wrap .team-item .social-links ul li a {
  width: 24px;
  height: 24px;
  font-size: 14px;
  background-color: var(--tj-color-theme-dark);
}
.team-item-wrap .team-item .social-links ul li a i {
  color: var(--tj-color-common-white);
}
.team-item-wrap .team-item .social-links ul li a:hover {
  background-color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-item-wrap .team-item .social-links {
    bottom: 20px;
  }
}
.team-item-wrap .team-item .desc {
  opacity: 0;
  visibility: hidden;
}
.team-item-wrap .team-item .team-img-wrap {
  display: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.team-item-wrap .team-item .team-img-wrap .team-img::after,
.team-item-wrap .team-item .team-img-wrap .team-img::before {
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-item-wrap .team-item .team-img-wrap {
    display: block;
    width: 100%;
    height: 0;
  }
  .team-item-wrap .team-item .team-img-wrap img {
    -o-object-fit: cover;
    object-fit: cover;
  }
}
.team-item-wrap .team-item.active .team-item-inner {
  margin-bottom: 0px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-item-wrap .team-item.active .team-item-inner {
    margin-bottom: 20px;
  }
}
.team-item-wrap .team-item.active .team-link {
  opacity: 1;
  visibility: visible;
}
.team-item-wrap .team-item.active .team-content {
  margin-bottom: 110px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .team-item-wrap .team-item.active .team-content {
    margin-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-item-wrap .team-item.active .team-content {
    margin-bottom: 50px;
  }
}
.team-item-wrap .team-item.active .social-links {
  opacity: 1;
  visibility: visible;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
.team-item-wrap .team-item.active .team-img-wrap {
  height: 755px;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .team-item-wrap .team-item.active .team-img-wrap {
    height: 516px;
  }
}
@media (max-width: 575px) {
  .team-item-wrap .team-item.active .team-img-wrap {
    height: 337px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-item-wrap {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

/* !END: Team CSS */
/**----------------------------------------
START: Team Details CSS
----------------------------------------*/
.team-details {
  padding: 120px 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .team-details {
    padding: 100px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .team-details {
    padding: 80px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details {
    padding: 60px 0;
  }
}
.team-details__img {
  background-color: var(--tj-color-grey-2);
  border-radius: 12px;
  overflow: hidden;
}
.team-details__img img {
  border-radius: 12px;
  width: 100%;
}
.team-details__content {
  -webkit-padding-start: 30px;
  padding-inline-start: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__content {
    margin-top: 30px;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__content {
    margin-top: 20px;
  }
}
.team-details .team-details__subtitle {
  margin-bottom: 16px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details .team-details__subtitle {
    margin-bottom: 12px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__name {
    font-size: 36px;
    margin-bottom: 8px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__name {
    font-size: 30px;
    margin-bottom: 8px;
  }
}
.team-details__desig {
  margin-bottom: 20px;
  color: var(--tj-color-text-body-3);
  display: inline-block;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__desig {
    margin-bottom: 8px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__desig {
    margin-bottom: 8px;
  }
}
.team-details .social-links ul li a i {
  color: var(--tj-color-common-white);
}
.team-details__contact-info ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px dashed var(--tj-color-border-1);
  margin: 30px 0;
  border-radius: 12px;
  list-style: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__contact-info ul {
    margin: 20px 0;
  }
}
.team-details__contact-info ul li {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 50%;
  flex: 1 1 50%;
  padding: 25px 28px;
  -webkit-border-end: 1px dashed var(--tj-color-border-1);
  border-inline-end: 1px dashed var(--tj-color-border-1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.team-details__contact-info ul li:last-child {
  -webkit-border-end: 0;
  border-inline-end: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .team-details__contact-info ul li {
    padding: 16px 18px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__contact-info ul li {
    padding: 12px 14px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.team-details__contact-info ul span {
  color: var(--tj-color-text-body-3);
  display: inline-block;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__contact-info ul span {
    font-size: 14px;
  }
}
.team-details__contact-info ul a {
  font-size: 20px;
  color: var(--tj-color-heading-primary);
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
  position: relative;
  display: inline-block;
}
.team-details__contact-info ul a::after {
  content: "";
  width: 0;
  height: 1px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: absolute;
  bottom: 2px;
  inset-inline-start: 0;
  background-color: var(--tj-color-heading-primary);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__contact-info ul a {
    font-size: 16px;
  }
}
.team-details__contact-info ul a:hover::after {
  width: 100%;
}
.team-details__experience {
  margin-top: 50px;
  margin-bottom: 50px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .team-details__experience {
    margin-top: 30px;
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__experience {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
.team-details__experience__list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px dashed var(--tj-color-border-1);
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 25px 0;
  border-radius: 12px;
  list-style: none;
  border-radius: 10px;
}
.team-details__experience__list ul li {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 50%;
  flex: 1 1 50%;
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  border: 1px dashed var(--tj-color-border-1);
  border-top: 0;
  -webkit-border-start: 0;
  border-inline-start: 0;
}
.team-details__experience__list ul li p {
  margin-bottom: 0;
}
.team-details__experience__list ul li i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 22px;
  width: 100%;
  height: 22px;
  font-size: 10px;
  color: var(--tj-color-common-white);
  background: var(--tj-color-theme-primary);
  border-radius: 50%;
  margin-top: 4px;
}
.team-details__experience__list ul li:last-child {
  -webkit-border-end: 0;
  border-inline-end: 0;
  border-bottom: 0;
}
.team-details__experience__list ul li:nth-last-child(2) {
  border-bottom: 0;
}
.team-details__experience__list ul li:nth-child(2n) {
  -webkit-border-end: 0;
  border-inline-end: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .team-details__experience__list ul li {
    padding: 16px;
  }
}
@media (max-width: 575px) {
  .team-details__experience__list ul li {
    -webkit-border-end: 0;
    border-inline-end: 0;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
  }
  .team-details__experience__list ul li:nth-last-child(2) {
    border-bottom: 1px dashed var(--tj-color-border-1);
  }
}

/* !END: Team Details CSS */
/**----------------------------------------
START: Progress bar CSS
----------------------------------------*/
.tj-progress-list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px;
  margin-top: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-progress-list {
    gap: 20px;
  }
}
.tj-progress {
  width: 100%;
  padding: 0;
  margin: 0;
  height: 4px;
  background: var(--tj-color-theme-bg);
  position: relative;
  z-index: 0;
}
.tj-progress-title {
  font-size: 16px;
  color: var(--tj-color-text-body);
  font-weight: var(--tj-fw-sbold);
  letter-spacing: 0;
  margin-bottom: 3px;
}
.tj-progress-bar {
  width: 0;
  height: 100%;
  background: var(--tj-color-theme-primary);
  position: relative;
  z-index: 1;
}
.tj-progress-percent {
  font-size: 16px;
  line-height: 1;
  font-weight: var(--tj-fw-sbold);
  height: auto;
  position: absolute;
  inset-inline-end: 0;
  bottom: 11px;
  z-index: 2;
}

/* !END: Progress bar CSS */
/**----------------------------------------
START: Breadcrumb CSS
----------------------------------------*/
.tj-page-header {
  padding-top: 133px;
  padding-bottom: 150px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #21103a;
  background-blend-mode: luminosity;
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 2;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-page-header {
    padding-top: 90px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-page-header {
    padding-top: 60px;
    padding-bottom: 70px;
  }
}
.tj-page-title {
  color: var(--tj-color-common-white);
  line-height: 1;
  margin-bottom: 0;
}
.tj-page-link {
  margin-top: 32px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 8px;
  position: relative;
  border-radius: 50px;
  background: white;
  backdrop-filter: blur(20px);
  padding: 5px 12px;
  z-index: 2;
}
.tj-page-link span {
  color: #330879;
  font-size: 18px;
  font-weight: var(--tj-fw-medium);
  position: relative;
  display: inline-block;
  line-height: 1;
}
.tj-page-link span i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  font-size: 16px;
  color: var(--tj-color-theme-primary);
}
.tj-page-link span:not(:first-child) i {
  font-size: 18px;
  font-weight: var(--tj-fw-bold);
  color: var(--tj-color-theme-dark-4);
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 7px;
  margin-top: 2px;
}
.tj-page-link span a {
  color: #330879;
}
.tj-page-link span a:hover {
  color: #21103a;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-page-link {
    margin-top: 25px;
  }
}

.page-header-overlay {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.8;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

/* !END: Breadcrumb CSS */
/**----------------------------------------
START: Pricing CSS
----------------------------------------*/
.tj-pricing-section {
  background-color: var(--tj-color-theme-bg);
  position: relative;
  z-index: 1;
}
.tj-pricing-section .sec-heading {
  max-width: 550px;
}

.pricing-box {
  padding: 46px 30px 40px;
  background-color: var(--tj-color-common-white);
  border-radius: 12px;
}
.pricing-box.active {
  background-color: var(--tj-color-theme-primary);
}
.pricing-box.active .package-name {
  color: var(--tj-color-common-white);
}
.pricing-box.active .package-desc p {
  color: var(--tj-color-common-white);
}
.pricing-box.active .package-price {
  color: var(--tj-color-common-white);
}
.pricing-box.active .package-currency {
  color: var(--tj-color-common-white);
}
.pricing-box.active .package-period {
  color: var(--tj-color-common-white);
}
.pricing-box.active .pricing-btn a {
  background-color: var(--tj-color-common-white);
  border-color: var(--tj-color-common-white);
}
.pricing-box.active .pricing-btn a .btn-text {
  color: var(--tj-color-heading-primary);
}
.pricing-box.active .list-items ul li {
  color: var(--tj-color-common-white);
}
.pricing-box.active .list-items ul li i {
  color: var(--tj-color-common-white);
}

.package-name {
  font-weight: var(--tj-fw-sbold);
  line-height: 1;
  margin-bottom: 11px;
}
.package-desc p {
  margin-bottom: 0;
}
.package-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 64px;
  color: var(--tj-color-heading-primary);
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-sbold);
  line-height: 0.8;
  margin: 30px 0 40px;
}
.package-currency {
  font-size: 24px;
}
.package-period {
  font-size: 16px;
  font-weight: var(--tj-fw-regular);
  color: var(--tj-color-text-body);
  margin-top: auto;
}

.pricing-btn {
  overflow: hidden;
  margin-bottom: 37px;
}
.pricing-btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  border: 1px solid var(--tj-color-theme-primary);
  padding: 12px;
  border-radius: 50px;
}
.pricing-btn a .btn-text {
  font-weight: var(--tj-fw-sbold);
}

.list-items ul li {
  gap: 12px;
  margin-bottom: 16px;
}

/* !END: Pricing CSS */
/**----------------------------------------
START: Blog Details CSS
----------------------------------------*/
.post-details-wrapper .blog-images {
  margin-bottom: 30px;
  border-radius: 12px;
  overflow: hidden;
}
.post-details-wrapper .title {
  line-height: 1.1;
  margin-bottom: 22px;
}
.post-details-wrapper p {
  margin-bottom: 30px;
}
.post-details-wrapper p:last-child {
  margin-bottom: 0;
}
.post-details-wrapper .images-wrap {
  margin-bottom: 10px;
}
.post-details-wrapper .image-box {
  margin-bottom: 25px;
  border-radius: 12px;
  overflow: hidden;
}
.post-details-wrapper .image-box img {
  width: 100%;
}
.post-details-wrapper .blog-text h3 {
  margin-bottom: 25px;
}
.post-details-wrapper .blog-text ul {
  margin-bottom: 50px;
  list-style: none;
  -webkit-columns: 2;
  -moz-columns: 2;
  columns: 2;
}
.post-details-wrapper .blog-text ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  color: var(--tj-color-heading-primary);
  font-weight: var(--tj-fw-medium);
  margin-bottom: 16px;
}
.post-details-wrapper .blog-text ul li:last-child {
  margin-bottom: 0;
}
.post-details-wrapper .blog-text ul li span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  font-size: 8px;
  line-height: 1;
  margin-top: 3px;
  color: var(--tj-color-common-white);
  background: var(--tj-color-theme-primary);
  border-radius: 50%;
}
@media (max-width: 575px) {
  .post-details-wrapper .blog-text ul {
    margin-bottom: 30px;
    -webkit-columns: 1;
    -moz-columns: 1;
    columns: 1;
  }
}
.post-details-wrapper .blog-text .blog-video {
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
  margin-top: 60px;
  margin-bottom: 50px;
}
.post-details-wrapper .blog-text .blog-video .video-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 90px;
  height: 90px;
  line-height: 1;
  color: var(--tj-color-heading-primary);
  background: var(--tj-color-common-white);
  position: absolute;
  top: 50%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 50%;
}
.post-details-wrapper .blog-text .blog-video .video-btn span {
  font-size: 20px;
}
.post-details-wrapper .blog-text .blog-video .video-btn::before {
  position: absolute;
  content: "";
  inset-inline-start: 50%;
  top: 50%;
  width: 90px;
  height: 90px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: rgba(255, 255, 255, 0.2);
  -webkit-animation: pulse2 2s linear infinite;
  animation: pulse2 2s linear infinite;
  z-index: -1;
  border-radius: 50%;
}
@media (max-width: 575px) {
  .post-details-wrapper .blog-text .blog-video .video-btn::before {
    width: 70px;
    height: 70px;
  }
}
@media (max-width: 575px) {
  .post-details-wrapper .blog-text .blog-video .video-btn {
    width: 70px;
    height: 70px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .post-details-wrapper .blog-text .blog-video {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}

.blog-category-two {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px dashed var(--tj-color-border-1);
  border-radius: 10px;
  margin-bottom: 25px;
}
.blog-category-two .category-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-border-end: 1px dashed var(--tj-color-border-1);
  border-inline-end: 1px dashed var(--tj-color-border-1);
  padding: 25px 30px;
  gap: 10px;
  width: 33.33%;
}
.blog-category-two .category-item:last-child {
  -webkit-border-end: none;
  border-inline-end: none;
}
.blog-category-two .category-item .cate-images {
  width: 52px;
  height: 52px;
}
.blog-category-two .category-item .cate-images img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 50%;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .blog-category-two .category-item .cate-images {
    width: 45px;
    height: 45px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .blog-category-two .category-item .cate-images {
    width: 35px;
    height: 35px;
  }
}
.blog-category-two .category-item .cate-text .degination {
  display: block;
  color: var(--tj-color-text-body-3);
  font-size: 14px;
  line-height: 1;
  margin-bottom: 6px;
}
.blog-category-two .category-item .cate-text .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .blog-category-two .category-item .cate-text .title {
    font-size: 16px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .blog-category-two .category-item .cate-text .title {
    font-size: 14px;
  }
}
.blog-category-two .category-item .cate-icons {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 24px;
  width: 52px;
  height: 52px;
  line-height: 1;
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  border-radius: 50%;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .blog-category-two .category-item .cate-icons {
    width: 45px;
    height: 45px;
    font-size: 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .blog-category-two .category-item .cate-icons {
    width: 35px;
    height: 35px;
    font-size: 18px;
  }
}
.blog-category-two .category-item .text {
  font-weight: var(--tj-fw-sbold);
  line-height: 1;
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .blog-category-two .category-item .text {
    font-size: 16px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .blog-category-two .category-item .text {
    font-size: 14px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .blog-category-two .category-item {
    padding: 25px 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .blog-category-two .category-item {
    padding: 20px 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .blog-category-two .category-item {
    width: 100%;
    padding: 0;
    border: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .blog-category-two {
    padding: 20px;
    gap: 20px;
  }
}

blockquote {
  position: relative;
  padding: 40px 30px 30px;
  background: var(--tj-color-theme-bg);
  border: 2px solid var(--tj-color-theme-primary);
  border-radius: 12px;
  margin-top: 55px;
  margin-bottom: 50px;
  z-index: 2;
}
blockquote::before {
  content: "\e92e";
  font-size: 40px;
  color: var(--tj-color-theme-primary);
  font-family: "bexon-icons";
  display: inline-block;
  margin-bottom: 20px;
  line-height: 1;
}
blockquote p {
  color: var(--tj-color-heading-primary);
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-sbold);
  font-size: 24px;
  margin-bottom: 20px !important;
  letter-spacing: -0.6px;
  line-height: 1.417;
  border-radius: 12px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  blockquote p {
    font-size: 20px;
    margin-bottom: 15px !important;
  }
}
blockquote cite {
  color: var(--tj-color-heading-primary);
  display: block;
  text-align: end;
  font-style: normal;
  position: relative;
  z-index: 1;
}
blockquote cite::before {
  content: "";
  display: inline-block;
  background: var(--tj-color-theme-primary);
  height: 1px;
  width: 50px;
  top: -4px;
  -webkit-margin-end: 10px;
  margin-inline-end: 10px;
  position: relative;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  blockquote {
    padding: 25px 15px;
    margin-bottom: 40px;
  }
}

.tj-tags-post {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  row-gap: 20px;
  -webkit-column-gap: 30px;
  -moz-column-gap: 30px;
  column-gap: 30px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-top: 1px dashed var(--tj-color-border-1);
  border-bottom: 1px dashed var(--tj-color-border-1);
  padding: 22px 0;
  margin-top: 30px;
  margin-bottom: 30px;
}
.tj-tags-post .tagcloud {
  width: calc(100% - 200px);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-tags-post .tagcloud {
    width: 100%;
  }
}
.tj-tags-post .post-share ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 15px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  row-gap: 10px;
}
.tj-tags-post .post-share ul li {
  font-size: 16px;
  color: var(--tj-color-heading-primary);
  margin-bottom: 0;
}
.tj-tags-post .post-share ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 17px;
  line-height: 1;
  color: var(--tj-color-heading-primary);
}
.tj-tags-post .post-share ul li a i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.tj-tags-post .post-share ul li a:hover i {
  color: var(--tj-color-theme-primary);
}
.tj-tags-post.no_socials {
  width: 100%;
}

.tj-post__navigation {
  background-color: var(--tj-color-common-white);
  padding: 20px 25px;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 25px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 50px;
}
.tj-post__navigation .tj-nav-post__nav a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 8px;
  color: var(--tj-color-heading-primary);
  font-weight: var(--tj-fw-sbold);
}
.tj-post__navigation .tj-nav-post__nav a span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  background-color: var(--tj-color-common-white);
  border-radius: 50%;
  border: 1px solid var(--tj-color-border-1);
  font-size: 24px;
  line-height: 1;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.tj-post__navigation .tj-nav-post__nav a span i {
  color: var(--tj-color-theme-dark);
}
@media (max-width: 575px) {
  .tj-post__navigation .tj-nav-post__nav a span {
    width: 48px;
    height: 48px;
  }
}
.tj-post__navigation .tj-nav-post__nav a:hover span {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}
.tj-post__navigation .tj-nav-post__nav a:hover span i {
  color: var(--tj-color-common-white);
}
.tj-post__navigation .tj-nav-post__grid {
  font-size: 30px;
  line-height: 1;
  color: var(--tj-color-common-black);
}
.tj-post__navigation .tj-nav-post__grid a {
  color: currentColor;
}
.tj-post__navigation .tj-nav-post__grid a:hover {
  color: var(--tj-color-theme-primary);
}
@media (max-width: 575px) {
  .tj-post__navigation {
    padding: 20px;
    gap: 20px;
  }
}

.tj-comments-wrap .comments-title .title {
  margin-bottom: 22px;
}
@media (max-width: 575px) {
  .tj-comments-wrap .comments-title .title {
    margin-bottom: 15px;
  }
}

.tj-latest-comments ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.tj-latest-comments ul .tj-comment {
  margin-bottom: 20px;
}
.tj-latest-comments ul .tj-comment:last-child {
  margin-bottom: 0;
}
.tj-latest-comments ul .tj-comment .comment-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  padding: 30px;
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  position: relative;
}
.tj-latest-comments ul .tj-comment .comment-content .comment-avatar {
  max-width: 64px;
  height: 64px;
  width: 100%;
  border-radius: 50%;
  overflow: hidden;
}
.tj-latest-comments ul .tj-comment .comment-content .comment-avatar img {
  width: 100%;
}
.tj-latest-comments ul .tj-comment .comment-content .comments-header {
  margin-top: 10px;
}
.tj-latest-comments
  ul
  .tj-comment
  .comment-content
  .comments-header
  .avatar-name
  .title {
  font-size: 18px;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 6px;
}
.tj-latest-comments
  ul
  .tj-comment
  .comment-content
  .comments-header
  .avatar-name
  .title
  a:hover {
  color: var(--tj-color-theme-primary);
}
.tj-latest-comments
  ul
  .tj-comment
  .comment-content
  .comments-header
  .comment-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
}
.tj-latest-comments
  ul
  .tj-comment
  .comment-content
  .comments-header
  .comment-text
  .reply {
  position: absolute;
  top: 35px;
  inset-inline-end: 30px;
  font-size: 16px;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-theme-dark-3);
}
.tj-latest-comments
  ul
  .tj-comment
  .comment-content
  .comments-header
  .comment-text
  .reply:hover {
  color: var(--tj-color-theme-primary);
}
.tj-latest-comments
  ul
  .tj-comment
  .comment-content
  .comments-header
  .comment-text
  span {
  font-size: 14px;
  color: var(--tj-color-theme-dark-4);
  font-weight: var(--tj-fw-regular);
}
@media (max-width: 575px) {
  .tj-latest-comments ul .tj-comment .comment-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .tj-latest-comments ul .tj-comment .comment-content .comment-avatar {
    -webkit-margin-end: auto;
    margin-inline-end: auto;
  }
}
.tj-latest-comments ul .tj-comment .desc {
  margin-top: 14px;
}
.tj-latest-comments ul .tj-comment .desc p:last-child {
  margin-bottom: 0;
}
.tj-latest-comments ul .tj-comment > .children {
  -webkit-padding-start: 75px;
  padding-inline-start: 75px;
}
@media (max-width: 575px) {
  .tj-latest-comments ul .tj-comment > .children {
    -webkit-padding-start: 35px;
    padding-inline-start: 35px;
  }
}
.tj-latest-comments
  ul
  .tj-comment:last-child
  .comment-content
  .comments-header {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

.tj-comments__container {
  margin-top: 50px;
}

.comment-respond .comment-reply-title {
  margin-bottom: 25px;
}
.comment-respond .form-input {
  margin-bottom: 30px;
}
.comment-respond
  .form-input
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ),
.comment-respond .form-input textarea,
.comment-respond .form-input input[type="email"],
.comment-respond .form-input input[type="text"] {
  background: var(--tj-color-common-white);
  height: 60px;
  padding: 18px 20px;
  border: 1px solid var(--tj-color-common-white);
  border-radius: 10px;
}
.comment-respond
  .form-input
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::-webkit-input-placeholder,
.comment-respond .form-input textarea::-webkit-input-placeholder,
.comment-respond .form-input input[type="email"]::-webkit-input-placeholder,
.comment-respond .form-input input[type="text"]::-webkit-input-placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.comment-respond
  .form-input
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::-moz-placeholder,
.comment-respond .form-input textarea::-moz-placeholder,
.comment-respond .form-input input[type="email"]::-moz-placeholder,
.comment-respond .form-input input[type="text"]::-moz-placeholder {
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.comment-respond
  .form-input
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ):-ms-input-placeholder,
.comment-respond .form-input textarea:-ms-input-placeholder,
.comment-respond .form-input input[type="email"]:-ms-input-placeholder,
.comment-respond .form-input input[type="text"]:-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.comment-respond
  .form-input
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::-ms-input-placeholder,
.comment-respond .form-input textarea::-ms-input-placeholder,
.comment-respond .form-input input[type="email"]::-ms-input-placeholder,
.comment-respond .form-input input[type="text"]::-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.comment-respond
  .form-input
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  )::placeholder,
.comment-respond .form-input textarea::placeholder,
.comment-respond .form-input input[type="email"]::placeholder,
.comment-respond .form-input input[type="text"]::placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.comment-respond
  .form-input
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ):focus,
.comment-respond .form-input textarea:focus,
.comment-respond .form-input input[type="email"]:focus,
.comment-respond .form-input input[type="text"]:focus {
  border-color: var(--tj-color-theme-primary);
}
.comment-respond .form-input textarea {
  min-height: 180px;
  resize: none;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .comment-respond .form-input {
    margin-bottom: 20px;
  }
}

.tj-main-sidebar {
  -webkit-padding-start: 20px;
  padding-inline-start: 20px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-main-sidebar {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}

.tj-sidebar-widget {
  background-color: var(--tj-color-theme-bg);
  margin-bottom: 30px;
  padding: 30px;
  position: relative;
  z-index: 3;
  border-radius: 10px;
  overflow: hidden;
}
.tj-sidebar-widget:last-child {
  margin-bottom: 0;
}
.tj-sidebar-widget .widget-title {
  color: var(--tj-color-heading-primary);
  font-weight: var(--tj-fw-sbold);
  position: relative;
  margin-bottom: 25px;
  line-height: 1;
  z-index: 1;
}
.tj-sidebar-widget.widget-search .search-box form {
  position: relative;
  width: 100%;
  z-index: 1;
}
.tj-sidebar-widget.widget-search .search-box form input[type="search"] {
  font-size: 16px;
  background: var(--tj-color-common-white);
  width: 100%;
  height: 60px;
  border: 1px solid var(--tj-color-border-1);
  border-radius: 8px;
  padding: 18px 65px 18px 20px;
  line-height: 1;
}
.tj-sidebar-widget.widget-search
  .search-box
  form
  input[type="search"]::-webkit-input-placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.tj-sidebar-widget.widget-search
  .search-box
  form
  input[type="search"]::-moz-placeholder {
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.tj-sidebar-widget.widget-search
  .search-box
  form
  input[type="search"]:-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.tj-sidebar-widget.widget-search
  .search-box
  form
  input[type="search"]::-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.tj-sidebar-widget.widget-search
  .search-box
  form
  input[type="search"]::placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-text-body);
}
.tj-sidebar-widget.widget-search .search-box form :focus {
  outline: none;
  -webkit-box-shadow: 0 0 0;
  box-shadow: 0 0 0;
}
.tj-sidebar-widget.widget-search .search-box form button {
  font-size: 22px;
  color: var(--tj-color-heading-primary);
  width: 54px;
  height: 60px;
  position: absolute;
  top: 50%;
  inset-inline-end: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-border-start: 1px solid var(--tj-color-border-1);
  border-inline-start: 1px solid var(--tj-color-border-1);
  -webkit-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
}
.tj-sidebar-widget.widget-search .search-box form button i {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.tj-sidebar-widget.tj-recent-posts ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.tj-sidebar-widget.tj-recent-posts ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 15px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  margin-bottom: 15px;
}
.tj-sidebar-widget.tj-recent-posts ul li:last-child {
  margin-bottom: 0;
}
.tj-sidebar-widget.tj-recent-posts ul li:hover .post-thumb img {
  -webkit-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: scale(1.15);
}
.tj-sidebar-widget.tj-recent-posts .post-thumb {
  position: relative;
  width: 100px;
  height: 100px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  border-radius: 8px;
  overflow: hidden;
}
.tj-sidebar-widget.tj-recent-posts .post-thumb a {
  display: inline-block;
  width: 100%;
}
.tj-sidebar-widget.tj-recent-posts .post-thumb a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
.tj-sidebar-widget.tj-recent-posts .post-content .post-title {
  font-size: 18px;
  line-height: 1.444;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 10px;
}
.tj-sidebar-widget.tj-recent-posts .post-content .post-title a:hover {
  color: var(--tj-color-theme-primary);
}
.tj-sidebar-widget.tj-recent-posts .post-content .blog-meta {
  margin-bottom: 0;
}
.tj-sidebar-widget.tj-recent-posts .post-content .blog-meta ul li {
  font-size: 14px;
  color: var(--tj-color-text-body);
}
.tj-sidebar-widget.widget-categories ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.tj-sidebar-widget.widget-categories ul li {
  margin-bottom: 10px;
}
.tj-sidebar-widget.widget-categories ul li:last-child {
  margin-bottom: 0;
}
.tj-sidebar-widget.widget-categories ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-heading-primary);
  background: var(--tj-color-common-white);
  padding: 20px 15px 17px 25px;
  border-radius: 10px;
}
.tj-sidebar-widget.widget-categories ul li a span {
  color: var(--tj-color-heading-primary);
}
.tj-sidebar-widget.widget-categories ul li a .icon {
  font-size: 24px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.tj-sidebar-widget.widget-categories ul li a:hover {
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
}
.tj-sidebar-widget.widget-categories ul li a:hover span {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 575px) {
  .tj-sidebar-widget {
    padding: 25px 15px;
  }
}

.tagcloud {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 8px;
  -moz-column-gap: 8px;
  column-gap: 8px;
  row-gap: 12px;
}
.tagcloud a {
  background-color: var(--tj-color-common-white);
  font-size: 14px;
  line-height: 1;
  color: var(--tj-color-text-body);
  font-weight: var(--tj-fw-medium);
  padding: 5px 10px;
  border-radius: 4px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow: hidden;
}
.tagcloud a:hover {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}

.infos-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 8px;
  -moz-column-gap: 8px;
  column-gap: 8px;
  padding: 20px 0;
}
.infos-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.infos-item .project-icons {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  font-size: 20px;
  color: var(--tj-color-common-white);
  background: var(--tj-color-theme-primary);
  border-radius: 50%;
  position: relative;
  top: 2px;
}
.infos-item .project-text span {
  display: inline-block;
  font-size: 14px;
  line-height: 1;
  color: var(--tj-color-text-body);
  margin: 0;
}
.infos-item .project-text .title {
  line-height: 1.1;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .infos-item .project-text .title {
    font-size: 16px;
  }
}

.service-categories ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.service-categories ul li {
  margin-bottom: 10px;
}
.service-categories ul li:last-child {
  margin-bottom: 0;
}
.service-categories ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-heading-primary);
  background: var(--tj-color-common-white);
  padding: 20px 15px 17px 25px;
  border-radius: 10px;
}
.service-categories ul li a span {
  color: var(--tj-color-heading-primary);
}
.service-categories ul li a .icon {
  font-size: 24px;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.service-categories ul li a:hover,
.service-categories ul li a.active {
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
}
.service-categories ul li a:hover span,
.service-categories ul li a.active span {
  color: var(--tj-color-common-white);
}

.widget-feature-item {
  padding: 20px;
}
.widget-feature-item .feature-box {
  position: relative;
  background: var(--tj-color-theme-dark);
  border-radius: 10px;
  overflow: hidden;
}
.widget-feature-item .feature-box .feature-content {
  padding: 30px 28px 30px;
}
.widget-feature-item .feature-box .feature-content .title {
  font-size: 74px;
  color: var(--tj-color-common-white);
  margin-bottom: 15px;
  line-height: 1;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .widget-feature-item .feature-box .feature-content .title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .widget-feature-item .feature-box .feature-content .title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .widget-feature-item .feature-box .feature-content .title {
    font-size: 60px;
  }
}
.widget-feature-item .feature-box .feature-content > span {
  display: block;
  font-size: 20px;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-common-white);
  line-height: 1;
  margin-bottom: 26px;
}
@media (max-width: 575px) {
  .widget-feature-item .feature-box .feature-content > span {
    margin-bottom: 20px;
  }
}
.widget-feature-item .feature-box .feature-content .feature-contact {
  background-color: var(--tj-color-theme-primary);
  padding: 7px 12px;
  border-radius: 50px;
  line-height: 1;
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 0;
}
.widget-feature-item .feature-box .feature-content .feature-contact span {
  color: var(--tj-color-common-white);
  font-size: 18px;
  font-weight: var(--tj-fw-sbold);
  margin: 0;
  text-shadow: 0 30px 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
.widget-feature-item .feature-box .feature-content .feature-contact i {
  color: var(--tj-color-common-white);
  font-size: 20px;
  -webkit-margin-end: 6px;
  margin-inline-end: 6px;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
}
.widget-feature-item .feature-box .feature-content .feature-contact:hover span {
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 575px) {
  .widget-feature-item .feature-box .feature-content {
    padding: 30px 20px;
  }
}
@media (max-width: 575px) {
  .widget-feature-item .feature-box {
    max-width: 360px;
    margin: 0 auto;
  }
}
@media (max-width: 400px) {
  .widget-feature-item .feature-box {
    max-width: 320px;
    margin: 0 auto;
  }
}
.widget-feature-item .feature-images {
  width: 370px;
  height: 370px;
  border-radius: 50%;
  overflow: hidden;
  -webkit-margin-start: 60px;
  margin-inline-start: 60px;
  margin-bottom: -50px;
  border: 5px solid var(--tj-color-theme-primary);
}
.widget-feature-item .feature-images img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .widget-feature-item .feature-images {
    width: 320px;
    height: 320px;
    -webkit-margin-start: 45px;
    margin-inline-start: 45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .widget-feature-item .feature-images {
    width: 500px;
    height: 500px;
    -webkit-margin-start: 260px;
    margin-inline-start: 260px;
    margin-bottom: -70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .widget-feature-item .feature-images {
    -webkit-margin-start: 180px;
    margin-inline-start: 180px;
  }
}
@media (max-width: 400px) {
  .widget-feature-item .feature-images {
    width: 320px;
    height: 320px;
    -webkit-margin-start: 45px;
    margin-inline-start: 45px;
  }
}
@media (max-width: 575px) {
  .widget-feature-item {
    padding: 20px 15px;
  }
}

.details-content-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 15px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  row-gap: 15px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 50px;
}

.service-details-item {
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  padding: 30px 17px 25px 18px;
  max-width: 275px;
  width: 100%;
}
.service-details-item .number {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 33px;
  height: 33px;
  font-size: 16px;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-primary);
  border-radius: 50%;
  margin-bottom: 20px;
}
.service-details-item .title {
  line-height: 1.444;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 18px;
}
.service-details-item .desc {
  margin-bottom: 0;
}
.service-details-item .desc p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .service-details-item {
    max-width: 235px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .service-details-item {
    max-width: 220px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .service-details-item {
    max-width: 250px;
    padding: 30px 15px 15px 15px;
  }
}
@media (max-width: 575px) {
  .service-details-item {
    max-width: 100%;
  }
}

.blog-text .tj-faq {
  margin-bottom: 40px;
  padding-top: 10px;
}

.gallery {
  position: relative;
  display: block;
}
.gallery::before {
  content: "\e91c";
  font-family: "bexon-icons" !important;
  color: var(--tj-color-common-white);
  font-size: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: rgba(12, 30, 33, 0.4);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  inset-inline-start: 0;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.gallery:hover::before {
  opacity: 1;
  visibility: visible;
}

/* !END: Blog Details CSS */
/**----------------------------------------
START: Animate CSS
----------------------------------------*/
@-webkit-keyframes sticky {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  100% {
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}
@keyframes sticky {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  100% {
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  to {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}
@keyframes pulse {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  to {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}
.jumping {
  -webkit-animation: jumping 1.5s infinite;
  animation: jumping 1.5s infinite;
}

@-webkit-keyframes jumping {
  0% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  25% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  50% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  75% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  100% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
}
@keyframes jumping {
  0% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  25% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  50% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  75% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  100% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
}
@-webkit-keyframes linehover {
  0% {
    width: 100%;
  }
  50% {
    width: 0;
    inset-inline-end: 0;
  }
  100% {
    width: 100%;
    inset-inline-start: 0;
  }
}
@keyframes linehover {
  0% {
    width: 100%;
  }
  50% {
    width: 0;
    inset-inline-end: 0;
  }
  100% {
    width: 100%;
    inset-inline-start: 0;
  }
}
@-webkit-keyframes textrotate {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes textrotate {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@-webkit-keyframes rotates {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotates {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes gelatine {
  from,
  to {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  25% {
    -webkit-transform: scale(0.7, 1.1);
    transform: scale(0.7, 1.1);
  }
  50% {
    -webkit-transform: scale(1.1, 0.7);
    transform: scale(1.1, 0.7);
  }
  75% {
    -webkit-transform: scale(0.95, 1.05);
    transform: scale(0.95, 1.05);
  }
}
@keyframes gelatine {
  from,
  to {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  25% {
    -webkit-transform: scale(0.7, 1.1);
    transform: scale(0.7, 1.1);
  }
  50% {
    -webkit-transform: scale(1.1, 0.7);
    transform: scale(1.1, 0.7);
  }
  75% {
    -webkit-transform: scale(0.95, 1.05);
    transform: scale(0.95, 1.05);
  }
}
@-webkit-keyframes borderanimate {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0.8);
    transform: translate(-50%, -50%) scale(0.8);
  }
  60% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(1.5);
    transform: translate(-50%, -50%) scale(1.5);
    opacity: 0;
  }
}
@keyframes borderanimate {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0.8);
    transform: translate(-50%, -50%) scale(0.8);
  }
  60% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(1.5);
    transform: translate(-50%, -50%) scale(1.5);
    opacity: 0;
  }
}
@-webkit-keyframes bellshake {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  15% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  30% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  45% {
    -webkit-transform: rotate(4deg);
    transform: rotate(4deg);
  }
  60% {
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
  }
  75% {
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
  }
  85% {
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
  }
  92% {
    -webkit-transform: rotate(1deg);
    transform: rotate(1deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@keyframes bellshake {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  15% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  30% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  45% {
    -webkit-transform: rotate(4deg);
    transform: rotate(4deg);
  }
  60% {
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
  }
  75% {
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
  }
  85% {
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
  }
  92% {
    -webkit-transform: rotate(1deg);
    transform: rotate(1deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
.pulse2 {
  -webkit-animation: pulse2 2s linear infinite;
  animation: pulse2 2s linear infinite;
}

@-webkit-keyframes pulse2 {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 255, 255);
    box-shadow: 0 0 0 0px rgb(255, 255, 255);
  }
  100% {
    -webkit-box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
  }
}
@keyframes pulse2 {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 255, 255);
    box-shadow: 0 0 0 0px rgb(255, 255, 255);
  }
  100% {
    -webkit-box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
  }
}
.pulse3 {
  -webkit-animation: pulse3 2s linear infinite;
  animation: pulse3 2s linear infinite;
}

@-webkit-keyframes pulse3 {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgba(30, 138, 138, 0.4);
    box-shadow: 0 0 0 0px rgba(30, 138, 138, 0.4);
  }
  100% {
    -webkit-box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);
  }
}
@keyframes pulse3 {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgba(30, 138, 138, 0.4);
    box-shadow: 0 0 0 0px rgba(30, 138, 138, 0.4);
  }
  100% {
    -webkit-box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);
  }
}
.pulse4 {
  -webkit-animation: pulse4 2s linear infinite;
  animation: pulse4 2s linear infinite;
}

@-webkit-keyframes pulse4 {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgba(255, 255, 255, 0.05);
    box-shadow: 0 0 0 0px rgba(255, 255, 255, 0.5);
  }
  100% {
    -webkit-box-shadow: 0 0 0 12px rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 12px rgba(0, 0, 0, 0);
  }
}
@keyframes pulse4 {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgba(255, 255, 255, 0.05);
    box-shadow: 0 0 0 0px rgba(255, 255, 255, 0.5);
  }
  100% {
    -webkit-box-shadow: 0 0 0 12px rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 12px rgba(0, 0, 0, 0);
  }
}
@-webkit-keyframes shine {
  0% {
    -webkit-transform: skewX(-25deg) translateX(0);
    transform: skewX(-25deg) translateX(0);
  }
  100% {
    -webkit-transform: skewX(-25deg) translateX(250%);
    transform: skewX(-25deg) translateX(250%);
  }
}
@keyframes shine {
  0% {
    -webkit-transform: skewX(-25deg) translateX(0);
    transform: skewX(-25deg) translateX(0);
  }
  100% {
    -webkit-transform: skewX(-25deg) translateX(250%);
    transform: skewX(-25deg) translateX(250%);
  }
}
.zoomInOut {
  -webkit-animation: zoomEffect 3s linear infinite;
  animation: zoomEffect 3s linear infinite;
}

@-webkit-keyframes zoomEffect {
  0%,
  100% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@keyframes zoomEffect {
  0%,
  100% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@-webkit-keyframes marquee {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}
@keyframes marquee {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}
@-webkit-keyframes tj-bounce-ball {
  0%,
  20%,
  50%,
  80%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
@keyframes tj-bounce-ball {
  0%,
  20%,
  50%,
  80%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
/* !END: Animate CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h4-banner-section {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  padding: 0 80px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h4-banner-section {
    padding: 0 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-banner-section {
    padding: 0 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-section {
    padding: 0 15px;
  }
}
.h4-banner-section .bg-shape-1,
.h4-banner-section .bg-shape-2 {
  max-width: 480px;
}
.h4-banner-section .bg-shape-1 img,
.h4-banner-section .bg-shape-2 img {
  width: 100%;
}
.h4-banner-section .banner-img-area {
  position: relative;
}
.h4-banner-section .banner-img-area .banner-img {
  position: relative;
  overflow: hidden;
  border-radius: 0;
  border-start-start-radius: 12px;
  border-start-end-radius: 12px;
}
.h4-banner-section .banner-img-area .banner-img::before {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 49%;
  height: 100%;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgb(12, 30, 33)),
    color-stop(50%, rgba(12, 30, 33, 0.4)),
    to(rgba(12, 30, 33, 0))
  );
  background: linear-gradient(
    90deg,
    rgb(12, 30, 33) 0%,
    rgba(12, 30, 33, 0.4) 50%,
    rgba(12, 30, 33, 0) 100%
  );
  opacity: 0.5;
}
.h4-banner-section .banner-img-area .banner-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-start-start-radius: 12px;
  border-start-end-radius: 12px;
  border-end-end-radius: 0;
  border-end-start-radius: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-banner-section .banner-img-area .banner-img img {
    min-height: 500px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-section .banner-img-area .banner-img img {
    min-height: 300px;
  }
}
.h4-banner-section .banner-img-area .h4-rating-box {
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(5px);
  border-radius: 10px;
  position: absolute;
  max-width: 256px;
  width: 100%;
  top: 30px;
  inset-inline-start: 30px;
  padding: 30px;
}
.h4-banner-section .banner-img-area .h4-rating-box .title {
  color: var(--tj-color-common-white);
  font-size: 74px;
  line-height: 1.216;
  text-align: center;
  position: relative;
  margin-bottom: 20px;
}
.h4-banner-section .banner-img-area .h4-rating-box .title::before {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 42px;
  height: 100%;
  background-color: var(--tj-color-common-white);
  -webkit-mask-image: url(../images/shape/leafs.svg);
  mask-image: url(../images/shape/leafs.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.h4-banner-section .banner-img-area .h4-rating-box .title::after {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-end: 0;
  width: 42px;
  height: 100%;
  background-color: var(--tj-color-common-white);
  -webkit-mask-image: url(../images/shape/leafs.svg);
  mask-image: url(../images/shape/leafs.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  transform: scaleX(-1);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-section .banner-img-area .h4-rating-box .title {
    font-size: 50px;
  }
}
.h4-banner-section .banner-img-area .h4-rating-box .desc {
  color: var(--tj-color-common-white);
  font-size: 18px;
  font-weight: var(--tj-fw-sbold);
  letter-spacing: -0.03em;
  margin: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h4-banner-section .banner-img-area .h4-rating-box .desc {
    font-size: 16px;
  }
}
@media (max-width: 575px) {
  .h4-banner-section .banner-img-area .h4-rating-box .desc {
    font-size: 14px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-section .banner-img-area .h4-rating-box {
    max-width: 200px;
    padding: 26px;
    top: 15px;
    inset-inline-start: 15px;
  }
}
@media (max-width: 575px) {
  .h4-banner-section .banner-img-area .h4-rating-box {
    max-width: 158px;
    padding: 15px;
  }
}
.h4-banner-area {
  max-width: 1480px;
  width: 100%;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h4-banner-area {
    min-height: 700px;
  }
}
.h4-banner-content {
  padding-top: 120px;
  padding-bottom: 115px;
  position: relative;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-banner-content {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h4-banner-content {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-content {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.h4-banner-content::before {
  content: "";
  position: absolute;
  bottom: -20%;
  inset-inline-end: -8%;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: var(--tj-color-theme-primary);
  -webkit-filter: blur(80px);
  filter: blur(80px);
  opacity: 0.4;
  z-index: -1;
  backdrop-filter: blur(10px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-banner-content::before {
    width: 320px;
    height: 320px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-content::before {
    width: 250px;
    height: 250px;
    inset-inline-end: -2%;
    bottom: -15px;
    -webkit-filter: blur(60px);
    filter: blur(60px);
  }
}
.h4-banner-content .sub-title {
  color: var(--tj-color-common-white);
  font-size: 14px;
  line-height: 1;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: var(--tj-fw-bold);
  border: 1px dashed var(--tj-color-border-2);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  margin-bottom: 13px;
  border-radius: 4px;
}
.h4-banner-content .sub-title i {
  color: var(--tj-color-theme-primary);
  font-size: 22px;
}
.h4-banner-content .banner-title {
  max-width: 1180px;
  color: var(--tj-color-common-white);
  font-size: 96px;
  line-height: 1.042;
  margin-bottom: 22px;
}
.h4-banner-content .banner-title span {
  display: inline-block;
  color: var(--tj-color-theme-primary);
  font-weight: var(--tj-fw-medium);
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h4-banner-content .banner-title {
    font-size: 85px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h4-banner-content .banner-title {
    max-width: 1000px;
    font-size: 75px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h4-banner-content .banner-title {
    max-width: 800px;
    font-size: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-banner-content .banner-title {
    max-width: 675px;
    font-size: 55px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-content .banner-title {
    font-size: 45px;
  }
}
.h4-banner-content .banner-desc-area {
  max-width: 610px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h4-banner-content .banner-desc-area {
    max-width: 520px;
  }
}
@media (max-width: 575px) {
  .h4-banner-content .banner-desc-area {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px;
  }
}
.h4-banner-content .tj-primary-btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
.h4-banner-content .banner-desc {
  max-width: 428px;
  color: var(--tj-color-text-body-2);
  font-size: 18px;
  line-height: 1.444;
  -webkit-padding-start: 15px;
  padding-inline-start: 15px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-banner-content .banner-desc {
    font-size: 16px;
  }
}
@media (max-width: 575px) {
  .h4-banner-content .banner-desc {
    padding: 0;
  }
}

/* !END: Hero CSS */
/**----------------------------------------
START: Choose CSS
----------------------------------------*/
.tj-choose-section {
  overflow: hidden;
}
.tj-choose-section .sec-heading {
  max-width: 550px;
}
.tj-choose-section .countup-item.style-2 {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100%;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.tj-choose-section .countup-item.style-2::before {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.7;
  z-index: -1;
}
.tj-choose-section .countup-item.style-2 .count-icon {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.tj-choose-section .countup-item.style-2 .count-text {
  color: var(--tj-color-text-body-2);
}
.tj-choose-section .countup-item.style-2 .inline-content {
  color: var(--tj-color-common-white);
}
.tj-choose-section .countup-item.style-2 .inline-content .odometer {
  color: var(--tj-color-common-white);
}
.tj-choose-section
  .countup-item.style-2
  .inline-content
  .odometer
  .odometer-digit,
.tj-choose-section .countup-item.style-2 .inline-content .odometer span {
  color: var(--tj-color-common-white);
}

.h4-content-wrap {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.h4-content-wrap .sec-heading {
  margin-bottom: 25px;
}

/* !END: Choose CSS */
/**----------------------------------------
START: About CSS
----------------------------------------*/
/* =========================================
   ABOUT SECTION - DIGITAL MARKETING THEME
   ========================================= */

.about-content-area.style-3 {
  position: relative;
  background: #17082f;
  border-radius: 12px;
  padding: 80px 0;
  overflow: hidden;
  z-index: 1;
}

/* Main heading */
.about-content-area.style-3 .sec-heading .sec-title {
  color: #ffffff;
}

.about-content-area.style-3 .sec-heading .sec-title span {
  color: #8b5cf6;
}

/* Small subtitle */
.about-content-area.style-3 .sec-heading .subtitle-text {
  color: #c9b8e8;
}

/* Subtitle icon / box */
.about-content-area.style-3 .sub-title {
  color: #ffffff;
}

.about-content-area.style-3 .sub-title i {
  color: #8b5cf6;
}

/* Description text */
.about-content-area.style-3 p {
  color: #c8bdd8;
}

/* Buttons */
.about-content-area.style-3 .tj-primary-btn {
  background: #6d28d9;
  color: #ffffff;
  border: 1px solid #8b5cf6;
  transition: all 0.3s ease;
}

.about-content-area.style-3 .tj-primary-btn:hover {
  background: #8b5cf6;
  border-color: #a78bfa;
  box-shadow: 0 10px 30px rgba(139, 92, 246, 0.3);
}

/* Customer text */
.about-content-area.style-3 .customers-box.style-3 .customers-text {
  color: #ffffff;
}

.about-content-area.style-3 .customers-box.style-3 .customers-text span {
  color: #9b6cff;
}

/* Customer images */
.about-content-area.style-3 .customers-box.style-3 ul li img,
.about-content-area.style-3 .customers-box.style-3 ul li span {
  border: 2px solid #8b5cf6;
  border-radius: 50%;
}

/* Client area */
.about-content-area.style-3 .client-container-2 {
  background: transparent;
}

/* Decorative purple glow */
.about-content-area.style-3::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  top: -180px;
  right: -120px;
  background: rgba(112, 43, 220, 0.18);
  border-radius: 50%;
  filter: blur(100px);
  pointer-events: none;
  z-index: -1;
}

.about-content-area.style-3::after {
  content: "";
  position: absolute;
  width: 350px;
  height: 350px;
  bottom: -180px;
  left: -100px;
  background: rgba(139, 92, 246, 0.12);
  border-radius: 50%;
  filter: blur(90px);
  pointer-events: none;
  z-index: -1;
}

/* =========================================
   YOUR EXISTING ABOUT LAYOUT
   ========================================= */

.about-content-area.style-3 .sec-heading {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 25px;
}

.about-content-area.style-3 .sec-heading .subtitle-text {
  max-width: 200px;
}

.about-content-area.style-3 .sec-heading .sec-title {
  width: 67.2%;
}

.about-content-area.style-3 .sec-heading .sec-title img {
  height: 50px;
  border-radius: 4px;
  margin-top: -9px;
}

.about-content-area.style-3 .about-bottom-area {
  justify-content: space-between;
  align-items: flex-end;
  gap: 20px;
  margin-top: -62px;
}

.about-content-area.style-3 .about-bottom-area .about-btn-area-2 {
  width: 67.2%;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

/* =========================================
   CUSTOMER BOX
   ========================================= */

.customers-box.style-3 {
  max-width: 195px;
  background-color: transparent;
  padding: 0;
  border-radius: 0;
}

.customers-box.style-3 ul li span,
.customers-box.style-3 ul li img {
  width: 50px;
  height: 50px;
}

.customers-box.style-3 .customers-text {
  font-size: 18px;
  line-height: 1.444;
  font-weight: var(--tj-fw-sbold);
  margin-top: 15px;
}

/* =========================================
   MOBILE / TABLET
   ========================================= */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .about-content-area.style-3 {
    padding: 70px 0;
  }

  .about-content-area.style-3 .sec-heading .sec-title {
    width: 67.2%;
  }

  .about-content-area.style-3 .sec-heading .sec-title img {
    height: 40px;
    margin-top: -6px;
  }
}

@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .about-content-area.style-3 {
    padding: 60px 0;
    margin-left: 12px;
    margin-right: 12px;
  }

  .about-content-area.style-3 .sec-heading .sec-title {
    width: 100%;
    line-height: 1.3;
  }

  .about-content-area.style-3 .sec-heading .sec-title img {
    height: 40px;
    margin-top: -6px;
  }

  .about-content-area.style-3 .about-bottom-area {
    margin-top: 25px;
    gap: 35px;
  }

  .about-content-area.style-3 .about-bottom-area .about-btn-area-2 {
    width: 100%;
    order: 1;
  }

  .customers-box.style-3 {
    order: 2;
  }
}

/* !END: About CSS */
/**----------------------------------------
START: Services CSS
----------------------------------------*/
.tj-service-section-5 .sec-heading {
  max-width: 550px;
}

.service-item.style-5 {
  background-color: var(--tj-color-theme-dark);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0;
  overflow: hidden;
}
.service-item.style-5 .service-icon {
  font-size: 64px;
  margin-bottom: 50px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-5 .service-icon {
    font-size: 50px;
  }
}
.service-item.style-5 .service-content-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 60px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .service-item.style-5 .service-content-area {
    padding: 50px 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-5 .service-content-area {
    padding: 40px 20px;
  }
}
.service-item.style-5 .service-content {
  max-width: 360px;
}
.service-item.style-5 .no {
  color: var(--tj-color-text-body-3);
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  margin-bottom: 16px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-5 .no {
    font-size: 18px;
  }
}
.service-item.style-5 .title {
  max-width: 360px;
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-medium);
}
.service-item.style-5 .desc {
  color: var(--tj-color-text-body-2);
}
.service-item.style-5 .tj-primary-btn {
  margin-top: 30px;
}
.service-item.style-5 .service-img {
  max-width: 581px;
  width: 100%;
  height: 605px;
}
.service-item.style-5 .service-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .service-item.style-5 .service-img {
    max-width: 500px;
    height: 590px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .service-item.style-5 .service-img {
    max-width: 460px;
    height: 560px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-5 .service-img {
    max-width: 100%;
    height: 500px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-5 .service-img {
    height: 400px;
  }
}

.service-bottom-text {
  text-align: center;
  margin-top: 55px;
}
.service-bottom-text .desc {
  color: var(--tj-color-theme-dark-2);
  font-weight: var(--tj-fw-medium);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4px;
  margin: 0;
}
.service-bottom-text .desc span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-bottom-text .desc span {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    display: inline-block;
  }
}
.service-bottom-text i {
  font-size: 28px;
  color: var(--tj-color-theme-primary);
  vertical-align: middle;
}
.service-bottom-text a {
  color: var(--tj-color-theme-dark);
  font-weight: var(--tj-fw-sbold);
  line-height: 1.1;
  position: relative;
  -webkit-padding-end: 14px;
  padding-inline-end: 14px;
  display: inline-block;
}
.service-bottom-text a::before {
  content: "";
  background-color: currentColor;
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  inset-inline-end: 0;
}
.service-bottom-text a::after {
  content: "\e916";
  font-family: "bexon-icons" !important;
  font-style: normal;
  font-weight: var(--tj-fw-medium);
  font-size: 18px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
}
.service-bottom-text a:hover {
  color: var(--tj-color-theme-primary);
}
.service-bottom-text a:hover::before {
  -webkit-animation: linehover 0.8s linear;
  animation: linehover 0.8s linear;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-bottom-text {
    margin-top: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-bottom-text {
    text-align: start;
  }
}

/* !END: Services CSS */
/**----------------------------------------
START: Countup CSS
----------------------------------------*/
.tj-funfact-section {
  background-color: var(--tj-color-theme-bg);
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.tj-funfact-section .heading-wrap-content .sec-heading {
  max-width: 550px;
}
.tj-funfact-section .heading-wrap-content .progress-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
}
.tj-funfact-section .heading-wrap-content .progress-item .progress-circle {
  margin-bottom: 0;
}
.tj-funfact-section .heading-wrap-content .progress-item .progress-text {
  max-width: 160px;
}
.tj-funfact-section .countup-item {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.tj-funfact-section .countup-item:hover {
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
}

.progress-item .progress-circle {
  margin-bottom: 10px;
}
.progress-item .progress-circle input {
  color: var(--tj-color-heading-primary) !important;
  font-size: 22px !important;
  width: auto;
  font-weight: var(--tj-fw-bold) !important;
  font-family: var(--tj-ff-heading) !important;
}
.progress-item .progress-text .sub-title {
  display: block;
  font-size: 16px;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-regular);
  letter-spacing: initial;
  text-transform: unset;
  color: var(--tj-color-heading-primary);
  margin-bottom: 0px;
  line-height: 1.5;
}

/* !END: Countup CSS */
/**----------------------------------------
START: Project CSS
----------------------------------------*/
.tj-project-section-4 {
  overflow: hidden;
}
.tj-project-section-4 .sec-heading {
  max-width: 550px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-project-section-4 .container-fluid,
  .tj-project-section-4 .project-wrapper {
    -webkit-padding-end: 0;
    padding-inline-end: 0;
  }
}

.project-item.h4-project-item {
  padding: 30px;
}
.project-item.h4-project-item .project-content {
  padding: 0 0 25px 0;
}
.project-item.h4-project-item .project-content .title {
  max-width: 250px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .project-item.h4-project-item .project-content .title {
    max-width: 230px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-item.h4-project-item .project-content {
    padding: 0 0 20px 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-item.h4-project-item .project-text {
    margin-top: 14px;
  }
}
.project-item.h4-project-item .project-img {
  height: 445px;
  border-radius: 10px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .project-item.h4-project-item .project-img {
    height: 345px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-item.h4-project-item .project-img {
    height: 300px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .project-item.h4-project-item {
    padding: 20px;
  }
}

/* !END: Project CSS */
/**----------------------------------------
START: Pricing CSS
----------------------------------------*/
.tj-pricing-section-2 .content-wrap .tj-primary-btn {
  margin-top: 24px;
}

.accordion.pricing-accordion {
  max-width: 820px;
}
.accordion.pricing-accordion .pricing-box {
  margin-bottom: 30px;
}
.accordion.pricing-accordion .pricing-box:last-child {
  margin-bottom: 0;
}
.accordion.pricing-accordion .pricing-box .faq-title {
  font-size: 24px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .accordion.pricing-accordion .pricing-box .faq-title {
    font-size: 20px;
  }
}
.accordion.pricing-accordion .pricing-box.active .faq-title {
  color: var(--tj-color-common-white);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.accordion.pricing-accordion .pricing-box.active .faq-title::after {
  color: var(--tj-color-heading-primary);
  background-color: var(--tj-color-common-white);
  border-color: var(--tj-color-common-white);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .accordion.pricing-accordion .pricing-box {
    padding: 0 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .accordion.pricing-accordion .pricing-box {
    margin-bottom: 20px;
  }
}
.accordion.pricing-accordion .pricing-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  margin-top: 0;
  padding-top: 30px;
  padding-bottom: 45px;
}
.accordion.pricing-accordion .pricing-inner::after {
  content: "";
  position: absolute;
  width: 1px;
  height: calc(100% - 45px);
  top: 0;
  inset-inline-start: 50%;
  background-color: rgba(255, 255, 255, 0.1);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .accordion.pricing-accordion .pricing-inner::after {
    display: none;
  }
}
.accordion.pricing-accordion .pricing-inner .pricing-header,
.accordion.pricing-accordion .pricing-inner .list-items {
  width: 50%;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .accordion.pricing-accordion .pricing-inner .pricing-header,
  .accordion.pricing-accordion .pricing-inner .list-items {
    width: 100%;
  }
}
.accordion.pricing-accordion .pricing-inner .pricing-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-padding-end: 30px;
  padding-inline-end: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .accordion.pricing-accordion .pricing-inner .pricing-header {
    -webkit-padding-end: 0;
    padding-inline-end: 0;
  }
}
.accordion.pricing-accordion .pricing-inner .list-items {
  -webkit-padding-start: 30px;
  padding-inline-start: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .accordion.pricing-accordion .pricing-inner .list-items {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    padding-top: 40px;
  }
}
.accordion.pricing-accordion .pricing-inner .package-price {
  margin: 20px 0 80px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .accordion.pricing-accordion .pricing-inner .package-price {
    margin-bottom: 40px;
  }
}
.accordion.pricing-accordion .pricing-inner .pricing-btn {
  margin-bottom: 0;
}

/* !END: Pricing CSS */
/**----------------------------------------
START: Contact CSS
----------------------------------------*/
.h4-contact-section {
  position: relative;
  overflow: hidden;
}
.h4-contact-section::before {
  content: "";
  position: absolute;
  bottom: 2%;
  inset-inline-start: 38%;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: var(--tj-color-theme-primary);
  -webkit-filter: blur(80px);
  filter: blur(80px);
  opacity: 0.3;
  z-index: -1;
  backdrop-filter: blur(10px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h4-contact-section::before {
    width: 280px;
    height: 280px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-contact-section::before {
    width: 200px;
    height: 200px;
  }
}

.contact-form.style-3 {
  max-width: 610px;
  background-color: transparent;
  padding: 0;
}
.contact-form.style-3 .form-input {
  margin-bottom: 20px;
  position: relative;
}
.contact-form.style-3 .form-input.message-input {
  margin-top: 0;
  margin-bottom: 25px;
}
.contact-form.style-3 .form-input textarea,
.contact-form.style-3 .form-input input[type="tel"],
.contact-form.style-3 .form-input input[type="text"],
.contact-form.style-3 .form-input input[type="email"] {
  color: var(--tj-color-text-body-2);
  padding: 12px 20px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 6px;
}
.contact-form.style-3 .form-input textarea::-webkit-input-placeholder,
.contact-form.style-3 .form-input input[type="tel"]::-webkit-input-placeholder,
.contact-form.style-3 .form-input input[type="text"]::-webkit-input-placeholder,
.contact-form.style-3
  .form-input
  input[type="email"]::-webkit-input-placeholder {
  color: var(--tj-color-text-body-2);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea::-moz-placeholder,
.contact-form.style-3 .form-input input[type="tel"]::-moz-placeholder,
.contact-form.style-3 .form-input input[type="text"]::-moz-placeholder,
.contact-form.style-3 .form-input input[type="email"]::-moz-placeholder {
  color: var(--tj-color-text-body-2);
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea:-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="tel"]:-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="text"]:-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="email"]:-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea::-webkit-input-placeholder,
.contact-form.style-3 .form-input input[type="tel"]::-webkit-input-placeholder,
.contact-form.style-3 .form-input input[type="text"]::-webkit-input-placeholder,
.contact-form.style-3
  .form-input
  input[type="email"]::-webkit-input-placeholder {
  color: var(--tj-color-text-body-2);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea::-moz-placeholder,
.contact-form.style-3 .form-input input[type="tel"]::-moz-placeholder,
.contact-form.style-3 .form-input input[type="text"]::-moz-placeholder,
.contact-form.style-3 .form-input input[type="email"]::-moz-placeholder {
  color: var(--tj-color-text-body-2);
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea:-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="tel"]:-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="text"]:-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="email"]:-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea::-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="tel"]::-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="text"]::-ms-input-placeholder,
.contact-form.style-3 .form-input input[type="email"]::-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea::placeholder,
.contact-form.style-3 .form-input input[type="tel"]::placeholder,
.contact-form.style-3 .form-input input[type="text"]::placeholder,
.contact-form.style-3 .form-input input[type="email"]::placeholder {
  color: var(--tj-color-text-body-2);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.contact-form.style-3 .form-input textarea:focus,
.contact-form.style-3 .form-input input[type="tel"]:focus,
.contact-form.style-3 .form-input input[type="text"]:focus,
.contact-form.style-3 .form-input input[type="email"]:focus {
  border-color: var(--tj-color-theme-primary);
}
.contact-form.style-3 .form-input .cf-label {
  color: var(--tj-color-text-body-2);
  position: unset;
  margin-bottom: 10px;
}
.contact-form.style-3 .form-input .nice-select {
  color: var(--tj-color-text-body-2);
  padding: 12px 20px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 6px;
  z-index: 2;
  margin-bottom: 20px;
}
.contact-form.style-3 .form-input .nice-select.open {
  border-color: var(--tj-color-theme-primary);
}
.contact-form.style-3 .form-input .nice-select::after {
  color: var(--tj-color-common-white);
  font-size: 13px;
  width: 13px;
  height: 13px;
  top: 22px;
  inset-inline-end: 18px;
}
.contact-form.style-3 .form-input textarea {
  height: 183px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .contact-form.style-3 {
    max-width: 100%;
    margin-bottom: 60px;
  }
}

/* !END: Contact CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.testimonial-wrapper-3 {
  position: relative;
}

.testimonial-slider-2.h4-testimonial {
  max-width: 610px;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 12px;
  padding: 50px 0 60px;
}
.testimonial-slider-2.h4-testimonial .tes-title {
  color: var(--tj-color-common-white);
  margin-bottom: 0;
  padding: 0 30px;
}
.testimonial-slider-2.h4-testimonial .tes-title span {
  color: var(--tj-color-text-body-2);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .testimonial-slider-2.h4-testimonial .tes-title {
    padding: 0 25px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2.h4-testimonial .tes-title {
    padding: 0 20px;
  }
}
.testimonial-slider-2.h4-testimonial .testimonial-item {
  background-color: transparent;
  padding: 50px 30px 0;
  height: auto;
}
.testimonial-slider-2.h4-testimonial .testimonial-item .desc {
  color: var(--tj-color-grey-1);
  line-height: 1.545;
  padding-bottom: 10px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .testimonial-slider-2.h4-testimonial .testimonial-item .desc {
    font-size: 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .testimonial-slider-2.h4-testimonial .testimonial-item .desc {
    font-size: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2.h4-testimonial .testimonial-item .desc {
    font-size: 16px;
    padding-top: 20px;
  }
}
.testimonial-slider-2.h4-testimonial .testimonial-item .testimonial-author {
  border-color: var(--tj-color-border-2);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2.h4-testimonial
    .testimonial-item
    .testimonial-author
    .author-img {
    width: 60px;
    height: 60px;
  }
}
.testimonial-slider-2.h4-testimonial
  .testimonial-item
  .testimonial-author
  .title {
  color: var(--tj-color-common-white);
}
.testimonial-slider-2.h4-testimonial
  .testimonial-item
  .testimonial-author
  .designation {
  color: var(--tj-color-text-body-2);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .testimonial-slider-2.h4-testimonial .testimonial-item {
    padding: 35px 25px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2.h4-testimonial .testimonial-item {
    padding: 30px 20px 0;
  }
}
.testimonial-slider-2.h4-testimonial .testimonial-navigation {
  position: absolute;
  inset-inline-end: 30px;
  bottom: 75px;
  z-index: 2;
  gap: 15px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2.h4-testimonial .testimonial-navigation {
    bottom: 30px;
  }
}
.testimonial-slider-2.h4-testimonial .slider-next,
.testimonial-slider-2.h4-testimonial .slider-prev {
  border: 1px solid var(--tj-color-border-2);
}
.testimonial-slider-2.h4-testimonial .slider-next .anim-icon i,
.testimonial-slider-2.h4-testimonial .slider-prev .anim-icon i {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2.h4-testimonial {
    padding: 35px 0 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .testimonial-slider-2.h4-testimonial {
    max-width: 100%;
  }
}

/* !END: Testimonial CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.h4-blog-wrap {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 28px;
}
.h4-blog-wrap .blog-item.style-3 {
  height: 260px;
}
.h4-blog-wrap .blog-item.style-3:first-child {
  grid-row: span 2;
  grid-column: 1/3;
  height: 550px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-blog-wrap .blog-item.style-3:first-child {
    height: 300px;
  }
}
.h4-blog-wrap .blog-item.style-3 .blog-thumb {
  height: 100%;
}
.h4-blog-wrap .blog-item.style-3 .blog-content .title {
  max-width: 360px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-blog-wrap .blog-item.style-3 .blog-content .title {
    max-width: 285px;
  }
}
.h4-blog-wrap .blog-item.style-3 .blog-date {
  top: auto;
  inset-inline-start: auto;
  inset-inline-end: 30px;
  bottom: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-blog-wrap .blog-item.style-3 .blog-date {
    inset-inline-end: 20px;
    bottom: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-blog-wrap .blog-item.style-3 .blog-date {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-blog-wrap .blog-item.style-3 {
    grid-column: 50%;
    height: 300px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-blog-wrap .blog-item.style-3 {
    grid-column: 1/3;
    height: 300px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-blog-wrap {
    gap: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h4-blog-wrap {
    grid-template-columns: auto;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h4-blog-wrap {
    grid-template-columns: 1fr;
  }
}

/* !END: Blog CSS */

/* START: History CSS */
.timeline {
  position: relative;
  width: 100%;
  padding: 0;
}

.timeline::after {
  content: "";
  position: absolute;
  width: 0;
  -webkit-border-end: 1px dashed var(--tj-color-border-1);
  border-inline-end: 1px dashed var(--tj-color-border-1);
  top: 0;
  bottom: 0;
  inset-inline-start: 50%;
  -webkit-margin-start: -1px;
  margin-inline-start: -1px;
}

.timeline-inner {
  position: relative;
  background: inherit;
  width: 50%;
}

.timeline-inner:nth-child(odd) {
  inset-inline-start: 0;
  -webkit-padding-end: 90px;
  padding-inline-end: 90px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .timeline-inner:nth-child(odd) {
    -webkit-padding-end: 60px;
    padding-inline-end: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .timeline-inner:nth-child(odd) {
    -webkit-padding-end: 40px;
    padding-inline-end: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .timeline-inner:nth-child(odd) {
    -webkit-padding-end: 0;
    padding-inline-end: 0;
    -webkit-padding-start: 40px;
    padding-inline-start: 40px;
  }
}

.timeline-inner:nth-child(even) {
  inset-inline-start: 50%;
  -webkit-padding-start: 90px;
  padding-inline-start: 90px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .timeline-inner:nth-child(even) {
    -webkit-padding-start: 60px;
    padding-inline-start: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .timeline-inner:nth-child(even) {
    -webkit-padding-start: 40px;
    padding-inline-start: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .timeline-inner:nth-child(even) {
    -webkit-padding-start: 40px;
    padding-inline-start: 40px;
  }
}

.timeline-inner::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  top: calc(50% - 8px);
  inset-inline-end: -8px;
  background: #ffffff;
  border: 4px solid var(--tj-color-text-body-3);
  border-radius: 16px;
  z-index: 1;
}

.timeline-inner:nth-child(even)::after {
  inset-inline-start: -8px;
}

.timeline-inner .date {
  position: absolute;
  display: inline-block;
  top: calc(50% - 25px);
  text-align: center;
  font-size: 48px;
  line-height: 1;
  font-weight: bold;
  color: var(--tj-color-text-body-3);
  text-transform: uppercase;
  letter-spacing: 1px;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .timeline-inner .date {
    font-size: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .timeline-inner .date {
    font-size: 24px;
    top: calc(50% - 12px);
  }
}

.timeline-inner:nth-child(odd) .date {
  inset-inline-end: -200px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .timeline-inner:nth-child(odd) .date {
    inset-inline-end: -170px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .timeline-inner:nth-child(odd) .date {
    inset-inline-end: -130px;
  }
}

.timeline-inner:nth-child(even) .date {
  inset-inline-start: -200px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .timeline-inner:nth-child(even) .date {
    inset-inline-start: -170px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .timeline-inner:nth-child(even) .date {
    inset-inline-start: -130px;
  }
}

.timeline-inner .content {
  padding: 30px 30px;
  background: var(--tj-color-common-white);
  border-radius: 12px;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .timeline-inner .content {
    padding: 20px;
  }
}
.timeline-inner .content .top {
  -webkit-padding-start: 40px;
  padding-inline-start: 40px;
  position: relative;
}
.timeline-inner .content .top span {
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  font-size: 24px;
  font-family: var(--tj-ff-heading);
  line-height: 1.2;
  font-weight: 600;
  color: var(--tj-color-text-body-2);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .timeline-inner .content .top span {
    font-size: 20px;
  }
}
.timeline-inner .content .top .title {
  margin-bottom: 15px;
  font-weight: var(--tj-fw-sbold);
}
.timeline-inner .content .top p {
  margin: 0;
}
.timeline-inner .content .bottom {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.timeline-inner .content .bottom img {
  border-radius: 10px;
}

@media (max-width: 767.98px) {
  .timeline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 60px;
    padding-top: 30px;
  }
  .timeline::after {
    inset-inline-start: 10px;
  }
  .timeline-inner {
    width: 100%;
  }
  .timeline-inner:nth-child(even) {
    inset-inline-start: 0%;
  }
  .timeline-inner:nth-child(odd)::after,
  .timeline-inner:nth-child(even)::after {
    inset-inline-start: 1px;
    top: -38px;
  }
  .timeline-inner:nth-child(odd) .date,
  .timeline-inner:nth-child(even) .date {
    inset-inline-end: auto;
    inset-inline-start: 40px;
    top: -42px;
  }
}
/* !END: History CSS */
/* START: T&D CSS */
.terms-and-conditions-wrapper h1,
.terms-and-conditions-wrapper h2,
.terms-and-conditions-wrapper h3,
.terms-and-conditions-wrapper h4,
.terms-and-conditions-wrapper h5,
.terms-and-conditions-wrapper h6 {
  padding-top: 30px;
  margin-bottom: 15px;
}
.terms-and-conditions-wrapper ul {
  -webkit-padding-start: 20px;
  padding-inline-start: 20px;
}
.terms-and-conditions-wrapper ul:not(:first-child) {
  margin-bottom: 30px;
}

/* !END: T&D CSS */
/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.header-area.header-5.header-absolute {
  inset-inline-start: 0;
  inset-inline-end: 0;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  backdrop-filter: blur(10px);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.header-5.header-absolute {
    top: 24px;
    inset-inline-start: 0;
    width: calc(100% - 48px);
  }
}
.header-area.header-5.header-absolute .header-wrapper {
  max-width: 1000px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  border-radius: 8px;
  backdrop-filter: none;
}
.header-area.header-5.header-absolute .mainmenu > ul > li > a {
  padding-top: 25px;
  padding-bottom: 25px;
}
.header-area.header-5.header-absolute
  .mainmenu
  > ul
  > li.menu-item-has-children
  > a::after,
.header-area.header-5.header-absolute
  .mainmenu
  > ul
  > li.has-dropdown
  > a::after {
  top: 28px;
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h5-banner-section {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.h5-banner-section .banner-bg::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    -109deg,
    rgba(12, 30, 33, 0.95) 20%,
    rgba(12, 30, 33, 0.2) 40%,
    rgba(12, 30, 33, 0.95) 70%
  );
  z-index: 1;
}
.h5-banner-section .banner-scroll {
  inset-inline-start: 30px;
  bottom: 30px;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h5-banner-section .banner-scroll {
    display: none;
  }
}
.h5-banner-section .banner-scroll .scroll-down {
  opacity: 1;
}
.h5-banner-section .banner-scroll .scroll-down:hover {
  margin-bottom: -6px;
}
.h5-banner-section::after,
.h5-banner-section::before {
  content: "";
  position: absolute;
  top: 5%;
  inset-inline-end: -13%;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  background: var(--tj-color-theme-primary);
  -webkit-filter: blur(80px);
  filter: blur(80px);
  opacity: 0.8;
  backdrop-filter: blur(10px);
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h5-banner-section::after,
  .h5-banner-section::before {
    width: 460px;
    height: 460px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h5-banner-section::after,
  .h5-banner-section::before {
    width: 400px;
    height: 400px;
    inset-inline-end: -18%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-banner-section::after,
  .h5-banner-section::before {
    width: 350px;
    height: 320px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-section::after,
  .h5-banner-section::before {
    width: 250px;
    height: 250px;
    inset-inline-end: -20%;
    top: 15%;
    -webkit-filter: blur(60px);
    filter: blur(60px);
  }
}
.h5-banner-section::after {
  top: auto;
  inset-inline-end: auto;
  bottom: -18%;
  inset-inline-start: -15%;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-section::after {
    bottom: -15%;
    inset-inline-start: -20%;
  }
}
.h5-banner-area {
  max-width: 1460px;
  width: 100%;
  min-height: 883px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  position: relative;
  z-index: 2;
  padding-top: 215px;
  padding-bottom: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-banner-area {
    min-height: 700px;
  }
}
.h5-banner-area .solution-box {
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(5px);
  border-radius: 10px;
  max-width: 366px;
  width: 100%;
  margin-top: -44px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  padding: 30px 30px 12px 30px;
}
.h5-banner-area .solution-box .list-icon {
  color: var(--tj-color-common-white);
  font-size: 20px;
  margin-bottom: 25px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-area .solution-box .list-icon {
    font-size: 18px;
    margin-bottom: 15px;
  }
}
.h5-banner-area .solution-box .hero-counter {
  color: var(--tj-color-common-white);
  font-size: 96px;
  line-height: 1;
  font-weight: var(--tj-fw-medium);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.h5-banner-area .solution-box .hero-counter sup {
  font-size: 0.5em;
  line-height: 0;
  top: -1.06em;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-banner-area .solution-box .hero-counter {
    font-size: 75px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-area .solution-box .hero-counter {
    font-size: 60px;
  }
}
.h5-banner-area .solution-box .desc {
  color: var(--tj-color-common-white);
  font-size: 18px;
  line-height: 1.444;
  margin-bottom: 2px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-area .solution-box .desc {
    font-size: 16px;
    margin-bottom: 5px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-banner-area .solution-box {
    margin-top: -244px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-banner-area .solution-box {
    margin-top: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-area .solution-box {
    max-width: 310px;
    padding: 20px 20px 10px 20px;
    margin-top: 50px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-banner-area {
    -webkit-padding-start: 30px;
    padding-inline-start: 30px;
    -webkit-padding-end: 30px;
    padding-inline-end: 30px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-banner-area {
    padding-top: 190px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-banner-area {
    padding-top: 160px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-area {
    padding: 140px 12px 15px;
    min-height: 90vh;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-banner-area {
    min-height: 700px;
  }
}
.h5-banner-content .banner-title {
  max-width: 715px;
  color: var(--tj-color-common-white);
  font-size: 96px;
  line-height: 1;
  margin-bottom: 30px;
}
.h5-banner-content .banner-title .tj-image-slider {
  width: 157.32px;
  height: 80px;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  display: inline-block;
  margin-bottom: -8px;
  -webkit-margin-end: -10px;
  margin-inline-end: -10px;
}
.h5-banner-content .banner-title .tj-image-slider img {
  height: 100%;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  display: none;
}
.h5-banner-content .banner-title .tj-image-slider img.active {
  display: block;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-banner-content .banner-title .tj-image-slider {
    width: 138.25px;
    height: 70px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-banner-content .banner-title .tj-image-slider {
    width: 98.75px;
    height: 50px;
    margin-bottom: -3px;
    -webkit-margin-end: -7px;
    margin-inline-end: -7px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-banner-content .banner-title .tj-image-slider {
    width: 79px;
    height: 40px;
    margin-bottom: 0;
    -webkit-margin-end: -5px;
    margin-inline-end: -5px;
  }
}
@media (max-width: 575px) {
  .h5-banner-content .banner-title .tj-image-slider {
    margin-bottom: -3px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h5-banner-content .banner-title {
    font-size: 85px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-banner-content .banner-title {
    max-width: 600px;
    font-size: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-banner-content .banner-title {
    max-width: 560px;
    font-size: 65px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-banner-content .banner-title {
    font-size: 55px;
  }
}
@media (max-width: 575px) {
  .h5-banner-content .banner-title {
    font-size: 50px;
  }
}

.banner-bg {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
}

.wow {
  visibility: hidden;
}

/* !END: Hero CSS */
/**----------------------------------------
START: Services CSS
----------------------------------------*/
.h5-service-section .sec-heading {
  max-width: 550px;
}

.service-item.style-6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0;
  overflow: hidden;
  height: 390px;
  padding: 30px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.service-item.style-6 .service-icon {
  width: 90px;
  height: 90px;
  margin: 0 auto;
}
.service-item.style-6 .service-icon i {
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-6 .service-icon {
    width: 70px;
    height: 70px;
    font-size: 50px;
  }
}
.service-item.style-6 .title {
  max-width: 250px;
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .service-item.style-6 .title {
    font-size: 20px;
  }
}
.service-item.style-6 .text-btn {
  position: absolute;
  inset-inline-start: auto;
  bottom: 0;
  opacity: 0;
  visibility: hidden;
  margin: 0;
}
.service-item.style-6:hover {
  background-color: var(--tj-color-theme-primary);
}
.service-item.style-6:hover .service-icon {
  background: linear-gradient(
    -45deg,
    rgba(255, 255, 255, 0.3) 0%,
    rgba(255, 255, 255, 0) 50%,
    rgba(255, 255, 255, 0.3) 100%
  );
  border-color: rgba(255, 255, 255, 0.15);
}
.service-item.style-6:hover .service-icon i {
  color: var(--tj-color-common-white);
  -webkit-transform: rotateY(360deg);
  transform: rotateY(360deg);
}
.service-item.style-6:hover .desc,
.service-item.style-6:hover .title {
  color: var(--tj-color-common-white);
}
.service-item.style-6:hover .desc a,
.service-item.style-6:hover .title a {
  color: var(--tj-color-common-white);
}
.service-item.style-6:hover .desc {
  opacity: 0;
  visibility: hidden;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
}
.service-item.style-6:hover .text-btn {
  opacity: 1;
  visibility: visible;
  bottom: 30px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-6:hover .text-btn {
    bottom: 20px;
  }
}
.service-item.style-6:hover .text-btn .btn-text {
  color: var(--tj-color-common-white);
}
.service-item.style-6:hover .text-btn .btn-icon {
  background-color: var(--tj-color-theme-dark);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .service-item.style-6 {
    padding: 20px;
  }
}

/* !END: Services CSS */
/**----------------------------------------
START: Home 5 About CSS
----------------------------------------*/
.h5-about {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.h5-about .bg-shape-3 {
  top: 0;
  -webkit-transform: translate(19%, -20%) scaleY(-1);
  -ms-transform: translate(19%, -20%) scaleY(-1);
  transform: translate(19%, -20%) scaleY(-1);
  bottom: auto;
}
.h5-about-content {
  margin-bottom: 60px;
}
.h5-about-content.style-3 .sec-heading .h5-sec-title-wrapper {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.h5-about-content.style-3 .sec-heading .subtitle-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.h5-about-content.style-3 .sec-heading .sec-title {
  color: var(--tj-color-common-white);
  width: 100%;
  margin-bottom: 24px;
}
.h5-about-content.style-3 .sec-heading .sec-title .line {
  position: relative;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  --highlight-offset: 0%;
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(var(--tj-color-common-white)),
    to(var(--tj-color-text-body-3))
  );
  background-image: linear-gradient(
    90deg,
    var(--tj-color-common-white) var(--highlight-offset),
    var(--tj-color-text-body-3) var(--highlight-offset)
  );
}
.h5-about-content-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  width: 67.2%;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-about-content-right {
    width: 100%;
    gap: 15px;
  }
}
@media (max-width: 575px) {
  .h5-about-content-right {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.h5-about-counter {
  font-size: 96px;
  line-height: 1.04;
  font-weight: var(--tj-fw-medium);
  letter-spacing: -0.03em;
  color: var(--tj-color-common-white);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: -24px;
}
.h5-about-counter-symbol {
  line-height: 1;
  margin-bottom: 5px;
  display: inline-block;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h5-about-counter {
    font-size: 90px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-about-counter {
    font-size: 86px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-about-counter {
    font-size: 80px;
    margin-bottom: 0;
  }
}
@media (max-width: 575px) {
  .h5-about-counter {
    font-size: 76px;
    margin-bottom: 0;
  }
}

.h5-client-item {
  -webkit-padding-end: 15px;
  padding-inline-end: 15px;
}
.h5-client-item .client-logo {
  width: 254px;
  height: 254px;
  background-color: inherit;
  position: relative;
  overflow: hidden;
  z-index: 0;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-client-item .client-logo {
    width: 200px;
    height: 200px;
  }
}
@media (max-width: 575px) {
  .h5-client-item .client-logo {
    width: 150px;
    height: 150px;
  }
}
.h5-client-item .client-logo:before,
.h5-client-item .client-logo::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  opacity: 0;
}
.h5-client-item .client-logo::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../images/brands/h5-brand-bg.webp") no-repeat center;
  background-size: cover;
  mix-blend-mode: luminosity;
  z-index: -2;
  pointer-events: none;
}
.h5-client-item .client-logo::after {
  background: rgba(30, 138, 138, 0.6);
}
.h5-client-item .client-logo:hover {
  border-radius: 100%;
  backdrop-filter: blur(0);
  background: rgba(30, 138, 138, 0.7);
}
.h5-client-item .client-logo:hover::before,
.h5-client-item .client-logo:hover::after {
  opacity: 1;
}

/* !END: Home 5 About CSS  */
/**----------------------------------------
START: Strategy CSS
----------------------------------------*/
.gap-30-30 {
  --bs-gutter-x: 30px;
}
.gap-30-30 .row {
  --bs-gutter-x: 30px;
  --bs-gutter-y: 30px;
}

.h5-strategy-heading {
  padding: 60px 30px;
  border-radius: 10px;
  background-color: var(--tj-color-common-white);
  margin-bottom: 0;
}
@media (max-width: 575px) {
  .h5-strategy-heading {
    padding: 40px 20px;
  }
}
.h5-strategy-heading .sec-title {
  margin-bottom: 30px;
}
.h5-strategy-item {
  padding: 30px;
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
@media (max-width: 575px) {
  .h5-strategy-item {
    padding: 20px;
  }
}
.h5-strategy-item-3 {
  background: url("../images/strategy/strategy-item-bg.webp") no-repeat center;
  background-size: cover;
}
.h5-strategy-item-3::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-heading-primary);
  opacity: 0.7;
  z-index: -1;
}
.h5-strategy-title {
  font-weight: var(--tj-fw-sbold);
}
.h5-strategy-avatar {
  max-width: 295px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  margin-top: 40px;
}
.h5-strategy-counter {
  margin-bottom: -7px;
}
.h5-strategy-counter-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 5px;
  border-top: 1px dashed var(--tj-color-border-1);
  margin-top: 60px;
}
.h5-strategy-counter-inner .inline-content {
  margin-bottom: 0;
}
.h5-strategy-counter-inner .inline-content .odometer-inside {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.h5-strategy-counter-inner .inline-content .odometer span {
  color: var(--tj-color-heading-primary);
}
.h5-strategy-counter-inner .count-text {
  color: var(--tj-color-text-body-3);
}
.h5-strategy-chart {
  margin-top: 71px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h5-strategy-chart {
    margin-top: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-strategy-chart {
    margin-top: 145px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-strategy-chart {
    margin-top: 100px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-strategy-chart img {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: auto;
    margin-inline-end: auto;
    display: block;
  }
}
.h5-strategy-tag-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 180px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h5-strategy-tag-wrapper {
    margin-top: 153px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-strategy-tag-wrapper {
    margin-top: 106px;
  }
}
.h5-strategy-tag {
  padding: 5px 8px 7px;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  line-height: 1;
  color: var(--tj-color-common-white);
}
.h5-strategy-tag:hover {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  border-color: var(--tj-color-theme-primary);
}
.h5-strategy-item-3 .h5-strategy-title {
  color: var(--tj-color-common-white);
}
.h5-strategy-item-3 .h5-strategy-desc {
  color: var(--tj-color-grey-1);
  margin-top: 18px;
}

/* !END: Strategy CSS */
/**----------------------------------------
START: Working process CSS
----------------------------------------*/
.sec-heading-centered {
  max-width: 550px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  width: 100%;
  text-align: center;
}

.h5-working-process {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.h5-working-process-inner {
  position: relative;
  z-index: 0;
  padding-top: 42px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-inner {
    padding-top: 0;
    margin-top: 72px;
  }
}
.h5-working-process-inner::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 21px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  height: 0;
  border-bottom: 1px dashed var(--tj-color-border-2);
  z-index: -1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-inner::after {
    inset-inline-start: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 0;
    height: 100%;
    border-bottom: 0;
    -webkit-border-end: 1px dashed var(--tj-color-border-2);
    border-inline-end: 1px dashed var(--tj-color-border-2);
  }
}
.h5-working-process-wrapper {
  gap: 30px;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-working-process-wrapper {
    gap: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 85px;
  }
}
.h5-working-process-item {
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  margin-top: 60px;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  position: static;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item {
    margin-top: 30px;
  }
}
.h5-working-process-item .h5-working-process-indicator {
  padding: 9px 34px 11px;
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
  line-height: 1;
  letter-spacing: -0.03em;
  border: 1px dashed var(--tj-color-border-2);
  border-radius: 50px;
  color: var(--tj-color-common-white);
  background-color: var(--tj-color-theme-dark);
  margin-bottom: 0;
  position: absolute;
  -webkit-transition: all 0.2s 0.3s;
  transition: all 0.2s 0.3s;
  top: -60px;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -100%);
  -ms-transform: translate(-50%, -100%);
  transform: translate(-50%, -100%);
  white-space: nowrap;
  z-index: 0;
}
.h5-working-process-item .h5-working-process-indicator::before,
.h5-working-process-item .h5-working-process-indicator::after {
  content: "";
  position: absolute;
  inset-inline-start: 50%;
  bottom: -60px;
  -webkit-transform: translateX(-50%) scaleY(-1);
  -ms-transform: translateX(-50%) scaleY(-1);
  transform: translateX(-50%) scaleY(-1);
  width: 0;
  height: 60px;
  -webkit-border-end: 1px dashed var(--tj-color-border-2);
  border-inline-end: 1px dashed var(--tj-color-border-2);
  z-index: -1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.h5-working-process-item .h5-working-process-indicator::after {
  height: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item .h5-working-process-indicator {
    top: -30px;
  }
  .h5-working-process-item .h5-working-process-indicator::before {
    display: none;
  }
  .h5-working-process-item .h5-working-process-indicator::after {
    bottom: -30px;
  }
}
.h5-working-process-item:nth-child(2) {
  margin-top: 192px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item:nth-child(2) {
    margin-top: 30px;
  }
}
.h5-working-process-item:nth-child(2) .h5-working-process-indicator {
  top: -192px;
}
.h5-working-process-item:nth-child(2) .h5-working-process-indicator::before,
.h5-working-process-item:nth-child(2) .h5-working-process-indicator::after {
  bottom: -192px;
}
.h5-working-process-item:nth-child(2) .h5-working-process-indicator::before {
  height: 192px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item:nth-child(2) .h5-working-process-indicator {
    top: -30px;
  }
  .h5-working-process-item:nth-child(2) .h5-working-process-indicator::after {
    bottom: -30px;
  }
}
.h5-working-process-item:nth-child(3) {
  margin-top: 324px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item:nth-child(3) {
    margin-top: 30px;
  }
  .h5-working-process-item:nth-child(3)::after {
    bottom: -30px;
  }
}
.h5-working-process-item:nth-child(3) .h5-working-process-indicator {
  top: -324px;
}
.h5-working-process-item:nth-child(3) .h5-working-process-indicator::before,
.h5-working-process-item:nth-child(3) .h5-working-process-indicator::after {
  bottom: -324px;
}
.h5-working-process-item:nth-child(3) .h5-working-process-indicator::before {
  height: 324px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item:nth-child(3) .h5-working-process-indicator {
    top: -30px;
  }
  .h5-working-process-item:nth-child(3) .h5-working-process-indicator::after {
    bottom: -30px;
  }
}
.h5-working-process-item:not(:last-child)::after {
  display: none;
}
.h5-working-process-item:hover .h5-working-process-indicator {
  border-color: var(--tj-color-theme-primary);
}
.h5-working-process-item:hover .h5-working-process-indicator::after {
  height: 60px;
  border-color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item:hover .h5-working-process-indicator::after {
    height: 30px;
  }
}
.h5-working-process-item:hover:nth-child(2)
  .h5-working-process-indicator::after {
  height: 192px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item:hover:nth-child(2)
    .h5-working-process-indicator::after {
    height: 30px;
  }
}
.h5-working-process-item:hover:nth-child(3)
  .h5-working-process-indicator::after {
  height: 324px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-working-process-item:hover:nth-child(3)
    .h5-working-process-indicator::after {
    height: 30px;
  }
}
.h5-working-process-item .process-step {
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(var(--tj-color-theme-primary)),
    color-stop(116.09%, rgba(30, 138, 138, 0))
  );
  background-image: linear-gradient(
    180deg,
    var(--tj-color-theme-primary) 0%,
    rgba(30, 138, 138, 0) 116.09%
  );
}
.h5-working-process .title {
  color: var(--tj-color-common-white);
}
.h5-working-process .desc {
  color: var(--tj-color-text-body-2);
}

/* !END: Working process CSS */
/**----------------------------------------
START: Home 5 Project CSS
----------------------------------------*/
.h5-project {
  overflow: hidden;
}
.h5-project .sec-heading {
  max-width: 550px;
}
.h5-project-wrapper {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-project-wrapper {
    gap: 30px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.h5-project-item-wrapper {
  width: 100%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  will-change: transform;
}
.h5-project-item-wrapper:not(:last-child) {
  -webkit-padding-end: 30px;
  padding-inline-end: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-project-item-wrapper:not(:last-child) {
    -webkit-padding-end: 20px;
    padding-inline-end: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-project-item-wrapper:not(:last-child) {
    -webkit-padding-end: 0;
    padding-inline-end: 0;
  }
}
.h5-project-item-wrapper .h5-project-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  gap: 60px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-project-item-wrapper .h5-project-item {
    gap: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-project-item-wrapper .h5-project-item {
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.h5-project-item.project-item .project-content {
  max-width: 360px;
  padding-bottom: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-project-item.project-item .project-content {
    padding: 0 0 10px 0;
  }
}
.h5-project-item.project-item .project-content .title {
  margin-bottom: 20px;
  max-width: 308px;
  font-weight: var(--tj-fw-medium);
}
.h5-project-item.project-item .project-content .desc {
  margin-bottom: 24px;
}
.h5-project-item.project-item .project-img {
  max-width: 615px;
  height: 505px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-project-item.project-item .project-img {
    height: 350px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-project-item.project-item .project-img {
    max-width: 330px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-project-item.project-item .project-img {
    height: 300px;
  }
}

/* !END: Home 5 Project CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.h5-testimonial {
  background-color: var(--tj-color-theme-bg);
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
}
.h5-testimonial .sec-heading-wrap {
  padding-top: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-testimonial .sec-heading-wrap {
    padding-top: 100px;
  }
}
@media (max-width: 575px) {
  .h5-testimonial-wrapper {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.h5-testimonial-wrapper .swiper {
  overflow: visible;
}
.h5-testimonial-wrapper .testimonial-item {
  background-color: var(--tj-color-common-white);
  border: 2px solid var(--tj-color-common-white);
  padding: 40px 30px 35px;
  height: 100%;
  border-radius: 12px;
}
.h5-testimonial-wrapper .testimonial-item .testimonial-author .title {
  font-weight: var(--tj-fw-sbold);
}
.h5-testimonial-wrapper .testimonial-item .desc {
  font-size: 24px;
  line-height: 1.3333;
  color: var(--tj-color-theme-dark-2);
  font-weight: var(--tj-fw-medium);
}
.h5-testimonial-wrapper .testimonial-item .desc p {
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-testimonial-wrapper .testimonial-item .desc {
    font-size: 22px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-testimonial-wrapper .testimonial-item .desc {
    font-size: 20px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-testimonial-wrapper .testimonial-item {
    padding: 35px 23px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-testimonial-wrapper .testimonial-item {
    padding: 30px 20px;
  }
}
.h5-testimonial-wrapper .h5-testimonial-author-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 30px;
  margin-bottom: 25px;
  border-bottom: 1px dashed var(--tj-color-border-1);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-testimonial-wrapper .h5-testimonial-author-wrapper {
    padding-top: 0;
    padding-bottom: 20px;
    margin-bottom: 16px;
  }
}
.h5-testimonial-wrapper .h5-testimonial-author-wrapper .testimonial-author {
  padding-top: 0;
  border-top: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-testimonial-wrapper .h5-testimonial-author-wrapper .testimonial-author {
    padding-top: 0;
  }
}

/* !END: Testimonial CSS */
/**----------------------------------------
START: Pricing CSS
----------------------------------------*/
.h5-pricing .heading-wrap-content .sec-heading {
  max-width: 360px;
}
.h5-pricing-tab-controllers {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 6px;
  background-color: var(--tj-color-theme-dark);
  border-radius: 100px;
  gap: 0px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-pricing-tab-controllers {
    padding: 5px;
  }
}
.h5-pricing-tab-controller {
  background: transparent;
  color: var(--tj-color-common-white);
  font-size: 16px;
  padding: 14px 20px;
  border-radius: 50px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  white-space: nowrap;
  font-weight: var(--tj-fw-sbold);
  line-height: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-pricing-tab-controller {
    font-size: 14px;
    padding: 10px 15px;
  }
}
.h5-pricing-tab-controller.active {
  background: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.h5-pricing-box-wrapper {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  padding: 30px;
  position: relative;
  z-index: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 575px) {
  .h5-pricing-box-wrapper {
    padding: 30px 15px;
  }
}
.h5-pricing-box-wrapper .bg-shape-3 {
  inset-inline-start: 20%;
}
.h5-pricing-box {
  padding: 26px 30px 30px;
  background-color: var(--tj-color-common-white);
  border-radius: 12px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 575px) {
  .h5-pricing-box {
    padding: 26px 15px 30px;
  }
}
.h5-pricing-box .list-items .h5-pricing-list-title {
  margin-bottom: 24px;
  font-weight: var(--tj-fw-sbold);
}
.h5-pricing-box .package-desc {
  margin-bottom: 35px;
}
.h5-pricing-box .package-price {
  margin: 35px 0;
}
.h5-pricing-box .pricing-btn {
  margin-bottom: 0;
  margin-top: 28px;
}
.h5-pricing-box .pricing-btn a {
  background-color: var(--tj-color-theme-primary);
  border: 0;
}
.h5-pricing-box .pricing-btn a .btn-text {
  color: var(--tj-color-common-white);
}
.h5-pricing-box .pricing-btn a:hover .btn-icon {
  background-color: var(--tj-color-theme-dark);
}
.h5-pricing-box.active .package-name,
.h5-pricing-box-basic .package-name {
  color: var(--tj-color-common-white);
}
.h5-pricing-box.active .package-desc p,
.h5-pricing-box-basic .package-desc p {
  color: var(--tj-color-text-body-2);
}
.h5-pricing-box.active .package-price,
.h5-pricing-box-basic .package-price {
  color: var(--tj-color-common-white);
}
.h5-pricing-box.active .package-currency,
.h5-pricing-box-basic .package-currency {
  color: var(--tj-color-common-white);
}
.h5-pricing-box.active .package-period,
.h5-pricing-box-basic .package-period {
  color: var(--tj-color-text-body-2);
}
.h5-pricing-box.active .pricing-btn a,
.h5-pricing-box-basic .pricing-btn a {
  background-color: var(--tj-color-theme-primary);
  border: 0;
}
.h5-pricing-box.active .pricing-btn a .btn-text,
.h5-pricing-box-basic .pricing-btn a .btn-text {
  color: var(--tj-color-common-white);
}
.h5-pricing-box.active .list-items .h5-pricing-list-title,
.h5-pricing-box-basic .list-items .h5-pricing-list-title {
  color: var(--tj-color-common-white);
}
.h5-pricing-box.active .list-items ul li,
.h5-pricing-box-basic .list-items ul li {
  color: var(--tj-color-grey-1);
}
.h5-pricing-box.active .list-items ul li i,
.h5-pricing-box-basic .list-items ul li i {
  color: var(--tj-color-theme-primary);
}
.h5-pricing-box-basic {
  background-color: transparent;
  border: 1px solid var(--tj-color-border-3);
}
.h5-pricing-box.active {
  background-color: var(--tj-color-grey-3);
}

/* !END: Pricing CSS */
/**----------------------------------------
START: Theme Marquee CSS
----------------------------------------*/
.h5-maquee {
  position: relative;
  overflow: hidden;
  padding: 70px 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-maquee {
    padding: 40px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-maquee {
    padding: 30px 0;
  }
}
.h5-maquee-inner {
  position: relative;
  background: var(--tj-color-theme-primary);
  padding: 31px 0;
  rotate: 2deg;
  z-index: 3;
  width: 105%;
  -webkit-margin-start: -5px;
  margin-inline-start: -5px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-maquee-inner {
    padding: 25px 0;
    rotate: 4deg;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-maquee-inner {
    padding: 20px 0;
    rotate: 4deg;
  }
}
@media (max-width: 575px) {
  .h5-maquee-inner {
    padding: 15px 0;
    rotate: 4deg;
  }
}
.h5-maquee-inner .h5-maquee-slider-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}
.h5-maquee-inner .h5-maquee-slider-item {
  width: auto;
  display: inline-block;
}
.h5-maquee-inner .h5-maquee-slider-item .marquee-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 50px;
}
.h5-maquee-inner .h5-maquee-slider-item .marquee-box .marquee-icon {
  line-height: 1;
  -webkit-animation: rotateImg2 6s infinite linear;
  animation: rotateImg2 6s infinite linear;
  color: var(--tj-color-common-white);
}
.h5-maquee-inner .h5-maquee-slider-item .marquee-box .marquee-title .title {
  font-size: 24px;
  font-weight: var(--tj-fw-sbold);
  text-transform: capitalize;
  line-height: 1;
  margin-bottom: 0;
  white-space: nowrap;
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-maquee-inner .h5-maquee-slider-item .marquee-box {
    gap: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h5-maquee-inner .h5-maquee-slider-item .marquee-box {
    gap: 30px;
  }
  .h5-maquee-inner .h5-maquee-slider-item .marquee-box .marquee-icon {
    font-size: 14px;
  }
  .h5-maquee-inner .h5-maquee-slider-item .marquee-box .marquee-title .title {
    font-size: 20px;
  }
}
.h5-maquee-inner-rtl {
  background: var(--tj-color-common-white);
  rotate: -4deg;
  position: absolute;
  inset-inline-start: 0;
  width: 105%;
  top: 70px;
  z-index: 2;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h5-maquee-inner-rtl {
    top: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-maquee-inner-rtl {
    top: 30px;
  }
}
@media (max-width: 575px) {
  .h5-maquee-inner-rtl {
    top: 30px;
    rotate: -7deg;
  }
}
.h5-maquee-inner-rtl .h5-maquee-slider-item .marquee-box .marquee-icon {
  -webkit-animation: rotateImg 6s infinite linear;
  animation: rotateImg 6s infinite linear;
  color: var(--tj-color-theme-primary);
}
.h5-maquee-inner-rtl .h5-maquee-slider-item .marquee-box .marquee-title .title {
  color: var(--tj-color-theme-primary);
}

@-webkit-keyframes rotateImg {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes rotateImg {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes rotateImg2 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
@keyframes rotateImg2 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
/* !END: Theme Marquee CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.h5-blog-wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(calc(50% - 15px), 1fr));
  grid-gap: 30px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.h5-blog-wrapper .blog-item.h5-blog-item {
  padding: 15px;
}
.h5-blog-wrapper .blog-item.h5-blog-item .blog-thumb {
  width: 41%;
}
.h5-blog-wrapper .blog-item.h5-blog-item .blog-date {
  top: auto;
  bottom: 15px;
  inset-inline-start: auto;
  inset-inline-end: 15px;
}
.h5-blog-wrapper .blog-item.h5-blog-item .blog-content {
  padding: 35px 15px 35px 25px;
  width: 59%;
}
.h5-blog-wrapper .blog-item:first-child {
  grid-row: 1/3;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 0;
}
.h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-thumb {
  width: 100%;
}
.h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content {
  width: 100%;
  padding: 20px 15px 15px;
}
.h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .title {
  font-size: 32px;
  font-weight: var(--tj-fw-medium);
}
.h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .text-btn {
  margin-top: 24px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h5-blog-wrapper {
    grid-template-columns: 696px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-blog-wrapper {
    grid-template-columns: 516px;
  }
  .h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content {
    padding: 20px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h5-blog-wrapper
    .blog-item:first-child.h5-blog-item
    .blog-content
    .blog-title {
    font-size: 26px;
  }
}
@media (max-width: 575px) {
  .h5-blog-wrapper {
    grid-template-columns: 100%;
  }
  .h5-blog-wrapper .blog-item.h5-blog-item .blog-thumb {
    width: 100%;
    max-height: 240px;
  }
  .h5-blog-wrapper .blog-item.h5-blog-item .blog-content {
    padding: 20px 0 10px 0;
    width: 100%;
  }
  .h5-blog-wrapper .blog-item.h5-blog-item .blog-content .title {
    font-size: 24px;
  }
  .h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content {
    padding: 20px 0 10px 0;
  }
  .h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .title {
    font-size: 24px;
    font-weight: var(--tj-fw-sbold);
  }
  .h5-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .text-btn {
    margin-top: 16px;
  }
}

/* !END: Blog CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
@media (max-width: 575px) {
  .tj-footer-section.h5-footer .h5-footer-subscribe {
    padding: 24px 20px 32px;
  }
}
.tj-footer-section.h5-footer .h5-footer-subscribe .title {
  color: var(--tj-color-common-white);
  max-width: 500px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h5-footer .h5-footer-subscribe .title {
    max-width: 400px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h5-footer .h5-footer-subscribe .title {
    max-width: 100%;
  }
}
.tj-footer-section.h5-footer
  .h5-footer-subscribe
  .subscribe-form
  input[type="checkbox"] {
  border: 1px solid var(--tj-color-text-body-2);
}
.tj-footer-section.h5-footer
  .h5-footer-subscribe
  .subscribe-form
  input[type="checkbox"]::before {
  color: var(--tj-color-theme-dark);
}
.tj-footer-section.h5-footer
  .h5-footer-subscribe
  .subscribe-form
  input[type="checkbox"]:checked {
  background-color: var(--tj-color-common-white);
  border-color: var(--tj-color-common-white);
}
.tj-footer-section.h5-footer .h5-footer-subscribe .subscribe-form label {
  color: var(--tj-color-text-body-2);
}
.tj-footer-section.h5-footer .h5-footer-subscribe .subscribe-form label a {
  color: var(--tj-color-common-white);
}
.tj-footer-section.h5-footer
  .h5-footer-subscribe
  .subscribe-form
  label
  a:hover {
  color: var(--tj-color-theme-primary);
}
.tj-footer-section.h5-footer .h5-footer-copyright {
  border-top: 1px dashed var(--tj-color-border-2);
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.header-area.h6-header.header-absolute {
  top: 30px;
  inset-inline-start: 15px;
  width: calc(100% - 60px);
  border-radius: 12px;
  z-index: 999;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h6-header.header-absolute {
    inset-inline-start: 12px;
    top: 24px;
    width: calc(100% - 48px);
  }
}
.header-area.h6-header.sticky {
  width: calc(100% - 30px);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h6-header.sticky {
    width: 100%;
  }
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.tj-footer-section.h6-footer {
  padding-top: 0;
}
.tj-footer-section.h6-footer .h6-footer-subscribe {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h6-footer .h6-footer-subscribe {
    margin-top: 0;
  }
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="email"] {
  background-color: var(--tj-color-grey-3);
  backdrop-filter: blur(10px);
  color: var(--tj-color-common-white);
  outline: 1px solid transparent;
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="email"]::-webkit-input-placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-common-white);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="email"]::-moz-placeholder {
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-common-white);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="email"]:-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-common-white);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="email"]::-ms-input-placeholder {
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-common-white);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="email"]::placeholder {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--tj-color-common-white);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="email"]:focus {
  outline-color: var(--tj-color-theme-primary);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="checkbox"] {
  border: 1px solid var(--tj-color-grey-3);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="checkbox"]::before {
  color: var(--tj-color-common-white);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  input[type="checkbox"]:checked {
  background-color: var(--tj-color-grey-3);
  border-color: var(--tj-color-grey-3);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  button::before {
  border-color: var(--tj-color-grey-3);
}
.tj-footer-section.h6-footer .h6-footer-subscribe .subscribe-form label {
  color: var(--tj-color-grey-1);
}
.tj-footer-section.h6-footer .h6-footer-subscribe .subscribe-form label a {
  color: var(--tj-color-common-white);
}
.tj-footer-section.h6-footer
  .h6-footer-subscribe
  .subscribe-form
  label
  a:hover {
  color: var(--tj-color-theme-primary);
}
.tj-footer-section.h6-footer .h6-footer-col-2 {
  -webkit-padding-start: 17px;
  padding-inline-start: 17px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h6-footer .h6-footer-col-2 {
    -webkit-padding-start: 90px;
    padding-inline-start: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h6-footer .h6-footer-col-2 {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.tj-footer-section.h6-footer .h6-footer-col-3.widget-nav-menu {
  -webkit-padding-start: 20px;
  padding-inline-start: 20px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h6-footer .h6-footer-col-3.widget-nav-menu {
    margin-top: 0;
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h6-footer .h6-footer-col-3.widget-nav-menu {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h6-footer .h6-footer-col-3.widget-nav-menu {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h6-footer .h6-footer-contact {
    margin-top: 0;
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h6-footer .h6-footer-contact {
    -webkit-padding-start: 90px;
    padding-inline-start: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h6-footer .h6-footer-contact {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.tj-footer-section.h6-footer .h6-footer-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  overflow: hidden;
}
.tj-footer-section.h6-footer .h6-footer-logo-area {
  padding-bottom: 50px;
}
.tj-footer-section.h6-footer .h6-footer-copyright {
  border-color: var(--tj-color-border-4);
}
.tj-footer-section.h6-footer
  .h6-footer-copyright
  .copyright-menu
  ul
  li::before {
  background: var(--tj-color-border-4);
}
.tj-footer-section.h6-footer .bg-shape-3 {
  max-width: 100%;
  inset-inline-start: 0;
  width: 100%;
}

.social-links.style-6 ul li a {
  background-color: var(--tj-color-common-white);
  opacity: 0.3;
}
.social-links.style-6 ul li a i {
  color: var(--tj-color-theme-dark);
}
.social-links.style-6 ul li a:hover {
  background-color: var(--tj-color-common-white);
  opacity: 1;
}
.social-links.style-6 ul li a:hover i {
  color: var(--tj-color-theme-dark);
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h6-hero {
  position: relative;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-hero.section-gap-x {
    border-start-end-radius: 12px;
    border-start-start-radius: 12px;
  }
}
.h6-hero .banner-area {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  gap: 15px;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-hero .banner-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.h6-hero .banner-content {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  max-width: 100%;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-hero .banner-content {
    padding: 0;
  }
}
.h6-hero .banner-content .banner-title {
  color: var(--tj-color-heading-primary);
  line-height: 1.12;
  max-width: 681px;
  margin-bottom: 24px;
}
.h6-hero .banner-left-box {
  background-color: var(--tj-color-theme-bg);
  padding: 225px 60px 60px 50px;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
  width: 50%;
  border-radius: 16px;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h6-hero .banner-left-box {
    padding: 195px 40px 40px 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h6-hero .banner-left-box {
    padding: 180px 30px 40px 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-hero .banner-left-box {
    padding: 170px 30px 40px 30px;
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-hero .banner-left-box {
    border-radius: 14px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h6-hero .banner-left-box {
    padding: 150px 15px 30px 15px;
  }
}
@media (max-width: 575px) {
  .h6-hero .banner-left-box {
    padding: 140px 15px 30px 15px;
  }
}
.h6-hero .banner-left-box::before {
  display: none;
}
@media (max-width: 575px) {
  .h6-hero .banner-right-box {
    min-height: auto;
  }
}
.h6-hero-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 30px;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 575px) {
  .h6-hero-bottom {
    gap: 15px;
    padding-top: 50px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media (max-width: 575px) {
  .h6-hero-bottom {
    padding-top: 40px;
  }
}
.h6-hero-history {
  max-width: 348px;
}
.h6-hero-history-title {
  padding-bottom: 15px;
  margin-bottom: 15px;
  position: relative;
  z-index: 0;
}
.h6-hero-history-title::after,
.h6-hero-history-title::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--tj-color-border-1);
  position: absolute;
  inset-inline-start: 0;
  bottom: 0;
  -webkit-transform: translateY(50%);
  -ms-transform: translateY(50%);
  transform: translateY(50%);
  z-index: -2;
}
.h6-hero-history-title:after {
  width: 32px;
  height: 3px;
  background-color: var(--tj-color-theme-primary);
}
.h6-hero-card-wrapper {
  position: relative;
  z-index: 0;
  max-width: 315px;
  padding: 15px;
  background-color: var(--tj-color-common-white);
  border-radius: 12px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h6-hero-card-wrapper {
    max-width: 250px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-hero-card-wrapper {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: auto;
    margin-inline-end: auto;
  }
}
.h6-hero-card-wrapper .swiper-pagination-area {
  position: absolute;
  inset-inline-start: auto;
  inset-inline-end: 15px;
  bottom: 20px;
  text-align: end;
  line-height: 0;
  margin-top: 0;
  z-index: 1;
}
.h6-hero-card-wrapper .swiper-pagination-area .swiper-pagination-bullet {
  width: 8px;
}
.h6-hero-card-wrapper .swiper-pagination-area .swiper-pagination-bullet-active {
  width: 8px;
}
.h6-hero-card-banner {
  border-radius: 12px;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.h6-hero-card-banner::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.3;
  z-index: 1;
}
.h6-hero-card-video {
  width: 60px;
  height: 60px;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid var(--tj-color-grey-3);
  position: absolute;
  z-index: 2;
  inset-inline-start: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  -webkit-animation: pulse4 1.3s ease-out infinite;
  animation: pulse4 1.3s ease-out infinite;
}
.h6-hero-card-video i {
  color: var(--tj-color-common-white);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-padding-start: 4px;
  padding-inline-start: 4px;
}
.h6-hero-card-video:hover i {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
.h6-hero-card-content {
  padding: 15px 5px 5px;
  font-weight: var(--tj-fw-sbold);
}
.h6-hero-card-title {
  margin: 0;
  opacity: 0;
  -webkit-transform: translateY(10%);
  -ms-transform: translateY(10%);
  transform: translateY(10%);
  -webkit-transition: 0.3s 0.6s;
  transition: 0.3s 0.6s;
}
.h6-hero-card-title a:hover {
  color: var(--tj-color-theme-primary);
}
.h6-hero-card-wrapper .swiper-slide-active .h6-hero-card-title {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  max-width: 207px;
}
.h6-hero .banner-left-box {
  border-radius: 16px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-hero .banner-left-box {
    border-radius: 14px;
  }
}

/* !END: Hero CSS */
/**----------------------------------------
START: Choose CSS
----------------------------------------*/
.h6-choose {
  overflow: hidden;
}
.h6-choose-box .choose-icon {
  border-radius: 100%;
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  font-size: 65px;
  max-width: 90px;
  height: 90px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}
.h6-choose-box .choose-icon i {
  width: 42px;
}
.h6-choose-box .choose-icon .tji-support {
  -webkit-margin-start: -8px;
  margin-inline-start: -8px;
  margin-top: -3px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-choose-box .choose-icon {
    max-width: 80px;
    height: 80px;
    font-size: 56px;
  }
  .h6-choose-box .choose-icon i {
    width: 36px;
  }
}
.h6-choose-box:hover {
  background-color: var(--tj-color-common-white);
}
.h6-choose-box:hover .title {
  color: var(--tj-color-heading-primary);
}
.h6-choose-box:hover .desc {
  color: var(--tj-color-text-body);
}

/* !END: Choose CSS */
/**----------------------------------------
START: Home 5 About CSS
----------------------------------------*/
.h6-about {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.h6-about-content.about-content-area {
  background-color: transparent;
  max-width: 561px;
  padding: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-about-content.about-content-area {
    max-width: 100%;
  }
}
.h6-about-content .sec-heading.style-2 .sub-title {
  background-color: var(--tj-color-grey-3);
}
.h6-about-content .sec-title {
  color: var(--tj-color-common-white);
  margin-bottom: 16px;
}
.h6-about-content .desc {
  color: var(--tj-color-text-body-2);
  margin-bottom: 0;
}
.h6-about-funfact-wrapper {
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  width: 100%;
  border-radius: 8px;
  width: 100%;
  margin-bottom: 30px;
  position: relative;
  z-index: 0;
}
.h6-about-funfact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 30px 26px;
  width: 100%;
}
@media (max-width: 575px) {
  .h6-about-funfact {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 20px 15px 26px;
  }
}
.h6-about-funfact .countup-item {
  width: 50%;
  padding: 0;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.h6-about-funfact .countup-item:not(:last-child) {
  -webkit-padding-end: 45px;
  padding-inline-end: 45px;
}
.h6-about-funfact .countup-item:not(:first-child) {
  -webkit-padding-start: 30px;
  padding-inline-start: 30px;
  position: relative;
  z-index: 0;
}
.h6-about-funfact .countup-item:not(:first-child)::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 52%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 0;
  height: 88%;
  -webkit-border-end: 1px dashed var(--tj-color-border-3);
  border-inline-end: 1px dashed var(--tj-color-border-3);
}
.h6-about-funfact .countup-item .count-text {
  max-width: 205px;
  color: var(--tj-color-text-body-2);
}
.h6-about-funfact .countup-item .inline-content {
  margin-bottom: 15px;
}
@media (max-width: 575px) {
  .h6-about-funfact .countup-item .inline-content {
    margin-bottom: 5px;
  }
}
@media (max-width: 575px) {
  .h6-about-funfact .countup-item {
    width: 100%;
    text-align: start;
  }
  .h6-about-funfact .countup-item:not(:last-child) {
    -webkit-padding-end: 0;
    padding-inline-end: 0;
    padding-bottom: 20px;
  }
  .h6-about-funfact .countup-item:not(:first-child) {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    padding-top: 15px;
  }
  .h6-about-funfact .countup-item:not(:first-child)::after {
    inset-inline-start: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    height: 0;
    -webkit-border-end: 0;
    border-inline-end: 0;
    border-top: 1px dashed var(--tj-color-border-3);
  }
}
.h6-about-funfact-shape {
  position: absolute;
  bottom: 0;
  inset-inline-end: 0;
  z-index: -1;
  border-radius: 8px;
  height: 100%;
  overflow: hidden;
}
.h6-about-funfact-shape img {
  height: 100%;
}
.h6-about-img {
  -webkit-margin-start: 60px;
  margin-inline-start: 60px;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h6-about-img {
    -webkit-margin-start: 15px;
    margin-inline-start: 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-about-img {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    margin-top: 50px;
  }
}
.h6-about-box {
  inset-inline-start: 25px;
  bottom: 25px;
  padding: 0;
  background-color: transparent;
  max-width: 248px;
}
.h6-about-box::before,
.h6-about-box::after {
  display: none;
}
.h6-about-box .customers-box {
  border-radius: 10px;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}
.h6-about-box .customers-box .customers-text {
  margin-top: 24px;
  color: var(--tj-color-common-white);
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
}

/* !END: Home 5 About CSS  */
/**----------------------------------------
START: Service CSS
----------------------------------------*/
.h6-service-item {
  height: 100%;
  padding: 15px;
  padding-bottom: 0;
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  overflow: hidden;
}
.h6-service-item .h6-service-thumb {
  min-height: 280px;
  overflow: hidden;
  position: relative;
  border-radius: 10px;
}
.h6-service-item .h6-service-thumb img {
  width: 100%;
  min-height: 280px;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition:
    transform 500ms,
    -webkit-transform 500ms;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  -webkit-transform: perspective(0) rotateX(0) rotateY(0) scaleX(1) scaleY(1);
  transform: perspective(0) rotateX(0) rotateY(0) scaleX(1) scaleY(1);
  border-radius: 10px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 575px) {
  .h6-service-item .h6-service-thumb {
    min-height: 240px;
  }
  .h6-service-item .h6-service-thumb img {
    min-height: 240px;
  }
}
.h6-service-item .h6-service-content {
  padding: 25px 15px 30px;
  height: 100%;
}
.h6-service-item .h6-service-content .title {
  font-weight: var(--tj-fw-sbold);
  margin: 0;
  width: calc(100% - 50px);
}
.h6-service-item .h6-service-content .title a:hover {
  color: var(--tj-color-theme-primary);
}
.h6-service-item .h6-service-content .desc {
  margin-top: 15px;
}
.h6-service-item .h6-service-content .desc:last-of-type {
  margin-bottom: 0;
}
.h6-service-item .h6-service-content .text-btn .btn-icon {
  width: 40px;
  height: 40px;
}
.h6-service-item .h6-service-index {
  color: var(--tj-color-text-body-3);
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 16px;
}
.h6-service-item:hover .h6-service-thumb img {
  -webkit-transform: perspective(400px) rotateX(0.09deg) rotateY(0) scale(1.1);
  transform: perspective(400px) rotateX(0.09deg) rotateY(0) scale(1.1);
}
.h6-service-title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
}

/* !END: Service CSS */
/* START: Case Study CSS */
.h6-project {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.h6-project .heading-wrap-content {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.h6-project .sec-heading.style-2 .sub-title {
  background-color: var(--tj-color-grey-3);
}
.h6-project .sec-heading.style-2 .sec-title {
  color: var(--tj-color-common-white);
}
.h6-project-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  padding: 0 18px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-project-inner {
    gap: 20px;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-project-inner {
    gap: 15px;
    padding: 0 3px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-project-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.h6-project-item {
  width: 184px;
  height: 580px;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  border-radius: 10px;
}
@media (min-width: 1921px) {
  .h6-project-item {
    width: 13%;
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-project-item {
    height: 400px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-project-item {
    width: 100%;
    height: 300px;
  }
}
.h6-project-item-inner {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  height: 100%;
  min-height: 100%;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  z-index: 0;
  overflow: hidden;
}
.h6-project-item-inner::after {
  content: " ";
  width: 100%;
  height: 100%;
  background: rgba(12, 30, 33, 0.5);
  position: absolute;
  inset-inline-start: 0;
  bottom: 0;
  opacity: 0;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  z-index: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-project-item-inner::after {
    opacity: 1;
  }
}
.h6-project-item .project-content {
  position: absolute;
  inset-inline-start: 0;
  bottom: 0;
  width: 100%;
  padding: 30px;
  z-index: 3;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-transition: 0.4s 0.3s;
  transition: 0.4s 0.3s;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h6-project-item .project-content {
    padding: 20px 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h6-project-item .project-content {
    padding: 20px 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-project-item .project-content {
    padding: 20px 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-project-item .project-content {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}
@media (max-width: 575px) {
  .h6-project-item .project-content {
    padding: 15px 15px;
  }
}
.h6-project-item .project-content .categories a {
  background-color: rgba(255, 255, 255, 0.1);
  color: var(--tj-color-common-white);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}
.h6-project-item .project-content .categories a:hover {
  background-color: var(--tj-color-theme-primary);
}
.h6-project-item .project-content .project-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 18px;
  gap: 15px;
}
.h6-project-item .project-content .project-text .title {
  color: var(--tj-color-common-white);
  max-width: 351px;
  min-width: 351px;
  width: 100%;
  margin-bottom: 0;
}
.h6-project-item .project-content .project-text .title a {
  color: var(--tj-color-common-white);
}
.h6-project-item .project-content .project-text .title a:hover {
  opacity: 0.8;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-project-item .project-content .project-text .title {
    min-width: 284px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h6-project-item .project-content .project-text .title {
    font-size: 20px;
    max-width: 200px;
    min-width: auto;
  }
}
@media (max-width: 575px) {
  .h6-project-item .project-content .project-text .title {
    font-size: 20px;
    width: calc(100% - 70px);
    min-width: auto;
  }
}
@media (max-width: 575px) {
  .h6-project-item .project-content .project-text {
    margin-top: 12px;
  }
}
.h6-project-item .project-content .project-btn {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.1);
  border: 2px solid rgba(255, 255, 255, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 22px;
  backdrop-filter: blur(15px);
  opacity: 1;
}
.h6-project-item .project-content .project-btn i {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-normal);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.h6-project-item .project-content .project-btn:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}
.h6-project-item .project-content .project-btn:hover i {
  color: var(--tj-color-common-white);
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h6-project-item .project-content .project-btn {
    width: 50px;
    height: 50px;
    font-size: 18px;
  }
}
@media (max-width: 575px) {
  .h6-project-item .project-content .project-btn {
    width: 55px;
    height: 55px;
    font-size: 18px;
  }
}
.h6-project-item:hover .project-content {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
}
.h6-project-item.active {
  width: 759px;
  place-content: unset;
}
@media (min-width: 1921px) {
  .h6-project-item.active {
    width: 48%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-project-item.active {
    width: 100%;
    height: 300px;
  }
}
.h6-project-item.active .h6-project-item-inner::after {
  opacity: 1;
}
.h6-project-item.active .h6-project-item-inner .project-content {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* !END: Case Study CSS */
/**----------------------------------------
START: Working process CSS
----------------------------------------*/
.h6-working-process {
  position: relative;
  z-index: 1;
}
.h6-working-process .content-wrap .tj-primary-btn {
  margin-top: 24px;
}
.h6-working-process .content-wrap {
  max-width: 550px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-working-process .content-wrap {
    max-width: 100%;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
.h6-working-process-inner {
  padding: 60px 50px 75px;
  border-radius: 10px;
  background-color: var(--tj-color-common-white);
  -webkit-margin-end: 10px;
  margin-inline-end: 10px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-working-process-inner {
    padding: 50px 40px 65px;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-working-process-inner {
    margin-top: 45px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-working-process-inner {
    padding: 40px 15px 55px;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    margin-top: 45px;
  }
}
.h6-working-process-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 45px;
  position: relative;
  z-index: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-working-process-wrapper {
    gap: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-working-process-wrapper {
    gap: 25px;
  }
}
.h6-working-process-wrapper::after {
  content: "";
  position: absolute;
  inset-inline-start: 34px;
  top: 0;
  width: 0;
  height: 100%;
  -webkit-border-end: 1px dashed var(--tj-color-border-1);
  border-inline-end: 1px dashed var(--tj-color-border-1);
  z-index: -1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-working-process-wrapper::after {
    inset-inline-start: 29px;
  }
}
.h6-working-process-item {
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  position: static;
  padding: 0;
  background-color: transparent;
  border-radius: 0;
  -webkit-padding-start: 95px;
  padding-inline-start: 95px;
  position: relative;
  z-index: 0;
  max-width: 100%;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h6-working-process-item {
    -webkit-padding-start: 75px;
    padding-inline-start: 75px;
  }
}
@media (max-width: 575px) {
  .h6-working-process-item {
    -webkit-padding-start: 70px;
    padding-inline-start: 70px;
  }
}
.h6-working-process-item:not(:last-child)::after {
  display: none;
}
.h6-working-process-item .process-step {
  background-image: none;
  background-clip: inherit;
  background-color: var(--tj-color-theme-bg);
  -webkit-text-fill-color: inherit;
  font-size: 24px;
  -webkit-transform: 0.4s;
  -ms-transform: 0.4s;
  transform: 0.4s;
  line-height: 1;
  width: 70px;
  height: 70px;
  border-radius: 100%;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  outline: 15px solid var(--tj-color-common-white);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.h6-working-process-item .process-step span {
  color: var(--tj-color-heading-primary);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-working-process-item .process-step {
    font-size: 22px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-working-process-item .process-step {
    font-size: 20px;
    width: 60px;
    height: 60px;
    outline-width: 10px;
  }
}
.h6-working-process-item .process-content .title {
  margin-top: 15px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-working-process-item .process-content .title {
    margin-top: 10px;
  }
}
.h6-working-process-item.active .process-step {
  background-color: var(--tj-color-theme-primary);
}
.h6-working-process-item.active .process-step span {
  color: var(--tj-color-common-white);
}

/* !END: Working process CSS */
/**----------------------------------------
START: Award CSS
----------------------------------------*/
.tj-award-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 15px;
  position: relative;
  z-index: 0;
}
.tj-award-wrapper .active-bg {
  top: 0px;
  bottom: 0px;
  inset-inline-start: 0px;
  inset-inline-end: 0px;
  position: absolute;
  opacity: 0;
  -webkit-transition: 0.6s;
  transition: 0.6s;
  background-color: var(--tj-color-theme-primary);
  border-radius: 8px;
  z-index: 1;
}
.tj-award-wrapper:has(.tj-award-item:hover) .active-bg {
  opacity: 1;
}
.tj-award-title,
.tj-award-date,
.tj-award-index,
.tj-award-result {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.tj-award-item {
  background-color: var(--tj-color-common-white);
  border-radius: 8px;
}
.tj-award-item-inner {
  padding: 35px;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
@media (max-width: 575px) {
  .tj-award-item-inner {
    padding: 30px 15px;
  }
}
.tj-award-item-inner .tj-award-img {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.tj-award-item-inner .tj-award-img img {
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.tj-award-item-inner .tj-award-img img:first-child {
  opacity: 1;
}
.tj-award-item-inner .tj-award-img img:nth-child(2) {
  position: absolute;
  width: 100%;
  inset-inline-start: 0;
  top: 0;
  z-index: -1;
}
.tj-award-item-inner .tj-award-img-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-award-item-inner .tj-award-img-wrapper {
    gap: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-award-item-inner .tj-award-img-wrapper {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
}
.tj-award-item-inner .tj-award-title-wrapper {
  -webkit-padding-start: 40px;
  padding-inline-start: 40px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-award-item-inner .tj-award-title-wrapper {
    -webkit-padding-start: 30px;
    padding-inline-start: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-award-item-inner .tj-award-title-wrapper {
    -webkit-padding-start: 12px;
    padding-inline-start: 12px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-award-item-inner .tj-award-title-wrapper {
    margin-top: 10px;
  }
}
.tj-award-item-inner .tj-award-result {
  color: var(--tj-colot-theme-dark-3);
}
.tj-award-item-inner .tj-award-date-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-award-item-inner .tj-award-date-wrapper {
    -webkit-padding-start: 30px;
    padding-inline-start: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-award-item-inner .tj-award-date-wrapper {
    margin-top: 12px;
  }
}
.tj-award-item-inner:hover .tj-award-title,
.tj-award-item-inner:hover .tj-award-date,
.tj-award-item-inner:hover .tj-award-index,
.tj-award-item-inner:hover .tj-award-result {
  color: var(--tj-color-common-white);
}
.tj-award-item-inner:hover .tj-award-img img:first-child {
  opacity: 0;
}

/* !END: Award CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.h6-testimonial {
  background-color: var(--tj-color-theme-dark);
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
}
.h6-testimonial .container {
  --bs-gutter-x: 30px;
}
.h6-testimonial .container .row {
  --bs-gutter-x: 30px;
}
@media (max-width: 575px) {
  .h6-testimonial .container {
    --bs-gutter-x: 24px;
  }
  .h6-testimonial .container .row {
    --bs-gutter-x: 24px;
  }
}
.h6-testimonial .sec-heading.style-2 .sub-title {
  background-color: var(--tj-color-grey-3);
}
.h6-testimonial .sec-heading.style-2 .sec-title {
  color: var(--tj-color-common-white);
}
.h6-testimonial .content-wrap {
  max-width: 500px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h6-testimonial .content-wrap {
    max-width: 100%;
  }
}
.h6-testimonial .content-wrap .desc {
  color: var(--tj-color-text-body-2);
}
.h6-testimonial .content-wrap .tj-primary-btn {
  margin-top: 24px;
}
.h6-testimonial-banner {
  border-radius: 12px;
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-bottom: 60px;
}
.h6-testimonial-banner img {
  width: 100%;
}
.h6-testimonial-banner::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.3;
  z-index: 1;
}
.h6-testimonial-banner-video {
  width: 60px;
  height: 60px;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid var(--tj-color-grey-3);
  position: absolute;
  z-index: 2;
  inset-inline-start: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  -webkit-animation: pulse4 1.3s ease-out infinite;
  animation: pulse4 1.3s ease-out infinite;
}
.h6-testimonial-banner-video i {
  color: var(--tj-color-common-white);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-padding-start: 4px;
  padding-inline-start: 4px;
}
.h6-testimonial-banner-video:hover i {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
.h6-testimonial-wrapper {
  height: 750px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-testimonial-wrapper {
    margin-top: 50px;
    height: auto;
  }
}
@media (max-width: 575px) {
  .h6-testimonial-wrapper {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.h6-testimonial-wrapper .swiper {
  overflow: visible;
  height: 100%;
  -webkit-mask-image: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(5%, rgba(12, 30, 33, 0)),
    color-stop(21%, #0c1e21)
  );
  -webkit-mask-image: linear-gradient(
    0deg,
    rgba(12, 30, 33, 0) 5%,
    #0c1e21 21%
  );
  mask-image: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(5%, rgba(12, 30, 33, 0)),
    color-stop(21%, #0c1e21)
  );
  mask-image: linear-gradient(0deg, rgba(12, 30, 33, 0) 5%, #0c1e21 21%);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h6-testimonial-wrapper .swiper {
    -webkit-mask-image: -webkit-gradient(
      linear,
      right top,
      left top,
      from(rgba(12, 30, 33, 0)),
      color-stop(20%, #0c1e21)
    );
    -webkit-mask-image: linear-gradient(
      -90deg,
      rgba(12, 30, 33, 0) 0%,
      #0c1e21 20%
    );
    mask-image: -webkit-gradient(
      linear,
      right top,
      left top,
      from(rgba(12, 30, 33, 0)),
      color-stop(20%, #0c1e21)
    );
    mask-image: linear-gradient(-90deg, rgba(12, 30, 33, 0) 0%, #0c1e21 20%);
  }
}
@media (max-width: 575px) {
  .h6-testimonial-wrapper .swiper {
    -webkit-mask-image: none;
    mask-image: none;
  }
}
.h6-testimonial-wrapper .swiper-slide {
  height: auto;
}
.h6-testimonial-wrapper .testimonial-item {
  background-color: var(--tj-color-grey-3);
  padding: 40px 30px 35px;
  height: 100%;
  border-radius: 12px;
}
.h6-testimonial-wrapper .testimonial-item .testimonial-author .title {
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-common-white);
}
.h6-testimonial-wrapper .testimonial-item .desc {
  font-size: 24px;
  line-height: 1.3333;
  color: var(--tj-color-text-body-2);
  font-weight: var(--tj-fw-medium);
}
.h6-testimonial-wrapper .testimonial-item .desc p {
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h6-testimonial-wrapper .testimonial-item .desc {
    font-size: 22px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-testimonial-wrapper .testimonial-item .desc {
    font-size: 20px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h6-testimonial-wrapper .testimonial-item {
    padding: 35px 23px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-testimonial-wrapper .testimonial-item {
    padding: 30px 20px;
  }
}
.h6-testimonial-wrapper .h6-testimonial-author-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 30px;
  margin-bottom: 25px;
  border-bottom: 1px dashed var(--tj-color-border-2);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-testimonial-wrapper .h6-testimonial-author-wrapper {
    padding-top: 0;
    padding-bottom: 20px;
    margin-bottom: 16px;
  }
}
.h6-testimonial-wrapper .h6-testimonial-author-wrapper .testimonial-author {
  padding-top: 0;
  border-top: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h6-testimonial-wrapper .h6-testimonial-author-wrapper .testimonial-author {
    padding-top: 0;
  }
}
.h6-testimonial-wrapper
  .h6-testimonial-author-wrapper
  .testimonial-author
  .designation {
  color: var(--tj-color-text-body-2);
}

/* !END: Testimonial CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.h6-blog-wrapper .blog-date {
  top: auto;
  inset-inline-start: auto;
  bottom: 15px;
  inset-inline-end: 15px;
}

/* !END: Blog CSS */
/**----------------------------------------
START: Client CSS
----------------------------------------*/
.h6-client {
  margin: 0 15px 15px;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
  -webkit-padding-end: 0;
  padding-inline-end: 0;
}
.h6-client .container-fluid {
  --bs-gutter-x: 0;
}
.h6-client .container-fluid .row {
  --bs-gutter-x: 0;
}
.h6-client-title-wrapper {
  text-align: center;
  padding: 25px 15px 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media (max-width: 575px) {
  .h6-client-title-wrapper {
    padding: 15px 15px 35px;
  }
}
.h6-client-title {
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-bold);
  line-height: 1.57;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
}
@media (max-width: 575px) {
  .h6-client-title {
    gap: 0px;
  }
}
.h6-client-title::after,
.h6-client-title::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: var(--tj-color-common-white);
  border-radius: 100%;
  line-height: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.h6-client-slider .client-logo {
  background: var(--tj-color-grey-3);
  border: 0;
}
.h6-client-slider .client-logo img {
  opacity: 1;
}
.h6-client-slider .client-logo:hover img {
  -webkit-animation: gelatine 0.6s;
  animation: gelatine 0.6s;
}

/* !END: Client CSS */
/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.h7-header.header-area.header-absolute {
  background: transparent;
  padding: 5px 0;
  z-index: 1001;
  top: 15px;
}
.h7-header.header-area.header-absolute .header-wrapper {
  background: transparent;
  border-radius: 0;
  backdrop-filter: blur(0);
  padding: 0 5px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-header.header-area.header-absolute .header-wrapper {
    padding: 0 1px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-header.header-area.header-absolute .header-wrapper {
    padding: 15px 0;
  }
}
.h7-header.header-area.header-absolute .search_popup {
  border-start-start-radius: 0;
  border-start-end-radius: 0;
  inset-inline-start: 5px;
  width: calc(100% - 10px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-header.header-area.header-absolute .search_popup {
    inset-inline-start: 1px;
    width: calc(100% - 2px);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-header.header-area.header-absolute {
    top: 12px;
    width: calc(100% - 48px);
    padding: 5px 0;
  }
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.tj-footer-section.h7-footer {
  padding-top: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h7-footer {
    padding-top: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h7-footer {
    padding-top: 70px;
  }
}
.tj-footer-section.h7-footer .h7-footer-main {
  padding-top: 0;
}
.tj-footer-section.h7-footer .h7-footer-copyright {
  border-top: 1px dashed var(--tj-color-border-1);
  padding: 30px 0;
}
.tj-footer-section.h7-footer .h7-footer-copyright .copyright-content-area {
  border: 0;
  padding: 0;
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h7-hero {
  position: relative;
  margin: 0 15px 0 15px;
  border-radius: 16px;
  overflow: hidden;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-hero {
    border-radius: 12px;
    margin: 0 12px 0;
  }
}
.h7-hero-inner {
  background: var(--tj-color-theme-dark);
  position: relative;
}
.h7-hero-inner::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 90px;
  width: 100%;
  height: 1px;
  background-color: var(--tj-color-border-2);
  z-index: 998;
}
.h7-hero-bg-image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: absolute;
  mix-blend-mode: Luminosity;
}
.h7-hero-item {
  min-height: 92.5vh;
  background-color: #0c1e21;
  position: relative;
}
.h7-hero-item::after {
  position: absolute;
  content: "";
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(20%, rgb(12, 30, 33)),
    color-stop(60%, rgba(12, 30, 33, 0.4)),
    to(rgba(12, 30, 33, 0.1))
  );
  background: linear-gradient(
    90deg,
    rgb(12, 30, 33) 20%,
    rgba(12, 30, 33, 0.4) 60%,
    rgba(12, 30, 33, 0.1) 100%
  );
}
.h7-hero-item-wrapper {
  padding: 242px 0 30px;
  min-height: 883px;
  position: relative;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h7-hero-item-wrapper {
    -webkit-padding-start: 50px;
    padding-inline-start: 50px;
    padding-top: 170px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h7-hero-item-wrapper {
    padding: 170px 0 280px 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-hero-item-wrapper {
    padding: 170px 0 280px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h7-hero-item-wrapper {
    padding: 170px 0 0 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-hero-item-wrapper {
    padding: 150px 0 0 0;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h7-hero-item {
    height: 95vh;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h7-hero-item {
    min-height: auto;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-hero-item {
    min-height: 840px;
  }
}
.h7-hero-content {
  max-width: 660px;
  position: relative;
  z-index: 1000;
  max-width: 898px;
  margin: 0 auto;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-hero-content {
    margin: 0;
  }
}
.h7-hero-content .h7-hero-title {
  color: var(--tj-color-common-white);
  font-size: 140.59px;
  line-height: 1;
  letter-spacing: -0.03em;
  margin-bottom: 0;
}
.h7-hero-content .h7-hero-title span {
  width: 100%;
  display: block;
}
.h7-hero-content .h7-hero-title span:nth-child(2) {
  text-align: end;
}
.h7-hero-content .h7-hero-title span:nth-child(3) {
  text-align: center;
}
.h7-hero-content .h7-hero-title span:has(img) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 10px;
}
.h7-hero-content .h7-hero-title span:has(img) img {
  width: 104px;
  height: 104px;
  -o-object-fit: cover;
  object-fit: cover;
  padding: 20px 19px 18px;
  background: linear-gradient(
    135deg,
    rgba(30, 138, 138, 0.3) 0%,
    rgba(30, 138, 138, 0) 50%,
    rgba(30, 138, 138, 0.3) 100%
  );
  border: 3px solid var(--tj-color-theme-primary);
  border: 2px solid var(--tj-color-border-5);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-hero-content .h7-hero-title span:has(img) img {
    width: 70px;
    height: 70px;
    padding: 15px 14px 13px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-hero-content .h7-hero-title {
    font-size: 130px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h7-hero-content .h7-hero-title {
    font-size: 110px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h7-hero-content .h7-hero-title {
    font-size: 70px;
  }
}
@media (max-width: 575px) {
  .h7-hero-content .h7-hero-title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h7-hero-content {
    max-width: 720px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-hero-content {
    max-width: 708px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h7-hero-content {
    max-width: 640px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h7-hero-content {
    max-width: 450px;
  }
}
.h7-hero-banner {
  position: absolute;
  inset-inline-end: -17%;
  bottom: 0;
  z-index: 9;
  pointer-events: none;
}
@media only screen and (min-width: 1765px) {
  .h7-hero-banner {
    z-index: 999;
  }
}
@media only screen and (min-width: 1601px) and (max-width: 1764px) {
  .h7-hero-banner {
    inset-inline-end: -10%;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h7-hero-banner {
    inset-inline-end: -2%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h7-hero-banner {
    position: relative;
    inset-inline-end: -9%;
    margin-top: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-hero-banner {
    position: relative;
    inset-inline-end: -3%;
    margin-top: 40px;
  }
}
.h7-hero-shape {
  position: absolute;
  top: 10px;
  z-index: 1;
}
.h7-hero-shape-2 {
  inset-inline-end: 0;
}
.h7-hero .circle-text-wrap {
  z-index: 1000;
  background-color: transparent;
  backdrop-filter: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h7-hero .circle-text-wrap {
    bottom: 48px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-hero .circle-text-wrap {
    bottom: 164px;
  }
}
.h7-hero .circle-text-wrap .circle-icon {
  -webkit-transform: translate(-50%, -50%) rotate(-135deg);
  -ms-transform: translate(-50%, -50%) rotate(-135deg);
  transform: translate(-50%, -50%) rotate(-135deg);
}
.h7-hero-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  inset-inline-start: 0;
  bottom: 60px;
  z-index: 1000;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h7-hero-box {
    inset-inline-start: 3%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-hero-box {
    inset-inline-start: 10px;
  }
}
.h7-hero-box .star-ratings {
  font-size: 19px;
}
.h7-hero-box .customers-text {
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-common-white);
  margin-top: 8px;
  letter-spacing: -0.03em;
}
@media (max-width: 575px) {
  .h7-hero-box .customers-text {
    font-size: 18px;
  }
}

/* !END: Hero CSS */
/**----------------------------------------
START: Choose CSS
----------------------------------------*/
.h7-choose-item-wrapper {
  --bs-gutter-x: 0;
  border-radius: 12px;
  background-color: var(--tj-color-common-white);
}
.h7-choose-item:not(:last-child) {
  -webkit-border-end: 2px solid var(--tj-color-grey-1);
  border-inline-end: 2px solid var(--tj-color-grey-1);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-choose-item:not(:last-child) {
    -webkit-border-end: 0;
    border-inline-end: 0;
    border-bottom: 2px solid var(--tj-color-grey-1);
  }
}
.h7-choose-box {
  text-align: center;
  border-radius: 0;
  background-color: transparent;
}
.h7-choose-box .choose-content {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.h7-choose-box .choose-icon {
  background-color: var(--tj-color-grey-1);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  width: 100%;
  margin-bottom: 30px;
}
.h7-choose-box .choose-icon i {
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  color: var(--tj-color-theme-primary);
}
.h7-choose-box .text-btn:hover .btn-icon {
  background-color: var(--tj-color-theme-primary);
}
.h7-choose-box:hover .choose-icon {
  background-color: var(--tj-color-theme-primary);
}
.h7-choose-box:hover .choose-icon i {
  color: var(--tj-color-common-white);
}
.h7-choose-box:hover .btn-text {
  color: var(--tj-color-heading-primary);
}

/* !END: Choose CSS */
/**----------------------------------------
START: Home 7 About CSS
----------------------------------------*/
.h7-about {
  background-color: var(--tj-color-theme-bg);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  padding-bottom: 15px;
  z-index: 1;
}
.h7-about .sec-heading.style-7 {
  margin-bottom: 100px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-about .sec-heading.style-7 {
    margin-bottom: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-about .sec-heading.style-7 {
    margin-bottom: 60px;
  }
}
.h7-about .sec-heading.style-7 .sec-title {
  margin-bottom: 35px;
}
.h7-about .sec-heading.style-7 .sub-title {
  margin-top: 12px;
}
.h7-about-content-inner {
  max-width: 755px;
}
.h7-about-card {
  margin-bottom: 30px;
}
.h7-about-card-icon {
  border-radius: 100%;
  background-color: var(--tj-color-common-white);
  color: var(--tj-color-theme-primary);
  font-size: 48px;
  max-width: 80px;
  width: 100%;
  height: 80px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  margin-bottom: 24px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-about-card-icon {
    max-width: 80px;
    height: 80px;
    font-size: 56px;
  }
}
/*
.h7-about-card .desc {
  margin-bottom: 0;
}
.h7-about-banner {
  border-radius: 12px;
  overflow: hidden;
}
.h7-about-banner img {
  width: 100%;
  border-radius: 12px;
}
.h7-about-counter-wrapper .style-2 {
  border-radius: 10px;
  overflow: hidden;
  min-height: 345px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.h7-about-counter-wrapper .style-2.countup-item .counter-title {
  font-weight: var(--tj-fw-medium);
  width: 100%;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--tj-color-border-1);
}
.h7-about-counter-wrapper .style-2.countup-item .steps {
  color: var(--tj-color-text-body-3);
}
.h7-about-counter-wrapper .style-2.countup-item .count-text {
  font-size: 18px;
  font-weight: var(--tj-fw-regular);
  letter-spacing: 0;
  line-height: 1.44;
}
.h7-about-counter-wrapper .style-2.img-box {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.h7-about-counter-wrapper .style-2.customers-box .customers-text {
  font-size: 32px;
  font-weight: var(--tj-fw-medium);
  line-height: 1.25;
  max-width: 343px;
  letter-spacing: -0.03em;
}
.h7-about-counter-wrapper .style-2.customers-box .customers-bg {
  opacity: 0.5;
}
.h7-about-counter-wrapper .style-2.customers-box .text-btn {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.h7-about-counter-wrapper .style-2.customers-box .text-btn .btn-text {
  color: var(--tj-color-common-white);
}
.h7-about-counter-wrapper .style-2.customers-box .text-btn .btn-icon {
  background-color: var(--tj-color-heading-primary);
}
*/
/* !END: Home 7 About CSS  */
/**----------------------------------------
START: Service CSS
----------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-service .sec-heading.style-7 {
    margin-bottom: 18px;
  }
}
.h7-service .sec-heading.style-7 .sub-title {
  margin-top: 12px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-service .sec-heading.style-7 .sub-title {
    margin-top: 0;
  }
}
.h7-service .sec-heading.style-7 .sec-title-wrapper {
  max-width: 870px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-service .sec-heading.style-7 .sec-title-wrapper {
    max-width: 100%;
  }
}
.h7-service .sec-heading.style-7 .sec-title {
  max-width: 550px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-service .sec-heading.style-7 .sec-title {
    max-width: 100%;
  }
}
.h7-service-wrapper {
  max-width: 870px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-service-wrapper {
    max-width: 100%;
  }
}
.h7-service .section-desc-wrapper .desc {
  margin-bottom: 24px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-service .section-desc-wrapper {
    margin-bottom: 42px;
  }
  .h7-service .section-desc-wrapper .desc {
    margin-bottom: 22px;
  }
}
.h7-service-item {
  padding: 35px 30px;
  border-radius: 8px;
}
.h7-service-item:not(:last-child) {
  margin-bottom: 15px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-service-item {
    padding: 30px 20px;
  }
}
.h7-service-item .service-content-wrap {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.h7-service-item .service-content-wrap .service-title .title a:hover {
  color: var(--tj-color-theme-primary);
}
.h7-service-item .h7-service-action .text-btn {
  margin-top: 0;
}
@media (max-width: 575px) {
  .h7-service-item .h7-service-action .text-btn {
    margin-top: 12px;
    -webkit-margin-start: 85px;
    margin-inline-start: 85px;
  }
}
.h7-service-item .h7-service-action .text-btn .btn-icon {
  width: 40px;
  height: 40px;
  font-size: 24px;
  background-color: transparent;
  border: 1px solid var(--tj-color-border-1);
}
.h7-service-item .h7-service-action .text-btn .btn-icon i {
  color: var(--tj-color-theme-dark);
}
.h7-service-item:hover .service-icon {
  -webkit-animation: gelatine 0.6s;
  animation: gelatine 0.6s;
}
.h7-service-item:hover .h7-service-action .text-btn .btn-icon {
  background-color: var(--tj-color-theme-dark);
  border: 1px solid var(--tj-color-theme-dark);
}
.h7-service-item:hover .h7-service-action .text-btn .btn-icon i {
  color: var(--tj-color-common-white);
}

/* !END: Service CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.h7-testimonial {
  background-color: var(--tj-color-theme-dark);
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
}
.h7-testimonial .sec-heading.style-2 .sub-title {
  background-color: var(--tj-color-grey-3);
  color: var(--tj-color-grey-1);
}
.h7-testimonial .sec-heading.style-2 .sec-title {
  color: var(--tj-color-common-white);
}
.h7-testimonial-wrapper {
  position: relative;
  z-index: 0;
}
.h7-testimonial-wrapper .slider-next,
.h7-testimonial-wrapper .slider-prev {
  border-color: var(--tj-color-border-2);
  background-color: var(--tj-color-theme-dark);
  position: absolute;
  top: calc(50% - 31.5px);
  inset-inline-start: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  z-index: 1;
  opacity: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-testimonial-wrapper .slider-next,
  .h7-testimonial-wrapper .slider-prev {
    top: calc(50% - 15px);
    display: none;
  }
}
.h7-testimonial-wrapper .slider-next i,
.h7-testimonial-wrapper .slider-prev i {
  color: var(--tj-color-common-white);
}
.h7-testimonial-wrapper .slider-next:hover,
.h7-testimonial-wrapper .slider-prev:hover {
  background-color: var(--tj-color-theme-primary);
}
.h7-testimonial-wrapper .slider-next {
  inset-inline-start: 100%;
  -webkit-transform: translate(-100%, -50%);
  -ms-transform: translate(-100%, -50%);
  transform: translate(-100%, -50%);
}
.h7-testimonial-wrapper:hover .slider-next,
.h7-testimonial-wrapper:hover .slider-prev {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 1;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h7-testimonial-wrapper:hover .slider-next,
  .h7-testimonial-wrapper:hover .slider-prev {
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h7-testimonial-wrapper:hover .slider-next {
    -webkit-transform: translate(-100%, -50%);
    -ms-transform: translate(-100%, -50%);
    transform: translate(-100%, -50%);
  }
}
.h7-testimonial-wrapper .bg-shape-3 {
  bottom: 50%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, 50%);
  -ms-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}
.h7-testimonial-wrapper .testimonial-item {
  border-color: transparent;
  background-color: var(--tj-color-grey-3);
  padding: 30px 30px 35px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-testimonial-wrapper .testimonial-item {
    padding: 30px 20px;
  }
}
.h7-testimonial-wrapper .testimonial-item .testimonial-author {
  padding-top: 0;
  border-top: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.h7-testimonial-wrapper .testimonial-item .testimonial-author .author-inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-align: center;
}
.h7-testimonial-wrapper .testimonial-item .testimonial-author .author-img {
  width: 100px;
  height: 100px;
}
.h7-testimonial-wrapper .testimonial-item .testimonial-author .title {
  color: var(--tj-color-common-white);
}
.h7-testimonial-wrapper .testimonial-item .testimonial-author .designation {
  color: var(--tj-color-text-body-2);
}
.h7-testimonial-wrapper .testimonial-item .desc {
  color: var(--tj-color-grey-1);
  text-align: center;
}
.h7-testimonial-wrapper .testimonial-item .star-ratings {
  margin: 0 auto;
}
.h7-testimonial-wrapper .swiper-slide-active .testimonial-item {
  background-color: var(--tj-color-grey-3);
}

/* !END: Testimonial CSS */
/* START: Case Study CSS */
.h7-project .sec-heading.style-2 .tj-primary-btn {
  margin-top: 30px;
}
.h7-project-wrapper {
  padding: 0;
  max-width: 870px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-project-wrapper {
    max-width: 100%;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
.h7-project-wrapper .h4-project-item {
  margin-bottom: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-project-wrapper .h4-project-item {
    padding: 20px 20px 30px;
  }
}
.h7-project-wrapper .h4-project-item .project-content {
  padding-bottom: 0;
  padding-top: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-project-wrapper .h4-project-item .project-content {
    padding-top: 15px;
  }
}
.h7-project-wrapper .h4-project-item .project-content .project-text {
  margin-top: 0;
  gap: 20px 10px;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.h7-project-wrapper .h4-project-item .project-content .title {
  max-width: 504px;
  margin-bottom: 20px;
  font-weight: var(--tj-fw-medium);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-project-wrapper .h4-project-item .project-content .title {
    max-width: 100%;
    width: 100%;
  }
}
.h7-project-wrapper .h4-project-item .project-content .tji-icon-btn {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.h7-project-wrapper .h4-project-item:hover .project-content .tji-icon-btn {
  border-color: var(--tj-color-theme-primary);
  background-color: var(--tj-color-theme-primary);
}
.h7-project-wrapper .h4-project-item:hover .project-content .tji-icon-btn i {
  color: var(--tj-color-common-white);
}

/* !END: Case Study CSS */
/**----------------------------------------
START: Team CSS
----------------------------------------*/
.h7-team {
  background-color: var(--tj-color-theme-dark);
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
}
.h7-team .sec-heading.style-2 .sub-title {
  background-color: var(--tj-color-grey-3);
  color: var(--tj-color-grey-1);
}
.h7-team .sec-heading.style-2 .sec-title {
  color: var(--tj-color-common-white);
}
.h7-team-wrapper {
  -webkit-mask-image: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(2.91%, rgba(255, 255, 255, 0)),
    color-stop(30.6%, var(--tj-color-theme-dark)),
    color-stop(69.51%, var(--tj-color-theme-dark)),
    color-stop(97.03%, rgba(255, 255, 255, 0))
  );
  -webkit-mask-image: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 2.91%,
    var(--tj-color-theme-dark) 30.6%,
    var(--tj-color-theme-dark) 69.51%,
    rgba(255, 255, 255, 0) 97.03%
  );
  mask-image: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(2.91%, rgba(255, 255, 255, 0)),
    color-stop(30.6%, var(--tj-color-theme-dark)),
    color-stop(69.51%, var(--tj-color-theme-dark)),
    color-stop(97.03%, rgba(255, 255, 255, 0))
  );
  mask-image: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 2.91%,
    var(--tj-color-theme-dark) 30.6%,
    var(--tj-color-theme-dark) 69.51%,
    rgba(255, 255, 255, 0) 97.03%
  );
}
.h7-team-wrapper .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}
.h7-team-wrapper .swiper-slide {
  width: auto;
}
.h7-team-wrapper .h7-team-marquee:not(:first-child) {
  margin-top: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-team-wrapper .h7-team-marquee:not(:first-child) {
    margin-top: 20px;
  }
}
.h7-team-wrapper .team-item {
  width: 407px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 14px 14px 14px 34px;
  border-radius: 200px;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-team-wrapper .team-item {
    width: 300px;
    padding: 10px 10px 10px 24px;
  }
}
.h7-team-wrapper .team-item .team-content {
  margin-top: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.h7-team-wrapper .team-item .team-content .title {
  color: var(--tj-color-common-white);
  width: 100%;
}
.h7-team-wrapper .team-item .team-content .designation {
  color: var(--tj-color-text-body-2);
}
.h7-team-wrapper .team-item .team-img {
  width: 96.77px;
  height: 96.77px;
  border-radius: 100%;
  background-color: var(--tj-color-theme-dark-5);
  overflow: hidden;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-team-wrapper .team-item .team-img {
    width: 80px;
    height: 80px;
  }
}
.h7-team-wrapper .team-item .team-img::before,
.h7-team-wrapper .team-item .team-img::after {
  display: none;
}
.h7-team-wrapper .team-item:hover .team-img img {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
.h7-team-wrapper .h7-team-marquee:nth-child(2) .team-item {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  text-align: end;
}
.h7-team-wrapper .h7-team-marquee:nth-child(2) .team-content .title {
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
.h7-team .bg-shape-3 {
  bottom: 50%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, 50%);
  -ms-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}

/* !END: Team CSS */
/**----------------------------------------
START: FAQ CSS
----------------------------------------*/
.h7-faq {
  border-bottom: 1px dashed var(--tj-color-border-1);
}
.h7-faq .sec-heading.style-7 {
  max-width: 340px;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-faq .sec-heading.style-7 {
    margin-bottom: 40px;
  }
}
.h7-faq .sec-heading.style-7 .number {
  color: var(--tj-color-heading-primary);
  font-size: 20px;
  font-weight: var(--tj-fw-sbold);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-top: 40px;
  line-height: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-faq .sec-heading.style-7 .number {
    margin-top: 30px;
  }
}
.h7-faq .sec-heading.style-7 .number .call-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  font-size: 20px;
  height: 52px;
  width: 52px;
  border-radius: 50%;
  margin-bottom: 9px;
}
@media (max-width: 575px) {
  .h7-faq .sec-heading.style-7 .number .call-icon {
    font-size: 18px;
    height: 45px;
    width: 45px;
  }
}
.h7-faq .sec-heading.style-7 .number span:not(.call-icon) {
  position: relative;
}
.h7-faq .sec-heading.style-7 .number span:not(.call-icon)::after {
  content: "";
  position: absolute;
  bottom: -2px;
  inset-inline-end: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}
.h7-faq .sec-heading.style-7 .number:hover .call-icon {
  -webkit-animation: bellshake 0.5s linear;
  animation: bellshake 0.5s linear;
}
.h7-faq .sec-heading.style-7 .number:hover span::after {
  -webkit-animation: linehover 0.8s linear;
  animation: linehover 0.8s linear;
}
@media (max-width: 575px) {
  .h7-faq .sec-heading.style-7 .number {
    font-size: 18px;
  }
}
.h7-faq-wrapper {
  background-color: var(--tj-color-common-white);
  border-radius: 8px;
  overflow: hidden;
}
.h7-faq-wrapper.style-2 {
  padding-top: 0;
}
.h7-faq-wrapper.style-2 .accordion-item {
  margin-bottom: 0;
  border-top: 1px dashed var(--tj-color-border-1);
  border-radius: 0;
}
.h7-faq-wrapper.style-2 .accordion-item .accordion-body {
  margin-top: 0;
  padding-top: 15px;
  border-top: 1px dashed var(--tj-color-border-3);
}
.h7-faq-wrapper.style-2 .accordion-item.active {
  border-radius: 12px;
}
.h7-faq-wrapper.style-2 .accordion-item.active .faq-title {
  border: none;
}
.h7-faq-wrapper.style-2 .accordion-item.active .faq-title::after {
  border-color: var(--tj-color-common-white);
  background-color: var(--tj-color-common-white);
  color: var(--tj-color-heading-primary);
}
.h7-faq-wrapper.style-2 .accordion-item:not(.active) .faq-title {
  padding-top: 32px;
  padding-bottom: 32px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-faq-wrapper.style-2 .accordion-item:not(.active) .faq-title {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.h7-faq-wrapper.style-2 .accordion-item:first-child,
.h7-faq-wrapper.style-2 .accordion-item.active,
.h7-faq-wrapper.style-2 .accordion-item.active + .accordion-item {
  border-top: 0;
}

/* !END: FAQ CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.h7-blog-wrapper .blog-meta {
  position: absolute;
  inset-inline-start: 15px;
  top: 15px;
  z-index: 1;
}
.h7-blog-wrapper .blog-meta .categories a {
  border-radius: 34px;
  background-color: var(--tj-color-common-white);
  color: var(--tj-color-heading-primary);
  border-color: var(--tj-color-common-white);
}
.h7-blog-wrapper .blog-meta .categories a:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}
.h7-blog-wrapper .blog-content {
  background-color: var(--tj-color-common-white);
  padding: 20px 25px 30px;
}
.h7-blog-wrapper .blog-content .title-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.h7-blog-wrapper .blog-content .title {
  max-width: 250px;
}
.h7-blog-wrapper .blog-content .text-btn .btn-icon {
  width: 48px;
  height: 48px;
  font-size: 24px;
}
.h7-blog-wrapper .blog-date {
  position: static;
  padding: 0;
  text-align: start;
}
.h7-blog-wrapper .blog-item:hover .blog-content .text-btn .btn-icon {
  background-color: var(--tj-color-theme-primary);
}

/* !END: Blog CSS */
/**----------------------------------------
START: CTA CSS
----------------------------------------*/
.h7-cta {
  background: url("../images/cta/h7-cta-bg.webp") no-repeat center;
  background-size: cover;
  position: relative;
  overflow: hidden;
  z-index: 0;
  border-radius: 12px;
  margin-bottom: 15px;
}
.h7-cta-inner {
  background-color: transparent;
}
.h7-cta-inner .cta-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 20px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
  -webkit-padding-end: 0;
  padding-inline-end: 0;
  padding: 50px 0 65px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h7-cta-inner .cta-content {
    padding: 34px 0 45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h7-cta-inner .cta-content {
    padding: 34px 0 45px;
  }
}
.h7-cta-inner .cta-content .title {
  max-width: 624px;
  margin-bottom: 0;
}
.h7-cta-inner .cta-content .cta-btn {
  margin-top: 15px;
}
@media (max-width: 575px) {
  .h7-cta-inner .cta-content .cta-btn {
    margin-top: 5px;
  }
}
.h7-cta .bg-shape-3 {
  inset-inline-start: 32%;
}

/* !END: CTA CSS */
/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.header-area.h8-header.header-absolute {
  position: absolute;
  top: 15px;
  inset-inline-start: 0;
  inset-inline-end: 0;
  width: calc(100% - 30px);
  margin: 0 auto;
  z-index: 999;
  padding-bottom: 15px;
  background-color: transparent;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-area.h8-header.header-absolute {
    width: calc(100% - 60px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h8-header.header-absolute {
    inset-inline-start: 50%;
    inset-inline-end: auto;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 1382px;
    margin: 0 auto;
    border-radius: 12px;
    z-index: 999;
    border-start-end-radius: 0;
    border-start-start-radius: 0;
    background-color: var(--tj-color-grey-1);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header-area.h8-header.header-absolute {
    width: 86%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .header-area.h8-header.header-absolute {
    top: 12px;
    width: 86%;
    padding-bottom: 12px;
  }
}
@media (max-width: 575px) {
  .header-area.h8-header.header-absolute {
    top: 12px;
    width: 78%;
    padding-bottom: 12px;
  }
}
.header-area.h8-header.header-absolute .h8-header-mainmenu-bg-shape {
  position: absolute;
  top: 0;
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 92%;
  max-width: 1382px;
  height: 100%;
  background-color: var(--tj-color-grey-1);
  margin: 0 auto;
  border-radius: 12px;
  border-start-end-radius: 0;
  border-start-start-radius: 0;
  z-index: -1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-area.h8-header.header-absolute .h8-header-mainmenu-bg-shape {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h8-header.header-absolute .h8-header-mainmenu-bg-shape {
    display: none;
  }
}
.header-area.h8-header.header-absolute .h8-header-mainmenu-bg-shape::after,
.header-area.h8-header.header-absolute .h8-header-mainmenu-bg-shape::before {
  content: "";
  position: absolute;
  top: 0;
  width: 13px;
  height: 13px;
  background: url('data:image/svg+xml,<svg viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-11 h-11"><path d="M11 1.54972e-06L0 0L2.38419e-07 11C1.65973e-07 4.92487 4.92487 1.62217e-06 11 1.54972e-06Z" fill="%23ecf0f0"></path></svg>');
}
.header-area.h8-header.header-absolute .h8-header-mainmenu-bg-shape::before {
  inset-inline-start: -13px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.header-area.h8-header.header-absolute .h8-header-mainmenu-bg-shape::after {
  inset-inline-end: -13px;
}
.header-area.h8-header.header-absolute .header-wrapper {
  border-radius: 7px;
  width: calc(92% - 6px);
  max-width: 1352px;
  margin: 0 auto;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-area.h8-header.header-absolute .header-wrapper {
    padding: 0 15px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .header-area.h8-header.header-absolute .header-wrapper {
    width: calc(100% - 6px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h8-header.header-absolute .header-wrapper {
    width: auto;
    max-width: inherit;
    margin: 0 3px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header-area.h8-header.header-absolute .header-wrapper {
    padding: 15px 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h8-header.header-absolute .header-wrapper {
    padding: 15px 12px;
    margin: 0;
  }
}
.header-area.h8-header.header-absolute::after,
.header-area.h8-header.header-absolute::before {
  content: "";
  position: absolute;
  top: 0;
  width: 13px;
  height: 13px;
  background: url('data:image/svg+xml,<svg viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-11 h-11"><path d="M11 1.54972e-06L0 0L2.38419e-07 11C1.65973e-07 4.92487 4.92487 1.62217e-06 11 1.54972e-06Z" fill="%23ecf0f0"></path></svg>');
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h8-header.header-absolute::after,
  .header-area.h8-header.header-absolute::before {
    display: block;
  }
}
.header-area.h8-header.header-absolute::before {
  inset-inline-start: -13px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.header-area.h8-header.header-absolute::after {
  inset-inline-end: -13px;
}
.header-area.h8-header.header-absolute .mainmenu ul > li > .mega-menu {
  top: calc(100% - 15px);
}
.header-area.h8-header.sticky {
  width: calc(100% - 30px);
  max-width: inherit;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .header-area.h8-header.sticky {
    width: 100%;
  }
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.tj-footer-section.h8-footer .bg-shape-3 {
  inset-inline-end: 0;
  inset-inline-start: auto;
  width: auto;
}
.tj-footer-section.h8-footer .bg-shape-4 {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  inset-inline-end: auto;
  inset-inline-start: 0;
}
.tj-footer-section.h8-footer .h6-footer-logo-area {
  padding: 120px 0 80px;
  border-bottom: 1px dashed var(--tj-color-border-4);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h8-footer .h6-footer-logo-area {
    padding-top: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h8-footer .h6-footer-logo-area {
    padding-top: 70px;
  }
}
.tj-footer-section.h8-footer .h8-footer-logo-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-footer-section.h8-footer .h8-footer-logo-wrapper {
    gap: 30px;
  }
}
@media (max-width: 575px) {
  .tj-footer-section.h8-footer .h8-footer-logo-wrapper {
    gap: 30px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.tj-footer-section.h8-footer .h8-footer-logo {
  max-width: 562px;
  width: 100%;
}
.tj-footer-section.h8-footer .h8-footer-logo-content {
  max-width: 443px;
  width: 100%;
}
.tj-footer-section.h8-footer .h8-footer-logo-content .footer-text {
  margin-bottom: 24px;
  color: var(--tj-color-text-body-2);
  font-size: 18px;
  font-weight: var(--tj-fw-sbold);
  letter-spacing: -0.03em;
  line-height: 1.444;
}
.tj-footer-section.h8-footer .h8-footer-main {
  padding-top: 80px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h8-footer .h8-footer-main {
    padding-top: 70px;
  }
}
.tj-footer-section.h8-footer .h8-footer-contact {
  -webkit-padding-start: 0;
  padding-inline-start: 0;
  -webkit-padding-end: 76px;
  padding-inline-end: 76px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-footer-section.h8-footer .h8-footer-contact {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    -webkit-padding-end: 30px;
    padding-inline-end: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h8-footer .h8-footer-contact {
    margin-top: 0;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    -webkit-padding-end: 0px;
    padding-inline-end: 0px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h8-footer .h8-footer-contact {
    margin-top: 0;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.tj-footer-section.h8-footer .h8-footer-col-2 {
  -webkit-padding-start: 35px;
  padding-inline-start: 35px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h8-footer .h8-footer-col-2 {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.tj-footer-section.h8-footer .h8-footer-subscribe {
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h8-footer .h8-footer-subscribe {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h8-footer .h8-footer-subscribe {
    margin-top: 30px;
  }
}
.tj-footer-section.h8-footer .h8-footer-copyright {
  border-color: var(--tj-color-border-4);
}
.tj-footer-section.h8-footer .h8-footer-copyright .copyright-content-area {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h8-hero {
  position: relative;
  margin: 0 15px 0 15px;
  border-radius: 12px;
  border-end-end-radius: 0;
  border-end-start-radius: 0;
  overflow: hidden;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero {
    margin: 0 12px 0;
  }
}
.h8-hero-inner {
  background: var(--tj-color-theme-bg-2);
}
.h8-hero-bg-image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: absolute;
  mix-blend-mode: color-burn;
}
.h8-hero-item {
  min-height: 92.5vh;
  background-color: #0c1e21;
  position: relative;
}
.h8-hero-item::after {
  position: absolute;
  content: "";
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(20%, rgb(12, 30, 33)),
    color-stop(60%, rgba(12, 30, 33, 0.4)),
    to(rgba(12, 30, 33, 0.1))
  );
  background: linear-gradient(
    90deg,
    rgb(12, 30, 33) 20%,
    rgba(12, 30, 33, 0.4) 60%,
    rgba(12, 30, 33, 0.1) 100%
  );
}
.h8-hero-item-wrapper {
  padding: 202px 0 30px;
  min-height: 849px;
  position: relative;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h8-hero-item-wrapper {
    padding-top: 170px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h8-hero-item-wrapper {
    padding: 170px 0 280px 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-hero-item-wrapper {
    padding: 170px 0 280px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-hero-item-wrapper {
    padding: 170px 0 0 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-item-wrapper {
    padding: 150px 0 0 0;
  }
}
@media (max-width: 575px) {
  .h8-hero-item-wrapper {
    min-height: 833px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h8-hero-item {
    height: 95vh;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h8-hero-item {
    min-height: auto;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-item {
    min-height: 840px;
  }
}
.h8-hero-content .h8-hero-title {
  font-size: 148px;
  line-height: 1;
  letter-spacing: -0.03em;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
  position: relative;
}
.h8-hero-content .h8-hero-title span {
  display: inline-block;
  white-space: nowrap;
}
.h8-hero-content .h8-hero-title span:first-child {
  width: 43%;
}
.h8-hero-content .h8-hero-title span:nth-child(2) {
  text-align: end;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  width: 54%;
}
.h8-hero-content .h8-hero-title span:nth-child(3) {
  text-align: end;
  display: block;
  width: 100%;
}
.h8-hero-content .h8-hero-title span:has(img) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 10px;
}
.h8-hero-content .h8-hero-title span:has(img) img {
  width: 104px;
  height: 104px;
  -o-object-fit: cover;
  object-fit: cover;
  padding: 20px 19px 18px;
  background: linear-gradient(
    135deg,
    rgba(30, 138, 138, 0.3) 0%,
    rgba(30, 138, 138, 0) 50%,
    rgba(30, 138, 138, 0.3) 100%
  );
  border: 3px solid var(--tj-color-theme-primary);
  border: 2px solid var(--tj-color-border-5);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-content .h8-hero-title span:has(img) img {
    width: 70px;
    height: 70px;
    padding: 15px 14px 13px;
  }
}
.h8-hero-content .h8-hero-title .title-year {
  font-size: 18px;
  position: absolute;
  inset-inline-end: 0;
  top: 100%;
  display: block;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0;
  line-height: 1.44;
  margin-top: 20px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h8-hero-content .h8-hero-title {
    font-size: 130px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-hero-content .h8-hero-title {
    font-size: 120px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-hero-content .h8-hero-title {
    font-size: 92px;
    line-height: 1.1;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-hero-content .h8-hero-title {
    font-size: 70px;
    line-height: 1.3;
  }
}
@media (max-width: 575px) {
  .h8-hero-content .h8-hero-title {
    font-size: 44px;
    line-height: 1.3;
  }
  .h8-hero-content .h8-hero-title .title-year {
    margin-top: 10px;
  }
}
.h8-hero-banner {
  position: absolute;
  inset-inline-start: 54%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 0;
  z-index: 9;
  max-width: 669px;
  width: 100%;
  max-height: 745px;
  pointer-events: none;
}
@media only screen and (min-width: 1601px) and (max-width: 1764px) {
  .h8-hero-banner {
    inset-inline-end: -10%;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h8-hero-banner {
    inset-inline-end: -2%;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h8-hero-banner {
    inset-inline-start: 58%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-hero-banner {
    max-width: 602px;
    inset-inline-start: 65%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-banner {
    position: static;
    max-width: 602px;
    inset-inline-start: 0;
    margin-top: 50px;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-hero-banner {
    position: relative;
    max-width: 602px;
    margin-top: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-banner {
    margin-top: 40px;
  }
}
.h8-hero-shape {
  position: absolute;
  top: 10px;
  z-index: 1;
}
.h8-hero-shape-2 {
  inset-inline-end: 0;
}
.h8-hero .circle-text-wrap {
  z-index: 1000;
  height: 160px;
  width: 160px;
  inset-inline-end: 0;
  bottom: 60px;
  background-color: var(--tj-color-theme-dark);
  border-radius: 100%;
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-sbold);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-animation: tj-bounce-ball 2s infinite;
  animation: tj-bounce-ball 2s infinite;
  -webkit-transform: all 0.4s;
  -ms-transform: all 0.4s;
  transform: all 0.4s;
}
.h8-hero .circle-text-wrap .desc {
  max-width: 83px;
}
.h8-hero .circle-text-wrap .desc i {
  -webkit-transform: rotate(-45deg) translateY(3px);
  -ms-transform: rotate(-45deg) translateY(3px);
  transform: rotate(-45deg) translateY(3px);
  display: inline-block;
  font-size: 22px;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.h8-hero .circle-text-wrap:hover {
  background-color: var(--tj-color-theme-primary);
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}
.h8-hero .circle-text-wrap:hover .desc i {
  -webkit-transform: rotate(0deg) translateY(5px);
  -ms-transform: rotate(0deg) translateY(5px);
  transform: rotate(0deg) translateY(5px);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-hero .circle-text-wrap {
    bottom: 2%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-hero .circle-text-wrap {
    bottom: 30%;
  }
}
@media (max-width: 575px) {
  .h8-hero .circle-text-wrap {
    height: 120px;
    width: 120px;
    bottom: 25%;
  }
}
.h8-hero-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 148px;
  position: absolute;
  inset-inline-start: 0;
  bottom: 88px;
  z-index: 1000;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h8-hero-box {
    inset-inline-start: 8px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-hero-box {
    inset-inline-start: 8px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-hero-box {
    inset-inline-start: 52%;
    bottom: 37%;
    gap: 66px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-box {
    position: static;
    gap: 40px;
    margin-top: -46px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-margin-start: 3px;
    margin-inline-start: 3px;
    -webkit-margin-end: 3px;
    margin-inline-end: 3px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-hero-box {
    gap: 50px;
    margin-top: -66px;
  }
}
.h8-hero-box .customers ul li {
  -webkit-margin-start: -22px;
  margin-inline-start: -22px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-box .customers ul li {
    -webkit-margin-start: -16px;
    margin-inline-start: -16px;
  }
}
.h8-hero-box .customers ul li:first-child {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
}
.h8-hero-box-content {
  max-width: 330px;
  font-size: 18px;
  color: var(--tj-color-theme-dark-2);
  letter-spacing: 0;
  line-height: 1.44;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-hero-box-content {
    max-width: 100%;
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
  }
}
@media (max-width: 575px) {
  .h8-hero-box-content {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.h8-hero-box-icon {
  margin-bottom: 20px;
}

/* !END: Hero CSS */
/**----------------------------------------
START: Theme Marquee CSS
----------------------------------------*/
.h8-maquee {
  position: relative;
  overflow: hidden;
}
.h8-maquee-inner {
  padding: 26px 0;
  rotate: 0deg;
  width: 100%;
  border-radius: 12px;
  border-start-end-radius: 0;
  border-start-start-radius: 0;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-maquee-inner {
    padding: 20px 0;
  }
}
@media (max-width: 575px) {
  .h8-maquee-inner {
    padding: 15px 0;
  }
}
.h8-maquee-inner .h5-maquee-slider-item .marquee-box .marquee-icon {
  font-size: 24px;
  font-weight: var(--tj-fw-sbold);
  text-transform: capitalize;
  line-height: 1;
  margin-bottom: 0;
  white-space: nowrap;
  color: var(--tj-color-common-white);
  -webkit-animation: none;
  animation: none;
}

/* !END: Theme Marquee CSS */
/**----------------------------------------
START: Home 7 About CSS
----------------------------------------*/
.h8-about {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.h8-about.section-gap {
  padding-bottom: 30px;
}
.h8-about .sec-heading.style-3 {
  margin-bottom: 0;
}
.h8-about .sec-heading.style-3 .sec-title {
  margin-bottom: 35px;
}
.h8-about .sec-heading.style-3 .sub-title {
  margin-top: 12px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-about .sec-heading.style-3 .sub-title {
    margin-top: 0;
    margin-bottom: 15px;
  }
}
.h8-about-left {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.h8-about-video {
  border-radius: 100%;
  width: 248px;
  height: 248px;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-about-video {
    margin-bottom: 30px;
  }
}
.h8-about-video::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.15;
  mix-blend-mode: Color;
  z-index: 1;
}
.h8-about-video-btn {
  width: 60px;
  height: 60px;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid var(--tj-color-grey-3);
  position: absolute;
  z-index: 2;
  inset-inline-start: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  -webkit-animation: pulse4 1.3s ease-out infinite;
  animation: pulse4 1.3s ease-out infinite;
}
.h8-about-video-btn i {
  color: var(--tj-color-common-white);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-padding-start: 4px;
  padding-inline-start: 4px;
}
.h8-about-video-btn:hover i {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
.h8-about-item-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px dashed var(--tj-color-border-1);
  -webkit-border-start: 0;
  border-inline-start: 0;
  -webkit-border-end: 0;
  border-inline-end: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-about-item-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.h8-about-item-counter {
  width: 310px;
  padding-top: 50px;
  padding-bottom: 50px;
  -webkit-padding-end: 40px;
  padding-inline-end: 40px;
  -webkit-border-end: 1px dashed var(--tj-color-border-1);
  border-inline-end: 1px dashed var(--tj-color-border-1);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-about-item-counter {
    padding-top: 35px;
    padding-bottom: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-about-item-counter {
    -webkit-padding-end: 0px;
    padding-inline-end: 0px;
    -webkit-border-end: 0;
    border-inline-end: 0;
    border-bottom: 1px dashed var(--tj-color-border-1);
    width: 100%;
    padding-top: 15px;
    padding-bottom: 20px;
  }
}
.h8-about-item-counter .countup-item.style-2 {
  padding: 0;
  background-color: transparent;
}
.h8-about-item-counter .countup-item.style-2 .count-inner {
  padding: 0;
}
.h8-about-item-counter .countup-item.style-2 .inline-content {
  font-size: 130px;
  font-weight: var(--tj-fw-sbold);
  margin-top: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-about-item-counter .countup-item.style-2 .inline-content {
    font-size: 110px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-about-item-counter .countup-item.style-2 .inline-content {
    font-size: 100px;
  }
}
.h8-about-item-counter .countup-item.style-2 .inline-content .odometer {
  -webkit-margin-start: -6px;
  margin-inline-start: -6px;
}
.h8-about-item-counter .countup-item.style-2 .inline-content .odometer span {
  font-weight: var(--tj-fw-sbold);
}
.h8-about-item-counter .countup-item.style-2 .inline-content sup {
  font-weight: var(--tj-fw-medium);
  font-size: 0.57em;
}
.h8-about-item-counter .countup-item.style-2 .count-text {
  font-weight: var(--tj-fw-sbold);
  font-size: 18px;
  max-width: 195px;
  line-height: 1.44;
  color: var(--tj-color-theme-dark-3);
}
.h8-about-item-desc {
  width: 530px;
  padding-top: 50px;
  padding-bottom: 55px;
  -webkit-padding-start: 60px;
  padding-inline-start: 60px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-about-item-desc {
    padding-top: 35px;
    padding-bottom: 40px;
    -webkit-padding-start: 35px;
    padding-inline-start: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-about-item-desc {
    padding-top: 20px;
    padding-bottom: 25px;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.h8-about-item-desc .desc {
  margin-bottom: 24px;
  color: var(--tj-color-theme-dark-3);
}

/* !END: Home 7 About CSS  */
/**----------------------------------------
START: Choose CSS
----------------------------------------*/
.h8-choose {
  background-color: var(--tj-color-theme-bg);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.h8-choose-content-wrapper {
  max-width: 550px;
  -webkit-margin-start: 125px;
  margin-inline-start: 125px;
  padding: 50px 0;
  -webkit-margin-end: 12px;
  margin-inline-end: 12px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h8-choose-content-wrapper {
    -webkit-margin-start: 80px;
    margin-inline-start: 80px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-choose-content-wrapper {
    -webkit-margin-start: 40px;
    margin-inline-start: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-choose-content-wrapper {
    -webkit-margin-start: 30px;
    margin-inline-start: 30px;
    -webkit-margin-end: 30px;
    margin-inline-end: 30px;
    max-width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-choose-content-wrapper {
    -webkit-margin-start: 12px;
    margin-inline-start: 12px;
    max-width: 100%;
  }
}
.h8-choose .sec-heading.style-3 {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-choose .sec-heading.style-3 {
    max-width: 100%;
  }
}
.h8-choose-banner {
  height: 100%;
}
.h8-choose-banner img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.h8-choose-box-wrapper {
  border: 1px dashed var(--tj-color-border-1);
  -webkit-border-start: 0;
  border-inline-start: 0;
  -webkit-border-end: 0;
  border-inline-end: 0;
}
.h8-choose-box {
  background-color: transparent;
  border-radius: 0;
  padding: 24px 0 22px;
  border-bottom: 1px dashed var(--tj-color-border-1);
}
.h8-choose-box:last-child {
  border-bottom: 0;
}
.h8-choose-box .choose-content {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 15px;
}
.h8-choose-box .choose-content .title {
  margin-bottom: 18px;
}
.h8-choose-box .choose-content .choose-icon {
  margin-bottom: 0;
  margin-top: 6px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  background-color: var(--tj-color-theme-dark);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.h8-choose-box:hover {
  background-color: transparent;
}
.h8-choose-box:hover .choose-content .choose-icon {
  background-color: var(--tj-color-theme-primary);
  -webkit-animation: none;
  animation: none;
}

/* !END: Choose CSS */
/**----------------------------------------
START: Service CSS
----------------------------------------*/
.h8-service-item {
  padding: 35px 30px 34px;
  border-radius: 10px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-service-item {
    padding: 30px 20px;
  }
}
.h8-service-item .service-icon {
  font-size: 59px;
  width: 84px;
  height: 84px;
  margin: 0 0 24px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-service-item .service-icon {
    font-size: 52px;
    width: 70px;
    height: 70px;
  }
}
.h8-service-item .service-content .desc {
  margin-bottom: 22px;
}
.h8-service-item:hover .service-icon {
  -webkit-animation: gelatine 0.6s;
  animation: gelatine 0.6s;
}
.h8-service-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 60px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-service-more {
    margin-top: 35px;
  }
}

/* !END: Service CSS */
/* START: Case Study CSS */
.h8-project {
  background-color: var(--tj-color-theme-bg);
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
}
.h8-project .heading-wrap-content .sec-heading {
  max-width: 550px;
}
.h8-project .slider-next,
.h8-project .slider-prev {
  background-color: var(--tj-color-common-white);
  border-color: var(--tj-color-common-white);
}
.h8-project .slider-next:hover,
.h8-project .slider-prev:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}
.h8-project-wrapper {
  padding: 0;
  max-width: 1591px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-project-wrapper {
    max-width: 100%;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
.h8-project-wrapper .h4-project-item {
  margin-bottom: 0;
}
@media (max-width: 575px) {
  .h8-project-wrapper .h4-project-item {
    padding: 15px 15px 30px;
  }
}
.h8-project-wrapper .h4-project-item .project-img {
  height: 520px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-project-wrapper .h4-project-item .project-img {
    height: 345px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-project-wrapper .h4-project-item .project-img {
    height: 300px;
  }
}
.h8-project-wrapper .h4-project-item .project-content .tji-icon-btn {
  margin-top: 4px;
  border-color: var(--tj-color-border-1);
}
.h8-project-wrapper .h4-project-item .project-content .tji-icon-btn i {
  color: var(--tj-color-theme-dark);
}
.h8-project-wrapper .h4-project-item:hover .project-content .tji-icon-btn {
  border-color: var(--tj-color-theme-dark);
  background-color: var(--tj-color-theme-dark);
}
.h8-project-wrapper .h4-project-item:hover .project-content .tji-icon-btn i {
  color: var(--tj-color-common-white);
}

/* !END: Case Study CSS */
/**----------------------------------------
START: Countup CSS
----------------------------------------*/
.h8-funfact-banner {
  max-width: 585px;
  position: relative;
  margin-bottom: 40px;
}
.h8-funfact-banner-img {
  width: 100%;
  height: 100%;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
}
@media (max-width: 575px) {
  .h8-funfact-banner-img {
    height: 440px;
  }
}
.h8-funfact-banner-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.h8-funfact-banner-img::after {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.25;
}
.h8-funfact-banner .box-area {
  max-width: 239px;
  bottom: 0;
  inset-inline-end: 0;
  inset-inline-start: inherit;
  padding: 15px 0 0 15px;
  border-start-start-radius: 12px;
  border-start-end-radius: 0;
}
.h8-funfact-banner .box-area::before {
  inset-inline-start: inherit;
  inset-inline-end: 0;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.h8-funfact-banner .box-area::after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  inset-inline-start: -12px;
  inset-inline-end: inherit;
}
@media (max-width: 575px) {
  .h8-funfact-banner .box-area {
    max-width: 215px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-funfact-banner {
    max-width: 100%;
  }
}
.h8-funfact-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 15px;
}
.h8-funfact .pl-0 {
  -webkit-padding-start: 3px;
  padding-inline-start: 3px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-funfact .pl-0 {
    -webkit-padding-start: 12px;
    padding-inline-start: 12px;
  }
}
.h8-funfact-item.countup-item {
  padding: 41px 35px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-funfact-item.countup-item {
    padding: 30px 25px;
  }
}
@media (max-width: 575px) {
  .h8-funfact-item.countup-item {
    padding: 20px 20px 30px;
  }
}
.h8-funfact-item.countup-item .count-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 0;
}
@media (max-width: 575px) {
  .h8-funfact-item.countup-item .count-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 25px;
  }
}
.h8-funfact-item.countup-item .counter-desc {
  -webkit-padding-start: 30px;
  padding-inline-start: 30px;
  -webkit-border-start: 1px dashed var(--tj-color-border-1);
  border-inline-start: 1px dashed var(--tj-color-border-1);
}
@media (max-width: 575px) {
  .h8-funfact-item.countup-item .counter-desc {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    padding-top: 20px;
    -webkit-border-start: 0;
    border-inline-start: 0;
    border-top: 1px dashed var(--tj-color-border-1);
  }
}
.h8-funfact-item.countup-item .counter-desc .counter-title {
  margin-bottom: 20px;
  line-height: 1;
}
.h8-funfact-item.countup-item .counter-desc .count-text {
  margin-bottom: 0;
  font-weight: var(--tj-fw-regular);
}
.h8-funfact-item.countup-item .inline-content {
  margin: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-transform: translateY(-19px);
  -ms-transform: translateY(-19px);
  transform: translateY(-19px);
  font-size: 68px;
  width: 180px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-funfact-item.countup-item .inline-content {
    font-size: 65px;
    -webkit-transform: translateY(-32px);
    -ms-transform: translateY(-32px);
    transform: translateY(-32px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h8-funfact-item.countup-item .inline-content {
    font-size: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-funfact-item.countup-item .inline-content {
    font-size: 60px;
  }
}
@media (max-width: 575px) {
  .h8-funfact-item.countup-item .inline-content {
    font-size: 55px;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 100%;
  }
}

/* !END: Countup CSS */
/**----------------------------------------
START: Team CSS
----------------------------------------*/
.h8-team {
  background-color: var(--tj-color-theme-bg);
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h8-team .sec-heading .sec-title {
    font-size: 45px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-team .sec-heading .sec-title {
    font-size: 38px;
  }
}
.h8-team-item-wrapper .team-item {
  padding: 35px 15px 30px;
  margin-bottom: 0;
  border: 1px solid var(--tj-color-border-1);
  border-top: 0;
  -webkit-border-start: 0;
  border-inline-start: 0;
  text-align: center;
}
.h8-team-item-wrapper .team-item .team-img {
  width: 230px;
  height: 230px;
  overflow: hidden;
  border-radius: 100%;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-team-item-wrapper .team-item .team-img {
    width: 200px;
    height: 200px;
  }
}
.h8-team-item-wrapper .team-item .team-img::after {
  display: none;
}
.h8-team-item-wrapper .team-item .title {
  width: 100%;
}
.h8-team-item-wrapper:nth-child(2) .team-item,
.h8-team-item-wrapper:nth-child(3) .team-item,
.h8-team-item-wrapper:nth-child(4) .team-item,
.h8-team-item-wrapper:nth-child(5) .team-item {
  border-top: 1px solid var(--tj-color-border-1);
}
.h8-team-item-wrapper:nth-child(2) .team-item,
.h8-team-item-wrapper:nth-child(5) .team-item,
.h8-team-item-wrapper:nth-child(9) .team-item {
  -webkit-border-start: 1px solid var(--tj-color-border-1);
  border-inline-start: 1px solid var(--tj-color-border-1);
}
.h8-team-item-wrapper:nth-child(5) .team-item {
  margin-top: -1px;
  -webkit-margin-end: -1px;
  margin-inline-end: -1px;
}
.h8-team-item-wrapper:nth-child(9) .team-item {
  -webkit-margin-end: -1px;
  margin-inline-end: -1px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h8-team-item-wrapper:nth-child(2) .team-item,
  .h8-team-item-wrapper:nth-child(3) .team-item,
  .h8-team-item-wrapper:nth-child(4) .team-item,
  .h8-team-item-wrapper:nth-child(5) .team-item {
    border-top: 0;
  }
  .h8-team-item-wrapper:nth-child(2) .team-item,
  .h8-team-item-wrapper:nth-child(3) .team-item {
    border-top: 1px solid var(--tj-color-border-1);
  }
  .h8-team-item-wrapper:nth-child(3) .team-item,
  .h8-team-item-wrapper:nth-child(5) .team-item,
  .h8-team-item-wrapper:nth-child(7) .team-item {
    -webkit-border-start: 1px solid var(--tj-color-border-1);
    border-inline-start: 1px solid var(--tj-color-border-1);
    margin-top: -1px;
    -webkit-margin-end: -1px;
    margin-inline-end: -1px;
  }
  .h8-team-item-wrapper:nth-child(5) .team-item,
  .h8-team-item-wrapper:nth-child(7) .team-item {
    border-top: 0;
    margin-top: 0px;
  }
  .h8-team-item-wrapper:nth-child(7) .team-item {
    margin-top: 0;
    -webkit-margin-end: -1px;
    margin-inline-end: -1px;
  }
  .h8-team-item-wrapper:nth-child(9) .team-item {
    margin-top: 0px;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
@media (max-width: 575px) {
  .h8-team-item-wrapper .team-item {
    -webkit-border-start: 1px solid var(--tj-color-border-1);
    border-inline-start: 1px solid var(--tj-color-border-1);
    margin-top: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
  .h8-team-item-wrapper:nth-child(3) .team-item,
  .h8-team-item-wrapper:nth-child(4) .team-item,
  .h8-team-item-wrapper:nth-child(5) .team-item {
    border-top: 0;
  }
}
.h8-team-action {
  height: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media (max-width: 575px) {
  .h8-team-action {
    margin-top: 10px;
  }
}
.h8-team-action .circle-text-wrap {
  position: static;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background-color: transparent;
  backdrop-filter: blur(0);
}
.h8-team-action .circle-text-wrap .circle-icon {
  font-size: 85px;
}
.h8-team-action .circle-text-wrap i {
  color: var(--tj-color-theme-primary);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* !END: Team CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.h8-testimonial {
  overflow: hidden;
}
.h8-testimonial-wrapper {
  -webkit-mask-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgba(255, 255, 255, 0)),
    color-stop(30.6%, var(--tj-color-grey-1)),
    color-stop(69.4%, var(--tj-color-grey-1)),
    to(rgba(255, 255, 255, 0))
  );
  -webkit-mask-image: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    var(--tj-color-grey-1) 30.6%,
    var(--tj-color-grey-1) 69.4%,
    rgba(255, 255, 255, 0) 100%
  );
  mask-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgba(255, 255, 255, 0)),
    color-stop(30.6%, var(--tj-color-grey-1)),
    color-stop(69.4%, var(--tj-color-grey-1)),
    to(rgba(255, 255, 255, 0))
  );
  mask-image: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    var(--tj-color-grey-1) 30.6%,
    var(--tj-color-grey-1) 69.4%,
    rgba(255, 255, 255, 0) 100%
  );
}
@media (max-width: 575px) {
  .h8-testimonial-wrapper {
    -webkit-mask-image: none;
    mask-image: none;
    -webkit-margin-start: 12px;
    margin-inline-start: 12px;
    -webkit-margin-end: 12px;
    margin-inline-end: 12px;
  }
}
.h8-testimonial-wrapper .testimonial-item {
  background-color: var(--tj-color-common-white);
  border: 2px solid var(--tj-color-common-white);
  padding: 40px 30px 35px;
  height: 100%;
  border-radius: 8px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-testimonial-wrapper .testimonial-item {
    padding: 35px 23px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-testimonial-wrapper .testimonial-item {
    padding: 30px 20px;
  }
}
.h8-testimonial-wrapper .testimonial-item .desc {
  font-size: 18px;
  line-height: 1.444;
  padding-top: 23px;
  padding-bottom: 22px;
}
.h8-testimonial-wrapper .testimonial-item .desc p {
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-testimonial-wrapper .testimonial-item .desc {
    font-size: 17px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-testimonial-wrapper .testimonial-item .desc {
    font-size: 16px;
  }
}
.h8-testimonial-wrapper .testimonial-item .testimonial-author .author-img {
  width: 80px;
  height: 80px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-testimonial-wrapper .testimonial-item .testimonial-author .author-img {
    width: 60px;
    height: 60px;
  }
}
.h8-testimonial-wrapper .testimonial-item .testimonial-author .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 3px;
}

/* !END: Testimonial CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.h8-blog {
  border-top: 1px dashed var(--tj-color-border-1);
}
.h8-blog-more {
  margin-top: 24px;
}
.h8-blog-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h8-blog-wrapper {
    gap: 20px;
  }
}
.h8-blog-wrapper .blog-item.style-2 .blog-thumb {
  width: 42.6%;
  height: 300px;
}
@media (max-width: 575px) {
  .h8-blog-wrapper .blog-item.style-2 .blog-thumb {
    width: 100%;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}
.h8-blog-wrapper .blog-item.style-2 .blog-thumb a {
  width: 100%;
  height: 100%;
  display: inline-block;
}
.h8-blog-wrapper .blog-item.style-2 .blog-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.h8-blog-wrapper .blog-item.style-2 .blog-content {
  width: 57.4%;
}
.h8-blog-wrapper .blog-item.style-2 .blog-content .title {
  font-weight: var(--tj-fw-medium);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h8-blog-wrapper .blog-item.style-2 .blog-content .title {
    font-size: 28px;
  }
}
@media (max-width: 575px) {
  .h8-blog-wrapper .blog-item.style-2 .blog-content {
    width: 100%;
  }
}
.h8-blog-wrapper .blog-item.style-2 .text-btn .btn-icon {
  width: 48px;
  height: 48px;
  font-size: 24px;
}

/* !END: Blog CSS */
/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.h9-header.header-absolute {
  position: absolute;
  top: 15px;
  inset-inline-start: 0;
  width: calc(100% - 30px);
  z-index: 999;
  background-color: transparent;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-header.header-absolute {
    padding: 15px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-header.header-absolute {
    width: calc(100% - 24px);
  }
}
.h9-header.header-absolute .header-wrapper {
  padding: 0 18px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-header.header-absolute .header-wrapper {
    padding: 0 8px;
  }
}
.h9-header.header-absolute .mainmenu > ul > li {
  padding: 30px 0;
}
.h9-header.header-absolute .mainmenu > ul > li > a {
  color: var(--tj-color-common-white);
  border-radius: 50px;
  border: 1px solid var(--tj-color-border-2);
  padding: 5px 12px;
}
.h9-header.header-absolute
  .mainmenu
  > ul
  > li.menu-item-has-children
  > a::after,
.h9-header.header-absolute .mainmenu > ul > li.has-dropdown > a::after {
  display: none;
}
.h9-header.header-absolute .mainmenu > ul > li:hover > a,
.h9-header.header-absolute .mainmenu > ul > li.current-menu-ancestor > a {
  border-color: var(--tj-color-common-white);
}
.h9-header.header-absolute .header-search .search_close_btn,
.h9-header.header-absolute .header-search .search {
  color: var(--tj-color-grey-1);
  background-color: transparent;
  border: 1px solid var(--tj-color-border-2);
}
.h9-header.header-absolute .search_popup {
  background-color: rgba(var(--tj-color-theme-dark), 0.3);
  backdrop-filter: blur(15px);
  height: 100vh;
}
.h9-header.header-absolute .search_popup .tj_search_wrapper {
  min-height: 620px;
}
.h9-header.header-absolute
  .search_popup
  .tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not(
    [type="search"]
  ),
.h9-header.header-absolute
  .search_popup
  .tj_search_wrapper
  .search_form
  form
  .search_input
  .search-box
  input[type="text"] {
  background: var(--tj-color-common-white);
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.tj-footer-section.h9-footer .h9-footer-subscribe {
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h9-footer .h9-footer-subscribe {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-footer-section.h9-footer .h9-footer-widget-2 {
    -webkit-padding-start: 60px;
    padding-inline-start: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h9-footer .h9-footer-widget-2 {
    -webkit-padding-start: 15px;
    padding-inline-start: 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h9-footer .h9-footer-widget-2 {
    -webkit-padding-start: 70px;
    padding-inline-start: 70px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-footer-section.h9-footer .h9-footer-widget-3 {
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h9-footer .h9-footer-widget-3 {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h9-footer .h9-footer-widget-3 {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h9-footer .h9-footer-contact {
    margin-top: 0;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.tj-footer-section.h9-footer .h9-footer-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: -40px;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h9-footer .h9-footer-logo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 0;
  }
}
@media (max-width: 575px) {
  .tj-footer-section.h9-footer .h9-footer-logo {
    margin-bottom: -24px;
  }
}
.tj-footer-section.h9-footer .h9-footer-logo a {
  max-width: 532px;
  width: 100%;
}
.tj-footer-section.h9-footer .h9-footer-logo .h9-footer-award {
  margin-bottom: 38px;
}
.tj-footer-section.h9-footer .h9-footer-copyright {
  position: relative;
  padding: 0;
  border-color: rgba(49, 61, 61, 0.3);
  z-index: 2;
}
.tj-footer-section.h9-footer .h9-footer-copyright .copyright-content-area {
  padding: 30px 0;
  background-color: var(--tj-color-theme-bg);
}
.tj-footer-section.h9-footer
  .h9-footer-copyright
  .copyright-menu
  ul
  li::before {
  background-color: var(--tj-color-border-1);
}
.tj-footer-section.h9-footer .h9-footer-copyright .copyright-menu ul li a {
  color: var(--tj-color-theme-dark-3);
}
.tj-footer-section.h9-footer
  .h9-footer-copyright
  .copyright-menu
  ul
  li
  a:hover {
  color: var(--tj-color-theme-primary);
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h9-hero {
  position: relative;
  margin: 0 15px 0 15px;
  border-radius: 16px;
  overflow: hidden;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero {
    border-radius: 12px;
    margin: 0 12px 0;
  }
}
.h9-hero-inner {
  background: var(--tj-color-theme-dark);
}
.h9-hero-bg-image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: absolute;
  mix-blend-mode: Luminosity;
}
.h9-hero-item {
  min-height: 92.5vh;
  background-color: #0c1e21;
  position: relative;
}
.h9-hero-item::after {
  position: absolute;
  content: "";
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(20%, rgb(12, 30, 33)),
    color-stop(60%, rgba(12, 30, 33, 0.4)),
    to(rgba(12, 30, 33, 0.1))
  );
  background: linear-gradient(
    90deg,
    rgb(12, 30, 33) 20%,
    rgba(12, 30, 33, 0.4) 60%,
    rgba(12, 30, 33, 0.1) 100%
  );
}
.h9-hero-item-wrapper {
  padding: 162px 0 80px;
  min-height: 883px;
  position: relative;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-item-wrapper {
    padding: 140px 0 300px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-item-wrapper {
    padding: 170px 0 0 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-item-wrapper {
    padding: 150px 0 0 0;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h9-hero-item {
    height: 95vh;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-hero-item {
    min-height: auto;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-item {
    min-height: 840px;
  }
}
.h9-hero-content {
  max-width: 1480px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.h9-hero-content .h9-hero-title {
  color: var(--tj-color-common-white);
  font-size: 168px;
  line-height: 1;
  letter-spacing: -0.03em;
  margin-bottom: 0;
}
.h9-hero-content .h9-hero-title span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 220px;
  height: 121px;
  border-radius: 100px;
  border: 18px solid var(--tj-color-theme-primary);
  position: relative;
}
.h9-hero-content .h9-hero-title span::before {
  content: "";
  width: 66px;
  height: 66px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  position: absolute;
  top: 50%;
  inset-inline-end: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 1601px) and (max-width: 1764px),
  only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h9-hero-content .h9-hero-title span::before {
    width: 55px;
    height: 55px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-hero-content .h9-hero-title span::before {
    width: 50px;
    height: 50px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-content .h9-hero-title span::before {
    width: 40px;
    height: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-content .h9-hero-title span::before {
    width: 35px;
    height: 35px;
  }
}
@media (max-width: 575px) {
  .h9-hero-content .h9-hero-title span::before {
    width: 30px;
    height: 30px;
  }
}
@media (max-width: 575px) {
  .h9-hero-content .h9-hero-title span::before {
    width: 24px;
    height: 24px;
    inset-inline-end: 5px;
  }
}
@media only screen and (min-width: 1601px) and (max-width: 1764px),
  only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h9-hero-content .h9-hero-title span {
    width: 200px;
    height: 105px;
    border-width: 15px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-hero-content .h9-hero-title span {
    width: 180px;
    height: 90px;
    border-width: 13px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-content .h9-hero-title span {
    width: 160px;
    height: 80px;
    border-width: 12px;
    top: 4px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-content .h9-hero-title span {
    width: 140px;
    height: 70px;
    border-width: 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-content .h9-hero-title span {
    width: 120px;
    height: 60px;
    border-width: 8px;
    top: 4px;
  }
}
@media (max-width: 575px) {
  .h9-hero-content .h9-hero-title span {
    width: 100px;
    height: 48px;
  }
}
@media only screen and (min-width: 1601px) and (max-width: 1764px),
  only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h9-hero-content .h9-hero-title {
    font-size: 140px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-hero-content .h9-hero-title {
    font-size: 120px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-content .h9-hero-title {
    font-size: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-content .h9-hero-title {
    font-size: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-content .h9-hero-title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1601px) and (max-width: 1764px),
  only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-hero-content {
    padding: 0 50px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-content {
    max-width: 920px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-content {
    max-width: 700px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-content {
    padding: 0 15px;
  }
}
.h9-hero-desc-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 150px;
  margin-top: 108px;
  -webkit-margin-start: 220px;
  margin-inline-start: 220px;
}
.h9-hero-desc-area .title {
  max-width: 160px;
  color: var(--tj-color-common-white);
  position: relative;
  font-weight: var(--tj-fw-sbold);
  padding-top: 15px;
  margin: 0;
}
.h9-hero-desc-area .title::before,
.h9-hero-desc-area .title::after {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 1px;
  background-color: var(--tj-color-border-2);
}
.h9-hero-desc-area .title::after {
  width: 32px;
  height: 3px;
  top: -1px;
  background-color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h9-hero-desc-area .title {
    max-width: 135px;
  }
}
@media (max-width: 575px) {
  .h9-hero-desc-area .title {
    max-width: 100%;
  }
}
.h9-hero-desc-area .desc-inner {
  max-width: 416px;
}
.h9-hero-desc-area .desc-inner .desc {
  font-size: 18px;
  color: var(--tj-color-text-body-2);
  margin-bottom: 0;
}
.h9-hero-desc-area .desc-inner .desc a {
  color: var(--tj-color-common-white);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
}
.h9-hero-desc-area .desc-inner .desc a::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--tj-color-common-white);
  position: absolute;
  bottom: 2px;
  inset-inline-end: 0;
}
.h9-hero-desc-area .desc-inner .desc a:hover::after {
  -webkit-animation: linehover 0.8s linear;
  animation: linehover 0.8s linear;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-desc-area .desc-inner .desc {
    font-size: 16px;
  }
}
.h9-hero-desc-area .desc-inner .tj-primary-btn {
  margin-top: 25px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-desc-area .desc-inner {
    max-width: 370px;
  }
}
@media only screen and (min-width: 1601px) and (max-width: 1764px),
  only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h9-hero-desc-area {
    gap: 120px;
    -webkit-margin-start: 150px;
    margin-inline-start: 150px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-hero-desc-area {
    gap: 70px;
    margin-top: 80px;
    -webkit-margin-start: 100px;
    margin-inline-start: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-desc-area {
    gap: 70px;
    margin-top: 80px;
    -webkit-margin-start: 100px;
    margin-inline-start: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-desc-area {
    gap: 50px;
    margin-top: 70px;
    -webkit-margin-start: 70px;
    margin-inline-start: 70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-desc-area {
    gap: 30px;
    margin-top: 40px;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
@media (max-width: 575px) {
  .h9-hero-desc-area {
    gap: 15px;
  }
}
.h9-hero-social {
  margin-top: 148px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-social {
    margin-top: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-social {
    margin-top: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-social {
    margin-top: 40px;
  }
}
.h9-hero-img {
  position: absolute;
  inset-inline-end: 0;
  bottom: 0;
  max-width: 619px;
  width: 100%;
  height: 360px;
  z-index: 3;
}
.h9-hero-img img {
  height: 150%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: none;
  transition: none;
  position: absolute;
  inset-inline-start: 0;
  top: 0;
}
@media only screen and (min-width: 1601px) and (max-width: 1764px) {
  .h9-hero-img {
    inset-inline-end: -5%;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h9-hero-img {
    inset-inline-end: -5%;
    max-width: 580px;
    height: 350px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-hero-img {
    inset-inline-end: -3%;
    max-width: 510px;
    height: 325px;
    overflow: hidden;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-hero-img {
    height: 360px;
    overflow: hidden;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-img {
    position: relative;
    margin-top: -50px;
    max-width: 400px;
    height: 280px;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    overflow: hidden;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-img {
    position: relative;
    margin-top: 40px;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: auto;
    margin-inline-end: auto;
    overflow: hidden;
  }
}
@media (max-width: 575px) {
  .h9-hero-img {
    height: 280px;
  }
}
.h9-hero-shape-1 {
  max-width: 620px;
  pointer-events: none;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-shape-1 {
    max-width: 450px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-shape-1 {
    max-width: 320px;
  }
}
.h9-hero-shape-2 {
  max-width: 609px;
  inset-inline-end: 0;
  pointer-events: none;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-hero-shape-2 {
    max-width: 420px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-hero-shape-2 {
    max-width: 300px;
  }
}

@-webkit-keyframes moving {
  0% {
    inset-inline-start: 60%;
  }
  50% {
    inset-inline-start: 6%;
  }
  100% {
    inset-inline-start: 60%;
  }
}

@keyframes moving {
  0% {
    inset-inline-start: 60%;
  }
  50% {
    inset-inline-start: 6%;
  }
  100% {
    inset-inline-start: 60%;
  }
}
/* !END: Hero CSS */
/**----------------------------------------
START: Choose CSS
----------------------------------------*/
.h9-choose-box.customers-box {
  background-color: var(--tj-color-common-white);
  padding: 30px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.h9-choose-box.customers-box .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 20px;
}
.h9-choose-box.customers-box .rating-area {
  margin-top: 18px;
}
.h9-choose-box.customers-box .customers-text {
  font-size: 18px;
  line-height: 1.44;
  color: var(--tj-color-text-body);
  font-weight: var(--tj-fw-regular);
  padding-top: 6px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-choose-box.customers-box {
    padding: 30px 15px;
    min-height: 250px;
  }
}
.h9-choose-box.choose-box {
  background-color: var(--tj-color-common-white);
  padding: 30px;
}
.h9-choose-box.choose-box .choose-icon {
  max-width: 90px;
  height: 90px;
  font-size: 64px;
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  border-radius: 50%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 5px;
  margin-bottom: 68px;
}
.h9-choose-box.choose-box .choose-icon i {
  width: 43px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-choose-box.choose-box .choose-icon i {
    width: 35px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-choose-box.choose-box .choose-icon {
    margin-bottom: 45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-choose-box.choose-box .choose-icon {
    max-width: 80px;
    height: 80px;
    font-size: 55px;
    margin-top: 0;
    margin-bottom: 30px;
  }
}
.h9-choose-box.choose-box .title {
  color: var(--tj-color-heading-primary);
  margin-bottom: 18px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-choose-box.choose-box .title {
    font-size: 20px;
  }
}
.h9-choose-box.choose-box .desc {
  color: var(--tj-color-text-body);
}
.h9-choose-box.choose-box .text-btn .btn-text {
  color: var(--tj-color-common-white);
}
.h9-choose-box.choose-box .text-btn .btn-icon {
  background-color: var(--tj-color-theme-primary);
}
.h9-choose-box.choose-box .customers ul li img {
  width: 67px;
  height: 67px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-choose-box.choose-box {
    padding: 30px 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-choose-box.choose-box {
    padding: 30px 15px;
    min-height: 250px;
  }
}
.h9-choose-box.h9-choose-bg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100%;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h9-choose-box.h9-choose-bg {
    min-height: 360px;
  }
}
@media (max-width: 575px) {
  .h9-choose-box.h9-choose-bg {
    min-height: 308px;
  }
}
.h9-choose-box.h9-choose-bg::before {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-color-theme-dark);
  opacity: 0.75;
  z-index: -1;
}
.h9-choose-box.h9-choose-bg .desc,
.h9-choose-box.h9-choose-bg .title {
  color: var(--tj-color-common-white);
}

/* !END: Choose CSS */
/**----------------------------------------
START: Service CSS
----------------------------------------*/
.h9-service {
  background-color: var(--tj-color-theme-dark);
  position: relative;
  z-index: 0;
  border-radius: 12px;
  overflow: hidden;
}
.h9-service.section-gap {
  padding-top: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-service .pin-spacer:has(.sec-heading.style-8) {
    height: auto !important;
  }
}
.h9-service .sec-heading.style-8 {
  padding-top: 120px;
  margin-bottom: 0;
  z-index: 2;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-service .sec-heading.style-8 {
    padding-top: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-service .sec-heading.style-8 {
    padding-top: 70px;
  }
  .h9-service .sec-heading.style-8.tj-sticky-panel-2 {
    position: relative !important;
    inset-inline-start: 0 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    height: auto !important;
    max-height: inherit !important;
    margin-bottom: -30px !important;
  }
}
.h9-service .sec-heading.style-8 .sec-title {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-service .sec-heading.style-8 .sec-title {
    font-size: 44px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-service .sec-heading.style-8 .sec-title {
    font-size: 36px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-service .sec-heading.style-8 .sec-title {
    max-width: 100%;
  }
}
.h9-service .sec-heading.style-8 .h9-service-more {
  margin-top: 24px;
}
.h9-service-wrapper .service-item.style-5 {
  padding: 30px 30px 35px;
  background-color: var(--tj-color-theme-bg-3);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-service-wrapper .service-item.style-5 {
    padding: 20px 15px 15px;
  }
}
.h9-service-wrapper .service-item.style-5 .service-content-area {
  padding: 0;
  margin-bottom: 40px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 22px;
  position: relative;
  z-index: 0;
}
@media (max-width: 575px) {
  .h9-service-wrapper .service-item.style-5 .service-content-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .h9-service-wrapper
    .service-item.style-5
    .service-content-area
    .service-icon {
    margin-bottom: 5px;
  }
}
.h9-service-wrapper
  .service-item.style-5
  .service-content-area
  .service-content {
  max-width: 100%;
}
.h9-service-wrapper .service-item.style-5 .service-content-area .title {
  max-width: 300px;
}
.h9-service-wrapper .service-item.style-5 .h9-service-nav {
  font-size: 59px;
  color: var(--tj-color-common-white);
  font-weight: var(--tj-fw-sbold);
  position: absolute;
  inset-inline-end: 0;
  top: -10px;
  z-index: 1;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-service-wrapper .service-item.style-5 .h9-service-nav {
    font-size: 50px;
    inset-inline-end: -9px;
    top: -16px;
  }
}
.h9-service-wrapper .service-item.style-5 .h9-service-nav:hover {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  color: var(--tj-color-theme-primary);
}
.h9-service-wrapper .service-item.style-5 .service-img {
  max-width: 100%;
  height: 433px;
  border-radius: 11px;
  overflow: hidden;
  -webkit-margin-start: 10px;
  margin-inline-start: 10px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-service-wrapper .service-item.style-5 .service-img {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    height: 300px;
  }
}
.h9-service-wrapper .service-item.style-5 .service-img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition:
    transform 500ms,
    -webkit-transform 500ms;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  -webkit-transform: perspective(0) rotateX(0) rotateY(0) scaleX(1) scaleY(1);
  transform: perspective(0) rotateX(0) rotateY(0) scaleX(1) scaleY(1);
  border-radius: 11px;
}
.h9-service-wrapper .service-item.style-5:hover .service-img img {
  -webkit-transform: perspective(400px) rotateX(0.09deg) rotateY(0) scale(1.1);
  transform: perspective(400px) rotateX(0.09deg) rotateY(0) scale(1.1);
}

.tj-scroll-progress {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  margin-bottom: 60px;
  background-color: var(--tj-color-theme-dark);
  padding-top: 120px;
  z-index: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-scroll-progress {
    padding-top: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-scroll-progress {
    padding-top: 70px;
    margin-bottom: 30px;
  }
}
.tj-scroll-progress::before {
  content: "";
  position: absolute;
  bottom: -48px;
  inset-inline-start: 0;
  width: 100%;
  height: 48px;
  pointer-events: none;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(var(--tj-color-theme-dark)),
    to(transparent)
  );
  background: linear-gradient(180deg, var(--tj-color-theme-dark), transparent);
}
.tj-scroll-progress-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
}
.tj-scroll-progress-item .tj-scroll-progress-sln {
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-grey-2);
  line-height: 1;
  margin-bottom: 0;
}
.tj-scroll-progress-item .tj-scroll-progress-ind {
  width: 0;
  height: 1px;
  background-color: var(--tj-color-border-2);
  position: relative;
  z-index: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.tj-scroll-progress-item .tj-scroll-progress-ind-inner {
  position: absolute;
  inset-inline-start: 0;
  top: -1px;
  width: 0;
  height: 3px;
  -webkit-transition: 0.3s 0.3s;
  transition: 0.3s 0.3s;
  background-color: var(--tj-color-theme-primary);
}
.tj-scroll-progress-item:last-child .tj-scroll-progress-ind {
  opacity: 0;
  visibility: hidden;
}
.tj-scroll-progress-item.active .tj-scroll-progress-sln {
  color: var(--tj-color-common-white);
}
.tj-scroll-progress-item.active .tj-scroll-progress-ind {
  width: 72px;
}
.tj-scroll-progress-item.active .tj-scroll-progress-ind-inner {
  width: 100%;
}

/* !END: Service CSS */
/**----------------------------------------
START: Home 9 About CSS
----------------------------------------*/
.h9-about-section {
  padding-top: 80px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-about-section {
    padding-top: 70px;
  }
}

.h9-sec-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 30px;
}
.h9-sec-heading .sub-title {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}
.h9-sec-heading .sec-title {
  width: 58%;
}
.h9-sec-heading .sec-title span {
  color: inherit;
  -webkit-padding-start: 105px;
  padding-inline-start: 105px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-sec-heading .sec-title span {
    -webkit-padding-start: 80px;
    padding-inline-start: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-sec-heading .sec-title span {
    -webkit-padding-start: 70px;
    padding-inline-start: 70px;
  }
}
.h9-sec-heading .sec-title .line {
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(var(--tj-color-heading-primary)),
    to(var(--tj-color-text-body-3))
  );
  background-image: linear-gradient(
    90deg,
    var(--tj-color-heading-primary) var(--highlight-offset),
    var(--tj-color-text-body-3) var(--highlight-offset)
  );
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-sec-heading .sec-title {
    width: 55%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-sec-heading .sec-title {
    width: 65%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-sec-heading .sec-title {
    width: 100%;
  }
}

.h9-about {
  background-color: var(--tj-color-theme-dark);
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.h9-about-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.h9-about-content {
  width: 50%;
}
.h9-about-content .desc {
  margin-bottom: 0;
}
.h9-about-content .about-btn-area-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 30px;
}
.h9-about-content .about-btn-area-2 .video-btn {
  width: auto;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 15px;
  border: none;
  background: none;
  backdrop-filter: none;
  position: unset;
  -webkit-transform: unset;
  -ms-transform: unset;
  transform: unset;
}
.h9-about-content .about-btn-area-2 .video-btn .play-btn {
  background-color: var(--tj-color-theme-bg);
  color: var(--tj-color-theme-primary);
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 14px;
  position: relative;
  -webkit-animation: pulse3 2s infinite;
  animation: pulse3 2s infinite;
  z-index: 5;
  margin: 0;
}
.h9-about-content .about-btn-area-2 .video-btn .play-btn i {
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.h9-about-content .about-btn-area-2 .video-btn .video-text {
  color: var(--tj-color-heading-primary);
  font-weight: var(--tj-fw-sbold);
  font-size: 16px;
  line-height: 1.2;
  position: relative;
}
.h9-about-content .about-btn-area-2 .video-btn .video-text::after {
  content: "";
  position: absolute;
  bottom: 1px;
  inset-inline-end: 0;
  width: 100%;
  height: 1px;
  background-color: var(--tj-color-heading-primary);
}
.h9-about-content .about-btn-area-2 .video-btn:hover {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.h9-about-content .about-btn-area-2 .video-btn:hover .video-text::after {
  -webkit-animation: linehover 0.8s linear;
  animation: linehover 0.8s linear;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-about-content .about-btn-area-2 {
    gap: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-about-content {
    width: 100%;
  }
}
.h9-about-funfact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 530px;
  width: 100%;
  padding: 20px 0 24px;
  margin: 30px 0;
  border-top: 1px dashed rgba(12, 30, 33, 0.2);
  border-bottom: 1px dashed rgba(12, 30, 33, 0.2);
}
.h9-about-funfact .countup-item {
  width: 50%;
  padding: 0;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.h9-about-funfact .countup-item:not(:last-child) {
  -webkit-padding-end: 55px;
  padding-inline-end: 55px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-about-funfact .countup-item:not(:last-child) {
    -webkit-padding-end: 30px;
    padding-inline-end: 30px;
  }
}
.h9-about-funfact .countup-item:not(:first-child) {
  -webkit-padding-start: 30px;
  padding-inline-start: 30px;
  position: relative;
  z-index: 0;
}
.h9-about-funfact .countup-item:not(:first-child)::after {
  content: "";
  position: absolute;
  inset-inline-start: -15px;
  top: 52%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 0;
  height: 88%;
  -webkit-border-end: 1px dashed rgba(12, 30, 33, 0.2);
  border-inline-end: 1px dashed rgba(12, 30, 33, 0.2);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-about-funfact .countup-item:not(:first-child)::after {
    inset-inline-start: 0;
  }
}
.h9-about-funfact .countup-item .count-text {
  max-width: 205px;
  color: var(--tj-color-text-body);
}
.h9-about-funfact .countup-item .inline-content {
  color: var(--tj-color-heading-primary);
  margin-bottom: 15px;
}
.h9-about-funfact .countup-item .inline-content .odometer {
  color: var(--tj-color-heading-primary);
}
.h9-about-funfact .countup-item .inline-content .odometer .odometer-digit,
.h9-about-funfact .countup-item .inline-content .odometer span {
  color: var(--tj-color-heading-primary);
}
@media (max-width: 575px) {
  .h9-about-funfact .countup-item .inline-content {
    margin-bottom: 5px;
  }
}
@media (max-width: 575px) {
  .h9-about-funfact .countup-item {
    width: 100%;
    text-align: start;
  }
  .h9-about-funfact .countup-item:not(:last-child) {
    -webkit-padding-end: 0;
    padding-inline-end: 0;
    padding-bottom: 20px;
  }
  .h9-about-funfact .countup-item:not(:first-child) {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    padding-top: 15px;
  }
  .h9-about-funfact .countup-item:not(:first-child)::after {
    inset-inline-start: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    height: 0;
    -webkit-border-end: 0;
    border-inline-end: 0;
    border-top: 1px dashed rgba(12, 30, 33, 0.2);
  }
}
.h9-about-img {
  max-width: 450px;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
  margin-top: -77px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-about-img {
    max-width: 100%;
    width: 100%;
  }
}
.h9-about-img .box-area {
  max-width: 194px;
  bottom: 0;
  inset-inline-end: 0;
  inset-inline-start: inherit;
  padding: 17px 0 0 28px;
  border-start-start-radius: 12px;
  border-start-end-radius: 0;
}
.h9-about-img .box-area::before {
  inset-inline-start: inherit;
  inset-inline-end: 0;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.h9-about-img .box-area::after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  inset-inline-start: -12px;
  inset-inline-end: inherit;
}
.h9-about-img .author-info {
  position: relative;
  -webkit-padding-start: 18px;
  padding-inline-start: 18px;
}
.h9-about-img .author-info::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  position: absolute;
  top: 13px;
  inset-inline-start: 0;
  -webkit-animation: pulse3 1.5s linear infinite;
  animation: pulse3 1.5s linear infinite;
}
.h9-about-img .author-info .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 0;
}
.h9-about-img .author-info .designation {
  font-size: 14px;
  color: var(--tj-color-text-body);
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-about-img {
    max-width: 420px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-about-img {
    margin: 0 auto 30px;
  }
}

/* !END: Home 9 About CSS  */
/**----------------------------------------
START: Team CSS
----------------------------------------*/
.h9-team-item-wrap .team-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 40px 43px 50px 30px;
  background-color: var(--tj-color-common-white);
  border-radius: 8px;
  position: relative;
}
.h9-team-item-wrap .team-item::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 0;
  background-color: var(--tj-color-theme-primary);
  top: 50%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  visibility: hidden;
  z-index: 1;
  border-radius: 8px;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.h9-team-item-wrap .team-item .team-content {
  max-width: 300px;
  width: 100%;
  margin-top: 0;
  z-index: 2;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-team-item-wrap .team-item .team-content {
    text-align: center;
  }
}
.h9-team-item-wrap .team-item .title {
  width: 100%;
  font-weight: var(--tj-fw-medium);
  margin-bottom: 13px;
  -webkit-transition: none;
  transition: none;
}
.h9-team-item-wrap .team-item .title a:hover {
  color: var(--tj-color-common-white);
  letter-spacing: 0;
}
.h9-team-item-wrap .team-item .designation {
  background-color: var(--tj-color-theme-bg);
  color: var(--tj-color-theme-primary);
  font-size: 16px;
  padding: 4px 10px;
  border-radius: 40px;
}
.h9-team-item-wrap .team-item .text-btn {
  -webkit-box-pack: right;
  -ms-flex-pack: right;
  justify-content: right;
  gap: 0;
}
.h9-team-item-wrap .team-item .text-btn .btn-text {
  color: var(--tj-color-common-white);
  text-indent: -100px;
}
.h9-team-item-wrap .team-item .text-btn .btn-icon {
  width: 48px;
  height: 48px;
}
.h9-team-item-wrap .team-item .team-img {
  width: 238px;
  height: 238px;
  overflow: hidden;
  border-radius: 100%;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
  -webkit-margin-end: auto;
  margin-inline-end: auto;
  background-color: var(--tj-color-grey-2);
  position: absolute;
  top: 50%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0.8);
  -ms-transform: translate(-50%, -50%) scale(0.8);
  transform: translate(-50%, -50%) scale(0.8);
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.h9-team-item-wrap .team-item .team-img::after,
.h9-team-item-wrap .team-item .team-img::before {
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-team-item-wrap .team-item .team-img {
    width: 200px;
    height: 200px;
    opacity: 1;
    visibility: visible;
    position: unset;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin: 20px auto;
  }
}
.h9-team-item-wrap .team-item:hover::before {
  height: 100%;
  opacity: 1;
  visibility: visible;
}
.h9-team-item-wrap .team-item:hover .title {
  color: var(--tj-color-common-white);
}
.h9-team-item-wrap .team-item:hover .designation {
  background-color: var(--tj-color-common-white);
}
.h9-team-item-wrap .team-item:hover .team-img {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(-50%, -50%) scale(1);
  -ms-transform: translate(-50%, -50%) scale(1);
  transform: translate(-50%, -50%) scale(1);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-team-item-wrap .team-item:hover .team-img {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
.h9-team-item-wrap .team-item:hover .text-btn {
  gap: 10px;
}
.h9-team-item-wrap .team-item:hover .text-btn .btn-text {
  text-indent: 0;
}
.h9-team-item-wrap .team-item:hover .text-btn .btn-icon {
  background-color: var(--tj-color-common-white);
}
.h9-team-item-wrap .team-item:hover .text-btn .btn-icon i {
  color: var(--tj-color-theme-dark);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-team-item-wrap .team-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 30px 20px 35px 20px;
  }
}

/* !END: Team CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.h9-testimonial {
  overflow: hidden;
}
.h9-testimonial-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 15px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-testimonial-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-testimonial-wrap {
    margin-top: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-testimonial-wrap.style-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.h9-testimonial .testimonial-item {
  background-color: var(--tj-color-common-white);
  padding: 35px 30px 35px;
  height: 100%;
  border-radius: 8px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-testimonial .testimonial-item {
    padding: 35px 22px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-testimonial .testimonial-item {
    padding: 30px 20px;
  }
}
.h9-testimonial .testimonial-item .star-ratings {
  font-size: 20px;
}
.h9-testimonial .testimonial-item .desc {
  font-size: 18px;
  line-height: 1.444;
  padding-top: 27px;
  padding-bottom: 22px;
}
.h9-testimonial .testimonial-item .desc p {
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-testimonial .testimonial-item .desc {
    font-size: 17px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-testimonial .testimonial-item .desc {
    font-size: 16px;
    padding-top: 20px;
    padding-bottom: 18px;
  }
}
.h9-testimonial .testimonial-item .testimonial-author {
  border: 0;
  padding-top: 0;
}
.h9-testimonial .testimonial-item .testimonial-author .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 7px;
}
.h9-testimonial .testimonial-item .testimonial-author .designation {
  font-size: 16px;
  color: var(--tj-color-text-body-3);
}
.h9-testimonial .testimonial-item.style-2 {
  background-color: var(--tj-color-theme-bg);
}
.h9-testimonial-heading {
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(var(--tj-color-theme-primary)),
    to(var(--tj-color-theme-dark))
  );
  background-image: linear-gradient(
    var(--tj-color-theme-primary),
    var(--tj-color-theme-dark)
  );
  border-radius: 10px;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  overflow: hidden;
}
.h9-testimonial-heading .sec-heading {
  padding: 35px 30px 0 30px;
  margin-bottom: 10px;
}
.h9-testimonial-heading .sec-heading .sub-title {
  color: var(--tj-color-common-white);
}
.h9-testimonial-heading .sec-heading .sub-title::before {
  background-color: var(--tj-color-common-white);
}
.h9-testimonial-heading .sec-heading .sec-title {
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-testimonial-heading .sec-heading {
    padding: 30px 20px 0 20px;
  }
}
.h9-testimonial-heading .testimonial-img {
  max-width: 415px;
  margin: 0 auto;
}
.h9-testimonial-heading .shape-icon {
  max-width: 420px;
  width: 100%;
  position: absolute;
  bottom: 0;
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: -1;
}

/* !END: Testimonial CSS */
/**----------------------------------------
START: CTA CSS
----------------------------------------*/
.h9-cta-section {
  position: relative;
  overflow: hidden;
  z-index: 1;
  border-radius: 12px;
  margin-bottom: 15px;
  background-color: var(--tj-color-theme-dark);
}
.h9-cta-section::before {
  content: "";
  position: absolute;
  top: -50px;
  inset-inline-start: -100px;
  width: 550px;
  height: 200px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  backdrop-filter: blur(60px);
  -webkit-filter: blur(60px);
  filter: blur(60px);
  opacity: 0.3;
  z-index: -1;
}
.h9-cta-section::after {
  content: "";
  position: absolute;
  bottom: -50px;
  inset-inline-end: -30px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  backdrop-filter: blur(60px);
  -webkit-filter: blur(60px);
  filter: blur(60px);
  opacity: 0.3;
  z-index: -1;
}
.h9-cta-section .cta-bg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: luminosity;
  opacity: 0.15;
  z-index: -1;
}
.h9-cta-section .cta-content {
  padding: 100px 0;
}
.h9-cta-section .cta-content .title {
  color: var(--tj-color-common-white);
  font-size: 94px;
  line-height: 1;
  margin: 0;
}
.h9-cta-section .cta-content .title::before {
  content: "";
  position: absolute;
  top: 50%;
  inset-inline-start: 50%;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background-color: var(--tj-color-theme-primary);
  backdrop-filter: blur(60px);
  -webkit-filter: blur(60px);
  filter: blur(60px);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  z-index: -1;
}
.h9-cta-section .cta-content .title .cta-img {
  position: relative;
  display: inline-block;
  margin: 0 25px;
}
.h9-cta-section .cta-content .title .cta-img a {
  position: absolute;
  width: 88px;
  height: 88px;
  font-size: 45px;
  bottom: -40px;
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: var(--tj-color-theme-primary);
}
.h9-cta-section .cta-content .title .cta-img a i {
  color: var(--tj-color-common-white);
}
.h9-cta-section .cta-content .title .cta-img a:hover {
  -webkit-transform: translateX(-50%) scale(0.9);
  -ms-transform: translateX(-50%) scale(0.9);
  transform: translateX(-50%) scale(0.9);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-cta-section .cta-content .title .cta-img a {
    width: 78px;
    height: 78px;
    font-size: 38px;
    bottom: -38px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-cta-section .cta-content .title .cta-img a {
    width: 70px;
    height: 70px;
    font-size: 35px;
    bottom: -35px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-cta-section .cta-content .title .cta-img a {
    width: 70px;
    height: 70px;
    font-size: 35px;
    bottom: -35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-cta-section .cta-content .title .cta-img a {
    width: 60px;
    height: 60px;
    font-size: 30px;
    bottom: -30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-cta-section .cta-content .title .cta-img {
    margin-top: 30px;
    margin-bottom: 55px;
  }
}
.h9-cta-section .cta-content .title img {
  max-width: 240px;
  width: 100%;
  background-color: var(--tj-color-text-body-2);
  border: 3px solid var(--tj-color-common-white);
  border-radius: 10px;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-cta-section .cta-content .title img {
    max-width: 220px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-cta-section .cta-content .title img {
    max-width: 190px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h9-cta-section .cta-content .title img {
    max-width: 190px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-cta-section .cta-content .title img {
    max-width: 180px;
  }
}
.h9-cta-section .cta-content .title:hover::before {
  opacity: 0.4;
}
.h9-cta-section .cta-content .title:hover img {
  -webkit-transform: rotate(3deg);
  -ms-transform: rotate(3deg);
  transform: rotate(3deg);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h9-cta-section .cta-content .title {
    font-size: 78px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h9-cta-section .cta-content .title {
    font-size: 64px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-cta-section .cta-content .title {
    font-size: 55px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-cta-section .cta-content {
    padding: 60px 0;
  }
}

/* !END: CTA CSS */
/* START: Case Study CSS */
.h9-project-wrapper {
  background-color: var(--tj-color-theme-dark);
}
.h9-project-wrapper .project-item {
  background-color: transparent;
  border-radius: 10px;
  height: 527px;
}
.h9-project-wrapper .project-item .project-content {
  position: absolute;
  bottom: 30px;
  inset-inline-start: 30px;
  inset-inline-end: 30px;
  padding: 25px 20px 20px 25px;
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  opacity: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  z-index: 3;
}
@media (max-width: 575px) {
  .h9-project-wrapper .project-item .project-content {
    bottom: 15px;
    inset-inline-start: 15px;
    inset-inline-end: 15px;
  }
}
.h9-project-wrapper .project-item .project-content .project-text {
  margin-top: 14px;
}
.h9-project-wrapper .project-item:hover .project-content {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h9-project-wrapper .project-item {
    height: 380px;
  }
}
.h9-project-slider {
  -webkit-mask-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgba(12, 30, 33, 0)),
    color-stop(20%, var(--tj-color-theme-dark)),
    color-stop(80%, var(--tj-color-theme-dark)),
    to(rgba(12, 30, 33, 0))
  );
  -webkit-mask-image: linear-gradient(
    90deg,
    rgba(12, 30, 33, 0) 0%,
    var(--tj-color-theme-dark) 20%,
    var(--tj-color-theme-dark) 80%,
    rgba(12, 30, 33, 0) 100%
  );
  mask-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgba(12, 30, 33, 0)),
    color-stop(20%, var(--tj-color-theme-dark)),
    color-stop(80%, var(--tj-color-theme-dark)),
    to(rgba(12, 30, 33, 0))
  );
  mask-image: linear-gradient(
    90deg,
    rgba(12, 30, 33, 0) 0%,
    var(--tj-color-theme-dark) 20%,
    var(--tj-color-theme-dark) 80%,
    rgba(12, 30, 33, 0) 100%
  );
}
@media (max-width: 575px) {
  .h9-project-slider {
    -webkit-mask-image: none;
    mask-image: none;
  }
}

/* !END: Case Study CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.h9-blog-wrapper .blog-item.h5-blog-item {
  padding: 15px;
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-thumb {
  width: 42.2%;
  height: 265px;
  min-height: 0;
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-thumb::before {
  display: none;
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-thumb a {
  display: inline-block;
  height: 100%;
  width: 100%;
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-thumb a img {
  min-height: 100%;
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-date {
  top: 15px;
  bottom: auto;
  inset-inline-start: auto;
  inset-inline-end: 15px;
  display: none;
  background-color: var(--tj-color-common-white);
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-date .date {
  color: var(--tj-color-theme-dark);
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-date .month {
  color: var(--tj-color-theme-dark-3);
}
.h9-blog-wrapper .blog-item.h5-blog-item .blog-content {
  padding: 25px 15px 25px 25px;
  width: 57.8%;
}
.h9-blog-wrapper .blog-item:first-child.h5-blog-item {
  position: relative;
  z-index: 0;
  padding: 0;
}
.h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-thumb {
  width: 100%;
  min-height: 100%;
}
.h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-thumb::before {
  display: block;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(rgba(12, 30, 33, 0)),
    to(var(--tj-color-theme-dark))
  );
  background: linear-gradient(
    180deg,
    rgba(12, 30, 33, 0) 0%,
    var(--tj-color-theme-dark) 100%
  );
  opacity: 1;
}
.h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-date {
  display: block;
}
.h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content {
  position: absolute;
  bottom: 30px;
  inset-inline-start: 30px;
  inset-inline-end: 15px;
  width: calc(100% - 45px);
  padding: 0;
  background-color: transparent;
  z-index: 2;
}
.h9-blog-wrapper
  .blog-item:first-child.h5-blog-item
  .blog-content
  .blog-meta
  span
  a {
  color: var(--tj-color-text-body-2);
  border: 0;
}
.h9-blog-wrapper
  .blog-item:first-child.h5-blog-item
  .blog-content
  .blog-meta
  span:nth-child(2) {
  color: var(--tj-color-text-body-2);
}
.h9-blog-wrapper
  .blog-item:first-child.h5-blog-item
  .blog-content
  .blog-meta
  span:nth-child(2)
  a {
  color: var(--tj-color-text-body-5);
}
.h9-blog-wrapper
  .blog-item:first-child.h5-blog-item
  .blog-content
  .blog-meta
  span:nth-child(2)
  a:hover {
  color: var(--tj-color-theme-primary);
}
.h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .title {
  font-size: 32px;
  font-weight: var(--tj-fw-medium);
  color: var(--tj-color-common-white);
}
.h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .text-btn {
  margin-top: 24px;
}
.h9-blog-wrapper
  .blog-item:first-child.h5-blog-item
  .blog-content
  .text-btn
  .btn-text {
  color: var(--tj-color-common-white);
}
.h9-blog-wrapper
  .blog-item:first-child.h5-blog-item
  .blog-content
  .text-btn
  .btn-icon {
  background-color: var(--tj-color-theme-primary);
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-thumb {
    height: 500px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content {
    bottom: 15px;
    inset-inline-start: 15px;
  }
  .h9-blog-wrapper
    .blog-item:first-child.h5-blog-item
    .blog-content
    .blog-title {
    font-size: 26px;
  }
}
@media (max-width: 575px) {
  .h9-blog-wrapper .blog-item.h5-blog-item .blog-thumb {
    width: 100%;
    height: 240px;
  }
  .h9-blog-wrapper .blog-item.h5-blog-item .blog-content {
    padding: 20px 0 10px 0;
    width: 100%;
  }
  .h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-thumb {
    height: 400px;
    max-height: 400px;
  }
  .h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .title {
    font-size: 24px;
    font-weight: var(--tj-fw-sbold);
  }
  .h9-blog-wrapper .blog-item:first-child.h5-blog-item .blog-content .text-btn {
    margin-top: 16px;
  }
}

/* !END: Blog CSS */
/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.h10-header.header-area.header-absolute {
  top: 15px;
  padding-top: 24px;
  padding-bottom: 24px;
  z-index: 999;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-header.header-area.header-absolute {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-header.header-area.header-absolute {
    top: 12px;
  }
}
.h10-header.header-area.header-absolute .header-bottom {
  border-bottom: 0;
}
.h10-header.header-area.header-absolute .mainmenu > ul {
  padding: 0 30px;
  background-color: var(--tj-color-common-white);
  border-radius: 56px;
}
.h10-header.header-area.header-absolute .mainmenu > ul > li > .mega-menu {
  top: calc(100% - 24px);
}
.h10-header.header-area.header-absolute .mainmenu > ul > li > a {
  padding-top: 16px;
  padding-bottom: 16px;
}
.h10-header.header-area.header-absolute
  .mainmenu
  > ul
  > li.has-dropdown
  > a::after {
  top: 19px;
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.tj-footer-section.h10-footer {
  padding-top: 0;
}
.tj-footer-section.h10-footer .h10-footer-title {
  font-size: 64px;
  color: var(--tj-color-common-white);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-footer-section.h10-footer .h10-footer-title {
    font-size: 58px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h10-footer .h10-footer-title {
    font-size: 44px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-footer-section.h10-footer .h10-footer-title {
    font-size: 40px;
  }
}
@media (max-width: 575px) {
  .tj-footer-section.h10-footer .h10-footer-title {
    font-size: 38px;
  }
}
.tj-footer-section.h10-footer .h10-footer-subscribe-wrapper {
  margin-bottom: 30px;
}
.tj-footer-section.h10-footer .h10-footer-subscribe-wrapper .award-logo-area {
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h10-footer .h10-footer-subscribe-wrapper .award-logo-area {
    margin-bottom: 30px;
  }
}
.tj-footer-section.h10-footer .footer-col-1::before {
  display: none;
}
.tj-footer-section.h10-footer .footer-col-1 .bg-shape-widget {
  position: absolute;
  bottom: -160px;
  inset-inline-start: -50px;
  width: 362px;
  height: 372px;
  opacity: 1;
  border-radius: 50%;
  background: var(--tj-color-theme-primary);
  -webkit-filter: blur(110px);
  filter: blur(110px);
  z-index: -1;
}
.tj-footer-section.h10-footer .footer-col-1 .text-btn {
  font-size: 20px;
  letter-spacing: -0.03em;
  line-height: 1;
  padding: 5px 20px 8px;
  border: 1px solid var(--tj-color-grey-3);
  border-radius: 50px;
  margin-top: 24px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h10-footer .footer-col-1 .text-btn {
    font-size: 18px;
    margin-top: 16px;
  }
}
.tj-footer-section.h10-footer .footer-col-1 .text-btn .btn-text {
  color: var(--tj-color-common-white);
}
.tj-footer-section.h10-footer .footer-col-2 {
  -webkit-padding-start: 30px;
  padding-inline-start: 30px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-footer-section.h10-footer .footer-col-2 {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h10-footer .footer-col-2 {
    -webkit-padding-start: 30px;
    padding-inline-start: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj-footer-section.h10-footer .footer-col-2 {
    -webkit-padding-start: 70px;
    padding-inline-start: 70px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h10-footer .footer-col-2 {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
.tj-footer-section.h10-footer .footer-col-3 {
  -webkit-padding-start: 80px;
  padding-inline-start: 80px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj-footer-section.h10-footer .footer-col-3 {
    -webkit-padding-start: 44px;
    padding-inline-start: 44px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h10-footer .footer-col-3 {
    margin-top: 0;
    -webkit-padding-start: 12px;
    padding-inline-start: 12px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h10-footer .footer-col-3 {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj-footer-section.h10-footer .widget-contact {
    margin-top: 0;
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
  }
}
.tj-footer-section.h10-footer .footer-subscribe {
  padding: 42px 30px 46px;
  -webkit-margin-start: 30px;
  margin-inline-start: 30px;
  border: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj-footer-section.h10-footer .footer-subscribe {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .tj-footer-section.h10-footer .footer-subscribe {
    padding: 32px 20px 36px;
  }
}
@media (max-width: 575px) {
  .tj-footer-section.h10-footer .footer-subscribe {
    padding: 32px 20px 36px;
  }
}
.tj-footer-section.h10-footer .footer-subscribe .title {
  max-width: 100%;
}
.tj-footer-section.h10-footer .footer-subscribe .subscribe-form {
  width: 100%;
}
.tj-footer-section.h10-footer .footer-subscribe .subscribe-form label {
  margin-top: 16px;
}
.tj-footer-section.h10-footer .footer-subscribe .subscribe-form button {
  inset-inline-end: 6px;
}
.tj-footer-section.h10-footer .bg-shape-4 {
  top: auto;
  bottom: 0;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

/* !END: Theme Footer CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h10-hero {
  padding-bottom: 0;
  overflow: hidden;
}
@media only screen and (min-width: 1765px),
  only screen and (min-width: 1601px) and (max-width: 1764px) {
  .h10-hero .container {
    max-width: 1422px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero {
    padding-top: 98px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-hero {
    padding-top: 75px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero-award-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
    gap: 50px;
  }
}
.h10-hero-award-wrapper .h6-hero-history {
  margin-top: 43px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h10-hero-award-wrapper .h6-hero-history {
    margin-top: 23px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-hero-award-wrapper .h6-hero-history {
    margin-top: 20px;
  }
}
.h10-hero-award-wrapper .circle-text-wrap {
  margin-top: 90px;
  position: relative;
  inset-inline-end: auto;
  bottom: 0;
  background-color: var(--tj-color-common-white);
  width: 192px;
  height: 192px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero-award-wrapper .circle-text-wrap {
    margin-top: 41px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-hero-award-wrapper .circle-text-wrap {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h10-hero-award-wrapper .circle-text-wrap {
    width: 162px;
    height: 162px;
  }
}
.h10-hero-award-wrapper .circle-text-wrap .circle-text {
  width: 158px;
  height: 163px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h10-hero-award-wrapper .circle-text-wrap .circle-text {
    width: 132px;
    height: 137px;
  }
}
.h10-hero-award-wrapper .circle-text-wrap .circle-icon {
  font-size: 30px;
}
.h10-hero-award-wrapper .circle-text-wrap .circle-icon i {
  color: var(--tj-color-theme-dark);
}
.h10-hero .banner-content-2 {
  max-width: 875px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h10-hero .banner-content-2 {
    padding-top: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero .banner-content-2 {
    padding-top: 20px;
    padding-bottom: 20px;
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-hero .banner-content-2 {
    padding-bottom: 10px;
  }
}
.h10-hero .banner-content-2 .banner-title {
  font-size: 94px;
  line-height: 1.043;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h10-hero .banner-content-2 .banner-title {
    font-size: 84px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h10-hero .banner-content-2 .banner-title {
    font-size: 64px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero .banner-content-2 .banner-title {
    font-size: 64px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h10-hero .banner-content-2 .banner-title {
    font-size: 54px;
  }
}
@media (max-width: 575px) {
  .h10-hero .banner-content-2 .banner-title {
    font-size: 35px;
  }
}
.h10-hero .banner-content-2 .banner-title i {
  font-size: 82px;
  -webkit-margin-start: 5px;
  margin-inline-start: 5px;
  display: inline-block;
  position: relative;
  bottom: -5px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero .banner-content-2 .banner-title i {
    font-size: 62px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h10-hero .banner-content-2 .banner-title i {
    font-size: 50px;
    -webkit-margin-start: 1px;
    margin-inline-start: 1px;
  }
}
@media (max-width: 575px) {
  .h10-hero .banner-content-2 .banner-title i {
    font-size: 30px;
    -webkit-margin-start: 1px;
    margin-inline-start: 1px;
  }
}
.h10-hero .banner-content-2 .banner-desc-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 30px;
  margin-top: 40px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero .banner-content-2 .banner-desc-area {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-hero .banner-content-2 .banner-desc-area {
    margin-top: 20px;
  }
}
@media (max-width: 575px) {
  .h10-hero .banner-content-2 .banner-desc-area {
    font-size: 16px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 24px;
  }
}
.h10-hero .banner-content-2 .banner-desc-area .tj-primary-btn {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.h10-hero .banner-content-2 .banner-desc-area .banner-desc {
  max-width: 375px;
  width: 100%;
  font-size: 18px;
  line-height: 1.444;
  color: var(--tj-color-text-body-4);
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-hero .banner-content-2 .banner-desc-area .banner-desc {
    font-size: 16px;
  }
}
.h10-hero-banner {
  margin: 65px auto 0;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero-banner {
    margin-top: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-hero-banner {
    margin-top: 70px;
    height: 500px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-hero-banner {
    margin-top: 70px;
    height: 300px;
  }
}
.h10-hero-banner-video {
  height: 100%;
  width: 100%;
  border-radius: 12px;
  overflow: hidden;
  z-index: 0;
}
.h10-hero-banner-video video {
  -o-object-fit: cover;
  object-fit: cover;
  z-index: -100;
  background-position: 50%;
  background-size: cover;
  width: 100%;
  height: 100%;
  display: inline-block;
  margin-bottom: -10px;
}

/* !END: Hero CSS */
/**----------------------------------------
START: Service CSS
----------------------------------------*/
.h10-service-wrapper .service-item.style-4 {
  padding: 30px 30px 35px;
  position: relative;
  border-radius: 8px;
  z-index: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-service-wrapper .service-item.style-4 {
    padding: 30px 20px;
  }
}
.h10-service-wrapper .service-item.style-4 .h10-service-sln {
  position: absolute;
  top: 0;
  inset-inline-end: 0;
  width: 48px;
  height: 48px;
  background-color: var(--tj-color-grey-1);
  border-end-start-radius: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-theme-dark-3);
  margin-bottom: 0;
  z-index: 1;
}
.h10-service-wrapper .service-item.style-4 .h10-service-sln::before,
.h10-service-wrapper .service-item.style-4 .h10-service-sln::after {
  content: "";
  position: absolute;
  inset-inline-start: -8px;
  top: 0;
  width: 8px;
  height: 8px;
  background: url('data:image/svg+xml,<svg viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-11 h-11"><path d="M11 1.54972e-06L0 0L2.38419e-07 11C1.65973e-07 4.92487 4.92487 1.62217e-06 11 1.54972e-06Z" fill="%23ecf0f0"></path></svg>');
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.h10-service-wrapper .service-item.style-4 .h10-service-sln::after {
  inset-inline-start: auto;
  top: auto;
  inset-inline-end: 0;
  bottom: -8px;
}
.h10-service-wrapper .service-item.style-4 .service-icon {
  width: 90px;
  height: 90px;
  margin-bottom: 54px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-service-wrapper .service-item.style-4 .service-icon {
    width: 80px;
    height: 80px;
    font-size: 60px;
    margin-bottom: 45px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-service-wrapper .service-item.style-4 .service-icon {
    margin-bottom: 35px;
  }
}
.h10-service-wrapper .service-item.style-4 .service-content {
  overflow: hidden;
}
.h10-service-wrapper .service-item.style-4 .text-btn {
  -webkit-transform: translateX(calc(-100% + 30px));
  -ms-transform: translateX(calc(-100% + 30px));
  transform: translateX(calc(-100% + 30px));
}
.h10-service-wrapper .service-item.style-4:hover .service-icon {
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.3) 0%,
    rgba(255, 255, 255, 0) 50%,
    rgba(255, 255, 255, 0.3) 100%
  );
  backdrop-filter: blur(15px);
}
.h10-service-wrapper .service-item.style-4:hover .service-icon i {
  color: var(--tj-color-common-white);
}
.h10-service-wrapper .service-item.style-4:hover .desc {
  color: var(--tj-color-grey-1);
}
.h10-service-wrapper .service-item.style-4:hover .text-btn {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}

/* !END: Service CSS */
/**----------------------------------------
START: Home 10 About CSS
----------------------------------------*/
.h10-about-content-wrapper {
  max-width: 644px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h10-about-content-wrapper {
    max-width: 629px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h10-about-content-wrapper {
    max-width: 524px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-about-content-wrapper {
    max-width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-about-content-wrapper {
    margin-bottom: 30px;
  }
}
.h10-about-content .desc {
  max-width: 375px;
  font-size: 18px;
  line-height: 1.444;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-about-banner {
    height: 100%;
  }
}
.h10-about-clients.customers-box {
  padding-top: 10px;
  margin-bottom: 28px;
}
.h10-about-clients.customers-box ul li:not(:first-child) {
  -webkit-margin-start: -19px;
  margin-inline-start: -19px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-about-clients.customers-box ul li:not(:first-child) {
    -webkit-margin-start: -16px;
    margin-inline-start: -16px;
  }
}
.h10-about-clients.customers-box ul li img,
.h10-about-clients.customers-box ul li span {
  width: 57px;
  height: 57px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-about-clients.customers-box ul li img,
  .h10-about-clients.customers-box ul li span {
    width: 50px;
    height: 50px;
  }
}
.h10-about-funfact {
  border-top-style: solid;
  border-color: var(--tj-color-border-1);
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
  position: relative;
  z-index: 0;
}
.h10-about-funfact::before {
  content: "";
  position: absolute;
  top: -2px;
  inset-inline-start: 0;
  width: 32px;
  height: 3px;
  background-color: var(--tj-color-theme-primary);
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-about-funfact .countup-item:not(:last-child) {
    -webkit-padding-end: 30px;
    padding-inline-end: 30px;
  }
}
.h10-about-funfact .countup-item:not(:first-child) {
  -webkit-padding-start: 15px;
  padding-inline-start: 15px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-about-funfact .countup-item:not(:first-child) {
    padding: 0;
  }
}
@media (max-width: 575px) {
  .h10-about-funfact .countup-item:not(:first-child) {
    padding-top: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h10-about-funfact .countup-item:not(:first-child)::after {
    inset-inline-start: -26px;
  }
}
.h10-about-funfact .countup-item::after {
  border: 0;
}

/* !END: Home 10 About CSS  */
/**----------------------------------------
START: Process CSS
----------------------------------------*/
.h10-process {
  background-color: var(--tj-color-theme-dark);
  position: relative;
  z-index: 0;
  border-radius: 12px;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h10-process .bg-shape-3 {
    inset-inline-start: -16%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h10-process .bg-shape-3 {
    inset-inline-start: -28%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-process .bg-shape-3 {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-process .pin-spacer:has(.sec-heading.style-3) {
    height: auto !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-process .sec-heading.style-3.tj-sticky-panel-3 {
    position: relative !important;
    inset-inline-start: 0 !important;
    top: 0 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    height: auto !important;
    max-height: inherit !important;
  }
}
.h10-process .sec-heading.style-3 .sec-title {
  color: var(--tj-color-common-white);
}
.h10-process .sec-heading.style-3 .h10-process-more {
  margin-top: 24px;
}
.h10-process-wrapper {
  max-width: 644px;
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-process-wrapper {
    max-width: 100%;
  }
}
.h10-process-wrapper .h10-process-item {
  background-color: var(--tj-color-theme-bg-3);
  padding: 108px 30px 35px;
  position: relative;
  border-radius: 8px;
  z-index: 0;
}
.h10-process-wrapper .h10-process-item:not(:last-child) {
  margin-bottom: 30px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-process-wrapper .h10-process-item {
    padding: 90px 20px 30px;
  }
}
.h10-process-wrapper .h10-process-item .title {
  max-width: 300px;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-common-white);
  margin-bottom: 20px;
  -webkit-transition: none;
  transition: none;
}
.h10-process-wrapper .h10-process-item .desc {
  margin-bottom: 0;
  color: var(--tj-color-text-body-2);
}
.h10-process-wrapper .h10-process-icon {
  font-size: 48px;
  width: 80px;
  height: 80px;
  margin-bottom: 24px;
  background: var(--tj-color-theme-primary);
  border-radius: 50%;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.h10-process-wrapper .h10-process-icon i {
  color: var(--tj-color-common-white);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-process-wrapper .h10-process-icon {
    font-size: 38px;
    width: 65px;
    height: 65px;
  }
}
.h10-process-wrapper .h10-process-sln {
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  padding: 13px 21px 17px;
  margin-bottom: 0;
  background-color: var(--tj-color-theme-dark);
  border-end-end-radius: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  font-weight: var(--tj-fw-sbold);
  color: var(--tj-color-text-body-2);
  z-index: 1;
}
.h10-process-wrapper .h10-process-sln::before,
.h10-process-wrapper .h10-process-sln::after {
  content: "";
  position: absolute;
  inset-inline-end: -8px;
  top: 0;
  width: 8px;
  height: 8px;
  background: url('data:image/svg+xml,<svg viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-11 h-11"><path d="M11 1.54972e-06L0 0L2.38419e-07 11C1.65973e-07 4.92487 4.92487 1.62217e-06 11 1.54972e-06Z" fill="%230c1e21"></path></svg>');
}
.h10-process-wrapper .h10-process-sln::after {
  inset-inline-end: auto;
  inset-inline-start: 0;
  top: auto;
  bottom: -8px;
}

/* !END: Process CSS */
/* START: Case Study CSS */
.h10-project.section-gap {
  padding-bottom: 80px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h10-project.section-gap {
    padding-bottom: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-project.section-gap {
    padding-bottom: 35px;
  }
}
.h10-project-filter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 34px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-project-filter {
    margin-top: 24px;
  }
}
.h10-project-button-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  position: relative;
}
@media (max-width: 575px) {
  .h10-project-button-group {
    gap: 4px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.h10-project-button-group button {
  background: var(--tj-color-theme-bg);
  border: none;
  color: var(--tj-color-theme-dark-2);
  text-transform: capitalize;
  font-weight: var(--tj-fw-medium);
  line-height: 1;
  padding: 14px 23px;
  border-radius: 4px;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.h10-project-button-group button::after {
  content: "";
  width: 0;
  height: 100%;
  background: var(--tj-color-theme-primary);
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-radius: 4px;
  z-index: -1;
}
@media (max-width: 575px) {
  .h10-project-button-group button {
    font-size: 14px;
    padding: 9px 11px;
  }
}
.h10-project-button-group button.active {
  color: var(--tj-color-common-white);
  background: transparent;
}
.h10-project-button-group button.active::after {
  width: 100%;
}
.h10-project-wrapper {
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: calc(100% + 30px);
  margin: 0 -15px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h10-project-wrapper {
    max-width: calc(100% + 20px);
    margin: 0 -10px;
  }
}
@media (max-width: 575px) {
  .h10-project-wrapper {
    max-width: calc(100% + 20px);
    margin: 0 -10px;
  }
}
.h10-project-wrapper .project-item.h4-project-item {
  width: 50%;
  background-color: transparent;
  padding: 0 15px;
  margin-bottom: 40px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h10-project-wrapper .project-item.h4-project-item {
    padding: 0 10px;
    margin-bottom: 35px;
  }
}
@media (max-width: 575px) {
  .h10-project-wrapper .project-item.h4-project-item {
    width: 100%;
    padding: 0 10px;
    margin-bottom: 35px;
  }
}
.h10-project-wrapper .project-item.h4-project-item .project-img {
  height: 460px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-project-wrapper .project-item.h4-project-item .project-img {
    height: 345px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-project-wrapper .project-item.h4-project-item .project-img {
    height: 300px;
  }
}
.h10-project-wrapper .project-item.h4-project-item .project-content .title {
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 10px;
}
.h10-project-wrapper .project-item.h4-project-item .categories a {
  border-radius: 20px;
}

/* !END: Case Study CSS */
/**----------------------------------------
START: Testimonial CSS
----------------------------------------*/
.h10-testimonial {
  background-color: var(--tj-color-theme-dark);
  position: relative;
  z-index: 0;
  border-radius: 12px;
  overflow: hidden;
}
.h10-testimonial .sec-heading.style-3 .sec-title {
  color: var(--tj-color-common-white);
}
.h10-testimonial .slider-next,
.h10-testimonial .slider-prev {
  border-color: var(--tj-color-border-2);
}
.h10-testimonial .slider-next .anim-icon i,
.h10-testimonial .slider-prev .anim-icon i {
  color: var(--tj-color-common-white);
}
.h10-testimonial-wrapper {
  -webkit-mask-image: none;
  mask-image: none;
}
.h10-testimonial-wrapper .testimonial-item {
  background-color: var(--tj-color-grey-3);
  border: 0;
}
.h10-testimonial-wrapper .testimonial-item .desc {
  border-bottom: 1px dashed var(--tj-color-border-2);
  padding-bottom: 25px;
}
.h10-testimonial-wrapper .testimonial-item .desc p {
  color: var(--tj-color-text-body-2);
}
.h10-testimonial-wrapper .testimonial-author {
  padding-top: 0;
  border-top: 0;
}
.h10-testimonial-wrapper .testimonial-author .title {
  color: var(--tj-color-common-white);
}
.h10-testimonial-wrapper .testimonial-author .designation {
  color: var(--tj-color-text-body-2);
}
.h10-testimonial-wrapper .star-ratings {
  margin-top: 20px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-testimonial-wrapper .star-ratings {
    margin-top: 20px;
  }
}

/* !END: Testimonial CSS */
/**----------------------------------------
START: Pricing CSS
----------------------------------------*/
.h10-pricing-box {
  padding: 15px;
}
.h10-pricing-box .pricing-header {
  padding: 36px 22px 40px;
  border-radius: 12px;
  background-color: var(--tj-color-theme-bg);
  position: relative;
  z-index: 0;
}
.h10-pricing-box .pricing-header .package-price {
  margin-bottom: 0;
}
.h10-pricing-box .pricing-header .pricing-badge {
  padding: 4px 7px 4px 5px;
  border-radius: 4px;
  background: var(--tj-color-theme-dark);
  color: var(--tj-color-common-white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  font-size: 14px;
  font-weight: var(--tj-fw-sbold);
  line-height: 1;
  letter-spacing: -0.03em;
  position: absolute;
  inset-inline-end: 20px;
  top: 20px;
  z-index: 1;
}
.h10-pricing-box .pricing-header .pricing-badge i {
  font-size: 15px;
}
.h10-pricing-box .pricing-body {
  padding: 24px 20px 20px;
}
.h10-pricing-box .pricing-body .title-wrapper {
  margin-bottom: 20px;
}
.h10-pricing-box .pricing-body .title-wrapper .title {
  margin-bottom: 2px;
  font-weight: var(--tj-fw-sbold);
}
.h10-pricing-box .pricing-body .title-wrapper .desc {
  margin-bottom: 0;
}
.h10-pricing-box .pricing-body .list-items ul li {
  color: var(--tj-color-text-body-4);
}
.h10-pricing-box .pricing-body .list-items ul li i {
  color: var(--tj-color-theme-primary);
}
.h10-pricing-box .pricing-body .pricing-btn {
  margin-top: 26px;
  margin-bottom: 0;
}
.h10-pricing-box.active {
  background: var(--tj-color-common-white);
}
.h10-pricing-box.active .pricing-header {
  background-color: var(--tj-color-theme-primary);
}
.h10-pricing-box.active .pricing-btn a {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}
.h10-pricing-box.active .pricing-btn a .btn-text {
  color: var(--tj-color-common-white);
}
.h10-pricing-box.active .pricing-btn a:hover .btn-icon {
  background-color: var(--tj-color-theme-dark);
}

/* !END: Pricing CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.h10-blog-wrapper .blog-item.style-2 {
  padding: 15px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-blog-wrapper .blog-item.style-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 12px;
  }
}
.h10-blog-wrapper .blog-item.style-2 .blog-thumb {
  width: 25.3%;
  height: 210px;
  min-height: 100%;
  border-radius: 8px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-blog-wrapper .blog-item.style-2 .blog-thumb {
    width: 30%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-blog-wrapper .blog-item.style-2 .blog-thumb {
    width: 100%;
  }
}
.h10-blog-wrapper .blog-item.style-2 .blog-thumb a {
  display: inline-block;
  height: 100%;
  width: 100%;
}
.h10-blog-wrapper .blog-item.style-2 .blog-thumb a img {
  min-height: 100%;
}
.h10-blog-wrapper .blog-item.style-2 .blog-content {
  max-width: 800px;
  width: 100%;
  padding: 9px 15px 15px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .h10-blog-wrapper .blog-item.style-2 .blog-content {
    max-width: 640px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-blog-wrapper .blog-item.style-2 .blog-content {
    gap: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-blog-wrapper .blog-item.style-2 .blog-content {
    max-width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 15px 10px;
  }
}
.h10-blog-wrapper .blog-item.style-2 .title-area {
  max-width: 400px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-blog-wrapper .blog-item.style-2 .title-area {
    max-width: 363px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h10-blog-wrapper .blog-item.style-2 .title-area .title {
    font-size: 26px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-blog-wrapper .blog-item.style-2 .title-area {
    max-width: 100%;
  }
}
.h10-blog-wrapper .blog-item.style-2 .blog-meta {
  padding-top: 6px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 100%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h10-blog-wrapper .blog-item.style-2 .blog-meta {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
.h10-blog-wrapper
  .blog-item.style-2
  .blog-meta
  .blog-date-wrapper
  .blog-author {
  font-size: 18px;
  font-weight: var(--tj-fw-sbold);
  letter-spacing: -0.03em;
  margin-bottom: 10px;
}
.h10-blog-wrapper .blog-item.style-2 .blog-meta .blog-date-wrapper span {
  display: block;
}
.h10-blog-wrapper .blog-item.style-2 .blog-meta .categories a {
  border-color: var(--tj-color-theme-primary);
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
  border-radius: 13px;
}
.h10-blog-wrapper .blog-item.style-2 .blog-meta .categories a:hover {
  background-color: transparent;
  border-color: var(--tj-color-border-1);
  color: var(--tj-color-theme-dark-3);
}
.h10-blog-wrapper .blog-item.style-2 .blog-date {
  position: static;
  padding: 0;
  text-align: start;
}
.h10-blog-wrapper .blog-item.style-2 .text-btn .btn-icon {
  width: 30px;
  height: 30px;
  font-size: 20px;
}

/* !END: Blog CSS */
/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.h11-header.header-area {
  border-radius: 80px;
}
.h11-header.header-area.header-absolute {
  top: 30px;
  width: calc(100% - 60px);
  margin: 0 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-header.header-area.header-absolute {
    top: 20px;
    width: calc(100% - 40px);
    margin: 0 20px;
  }
}
.h11-header.header-area .header-wrapper {
  background-color: transparent;
}
.h11-header.header-area .mainmenu > ul > li > a {
  padding-top: 32px;
  padding-bottom: 32px;
}
.h11-header.header-area .mainmenu > ul > li.has-dropdown > a::after {
  top: 35px;
}
.h11-header .menu_bar.mobile_menu_bar {
  border-radius: 50px;
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Hero CSS
----------------------------------------*/
.h11-banner-section {
  background-color: transparent;
  position: relative;
  padding-top: 225px;
  padding-bottom: 85px;
}
.h11-banner-section .h11-shape-1 {
  max-width: 510px;
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  pointer-events: none;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-banner-section .h11-shape-1 {
    max-width: 450px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-section .h11-shape-1 {
    max-width: 320px;
  }
}
.h11-banner-section .h11-shape-2 {
  max-width: 143px;
  position: absolute;
  bottom: -144px;
  inset-inline-start: 0;
  pointer-events: none;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px),
  only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h11-banner-section .h11-shape-2 {
    max-width: 110px;
    bottom: -110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-banner-section .h11-shape-2 {
    max-width: 80px;
    bottom: -80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-section .h11-shape-2 {
    max-width: 70px;
    bottom: -70px;
  }
}
.h11-banner-section .banner-content-2 {
  max-width: 630px;
}
.h11-banner-section .banner-content-2 .banner-title {
  font-size: 90px;
  font-weight: var(--tj-fw-sbold);
  margin-bottom: 15px;
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h11-banner-section .banner-content-2 .banner-title {
    font-size: 76px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h11-banner-section .banner-content-2 .banner-title {
    font-size: 70px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-banner-section .banner-content-2 .banner-title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-section .banner-content-2 .banner-title {
    font-size: 45px;
  }
}
.h11-banner-section .banner-content-2 .desc {
  font-size: 18px;
  line-height: 26px;
  max-width: 530px;
  border-top: 1px solid var(--tj-color-border-1);
  padding-top: 25px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-section .banner-content-2 .desc {
    font-size: 16px;
    padding-top: 20px;
  }
}
.h11-banner-section .banner-content-2 .btn-area {
  margin-top: 25px;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-section .banner-content-2 .btn-area {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h11-banner-section .banner-content-2 {
    max-width: 600px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-banner-section .banner-content-2 {
    max-width: 400px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h11-banner-section {
    padding-top: 180px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h11-banner-section {
    padding-top: 180px;
    padding-bottom: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-banner-section {
    padding-top: 190px;
    padding-bottom: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-section {
    padding-top: 120px;
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner {
    border-radius: 12px;
    margin: 0 12px 0;
  }
}
.h11-banner-img {
  -webkit-mask-image: url(../images/shape/h11-hero-img-shape.svg);
  mask-image: url(../images/shape/h11-hero-img-shape.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-position: top right;
  mask-position: top right;
  position: absolute;
  inset-inline-end: 0;
  top: 0;
  z-index: -1;
  height: 100%;
  aspect-ratio: 928/893;
}
.h11-banner-img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.h11-banner-img::before {
  content: "";
  background-color: var(--tj-color-theme-primary);
  width: 32px;
  height: 400px;
  position: absolute;
  top: -70px;
  inset-inline-start: 110px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .h11-banner-img::before {
    top: -92px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h11-banner-img::before {
    top: -95px;
    inset-inline-start: 88px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-banner-img::before {
    top: -85px;
    inset-inline-start: 55px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-img::before {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-banner-img {
    position: relative;
    -webkit-mask-image: none;
    mask-image: none;
  }
}

/* !END: Hero CSS */
/**----------------------------------------
START: Choose CSS
----------------------------------------*/
.h11-choose {
  background-color: var(--tj-color-theme-bg);
}
.h11-choose .choose-box {
  background-color: var(--tj-color-common-white);
  border-radius: 10px;
  padding: 35px 28px 50px;
}
.h11-choose .choose-box .choose-icon {
  margin-bottom: 25px;
}

/* !END: Choose CSS */
/**----------------------------------------
START: Home 11 About CSS
----------------------------------------*/
.h11-sec-heading {
  margin-bottom: 52px;
}
.h11-sec-heading .sub-title {
  height: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.h11-sec-heading .sec-title {
  font-weight: var(--tj-fw-sbold);
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-sec-heading {
    margin-bottom: 35px;
  }
}

.h11-about-content {
  width: 60%;
}
.h11-about-content .desc {
  max-width: 530px;
  margin-bottom: 0;
}
.h11-about-content .about-btn-area-2 {
  margin-top: 30px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h11-about-content {
    width: 55%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-about-content {
    width: 50%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-about-content {
    width: 100%;
  }
}
.h11-about-funfact {
  max-width: 770px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 18px;
  margin-bottom: 30px;
}
.h11-about-funfact .countup-item {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.h11-about-funfact .countup-item .count-icon {
  background-color: transparent;
  width: auto;
  height: auto;
}
.h11-about-funfact .countup-item .count-inner {
  padding-top: 40px;
}
@media (max-width: 575px) {
  .h11-about-funfact .countup-item .count-inner {
    padding-top: 30px;
  }
}
.h11-about-funfact .countup-item .inline-content {
  font-weight: var(--tj-fw-sbold);
  margin-top: 0;
  margin-bottom: 15px;
}
.h11-about-funfact .countup-item .inline-content .odometer {
  font-weight: var(--tj-fw-sbold);
}
.h11-about-funfact .countup-item .inline-content .odometer .odometer-digit,
.h11-about-funfact .countup-item .inline-content .odometer span {
  font-weight: var(--tj-fw-sbold);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-about-funfact .countup-item .inline-content {
    font-size: 60px;
  }
}
@media (max-width: 575px) {
  .h11-about-funfact .countup-item .inline-content {
    margin-bottom: 5px;
  }
}
.h11-about-funfact .countup-item .count-text {
  max-width: 205px;
  color: var(--tj-color-text-body);
  font-weight: var(--tj-fw-regular);
}
@media (max-width: 575px) {
  .h11-about-funfact .countup-item {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    padding: 25px 20px;
  }
}
.h11-about-img {
  max-width: 450px;
  width: 50%;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-about-img {
    max-width: 100%;
    width: 100%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-about-img {
    max-width: 420px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-about-img {
    margin: 0 auto 30px;
  }
}

/* !END: Home 9 About CSS  */
/**----------------------------------------
START: Service CSS
----------------------------------------*/
/* ================================
   IT SERVICES SECTION
================================ */

.it-services-section {
  position: relative;
  overflow: hidden;
  padding: 100px 20px;
  background:
    radial-gradient(
      circle at 10% 20%,
      rgba(124, 58, 237, 0.08),
      transparent 30%
    ),
    radial-gradient(
      circle at 90% 80%,
      rgba(168, 85, 247, 0.08),
      transparent 30%
    ),
    linear-gradient(180deg, #ffffff 0%, #fbf9ff 50%, #ffffff 100%);
}

/* Soft decorative purple glow */
.it-services-section::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  top: -180px;
  right: -150px;
  background: rgba(124, 58, 237, 0.07);
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
}

.it-services-section::after {
  content: "";
  position: absolute;
  width: 350px;
  height: 350px;
  bottom: -180px;
  left: -150px;
  background: rgba(168, 85, 247, 0.06);
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
}

.it-services-container {
  position: relative;
  z-index: 2;
  max-width: 1250px;
  margin: 0 auto;
}

/* ================================
   SECTION HEADING
================================ */

.it-services-heading {
  max-width: 760px;
  margin: 0 auto 60px;
  text-align: center;
}

.it-services-subtitle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;

  color: #21103a;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.it-services-subtitle::before,
.it-services-subtitle::after {
  content: "";
  width: 28px;
  height: 2px;
  background: #a855f7;
  border-radius: 10px;
}

.it-services-title {
  margin: 0 0 18px;

  color: #171321;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -1.5px;
}

.it-services-title span {
  display: block;
  color: #330879;
}

.it-services-description {
  max-width: 680px;
  margin: 0 auto;

  color: #6b6475;
  font-size: 16px;
  line-height: 1.8;
}

/* ================================
   SERVICES GRID
================================ */

.it-services-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

/* ================================
   SERVICE CARD
================================ */

.it-service-card {
  position: relative;
  padding: 30px 28px;

  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #eee8fa;
  border-radius: 20px;

  box-shadow:
    0 10px 35px rgba(91, 33, 182, 0.06),
    0 2px 8px rgba(0, 0, 0, 0.02);

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease,
    border-color 0.35s ease;

  overflow: hidden;
}

/* Purple top line */
.it-service-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;

  width: 0;
  height: 3px;

  background: linear-gradient(90deg, #6d28d9, #9333ea, #c084fc);

  transition: width 0.35s ease;
}

/* Subtle background glow */

.it-service-card:hover {
  transform: translateY(-8px);

  border-color: rgba(124, 58, 237, 0.25);

  box-shadow:
    0 20px 45px rgba(91, 33, 182, 0.12),
    0 5px 15px rgba(124, 58, 237, 0.06);
}

.it-service-card:hover::before {
  width: 100%;
}

/* ================================
   CARD TOP
================================ */

.it-service-card-top {
  position: relative;
  z-index: 2;

  display: flex;
  align-items: center;
  justify-content: space-between;

  margin-bottom: 28px;
}

.it-service-number {
  color: #c4b5fd;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 1px;
}

/* ================================
   ICON
================================ */

.it-service-icon {
  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #7c3aed;
  font-size: 21px;

  background: linear-gradient(135deg, #f3e8ff, #ede9fe);

  border: 1px solid #e9d5ff;
  border-radius: 15px;

  transition:
    background 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}

.it-service-card:hover .it-service-icon {
  color: #ffffff;

  background: linear-gradient(135deg, #7c3aed, #9333ea);

  transform: rotate(-5deg) scale(1.05);
}

/* ================================
   CARD CONTENT
================================ */

.it-service-card h3 {
  position: relative;
  z-index: 2;

  margin: 0 0 13px;

  color: #211a2b;
  font-size: 20px;
  line-height: 1.35;
  font-weight: 700;
}

.it-service-card p {
  position: relative;
  z-index: 2;

  margin: 0 0 24px;

  color: #746d7e;
  font-size: 14px;
  line-height: 1.7;
}

/* ================================
   LEARN MORE
================================ */

.it-service-link {
  position: relative;
  z-index: 2;

  display: inline-flex;
  align-items: center;
  gap: 9px;

  color: #7c3aed;
  text-decoration: none;

  font-size: 14px;
  font-weight: 700;

  transition:
    gap 0.3s ease,
    color 0.3s ease;
}

.it-service-link i {
  font-size: 12px;
  transition: transform 0.3s ease;
}

.it-service-link:hover {
  color: #5b21b6;
  gap: 13px;
}

.it-service-link:hover i {
  transform: translateX(3px);
}

/* ================================
   RESPONSIVE
================================ */

@media (max-width: 1100px) {
  .it-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 650px) {
  .it-services-section {
    padding: 70px 16px;
  }

  .it-services-heading {
    margin-bottom: 40px;
  }

  .it-services-title {
    font-size: 34px;
    letter-spacing: -0.8px;
  }

  .it-services-description {
    font-size: 15px;
    line-height: 1.7;
  }

  .it-services-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .it-service-card {
    padding: 25px 22px;
  }
}

/* !END: Service CSS */
/* START: Case Study CSS */
.h11-project-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 115px;
  padding: 30px 0;
  background-color: transparent;
  border-top: 1px solid var(--tj-color-border-1);
  border-radius: 0;
}
.h11-project-item:last-child {
  border-bottom: 1px solid var(--tj-color-border-1);
}
.h11-project-item .project-img {
  max-width: 240px;
  width: 100%;
  height: 180px;
  border-radius: 10px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-project-item .project-img {
    max-width: 190px;
    height: 140px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-project-item .project-img {
    max-width: 100%;
    height: 100%;
  }
}
.h11-project-item .project-sl {
  font-size: 32px;
  line-height: 1;
  color: var(--tj-color-common-black);
  font-weight: var(--tj-fw-medium);
  letter-spacing: -0.03em;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-project-item .project-sl {
    font-size: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-project-item .project-sl {
    font-size: 25px;
  }
}
.h11-project-item .project-content {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-project-item .project-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    position: relative;
  }
}
.h11-project-item .project-text {
  display: block;
  margin-top: 0;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-margin-start: 168px;
  margin-inline-start: 168px;
}
.h11-project-item .project-text .title {
  max-width: 316px;
  width: 100%;
  font-weight: var(--tj-fw-medium);
  margin-top: 13px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-project-item .project-text .title {
    max-width: 285px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-project-item .project-text .title {
    max-width: 265px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-project-item .project-text {
    -webkit-margin-start: 100px;
    margin-inline-start: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-project-item .project-text {
    -webkit-margin-start: 60px;
    margin-inline-start: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-project-item .project-text {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    margin-top: 25px;
  }
}
.h11-project-item .project-btn {
  opacity: 1;
}
.h11-project-item .project-btn i {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.h11-project-item .project-btn i:last-child {
  font-size: 62px;
  color: var(--tj-color-theme-primary);
  -webkit-transform: rotate(-45deg) scale(0);
  -ms-transform: rotate(-45deg) scale(0);
  transform: rotate(-45deg) scale(0);
  visibility: hidden;
  position: absolute;
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-project-item .project-btn {
    position: absolute;
    inset-inline-end: 0;
    bottom: 0;
  }
}
.h11-project-item:hover .project-btn i:first-child {
  -webkit-transform: rotate(-45deg) scale(0);
  -ms-transform: rotate(-45deg) scale(0);
  transform: rotate(-45deg) scale(0);
}
.h11-project-item:hover .project-btn i:last-child {
  -webkit-transform: rotate(-45deg) scale(1);
  -ms-transform: rotate(-45deg) scale(1);
  transform: rotate(-45deg) scale(1);
  visibility: visible;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h11-project-item {
    gap: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h11-project-item {
    gap: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .h11-project-item {
    gap: 30px;
  }
}

/* !END: Case Study CSS */
/**----------------------------------------
START: Gallery CSS
----------------------------------------*/
.tj-gallery-section .heading-wrap-content .sec-heading {
  max-width: 520px;
}
.tj-gallery-section .heading-wrap-content .desc {
  max-width: 455px;
}
.tj-gallery-wrap .image-box {
  margin-bottom: 25px;
  border-radius: 12px;
  overflow: hidden;
}
.tj-gallery-wrap .image-box img {
  width: 100%;
}

/* !END: Gallery CSS */
/**----------------------------------------
START: Coming soon CSS
----------------------------------------*/
.tj_coming_soon {
  max-width: 100vw;
  width: 100%;
  min-height: 100vh;
  background-color: var(--tj-color-theme-dark);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 120px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  position: relative;
  z-index: 1;
}
.tj_coming_soon::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  z-index: -1;
}
.tj_coming_soon_content .title {
  font-weight: var(--tj-fw-medium);
  font-size: 155px;
  line-height: 1.2;
  letter-spacing: -0.03em;
  color: var(--tj-color-common-white);
  margin: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .tj_coming_soon_content .title {
    font-size: 115px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .tj_coming_soon_content .title {
    font-size: 85px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .tj_coming_soon_content .title {
    font-size: 65px;
  }
}
@media (max-width: 575px) {
  .tj_coming_soon_content .title {
    font-size: 50px;
  }
}
.tj_coming_soon_content .desc {
  font-size: 18px;
  line-height: 1.6;
  color: var(--tj-color-text-body-2);
  margin-top: 5px;
}
@media (max-width: 575px) {
  .tj_coming_soon_content .desc {
    font-size: 16px;
  }
}
.tj_coming_soon .query_form {
  margin-top: 56px;
}
.tj_coming_soon .query_form form {
  max-width: 816px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.tj_coming_soon .query_form form input[type="email"] {
  background-color: transparent;
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: var(--tj-color-common-white);
  padding: 14px 0;
  font-size: 16px;
  line-height: 1.5;
  color: var(--tj-color-common-white);
}
.tj_coming_soon
  .query_form
  form
  input[type="email"]::-webkit-input-placeholder {
  color: var(--tj-color-text-body-2);
}
.tj_coming_soon .query_form form input[type="email"]::-moz-placeholder {
  color: var(--tj-color-text-body-2);
}
.tj_coming_soon .query_form form input[type="email"]:-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
}
.tj_coming_soon .query_form form input[type="email"]::-ms-input-placeholder {
  color: var(--tj-color-text-body-2);
}
.tj_coming_soon .query_form form input[type="email"]::placeholder {
  color: var(--tj-color-text-body-2);
}
.tj_coming_soon .query_form form input[type="email"]:focus,
.tj_coming_soon .query_form form input[type="email"]:focus-visible {
  border-color: var(--tj-color-common-white);
}
.tj_coming_soon .query_form form input[type="submit"],
.tj_coming_soon .query_form form button[type="submit"] {
  font-size: 24px;
  line-height: 1;
  color: var(--tj-color-common-white);
  position: absolute;
  inset-inline-end: 0;
  top: 11px;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  z-index: 2;
}
.tj_coming_soon .query_form form input[type="submit"]:hover,
.tj_coming_soon .query_form form input[type="submit"]:hover,
.tj_coming_soon .query_form form button[type="submit"]:hover,
.tj_coming_soon .query_form form button[type="submit"]:hover {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  color: var(--tj-color-common-white);
}
.tj_coming_soon .query_form .form_note {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 16px;
  line-height: 1.5;
  color: var(--tj-color-common-white);
  margin-top: 53px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj_coming_soon .query_form .form_note {
    margin-top: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj_coming_soon .query_form .form_note {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .tj_coming_soon .query_form {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj_coming_soon .query_form {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .tj_coming_soon {
    padding: 100px 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px),
  (max-width: 575px) {
  .tj_coming_soon {
    padding: 70px 20px;
  }
}

.countdown {
  margin-top: 54px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 20px;
}
.countdown-container {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2px;
}
.countdown-value {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: var(--tj-ff-heading);
  font-weight: var(--tj-fw-medium);
  font-size: 42px;
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--tj-color-common-white);
  width: 126px;
  height: 96px;
  padding: 10px;
  background-color: rgba(247, 247, 247, 0.1);
  backdrop-filter: blur(35px);
  border-radius: 6px 6px 0 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .countdown-value {
    font-size: 35px;
    width: 110px;
    height: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .countdown-value {
    font-size: 30px;
    width: 100px;
    height: 80px;
  }
}
@media (max-width: 575px) {
  .countdown-value {
    font-size: 24px;
    width: 60px;
    height: 60px;
  }
}
.countdown-heading {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 16px;
  line-height: 1;
  color: var(--tj-color-text-body-2);
  height: 40px;
  padding: 5px 10px;
  background-color: rgba(247, 247, 247, 0.1);
  backdrop-filter: blur(35px);
  border-radius: 0 0 6px 6px;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .countdown-heading {
    font-size: 16px;
    height: 35px;
  }
}
@media (max-width: 575px) {
  .countdown-heading {
    font-size: 14px;
    height: 30px;
  }
}
.countdown .divider {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 42px;
  line-height: 1;
  font-weight: 500;
  color: var(--tj-color-common-white);
  font-family: "Roboto";
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .countdown .divider {
    font-size: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .countdown .divider {
    font-size: 26px;
  }
}
@media (max-width: 575px) {
  .countdown .divider {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .countdown {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .countdown {
    gap: 15px;
    margin-top: 45px;
  }
}
@media (max-width: 575px) {
  .countdown {
    gap: 10px;
    margin-top: 40px;
  }
}

/* about us section home page */
/* ================================
   ABOUT US
================================ */

.about-us {
  width: 100%;
  padding: 90px 20px;
  overflow: hidden;
  margin-top: 0;

  background:
    radial-gradient(
      circle at 85% 50%,
      rgba(105, 45, 210, 0.08),
      transparent 35%
    ),
    #fff;

  font-family: Arial, sans-serif;
}

.about-wrapper {
  width: min(1200px, 100%);
  margin: auto;

  display: grid;
  grid-template-columns: 1fr 1fr;

  align-items: center;
  gap: 50px;
}

/* ================================
   LEFT
================================ */

.about-content {
  position: relative;
  z-index: 5;
}

.about-tag {
  position: relative;

  display: inline-block;

  margin-bottom: 18px;
  padding-left: 32px;

  color: #21103a;

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 1px;
}

.about-tag::before {
  content: "";

  position: absolute;
  left: 0;
  top: 50%;

  width: 22px;
  height: 2px;

  transform: translateY(-50%);

  background: #692bd5;
}

.about-content h2 {
  margin: 0 0 24px;

  max-width: 620px;

  color: #11162f;

  font-size: clamp(40px, 5vw, 62px);
  line-height: 1.08;

  letter-spacing: -2.5px;
}

.about-content h2 span {
  color: #330879;
}

.about-text {
  max-width: 620px;

  margin: 0 0 14px;

  color: #646777;

  font-size: 14px;
  line-height: 1.8;
}

/* ================================
   FEATURES
================================ */

.about-features {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 15px;

  margin: 32px 0;
}

.about-feature {
  min-width: 0;
}

.feature-icon {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 10px;

  border-radius: 8px;

  color: #330879;

  background: #f0e9ff;

  font-size: 30px;
  font-weight: bold;
}

.about-feature h4 {
  margin: 0 0 6px;

  color: #282b3d;

  font-size: 14px;
  font-weight: 700;
}

.about-feature p {
  margin: 0;

  color: #777989;

  font-size: 13px;
  line-height: 1.5;
}

/* ================================
   BUTTON
================================ */

.about-btn {
  display: inline-flex;

  align-items: center;
  gap: 14px;

  padding: 14px 23px;

  border-radius: 7px;

  color: #fff;

  background: linear-gradient(135deg, #21103a 0%, #330879 50%, #330879 100%);

  text-decoration: none;

  font-size: 13px;
  font-weight: 600;

  box-shadow: 0 10px 25px rgba(92, 32, 195, 0.22);

  transition: 0.3s ease;
}

.about-btn span {
  font-size: 17px;

  transition: transform 0.3s ease;
}

.about-btn:hover {
  transform: translateY(-3px);

  box-shadow: 0 15px 30px rgba(92, 32, 195, 0.3);
}

.about-btn:hover span {
  transform: translateX(5px);
}

/* ================================
   RIGHT VISUAL
================================ */

.about-visual {
  position: relative;

  width: 100%;
  min-height: 580px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.visual-glow {
  position: absolute;

  width: 430px;
  height: 430px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(110, 48, 220, 0.14),
    rgba(110, 48, 220, 0.03) 50%,
    transparent 70%
  );
}

/* ================================
   SVG LINES
================================ */

.about-lines {
  position: absolute;

  width: 100%;
  height: 100%;

  max-width: 600px;

  overflow: visible;
}

.about-lines path {
  animation: moveLine 18s linear infinite;
}

@keyframes moveLine {
  from {
    stroke-dashoffset: 0;
  }

  to {
    stroke-dashoffset: -300;
  }
}

/* ================================
   CENTER CIRCLE
================================ */

.about-center {
  position: absolute;
  width: 245px;
  height: 245px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.96);
  box-shadow:
    0 25px 60px rgba(72, 35, 145, 0.14),
    0 0 0 1px rgba(100, 50, 200, 0.04);
  z-index: 4;
}

/* Logo inside circle */
.about-center img {
  width: 190px;
  height: auto;
  max-height: 190px;
  object-fit: contain;
  display: block;
}

.company-logo {
  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 9px;

  border-radius: 12px;

  color: white;

  background: linear-gradient(135deg, #6325d5, #913ee8);

  font-size: 24px;
  font-weight: 800;
  font-style: italic;

  box-shadow: 0 8px 20px rgba(94, 34, 205, 0.25);
}

.about-center h3 {
  margin: 0;

  color: #22253a;

  font-size: 14px;
  font-weight: 800;
}

.about-center h4 {
  margin: 4px 0 0;

  color: #6727d4;

  font-size: 13px;
}

.about-center p {
  margin: 9px 0 0;

  color: #858797;

  font-size: 9px;

  line-height: 1.6;
}

/* ================================
   GROWTH ITEMS
================================ */

.growth-item {
  position: absolute;

  display: flex;

  align-items: center;

  gap: 12px;

  z-index: 6;
}

.growth-icon {
  width: 64px;
  height: 64px;

  flex-shrink: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  color: white;

  background: linear-gradient(135deg, #330879, #21103a);

  font-size: 21px;
  font-weight: bold;

  box-shadow: 0 12px 27px rgba(84, 31, 187, 0.28);

  animation: floatIcon 4s ease-in-out infinite;
}

@keyframes floatIcon {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-7px);
  }
}

.growth-info {
  width: 130px;
}

.growth-info strong {
  display: block;

  margin-bottom: 5px;

  color: #510983;

  font-size: 11px;
  font-weight: 800;
}

.growth-info span {
  display: block;

  color: #77798a;

  font-size: 13px;
  line-height: 1.5;
}

/* ================================
   POSITIONS
================================ */

.visibility {
  top: 25px;
  right: 115px;
}

.trust {
  top: 145px;
  right: 5px;
}

.leads {
  top: 300px;
  right: -5px;
}

.business-growth {
  bottom: 25px;
  right: 105px;
}

.trust .growth-icon {
  animation-delay: -1s;
}

.leads .growth-icon {
  animation-delay: -2s;
}

.business-growth .growth-icon {
  animation-delay: -3s;
}

/* ================================
   TABLET
================================ */

@media (max-width: 1050px) {
  .about-wrapper {
    grid-template-columns: 1fr 0.9fr;
    gap: 20px;
  }

  .about-content h2 {
    font-size: 46px;
  }

  .about-features {
    grid-template-columns: repeat(2, 1fr);
    gap: 22px 15px;
  }

  .about-visual {
    min-height: 530px;
  }

  .about-center {
    width: 210px;
    height: 210px;
  }

  .visibility {
    right: 80px;
  }

  .trust {
    right: -15px;
  }

  .leads {
    right: -20px;
  }

  .business-growth {
    right: 60px;
  }
}

/* ================================
   MOBILE
================================ */

@media (max-width: 800px) {
  .about-us {
    padding: 70px 20px;
  }

  .about-wrapper {
    grid-template-columns: 1fr;

    gap: 60px;
  }

  .about-content h2 {
    font-size: clamp(38px, 9vw, 52px);
  }

  .about-visual {
    min-height: 560px;

    max-width: 620px;

    margin: auto;
  }
}

/* ================================
   SMALL MOBILE
================================ */

@media (max-width: 550px) {
  .about-us {
    padding: 60px 15px;
    margin-top: auto;
  }

  .about-content h2 {
    font-size: 38px;

    letter-spacing: -1.5px;
  }

  .about-text {
    font-size: 13px;
  }

  .about-features {
    grid-template-columns: repeat(2, 1fr);

    gap: 22px 12px;
  }

  .about-visual {
    min-height: 550px;

    transform: scale(0.88);

    transform-origin: center;
  }

  .about-center {
    width: 190px;
    height: 190px;
  }

  .company-logo {
    width: 40px;
    height: 40px;

    font-size: 20px;
  }

  .about-center h3 {
    font-size: 11px;
  }

  .about-center h4 {
    font-size: 11px;
  }

  .growth-icon {
    width: 54px;
    height: 54px;

    font-size: 17px;
  }

  .growth-info {
    width: 95px;
  }

  .growth-info strong {
    font-size: 9px;
  }

  .growth-info span {
    font-size: 9px;
  }

  .visibility {
    top: 30px;
    right: 35px;
  }

  .trust {
    top: 155px;
    right: -5px;
  }

  .leads {
    top: 315px;
    right: -5px;
  }

  .business-growth {
    bottom: 30px;
    right: 35px;
  }
}

@media (max-width: 380px) {
  .about-features {
    grid-template-columns: 1fr;
  }

  .about-visual {
    transform: scale(0.78);

    width: 125%;

    margin-left: -12.5%;
  }
}
/* our process */
/* =========================================================
   PREMIUM IT PROCESS SECTION
========================================================= */

.it-process-section {
  position: relative;
  overflow: hidden;
  padding: 120px 0 110px;

  background:
    radial-gradient(circle at 8% 15%, rgba(124, 58, 237, 0.1), transparent 28%),
    radial-gradient(
      circle at 92% 80%,
      rgba(168, 85, 247, 0.09),
      transparent 28%
    ),
    linear-gradient(180deg, #ffffff 0%, #faf8ff 50%, #ffffff 100%);
}

/* subtle background glow */

.it-process-section::before {
  content: "";
  position: absolute;
  width: 500px;
  height: 500px;
  top: -250px;
  left: -250px;

  border-radius: 50%;
  background: rgba(108, 59, 255, 0.06);
  filter: blur(80px);
  pointer-events: none;
}

.it-process-section::after {
  content: "";
  position: absolute;
  width: 450px;
  height: 450px;
  right: -250px;
  bottom: -250px;

  border-radius: 50%;
  background: rgba(168, 85, 247, 0.06);
  filter: blur(80px);
  pointer-events: none;
}

/* =========================================================
   HEADING
========================================================= */

.it-process-heading {
  position: relative;
  z-index: 5;

  max-width: 780px;
  margin: 0 auto 85px;

  text-align: center;
}

.it-process-subtitle {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  margin-bottom: 18px;
  padding: 8px 16px;

  border: 1px solid rgba(108, 59, 255, 0.12);
  border-radius: 50px;

  background: rgba(108, 59, 255, 0.06);

  color: #21103a;

  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
}

.it-process-subtitle span {
  width: 5px;
  height: 5px;

  border-radius: 50%;
  background: #6c3bff;

  box-shadow: 0 0 10px rgba(108, 59, 255, 0.7);
}

.it-process-heading h2 {
  margin: 0 0 20px;

  color: #171321;

  font-size: clamp(38px, 4.2vw, 58px);
  font-weight: 750;
  line-height: 1.1;

  letter-spacing: -1.8px;
}

.it-process-heading h2 span {
  color: #330879;
}

.it-process-heading p {
  max-width: 680px;
  margin: 0 auto;

  color: #706a7c;

  font-size: 15px;
  line-height: 1.8;
}

/* =========================================================
   JOURNEY
========================================================= */

.it-process-journey {
  position: relative;
  z-index: 3;

  display: grid;
  grid-template-columns: repeat(4, 1fr);

  max-width: 1250px;
  margin: 0 auto;
}

/* =========================================================
   CURVED JOURNEY LINE
========================================================= */

.it-process-journey::before {
  content: "";

  position: absolute;

  top: 82px;
  left: 12%;
  right: 12%;

  height: 80px;

  border-top: 2px dashed rgba(108, 59, 255, 0.2);

  border-radius: 50%;

  pointer-events: none;
}

/* =========================================================
   STEP
========================================================= */

.it-process-step {
  position: relative;
  z-index: 4;

  padding: 0 15px;
}

.it-process-step-inner {
  display: flex;
  flex-direction: column;
  align-items: center;

  text-align: center;
}

/* =========================================================
   VISUAL
========================================================= */

.it-process-visual {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 165px;
  height: 165px;

  margin-bottom: 35px;
}

/* Outer ring */

.it-process-visual::before {
  content: "";

  position: absolute;
  inset: 4px;

  border: 1px solid rgba(108, 59, 255, 0.14);

  border-radius: 50%;

  transition: all 0.5s ease;
}

/* Glow */

.it-process-visual::after {
  content: "";

  position: absolute;

  width: 125px;
  height: 125px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(108, 59, 255, 0.1),
    rgba(108, 59, 255, 0.02) 60%,
    transparent 70%
  );

  transition: all 0.5s ease;
}

/* =========================================================
   ICON
========================================================= */

.it-process-icon {
  position: relative;
  z-index: 3;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 94px;
  height: 94px;

  border: 1px solid rgba(108, 59, 255, 0.18);

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.96);

  color: #330879;

  box-shadow:
    0 20px 45px rgba(50, 30, 90, 0.1),
    inset 0 0 0 8px rgba(108, 59, 255, 0.025);

  transition:
    transform 0.45s ease,
    background 0.45s ease,
    color 0.45s ease,
    box-shadow 0.45s ease;
}

.it-process-icon i {
  font-size: 28px;

  transition: transform 0.45s ease;
}

/* =========================================================
   NUMBER BADGE
========================================================= */

.it-process-number {
  position: absolute;

  top: 0;
  right: 4px;

  z-index: 6;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 43px;
  height: 43px;

  border: 4px solid #fff;

  border-radius: 50%;
  background: linear-gradient(135deg, #3a1a63 0%, #5a1fa8 100%);
  color: #fff;

  box-shadow: 0 10px 25px rgba(108, 59, 255, 0.28);
}

.it-process-number span {
  font-size: 10px;
  font-weight: 800;
}

/* =========================================================
   HOVER
========================================================= */

.it-process-step:hover .it-process-icon {
  transform: translateY(-10px) scale(1.04);

  background: linear-gradient(135deg, #6c3bff, #8b5cf6);

  color: #fff;

  box-shadow: 0 25px 55px rgba(108, 59, 255, 0.28);
}

.it-process-step:hover .it-process-icon i {
  transform: scale(1.12);
}

.it-process-step:hover .it-process-visual::before {
  inset: -3px;

  border-color: rgba(108, 59, 255, 0.35);
}

.it-process-step:hover .it-process-visual::after {
  width: 145px;
  height: 145px;

  background: radial-gradient(
    circle,
    rgba(108, 59, 255, 0.16),
    transparent 70%
  );
}

/* =========================================================
   CONTENT
========================================================= */

.it-process-content {
  position: relative;

  width: 100%;
  max-width: 255px;

  padding: 25px 20px 22px;

  border: 1px solid rgba(108, 59, 255, 0.08);

  border-radius: 18px;

  background: rgba(255, 255, 255, 0.72);

  box-shadow: 0 12px 35px rgba(35, 20, 70, 0.045);

  transition:
    transform 0.4s ease,
    box-shadow 0.4s ease,
    border-color 0.4s ease;
}

.it-process-content::before {
  content: "";

  position: absolute;

  top: -7px;
  left: 50%;

  width: 13px;
  height: 13px;

  border-top: 1px solid rgba(108, 59, 255, 0.08);
  border-left: 1px solid rgba(108, 59, 255, 0.08);

  background: #fff;

  transform: translateX(-50%) rotate(45deg);
}

.it-process-step:hover .it-process-content {
  transform: translateY(-6px);

  border-color: rgba(108, 59, 255, 0.18);

  box-shadow: 0 20px 45px rgba(108, 59, 255, 0.1);
}

/* =========================================================
   LABEL
========================================================= */

.it-process-label {
  display: inline-block;

  margin-bottom: 9px;

  color: #6c3bff;

  font-size: 9px;
  font-weight: 800;

  letter-spacing: 2px;
}

/* =========================================================
   TITLE
========================================================= */

.it-process-content h3 {
  margin: 0 0 10px;

  color: #171321;

  font-size: 19px;
  font-weight: 700;

  line-height: 1.35;
}

/* =========================================================
   DESCRIPTION
========================================================= */

.it-process-content p {
  margin: 0;

  color: #716b7b;

  font-size: 13px;

  line-height: 1.7;
}

/* =========================================================
   CONNECTOR ARROWS
========================================================= */

.it-process-connector {
  position: absolute;

  top: 68px;

  z-index: 8;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 32px;
  height: 32px;

  border: 1px solid rgba(108, 59, 255, 0.14);

  border-radius: 50%;

  background: #fff;

  color: #6c3bff;

  box-shadow: 0 7px 20px rgba(108, 59, 255, 0.1);
}

/* Connector positions */

.it-process-connector:nth-of-type(2) {
  left: 25%;

  transform: translateX(-50%) rotate(8deg);
}

.it-process-connector:nth-of-type(4) {
  left: 50%;

  top: 92px;

  transform: translateX(-50%) rotate(-8deg);
}

.it-process-connector:nth-of-type(6) {
  left: 75%;

  transform: translateX(-50%) rotate(8deg);
}

.it-process-connector i {
  font-size: 10px;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
  .it-process-section {
    padding: 90px 0;
  }

  .it-process-heading {
    margin-bottom: 65px;
  }

  .it-process-journey {
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 20px;
  }

  .it-process-journey::before,
  .it-process-connector {
    display: none;
  }

  .it-process-visual {
    width: 140px;
    height: 140px;
  }

  .it-process-icon {
    width: 82px;
    height: 82px;
  }

  .it-process-icon i {
    font-size: 24px;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
  .it-process-section {
    padding: 75px 0;
  }

  .it-process-heading {
    margin-bottom: 50px;
  }

  .it-process-heading h2 {
    font-size: 34px;
    letter-spacing: -1px;
  }

  .it-process-heading p {
    font-size: 14px;
  }

  .it-process-journey {
    display: block;
  }

  .it-process-step {
    width: 100%;
    margin-bottom: 35px;
    padding: 0;
  }

  .it-process-step-inner {
    flex-direction: row;
    align-items: flex-start;

    gap: 20px;

    text-align: left;
  }

  .it-process-visual {
    flex: 0 0 75px;

    width: 75px;
    height: 75px;

    margin: 0;
  }

  .it-process-visual::before {
    inset: 1px;
  }

  .it-process-visual::after {
    width: 58px;
    height: 58px;
  }

  .it-process-icon {
    width: 58px;
    height: 58px;

    box-shadow: 0 10px 25px rgba(50, 30, 90, 0.08);
  }

  .it-process-icon i {
    font-size: 20px;
  }

  .it-process-number {
    top: -4px;
    right: -5px;

    width: 28px;
    height: 28px;

    border-width: 3px;
  }

  .it-process-number span {
    font-size: 8px;
  }

  .it-process-content {
    max-width: none;

    padding: 18px;

    text-align: left;
  }

  .it-process-content h3 {
    font-size: 18px;
  }

  .it-process-content p {
    font-size: 13px;
  }

  .it-process-connector {
    display: none;
  }
}
/* why choose us */
/* =========================================================
   WHY CHOOSE US SECTION
========================================================= */

.why-choose-section {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 110px 0 105px;

  background:
    radial-gradient(
      circle at 10% 20%,
      rgba(124, 58, 237, 0.08),
      transparent 30%
    ),
    radial-gradient(
      circle at 90% 80%,
      rgba(168, 85, 247, 0.08),
      transparent 30%
    ),
    linear-gradient(180deg, #ffffff 0%, #fbf9ff 50%, #ffffff 100%);
}

/* =========================================================
   CONTAINER
========================================================= */

.why-choose-container {
  position: relative;
  z-index: 2;

  width: 100%;
  max-width: 1250px;

  margin: 0 auto;
  padding: 0 25px;
}

/* =========================================================
   HEADING
========================================================= */

.why-choose-heading {
  max-width: 760px;
  margin: 0 auto 75px;

  text-align: center;
}

.why-choose-subtitle {
  display: flex;
  align-items: center;
  justify-content: center;

  gap: 12px;
  margin-bottom: 16px;

  color: #21103a;

  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.why-choose-subtitle span {
  display: block;

  width: 28px;
  height: 1px;

  background: linear-gradient(90deg, transparent, #b9a5f5);
}

.why-choose-subtitle span:last-child {
  background: linear-gradient(90deg, #b9a5f5, transparent);
}

.why-choose-heading h2 {
  margin: 0 0 17px;

  color: #171321;

  font-size: clamp(38px, 4.5vw, 55px);
  font-weight: 700;
  line-height: 1.12;

  letter-spacing: -1.5px;
}

.why-choose-heading h2 span {
  color: #330879;
}

.why-choose-heading p {
  max-width: 650px;

  margin: 0 auto;

  color: #6b6575;

  font-size: 15px;
  line-height: 1.8;
}

/* =========================================================
   MAIN CONTENT
========================================================= */

.why-choose-content {
  display: grid;

  grid-template-columns: 43% 57%;

  align-items: center;

  gap: 45px;

  max-width: 1150px;
  margin: 0 auto;
}

/* =========================================================
   LEFT VISUAL
========================================================= */

.why-choose-visual {
  position: relative;

  width: 100%;
  min-height: 500px;

  display: flex;
  align-items: center;
  justify-content: center;
}

/* =========================================================
   SOFT OUTER GRADIENT
========================================================= */

.why-circle-glow {
  position: absolute;

  width: 470px;
  height: 470px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(124, 92, 246, 0.1) 0%,
    rgba(124, 92, 246, 0.08) 28%,
    rgba(155, 120, 255, 0.055) 48%,
    rgba(196, 174, 255, 0.035) 62%,
    transparent 76%
  );

  filter: blur(3px);

  opacity: 1;

  animation: whySoftGlow 5s ease-in-out infinite;
}

@keyframes whySoftGlow {
  0%,
  100% {
    transform: scale(0.96);
    opacity: 0.8;
  }

  50% {
    transform: scale(1.04);
    opacity: 1;
  }
}

/* =========================================================
   OUTER LIGHT CIRCLE
========================================================= */

.why-circle {
  position: relative;

  z-index: 3;

  width: 350px;
  height: 350px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: radial-gradient(
    circle at 30% 25%,
    #ffffff 0%,
    #faf8ff 32%,
    #f2edff 68%,
    #e9e0ff 100%
  );

  border: 1px solid rgba(108, 59, 255, 0.14);

  box-shadow:
    0 30px 80px rgba(82, 52, 150, 0.12),
    inset 0 2px 10px rgba(255, 255, 255, 0.95),
    inset 0 -15px 35px rgba(108, 59, 255, 0.06);

  transition:
    transform 0.5s ease,
    box-shadow 0.5s ease;
}

.why-circle:hover {
  transform: scale(1.025);

  box-shadow:
    0 40px 100px rgba(82, 52, 150, 0.16),
    inset 0 2px 12px rgba(255, 255, 255, 1),
    inset 0 -15px 35px rgba(108, 59, 255, 0.08);
}

/* =========================================================
   INNER CIRCLE
========================================================= */

.why-circle::before {
  content: "";

  position: absolute;

  inset: 17px;

  border-radius: 50%;

  border: 1px solid rgba(108, 59, 255, 0.12);
}

.why-circle::after {
  content: "";

  position: absolute;

  inset: 38px;

  border-radius: 50%;

  background: radial-gradient(
    circle at 35% 25%,
    rgba(255, 255, 255, 0.95),
    rgba(242, 236, 255, 0.75),
    rgba(226, 215, 255, 0.55)
  );

  border: 1px solid rgba(108, 59, 255, 0.08);

  box-shadow: inset 0 3px 15px rgba(255, 255, 255, 0.9);
}

/* =========================================================
   ROTATING RINGS
========================================================= */

.why-circle-ring {
  position: absolute;

  border-radius: 50%;

  border: 1px solid rgba(108, 59, 255, 0.16);

  pointer-events: none;
}

.ring-one {
  inset: -14px;

  border-top-color: rgba(108, 59, 255, 0.55);
  border-right-color: transparent;
  border-bottom-color: rgba(108, 59, 255, 0.08);
  border-left-color: transparent;

  animation: rotateRing 12s linear infinite;
}

.ring-two {
  inset: -28px;

  border-bottom-color: rgba(168, 85, 247, 0.42);
  border-left-color: transparent;
  border-top-color: rgba(108, 59, 255, 0.06);
  border-right-color: transparent;

  animation: rotateRingReverse 17s linear infinite;
}

@keyframes rotateRing {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes rotateRingReverse {
  from {
    transform: rotate(360deg);
  }

  to {
    transform: rotate(0deg);
  }
}

/* =========================================================
   CIRCLE CONTENT
========================================================= */

.why-circle-content {
  position: relative;

  z-index: 5;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;
}

/* =========================================================
   ICON
========================================================= */

.why-circle-icon {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 72px;
  height: 72px;

  margin-bottom: 17px;

  border-radius: 22px;

  background: linear-gradient(145deg, #ffffff, #f0eaff);

  border: 1px solid rgba(108, 59, 255, 0.15);

  color: #6c3bff;

  font-size: 27px;

  box-shadow:
    0 15px 35px rgba(108, 59, 255, 0.12),
    inset 0 2px 5px rgba(255, 255, 255, 1);

  animation: circleIconFloat 3s ease-in-out infinite;
}

@keyframes circleIconFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-6px);
  }
}

/* =========================================================
   CIRCLE SMALL TEXT
========================================================= */

.why-circle-small {
  margin-bottom: 9px;

  color: #81778f;

  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
}

/* =========================================================
   CIRCLE TITLE
========================================================= */

.why-circle h3 {
  margin: 0;

  color: #25202d;

  font-size: 29px;
  font-weight: 800;

  line-height: 1.05;
  letter-spacing: -1px;
}

.why-circle h3 strong {
  display: block;

  margin-top: 6px;

  color: #330879;

  font-weight: 800;
}

/* =========================================================
   CIRCLE DESCRIPTION
========================================================= */

.why-circle p {
  margin: 13px 0 0;

  color: #8d8498;

  font-size: 9px;
  letter-spacing: 1px;
}

/* =========================================================
   CIRCLE DOTS
========================================================= */

.why-circle-dot {
  position: absolute;

  z-index: 8;

  border-radius: 50%;

  background: #8b5cf6;

  box-shadow:
    0 0 0 6px rgba(108, 59, 255, 0.07),
    0 0 18px rgba(108, 59, 255, 0.25);
}

.dot-one {
  width: 8px;
  height: 8px;

  top: 55px;
  right: 78px;

  animation: dotFloat 3s ease-in-out infinite;
}

.dot-two {
  width: 6px;
  height: 6px;

  bottom: 75px;
  left: 60px;

  animation: dotFloat 3s ease-in-out 1s infinite;
}

.dot-three {
  width: 5px;
  height: 5px;

  top: 125px;
  left: 50px;

  animation: dotFloat 3s ease-in-out 1.7s infinite;
}

@keyframes dotFloat {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.45;
  }

  50% {
    transform: translateY(-10px);
    opacity: 0.9;
  }
}

/* =========================================================
   RIGHT SIDE LIST
========================================================= */

.why-choose-list {
  display: flex;
  flex-direction: column;

  width: 100%;
}

/* =========================================================
   WHY ITEM
========================================================= */

.why-item {
  position: relative;

  display: grid;

  grid-template-columns:
    42px
    3px
    1fr
    40px;

  align-items: center;

  gap: 18px;

  padding: 25px 0;

  border-bottom: 1px solid #e5dfeb;

  cursor: pointer;

  transition:
    transform 0.35s ease,
    padding-left 0.35s ease;
}

.why-item:first-child {
  border-top: 1px solid #e5dfeb;
}

/* =========================================================
   NUMBER
========================================================= */

.why-item-number {
  color: #aaa2b1;

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 0.7px;

  transition:
    color 0.35s ease,
    transform 0.35s ease;
}

.why-item.active .why-item-number {
  color: #6c3bff;

  transform: translateX(2px);
}

/* =========================================================
   VERTICAL LINE
========================================================= */

.why-item-line {
  position: relative;

  width: 2px;
  height: 58px;

  background: #e5dfeb;

  border-radius: 5px;

  overflow: hidden;
}

.why-item-line::after {
  content: "";

  position: absolute;

  left: 0;
  top: 0;

  width: 100%;
  height: 0;

  background: linear-gradient(180deg, #6c3bff, #a855f7);

  border-radius: 5px;

  transition: height 0.5s ease;
}

.why-item.active .why-item-line::after {
  height: 100%;
}

/* =========================================================
   ITEM CONTENT
========================================================= */

.why-item-content > span {
  display: block;

  margin-bottom: 7px;

  color: #99919f;

  font-size: 8px;
  font-weight: 700;

  letter-spacing: 1.8px;
  text-transform: uppercase;

  transition: color 0.35s ease;
}

.why-item.active .why-item-content > span {
  color: #6c3bff;
}

.why-item-content h3 {
  margin: 0 0 7px;

  color: #25202d;

  font-size: 20px;
  font-weight: 700;

  line-height: 1.35;

  transition: color 0.35s ease;
}

.why-item-content h3 strong {
  color: #330879;

  font-weight: 700;
}

.why-item-content p {
  max-width: 500px;

  margin: 0;

  color: #746d7d;

  font-size: 12.5px;
  line-height: 1.7;

  transition: color 0.35s ease;
}

/* =========================================================
   ARROW
========================================================= */

.why-item-arrow {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 38px;
  height: 38px;

  border: 1px solid #e2dce9;

  border-radius: 50%;

  background: #ffffff;

  color: #aaa2b1;

  font-size: 11px;

  transition: all 0.35s ease;
}

.why-item.active .why-item-arrow {
  border-color: #6c3bff;

  background: #330879;

  color: #ffffff;

  box-shadow: 0 8px 20px rgba(108, 59, 255, 0.2);

  transform: translateX(3px);
}

/* =========================================================
   ITEM HOVER
========================================================= */

.why-item:hover {
  transform: translateX(5px);
}

.why-item:hover .why-item-number {
  color: #6c3bff;
}

.why-item:hover .why-item-content h3 {
  color: #171321;
}

.why-item:hover .why-item-arrow {
  border-color: rgba(108, 59, 255, 0.35);

  color: #6c3bff;

  transform: translateX(3px);
}

/* =========================================================
   ACTIVE ITEM
========================================================= */

.why-item.active {
  padding-left: 8px;
}

.why-item.active .why-item-content h3 {
  color: #171321;
}

.why-item.active .why-item-content p {
  color: #6b6575;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {
  .why-choose-content {
    grid-template-columns: 40% 60%;
    gap: 25px;
  }

  .why-circle {
    width: 320px;
    height: 320px;
  }

  .why-circle-glow {
    width: 420px;
    height: 420px;
  }
}

/* =========================================================
   SMALL TABLET
========================================================= */

@media (max-width: 850px) {
  .why-choose-section {
    padding: 90px 0;
  }

  .why-choose-content {
    grid-template-columns: 1fr;
    gap: 55px;
  }

  .why-choose-visual {
    min-height: 460px;
  }

  .why-choose-list {
    max-width: 700px;
    margin: 0 auto;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
  .why-choose-section {
    padding: 75px 0;
  }

  .why-choose-container {
    padding: 0 18px;
  }

  .why-choose-heading {
    margin-bottom: 50px;
  }

  .why-choose-heading h2 {
    font-size: 34px;
    letter-spacing: -0.8px;
  }

  .why-choose-heading p {
    font-size: 14px;
    line-height: 1.7;
  }

  .why-choose-visual {
    min-height: 410px;
  }

  .why-circle {
    width: 300px;
    height: 300px;
  }

  .why-circle-glow {
    width: 360px;
    height: 360px;
  }

  .why-circle h3 {
    font-size: 25px;
  }

  .why-circle-icon {
    width: 62px;
    height: 62px;

    margin-bottom: 14px;

    border-radius: 19px;

    font-size: 23px;
  }

  .ring-one {
    inset: -12px;
  }

  .ring-two {
    inset: -23px;
  }

  .why-item {
    grid-template-columns:
      35px
      2px
      1fr
      34px;

    gap: 12px;

    padding: 20px 0;
  }

  .why-item.active {
    padding-left: 5px;
  }

  .why-item-content h3 {
    font-size: 18px;
  }

  .why-item-content p {
    font-size: 12px;
    line-height: 1.65;
  }

  .why-item-arrow {
    width: 32px;
    height: 32px;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
  .why-choose-section {
    padding: 65px 0;
  }

  .why-choose-heading h2 {
    font-size: 30px;
  }

  .why-choose-visual {
    min-height: 380px;
  }

  .why-circle {
    width: 275px;
    height: 275px;
  }

  .why-circle-glow {
    width: 330px;
    height: 330px;
  }

  .why-circle h3 {
    font-size: 23px;
  }

  .why-circle-small {
    font-size: 8px;
  }

  .why-circle p {
    font-size: 8px;
  }

  .why-circle-icon {
    width: 58px;
    height: 58px;

    font-size: 21px;
  }

  .why-item {
    grid-template-columns:
      30px
      2px
      1fr
      32px;

    gap: 10px;
  }

  .why-item-content h3 {
    font-size: 17px;
  }

  .why-item-content p {
    font-size: 11.5px;
  }

  .why-item-arrow {
    width: 30px;
    height: 30px;
  }
}

/* =========================================================
   ACCESSIBILITY
========================================================= */

@media (prefers-reduced-motion: reduce) {
  .why-circle-glow,
  .why-circle-ring,
  .why-circle-icon,
  .why-circle-dot {
    animation: none;
  }

  .why-circle,
  .why-item,
  .why-item-arrow {
    transition: none;
  }
}
/* =========================================================
   DIGITAL MARKETING SECTION
========================================================= */

.digital-marketing-section {
  position: relative;
  width: 100%;
  overflow: hidden;

  /* LEFT + RIGHT SPACE FOR WHOLE SECTION */
  padding-left: 45px;
  padding-right: 45px;
}

/* Main inner wrapper */
.digital-section-inner {
  position: relative;
  width: 100%;
  z-index: 2;
}

/* =========================================================
   SECTION HEADING
========================================================= */

.digital-marketing-section .sec-heading {
  max-width: 900px;
  margin: 0 auto;
}

.digital-marketing-section .section-description {
  max-width: 750px;
  margin: 20px auto 0;
  color: #ffffff;
  line-height: 1.7;
}

/* =========================================================
   SLIDER CONTAINER
========================================================= */

.digital-slider-container {
  width: 100%;
  padding-left: 15px;
  padding-right: 15px;
}

/* Swiper */
.digital-marketing-section .service-slider {
  width: 100%;
  overflow: hidden;
}

/* Slider wrapper */
.digital-marketing-section .service-wrapper {
  width: 100%;
}

/* =========================================================
   SERVICE CARD
========================================================= */

.digital-marketing-section .service-item {
  position: relative;

  width: 100%;
  height: 100%;

  background: #ffffff;

  border-radius: 20px;
  overflow: hidden;

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* Card hover */
.digital-marketing-section .service-item:hover {
  transform: translateY(-8px);

  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18);
}

/* =========================================================
   CARD IMAGE
========================================================= */

.digital-marketing-section .service-img {
  position: relative;

  width: 100%;
  height: 240px;

  overflow: hidden;
}

.digital-marketing-section .service-img img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.5s ease;
}

/* Image hover */
.digital-marketing-section .service-item:hover .service-img img {
  transform: scale(1.06);
}

/* =========================================================
   SERVICE ICON
========================================================= */

.digital-marketing-section .service-icon {
  position: relative;

  width: 60px;
  height: 60px;

  margin-top: -30px;
  margin-left: 25px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #ffffff;

  border-radius: 50%;

  z-index: 5;

  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

.digital-marketing-section .service-icon i {
  font-size: 25px;
}

/* =========================================================
   CARD CONTENT
========================================================= */

.digital-marketing-section .service-content {
  padding: 20px 25px 28px;
}

.digital-marketing-section .service-content .title {
  margin-bottom: 12px;
}

.digital-marketing-section .service-content .title a {
  text-decoration: none;

  transition: color 0.3s ease;
}

.digital-marketing-section .service-content .desc {
  margin-bottom: 20px;

  line-height: 1.7;
}

/* =========================================================
   LEARN MORE BUTTON
========================================================= */

.digital-marketing-section .text-btn {
  display: inline-flex;

  align-items: center;
  gap: 10px;

  text-decoration: none;

  transition: all 0.3s ease;
}

.digital-marketing-section .btn-icon {
  display: flex;

  align-items: center;
  justify-content: center;

  transition: transform 0.3s ease;
}

.digital-marketing-section .text-btn:hover .btn-icon {
  transform: translateX(5px);
}

/* =========================================================
   SLIDE GAP
========================================================= */

.digital-marketing-section .swiper-slide {
  height: auto;
}

/* =========================================================
   PAGINATION
========================================================= */

.digital-marketing-section .swiper-pagination-area {
  margin-top: 35px;
  text-align: center;
}

.digital-marketing-section .swiper-pagination-area .swiper-pagination-bullet {
  opacity: 0.5;
  transition: all 0.3s ease;
}

.digital-marketing-section
  .swiper-pagination-area
  .swiper-pagination-bullet-active {
  opacity: 1;
  transform: scale(1.15);
}

/* =========================================================
   BACKGROUND SHAPES
========================================================= */

.digital-marketing-section .bg-shape-1,
.digital-marketing-section .bg-shape-2 {
  position: absolute;
  z-index: 0;

  pointer-events: none;
}

.digital-marketing-section .bg-shape-1 {
  left: 0;
  top: 0;
}

.digital-marketing-section .bg-shape-2 {
  right: 0;
  bottom: 0;
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {
  .digital-marketing-section {
    padding-left: 60px;
    padding-right: 60px;
  }

  .digital-slider-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {
  .digital-marketing-section {
    padding-left: 30px;
    padding-right: 30px;
  }

  .digital-slider-container {
    padding-left: 10px;
    padding-right: 10px;
  }

  .digital-marketing-section .service-img {
    height: 220px;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
  .digital-marketing-section {
    padding-left: 15px;
    padding-right: 15px;
  }

  .digital-slider-container {
    padding-left: 5px;
    padding-right: 5px;
  }

  .digital-marketing-section .service-img {
    height: 210px;
  }

  .digital-marketing-section .service-content {
    padding: 18px 20px 24px;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
  .digital-marketing-section {
    padding-left: 10px;
    padding-right: 10px;
  }

  .digital-slider-container {
    padding-left: 5px;
    padding-right: 5px;
  }

  .digital-marketing-section .service-img {
    height: 200px;
  }

  .digital-marketing-section .service-icon {
    width: 55px;
    height: 55px;

    margin-left: 20px;
    margin-top: -27px;
  }
}
/* contact icon */
.header-contact-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-contact-list li {
  margin: 0;
  padding: 0;
}

.header-contact-list li a {
  display: flex;
  align-items: center;
  gap: 10px;

  color: #000000;
  text-decoration: none;

  transition: color 0.3s ease;
}

/* Icon */
.header-contact-list .icon {
  width: 36px;
  height: 36px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #f1e9ff;
  color: #7046b4;

  border-radius: 50%;

  transition: all 0.3s ease;
}

/* Text - BLACK */
.header-contact-list .text {
  color: #000000;
  font-size: 15px;
  font-weight: 500;

  transition: color 0.3s ease;
}

/* Hover - PURPLE */
.header-contact-list li a:hover,
.header-contact-list li a:hover .text {
  color: #21103a;
}

/* Icon hover */
.header-contact-list li a:hover .icon {
  background: #21103a;
  color: #ffffff;
}
/* hero section */

.ashley-hero {
  --bg: #eeeae3;
  --purple: #35105c;
  --purple-2: #6e3b9c;
  --white: #ffffff;

  position: relative;

  width: 100%;
  height: 100vh;
  min-height: 700px;

  overflow: hidden;

  background: var(--bg);
  color: var(--purple);

  isolation: isolate;

  font-family: Arial, Helvetica, sans-serif;
}

/* =========================================
   LOADER
========================================= */

.hero-loader {
  position: absolute;

  z-index: 100;

  inset: 0;

  background: var(--purple);

  transform-origin: bottom;

  animation: loaderOut 1.4s cubic-bezier(0.77, 0, 0.175, 1) 0.2s forwards;

  pointer-events: none;
}

@keyframes loaderOut {
  0% {
    transform: scaleY(1);
  }

  100% {
    transform: scaleY(0);
  }
}

/* =========================================
   INNER
========================================= */

.hero-inner {
  position: relative;

  width: 100%;
  height: 100%;

  padding: 5vh 5vw;
}

/* =========================================
   CAPTION
========================================= */

.hero-caption {
  position: absolute;

  z-index: 20;

  left: 5vw;
  top: 19vh;

  width: 170px;

  opacity: 0;

  animation: captionIn 1s 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.hero-caption span {
  display: block;

  margin-bottom: 18px;

  font-size: 10px;

  text-transform: uppercase;

  letter-spacing: 2px;

  opacity: 0.5;
}

.hero-caption p {
  margin: 0;

  font-size: 13px;

  line-height: 1.6;

  font-weight: 500;
}

@keyframes captionIn {
  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* =========================================
   BIG TYPOGRAPHY
========================================= */

.hero-heading {
  position: absolute;

  z-index: 8;

  left: 0;
  top: 50%;

  width: 100%;

  transform: translateY(-50%);

  pointer-events: none;
}

.hero-word {
  position: relative;

  width: max-content;

  overflow: hidden;

  font-size: clamp(85px, 14vw, 220px);

  line-height: 0.72;

  letter-spacing: -0.085em;

  font-weight: 800;

  white-space: nowrap;
}

.hero-word span {
  display: block;

  transform: translateY(120%);

  opacity: 0;
}

/* first word */

.word-one {
  margin-left: 8vw;
}

.word-one span {
  animation: wordReveal 1.1s 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* second */

.word-two {
  margin-left: 20vw;

  color: transparent;

  -webkit-text-stroke: 2px var(--purple);
}

.word-two span {
  animation: wordReveal 1.1s 1.12s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* third */

.word-three {
  margin-left: 7vw;

  color: var(--purple);
}

.word-three span {
  animation: wordReveal 1.1s 1.24s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes wordReveal {
  0% {
    opacity: 0;

    transform: translateY(120%);
  }

  100% {
    opacity: 1;

    transform: translateY(0);
  }
}



/* =========================================
   CIRCLE
========================================= */

.visual-circle {
  position: absolute;

  z-index: -1;

  width: 170px;
  height: 170px;

  border-radius: 50%;

  background: var(--purple);

  right: -90px;
  bottom: -70px;

  opacity: 0.95;

  transform: scale(0);

  animation: circleIn 1s 1.7s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes circleIn {
  from {
    transform: scale(0);
  }

  to {
    transform: scale(1);
  }
}



/* =========================================
   SCROLL
========================================= */

.hero-scroll {
  position: absolute;

  z-index: 20;

  left: 5vw;
  bottom: 5vh;

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 9px;

  text-transform: uppercase;

  letter-spacing: 2px;

  opacity: 0;

  animation: descriptionIn 1s 1.5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.scroll-arrow {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 28px;
  height: 28px;

  border: 1px solid rgba(53, 16, 92, 0.3);

  border-radius: 50%;

  animation: arrowMove 1.8s infinite;
}

@keyframes arrowMove {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(5px);
  }
}

/* =========================================
   DESKTOP MOUSE PARALLAX
========================================= */

@media (min-width: 901px) {
  .hero-heading {
    will-change: transform;
  }

  .hero-visual {
    will-change: transform;
  }
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {
  .ashley-hero {
    min-height: 750px;
  }

  .hero-inner {
    padding: 30px 25px;
  }

  .hero-caption {
    left: 25px;
    top: 14vh;
  }

  .hero-word {
    font-size: clamp(70px, 16vw, 135px);
  }

  .word-one {
    margin-left: 3vw;
  }

  .word-two {
    margin-left: 12vw;
  }

  .word-three {
    margin-left: 3vw;
  }

  .hero-visual {
    width: 38vw;
    height: 52vh;

    right: 8vw;
  }

  .hero-description {
    right: 25px;
  }

  .hero-scroll {
    left: 25px;
  }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {
  .ashley-hero {
    height: 100svh;
    min-height: 680px;
  }

  .hero-inner {
    padding: 20px;
  }

  .hero-caption {
    left: 20px;
    top: 12vh;

    width: 145px;
  }

  .hero-caption p {
    font-size: 12px;
  }

  .hero-heading {
    top: 45%;
  }

  .hero-word {
    font-size: 18vw;

    line-height: 0.78;
  }

  .word-one {
    margin-left: 0;
  }

  .word-two {
    margin-left: 9vw;

    -webkit-text-stroke: 1.5px var(--purple);
  }

  .word-three {
    margin-left: 0;
  }

  .hero-visual {
    width: 53vw;
    height: 47vh;

    min-width: 0;
    min-height: 0;

    right: 10vw;

    top: 55%;
  }

  .visual-number {
    right: -35px;
  }

  .visual-circle {
    width: 100px;
    height: 100px;

    right: -45px;
    bottom: -40px;
  }

  .hero-description {
    right: 20px;
    bottom: 13vh;
  }

  .hero-description strong {
    font-size: 12px;
  }

  .hero-scroll {
    left: 20px;
    bottom: 25px;
  }
}
/* hero section */
/* =========================================================
   ROOT
========================================================= */

:root {
  --primary: #6c3bff;
  --primary-dark: #5124d6;

  --background: #faf9fd;
  --background-soft: #f3f0fa;

  --text: #17151d;
  --text-soft: #68636f;

  --purple-line: rgba(108, 59, 255, 0.18);

  --container-padding: clamp(25px, 5vw, 75px);

  --transition: cubic-bezier(0.77, 0, 0.18, 1);
}

/* =========================================================
   RESET
========================================================= */

* {
  margin: 0;
  padding: 0;

  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "DM Sans", sans-serif;

  background: var(--background);

  color: var(--text);

  overflow-x: hidden;
}

body.loading {
  overflow: hidden;
}

a {
  text-decoration: none;

  color: inherit;
}

/* =========================================================
   MAIN CONTENT
========================================================= */

#mainContent {
  opacity: 0;

  transform: translateY(25px);

  transition:
    opacity 1s ease,
    transform 1s var(--transition);
}

#mainContent.loaded {
  opacity: 1;

  transform: translateY(0);
}

/* =========================================================
   =========================================================
   PRELOADER
   =========================================================
========================================================= */

.page-loader {
  position: fixed;

  inset: 0;

  width: 100%;
  height: 100vh;
  height: 100svh;

  z-index: 99999;

  overflow: hidden;

  background: #6c3bff;

  color: #ffffff;

  transition:
    background 1s var(--transition),
    clip-path 1.2s var(--transition),
    opacity 0.5s ease;
}

/* =========================================================
   PRELOADER BACKGROUND CIRCLES
========================================================= */

.page-loader::before {
  content: "";

  position: absolute;

  width: 70vw;
  height: 70vw;

  max-width: 950px;
  max-height: 950px;

  border-radius: 50%;

  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);

  background: rgba(255, 255, 255, 0.045);

  pointer-events: none;
}

.page-loader::after {
  content: "";

  position: absolute;

  width: 42vw;
  height: 42vw;

  max-width: 600px;
  max-height: 600px;

  border-radius: 50%;

  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);

  background: rgba(255, 255, 255, 0.025);

  pointer-events: none;
}

/* =========================================================
   LOADER TOP
========================================================= */

.loader-top {
  position: absolute;

  top: 30px;

  left: var(--container-padding);

  z-index: 20;
}

.loader-company-name {
  font-family: "Manrope", sans-serif;

  font-size: 20px;

  font-weight: 800;

  letter-spacing: -0.045em;

  text-transform: uppercase;

  color: #ffffff;
}

/* =========================================================
   TEXT SCREEN
========================================================= */

/* =========================================================
   LOADER TEXT SCREEN
========================================================= */

.loader-text-screen {
  position: absolute;
  inset: 0;
  z-index: 10;

  display: flex;
  align-items: center;
  justify-content: center;

  transition:
    opacity 0.7s ease,
    transform 0.8s var(--transition);
}

/* =========================================================
   WORD CONTAINER
========================================================= */

.loader-words {
  display: flex;
  align-items: center;
  justify-content: center;

  /* SPACE FROM LEFT + RIGHT SCREEN */
  width: calc(100% - 100px);

  max-width: 1400px;

  margin: 0 auto;

  /* SPACE BETWEEN WORDS */
  gap: clamp(25px, 4.5vw, 70px);

  padding: 0;

  white-space: nowrap;
  overflow: visible;
}

/* =========================================================
   WORD
========================================================= */

.loader-word {
  display: inline-block;

  flex: 0 0 auto;

  font-family: "Manrope", sans-serif;

  font-size: clamp(35px, 6vw, 95px);

  font-weight: 500;

  line-height: 0.9;

  letter-spacing: -0.075em;

  color: #ffffff;

  opacity: 0;

  transform: translateY(40px) scale(0.96);

  filter: blur(8px);
}

/* =========================================================
   DIFFERENT — BOLD
========================================================= */

.loader-word.word-3 {
  font-weight: 800;
}

/* =========================================================
   WORD 1
========================================================= */

.word-1 {
  animation:
    wordIn 0.9s var(--transition) 0.5s forwards,
    wordOut 0.7s var(--transition) 5.1s forwards;
}

/* =========================================================
   WORD 2
========================================================= */

.word-2 {
  animation:
    wordIn 0.9s var(--transition) 1.7s forwards,
    wordOut 0.7s var(--transition) 5.1s forwards;
}

/* =========================================================
   WORD 3
========================================================= */

.word-3 {
  animation:
    wordIn 0.9s var(--transition) 2.9s forwards,
    wordOut 0.7s var(--transition) 5.1s forwards;
}

/* =========================================================
   WORD IN
========================================================= */

@keyframes wordIn {
  0% {
    opacity: 0;

    transform: translateY(40px) scale(0.96);

    filter: blur(8px);
  }

  100% {
    opacity: 1;

    transform: translateY(0) scale(1);

    filter: blur(0);
  }
}

/* =========================================================
   WORD OUT
========================================================= */

@keyframes wordOut {
  0% {
    opacity: 1;

    transform: translateY(0) scale(1);

    filter: blur(0);
  }

  100% {
    opacity: 0;

    transform: translateY(-35px) scale(1.03);

    filter: blur(7px);
  }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {
  .loader-words {
    width: calc(100% - 70px);

    gap: clamp(18px, 3.5vw, 40px);
  }

  .loader-word {
    font-size: clamp(30px, 7vw, 75px);
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {
  .loader-words {
    width: calc(100% - 40px);

    gap: clamp(10px, 3vw, 22px);
  }

  .loader-word {
    font-size: clamp(23px, 8vw, 48px);

    letter-spacing: -0.06em;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .loader-words {
    width: calc(100% - 30px);
    gap: 8px;
  }

  .loader-word {
    font-size: 21px;
  }
}

/* =========================================================
   SECOND PRELOADER — LOGO PAGE
   ONLY THIS SECTION IS CHANGED
========================================================= */

.loader-logo-screen {
  position: absolute;
  inset: 0;
  z-index: 15;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;

  opacity: 0;
  visibility: hidden;

  background:
    radial-gradient(
      circle at 50% 50%,
      rgba(108, 59, 255, 0.1) 0%,
      rgba(108, 59, 255, 0.035) 28%,
      transparent 58%
    ),
    linear-gradient(135deg, #ffffff 0%, #faf8ff 45%, #f1edff 100%);

  transform: scale(1.06);

  transition:
    opacity 0.9s ease,
    transform 1.1s var(--transition),
    visibility 0.9s ease;
}

/* =========================================================
   LOGO MODE
========================================================= */

.page-loader.logo-mode .loader-logo-screen {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

.page-loader.logo-mode .loader-text-screen {
  opacity: 0;
  transform: scale(1.05);
}

/* =========================================================
   DECORATIVE LIGHT ORBS
========================================================= */

.loader-logo-screen::before {
  content: "";
  position: absolute;

  width: 520px;
  height: 520px;

  top: 50%;
  left: 50%;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(108, 59, 255, 0.13) 0%,
    rgba(108, 59, 255, 0.055) 35%,
    transparent 70%
  );

  filter: blur(8px);

  animation: logoAmbient 5s ease-in-out infinite;

  pointer-events: none;
}

/* =========================================================
   SECOND DECORATIVE ORB
========================================================= */

.loader-logo-screen::after {
  content: "";

  position: absolute;

  width: 220px;
  height: 220px;

  top: 12%;
  right: 12%;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(108, 59, 255, 0.08),
    transparent 68%
  );

  filter: blur(5px);

  animation: floatingOrb 6s ease-in-out infinite alternate;

  pointer-events: none;
}

/* =========================================================
   AMBIENT ANIMATION
========================================================= */

@keyframes logoAmbient {
  0% {
    transform: translate(-50%, -50%) scale(0.9);

    opacity: 0.65;
  }

  50% {
    transform: translate(-50%, -50%) scale(1.08);

    opacity: 1;
  }

  100% {
    transform: translate(-50%, -50%) scale(0.9);

    opacity: 0.65;
  }
}

@keyframes floatingOrb {
  0% {
    transform: translate(0, 0) scale(0.9);
  }

  100% {
    transform: translate(-35px, 40px) scale(1.15);
  }
}

/* =========================================================
   LOGO CONTAINER
========================================================= */

.loader-logo {
  position: relative;
  z-index: 5;

  display: flex;
  align-items: center;
  justify-content: center;

  width: clamp(190px, 20vw, 300px);
  height: clamp(190px, 20vw, 300px);

  opacity: 0;

  transform: translateY(35px) scale(0.78);

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.72);

  box-shadow:
    0 30px 90px rgba(81, 36, 214, 0.12),
    0 10px 35px rgba(81, 36, 214, 0.08),
    inset 0 0 0 1px rgba(108, 59, 255, 0.08);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* =========================================================
   LOGO OUTER RING
========================================================= */

.loader-logo::before {
  content: "";

  position: absolute;
  inset: -12px;

  border-radius: 50%;

  border: 1px solid rgba(108, 59, 255, 0.18);

  transform: scale(0.8);
  opacity: 0;

  animation: logoRing 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.35s forwards;
}

/* =========================================================
   LOGO SECOND RING
========================================================= */

.loader-logo::after {
  content: "";

  position: absolute;

  inset: -25px;

  border-radius: 50%;

  border: 1px solid rgba(108, 59, 255, 0.07);

  transform: scale(0.7);
  opacity: 0;

  animation: logoRingOuter 1.5s cubic-bezier(0.16, 1, 0.3, 1) 0.5s forwards;
}

/* =========================================================
   LOGO IMAGE
========================================================= */

.loader-logo img {
  position: relative;
  z-index: 5;

  display: block;

  width: clamp(125px, 13vw, 200px);

  height: auto;

  object-fit: contain;

  filter: drop-shadow(0 12px 25px rgba(81, 36, 214, 0.12));
}

/* =========================================================
   LOGO REVEAL
========================================================= */

.page-loader.logo-mode .loader-logo {
  animation: logoReveal 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.05s forwards;
}

@keyframes logoReveal {
  0% {
    opacity: 0;

    transform: translateY(35px) scale(0.78);
  }

  55% {
    opacity: 1;

    transform: translateY(-7px) scale(1.04);
  }

  75% {
    transform: translateY(2px) scale(0.985);
  }

  100% {
    opacity: 1;

    transform: translateY(0) scale(1);
  }
}

/* =========================================================
   RINGS
========================================================= */

@keyframes logoRing {
  0% {
    opacity: 0;
    transform: scale(0.8);
  }

  60% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes logoRingOuter {
  0% {
    opacity: 0;
    transform: scale(0.7);
  }

  60% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

/* =========================================================
   LOGO LINE
========================================================= */

.logo-line {
  position: relative;
  z-index: 5;

  width: clamp(55px, 7vw, 100px);

  height: 2px;

  margin-top: 45px;

  background: linear-gradient(90deg, transparent, #6c3bff, transparent);

  transform: scaleX(0);
  transform-origin: center;

  opacity: 0.7;
}

.page-loader.logo-mode .logo-line {
  animation: lineReveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.55s forwards;
}

@keyframes lineReveal {
  0% {
    transform: scaleX(0);
    opacity: 0;
  }

  100% {
    transform: scaleX(1);
    opacity: 0.7;
  }
}

/* =========================================================
   TAGLINE
========================================================= */

.logo-tagline {
  position: relative;
  z-index: 5;

  margin-top: 20px;

  font-family: "Manrope", sans-serif;

  font-size: 14px;
  font-weight: 700;

  letter-spacing: 0.35em;

  color: #21103a;

  opacity: 0;

  transform: translateY(15px);
}

.page-loader.logo-mode .logo-tagline {
  animation: taglineReveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.7s forwards;
}

@keyframes taglineReveal {
  0% {
    opacity: 0;
    transform: translateY(15px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* =========================================================
   SMALL LOADING DOTS
========================================================= */

.loader-logo-screen .logo-tagline::after {
  content: "•••";

  display: block;

  margin-top: 15px;

  font-size: 8px;

  letter-spacing: 5px;

  color: #6c3bff;

  opacity: 0.45;

  animation: dotsPulse 1.5s ease-in-out infinite;
}

@keyframes dotsPulse {
  0%,
  100% {
    opacity: 0.25;
    transform: translateY(0);
  }

  50% {
    opacity: 0.8;
    transform: translateY(-2px);
  }
}

/* =========================================================
   LOGO MODE PROGRESS
========================================================= */

.page-loader.logo-mode .loader-progress {
  background: rgba(81, 36, 214, 0.12);
}

.page-loader.logo-mode .loader-progress span {
  background: #6c3bff;
}

/* =========================================================
   LOGO MODE INFO
========================================================= */

.page-loader.logo-mode .loader-info {
  color: rgba(81, 36, 214, 0.55);
}

/* =========================================================
   MOBILE LOGO PAGE
========================================================= */

@media (max-width: 767px) {
  .loader-logo {
    width: 190px;
    height: 190px;
  }

  .loader-logo img {
    width: 125px;
  }

  .loader-logo::before {
    inset: -9px;
  }

  .loader-logo::after {
    inset: -18px;
  }

  .loader-logo-screen::before {
    width: 360px;
    height: 360px;
  }

  .loader-logo-screen::after {
    width: 150px;
    height: 150px;

    top: 15%;
    right: 5%;
  }

  .logo-line {
    margin-top: 35px;
  }

  .logo-tagline {
    margin-top: 16px;
    font-size: 7px;
    letter-spacing: 0.27em;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .loader-logo {
    width: 165px;
    height: 165px;
  }

  .loader-logo img {
    width: 105px;
  }

  .logo-line {
    margin-top: 30px;
  }
}
/* =========================================================
   LOGO MODE PROGRESS
========================================================= */

.page-loader.logo-mode .loader-progress {
  background: rgba(81, 36, 214, 0.15);
}

.page-loader.logo-mode .loader-progress span {
  background: #6c3bff;
}

/* =========================================================
   LOADER INFO
========================================================= */

.loader-info {
  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-top: 13px;

  font-family: "Manrope", sans-serif;

  font-size: 8px;

  font-weight: 700;

  letter-spacing: 0.18em;

  color: rgba(255, 255, 255, 0.72);
}

.page-loader.logo-mode .loader-info {
  color: rgba(81, 36, 214, 0.6);
}

/* =========================================================
   LOADER EXIT
========================================================= */

.page-loader.hide {
  clip-path: inset(0 0 100% 0);

  opacity: 0;

  pointer-events: none;
}



/* =========================================================
   BRAND LOGO
========================================================= */

.brand-logo {
  font-family: "Manrope", sans-serif;

  font-size: 30px;

  font-weight: 800;

  letter-spacing: -0.06em;

  color: var(--text);

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}

.brand-logo:hover {
  color: var(--primary);

  transform: translateY(-2px);
}

/* =========================================================
   MENU
========================================================= */

.menu-toggle {
  width: 52px;
  height: 52px;

  border: 0;

  background: transparent;

  display: flex;

  flex-direction: column;

  align-items: flex-end;
  justify-content: center;

  gap: 6px;

  cursor: pointer;
}

.menu-toggle span {
  display: block;

  height: 2px;

  background: var(--text);

  transition:
    width 0.4s var(--transition),
    transform 0.4s var(--transition),
    background 0.3s ease;
}

.menu-toggle span:nth-child(1) {
  width: 30px;
}

.menu-toggle span:nth-child(2) {
  width: 20px;
}

.menu-toggle span:nth-child(3) {
  width: 30px;
}

.menu-toggle:hover span:nth-child(1),
.menu-toggle:hover span:nth-child(3) {
  width: 24px;
}

.menu-toggle:hover span:nth-child(2) {
  width: 30px;
}

/* =========================================================
   SVG
========================================================= */

.geometry-svg {
  width: 100%;
  height: 100%;

  display: block;
}

.geo-lines {
  fill: none;

  stroke: var(--purple-line);

  stroke-width: 1.15;

  vector-effect: non-scaling-stroke;
}





/* =========================================================
   TITLE STRONG
========================================================= */

.hero-title strong {
  color: #330879;

  font-weight: 800;
}


/* =========================================================
   BRAND LOGO
========================================================= */

.brand-logo {
  font-family: "Manrope", sans-serif;

  font-size: 30px;

  font-weight: 800;

  letter-spacing: -0.06em;

  color: var(--text);

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}

.brand-logo:hover {
  color: var(--primary);

  transform: translateY(-2px);
}

/* =========================================================
   MENU
========================================================= */

.menu-toggle {
  width: 52px;
  height: 52px;

  border: 0;

  background: transparent;

  display: flex;

  flex-direction: column;

  align-items: flex-end;

  justify-content: center;

  gap: 6px;

  cursor: pointer;
}

.menu-toggle span {
  display: block;

  height: 2px;

  background: var(--text);

  transition:
    width 0.4s var(--transition),
    transform 0.4s var(--transition),
    background 0.3s ease;
}

.menu-toggle span:nth-child(1) {
  width: 30px;
}

.menu-toggle span:nth-child(2) {
  width: 20px;
}

.menu-toggle span:nth-child(3) {
  width: 30px;
}

.menu-toggle:hover span:nth-child(1),
.menu-toggle:hover span:nth-child(3) {
  width: 24px;
}

.menu-toggle:hover span:nth-child(2) {
  width: 30px;
}

/* =========================================================
   HERO GEOMETRY
========================================================= */

.hero-geometry {
  position: absolute;

  top: -8%;
  right: -4%;

  width: 67%;
  height: 115%;

  pointer-events: none;

  z-index: 1;

  opacity: 0.95;

  transition: transform 1s var(--transition);
}

/* =========================================================
   SVG
========================================================= */

.geometry-svg {
  width: 100%;
  height: 100%;

  display: block;
}

.geo-lines {
  fill: none;

  stroke: var(--purple-line);

  stroke-width: 1.15;

  vector-effect: non-scaling-stroke;
}



/* =========================================================
   HERO CONTAINER
========================================================= */

.hero-container {
  position: relative;

  z-index: 5;

  min-height: 100vh;
  min-height: 100svh;

  display: flex;

  align-items: center;

  padding: 120px var(--container-padding);
}





/* =========================================================
   SCROLL INDICATOR
   RIGHT SIDE
========================================================= */

.scroll-indicator {
  position: absolute;

  right: var(--container-padding);

  bottom: 45px;

  z-index: 10;

  width: 110px;
  height: 110px;

  display: flex;

  align-items: center;

  justify-content: center;

  opacity: 0;

  animation: scrollIndicatorIn 1s ease 1.5s forwards;
}

/* =========================================================
   SCROLL RING
========================================================= */

.scroll-ring {
  width: 62px;
  height: 62px;

  border-radius: 50%;

  display: flex;

  align-items: center;

  justify-content: center;

  background: #330879;

  box-shadow: 0 15px 40px rgba(108, 59, 255, 0.25);
}

/* =========================================================
   SCROLL ARROW
========================================================= */

.scroll-arrow {
  width: 42px;
  height: 42px;

  border-radius: 50%;

  display: flex;

  align-items: center;

  justify-content: center;

  background: #ffffff;

  color: var(--primary);

  font-size: 20px;

  animation: arrowBounce 1.8s ease-in-out infinite;
}

/* =========================================================
   SCROLL TEXT
========================================================= */

.scroll-text {
  position: absolute;

  width: 110px;
  height: 110px;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 8px;

  font-weight: 700;

  letter-spacing: 0.32em;

  color: var(--text-soft);

  transform: rotate(-20deg);

  pointer-events: none;
}

/* =========================================================
   HERO ANIMATIONS
========================================================= */

@keyframes heroFadeUp {
  from {
    opacity: 0;

    transform: translateY(25px);
  }

  to {
    opacity: 1;

    transform: translateY(0);
  }
}

@keyframes heroTitleReveal {
  from {
    opacity: 0;

    transform: translateY(55px);
  }

  to {
    opacity: 1;

    transform: translateY(0);
  }
}

@keyframes scrollIndicatorIn {
  from {
    opacity: 0;

    transform: translateY(20px) scale(0.9);
  }

  to {
    opacity: 1;

    transform: translateY(0) scale(1);
  }
}

@keyframes arrowBounce {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(4px);
  }
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1200px) {
  .hero-geometry {
    width: 70%;

    right: -7%;
  }

  .hero-bottom {
    margin-top: 68px;
  }

  .hero-description {
    max-width: 410px;
  }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
  .hero-content {
    margin-left: 0;
  }

  .hero-geometry {
    width: 80%;

    right: -15%;

    opacity: 0.75;
  }

  .hero-title {
    font-size: clamp(55px, 10vw, 100px);
  }

  .hero-bottom {
    max-width: 850px;

    gap: 45px;

    margin-top: 55px;
  }

  .hero-description {
    flex: 0 1 350px;

    max-width: 350px;
    max-height: 250px;

    font-size: 13px;

    line-height: 1.7;
  }

  .primary-button {
    flex-basis: 220px;

    width: 220px;

    min-width: 220px;
  }

  .scroll-indicator {
    right: 5%;

    bottom: 30px;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
  /* -------------------------
       LOADER
    ------------------------- */

  .loader-top {
    top: 22px;

    left: 20px;
  }

  .loader-company-name {
    font-size: 16px;
  }

  .loader-words {
    gap: 7px;

    padding: 0 30px;
  }

  .loader-word {
    font-size: clamp(27px, 8.5vw, 55px);
  }

  .loader-logo img {
    width: 155px;
  }

  .logo-glow {
    width: 240px;

    height: 240px;
  }

  .loader-bottom {
    left: 20px;

    right: 20px;

    bottom: 22px;
  }

  .loader-info {
    font-size: 6px;

    letter-spacing: 0.1em;
  }

  /* -------------------------
       HEADER
    ------------------------- */

  .hero-header {
    padding: 20px;
  }

  .brand-logo {
    font-size: 26px;
  }

  /* -------------------------
       HERO CONTAINER
    ------------------------- */

  .hero-container {
    padding: 120px 25px 150px;
  }

  .hero-content {
    margin-left: 0;
  }

  /* -------------------------
       LABEL
    ------------------------- */

  .hero-label {
    font-size: 8px;

    margin-bottom: 20px;

    letter-spacing: 0.2em;
  }

  /* -------------------------
       TITLE
    ------------------------- */

  .hero-title {
    font-size: clamp(47px, 12.8vw, 82px);

    line-height: 0.9;
  }

  /* -------------------------
       DESCRIPTION + BUTTON
    ------------------------- */

  .hero-bottom {
    width: 100%;

    max-width: 100%;

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    justify-content: flex-start;

    gap: 28px;

    margin-top: 45px;
  }

  .hero-description {
    flex: none;

    width: 100%;

    max-width: 330px;

    margin: 0;

    padding: 0;

    font-size: 13px;

    line-height: 1.7;
  }

  .primary-button {
    flex: none;

    width: 220px;

    min-width: 220px;

    height: 65px;

    padding: 0 7px 0 28px;
  }

  .button-circle {
    flex-basis: 51px;

    width: 51px;

    height: 51px;

    font-size: 20px;
  }

  /* -------------------------
       GEOMETRY
    ------------------------- */

  .hero-geometry {
    top: 0;

    right: -65%;

    width: 130%;

    height: 100%;

    opacity: 0.75;
  }

  /* -------------------------
       SCROLL INDICATOR
    ------------------------- */

  .scroll-indicator {
    right: 18px;

    bottom: 20px;

    width: 90px;

    height: 90px;

    transform: scale(0.75);

    transform-origin: bottom right;
  }

  .scroll-text {
    width: 110px;

    height: 110px;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .loader-word {
    font-size: 23px;
  }

  .hero-title {
    font-size: 44px;
  }

  .hero-bottom {
    margin-top: 38px;

    gap: 25px;
  }

  .hero-description {
    max-width: 300px;

    font-size: 12px;

    line-height: 1.7;
  }

  .primary-button {
    width: 205px;

    min-width: 205px;

    height: 60px;

    padding: 0 6px 0 25px;
  }

  .button-circle {
    flex-basis: 48px;

    width: 48px;

    height: 48px;
  }

  .scroll-indicator {
    right: 12px;

    bottom: 15px;
  }
}
/* about us page */
/* =========================================================
   ABOUT PAGE CTA — PREMIUM / NO IMAGE
========================================================= */

.about-page .tj-cta-section {
  position: relative;
  z-index: 10;
  padding: 0 0 0;
  margin: 0;
}

/* Main CTA box */
.about-page .tj-cta-section .cta-area {
  position: relative;
  min-height: 300px;
  display: flex;
  align-items: center;
  overflow: hidden;

  padding: 55px 65px;

  border-radius: 28px;

  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(143, 91, 255, 0.22),
      transparent 32%
    ),
    radial-gradient(
      circle at 15% 100%,
      rgba(108, 59, 255, 0.18),
      transparent 35%
    ),
    linear-gradient(135deg, #330879 0%, #21103a 100%);

  box-shadow: 0 30px 80px rgba(33, 16, 58, 0.2);
}

/* Decorative glow */
.about-page .tj-cta-section .cta-area::before {
  content: "";
  position: absolute;
  width: 380px;
  height: 380px;
  right: -160px;
  top: -180px;

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.07);

  filter: blur(2px);

  pointer-events: none;
}

/* Second decorative circle */
.about-page .tj-cta-section .cta-area::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  left: 42%;
  bottom: -130px;

  border-radius: 50%;

  border: 1px solid rgba(255, 255, 255, 0.08);

  pointer-events: none;
}

/* =========================================================
   CONTENT
========================================================= */

.about-page .tj-cta-section .cta-content {
  position: relative;
  z-index: 3;

  width: 100%;
  max-width: 850px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 45px;
}

/* Remove image completely */
.about-page .tj-cta-section .cta-img {
  display: none !important;
}

/* Heading */
.about-page .tj-cta-section .cta-content .title {
  margin: 0;

  max-width: 650px;

  color: #ffffff;

  font-family: "Manrope", sans-serif;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 700;

  line-height: 0.96;
  letter-spacing: -0.055em;
}

/* Make second line slightly softer */
.about-page .tj-cta-section .cta-content .title > div:nth-child(2) {
  color: rgba(255, 255, 255, 0.52);
}

/* =========================================================
   BUTTON
========================================================= */

.about-page .tj-cta-section .cta-btn {
  position: relative;
  z-index: 5;

  flex-shrink: 0;

  margin: 0 !important;
}

/* Button */
.about-page .tj-cta-section .tj-primary-btn {
  position: relative;

  width: 205px;
  min-height: 62px;

  display: inline-flex;
  align-items: center;
  justify-content: space-between;

  padding: 6px 7px 6px 25px;

  border: 0;
  border-radius: 100px;

  background: #ffffff !important;

  color: #21103a !important;

  text-decoration: none;

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

/* Button hover */
.about-page .tj-cta-section .tj-primary-btn:hover {
  color: #21103a !important;

  transform: translateY(-4px);

  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
}

/* Button text */
.about-page .tj-cta-section .tj-primary-btn .btn-text,
.about-page .tj-cta-section .tj-primary-btn .btn-text span {
  color: #21103a !important;

  font-family: "Manrope", sans-serif;
  font-size: 10px;
  font-weight: 800;

  letter-spacing: 0.13em;

  text-transform: uppercase;
}

/* Button arrow circle */
.about-page .tj-cta-section .tj-primary-btn .btn-icon {
  width: 49px;
  height: 49px;

  flex-shrink: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #330879 !important;

  color: #ffffff !important;

  font-size: 17px;

  transition:
    transform 0.4s ease,
    background 0.3s ease;
}

/* Arrow itself */
.about-page .tj-cta-section .tj-primary-btn .btn-icon i {
  color: #ffffff !important;
}

/* Arrow hover */
.about-page .tj-cta-section .tj-primary-btn:hover .btn-icon {
  transform: rotate(-45deg);
  background: #21103a !important;
}

/* =========================================================
   FOOTER OVERLAP
========================================================= */

.about-page .tj-cta-section + .tj-footer-section {
  position: relative;
  z-index: 1;

  margin-top: -55px;

  padding-top: 110px;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
  .about-page .tj-cta-section .cta-area {
    min-height: 280px;

    padding: 50px 45px;

    border-radius: 24px;
  }

  .about-page .tj-cta-section .cta-content {
    max-width: 100%;

    gap: 35px;
  }

  .about-page .tj-cta-section .cta-content .title {
    font-size: clamp(40px, 6vw, 58px);
  }

  .about-page .tj-cta-section .tj-primary-btn {
    width: 190px;
  }

  .about-page .tj-cta-section + .tj-footer-section {
    margin-top: -45px;
    padding-top: 95px;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
  .about-page .tj-cta-section {
    padding: 0 15px;
  }

  .about-page .tj-cta-section .cta-area {
    min-height: auto;

    padding: 42px 25px 38px;

    border-radius: 22px;
  }

  .about-page .tj-cta-section .cta-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 30px;
  }

  .about-page .tj-cta-section .cta-content .title {
    max-width: 100%;

    font-size: 40px;
    line-height: 0.98;
  }

  .about-page .tj-cta-section .cta-btn {
    width: 100%;
  }

  .about-page .tj-cta-section .tj-primary-btn {
    width: 195px;
    min-height: 58px;
  }

  .about-page .tj-cta-section .tj-primary-btn .btn-icon {
    width: 46px;
    height: 46px;
  }

  .about-page .tj-cta-section + .tj-footer-section {
    margin-top: -30px;
    padding-top: 75px;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .about-page .tj-cta-section {
    padding: 0 10px;
  }

  .about-page .tj-cta-section .cta-area {
    padding: 35px 22px;
  }

  .about-page .tj-cta-section .cta-content .title {
    font-size: 34px;
  }
}
/* about us */
/* =========================================================
   ITOLOGY INTERNATIONAL — ABOUT PAGE
   PREMIUM LIGHT DESIGN
   NO :ROOT
========================================================= */

/* =========================================================
   GLOBAL ABOUT PAGE
========================================================= */

.about-page {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  color: #21103a;
}

.about-page .container {
  position: relative;
  z-index: 2;
}

.about-page a {
  text-decoration: none;
}

.about-page p {
  margin-top: 0;
}

/* =========================================================
   COMMON EYEBROW
========================================================= */

.about-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 22px;
  color: #21103a;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;
  line-height: 1.2;
  text-transform: uppercase;
}

.about-eyebrow::before {
  content: "";
  width: 30px;
  height: 2px;
  display: inline-block;
  background: linear-gradient(90deg, #7542d8, #b38aff);
  border-radius: 10px;
}

.about-eyebrow.light {
  color: #b994ff;
}

.about-eyebrow.light::before {
  background: #b994ff;
}








/* =========================================================
   PRIMARY BUTTON
========================================================= */

.about-primary-btn {
  position: relative;

  display: inline-flex;
  align-items: center;

  flex-shrink: 0;

  min-height: 62px;

  padding: 5px 5px 5px 28px;

  border-radius: 100px;

  color: #ffffff;

  background: #330879;

  font-size: 14px;
  font-weight: 700;

  box-shadow: 0 15px 35px rgba(101, 52, 180, 0.2);

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease,
    background 0.35s ease;

  overflow: hidden;
}

.about-primary-btn::before {
  content: "";

  position: absolute;
  inset: 0;

  background: linear-gradient(
    100deg,
    transparent,
    rgba(255, 255, 255, 0.18),
    transparent
  );

  transform: translateX(-100%);

  transition: transform 0.6s ease;
}

.about-primary-btn:hover::before {
  transform: translateX(100%);
}

.about-primary-btn:hover {
  color: #ffffff;

  transform: translateY(-4px);

  box-shadow: 0 20px 45px rgba(101, 52, 180, 0.3);
}

/* button icon */

.about-btn-icon,
.about-btn-arrow {
  width: 52px;
  height: 52px;

  margin-left: 20px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  color: #5c30ae;

  background: #ffffff;

  transition:
    transform 0.4s ease,
    background 0.35s ease,
    color 0.35s ease;
}

.about-primary-btn:hover .about-btn-icon,
.about-primary-btn:hover .about-btn-arrow {
  color: #ffffff;
  background: #21103a;

  transform: rotate(-45deg);
}

/* =========================================================
   INTRO SECTION
========================================================= */

.about-intro {
  position: relative;

  padding: 135px 0;

  background: #ffffff;
}

/* subtle side decoration */

.about-intro::before {
  content: "";

  position: absolute;

  width: 260px;
  height: 260px;

  left: -180px;
  top: 80px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(129, 72, 219, 0.08),
    transparent 70%
  );

  pointer-events: none;
}

.about-intro-grid {
  display: grid;

  grid-template-columns: 240px 1fr;

  gap: 90px;

  max-width: 1120px;

  margin: auto;
}

/* section label */

.about-section-label {
  position: relative;

  padding-top: 12px;

  color: #21103a;

  font-size: 12px;
  font-weight: 800;

  letter-spacing: 2px;

  text-transform: uppercase;
}

.about-section-label::before {
  content: "";

  width: 32px;
  height: 2px;

  position: absolute;

  left: 0;
  top: -5px;

  background: #7542d8;

  border-radius: 10px;
}

/* intro content */

.about-intro-content {
  max-width: 800px;
}

.about-intro-content h2 {
  margin: 0 0 30px;

  color: #21103a;

  font-size: clamp(42px, 5vw, 68px);

  font-weight: 700;

  line-height: 1.04;

  letter-spacing: -3px;
}

.about-intro-content h2 span {
  color: #330879;
}

.about-intro-content p {
  max-width: 760px;

  margin: 0 0 20px;

  color: var(--text-soft);

  font-size: 16px;

  line-height: 1.9;
}

.about-intro-content p:last-child {
  margin-bottom: 0;
}

/* =========================================================
   APPROACH SECTION
========================================================= */

.about-approach-section {
  position: relative;

  padding: 135px 0;

  background: linear-gradient(180deg, #faf8fd 0%, #f7f3fb 100%);
}

/* top decorative line */

.about-approach-section::before {
  content: "";

  position: absolute;

  top: 0;
  left: 50%;

  width: 80px;
  height: 3px;

  transform: translateX(-50%);

  border-radius: 20px;

  background: linear-gradient(90deg, #7542d8, #b993ff);
}

.about-section-heading {
  max-width: 750px;

  margin-bottom: 70px;
}

.about-heading-center {
  margin-left: auto;
  margin-right: auto;

  text-align: center;
}

.about-heading-center .about-eyebrow {
  justify-content: center;
}

.about-heading-center .about-eyebrow::before {
  display: none;
}

.about-section-heading h2 {
  margin: 0 0 20px;

  color: #21103a;

  font-size: clamp(42px, 5vw, 64px);

  font-weight: 700;

  line-height: 1.05;

  letter-spacing: -3px;
}

.about-section-heading h2 span {
  color: #330879;
}

.about-section-heading p {
  max-width: 650px;

  margin: 0 auto;

  color: var(--text-soft);

  font-size: 16px;

  line-height: 1.8;
}

/* =========================================================
   APPROACH CARDS
========================================================= */

.approach-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 18px;
}

.approach-card {
  position: relative;

  min-height: 395px;

  padding: 35px 30px;

  border: 1px solid #e7e0ef;

  border-radius: 18px;

  background: linear-gradient(145deg, #ffffff, #fbf9fd);

  overflow: hidden;

  transition:
    transform 0.4s ease,
    box-shadow 0.4s ease,
    border-color 0.4s ease;
}

.approach-card::before {
  content: "";

  position: absolute;

  width: 150px;
  height: 150px;

  right: -80px;
  top: -80px;

  border-radius: 50%;

  background: rgba(126, 69, 216, 0.08);

  transition: transform 0.5s ease;
}

.approach-card:hover::before {
  transform: scale(1.5);
}

.approach-card:hover {
  transform: translateY(-10px);

  border-color: #c8a9f0;

  box-shadow: 0 25px 60px rgba(55, 25, 94, 0.1);
}

/* number */

.approach-number {
  position: relative;

  color: #b2a5bf;

  font-size: 12px;
  font-weight: 800;

  letter-spacing: 1.5px;
}

/* icon */

.approach-icon {
  width: 62px;
  height: 62px;

  margin: 35px 0 30px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 16px;

  color: #7542d8;

  background: linear-gradient(145deg, #f0e8fb, #e9dcf8);

  font-size: 25px;

  transition:
    transform 0.4s ease,
    background 0.4s ease,
    color 0.4s ease;
}

.approach-card:hover .approach-icon {
  color: #ffffff;

  background: linear-gradient(135deg, #7542d8, #54289e);

  transform: translateY(-4px) rotate(-4deg);
}

/* title */

.approach-card h3 {
  position: relative;

  margin: 0 0 15px;

  color: #21103a;

  font-size: 24px;
  font-weight: 700;
}

/* description */

.approach-card p {
  position: relative;

  margin: 0;

  color: var(--text-soft);

  font-size: 14px;

  line-height: 1.8;
}

/* bottom line */

.approach-line {
  position: absolute;

  left: 30px;
  right: 30px;

  bottom: 25px;

  height: 2px;

  background: #eee8f3;

  transition: background 0.4s ease;
}

.approach-card:hover .approach-line {
  background: linear-gradient(90deg, #7542d8, #b18af7);
}

/* =========================================================
   WHY ITOLOGY
========================================================= */

.why-itology-section {
  position: relative;

  padding: 140px 0;

  background: linear-gradient(135deg, #21103a 0%, #2d1450 55%, #1b0c30 100%);

  overflow: hidden;
}

/* glow */

.why-itology-section::before {
  content: "";

  position: absolute;

  width: 600px;
  height: 600px;

  left: -320px;
  top: -260px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(145, 87, 237, 0.25),
    transparent 68%
  );

  filter: blur(20px);
}

/* second glow */

.why-itology-section::after {
  content: "";

  position: absolute;

  width: 450px;
  height: 450px;

  right: -280px;
  bottom: -260px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(123, 65, 211, 0.18),
    transparent 70%
  );
}

.why-itology-wrap {
  display: grid;

  grid-template-columns: 0.85fr 1.15fr;

  gap: 100px;

  align-items: center;
}

/* left */

.why-itology-left .about-eyebrow {
  color: #b18af4;
}

.why-itology-left .about-eyebrow::before {
  background: #b18af4;
}

.why-itology-left h2 {
  margin: 0 0 25px;

  color: #ffffff;

  font-size: clamp(42px, 5vw, 68px);

  font-weight: 700;

  line-height: 1.04;

  letter-spacing: -3px;
}

.why-itology-left h2 span {
  color: #ae7df1;
}

.why-intro {
  max-width: 500px;

  margin: 0 0 35px;

  color: rgba(255, 255, 255, 0.62);

  font-size: 16px;

  line-height: 1.85;
}

/* why button */

.why-itology-left .about-primary-btn {
  color: #21103a;

  background: #ffffff;
}

.why-itology-left .about-primary-btn:hover {
  color: #ffffff;

  background: #7542d8;
}

/* right */

.why-itology-right {
  display: flex;
  flex-direction: column;

  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.why-card {
  position: relative;

  display: grid;

  grid-template-columns: 70px 1fr;

  gap: 25px;

  padding: 32px 0;

  border-bottom: 1px solid rgba(255, 255, 255, 0.12);

  transition: padding-left 0.35s ease;
}

.why-card:hover {
  padding-left: 12px;
}

.why-card-number {
  color: #8967b8;

  font-size: 12px;
  font-weight: 800;

  letter-spacing: 1.5px;
}

.why-card h3 {
  margin: 0 0 9px;

  color: #ffffff;

  font-size: 22px;

  font-weight: 700;
}

.why-card p {
  max-width: 520px;

  margin: 0;

  color: rgba(255, 255, 255, 0.55);

  font-size: 14px;

  line-height: 1.75;
}

/* =========================================================
   MISSION & VISION — PREMIUM
========================================================= */

.mission-vision-section {
  position: relative;

  padding: 145px 0;

  background: linear-gradient(180deg, #ffffff 0%, #faf8fd 100%);

  overflow: hidden;
}

/* background decoration */

.mission-vision-section::before {
  content: "";

  position: absolute;

  width: 420px;
  height: 420px;

  left: -250px;
  top: 100px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(126, 71, 217, 0.08),
    transparent 70%
  );
}

/* heading */

.mission-vision-heading {
  position: relative;

  max-width: 700px;

  margin-bottom: 65px;
}

.mission-vision-heading h2 {
  margin: 0;

  color: #21103a;

  font-size: clamp(42px, 5vw, 68px);

  font-weight: 700;

  line-height: 1.04;

  letter-spacing: -3px;
}

.mission-vision-heading h2 span {
  color: #330879;
}

/* =========================================================
   MISSION VISION GRID
========================================================= */

.mission-vision-grid {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 24px;
}

/* common card */

.mission-card,
.vision-card {
  position: relative;

  min-height: 540px;

  padding: 42px;

  border-radius: 26px;

  overflow: hidden;

  transition:
    transform 0.45s ease,
    box-shadow 0.45s ease;
}

/* =========================================================
   MISSION CARD
========================================================= */

.mission-card {
  color: #21103a;

  background: linear-gradient(145deg, #f8f3ff 0%, #eee5fa 100%);

  border: 1px solid #e4d8f1;

  box-shadow: 0 20px 60px rgba(80, 45, 118, 0.07);
}

/* mission glow */

.mission-card::before {
  content: "";

  position: absolute;

  width: 300px;
  height: 300px;

  right: -130px;
  top: -130px;

  border-radius: 50%;

  background: radial-gradient(circle, rgba(126, 70, 219, 0.2), transparent 70%);

  transition: transform 0.5s ease;
}

/* mission ring */

.mission-card::after {
  content: "";

  position: absolute;

  width: 220px;
  height: 220px;

  right: -100px;
  bottom: -100px;

  border: 1px solid rgba(117, 66, 216, 0.12);

  border-radius: 50%;
}

.mission-card:hover {
  transform: translateY(-10px);

  box-shadow: 0 30px 75px rgba(80, 45, 118, 0.13);
}

.mission-card:hover::before {
  transform: scale(1.25);
}

/* =========================================================
   VISION CARD
========================================================= */

.vision-card {
  color: #ffffff;

  background:
    radial-gradient(
      circle at 85% 15%,
      rgba(163, 111, 245, 0.28),
      transparent 30%
    ),
    linear-gradient(145deg, #2c124b 0%, #21103a 55%, #170a28 100%);

  border: 1px solid rgba(255, 255, 255, 0.1);

  box-shadow: 0 25px 70px rgba(33, 16, 58, 0.16);
}

/* vision glow */

.vision-card::before {
  content: "";

  position: absolute;

  width: 320px;
  height: 320px;

  right: -150px;
  top: -150px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(173, 125, 247, 0.25),
    transparent 70%
  );

  filter: blur(5px);
}

/* vision ring */

.vision-card::after {
  content: "";

  position: absolute;

  width: 250px;
  height: 250px;

  left: -160px;
  bottom: -170px;

  border: 1px solid rgba(255, 255, 255, 0.08);

  border-radius: 50%;
}

.vision-card:hover {
  transform: translateY(-10px);

  box-shadow: 0 35px 85px rgba(33, 16, 58, 0.25);
}

/* =========================================================
   MISSION / VISION TOP
========================================================= */

.mv-top {
  position: relative;
  z-index: 2;

  display: flex;
  align-items: center;
  justify-content: space-between;

  padding-bottom: 25px;

  border-bottom: 1px solid rgba(33, 16, 58, 0.1);
}

.vision-card .mv-top {
  border-color: rgba(255, 255, 255, 0.12);
}

.mv-label {
  color: #7542d8;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: 2px;
}

.vision-card .mv-label {
  color: #b994ff;
}

.mv-number {
  color: #9d92a9;

  font-size: 12px;

  font-weight: 800;

  letter-spacing: 1px;
}

.vision-card .mv-number {
  color: rgba(255, 255, 255, 0.38);
}

/* =========================================================
   MISSION / VISION CONTENT
========================================================= */

.mv-content {
  position: relative;

  z-index: 2;

  padding-top: 55px;
}

/* icon */

.mv-icon {
  width: 70px;
  height: 70px;

  margin-bottom: 30px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 20px;

  color: #7542d8;

  background: linear-gradient(145deg, #e9ddf8, #ded0f1);

  font-size: 28px;

  box-shadow: 0 12px 30px rgba(102, 55, 164, 0.08);

  transition:
    transform 0.4s ease,
    background 0.4s ease,
    color 0.4s ease;
}

.mission-card:hover .mv-icon {
  color: #ffffff;

  background: linear-gradient(135deg, #7542d8, #52269e);

  transform: rotate(-5deg) translateY(-4px);
}

/* vision icon */

.vision-card .mv-icon {
  color: #ffffff;

  background: linear-gradient(135deg, #8050db, #5d30b0);

  box-shadow: 0 15px 35px rgba(102, 54, 181, 0.3);
}

.vision-card:hover .mv-icon {
  transform: rotate(5deg) translateY(-4px);

  background: linear-gradient(135deg, #a978f0, #7040c7);
}

/* title */

.mv-content h3 {
  position: relative;

  max-width: 500px;

  margin: 0 0 22px;

  color: #21103a;

  font-size: 38px;

  font-weight: 700;

  line-height: 1.08;

  letter-spacing: -1.5px;
}

.mv-content h3 span {
  display: block;

  color: #7542d8;
}

.vision-card .mv-content h3 {
  color: #ffffff;
}

.vision-card .mv-content h3 span {
  color: #b286f5;
}

/* paragraph */

.mv-content p {
  position: relative;

  max-width: 560px;

  margin: 0;

  color: #706a78;

  font-size: 15px;

  line-height: 1.9;
}

.vision-card .mv-content p {
  color: rgba(255, 255, 255, 0.6);
}

/* =========================================================
   SMALL CARD ACCENT
========================================================= */

.mission-card .mv-content::after {
  content: "01";

  position: absolute;

  right: 5px;
  bottom: -20px;

  color: rgba(117, 66, 216, 0.055);

  font-size: 130px;

  font-weight: 800;

  line-height: 1;

  pointer-events: none;
}

.vision-card .mv-content::after {
  content: "02";

  position: absolute;

  right: 5px;
  bottom: -20px;

  color: rgba(255, 255, 255, 0.035);

  font-size: 130px;

  font-weight: 800;

  line-height: 1;

  pointer-events: none;
}

/* =========================================================
   STATEMENT
========================================================= */

.about-statement {
  position: relative;

  padding: 150px 0;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 80% 50%,
      rgba(143, 91, 234, 0.22),
      transparent 38%
    ),
    linear-gradient(135deg, #21103a, #2d1450);
}

/* decorative glow */

.about-statement::before {
  content: "";

  position: absolute;

  width: 550px;
  height: 550px;

  right: -280px;
  top: -250px;

  border-radius: 50%;

  background: radial-gradient(circle, rgba(150, 93, 241, 0.2), transparent 70%);

  filter: blur(10px);
}

.about-statement::after {
  content: "";

  position: absolute;

  left: 8%;
  bottom: 15%;

  width: 100px;
  height: 100px;

  border: 1px solid rgba(255, 255, 255, 0.08);

  border-radius: 50%;
}

.statement-inner {
  position: relative;
  z-index: 2;

  max-width: 900px;

  margin: auto;

  text-align: center;
}

.statement-inner .about-eyebrow {
  justify-content: center;
}

.statement-inner .about-eyebrow::before {
  display: none;
}

.statement-inner h2 {
  margin: 0 auto 28px;

  color: #ffffff;

  font-size: clamp(44px, 6vw, 78px);

  font-weight: 700;

  line-height: 1.02;

  letter-spacing: -4px;
}

.statement-inner h2 span {
  color: #a879f2;
}

.statement-inner p {
  max-width: 680px;

  margin: auto;

  color: rgba(255, 255, 255, 0.6);

  font-size: 16px;

  line-height: 1.85;
}

/* =========================================================
   CTA SECTION
   Works with existing .tj-cta-section HTML
========================================================= */

.about-page .tj-cta-section {
  position: relative;

  z-index: 10;

  padding: 80px 0 0;

  margin: 0;
}

.about-page .tj-cta-section .cta-area {
  position: relative;

  min-height: 310px;

  display: flex;
  align-items: center;

  overflow: hidden;

  padding: 60px 65px;

  border-radius: 28px;

  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(164, 111, 244, 0.3),
      transparent 30%
    ),
    radial-gradient(
      circle at 15% 100%,
      rgba(108, 59, 255, 0.2),
      transparent 35%
    ),
    linear-gradient(135deg, #330879, #21103a);

  box-shadow: 0 30px 80px rgba(33, 16, 58, 0.2);
}

.about-page .tj-cta-section .cta-area::before {
  content: "";

  position: absolute;

  width: 400px;
  height: 400px;

  right: -180px;
  top: -200px;

  border-radius: 50%;

  border: 1px solid rgba(255, 255, 255, 0.1);

  box-shadow:
    0 0 0 40px rgba(255, 255, 255, 0.02),
    0 0 0 80px rgba(255, 255, 255, 0.015);

  pointer-events: none;
}

.about-page .tj-cta-section .cta-area::after {
  content: "";

  position: absolute;

  width: 180px;
  height: 180px;

  left: 42%;
  bottom: -130px;

  border-radius: 50%;

  border: 1px solid rgba(255, 255, 255, 0.08);

  pointer-events: none;
}

.about-page .tj-cta-section .cta-img {
  display: none !important;
}

.about-page .tj-cta-section .cta-content {
  position: relative;

  z-index: 3;

  width: 100%;

  max-width: 100%;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 45px;
}

.about-page .tj-cta-section .cta-content .title {
  margin: 0;

  max-width: 720px;

  color: #ffffff;

  font-family: "Manrope", sans-serif;

  font-size: clamp(42px, 5vw, 68px);

  font-weight: 700;

  line-height: 0.98;

  letter-spacing: -3px;
}

.about-page .tj-cta-section .cta-content .title > div:nth-child(2) {
  color: rgba(255, 255, 255, 0.5);
}

.about-page .tj-cta-section .cta-btn {
  position: relative;

  z-index: 5;

  flex-shrink: 0;

  margin: 0 !important;
}

.about-page .tj-cta-section .tj-primary-btn {
  position: relative;

  width: 205px;

  min-height: 62px;

  display: inline-flex;

  align-items: center;

  justify-content: space-between;

  padding: 6px 7px 6px 25px;

  border: 0;

  border-radius: 100px;

  background: #ffffff !important;

  color: #21103a !important;

  text-decoration: none;

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.about-page .tj-cta-section .tj-primary-btn:hover {
  color: #21103a !important;

  transform: translateY(-4px);

  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
}

.about-page .tj-cta-section .tj-primary-btn .btn-text,
.about-page .tj-cta-section .tj-primary-btn .btn-text span {
  color: #21103a !important;

  font-family: "Manrope", sans-serif;

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 0.13em;

  text-transform: uppercase;
}

.about-page .tj-cta-section .tj-primary-btn .btn-icon {
  width: 49px;
  height: 49px;

  flex-shrink: 0;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #330879 !important;

  color: #ffffff !important;

  font-size: 17px;

  transition:
    transform 0.4s ease,
    background 0.3s ease;
}

.about-page .tj-cta-section .tj-primary-btn .btn-icon i {
  color: #ffffff !important;
}

.about-page .tj-cta-section .tj-primary-btn:hover .btn-icon {
  transform: rotate(-45deg);

  background: #21103a !important;
}

/* footer overlap */

.about-page .tj-cta-section + .tj-footer-section {
  position: relative;

  z-index: 1;

  margin-top: -55px;

  padding-top: 110px;
}


/* =========================================================
   RESPONSIVE — 991
========================================================= */

@media (max-width: 991px) {
  .about-hero {
    min-height: auto;

    padding: 145px 0 100px;
  }

  .about-hero-title {
    font-size: clamp(50px, 8vw, 75px);

    letter-spacing: -3px;
  }

  .about-hero-bottom {
    align-items: flex-start;

    flex-direction: column;

    margin-top: 45px;
  }

  .about-intro {
    padding: 105px 0;
  }

  .about-intro-grid {
    grid-template-columns: 1fr;

    gap: 35px;
  }

  .about-section-label {
    padding-top: 0;
  }

  .about-section-label::before {
    top: -10px;
  }

  .why-itology-wrap {
    grid-template-columns: 1fr;

    gap: 70px;
  }

  .mission-vision-grid {
    grid-template-columns: 1fr;

    gap: 25px;
  }

  .mission-card,
  .vision-card {
    min-height: 480px;
  }

  .about-page .tj-cta-section .cta-area {
    padding: 50px 45px;
  }

  .about-page .tj-cta-section .cta-content {
    gap: 35px;
  }

  .about-page .tj-cta-section + .tj-footer-section {
    margin-top: -45px;

    padding-top: 95px;
  }
}

/* =========================================================
   RESPONSIVE — 767
========================================================= */

@media (max-width: 767px) {
  .about-hero {
    padding: 125px 0 75px;
  }

  .about-hero-title {
    font-size: clamp(42px, 11vw, 60px);

    line-height: 1;

    letter-spacing: -2px;
  }

  .about-hero-description {
    font-size: 15px;

    line-height: 1.8;
  }

  .about-primary-btn {
    min-height: 58px;

    padding-left: 23px;
  }

  .about-btn-icon,
  .about-btn-arrow {
    width: 48px;
    height: 48px;

    margin-left: 17px;
  }

  .about-intro,
  .about-approach-section,
  .why-itology-section,
  .mission-vision-section {
    padding: 90px 0;
  }

  .about-section-heading {
    margin-bottom: 45px;
  }

  .about-section-heading h2,
  .mission-vision-heading h2 {
    letter-spacing: -2px;
  }

  .approach-grid {
    grid-template-columns: 1fr;
  }

  .approach-card {
    min-height: 330px;
  }

  .why-itology-left h2 {
    letter-spacing: -2px;
  }

  .why-card {
    grid-template-columns: 50px 1fr;

    gap: 15px;
  }

  .mission-card,
  .vision-card {
    min-height: auto;

    padding: 30px;
  }

  .mv-content {
    padding-top: 40px;
  }

  .mv-content h3 {
    font-size: 31px;
  }

  .mv-icon {
    width: 62px;
    height: 62px;

    margin-bottom: 25px;
  }

  .about-statement {
    padding: 100px 0;
  }

  .statement-inner h2 {
    letter-spacing: -2px;
  }

  /* CTA */

  .about-page .tj-cta-section {
    padding: 60px 15px 0;
  }

  .about-page .tj-cta-section .cta-area {
    min-height: auto;

    padding: 42px 25px 38px;

    border-radius: 22px;
  }

  .about-page .tj-cta-section .cta-content {
    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 30px;
  }

  .about-page .tj-cta-section .cta-content .title {
    max-width: 100%;

    font-size: 40px;

    line-height: 0.98;

    letter-spacing: -2px;
  }

  .about-page .tj-cta-section .cta-btn {
    width: 100%;
  }

  .about-page .tj-cta-section .tj-primary-btn {
    width: 195px;

    min-height: 58px;
  }

  .about-page .tj-cta-section .tj-primary-btn .btn-icon {
    width: 46px;
    height: 46px;
  }

  .about-page .tj-cta-section + .tj-footer-section {
    margin-top: -30px;

    padding-top: 75px;
  }
}

/* =========================================================
   RESPONSIVE — 480
========================================================= */

@media (max-width: 480px) {
  .about-hero {
    padding: 115px 0 65px;
  }

  .about-eyebrow {
    font-size: 10px;

    letter-spacing: 1.5px;
  }

  .about-hero-title {
    font-size: 42px;

    letter-spacing: -1.5px;
  }

  .about-hero-description {
    font-size: 14px;
  }

  .about-primary-btn {
    min-height: 56px;

    padding-left: 20px;

    font-size: 13px;
  }

  .about-btn-icon,
  .about-btn-arrow {
    width: 46px;
    height: 46px;

    margin-left: 14px;
  }

  .about-intro,
  .about-approach-section,
  .why-itology-section,
  .mission-vision-section {
    padding: 75px 0;
  }

  .about-intro-content h2 {
    font-size: 39px;

    letter-spacing: -1.5px;
  }

  .about-intro-content p {
    font-size: 14px;
  }

  .approach-card {
    padding: 28px 25px;

    border-radius: 15px;
  }

  .why-card {
    grid-template-columns: 1fr;

    gap: 10px;
  }

  .why-card-number {
    margin-bottom: -3px;
  }

  .mission-card,
  .vision-card {
    padding: 25px;

    border-radius: 20px;
  }

  .mv-top {
    padding-bottom: 20px;
  }

  .mv-content {
    padding-top: 35px;
  }

  .mv-content h3 {
    font-size: 28px;

    letter-spacing: -1px;
  }

  .mv-content p {
    font-size: 14px;

    line-height: 1.8;
  }

  .mv-icon {
    width: 58px;
    height: 58px;

    border-radius: 16px;

    font-size: 23px;
  }

  .about-statement {
    padding: 80px 0;
  }

  .statement-inner h2 {
    font-size: 40px;

    letter-spacing: -2px;
  }

  .statement-inner p {
    font-size: 14px;
  }

  /* CTA */

  .about-page .tj-cta-section {
    padding: 45px 10px 0;
  }

  .about-page .tj-cta-section .cta-area {
    padding: 35px 22px;

    border-radius: 20px;
  }

  .about-page .tj-cta-section .cta-content .title {
    font-size: 34px;
  }
}

/* =========================================================
   RESPONSIVE — 380
========================================================= */

@media (max-width: 380px) {
  .about-hero-title {
    font-size: 38px;
  }

  .about-section-heading h2,
  .mission-vision-heading h2 {
    font-size: 36px;
  }

  .mission-card,
  .vision-card {
    padding: 22px;
  }

  .mv-content h3 {
    font-size: 26px;
  }

  .about-page .tj-cta-section .cta-content .title {
    font-size: 31px;
  }
}

/* =========================================================
   ACCESSIBILITY / REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {
  .about-page *,
  .about-page *::before,
  .about-page *::after {
    transition-duration: 0.01ms !important;

    animation-duration: 0.01ms !important;

    animation-iteration-count: 1 !important;
  }
}
/* contact page card reach out */
.row-gap-4 > [class*="col-"] {
  display: flex;
}

.row-gap-4 .contact-item.style-2 {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.row-gap-4 .contact-icon {
  flex-shrink: 0;
}

.row-gap-4 .contact-title {
  margin-top: 20px;
}

.row-gap-4 .contact-list,
.row-gap-4 .contact-item p {
  text-align: center;
  margin-bottom: 0;
}
/* career */
/* =========================================================
   ITOLOGY CAREER PAGE
   PURPLE THEME
========================================================= */

/* =========================================================
   HERO
========================================================= */
.it-career-hero {
  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(126, 55, 205, 0.18),
      transparent 35%
    ),
    #f7f3fb;
  min-height: 570px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

.it-career-hero-content {
  max-width: 850px;
  padding: 100px 0;
  position: relative;
  z-index: 2;
}

.it-career-kicker,
.it-career-small-title,
.it-career-section-heading > span,
.it-career-apply-info > span {
  display: inline-block;
  color: #21103a;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 18px;
}

.it-career-hero h1 {
  color: #21103a;
  font-size: clamp(48px, 6vw, 82px);
  line-height: 1.02;
  font-weight: 600;
  margin: 0 0 25px;
  max-width: 850px;
}

.it-career-hero h1 span {
  display: block;
  color: #330879;
}

.it-career-hero p {
  max-width: 680px;
  color: #5f526d;
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 35px;
}

.it-career-hero-buttons {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}

/* =========================================================
   HERO BUTTON
========================================================= */

.it-career-hero .tj-primary-btn {
  background: #330879;
  border-color: #330879;
}

.it-career-hero .tj-primary-btn .btn-text span {
  color: #fff;
}

.it-career-hero .tj-primary-btn .btn-icon {
  background: #fff;
  color: #330879;
}

.it-career-outline-btn {
  height: 58px;
  padding: 0 25px;
  border: 1px solid rgba(51, 8, 121, 0.25);
  border-radius: 100px;
  display: inline-flex;
  align-items: center;
  gap: 15px;
  color: #330879;
  font-size: 15px;
  font-weight: 600;
  transition: 0.3s ease;
}

.it-career-outline-btn:hover {
  background: #330879;
  border-color: #330879;
  color: #fff;
}

/* =========================================================
   ABOUT
========================================================= */

.it-career-about {
  background: #fff;
}

.it-career-about-content {
  max-width: 600px;
  padding-right: 50px;
}

.it-career-about-content h2 {
  font-family: "Manrope", sans-serif;
  color: #21103a;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -2px;
  margin: 0 0 25px;
}

.it-career-about-content h2 span {
  color: #330879;
}

.it-career-about-content p {
  color: #666;
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 18px;
}

.it-career-benefits {
  background: #f7f3fb;
  padding: 35px;
  border-radius: 20px;
}

.it-career-benefit {
  display: flex;
  gap: 20px;
  padding: 25px 0;
  border-bottom: 1px solid #e4dcef;
}

.it-career-benefit:first-child {
  padding-top: 0;
}

.it-career-benefit:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.it-career-benefit-icon {
  width: 52px;
  height: 52px;
  min-width: 52px;
  border-radius: 14px;
  background: #330879;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 21px;
}

.it-career-benefit h3 {
  color: #21103a;
  font-size: 20px;
  margin: 0 0 6px;
}

.it-career-benefit p {
  color: #777;
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

/* =========================================================
   JOB SECTION
========================================================= */

.it-career-jobs {
  background: #f7f3fb;
}

.it-career-section-heading {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 50px;
}

.it-career-section-heading h2 {
  color: #21103a;
  font-size: clamp(38px, 4vw, 58px);
  margin: 0 0 15px;
}

.it-career-section-heading h2 span {
  color: #330879;
}

.it-career-section-heading p {
  color: #777;
  margin: 0;
  line-height: 1.7;
}

.it-job-list {
  max-width: 1050px;
  margin: auto;
}

.it-job-card {
  background: #fff;
  border: 1px solid #e7def0;
  border-radius: 18px;
  padding: 28px 30px;
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  transition: 0.3s ease;
}

.it-job-card:hover {
  border-color: #330879;
  transform: translateY(-3px);
  box-shadow: 0 15px 40px rgba(51, 8, 121, 0.1);
}

.it-job-main {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.it-job-icon {
  width: 58px;
  height: 58px;
  min-width: 58px;
  border-radius: 15px;
  background: #efe7f8;
  color: #330879;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 23px;
}

.it-job-type {
  display: block;
  color: #330879;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  margin-bottom: 7px;
}

.it-job-card h3 {
  color: #21103a;
  font-size: 22px;
  margin: 0 0 8px;
}

.it-job-card p {
  color: #777;
  font-size: 14px;
  line-height: 1.6;
  max-width: 650px;
  margin: 0 0 13px;
}

.it-job-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.it-job-tags span {
  background: #f4eff8;
  color: #5c4774;
  border-radius: 30px;
  padding: 5px 11px;
  font-size: 11px;
}

.it-job-apply {
  min-width: 125px;
  height: 48px;
  padding: 0 18px;
  border-radius: 50px;
  background: #330879;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  font-size: 13px;
  font-weight: 600;
  transition: 0.3s ease;
}

.it-job-apply:hover {
  background: #21103a;
  color: #fff;
}

/* =========================================================
   PURPLE BANNER
========================================================= */

.it-career-banner {
  padding: 90px 0;
  background: #21103a;
}

.it-career-banner-inner {
  background: #330879;
  border-radius: 25px;
  padding: 55px 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  overflow: hidden;
  position: relative;
}

.it-career-banner-inner > div {
  position: relative;
  z-index: 2;
}

.it-career-banner-inner > div > span {
  color: #c9a8ff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
}

.it-career-banner h2 {
  color: #fff;
  font-size: 40px;
  margin: 10px 0 12px;
}

.it-career-banner p {
  color: rgba(255, 255, 255, 0.72);
  max-width: 650px;
  margin: 0;
  line-height: 1.7;
}

.it-career-white-btn {
  white-space: nowrap;
  height: 58px;
  padding: 0 25px;
  border-radius: 50px;
  background: #fff;
  color: #21103a;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-weight: 600;
  transition: 0.3s ease;
}

.it-career-white-btn:hover {
  background: #21103a;
  color: #fff;
}

/* =========================================================
   APPLICATION
========================================================= */

.it-career-apply {
  background: #fff;
}

.it-career-apply-wrapper {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  background: #f7f3fb;
  border-radius: 25px;
  overflow: hidden;
}

.it-career-apply-info {
  background: #21103a;
  padding: 60px 45px;
}

.it-career-apply-info > span {
  color: #c9a8ff;
}

.it-career-apply-info h2 {
  color: #fff;
  font-size: 42px;
  line-height: 1.15;
  margin: 0 0 22px;
}

.it-career-apply-info h2 strong {
  color: #c59cff;
  font-weight: inherit;
}

.it-career-apply-info > p {
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.8;
  margin-bottom: 30px;
}

.it-career-apply-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 14px;
  line-height: 1.5;
}

.it-career-apply-note i {
  width: 23px;
  height: 23px;
  min-width: 23px;
  background: #330879;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 10px;
}

/* =========================================================
   FORM
========================================================= */

.it-career-form {
  padding: 55px 50px;
}

.it-career-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.it-career-field {
  margin-bottom: 20px;
}

.it-career-field label {
  display: block;
  color: #21103a;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 8px;
}

.it-career-field input,
.it-career-field textarea,
.it-career-field select {
  width: 100%;
  border: 1px solid #ddd2e8;
  background: #fff;
  color: #21103a;
  border-radius: 10px;
  outline: none;
  font-size: 14px;
  transition: 0.25s ease;
}

.it-career-field input,
.it-career-field select {
  height: 53px;
  padding: 0 16px;
}

.it-career-field textarea {
  padding: 15px 16px;
  resize: vertical;
}

.it-career-field input:focus,
.it-career-field textarea:focus,
.it-career-field select:focus {
  border-color: #330879;
  box-shadow: 0 0 0 3px rgba(51, 8, 121, 0.08);
}

.it-career-field input::placeholder,
.it-career-field textarea::placeholder {
  color: #aaa;
}

.it-career-field input[type="file"] {
  padding: 8px;
  height: auto;
  cursor: pointer;
}

.it-career-field input[type="file"]::file-selector-button {
  border: 0;
  background: #330879;
  color: #fff;
  border-radius: 7px;
  padding: 8px 13px;
  margin-right: 10px;
  cursor: pointer;
}

.it-career-field small {
  display: block;
  color: #888;
  font-size: 11px;
  margin-top: 6px;
}

/* =========================================================
   SELECT
========================================================= */

.it-career-select {
  position: relative;
}

.it-career-select select {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  padding-right: 45px;
}

.it-career-select i {
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
  color: #330879;
  pointer-events: none;
  font-size: 13px;
}

/* =========================================================
   SUBMIT
========================================================= */

.it-career-submit {
  height: 56px;
  border: 0;
  border-radius: 50px;
  padding: 0 25px;
  background: #330879;
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: 15px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s ease;
}

.it-career-submit:hover {
  background: #21103a;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991px) {
  .it-career-hero {
    min-height: auto;
  }

  .it-career-hero-content {
    padding: 80px 0;
  }

  .it-career-about-content {
    padding-right: 0;
    margin-bottom: 40px;
  }

  .it-career-apply-wrapper {
    grid-template-columns: 1fr;
  }

  .it-career-banner-inner {
    padding: 45px 35px;
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 767px) {
  .it-career-hero h1 {
    font-size: 45px;
  }

  .it-career-hero p {
    font-size: 15px;
  }

  .it-career-benefits {
    padding: 25px;
  }

  .it-job-card {
    flex-direction: column;
    align-items: flex-start;
  }

  .it-job-apply {
    width: 100%;
  }

  .it-career-banner {
    padding: 60px 0;
  }

  .it-career-banner-inner {
    padding: 35px 25px;
  }

  .it-career-banner h2 {
    font-size: 32px;
  }

  .it-career-white-btn {
    width: 100%;
    justify-content: center;
  }

  .it-career-apply-info,
  .it-career-form {
    padding: 35px 25px;
  }

  .it-career-form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .it-career-apply-info h2 {
    font-size: 35px;
  }
}
/* SEO PAGE DESIGN */

/* =========================================================
   ITOLOGY SEO PAGE
   FULL CSS
   NO :root / NO CSS VARIABLES
========================================================= */

/* =========================================================
   COMMON
========================================================= */

.seo-hero,
.seo-about,
.seo-services,
.seo-process,
.seo-packages,
.seo-details,
.seo-global,
.seo-ecommerce,
.seo-why,
.seo-information,
.seo-faq,
.seo-final-cta {
  font-family: "DM Sans", sans-serif;
}

.seo-hero .container,
.seo-about .container,
.seo-services .container,
.seo-process .container,
.seo-packages .container,
.seo-details .container,
.seo-global .container,
.seo-ecommerce .container,
.seo-why .container,
.seo-information .container,
.seo-faq .container,
.seo-final-cta .container {
  width: min(1180px, calc(100% - 40px));
  margin: auto;
}

.seo-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;

  color: #21103a;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: 1.6px;
  text-transform: uppercase;

  margin-bottom: 18px;
}

.seo-eyebrow::before {
  content: "";

  width: 27px;
  height: 2px;

  background: currentColor;
}

.seo-section-heading {
  max-width: 760px;
  margin-bottom: 50px;
}

.seo-section-heading h2 {
  font-family: "Manrope", sans-serif;
  color: #21103a;
  font-size: clamp(35px, 4vw, 53px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -1.7px;
  margin-bottom: 17px;
}

.seo-section-heading h2 span {
  color: #330879;
}

.seo-section-heading p {
  color: var(--text-soft);

  font-size: 16px;
  line-height: 1.8;
}

/* =========================================================
   BUTTONS
========================================================= */

.seo-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 14px 23px;

  border-radius: 11px;

  font-weight: 700;

  transition: 0.25s;
}

.seo-btn-primary {
  background: #583890;
  color: #ffffff;

  box-shadow: 0 15px 35px rgba(88, 56, 144, 0.22);
}

.seo-btn-primary:hover {
  background: #2e0d83;

  color: #ffffff;

  transform: translateY(-3px);
}

.seo-btn-outline {
  background: #ffffff;

  color: #21103a;

  border: 1px solid #e3dceb;
}

.seo-btn-outline:hover {
  border-color: #583890;

  color: #583890;
}

/* =========================================================
   HERO
========================================================= */

.seo-hero {
  padding: 100px 0;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 82% 15%,
      rgba(93, 35, 150, 0.18),
      transparent 30%
    ),
    radial-gradient(circle at 8% 85%, rgba(46, 13, 131, 0.12), transparent 30%),
    #f7f4fb;
}

.seo-hero-grid {
  display: grid;

  grid-template-columns: 1.05fr 0.95fr;

  gap: 70px;

  align-items: center;
}

.seo-hero-content h1 {
  font-family: "Manrope", sans-serif;
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
  color: rgb(23, 19, 33);
  margin: 0 0 16px;
}

.seo-hero-content h1 span {
  color: #330879;
}

.seo-hero-content > p {
  max-width: 680px;

  font-size: 17px;

  color: #75658a;

  line-height: 1.7;

  margin-bottom: 30px;
}

.seo-hero-buttons {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;
}

.seo-hero-meta {
  display: flex;

  gap: 35px;

  margin-top: 45px;
}

.seo-hero-meta strong {
  display: block;

  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-size: 25px;
}

.seo-hero-meta span {
  font-size: 12px;

  color: #75658a;
}

/* =========================================================
   DASHBOARD
========================================================= */

.seo-dashboard {
  padding: 25px;

  transform: translateY(-10px);

  background: #ffffff;

  border: 1px solid rgba(88, 56, 144, 0.14);

  border-radius: 28px;

  box-shadow: 0 35px 80px rgba(33, 16, 58, 0.14);
}

.dashboard-top {
  display: flex;

  align-items: center;

  justify-content: space-between;
}

.dashboard-top small {
  color: #8b8298;

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 1px;
}

.dashboard-top h3 {
  color: #21103a;

  margin-top: 3px;
}

.dashboard-live {
  color: #25a36f;

  font-size: 11px;

  font-weight: 800;
}

.dashboard-score {
  padding: 24px;

  border-radius: 18px;

  color: #ffffff;

  margin: 20px 0;

  background: linear-gradient(135deg, #21103a 0%, #583890 55%, #5d2396 100%);
}

.dashboard-score span,
.dashboard-score small {
  display: block;

  opacity: 0.8;
}

.dashboard-score strong {
  display: block;

  font-family: "Manrope", sans-serif;

  font-size: 50px;

  line-height: 1.1;
}

.dashboard-chart {
  height: 170px;

  border-radius: 15px;

  background:
    linear-gradient(rgba(88, 56, 144, 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(88, 56, 144, 0.07) 1px, transparent 1px);

  background-size: 30px 30px;

  overflow: hidden;
}

.dashboard-chart svg {
  width: 100%;
  height: 100%;
}

.dashboard-chart path {
  stroke: #583890;
}

.dashboard-chart circle {
  fill: #583890;
}

.dashboard-metrics {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 10px;

  margin-top: 13px;
}

.dashboard-metrics div {
  background: #f7f4fb;

  padding: 15px;

  border-radius: 12px;
}

.dashboard-metrics strong,
.dashboard-metrics span {
  display: block;
}

.dashboard-metrics strong {
  color: #21103a;
}

.dashboard-metrics span {
  color: #75658a;

  font-size: 11px;
}

/* =========================================================
   ABOUT
========================================================= */

.seo-about {
  padding: 110px 0;

  background: #ffffff;
}

.seo-about-grid {
  display: grid;

  grid-template-columns: 0.85fr 1.15fr;

  gap: 80px;

  align-items: center;
}

.seo-about-visual {
  min-height: 470px;

  position: relative;

  overflow: hidden;

  border-radius: 28px;

  background:
    radial-gradient(circle at 20% 20%, #5d2396, transparent 28%),
    radial-gradient(circle at 90% 90%, #583890, transparent 40%),
    linear-gradient(145deg, #21103a, #2e0d83);
}

.seo-floating-card {
  position: absolute;

  padding: 25px;

  color: #ffffff;

  background: rgba(255, 255, 255, 0.08);

  border: 1px solid rgba(255, 255, 255, 0.14);

  border-radius: 18px;

  backdrop-filter: blur(15px);
}

.seo-floating-card span,
.seo-floating-card strong,
.seo-floating-card small {
  display: block;
}

.seo-floating-card strong {
  font-family: "Manrope", sans-serif;

  font-size: 28px;

  margin: 8px 0;
}

.seo-card-one {
  top: 45px;
  left: 30px;

  width: 75%;
}

.seo-card-two {
  bottom: 40px;
  right: 25px;

  width: 70%;
}

.seo-about-content h2 {
  font-family: "Manrope", sans-serif;
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
  color: rgb(23, 19, 33);
  margin: 0 0 16px;
}
.seo-about-content h2 span {
  color: #330879;
}

.seo-about-content p {
  margin-bottom: 17px;

  color: var(--text-soft);

  line-height: 1.8;
}

.seo-check-grid {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 13px;

  margin-top: 25px;
}

.seo-check-grid div {
  display: flex;

  align-items: center;

  gap: 9px;

  color: #21103a;

  font-weight: 600;

  font-size: 14px;
}

.seo-check-grid i {
  width: 22px;
  height: 22px;

  display: grid;

  place-items: center;

  border-radius: 50%;

  background: #eee8f7;

  color: #583890;

  font-style: normal;
}

/* =========================================================
   SERVICES
========================================================= */

.seo-services {
  padding: 110px 0;

  background: #f7f4fb;
}

.seo-service-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;
}

.seo-service-card {
  position: relative;

  padding: 30px;

  background: #ffffff;

  border: 1px solid #e3dceb;

  border-radius: 22px;

  transition: 0.3s;
}

.seo-service-card:hover {
  transform: translateY(-7px);

  border-color: rgba(88, 56, 144, 0.3);

  box-shadow: 0 25px 60px rgba(33, 16, 58, 0.08);
}

.service-number {
  color: #e3dceb;

  font-family: "Manrope", sans-serif;

  font-size: 34px;

  font-weight: 800;
}

.service-icon {
  width: 54px;
  height: 54px;

  display: grid;

  place-items: center;

  border-radius: 15px;

  background: #eee8f7;

  color: #583890;

  font-size: 22px;

  margin: 18px 0;
}

.seo-service-card h3 {
  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-size: 20px;

  margin-bottom: 10px;
}

.seo-service-card p {
  color: #75658a;

  font-size: 14px;

  line-height: 1.7;
}

/* =========================================================
   PROCESS
========================================================= */

.seo-process {
  padding: 110px 0;

  background:
    radial-gradient(circle at 90% 10%, rgba(93, 35, 150, 0.3), transparent 30%),
    radial-gradient(
      circle at 10% 90%,
      rgba(88, 56, 144, 0.18),
      transparent 30%
    ),
    #21103a;
}

.seo-heading-light h2 {
  color: #ffffff;
}

.seo-heading-light p {
  color: #b8a9c8;
}

.seo-heading-light .seo-eyebrow {
  color: #ae7df1;
}

.seo-process-grid {
  display: grid;

  grid-template-columns: repeat(6, 1fr);

  gap: 15px;
}

.seo-process-item {
  padding: 25px 18px;

  border-radius: 18px;

  background: rgba(255, 255, 255, 0.04);

  border: 1px solid rgba(255, 255, 255, 0.1);

  transition: 0.3s;
}

.seo-process-item:hover {
  background: rgba(88, 56, 144, 0.18);

  border-color: rgba(255, 255, 255, 0.18);

  transform: translateY(-5px);
}

.seo-process-item > span {
  color: #b58be0;

  font-weight: 800;
}

.seo-process-item h3 {
  color: #ffffff;

  font-family: "Manrope", sans-serif;

  font-size: 17px;

  margin: 13px 0 7px;
}

.seo-process-item p {
  color: #afa1be;

  font-size: 13px;

  line-height: 1.7;
}

/* =========================================================
   PACKAGES
========================================================= */

.seo-packages {
  padding: 110px 0;

  background: #ffffff;
}

.seo-pricing-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 22px;
}

.seo-price-card {
  position: relative;

  padding: 35px;

  border-radius: 25px;

  background: #ffffff;

  border: 1px solid #e3dceb;

  transition: 0.3s;
}

.seo-price-card:hover {
  transform: translateY(-5px);

  box-shadow: 0 25px 60px rgba(33, 16, 58, 0.09);
}

.seo-price-card.featured {
  border: 2px solid #583890;

  box-shadow: 0 30px 70px rgba(88, 56, 144, 0.14);

  transform: translateY(-10px);
}

.price-label {
  font-size: 11px;

  letter-spacing: 1px;

  color: #583890;

  font-weight: 800;
}

.seo-price-card h3 {
  font-family: "Manrope", sans-serif;

  color: #21103a;

  font-size: 25px;

  margin: 10px 0;
}

.seo-price {
  font-family: "Manrope", sans-serif;

  color: #21103a;

  font-size: 35px;

  font-weight: 800;
}

.seo-price small {
  font-family: "DM Sans", sans-serif;

  font-size: 12px;

  font-weight: 500;

  color: #75658a;
}

.seo-price-card > p {
  color: #75658a;

  font-size: 13px;

  margin: 10px 0 20px;
}

.seo-price-card ul {
  list-style: none;

  margin: 20px 0;

  padding: 0;
}

.seo-price-card li {
  padding: 9px 0;

  border-bottom: 1px solid #e3dceb;

  color: #4a3268;

  font-size: 13px;
}

.seo-price-card li::before {
  content: "✓";

  color: #583890;

  font-weight: 800;

  margin-right: 8px;
}

.seo-price-card > a {
  display: inline-block;

  color: #583890;

  font-weight: 800;

  margin-top: 10px;
}

.price-popular {
  position: absolute;

  right: 20px;
  top: 20px;

  padding: 5px 10px;

  border-radius: 50px;

  color: #583890;

  background: #eee8f7;

  font-size: 9px;

  font-weight: 800;
}

/* =========================================================
   DETAILS / ACCORDION
========================================================= */

.seo-details {
  padding: 110px 0;

  background: #f7f4fb;
}

.seo-accordion {
  max-width: 950px;
}

.seo-accordion-item {
  background: #ffffff;

  border: 1px solid #e3dceb;

  border-radius: 17px;

  margin-bottom: 12px;

  overflow: hidden;

  transition: 0.3s;
}

.seo-accordion-item.active {
  border-color: rgba(88, 56, 144, 0.3);

  box-shadow: 0 15px 40px rgba(33, 16, 58, 0.06);
}

.seo-accordion-title {
  width: 100%;

  display: flex;

  justify-content: space-between;

  align-items: center;

  border: 0;

  background: #ffffff;

  padding: 22px 25px;

  cursor: pointer;

  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-weight: 600;

  text-align: left;
}

.seo-accordion-title span {
  display: flex;

  align-items: center;

  gap: 15px;
}

.seo-accordion-title b {
  color: #583890;

  font-size: 12px;
}

.seo-accordion-title i {
  width: 30px;
  height: 30px;

  display: grid;

  place-items: center;

  border-radius: 50%;

  background: #eee8f7;

  color: #583890;

  font-style: normal;

  transition: 0.25s;
}

.seo-accordion-content {
  display: none;

  padding: 0 25px 25px;

  color: #75658a;
}

.seo-accordion-item.active .seo-accordion-content {
  display: block;
}

.seo-accordion-item.active .seo-accordion-title i {
  transform: rotate(45deg);
}

.seo-feature-grid {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 9px;
}

.seo-feature-grid span {
  padding: 11px 14px;

  border-radius: 9px;

  background: #f7f4fb;

  color: #4a3268;

  font-size: 13px;
}

/* =========================================================
   GLOBAL SEO
========================================================= */

.seo-global {
  padding: 110px 0;

  background: #eee8f7;
}

.seo-global-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;
}

.global-card {
  padding: 35px;

  background: #ffffff;

  border-radius: 22px;

  border: 1px solid #e3dceb;

  transition: 0.3s;
}

.global-card:hover {
  transform: translateY(-5px);

  box-shadow: 0 25px 55px rgba(33, 16, 58, 0.08);
}

.global-card.featured {
  background: linear-gradient(145deg, #21103a, #4a3268);

  color: #ffffff;

  border-color: transparent;
}

.global-card > span {
  color: #583890;

  font-weight: 800;
}

.global-card.featured > span {
  color: #c3a8e0;
}

.global-card h3 {
  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-size: 25px;

  margin: 20px 0 10px;
}

.global-card.featured h3 {
  color: #ffffff;
}

.global-card strong {
  font-family: "Manrope", sans-serif;

  font-size: 30px;

  color: #21103a;
}

.global-card.featured strong {
  color: #ffffff;
}

.global-card p {
  color: #75658a;

  margin: 10px 0 25px;

  line-height: 1.7;
}

.global-card.featured p {
  color: #c9bed5;
}

.global-card a {
  color: #583890;

  font-weight: 800;
}

/* =========================================================
   ECOMMERCE
========================================================= */

.seo-ecommerce {
  padding: 110px 0;

  background: #ffffff;
}

.seo-ecommerce-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 18px;
}

.ecommerce-card {
  padding: 30px;

  border: 1px solid #e3dceb;

  border-radius: 20px;

  background: #ffffff;

  transition: 0.3s;
}

.ecommerce-card:hover {
  transform: translateY(-5px);

  box-shadow: 0 25px 55px rgba(33, 16, 58, 0.08);
}

.ecommerce-card.featured {
  background: linear-gradient(145deg, #583890, #2e0d83);

  color: #ffffff;

  border-color: transparent;
}

.ecommerce-card > span {
  font-size: 11px;

  color: #583890;

  font-weight: 800;

  letter-spacing: 1px;
}

.ecommerce-card.featured > span {
  color: #d8c4eb;
}

.ecommerce-card h3 {
  font-family: "Manrope", sans-serif;

  font-size: 32px;

  color: #21103a;

  margin: 20px 0;
}

.ecommerce-card.featured h3 {
  color: #ffffff;
}

.ecommerce-card h3 small {
  font-family: "DM Sans", sans-serif;

  color: #75658a;

  font-size: 11px;
}

.ecommerce-card.featured h3 small {
  color: #d9cfe5;
}

.ecommerce-card p {
  color: #75658a;

  line-height: 1.7;
}

.ecommerce-card.featured p {
  color: #d9cfe5;
}

.ecommerce-card strong {
  display: block;

  margin: 20px 0;

  color: #21103a;
}

.ecommerce-card.featured strong {
  color: #ffffff;
}

.ecommerce-card a {
  color: #583890;

  font-weight: 800;
}

.ecommerce-card.featured a {
  color: #ffffff;
}

/* =========================================================
   WHY ITOLOGY
========================================================= */

.seo-why {
  padding: 110px 0;

  background:
    radial-gradient(
      circle at 80% 20%,
      rgba(93, 35, 150, 0.28),
      transparent 30%
    ),
    #21103a;
}

.seo-why-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 15px;
}

.seo-why-grid > div {
  padding: 30px;

  border: 1px solid rgba(255, 255, 255, 0.1);

  background: rgba(255, 255, 255, 0.035);

  border-radius: 18px;

  transition: 0.3s;
}

.seo-why-grid > div:hover {
  background: rgba(88, 56, 144, 0.18);

  transform: translateY(-5px);
}

.seo-why-grid strong {
  color: #b58be0;
}

.seo-why-grid h3 {
  color: #ffffff;

  font-family: "Manrope", sans-serif;

  margin: 14px 0 9px;
}

.seo-why-grid p {
  color: #afa1be;

  font-size: 13px;

  line-height: 1.7;
}

/* =========================================================
   INFORMATION
========================================================= */

.seo-information {
  padding: 110px 0;

  background: #ffffff;
}

.seo-information-inner {
  max-width: 900px !important;
}

.seo-information h2 {
  font-family: "Manrope", sans-serif;
  color: #21103a;
  font-size: clamp(35px, 4vw, 53px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -1.7px;
  margin-bottom: 17px;
}

.seo-information h2 span {
  color: #330879;
}

.seo-information p {
  color: var(--text-soft);

  margin-bottom: 18px;

  line-height: 1.8;
}

/* =========================================================
   FINAL CTA
========================================================= */

.seo-final-cta {
  padding: 90px 0;

  background:
    radial-gradient(
      circle at 85% 30%,
      rgba(93, 35, 150, 0.35),
      transparent 30%
    ),
    radial-gradient(circle at 10% 90%, rgba(81, 9, 131, 0.3), transparent 30%),
    linear-gradient(120deg, #21103a, #2e0d83, #583890);
}

.seo-final-cta-inner {
  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 40px;
}

.seo-final-cta .seo-eyebrow {
  color: #d2bce7;
}

.seo-final-cta h2 {
  color: #ffffff;

  font-family: "Manrope", sans-serif;

  font-size: clamp(35px, 4vw, 55px);

  line-height: 1.1;

  margin-bottom: 15px;
}

.seo-final-cta p {
  max-width: 650px;

  color: #d0c4dc;

  line-height: 1.8;
}

.seo-btn-white {
  background: #ffffff;

  color: #583890;

  white-space: nowrap;

  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.seo-btn-white:hover {
  background: #eee8f7;

  color: #21103a;

  transform: translateY(-3px);
}

/* =========================================================
   EXTRA BRAND EFFECTS
========================================================= */

.seo-service-card::after,
.seo-price-card::after,
.global-card::after,
.ecommerce-card::after {
  content: "";

  position: absolute;

  left: 25px;
  right: 25px;
  bottom: 0;

  height: 2px;

  background: linear-gradient(90deg, transparent, #583890, transparent);

  opacity: 0;

  transition: 0.3s;
}

.seo-service-card:hover::after,
.seo-price-card:hover::after,
.global-card:hover::after,
.ecommerce-card:hover::after {
  opacity: 1;
}

/* =========================================================
   SELECTION
========================================================= */

.seo-hero ::selection,
.seo-about ::selection,
.seo-services ::selection,
.seo-process ::selection,
.seo-packages ::selection,
.seo-details ::selection,
.seo-global ::selection,
.seo-ecommerce ::selection,
.seo-why ::selection,
.seo-information ::selection,
.seo-faq ::selection,
.seo-final-cta ::selection {
  background: #583890;

  color: #ffffff;
}

/* =========================================================
   RESPONSIVE - 1050px
========================================================= */

@media (max-width: 1050px) {
  .seo-hero-grid,
  .seo-about-grid {
    grid-template-columns: 1fr;
  }

  .seo-hero-grid {
    gap: 50px;
  }

  .seo-about-grid {
    gap: 50px;
  }

  .seo-process-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .seo-service-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .seo-pricing-grid {
    grid-template-columns: 1fr;

    max-width: 650px;
  }

  .seo-price-card.featured {
    transform: none;
  }

  .seo-global-grid {
    grid-template-columns: 1fr;
  }

  .seo-ecommerce-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .seo-why-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* =========================================================
   RESPONSIVE - 700px
========================================================= */

@media (max-width: 700px) {
  .seo-hero,
  .seo-about,
  .seo-services,
  .seo-process,
  .seo-packages,
  .seo-details,
  .seo-global,
  .seo-ecommerce,
  .seo-why,
  .seo-information,
  .seo-faq {
    padding: 75px 0;
  }

  .seo-final-cta {
    padding: 70px 0;
  }

  .seo-hero .container,
  .seo-about .container,
  .seo-services .container,
  .seo-process .container,
  .seo-packages .container,
  .seo-details .container,
  .seo-global .container,
  .seo-ecommerce .container,
  .seo-why .container,
  .seo-information .container,
  .seo-faq .container,
  .seo-final-cta .container {
    width: calc(100% - 28px);
  }

  .seo-hero-content h1 {
    font-size: 43px;

    letter-spacing: -2px;
  }

  .seo-hero-content > p {
    font-size: 15px;
  }

  .seo-hero-meta {
    gap: 18px;

    flex-wrap: wrap;
  }

  .seo-about-visual {
    min-height: 360px;
  }

  .seo-check-grid,
  .seo-service-grid,
  .seo-process-grid,
  .seo-ecommerce-grid,
  .seo-why-grid {
    grid-template-columns: 1fr;
  }

  .seo-process-grid {
    gap: 10px;
  }

  .seo-pricing-grid {
    width: 100%;
  }

  .seo-price-card {
    padding: 28px;
  }

  .seo-feature-layout {
    grid-template-columns: 1fr;

    gap: 25px;
  }

  .seo-feature-nav {
    position: static;

    display: grid;

    grid-template-columns: 1fr 1fr;
  }

  .seo-feature-list,
  .seo-feature-grid {
    grid-template-columns: 1fr;
  }

  .seo-feature-content > div {
    padding: 25px;
  }

  .seo-final-cta-inner {
    flex-direction: column;

    align-items: flex-start;
  }

  .dashboard-metrics {
    grid-template-columns: 1fr;
  }

  .seo-section-heading {
    margin-bottom: 35px;
  }

  .seo-section-heading h2 {
    font-size: 37px;

    letter-spacing: -1px;
  }
}

/* =========================================================
   RESPONSIVE - 480px
========================================================= */

@media (max-width: 480px) {
  .seo-hero-content h1 {
    font-size: 37px;
  }

  .seo-hero-buttons {
    flex-direction: column;

    align-items: stretch;
  }

  .seo-btn {
    width: 100%;
  }

 

  .dashboard-score {
    padding: 20px;
  }

  .dashboard-score strong {
    font-size: 42px;
  }

  .seo-about-visual {
    min-height: 330px;
  }

  .seo-card-one {
    left: 15px;

    width: calc(100% - 30px);
  }

  .seo-card-two {
    right: 15px;

    width: calc(100% - 30px);

    bottom: 20px;
  }

  .seo-feature-nav {
    grid-template-columns: 1fr;
  }

  .seo-final-cta h2 {
    font-size: 37px;
  }
}
/* social media page */
/* =========================================================
   SOCIAL MEDIA MARKETING / SMO
   NO ROOT VARIABLES
========================================================= */

/* =========================================================
   COMMON
========================================================= */

.smo-hero,
.smo-about,
.smo-services,
.smo-process,
.smo-platforms,
.smo-details,
.smo-why,
.smo-faq,
.smo-final-cta {
  font-family: "DM Sans", sans-serif;
  box-sizing: border-box;
}

.smo-hero *,
.smo-about *,
.smo-services *,
.smo-process *,
.smo-platforms *,
.smo-details *,
.smo-why *,
.smo-faq *,
.smo-final-cta * {
  box-sizing: border-box;
}

.smo-hero .container,
.smo-about .container,
.smo-services .container,
.smo-process .container,
.smo-platforms .container,
.smo-details .container,
.smo-why .container,
.smo-faq .container,
.smo-final-cta .container {
  width: min(1180px, calc(100% - 40px));
  margin: auto;
}

/* =========================================================
   COLORS

   Primary Purple      #583890
   Dark Purple         #202368
   Dark Blue           #1F2972
   Light Purple        #510983
   Purple              #5D2396
   Deep Purple         #2E0D83
   Dark Theme          #21103A
   Dark Theme 2        #2B1450
   Dark Theme 3        #4A3268
   Dark Theme 4        #75658A
   Dark Theme 5        #8B8298
   Light BG             #F7F4FB
   Light BG 2           #EEE8F7
========================================================= */

/* =========================================================
   EYEBROW
========================================================= */

.smo-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;

  color: #21103a;

  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.6px;
  text-transform: uppercase;

  margin-bottom: 18px;
}

.smo-eyebrow::before {
  content: "";

  width: 28px;
  height: 2px;

  background: currentColor;
}

/* =========================================================
   SECTION HEADING
========================================================= */

.smo-section-heading {
  max-width: 760px;
  margin-bottom: 50px;
}

.smo-section-heading h2 {
  margin: 0 0 17px;
  color: #171321;
  font-size: clamp(38px, 4.5vw, 55px);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -1.5px;
}

.smo-section-heading h2 span {
  color: #330879;
}

.smo-section-heading p {
  margin: 0;

  color: #75658a;

  font-size: 16px;
  line-height: 1.8;
}

/* =========================================================
   BUTTONS
========================================================= */

.smo-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 52px;

  padding: 14px 23px;

  border-radius: 11px;

  font-size: 14px;
  font-weight: 700;

  text-decoration: none;

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    color 0.25s ease,
    border-color 0.25s ease,
    box-shadow 0.25s ease;
}

.smo-btn-primary {
  color: #fff;

  background: linear-gradient(135deg, #583890, #2e0d83);

  box-shadow: 0 15px 35px rgba(46, 13, 131, 0.22);
}

.smo-btn-primary:hover {
  color: #fff;

  transform: translateY(-3px);

  background: linear-gradient(135deg, #5d2396, #202368);

  box-shadow: 0 20px 45px rgba(46, 13, 131, 0.3);
}

.smo-btn-outline {
  color: #21103a;

  background: #fff;

  border: 1px solid #ddd5e8;
}

.smo-btn-outline:hover {
  color: #583890;

  border-color: #583890;

  transform: translateY(-3px);
}

.smo-btn-white {
  color: #21103a;

  background: #fff;

  white-space: nowrap;

  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.smo-btn-white:hover {
  color: #583890;

  transform: translateY(-3px);
}

/* =========================================================
   HERO
========================================================= */

.smo-hero {
  position: relative;

  padding: 105px 0;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 82% 18%,
      rgba(88, 56, 144, 0.18),
      transparent 30%
    ),
    radial-gradient(circle at 5% 85%, rgba(46, 13, 131, 0.1), transparent 32%),
    #f7f4fb;
}

.smo-hero::after {
  content: "";

  position: absolute;

  width: 420px;
  height: 420px;

  right: -190px;
  bottom: -220px;

  border-radius: 50%;

  border: 1px solid rgba(88, 56, 144, 0.12);

  pointer-events: none;
}

.smo-hero-grid {
  display: grid;

  grid-template-columns: 1.05fr 0.95fr;

  gap: 70px;

  align-items: center;
}

.smo-hero-content h1 {
  margin: 0 0 25px;

  font-family: "Manrope", sans-serif;

  color: #21103a;

  font-size: clamp(44px, 5vw, 72px);

  line-height: 1.04;

  letter-spacing: -3px;
}

.smo-hero-content h1 span {
  color: #330879;
}

.smo-hero-content > p {
  max-width: 670px;

  margin: 0 0 30px;

  color: var(--text-soft);

  font-size: 17px;

  line-height: 1.8;
}

.smo-hero-buttons {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;
}

.smo-hero-meta {
  display: flex;

  gap: 38px;

  margin-top: 45px;
}

.smo-hero-meta strong {
  display: block;

  margin-bottom: 4px;

  font-family: "Manrope", sans-serif;

  color: #21103a;

  font-size: 25px;
}

.smo-hero-meta span {
  display: block;

  color: var(--text-soft);

  font-size: 13px;
}

/* =========================================================
   SOCIAL DASHBOARD
========================================================= */

.smo-dashboard {
  position: relative;

  padding: 25px;

  background: rgba(255, 255, 255, 0.94);

  border: 1px solid rgba(88, 56, 144, 0.12);

  border-radius: 28px;

  box-shadow: 0 35px 80px rgba(33, 16, 58, 0.13);

  backdrop-filter: blur(10px);
}

.smo-dashboard-top {
  display: flex;

  align-items: center;

  justify-content: space-between;
}

.smo-dashboard-top small {
  display: block;

  color: #8b8298;

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 1px;
}

.smo-dashboard-image {
  width: 100%;
  height: 360px;
  overflow: hidden;
  border-radius: 20px;
}

.smo-dashboard-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.5s ease;
}

.smo-dashboard-image::after {
  content: "";

  position: absolute;
  inset: 0;

  background: linear-gradient(
    180deg,
    rgba(33, 16, 58, 0) 40%,
    rgba(33, 16, 58, 0.25)
  );

  pointer-events: none;
}

.smo-dashboard:hover .smo-dashboard-image img {
  transform: scale(1.04);
}
.smo-dashboard-top h3 {
  margin: 4px 0 0;

  font-family: "Manrope", sans-serif;

  color: #21103a;

  font-size: 18px;
}

.smo-dashboard-live {
  color: #583890;

  font-size: 11px;

  font-weight: 800;
}

/* Score */

.smo-dashboard-score {
  margin: 20px 0;

  padding: 24px;

  border-radius: 18px;

  color: #fff;

  background: linear-gradient(135deg, #21103a, #583890, #5d2396);

  box-shadow: 0 18px 35px rgba(33, 16, 58, 0.2);
}

.smo-dashboard-score span,
.smo-dashboard-score small {
  display: block;

  opacity: 0.78;
}

.smo-dashboard-score strong {
  display: block;

  margin: 5px 0;

  font-family: "Manrope", sans-serif;

  font-size: 50px;

  line-height: 1.1;
}

/* Chart */

.smo-dashboard-chart {
  height: 170px;

  overflow: hidden;

  border-radius: 15px;

  background:
    linear-gradient(rgba(88, 56, 144, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(88, 56, 144, 0.06) 1px, transparent 1px);

  background-size: 30px 30px;
}

.smo-dashboard-chart svg {
  width: 100%;
  height: 100%;
}

/* Metrics */

.smo-dashboard-metrics {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 10px;

  margin-top: 13px;
}

.smo-dashboard-metrics div {
  padding: 15px;

  border-radius: 12px;

  background: #f7f4fb;
}

.smo-dashboard-metrics strong {
  display: block;

  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-size: 18px;
}

.smo-dashboard-metrics span {
  display: block;

  margin-top: 3px;

  color: #8b8298;

  font-size: 11px;
}

/* =========================================================
   ABOUT
========================================================= */

.smo-about {
  padding: 110px 0;

  background: #fff;
}

.smo-about-grid {
  display: grid;

  grid-template-columns: 0.85fr 1.15fr;

  gap: 80px;

  align-items: center;
}

/* Visual */

.smo-about-visual {
  position: relative;

  min-height: 470px;

  overflow: hidden;

  border-radius: 28px;

  background:
    radial-gradient(circle at 20% 20%, #5d2396, transparent 28%),
    radial-gradient(circle at 85% 75%, #583890, transparent 30%),
    linear-gradient(145deg, #21103a, #2e0d83);
}

.smo-about-visual::before {
  content: "";

  position: absolute;

  width: 300px;
  height: 300px;

  top: 50%;
  left: 50%;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  border: 1px solid rgba(255, 255, 255, 0.15);

  box-shadow:
    0 0 0 45px rgba(255, 255, 255, 0.025),
    0 0 0 90px rgba(255, 255, 255, 0.018);
}

/* Floating cards */

.smo-floating-card {
  position: absolute;

  z-index: 3;

  padding: 23px;

  color: #fff;

  background: rgba(255, 255, 255, 0.09);

  border: 1px solid rgba(255, 255, 255, 0.15);

  border-radius: 18px;

  backdrop-filter: blur(14px);

  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.smo-floating-card span,
.smo-floating-card strong,
.smo-floating-card small {
  display: block;
}

.smo-floating-card span {
  color: #d9cff0;

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 1px;
}

.smo-floating-card strong {
  margin: 8px 0;

  font-family: "Manrope", sans-serif;

  font-size: 30px;
}

.smo-floating-card small {
  color: #c4b8d9;

  font-size: 11px;
}

.smo-card-one {
  top: 45px;
  left: 30px;

  width: 75%;
}

.smo-card-two {
  right: 25px;
  bottom: 40px;

  width: 70%;
}

/* Social orbit */

.smo-social-orbit {
  position: absolute;

  top: 50%;
  left: 50%;

  z-index: 2;

  width: 190px;
  height: 190px;

  transform: translate(-50%, -50%);

  border: 1px dashed rgba(255, 255, 255, 0.25);

  border-radius: 50%;
}

.smo-social-orbit::after {
  content: "SOCIAL";

  position: absolute;

  top: 50%;
  left: 50%;

  display: grid;
  place-items: center;

  width: 75px;
  height: 75px;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  color: #fff;

  background: linear-gradient(135deg, #583890, #5d2396);

  font-family: "Manrope", sans-serif;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: 1px;

  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
}

.smo-social-orbit span {
  position: absolute;

  display: grid;
  place-items: center;

  width: 43px;
  height: 43px;

  border-radius: 50%;

  color: #fff;

  background: rgba(255, 255, 255, 0.13);

  border: 1px solid rgba(255, 255, 255, 0.16);

  font-size: 14px;

  font-weight: 800;
}

.smo-social-orbit span:nth-child(1) {
  top: -20px;
  left: 74px;
}

.smo-social-orbit span:nth-child(2) {
  top: 74px;
  right: -20px;
}

.smo-social-orbit span:nth-child(3) {
  bottom: -20px;
  left: 74px;
}

.smo-social-orbit span:nth-child(4) {
  top: 74px;
  left: -20px;
}

/* About content */
.smo-about-content h2 {
  margin: 0 0 17px;
  color: #171321;
  font-size: clamp(38px, 4.5vw, 55px);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -1.5px;
}
.smo-about-content h2 span {
  color: #330879;
}
.smo-about-content p {
  margin: 0 0 17px;

  color: var(--text-soft);

  line-height: 1.8;
}

/* Checks */

.smo-check-grid {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 13px;

  margin-top: 25px;
}

.smo-check-grid div {
  display: flex;

  align-items: center;

  gap: 9px;

  color: #21103a;

  font-size: 14px;

  font-weight: 600;
}

.smo-check-grid i {
  display: grid;

  place-items: center;

  width: 22px;
  height: 22px;

  flex: 0 0 22px;

  border-radius: 50%;

  color: #583890;

  background: #eee8f7;

  font-style: normal;
}

/* =========================================================
   SERVICES
========================================================= */

.smo-services {
  padding: 110px 0;

  background: #f7f4fb;
}

.smo-service-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;
}

.smo-service-card {
  position: relative;

  padding: 30px;

  overflow: hidden;

  background: #fff;

  border: 1px solid #e3ddec;

  border-radius: 20px;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.smo-service-card::after {
  content: "";

  position: absolute;

  width: 100px;
  height: 100px;

  right: -50px;
  bottom: -50px;

  border-radius: 50%;

  background: rgba(88, 56, 144, 0.05);

  transition: 0.3s;
}

.smo-service-card:hover {
  transform: translateY(-7px);

  border-color: rgba(88, 56, 144, 0.3);

  box-shadow: 0 25px 60px rgba(33, 16, 58, 0.09);
}

.smo-service-card:hover::after {
  transform: scale(2);
}

.smo-service-number {
  display: block;

  color: #ddd5e8;

  font-family: "Manrope", sans-serif;

  font-size: 34px;

  font-weight: 800;
}

.smo-service-icon {
  display: grid;

  place-items: center;

  width: 54px;
  height: 54px;

  margin: 18px 0;

  border-radius: 15px;

  color: #583890;

  background: linear-gradient(135deg, #f0eaf8, #e7ddf3);

  font-size: 20px;

  font-weight: 800;
}

.smo-service-card h3 {
  margin: 0 0 10px;

  font-family: "Manrope", sans-serif;

  color: #21103a;

  font-size: 20px;
  font-weight: 20px;
}

.smo-service-card p {
  margin: 0 0 17px;

  color: #75658a;

  font-size: 14px;

  line-height: 1.7;
}

.smo-service-card a {
  position: relative;
  z-index: 2;

  color: #583890;

  font-size: 13px;

  font-weight: 800;

  text-decoration: none;
}

/* =========================================================
   PROCESS
========================================================= */

.smo-process {
  padding: 110px 0;

  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(93, 35, 150, 0.25),
      transparent 30%
    ),
    #21103a;
}

.smo-heading-light h2 {
  color: #fff;
}

.smo-heading-light p {
  color: #b7abc7;
}

.smo-heading-light .smo-eyebrow {
  color: #c6a8e9;
}

.smo-process-grid {
  display: grid;

  grid-template-columns: repeat(6, 1fr);

  gap: 15px;
}

.smo-process-item {
  min-height: 190px;

  padding: 25px 18px;

  border-radius: 18px;

  background: rgba(255, 255, 255, 0.045);

  border: 1px solid rgba(255, 255, 255, 0.1);

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    border-color 0.25s ease;
}

.smo-process-item:hover {
  transform: translateY(-5px);

  background: rgba(255, 255, 255, 0.07);

  border-color: rgba(198, 168, 233, 0.3);
}

.smo-process-item > span {
  color: #c6a8e9;

  font-family: "Manrope", sans-serif;

  font-size: 14px;

  font-weight: 800;
}

.smo-process-item h3 {
  margin: 13px 0 7px;

  color: #fff;

  font-family: "Manrope", sans-serif;

  font-size: 17px;
}

.smo-process-item p {
  margin: 0;

  color: #9f91b2;

  font-size: 13px;

  line-height: 1.65;
}

/* =========================================================
   PLATFORMS
========================================================= */

.smo-platforms {
  padding: 110px 0;

  background: #fff;
}

.smo-platform-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 18px;
}

.smo-platform-card {
  padding: 30px;

  border: 1px solid #e3ddec;

  border-radius: 20px;

  background: #fff;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.smo-platform-card:hover {
  transform: translateY(-6px);

  border-color: #583890;

  box-shadow: 0 25px 55px rgba(33, 16, 58, 0.08);
}

.smo-platform-icon {
  display: grid;

  place-items: center;

  width: 58px;
  height: 58px;

  margin-bottom: 22px;

  border-radius: 17px;

  color: #fff;

  background: linear-gradient(135deg, #583890, #2e0d83);

  font-size: 18px;

  font-weight: 800;
}

.smo-platform-card h3 {
  margin: 0 0 10px;

  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-size: 22px;
}

.smo-platform-card p {
  min-height: 65px;

  margin: 0 0 20px;

  color: #75658a;

  font-size: 13px;

  line-height: 1.7;
}

.smo-platform-card strong {
  display: inline-block;

  padding: 7px 11px;

  border-radius: 50px;

  color: #583890;

  background: #eee8f7;

  font-size: 10px;

  letter-spacing: 0.5px;

  text-transform: uppercase;
}

/* =========================================================
   DETAILS
========================================================= */

.smo-details {
  padding: 110px 0;

  background: #f7f4fb;
}

.smo-feature-layout {
  display: grid;

  grid-template-columns: 250px 1fr;

  gap: 45px;
}

.smo-feature-nav {
  position: sticky;

  top: 100px;

  height: fit-content;
}

.smo-feature-nav a {
  display: block;

  padding: 13px 15px;

  border-left: 2px solid #ded6e8;

  color: #75658a;

  font-size: 13px;

  text-decoration: none;

  transition: 0.25s;
}

.smo-feature-nav a:hover {
  color: #583890;

  border-color: #583890;

  background: rgba(88, 56, 144, 0.04);
}

.smo-feature-content > div {
  padding: 35px;

  margin-bottom: 18px;

  background: #fff;

  border: 1px solid #e3ddec;

  border-radius: 20px;
}

.smo-feature-content > div > span {
  color: #583890;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: 1px;
}

.smo-feature-content h3 {
  margin: 12px 0 15px;

  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-size: 27px;

  line-height: 1.2;
}

.smo-feature-content p {
  margin: 0 0 22px;

  color: #75658a;

  font-size: 14px;

  line-height: 1.8;
}

.smo-feature-list {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 9px;
}

.smo-feature-list span {
  padding: 11px 13px;

  border-radius: 8px;

  color: #594c68;

  background: #f7f4fb;

  font-size: 13px;
}

/* =========================================================
   WHY ITOLOGY
========================================================= */

.smo-why {
  padding: 110px 0;

  background:
    radial-gradient(circle at 10% 20%, rgba(93, 35, 150, 0.2), transparent 28%),
    #21103a;
}

.smo-why-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 15px;
}

.smo-why-grid > div {
  padding: 30px;

  border: 1px solid rgba(255, 255, 255, 0.1);

  background: rgba(255, 255, 255, 0.035);

  border-radius: 18px;

  transition: 0.3s;
}

.smo-why-grid > div:hover {
  transform: translateY(-5px);

  border-color: rgba(198, 168, 233, 0.3);

  background: rgba(255, 255, 255, 0.06);
}

.smo-why-grid strong {
  color: #c6a8e9;

  font-family: "Manrope", sans-serif;

  font-size: 14px;
}

.smo-why-grid h3 {
  margin: 14px 0 9px;

  color: #fff;

  font-family: "Manrope", sans-serif;

  font-size: 19px;
}

.smo-why-grid p {
  margin: 0;

  color: #9f91b2;

  font-size: 13px;

  line-height: 1.7;
}

/* =========================================================
   FAQ
========================================================= */

.smo-faq {
  padding: 110px 0;

  background: #f7f4fb;
}

.smo-faq-list {
  max-width: 850px;
}

.smo-faq-item {
  border-bottom: 1px solid #ded6e8;
}

.smo-faq-item button {
  width: 100%;

  display: flex;

  justify-content: space-between;

  align-items: center;

  gap: 20px;

  padding: 22px 0;

  border: 0;

  background: transparent;

  color: #21103a;

  font-family: "Manrope", sans-serif;

  font-size: 15px;

  font-weight: 700;

  text-align: left;

  cursor: pointer;
}

.smo-faq-item button span {
  display: grid;

  place-items: center;

  width: 30px;
  height: 30px;

  flex: 0 0 30px;

  border-radius: 50%;

  color: #583890;

  background: #eee8f7;

  font-size: 20px;

  line-height: 1;

  transition: transform 0.25s ease;
}

.smo-faq-item > div {
  display: none;

  padding: 0 45px 20px 0;

  color: #75658a;

  font-size: 14px;

  line-height: 1.8;
}

.smo-faq-item.active > div {
  display: block;
}

.smo-faq-item.active button span {
  transform: rotate(45deg);
}

/* =========================================================
   FINAL CTA
========================================================= */

.smo-final-cta {
  padding: 90px 0;

  background:
    radial-gradient(
      circle at 85% 30%,
      rgba(93, 35, 150, 0.35),
      transparent 30%
    ),
    linear-gradient(120deg, #21103a, #2e0d83, #583890);
}

.smo-final-cta-inner {
  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 40px;
}

.smo-final-cta .smo-eyebrow {
  color: #d7c7ec;
}

.smo-final-cta h2 {
  max-width: 760px;

  margin: 0 0 15px;

  color: #fff;

  font-family: "Manrope", sans-serif;

  font-size: clamp(35px, 4vw, 55px);

  line-height: 1.1;

  letter-spacing: -1.5px;
}

.smo-final-cta p {
  max-width: 650px;

  margin: 0;

  color: #d3c8df;

  line-height: 1.8;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {
  .smo-hero-grid,
  .smo-about-grid {
    grid-template-columns: 1fr;
  }

  .smo-hero-grid {
    gap: 55px;
  }

  .smo-about-grid {
    gap: 50px;
  }

  .smo-process-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .smo-platform-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .smo-why-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .smo-service-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 800px) {
  .smo-hero,
  .smo-about,
  .smo-services,
  .smo-process,
  .smo-platforms,
  .smo-details,
  .smo-why,
  .smo-faq {
    padding: 80px 0;
  }

  .smo-hero .container,
  .smo-about .container,
  .smo-services .container,
  .smo-process .container,
  .smo-platforms .container,
  .smo-details .container,
  .smo-why .container,
  .smo-faq .container,
  .smo-final-cta .container {
    width: calc(100% - 32px);
  }

  .smo-feature-layout {
    grid-template-columns: 1fr;

    gap: 30px;
  }

  .smo-feature-nav {
    position: static;

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 5px;
  }

  .smo-feature-nav a {
    border-left: 0;

    border-bottom: 2px solid #ded6e8;
  }

  .smo-final-cta-inner {
    align-items: flex-start;

    flex-direction: column;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {
  .smo-hero,
  .smo-about,
  .smo-services,
  .smo-process,
  .smo-platforms,
  .smo-details,
  .smo-why,
  .smo-faq {
    padding: 70px 0;
  }

  .smo-hero .container,
  .smo-about .container,
  .smo-services .container,
  .smo-process .container,
  .smo-platforms .container,
  .smo-details .container,
  .smo-why .container,
  .smo-faq .container,
  .smo-final-cta .container {
    width: calc(100% - 28px);
  }

  /* Hero */

  .smo-hero-content h1 {
    font-size: 43px;

    letter-spacing: -2px;
  }

  .smo-hero-content > p {
    font-size: 15px;
  }

  .smo-hero-buttons {
    width: 100%;

    flex-direction: column;
  }

  .smo-btn {
    width: 100%;
  }

  .smo-hero-meta {
    gap: 18px;

    flex-wrap: wrap;
  }

  .smo-hero-meta div {
    min-width: 90px;
  }

  /* Dashboard */

  .smo-dashboard {
    padding: 18px;

    border-radius: 20px;
  }

  .smo-dashboard-score {
    padding: 20px;
  }

  .smo-dashboard-score strong {
    font-size: 42px;
  }

  .smo-dashboard-metrics {
    grid-template-columns: 1fr;
  }

  /* About */

  .smo-about-visual {
    min-height: 390px;

    border-radius: 22px;
  }

  .smo-card-one {
    top: 25px;
    left: 20px;

    width: calc(100% - 40px);
  }

  .smo-card-two {
    right: 20px;
    bottom: 25px;

    width: calc(100% - 40px);
  }

  .smo-social-orbit {
    transform: translate(-50%, -50%) scale(0.78);
  }

  .smo-check-grid {
    grid-template-columns: 1fr;
  }

  /* Services */

  .smo-service-grid {
    grid-template-columns: 1fr;
  }

  .smo-service-card {
    padding: 25px;
  }

  /* Process */

  .smo-process-grid {
    grid-template-columns: 1fr;
  }

  .smo-process-item {
    min-height: auto;
  }

  /* Platforms */

  .smo-platform-grid {
    grid-template-columns: 1fr;
  }

  .smo-platform-card p {
    min-height: auto;
  }

  /* Details */

  .smo-feature-nav {
    grid-template-columns: 1fr;
  }

  .smo-feature-content > div {
    padding: 25px;
  }

  .smo-feature-content h3 {
    font-size: 23px;
  }

  .smo-feature-list {
    grid-template-columns: 1fr;
  }

  /* Why */

  .smo-why-grid {
    grid-template-columns: 1fr;
  }

  /* FAQ */

  .smo-faq-item button {
    padding: 19px 0;

    font-size: 14px;
  }

  .smo-faq-item > div {
    padding-right: 25px;
  }

  /* CTA */

  .smo-final-cta {
    padding: 70px 0;
  }

  .smo-final-cta h2 {
    font-size: 38px;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .smo-hero-content h1 {
    font-size: 37px;
  }

  .smo-section-heading h2 {
    font-size: 34px;
  }

  .smo-about-content h2 {
    font-size: 34px;
  }

  .smo-final-cta h2 {
    font-size: 34px;
  }
}
/* drop down */
/* ========================================================
   COMPACT SERVICE DROPDOWN
======================================================== */

.mainmenu ul > li > .mega-menu-service,
.mobile_menu ul > li > .mega-menu-service {
  width: 320px;
  margin-inline-start: -15px;
  padding: 8px 0;
}

/* ========================================================
   SERVICE ITEM
======================================================== */

.mainmenu ul > li > .mega-menu-service-single,
.mobile_menu ul > li > .mega-menu-service-single {
  gap: 9px;
}

/* ========================================================
   SERVICE LINK
======================================================== */

.mainmenu ul > li > .mega-menu-service li a,
.mobile_menu ul > li > .mega-menu-service li a {
  padding: 10px 20px;

  min-height: 58px;

  font-size: 14px;
  line-height: 1.3;
}

/* ========================================================
   ICON — SMALLER
======================================================== */

.mainmenu ul > li > .mega-menu-service-single .mega-menu-service-icon,
.mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-icon {
  width: 40px;
  height: 40px;

  font-size: 27px;
}

/* ========================================================
   TITLE
======================================================== */

.mainmenu ul > li > .mega-menu-service-single .mega-menu-service-title,
.mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-title {
  max-width: 170px;

  line-height: 1.3;
}

/* ========================================================
   ARROW
======================================================== */

.mainmenu ul > li > .mega-menu-service-single .mega-menu-service-nav,
.mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-nav {
  min-width: 35px;

  font-size: 1.3em;

  inset-inline-end: -8px;
}

/* ========================================================
   HOVER
======================================================== */

.mainmenu ul > li > .mega-menu-service li:hover a,
.mobile_menu ul > li > .mega-menu-service li:hover a {
  padding-inline-start: 20px;
}

/* ========================================================
   MOBILE
======================================================== */

@media only screen and (max-width: 991px) {
  .mainmenu ul > li > .mega-menu-service,
  .mobile_menu ul > li > .mega-menu-service {
    width: 100%;
    margin-inline-start: 0;
    padding: 5px 0;
  }

  .mainmenu ul > li > .mega-menu-service li a,
  .mobile_menu ul > li > .mega-menu-service li a {
    padding: 10px 18px;
    min-height: 54px;
  }

  .mainmenu ul > li > .mega-menu-service-single .mega-menu-service-icon,
  .mobile_menu ul > li > .mega-menu-service-single .mega-menu-service-icon {
    width: 38px;
    height: 38px;
    font-size: 25px;
  }
}
/* CRM PAGE */
/* =========================================================
   ITOLOGY CRM PAGE
========================================================= */

.it-crm-hero {
  padding: 80px 0 70px;
  background:
    radial-gradient(
      circle at 80% 20%,
      rgba(91, 76, 255, 0.12),
      transparent 35%
    ),
    #f7f8fc;
  overflow: hidden;
}

.it-crm-label {
  display: inline-block;
  margin-bottom: 18px;
  color: #21103a;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
}

.it-crm-title {
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1.05;
  margin-bottom: 25px;
  font-weight: 600;
  color: #21103a;
}

.it-crm-title span,
.it-crm-intro h2 span,
.it-crm-section-heading h2 span,
.it-crm-why h2 span,
.it-crm-cta-box h2 span {
  color: #330879;
}

.it-crm-description {
  max-width: 600px;
  font-size: 18px;
  line-height: 1.8;
  color: #667085;
}

.it-crm-buttons {
  display: flex;
  align-items: center;
  gap: 25px;
  margin-top: 35px;
}
.it-crm-secondary-btn {
  color: #111827;
  font-weight: 600;
}

.it-crm-secondary-btn i {
  margin-left: 8px;
}

.it-crm-visual {
  padding-left: 30px;
}

.it-crm-dashboard {
  background: #111827;
  border-radius: 24px;
  padding: 28px;
  color: #fff;
  box-shadow: 0 30px 80px rgba(17, 24, 39, 0.22);
}

.it-crm-dashboard-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 25px;
}

.it-crm-dashboard-top strong {
  display: block;
  font-size: 19px;
}

.it-crm-dashboard-top small {
  color: #98a2b3;
}

.it-crm-online {
  color: #5ee7a0;
  font-size: 13px;
}

.it-crm-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.it-crm-stat {
  background: #1d2636;
  border-radius: 14px;
  padding: 18px;
}

.it-crm-stat small {
  display: block;
  color: #98a2b3;
  margin-bottom: 8px;
}

.it-crm-stat strong {
  display: block;
  font-size: 22px;
}

.it-crm-stat span {
  color: #5ee7a0;
  font-size: 12px;
}

.it-crm-pipeline {
  margin-top: 18px;
  padding: 22px;
  background: #1d2636;
  border-radius: 14px;
}

.it-crm-pipeline-title {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.it-crm-pipeline-title span {
  color: #98a2b3;
  font-size: 13px;
}

.it-crm-progress {
  height: 8px;
  border-radius: 20px;
  background: #303b4f;
  overflow: hidden;
}

.it-crm-progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #635bff, #8b7cff);
  border-radius: inherit;
}

.it-crm-pipeline-values {
  display: flex;
  justify-content: space-between;
  margin-top: 12px;
  color: #98a2b3;
  font-size: 12px;
}

.it-crm-followup {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-top: 18px;
  padding: 17px;
  background: #635bff;
  border-radius: 14px;
}

.it-crm-followup-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
}

.it-crm-followup strong,
.it-crm-followup small {
  display: block;
}

.it-crm-followup small {
  margin-top: 4px;
  opacity: 0.8;
}

.it-crm-intro {
  padding: 60px 0;
}

.it-crm-intro h2,
.it-crm-section-heading h2,
.it-crm-why h2,
.it-crm-cta-box h2 {
  font-family: "Manrope", sans-serif;
  font-size: clamp(36px, 4vw, 54px);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1px;
  color: #21103a;
  margin: 0 0 20px;
}
.it-crm-intro p {
  font-size: 17px;
  line-height: 1.8;
  color: #6b6475;
}

.it-crm-features {
  padding: 110px 0;
  background: #f7f8fc;
}

.it-crm-section-heading {
  max-width: 700px;
  margin-bottom: 55px;
}

.it-crm-feature {
  height: 100%;
  padding: 32px;
  background: #fff;
  border: 1px solid #e9eaf0;
  border-radius: 18px;
  transition: 0.3s ease;
}

.it-crm-feature:hover {
  transform: translateY(-7px);
  box-shadow: 0 20px 50px rgba(17, 24, 39, 0.08);
}

.it-crm-feature h3 {
  font-size: 21px;
  margin-bottom: 12px;
}

.it-crm-feature p {
  margin: 0;
  color: #667085;
  line-height: 1.7;
}

.it-crm-why {
  padding: 110px 0;
}

.it-crm-why p {
  max-width: 560px;
  color: #667085;
  line-height: 1.8;
}

.it-crm-benefits {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}

.it-crm-benefits div {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 18px;
  background: #f7f8fc;
  border-radius: 12px;
}

.it-crm-benefits i {
  color: #330879;
}

.it-crm-cta {
  padding: 0 0 110px;
}

.it-crm-cta-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  padding: 60px;
  border-radius: 25px;
  background: linear-gradient(135deg, #635bff, #4038b8);
  color: #fff;
}

.it-crm-cta-box .it-crm-label {
  color: rgba(255, 255, 255, 0.75);
}

.it-crm-cta-box h2 {
  color: #fff;
  margin-bottom: 15px;
}

.it-crm-cta-box h2 span {
  color: #fff;
}

.it-crm-cta-box p {
  max-width: 650px;
  margin: 0;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.7;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991px) {
  .it-crm-hero {
    padding: 100px 0 80px;
  }

  .it-crm-visual {
    padding-left: 0;
    margin-top: 60px;
  }

  .it-crm-intro,
  .it-crm-features,
  .it-crm-why {
    padding: 80px 0;
  }

  .it-crm-cta {
    padding-bottom: 80px;
  }

  .it-crm-cta-box {
    flex-direction: column;
    align-items: flex-start;
    padding: 45px 30px;
  }
}

@media (max-width: 575px) {
  .it-crm-title {
    font-size: 42px;
  }

  .it-crm-buttons {
    flex-direction: column;
    align-items: flex-start;
  }

  .it-crm-dashboard {
    padding: 18px;
  }

  .it-crm-stats {
    grid-template-columns: 1fr;
  }

  .it-crm-benefits {
    grid-template-columns: 1fr;
  }

  .it-crm-intro h2,
  .it-crm-section-heading h2,
  .it-crm-why h2,
  .it-crm-cta-box h2 {
    font-size: 35px;
  }
}
/* web development page */
:root {
  --dm-purple: #6c3bff;
  --dm-purple-dark: #5425d6;
  --dm-purple-light: #f2edff;
  --dm-purple-soft: #faf8ff;

  --dm-dark: #171329;
  --dm-text: #6d6879;
  --dm-white: #ffffff;

  --dm-border: #e9e3f7;
  --dm-container: 1240px;
}

/* =========================================================
   BASE
========================================================= */

.dm-page {
  width: 100%;
  overflow: hidden;
  font-family: "DM Sans", Arial, sans-serif;
  color: var(--dm-dark);
  background: #fff;
}

.dm-page *,
.dm-page *::before,
.dm-page *::after {
  box-sizing: border-box;
}

.dm-page h1,
.dm-page h2,
.dm-page h3,
.dm-page h4 {
  font-family: "Poppins", Arial, sans-serif;
}

.dm-page a {
  text-decoration: none;
}

.dm-container {
  width: 90%;
  max-width: var(--dm-container);
  margin: 0 auto;
}

/* =========================================================
   HERO
========================================================= */

.dm-hero {
  position: relative;
  padding: 130px 0 100px;
  background:
    radial-gradient(
      circle at 90% 10%,
      rgba(108, 59, 255, 0.18),
      transparent 28%
    ),
    linear-gradient(135deg, #fff 0%, #f8f5ff 100%);
}

.dm-hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 70px;
}

.dm-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  padding: 8px 16px;

  border-radius: 50px;
  background: var(--dm-purple-light);

  color: #21103a;

  font-size: 13px;
  font-weight: 700;

  margin-bottom: 20px;
}

.dm-badge i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--dm-purple);
}

.dm-hero h1 {
  max-width: 600px;
  font-family: "Manrope", sans-serif;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -2px;
  color: #21103a;
  margin: 0 0 24px;
}

.dm-hero h1 span {
  color: #330879;
}

.dm-section-heading h2 span,
.dm-about-content h2 span,
.dm-results-heading h2 span,
.dm-cta h2 span {
  color: var(--dm-purple);
}

.dm-hero-content > p {
  max-width: 640px;

  color: var(--dm-text);
  font-size: 17px;
  line-height: 1.8;

  margin-bottom: 30px;
}

/* BUTTONS */

.dm-hero-buttons {
  display: flex;
  align-items: center;
  gap: 13px;
  flex-wrap: wrap;
}

.dm-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;

  padding: 14px 25px;

  border-radius: 8px;

  font-size: 14px;
  font-weight: 700;

  transition: all 0.3s ease;
}

.dm-btn-primary {
  color: #fff;
  background: #330879;
  border: 1px solid #330879;
}

.dm-btn-primary:hover {
  color: #fff;
  background: var(--dm-purple-dark);
  transform: translateY(-2px);
}

.dm-btn-outline {
  color: #21103a;
  background: #fff;
  border: 1px solid #d9d0ff;
}

.dm-btn-outline:hover {
  color: var(--dm-purple);
  background: var(--dm-purple-light);
}

.dm-btn span {
  font-size: 17px;
  transition: transform 0.3s;
}

.dm-btn:hover span {
  transform: translateX(4px);
}

/* HERO TRUST */

.dm-hero-trust {
  display: flex;
  align-items: center;
  gap: 35px;
  margin-top: 42px;
}

.dm-hero-trust div {
  display: flex;
  flex-direction: column;
}

.dm-hero-trust strong {
  font-family: "Poppins", sans-serif;
  font-size: 24px;
  color: var(--dm-dark);
}

.dm-hero-trust span {
  color: var(--dm-text);
  font-size: 11px;
}

/* HERO VISUAL */

/* =========================================================
   HERO IMAGE
========================================================= */

.dm-hero-visual {
  position: relative;
  min-height: 560px;

  display: flex;
  align-items: center;
  justify-content: center;
}

/* Soft Purple Glow */

.dm-image-glow {
  position: absolute;

  width: 470px;
  height: 470px;

  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(108, 59, 255, 0.2) 0%,
    rgba(108, 59, 255, 0.08) 42%,
    rgba(108, 59, 255, 0) 72%
  );
}

/* Image Container */

.dm-hero-image-wrap {
  position: relative;
  z-index: 2;

  width: 100%;
  max-width: 570px;

  display: flex;
  align-items: center;
  justify-content: center;
}

/* Main Image */

.dm-hero-image {
  width: 100%;
  height: auto;

  display: block;

  object-fit: contain;

  filter: drop-shadow(0 30px 45px rgba(75, 43, 160, 0.16));

  animation: dmHeroFloat 5s ease-in-out infinite;
}

/* Image Animation */

@keyframes dmHeroFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

/* =========================================================
   FLOATING IMAGE CARDS
========================================================= */

.dm-image-card {
  position: absolute;
  z-index: 5;

  display: flex;
  align-items: center;
  gap: 11px;

  padding: 13px 17px;

  background: rgba(255, 255, 255, 0.96);

  border: 1px solid #e7e0f7;

  border-radius: 13px;

  box-shadow: 0 18px 45px rgba(58, 39, 111, 0.13);

  backdrop-filter: blur(10px);
}

/* SEO Card */

.dm-image-card-one {
  left: 0;
  bottom: 100px;

  animation: dmCardFloatOne 4s ease-in-out infinite;
}

/* Website Card */

.dm-image-card-two {
  right: 0;
  top: 105px;

  animation: dmCardFloatTwo 4.5s ease-in-out infinite;
}

/* Marketing Card */

.dm-image-card-three {
  right: 25px;
  bottom: 45px;

  animation: dmCardFloatThree 5s ease-in-out infinite;
}

/* Floating Animations */

@keyframes dmCardFloatOne {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

@keyframes dmCardFloatTwo {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(9px);
  }
}

@keyframes dmCardFloatThree {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-7px);
  }
}

/* =========================================================
   CARD ICONS
========================================================= */

.dm-card-icon {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 10px;

  color: #6c3bff;
  background: #f0ebff;

  font-size: 10px;
  font-weight: 800;
}

.dm-mini-icon {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 50%;

  color: #fff;
  background: #6c3bff;

  font-size: 15px;
  font-weight: 700;
}

.dm-marketing-dot {
  width: 10px;
  height: 10px;

  flex-shrink: 0;

  border-radius: 50%;

  background: #6c3bff;

  box-shadow: 0 0 0 6px #f0ebff;
}

/* =========================================================
   CARD TEXT
========================================================= */

.dm-image-card strong {
  display: block;

  color: #171329;

  font-family: "Poppins", sans-serif;

  font-size: 16px;
  line-height: 1.2;
}

.dm-section-heading {
  max-width: 750px;
  margin: 0 auto 55px;
  text-align: center;
}
.dm-image-card span:not(.dm-marketing-dot) {
  display: block;

  color: #777181;

  font-size: 10px;

  margin-top: 3px;
}

/* =========================================================
   SERVICES
========================================================= */

.dm-services {
  padding: 105px 0;
  background: #fff;
}

.dm-section-heading {
  max-width: 750px;
  margin-bottom: 55px;
}

.dm-about-content h2 {
  font-family: "Manrope", sans-serif;
  font-size: clamp(32px, 4vw, 47px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -1px;
  color: #21103a;
  margin: 0 0 20px;
}

.dm-about-content h2 span {
  color: #330879;
}
.dm-about-content h2 {
  font-family: "Manrope", sans-serif;
  margin: 0 0 30px;
  color: #21103a;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -3px;
}
.dm-about-content span {
  color: #21103a;
}
.dm-section-heading h2 {
  font-family: "Manrope", sans-serif;
  margin: 0 0 30px;
  color: #21103a;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -3px;
}
.dm-section-heading h2 span {
  color: #330879;
}

.dm-section-heading p {
  color: var(--dm-text);
  font-size: 15px;
  line-height: 1.8;
}

.dm-services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.dm-service-icon {
  position: relative;
  z-index: 2;

  width: 55px;
  height: 55px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 24px;

  color: var(--dm-purple);
  background: var(--dm-purple-light);

  border-radius: 14px;

  font-size: 13px;
  font-weight: 800;
}
/* =========================================================
   SERVICES - ALL CARDS SAME COLOR
========================================================= */

.dm-service-card {
  position: relative;

  padding: 32px 28px;

  background: #f5f1ff;
  border: 1px solid #e2d9ff;
  border-radius: 17px;

  overflow: hidden;

  transition: all 0.35s ease;
}

.dm-service-card::before {
  content: "";

  position: absolute;

  width: 130px;
  height: 130px;

  top: -70px;
  right: -65px;

  border-radius: 50%;

  background: #e9e1ff;

  transition: 0.35s;
}

.dm-service-card:hover {
  transform: translateY(-7px);

  background: #eee8ff;

  border-color: #cbbeff;

  box-shadow: 0 20px 50px rgba(70, 46, 135, 0.1);
}

.dm-service-card:hover::before {
  transform: scale(1.45);
}

/* Remove special purple card */

.dm-service-featured {
  background: #f5f1ff;
  border-color: #e2d9ff;
}

.dm-service-featured:hover {
  background: #eee8ff;
}

/* Number */

.dm-service-number {
  position: absolute;
  top: 23px;
  right: 24px;

  color: #9a8bbe;

  font-size: 11px;
  font-weight: 700;
}

/* Icon */

.dm-service-icon {
  position: relative;
  z-index: 2;

  width: 55px;
  height: 55px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 24px;

  color: #6c3bff;
  background: #e9e1ff;

  border-radius: 14px;

  font-size: 13px;
  font-weight: 800;
}

/* Heading */

.dm-service-card h3 {
  position: relative;
  z-index: 2;

  color: #171329;

  font-size: 19px;
  margin-bottom: 11px;
}

.dm-section-label {
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #21103a;
}

/* Description */

.dm-service-card p {
  position: relative;
  z-index: 2;

  color: #6d6879;

  font-size: 13px;
  line-height: 1.8;

  margin-bottom: 22px;
}

/* Link */

.dm-service-card a {
  position: relative;
  z-index: 2;

  color: #6c3bff;

  font-size: 12px;
  font-weight: 700;
}
.dm-service-card h3 {
  position: relative;
  z-index: 2;

  font-size: 19px;
  margin-bottom: 11px;
  font-weight: 20px;
}

.dm-service-card p {
  position: relative;
  z-index: 2;

  color: var(--dm-text);

  font-size: 13px;
  line-height: 1.8;

  margin-bottom: 22px;
}

.dm-service-card a {
  position: relative;
  z-index: 2;

  color: var(--dm-purple);

  font-size: 12px;
  font-weight: 700;
}

.dm-service-card a span {
  margin-left: 4px;
  transition: 0.3s;
}

.dm-service-card:hover a span {
  margin-left: 8px;
}
.dm-about-visual {
  position: relative;

  min-height: 500px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.dm-about-image-bg {
  position: absolute;

  width: 420px;
  height: 420px;

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(108, 59, 255, 0.18),
    rgba(108, 59, 255, 0.04) 65%,
    transparent 72%
  );
}

.dm-about-image-wrap {
  position: relative;
  z-index: 2;

  width: 100%;
  max-width: 500px;
}

.dm-about-image {
  width: 100%;
  height: auto;

  display: block;

  object-fit: contain;

  filter: drop-shadow(0 25px 45px rgba(75, 43, 160, 0.14));
}

/* =========================================================
   ABOUT
========================================================= */

.dm-about {
  padding: 105px 0;
  background: var(--dm-purple-soft);
}

.dm-about-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  align-items: center;
  gap: 85px;
}

.dm-about-visual {
  position: relative;
  min-height: 480px;
}

.dm-about-shape {
  position: absolute;

  width: 400px;
  height: 400px;

  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  background: radial-gradient(
    circle,
    rgba(108, 59, 255, 0.16),
    rgba(108, 59, 255, 0.03) 70%
  );
}

.dm-about-main-card {
  position: absolute;

  width: 320px;

  top: 55px;
  left: 50%;

  transform: translateX(-50%);

  padding: 25px;

  background: #fff;

  border: 1px solid var(--dm-border);
  border-radius: 20px;

  box-shadow: 0 25px 60px rgba(57, 39, 115, 0.13);
}

.dm-about-top {
  display: flex;
  justify-content: space-between;
}

.dm-about-top span {
  color: var(--dm-text);
  font-size: 12px;
}

.dm-about-top strong {
  color: var(--dm-purple);
  font-size: 12px;
}

.dm-about-ring {
  width: 165px;
  height: 165px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin: 25px auto;

  border-radius: 50%;

  background: conic-gradient(var(--dm-purple) 0 87%, #ede8fa 87% 100%);
}

.dm-about-ring::before {
  content: "";

  position: absolute;

  width: 125px;
  height: 125px;

  border-radius: 50%;

  background: #fff;
}

.dm-about-ring > div {
  position: relative;
  z-index: 2;

  text-align: center;
}

.dm-about-ring strong {
  display: block;

  font-family: "Poppins", sans-serif;

  font-size: 30px;
}

.dm-about-ring span {
  color: var(--dm-text);
  font-size: 11px;
}

.dm-about-bars > div {
  margin-bottom: 14px;
}

.dm-about-bars span {
  display: block;
  margin-bottom: 6px;

  color: var(--dm-text);
  font-size: 10px;
}

.dm-about-bars i {
  display: block;

  height: 7px;

  background: var(--dm-purple);
  border-radius: 10px;
}

.dm-about-content > p {
  color: var(--dm-text);
  font-size: 15px;
  line-height: 1.8;

  margin-bottom: 15px;
}

.dm-check-list {
  margin: 25px 0;
}

.dm-check-list div {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.dm-check-list span {
  width: 23px;
  height: 23px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 50%;

  color: var(--dm-purple);
  background: var(--dm-purple-light);

  font-size: 11px;
  font-weight: 800;
}

.dm-check-list p {
  margin: 0;

  font-size: 13px;
  font-weight: 600;
}

/* =========================================================
   PROCESS
========================================================= */

.dm-process {
  padding: 105px 0;
}

.dm-process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.dm-process-card {
  padding: 28px 23px;

  border-top: 2px solid #e7e1f3;
}

.dm-process-number {
  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 22px;

  border-radius: 50%;

  background: var(--dm-purple);
  color: #fff;

  font-size: 12px;
  font-weight: 700;
}

.dm-process-card h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

.dm-process-card p {
  color: var(--dm-text);
  font-size: 13px;
  line-height: 1.8;
}

/* =========================================================
   RESULTS
========================================================= */

.dm-results {
  padding: 100px 0;

  background: var(--dm-dark);
  color: #fff;
}

.dm-results-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

.dm-results-heading h2 {
  color: #fff;

  font-size: clamp(32px, 4vw, 47px);
  line-height: 1.2;

  margin-bottom: 18px;
}

.dm-results-heading h2 span {
  color: #a487ff;
}

.dm-results-heading p {
  color: #b8b2c6;
  font-size: 15px;
  line-height: 1.8;
}

.dm-result-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;

  background: rgba(255, 255, 255, 0.1);
}

.dm-result-stats div {
  padding: 32px 25px;
  background: var(--dm-dark);
}

.dm-result-stats strong {
  display: block;

  color: #fff;

  font-family: "Poppins", sans-serif;
  font-size: 34px;

  margin-bottom: 6px;
}

.dm-result-stats span {
  color: #a8a2b3;
  font-size: 11px;
}

/* =========================================================
   PORTFOLIO
========================================================= */

.dm-portfolio {
  padding: 105px 0;
}

.dm-heading-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 30px;

  max-width: none;
}

.dm-outline-link {
  white-space: nowrap;

  padding: 11px 18px;

  border: 1px solid var(--dm-border);
  border-radius: 7px;

  color: var(--dm-purple);

  font-size: 12px;
  font-weight: 700;
}

.dm-portfolio-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 20px;
}

.dm-project {
  position: relative;

  min-height: 340px;

  padding: 30px;

  border-radius: 18px;

  overflow: hidden;

  background: var(--dm-purple-light);
  border: 1px solid var(--dm-border);
}

.dm-project-large {
  min-height: 470px;
  background: linear-gradient(145deg, #eee8ff, #f8f5ff);
}

.dm-project:nth-child(2) {
  background: #f5f2fa;
}

.dm-project:nth-child(3) {
  background: #f1ecff;
}

.dm-project-info {
  position: relative;
  z-index: 2;

  max-width: 380px;
}

.dm-project-info > span {
  display: inline-block;

  padding: 6px 11px;

  border-radius: 20px;

  color: var(--dm-purple);
  background: rgba(255, 255, 255, 0.8);

  font-size: 10px;
  font-weight: 700;

  margin-bottom: 16px;
}

.dm-project-info h3 {
  font-size: 25px;
  line-height: 1.3;

  margin-bottom: 10px;
}

.dm-project-info p {
  max-width: 340px;

  color: var(--dm-text);

  font-size: 13px;
  line-height: 1.8;
}

.dm-project-screen {
  position: absolute;

  width: 65%;
  height: 220px;

  bottom: -55px;
  right: -35px;

  border-radius: 14px 14px 0 0;

  background: #fff;

  box-shadow: 0 20px 50px rgba(48, 32, 97, 0.13);
}

.dm-project-screen div {
  position: absolute;

  top: 18px;
  left: 18px;
  right: 18px;

  height: 13px;

  border-radius: 20px;

  background: var(--dm-purple-light);
}

.dm-project-screen span {
  position: absolute;

  left: 18px;

  width: 75%;
  height: 8px;

  border-radius: 20px;

  background: #eeeaf7;
}

.dm-project-screen span:nth-of-type(1) {
  top: 65px;
}

.dm-project-screen span:nth-of-type(2) {
  top: 90px;
}

.dm-project-screen span:nth-of-type(3) {
  top: 115px;
}

.dm-screen-small {
  width: 75%;
  height: 190px;
}

/* =========================================================
   TESTIMONIAL
========================================================= */

.dm-testimonial {
  padding: 90px 0;
  background: var(--dm-purple-soft);
}

.dm-testimonial-box {
  max-width: 850px;

  margin: auto;

  padding: 50px 40px;

  text-align: center;

  background: #fff;

  border: 1px solid var(--dm-border);
  border-radius: 20px;

  box-shadow: 0 20px 60px rgba(59, 41, 116, 0.06);
}

.dm-quote {
  color: var(--dm-purple);

  font-family: Georgia, serif;

  font-size: 55px;

  line-height: 1;
}

.dm-testimonial-box p {
  color: #514c5f;

  font-size: 17px;
  line-height: 1.8;

  margin: 10px auto 25px;

  max-width: 710px;
}

.dm-client strong {
  display: block;

  font-size: 14px;
}

.dm-client span {
  color: var(--dm-text);
  font-size: 11px;
}

/* =========================================================
   FAQ
========================================================= */

.dm-faq {
  padding: 60px 0;
}

.dm-faq-list {
  max-width: 1200px;
}

.dm-faq-list details {
  border-bottom: 1px solid var(--dm-border);
}

.dm-faq-list summary {
  cursor: pointer;
  list-style: none;

  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 21px 0;

  font-family: "Poppins", sans-serif;
  font-size: 15px;
  font-weight: 600;
}

.dm-faq-list summary::-webkit-details-marker {
  display: none;
}

.dm-faq-list summary::after {
  content: "+";

  color: #330879;

  font-size: 23px;
  font-weight: 400;
}

.dm-faq-list details[open] summary::after {
  content: "−";
}

.dm-faq-list p {
  max-width: 750px;

  color: var(--dm-text);

  font-size: 13px;
  line-height: 1.8;

  padding: 0 0 20px;
}

/* =========================================================
   CTA
========================================================= */

.dm-cta {
  padding: 95px 0;

  background: linear-gradient(135deg, #6c3bff, #7c56ef);
}

.dm-cta-box {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 50px;
}

.dm-cta .dm-section-label {
  color: #dcd1ff;
}

.dm-cta h2 {
  max-width: 700px;

  color: #fff;

  font-size: clamp(34px, 5vw, 55px);
  line-height: 1.15;

  margin-bottom: 15px;
}

.dm-cta h2 span {
  color: #fff;
}

.dm-cta p {
  max-width: 650px;

  color: rgba(255, 255, 255, 0.8);

  font-size: 15px;
  line-height: 1.8;
}

.dm-cta-action {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.dm-btn-white {
  background: #fff;
  color: var(--dm-purple);
  border: 1px solid #fff;

  white-space: nowrap;
}

.dm-btn-white:hover {
  color: var(--dm-purple);
  background: #f7f4ff;

  transform: translateY(-2px);
}

.dm-cta-action small {
  color: rgba(255, 255, 255, 0.7);
  font-size: 10px;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {
  .dm-hero-grid {
    gap: 40px;
  }

  .dm-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .dm-about-grid {
    gap: 50px;
  }
}

@media (max-width: 900px) {
  .dm-hero-grid,
  .dm-about-grid,
  .dm-results-content {
    grid-template-columns: 1fr;
  }

  .dm-hero {
    padding-top: 110px;
  }

  .dm-hero-visual {
    min-height: 500px;
  }

  .dm-main-card {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }

  .dm-floating-one {
    left: 0;
  }

  .dm-floating-two {
    right: 0;
  }

  .dm-about-visual {
    min-height: 450px;
  }

  .dm-process-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .dm-portfolio-grid {
    grid-template-columns: 1fr;
  }

  .dm-cta-box {
    grid-template-columns: 1fr;
  }

  .dm-cta-action {
    align-items: flex-start;
  }
}

@media (max-width: 600px) {
  .dm-container {
    width: 92%;
  }

  .dm-hero {
    padding: 95px 0 70px;
  }

  .dm-hero h1 {
    font-size: 40px;
    letter-spacing: -1px;
  }

  .dm-hero-content > p {
    font-size: 14px;
  }

  .dm-hero-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .dm-hero-buttons .dm-btn {
    width: 100%;
  }

  .dm-hero-trust {
    gap: 18px;
    flex-wrap: wrap;
  }

  .dm-hero-trust strong {
    font-size: 19px;
  }

  .dm-hero-visual {
    min-height: 420px;
  }

  .dm-main-card {
    width: 100%;
    padding: 17px;
  }

  .dm-chart {
    height: 170px;
  }

  .dm-stat {
    padding: 10px 7px;
  }

  .dm-stat strong {
    font-size: 15px;
  }

  .dm-floating-one {
    left: 0;
    bottom: 35px;
  }

  .dm-floating-two {
    right: 0;
    bottom: 0;
  }

  .dm-services,
  .dm-about,
  .dm-process,
  .dm-results,
  .dm-portfolio,
  .dm-faq {
    padding: 75px 0;
  }

  .dm-services-grid {
    grid-template-columns: 1fr;
  }

  .dm-section-heading h2,
  .dm-about-content h2,
  .dm-results-heading h2 {
    font-size: 31px;
  }

  .dm-process-grid {
    grid-template-columns: 1fr;
  }

  .dm-result-stats {
    grid-template-columns: 1fr 1fr;
  }

  .dm-result-stats strong {
    font-size: 28px;
  }

  .dm-heading-row {
    flex-direction: column;
    align-items: flex-start;
  }

  .dm-project {
    min-height: 350px;
  }

  .dm-project-large {
    min-height: 400px;
  }

  .dm-testimonial {
    padding: 70px 0;
  }

  .dm-testimonial-box {
    padding: 35px 22px;
  }

  .dm-testimonial-box p {
    font-size: 14px;
  }

  .dm-cta {
    padding: 75px 0;
  }

  .dm-cta h2 {
    font-size: 34px;
  }
}
/*software solution */
/* =========================================
   MOBILE SIDEBAR FIX
========================================= */

@media (max-width: 991px) {
  .hamburger-area {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100vh;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    z-index: 99999;
  }

  .hamburger-area.opened {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }

  .hamburger-area .hamburger_bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .hamburger-area.opened .hamburger_bg {
    opacity: 1;
  }

  .hamburger-area .hamburger_wrapper {
    position: absolute;
    top: 0;
    right: 0;
    width: min(90%, 400px);
    height: 100vh;
    background: #111;
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform 0.4s ease;
    z-index: 2;
  }

  .hamburger-area.opened .hamburger_wrapper {
    transform: translateX(0);
  }

  body.mobile-menu-open {
    overflow: hidden;
  }
}


/* Prevent the splash screen from flashing on repeat visits */

html.skip-splash #pageLoader {
    display: none !important;
}

html.skip-splash body.loading {
    overflow: auto !important;
}

html.skip-splash #mainContent {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}


/* ==========================================
   HERO TEXT SPACING FIX — MOBILE ONLY
   Desktop styles remain unchanged.
   ========================================== */

@media screen and (max-width: 767px) {

    /* Hero content */
    .hero-container .hero-content {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        gap: 0 !important;
    }

    /* Small label */
    .hero-container .hero-label {
        margin-bottom: 20px !important;
    }

    /* Main heading */
    .hero-container .hero-content .hero-title {
        position: relative !important;
        display: block !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 0 12px 0 !important;
        padding: 0 !important;

        font-size: clamp(36px, 9vw, 46px) !important;
        line-height: 1.18 !important;
        letter-spacing: -1.5px !important;

        white-space: normal !important;
        overflow: visible !important;
        transform: none !important;
    }

    /* Heading lines */
    .hero-container .hero-title .title-line {
        position: relative !important;
        display: block !important;

        width: 100% !important;
        height: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        line-height: inherit !important;
        transform: none !important;
    }

    /* Paragraph and button wrapper */
    .hero-container .hero-content .hero-bottom {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;
        gap: 24px !important;

        transform: none !important;
    }

    /* Paragraph */
    .hero-container .hero-content .hero-description {
        position: relative !important;
        display: block !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        inset: auto !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 14px !important;
        line-height: 1.7 !important;
        letter-spacing: normal !important;
        word-spacing: normal !important;

        text-align: left !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;

        transform: none !important;
    }

}

/* Mobile sidebar dropdowns */
.hamburger-area .mobile_menu .has-dropdown {
    position: relative;
}

.hamburger-area .mobile_menu .has-dropdown > .sub-menu {
    display: none;
    width: 100%;
    margin: 0;
    padding: 0 0 0 15px;
}

.hamburger-area .mobile_menu .has-dropdown.dropdown-open > .sub-menu {
    display: block !important;
}

.hamburger-area .mobile_menu .mobile-dropdown-toggle {
    display: block;
    padding-right: 50px;
}

.hamburger-area .mobile_menu .mobile-dropdown-button {
    position: absolute;
    top: 0;
    right: 0;
    width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
    z-index: 2;
}

.hamburger-area .mobile_menu .mobile-dropdown-button i {
    transition: transform 0.2s ease;
}

.hamburger-area .mobile_menu
.has-dropdown.dropdown-open > .mobile-dropdown-button i {
    transform: rotate(180deg);
}

/* MOBILE MENU DROPDOWN ARROWS */
.hamburger-area .mobile_menu .has-dropdown {
    position: relative;
}

.hamburger-area .mobile_menu .has-dropdown > a.mean-expand {
    display: flex !important;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    right: 0;
    width: 45px;
    height: 45px;
    padding: 0 !important;
    background: transparent !important;
    border: 0;
    color: inherit;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 10;
}

.hamburger-area .mobile_menu .has-dropdown > a.mean-expand i {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 16px;
    line-height: 1;
    transition: transform 0.25s ease;
}

.hamburger-area .mobile_menu .has-dropdown > a:not(.mean-expand) {
    padding-right: 50px;
}

#apply-now {
    scroll-margin-top: 110px;
}



/* ================= HERO SECTION ================= */

.hero-section {
    padding: 45px 2.5%;
    background: #fff;
    overflow: hidden;
}

.hero-container {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 0;
}

.hero-content {
    min-width: 0;
    position: relative;
    z-index: 1;
}

.hero-label {
    margin-bottom: 26px;
    color: #381080;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3px;
}

.hero-title {
    margin: 0 0 24px;
    color: #151a2e;
    font-size: clamp(42px, 5vw, 70px);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -2.5px;
}

.hero-title span {
    display: block;
    color: #43109b;
}

.hero-description {
    max-width: 540px;
    margin: 0 0 28px;
    color: #686879;
    font-size: 16px;
    line-height: 1.75;
}

.hero-actions {
    display: flex;
    align-items: center;
    gap: 26px;
    flex-wrap: wrap;
}

.primary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-shrink: 0;
    white-space: nowrap;
    padding: 16px 24px;
    border-radius: 50px;
    background: #381080;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: transform .25s, background .25s;
}

.primary-button:hover {
    background: #5720bc;
    transform: translateY(-3px);
}

.secondary-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
    color: #381080;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}

.secondary-button span,
.primary-button span {
    transition: transform .25s;
}

.secondary-button:hover span {
    transform: translateX(4px);
}

.primary-button:hover span {
    transform: translate(3px, -2px);
}

/* ================= RIGHT-SIDE IMAGE ================= */

.hero-visual {
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-right: -2.5vw;
}

.hero-visual img {
    display: block;
    width: 125%;
    max-width: none;
    height: auto;
    object-fit: contain;
    animation: heroFloat 5s ease-in-out infinite;
}

/* ================= FLOATING ANIMATION ================= */

@keyframes heroFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }
}

/* ================= TABLET ================= */

@media (max-width: 900px) {
    .hero-section {
        padding: 50px 4%;
    }

    .hero-container {
        grid-template-columns: 1fr 0.9fr;
        gap: 10px;
    }

    .hero-title {
        font-size: clamp(38px, 5.5vw, 54px);
        letter-spacing: -1.5px;
    }

    .hero-actions {
        gap: 16px;
    }

    .primary-button {
        padding: 14px 16px;
        font-size: 12px;
    }

    .hero-visual {
        margin-right: -2vw;
    }

    .hero-visual img {
        width: 125%;
    }
}

/* ================= MOBILE ================= */

@media (max-width: 650px) {
    .hero-section {
        padding: 35px 5%;
    }

    .hero-container {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .hero-label {
        margin-bottom: 18px;
        font-size: 9px;
        letter-spacing: 2px;
    }

    .hero-title {
        font-size: clamp(38px, 9vw, 54px);
        letter-spacing: -1.5px;
    }

    .hero-description {
        font-size: 15px;
        line-height: 1.7;
    }

    .hero-actions {
        gap: 16px;
    }

    .primary-button {
        padding: 14px 18px;
        font-size: 12px;
    }

    .hero-visual {
        justify-content: center;
        margin-right: 0;
    }

    .hero-visual img {
        width: 100%;
        max-width: 460px;
    }
}

/* ================= REDUCED MOTION ================= */

@media (prefers-reduced-motion: reduce) {
    .hero-visual img {
        animation: none;
    }

    .primary-button,
    .primary-button span,
    .secondary-button span {
        transition: none;
    }
}


/* Reduce space between Hero and About */
.hero-section {
    padding-bottom: 0px;
    margin-bottom: 0;
}

#about {
    padding-top: 0px;
    margin-top: 0;
}

/* Text entrance animation */
.hero-label,
.hero-title,
.hero-description,
.hero-actions {
    opacity: 0;
    animation: heroReveal .7s ease-out forwards;
}

.hero-label { animation-delay: .1s; }
.hero-title { animation-delay: .2s; }
.hero-description { animation-delay: .35s; }
.hero-actions { animation-delay: .5s; }

@keyframes heroReveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Image bounces independently from the beginning */
.hero-visual img {
    animation: heroFloat 5s ease-in-out infinite;
}

@keyframes heroFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-12px); }
}


/* =========================================
   ABOUT PAGE
========================================= */

.about-page {
    --about-purple: #381080;
    --about-purple-light: #5720bc;
    --about-text: #151a2e;
    --about-muted: #686879;
    --about-border: #eee5ff;

    width: 100%;
    padding-top: 110px;
    background: #ffffff;
    overflow: clip;
}

.about-container {
    width: min(1500px, 92%);
    margin: 0 auto;
}



/* ================================
   ABOUT HERO
================================ */
.about-hero {
  position: relative;
  width: 100%;
  padding: 35px 0 0;
  overflow: hidden;
  background: #fff;
  box-sizing: border-box;
}

.about-hero *,
.about-hero *::before,
.about-hero *::after {
  box-sizing: border-box;
}

.about-container {
  width: min(1280px, 90%);
  margin: 0 auto;
}

/* ================================
   HERO TEXT + IMAGE LAYOUT
================================ */
.about-hero-inner {
  display: grid;
  grid-template-columns: 0.88fr 1.12fr;
  align-items: center;
  gap: 10px;
  min-height: 410px;
}

.about-hero-content {
  position: relative;
  z-index: 2;
  min-width: 0;
  padding: 15px 0 25px;
}

.about-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 25px;
  color: #21103a;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 4px;
}

.about-eyebrow i {
  display: block;
  width: 38px;
  height: 1px;
  background: #cbd5f1;
}

.about-hero-title {
  margin: 0 0 17px;
  color: #151a2e;
  font-size: clamp(42px, 4.5vw, 64px);
  line-height: 0.98;
  letter-spacing: -2.5px;
  font-weight: 800;
}

.about-hero-title span {
  color: #43109b;
}

.about-hero-description {
  max-width: 475px;
  margin: 0 0 23px;
  color: #62677a;
  font-size: 15px;
  line-height: 1.65;
}

.about-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 30px;
}

.about-primary-btn,
.about-secondary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
}

.about-primary-btn {
  padding: 18px 27px;
  border-radius: 50px;
  background: #21103a;
  color: #fff;
  box-shadow: 0 12px 30px rgba(23, 72, 232, 0.16);
  transition: background 0.25s, transform 0.25s;
}



.about-secondary-btn {
  color: #21103a;
}

.about-secondary-btn span {
  transition: transform 0.25s;
}

.about-secondary-btn:hover span {
  transform: translateX(5px);
}

/* ================================
   RIGHT BANNER IMAGE
================================ */
.about-hero-visual {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;
  width: 100%;
  overflow: visible;
  isolation: isolate;
}

.about-hero-visual img {
  position: relative;
  z-index: 1;
  display: block;
  width: 125%;
  max-width: none;
  height: auto;
  object-fit: contain;
  object-position: center;
}

/* Small label in the top-right corner */
.about-visual-label {
  position: absolute;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  color: #1748a8;
  font-size: 8px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 2px;
  pointer-events: none;
}

.about-label-top {
  top: 7%;
  right: 2%;
}

/* ================================
   FLOATING IMAGE INFORMATION CARDS

   These styles work with the existing
   .dm-image-card HTML elements.
================================ */
.about-hero-visual .dm-image-card {
  position: absolute;
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 155px;
  padding: 13px 16px;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 10px 35px rgba(35, 75, 180, 0.13);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}


.about-hero-visual .dm-card-icon {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 9px;
  background: #eaf0ff;
  color: #21103a;
  font-size: 11px;
  font-weight: 800;
}



.about-hero-visual .dm-marketing-dot {
  flex: 0 0 10px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #21103a;
  box-shadow: 0 0 0 5px #eaf0ff;
}

/* ================================
   THREE FEATURE ITEMS
================================ */
.about-feature-strip {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  width: 100%;
  margin: 15px 0 0;
  padding: 25px 0;
  border-radius: 12px 12px 0 0;
  background: #f5f8ff;
  box-sizing: border-box;
}

.about-feature-item {
  display: flex;
  align-items: center;
  gap: 20px;
  min-width: 0;
  padding: 8px 25px;
  border-right: 1px solid #d5dced;
}

.about-feature-item:last-child {
  border-right: none;
}

.about-feature-icon {
  display: grid;
  place-items: center;
  flex: 0 0 62px;
  width: 62px;
  height: 62px;
  border-radius: 12px;
  background: #e7efff;
  color: #21103a;
  font-size: 30px;
}

.about-feature-item h3 {
  margin: 0 0 7px;
  color: #15192c;
  font-size: 14px;
  font-weight: 700;
}

.about-feature-item p {
  margin: 0;
  color: #687087;
  font-size: 12px;
  line-height: 1.55;
}

/* ================================
   TABLET
================================ */
@media (max-width: 900px) {
  .about-container {
    width: 92%;
  }

  .about-hero-inner {
    grid-template-columns: 0.95fr 1.05fr;
    gap: 8px;
    min-height: 350px;
  }

  .about-hero-title {
    font-size: clamp(35px, 5vw, 48px);
    letter-spacing: -1.5px;
  }

  .about-hero-description {
    font-size: 14px;
  }

  .about-hero-visual img {
    width: 125%;
  }

  
  

 

  .about-feature-item {
    gap: 12px;
    padding: 8px 12px;
  }

  .about-feature-icon {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
    font-size: 24px;
  }
}

/* ================================
   MOBILE
================================ */
@media (max-width: 600px) {
  .about-hero {
    padding-top: 25px;
    overflow: hidden;
  }

  .about-container {
    width: 90%;
  }

  .about-hero-inner {
    grid-template-columns: 1fr;
    gap: 0;
    min-height: auto;
  }

  .about-hero-content {
    padding: 10px 0;
  }

  .about-eyebrow {
    margin-bottom: 18px;
    font-size: 9px;
    letter-spacing: 3px;
  }

  .about-hero-title {
    font-size: clamp(36px, 9vw, 48px);
    line-height: 1.02;
    letter-spacing: -1.5px;
  }

  .about-hero-description {
    font-size: 14px;
    line-height: 1.7;
  }

  .about-hero-actions {
    gap: 18px;
  }

  .about-primary-btn {
    padding: 15px 20px;
  }

  .about-hero-visual {
    width: 100%;
    margin-top: 5px;
  }

  .about-hero-visual img {
    width: 110%;
    max-width: 520px;
  }

  .about-visual-label {
    top: 5%;
    right: 0;
    gap: 3px;
    font-size: 7px;
    letter-spacing: 1.5px;
  }

  .about-hero-visual .dm-image-card {
    min-width: 110px;
    padding: 8px;
    gap: 7px;
  }

  .about-hero-visual .dm-image-card-one {
    top: 22%;
    left: 0;
  }

  .about-hero-visual .dm-image-card-three {
    right: 0;
    bottom: 12%;
  }

  .about-hero-visual .dm-image-card strong {
    font-size: 13px;
  }

  .about-hero-visual .dm-image-card span {
    font-size: 8px;
  }

  .about-hero-visual .dm-card-icon {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
    font-size: 9px;
  }

  .about-feature-strip {
    grid-template-columns: 1fr;
    margin-top: 12px;
    padding: 10px 0;
  }

  .about-feature-item {
    padding: 15px;
    border-right: none;
    border-bottom: 1px solid #d5dced;
  }

  .about-feature-item:last-child {
    border-bottom: none;
  }
}


/* ABOUT HERO — COMPACT DESKTOP LAYOUT */
.about-hero {
  position: relative;
  width: 100%;
  padding: 12px 0 0;
  overflow: hidden;
  background: #fff;
  box-sizing: border-box;
}

.about-container {
  width: min(1280px, 90%);
  margin: 0 auto;
}

/* HERO CONTENT */
.about-hero-inner {
  display: grid;
  grid-template-columns: 0.88fr 1.12fr;
  align-items: center;
  gap: 0;
  min-height: 0;
}

.about-hero-content {
  position: relative;
  z-index: 2;
  min-width: 0;
  padding: 0 0 12px;
}

.about-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  color: #21103a;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 4px;
}

.about-eyebrow i {
  display: block;
  width: 38px;
  height: 1px;
  background: #cbd5f1;
}

.about-hero-title {
  margin: 0 0 14px;
  color: #151a2e;
  font-size: clamp(38px, 4.1vw, 58px);
  line-height: 0.99;
  letter-spacing: -2px;
  font-weight: 800;
}



.about-hero-description {
  max-width: 460px;
  margin: 0 0 20px;
  color: #62677a;
  font-size: 14px;
  line-height: 1.6;
}

.about-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 28px;
}

.about-primary-btn,
.about-secondary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
}

.about-primary-btn {
  padding: 16px 25px;
  border-radius: 50px;
  
  color: #fff;
  box-shadow: 0 10px 25px rgba(23, 72, 232, 0.14);
  transition: background 0.25s, transform 0.25s;
}



.about-secondary-btn {
  color: #21103a;
}

.about-secondary-btn span {
  transition: transform 0.25s;
}

.about-secondary-btn:hover span {
  transform: translateX(5px);
}

/* RIGHT IMAGE — SMALLER AND POSITIONED CORRECTLY */
.about-hero-visual {
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  min-width: 0;
  width: 100%;
  overflow: visible;
  isolation: isolate;
}

.about-hero-visual img {
  position: relative;
  z-index: 1;
  display: block;
  width: 108%;
  max-width: 660px;
  height: auto;
  object-fit: contain;
  object-position: center;
}

/* SMALL TEXT AT THE TOP-RIGHT OF THE BANNER */
.about-visual-label {
  position: absolute;
  z-index: 3;
  top: 5%;
  right: 1%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  color: #1748a8;
  font-size: 7px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 1.6px;
  pointer-events: none;
}

/* FLOATING CARDS — POSITION ONLY */
/* Existing .dm-image-card styles remain unchanged. */


.about-hero-visual .dm-image-card-three {
  right: 3%;
  bottom: 17%;
}

/* FEATURE STRIP — VISIBLE WITHOUT EXTRA SCROLLING */
.about-feature-strip {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  width: 100%;
  margin: 4px 0 0;
  padding: 18px 0;
  border-radius: 12px 12px 0 0;
  background: #eee7f7;
  box-sizing: border-box;
}

.about-feature-item {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
  padding: 6px 24px;
  border-right: 1px solid #d5dced;
}

.about-feature-item:last-child {
  border-right: none;
}

.about-feature-icon {
  display: grid;
  place-items: center;
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  border-radius: 12px;
  background: #eee7f7;
  color: #21103a;
  font-size: 27px;
}

.about-feature-item h3 {
  margin: 0 0 6px;
  color: #15192c;
  font-size: 13px;
  font-weight: 700;
}

.about-feature-item p {
  margin: 0;
  color: #687087;
  font-size: 11px;
  line-height: 1.5;
}

/* TABLET */
@media (max-width: 900px) {
  .about-container {
    width: 92%;
  }

  .about-hero-inner {
    grid-template-columns: 0.95fr 1.05fr;
    gap: 8px;
  }

  .about-hero-title {
    font-size: clamp(34px, 4.8vw, 46px);
    letter-spacing: -1.5px;
  }

  .about-hero-description {
    font-size: 13px;
  }

  .about-hero-visual img {
    width: 110%;
  }

  .about-visual-label {
    right: 0;
    font-size: 6px;
    letter-spacing: 1px;
  }

  .about-feature-item {
    gap: 10px;
    padding: 6px 12px;
  }

  .about-feature-icon {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
    font-size: 22px;
  }

  .about-feature-item p {
    font-size: 10px;
  }
}

/* MOBILE */
@media (max-width: 600px) {
  .about-hero {
    padding-top: 20px;
    overflow: hidden;
  }

  .about-container {
    width: 90%;
  }

  .about-hero-inner {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .about-hero-content {
    padding: 8px 0 0;
  }

  .about-eyebrow {
    margin-bottom: 16px;
    font-size: 9px;
    letter-spacing: 2.5px;
  }

  .about-hero-title {
    font-size: clamp(35px, 9vw, 46px);
    line-height: 1.02;
    letter-spacing: -1.3px;
  }

  .about-hero-description {
    font-size: 13px;
    line-height: 1.65;
  }

  .about-hero-actions {
    gap: 16px;
  }

  .about-primary-btn {
    padding: 14px 18px;
  }

  .about-hero-visual {
    width: 100%;
    margin-top: 0;
  }

  .about-hero-visual img {
    width: 100%;
    max-width: 480px;
  }

  .about-visual-label {
    top: 5%;
    right: 0;
    gap: 2px;
    font-size: 6px;
    letter-spacing: 1px;
  }

  


  .about-feature-strip {
    grid-template-columns: 1fr;
    margin-top: 10px;
    padding: 8px 0;
  }

  .about-feature-item {
    padding: 13px;
    border-right: none;
    border-bottom: 1px solid #d5dced;
  }

  .about-feature-item:last-child {
    border-bottom: none;
  }
}



/* Real Business Growth Card — Top Left */
.about-hero-visual .dm-image-card-two {
  position: absolute;
  top: 3%;
  right: 40%;
  z-index: 5;
}

/* Animations about */

/* =====================================
   ABOUT PAGE — TEXT ANIMATIONS
===================================== */

/* Initial text animation */
@keyframes aboutFadeUp {
  from {
    opacity: 0;
    transform: translateY(25px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes aboutFadeLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes aboutFadeRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Eyebrow */
.about-eyebrow {
  animation: aboutFadeUp 0.7s ease-out both;
}

/* Main heading */
.about-hero-title {
  animation: aboutFadeLeft 0.9s ease-out 0.1s both;
}

/* Blue heading text */
.about-hero-title span {
  display: inline-block;
  animation: aboutFadeUp 0.8s ease-out 0.3s both;
}

/* Description */
.about-hero-description {
  animation: aboutFadeUp 0.8s ease-out 0.35s both;
}

/* Buttons */
.about-hero-actions {
  animation: aboutFadeUp 0.8s ease-out 0.5s both;
}

.about-primary-btn,
.about-secondary-btn {
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    background-color 0.3s ease;
}

.about-primary-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(23, 72, 232, 0.22);
}

.about-secondary-btn:hover {
  transform: translateX(4px);
}

/* =====================================
   BANNER IMAGE ANIMATION
===================================== */

.about-banner-image {
  animation: aboutFadeRight 1s ease-out 0.2s both;
  transform-origin: center;
  transition: transform 0.5s ease;
}

.about-hero-visual:hover .about-banner-image {
  transform: scale(1.025);
}

/* Small strategy label */
.about-visual-label {
  animation: aboutFadeUp 0.8s ease-out 0.7s both;
}


/* Floating cards: entrance + continuous floating */
@keyframes aboutCardFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}

.about-hero-visual .about-floating-card {
  animation:
    aboutFadeUp 0.8s ease-out both,
    aboutCardFloat 3s ease-in-out 0.8s infinite;
}

.about-hero-visual .dm-image-card-one {
  animation-delay: 0s, 0.8s;
}

.about-hero-visual .dm-image-card-two {
  animation-delay: 0.2s, 1s;
}

.about-hero-visual .dm-image-card-three {
  animation-delay: 0.4s, 1.2s;
}

/* =====================================
   THREE FEATURE ITEMS
===================================== */

.about-feature-item {
  animation: aboutFadeUp 0.8s ease-out both;
  transition: background-color 0.3s ease;
}

.about-feature-item:nth-child(1) {
  animation-delay: 0.3s;
}

.about-feature-item:nth-child(2) {
  animation-delay: 0.5s;
}

.about-feature-item:nth-child(3) {
  animation-delay: 0.7s;
}

.about-feature-item:hover {
  background-color: #eee7f7;
}

.about-feature-icon {
  transition:
    transform 0.3s ease,
    background-color 0.3s ease;
}

.about-feature-item:hover .about-feature-icon {
  transform: translateY(-4px) scale(1.05);
  background-color: #eee7f7;
}

/* =====================================
   ACCESSIBILITY
===================================== */

@media (prefers-reduced-motion: reduce) {
  .about-page *,
  .about-page *::before,
  .about-page *::after {
    animation: none !important;
    transition: none !important;
  }
}



/* ===== SEO ABOUT SECTION ===== */
.seo-about {
    position: relative;
    padding: 90px 0;
    overflow: hidden;
    background: linear-gradient(135deg, #ffffff 0%, #f8f4ff 55%, #eee6fa 100%);
}

.seo-about .seo-about-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: clamp(35px, 6vw, 80px);
}

.seo-about-visual {
    position: relative;
    min-height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 24px;
    padding: 35px;
    border-radius: 28px;
    background:
        radial-gradient(circle at 20% 15%, rgba(133, 76, 255, .15), transparent 35%),
        radial-gradient(circle at 85% 85%, rgba(30, 105, 255, .13), transparent 35%),
        #ffffff;
    border: 1px solid rgba(83, 35, 151, .10);
    box-shadow: 0 25px 70px rgba(45, 17, 90, .09);
}

.seo-about-visual::before,
.seo-about-visual::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.seo-about-visual::before {
    width: 180px;
    height: 180px;
    top: -45px;
    left: -35px;
    border: 1px solid rgba(108, 48, 220, .18);
}

.seo-about-visual::after {
    width: 120px;
    height: 120px;
    right: -25px;
    bottom: -25px;
    background: rgba(113, 61, 220, .07);
}

/* Floating information cards */
.seo-floating-card {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 26px;
    border-radius: 20px;
    background: rgba(255, 255, 255, .94);
    border: 1px solid rgba(92, 43, 166, .12);
    box-shadow: 0 16px 35px rgba(42, 15, 82, .09);
    display: flex;
    flex-direction: column;
    gap: 10px;
    animation: seoCardFloat 4s ease-in-out infinite;
}

.seo-floating-card span {
    color: #6540a6;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.seo-floating-card strong {
    color: #241044;
    font-size: clamp(21px, 2.2vw, 29px);
    line-height: 1.3;
}

.seo-floating-card small {
    color: #6c6579;
    font-size: 14px;
    line-height: 1.7;
}

.seo-card-one {
    align-self: flex-start;
    max-width: 360px;
}

.seo-card-two {
    align-self: flex-end;
    max-width: 360px;
    animation-delay: 1.2s;
    background: linear-gradient(135deg, #ffffff, #f5efff);
}

@keyframes seoCardFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

/* About content */
.seo-about-content {
    min-width: 0;
}

.seo-about-content .seo-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: #6130b5;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.seo-about-content .seo-eyebrow::before {
    content: "";
    width: 30px;
    height: 2px;
    background: #7135d4;
}

.seo-about-content h2 {
    margin: 0 0 22px;
    color: #19132b;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1.2px;
}

.seo-about-content h2 span {
    display: block;
    color: #5623a5;
}

.seo-about-content p {
    margin: 0 0 16px;
    color: #686174;
    font-size: 15px;
    line-height: 1.85;
}

/* SEO checklist */
.seo-check-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 20px;
    margin-top: 28px;
}

.seo-check-grid > div {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #302044;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}

.seo-check-grid i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 23px;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    background: #eee5ff;
    color: #6028b5;
    font-size: 13px;
    font-style: normal;
    font-weight: 800;
}

/* Tablet */
@media (max-width: 992px) {
    .seo-about {
        padding: 70px 0;
    }

    .seo-about .seo-about-grid {
        gap: 35px;
    }

    .seo-about-visual {
        min-height: 350px;
        padding: 25px;
    }

    .seo-floating-card {
        padding: 22px;
    }

    .seo-check-grid {
        gap: 14px;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .seo-about {
        padding: 55px 0;
    }

    .seo-about .seo-about-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
    }

    .seo-about-visual {
        min-height: 320px;
        padding: 24px;
        gap: 20px;
    }

    .seo-card-one,
    .seo-card-two {
        width: 100%;
        max-width: 420px;
    }

    .seo-about-content h2 {
        font-size: clamp(30px, 7vw, 40px);
    }

    .seo-about-content p {
        font-size: 14px;
    }

    .seo-check-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Small mobile */
@media (max-width: 480px) {
    .seo-about-visual {
        min-height: 300px;
        padding: 20px;
    }

    .seo-floating-card {
        padding: 20px;
    }

    .seo-floating-card strong {
        font-size: 22px;
    }

    .seo-check-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 13px;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .seo-floating-card {
        animation: none;
    }
}



/* ===== SEO HERO FEATURE CARDS ===== */
.seo-hero-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 26px;
    padding: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.seo-hero-meta > div {
    min-width: 0;
    padding: 18px 15px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(86, 35, 165, 0.12);
    border-radius: 14px;
    box-shadow: 0 6px 20px rgba(45, 17, 90, 0.05);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.seo-hero-meta > div:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 26px rgba(45, 17, 90, 0.10);
    border-color: rgba(86, 35, 165, 0.25);
}

.seo-hero-meta strong {
    display: block;
    margin: 0;
    color: #21103a;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
}

.seo-hero-meta span {
    display: block;
    color: #716582;
    font-size: 12px;
    line-height: 1.7;
}

/* ===== TABLET ===== */
@media (max-width: 992px) {
    .seo-hero-meta {
        gap: 10px;
    }

    .seo-hero-meta > div {
        padding: 15px 12px;
    }

    .seo-hero-meta strong {
        font-size: 14px;
    }
}

/* ===== MOBILE ===== */
@media (max-width: 600px) {
    .seo-hero-meta {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 22px;
    }

    .seo-hero-meta > div {
        padding: 16px;
    }

    .seo-hero-meta strong {
        font-size: 15px;
    }

    .seo-hero-meta span {
        font-size: 13px;
    }
}

/* Reduce spacing between SEO hero and About SEO section */
.seo-hero {
    padding-bottom: 25px !important;
    margin-bottom: 0 !important;
}

.seo-about {
    padding-top: 40px !important;
    margin-top: 0 !important;
}

/* Reduce SEO dashboard box size */
.seo-dashboard {
    width: 90%;
    max-width: 480px;
    padding: 24px;
    margin-inline: auto;
    box-sizing: border-box;
}

.dashboard-score {
    padding: 18px 20px;
}

.dashboard-score strong {
    font-size: clamp(25px, 2.5vw, 36px);
}

.dashboard-chart {
    height: 140px;
}

.dashboard-metrics {
    gap: 10px;
}

.dashboard-metrics > div {
    padding: 12px 10px;
}

/* Reduce SEO feature card size */
.seo-hero-meta {
    gap: 12px;
    margin-top: 20px;
}

.seo-hero-meta > div {
    padding: 14px 13px;
    border-radius: 14px;
}

.seo-hero-meta strong {
    font-size: 14px;
    line-height: 1.4;
}

.seo-hero-meta span {
    font-size: 11px;
    line-height: 1.7;
}

.seo-dashboard {
    padding: 18px 24px 22px !important;
}

.dashboard-top {
    margin-bottom: 14px;
}

.dashboard-score {
    padding: 14px 18px;
}

.dashboard-chart {
    height: 120px;
    margin-top: 12px;
}

.dashboard-metrics > div {
    padding: 10px 12px;
}

.seo-hero-grid {
    align-items: center;
}

.seo-dashboard {
    align-self: center;
    margin-top: 28px !important;
    margin-bottom: 0 !important;
}



/* ===== CONTACT HERO ===== */
.contact-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 55px 0 65px;
    background:
    radial-gradient(
        ellipse at 75% 45%,
        rgba(117, 65, 220, 0.10),
        transparent 40%
    ),
    linear-gradient(
        115deg,
        #ffffff 0%,
        #f8f3ff 55%,
        #f1e9ff 100%
    );
    color: #151a2e;
    font-family: inherit;
}

.contact-container {
    width: min(94%, 1500px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(330px, .95fr) minmax(0, .95fr);
    align-items: center;
    gap: 24px;
}

/* ===== LEFT CONTENT ===== */
.contact-left {
    position: relative;
    z-index: 2;
    min-width: 0;
    animation: contactFadeIn .8s ease both;
}

.contact-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 22px;
    color: #21103a;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.contact-eyebrow::before,
.contact-eyebrow::after {
    content: "";
    width: 22px;
    height: 1px;
    background: #21103a;
}

.contact-left h1 {
    margin: 0 0 20px;
    color: #151a2e;
    font-size: clamp(35px, 3.6vw, 64px);
    font-weight: 800;
    line-height: 1.03;
    letter-spacing: -1.8px;
}

.contact-left h1 span {
    color: #43109b;
}

.contact-description {
    max-width: 600px;
    margin: 0 0 28px;
    color: #59678f;
    font-size: 16px;
    line-height: 1.65;
}

/* ===== CONTACT INFO CARDS ===== */
.contact-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 35px;
}

.contact-info-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: 18px 14px;
    border: 1px solid rgba(23, 105, 255, .17);
    border-radius: 20px;
    background: rgba(255, 255, 255, .78);
    box-shadow: 0 12px 30px rgba(31, 78, 155, .06);
    color: #151a2e;
    text-decoration: none;
    transition: transform .25s ease, box-shadow .25s ease;
}

.contact-info-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 35px rgba(31, 78, 155, .12);
}

.contact-icon {
    display: flex;
    width: 43px;
    height: 43px;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    border-radius: 12px;
    background: #43109b;
    color: #fff;
    font-size: 23px;
}

.contact-info-card h3 {
    margin: 0 0 5px;
    font-size: 16px;
    font-weight: 750;
}

.contact-info-card strong {
    overflow-wrap: anywhere;
    font-size: 13px;
    line-height: 1.5;
}

.contact-info-card small {
    margin-top: 8px;
    color: #687596;
    font-size: 11px;
    line-height: 1.5;
}

/* ===== CONTACT FORM ===== */
.contact-form-card {
    position: relative;
    z-index: 3;
    min-width: 0;
    padding: 26px;
    border: 1px solid rgba(23, 105, 255, .12);
    border-radius: 24px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 25px 65px rgba(21, 57, 125, .13);
    animation: contactFadeIn .9s ease .15s both;
}

.contact-form-card h2 {
    margin: 0 0 7px;
    color: #151a2e;
    font-size: 24px;
    font-weight: 800;
    letter-spacing: -.5px;
}

.contact-form-card > p {
    margin: 0 0 20px;
    color: #687596;
    font-size: 12px;
    line-height: 1.6;
}

.contact-form-card form {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.contact-form-card .form-group {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 6px;
}

.contact-form-card label {
    color: #10245f;
    font-size: 12px;
    font-weight: 700;
}

.contact-form-card label span {
    color: #e53948;
}

.contact-form-card input,
.contact-form-card select,
.contact-form-card textarea {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    padding: 11px 13px;
    border: 1px solid #d8e1f1;
    border-radius: 9px;
    outline: none;
    background: #f8faff;
    color: #10245f;
    font: inherit;
    font-size: 12px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.contact-form-card input,
.contact-form-card select {
    height: 42px;
}

.contact-form-card textarea {
    min-height: 78px;
    resize: vertical;
}

.contact-form-card input:focus,
.contact-form-card select:focus,
.contact-form-card textarea:focus {
    border-color: #43109b;
    box-shadow: 0 0 0 3px rgba(23, 105, 255, .1);
}

.contact-form-card input::placeholder,
.contact-form-card textarea::placeholder {
    color: #9aa6c0;
}

.contact-submit-btn {
    display: flex;
    width: 100%;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 1px;
    padding: 12px 18px;
    border: 0;
    border-radius: 12px;
    background: #330879;
    color: #fff;
    font-size: 14px;
    font-weight: 750;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
}

.contact-submit-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(23, 105, 255, .24);
}

.contact-submit-btn span {
    font-size: 19px;
}



/* ===== Floating Office Message ===== */
.office-message {
    position: absolute;
    z-index: 2;
    top: 12px;
    left: 8px;
    width: 150px;
    padding: 13px 15px;

    background: rgba(7, 27, 97, 0.48);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 0 0 18px 0;

    color: #fff;
    box-shadow: 0 10px 25px rgba(9, 43, 117, 0.12);
    animation: contactFloat 4s ease-in-out infinite;
}

.office-message strong {
    display: block;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
}

.office-message span {
    display: block;
    width: 28px;
    height: 2px;
    margin-top: 10px;
    background: rgba(255, 255, 255, 0.9);
}

/* ===== Bottom Help Card ===== */
.office-help {
    position: absolute;
    z-index: 2;
    right: 15px;
    bottom: 20px;

    display: flex;
    align-items: center;
    gap: 10px;

    max-width: calc(100% - 30px);
    padding: 12px 15px;

    border: 1px solid rgba(255, 255, 255, 0.8);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.94);

    color: #151a2e;
    box-shadow: 0 12px 28px rgba(12, 45, 110, 0.14);
    animation: contactFloat 4s ease-in-out 1s infinite;
}

.office-help-icon {
    display: flex;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;

    border-radius: 11px;
    background: #e8f0ff;
    color: #43109b;
    font-size: 21px;
}

.office-help strong {
    font-size: 13px;
    line-height: 1.4;
}

/* Mobile */
@media (max-width: 767px) {
    .office-message {
        top: 8px;
        left: 8px;
        width: 125px;
        padding: 10px 12px;
    }

    .office-message strong {
        font-size: 15px;
    }

    .office-message span {
        margin-top: 8px;
    }

    .office-help {
        right: 8px;
        bottom: 8px;
        padding: 9px 11px;
        gap: 8px;
    }

    .office-help-icon {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
        font-size: 18px;
    }

    .office-help strong {
        font-size: 11px;
    }
}

/* ===== ANIMATIONS ===== */
@keyframes contactFadeIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes contactFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-7px);
    }
}

/* ===== TABLET ===== */
@media (max-width: 1200px) {
    .contact-container {
        grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
        gap: 25px;
    }

    .contact-office {
        grid-column: 1 / -1;
        min-height: 350px;
        max-height: 430px;
    }

    .contact-office > img {
        min-height: 350px;
        max-height: 430px;
        object-position: center 45%;
    }

    .contact-left h1 {
        font-size: clamp(38px, 4.5vw, 54px);
    }
}

/* ===== MOBILE ===== */
@media (max-width: 767px) {
    .contact-hero {
        padding: 35px 0 45px;
    }

    .contact-container {
        width: min(92%, 560px);
        grid-template-columns: minmax(0, 1fr);
        gap: 25px;
    }

    .contact-left h1 {
        font-size: clamp(36px, 9vw, 49px);
        letter-spacing: -1.2px;
    }

    .contact-description {
        font-size: 14px;
    }

    .contact-info-grid {
        gap: 9px;
        margin-top: 25px;
    }

    .contact-info-card {
        padding: 13px 10px;
        border-radius: 14px;
    }

    .contact-icon {
        width: 36px;
        height: 36px;
        font-size: 19px;
    }

    .contact-info-card h3 {
        font-size: 13px;
    }

    .contact-info-card strong {
        font-size: 11px;
    }

    .contact-info-card small {
        font-size: 10px;
    }

    .contact-form-card {
        padding: 22px 18px;
        border-radius: 20px;
    }

    .contact-form-card h2 {
        font-size: 22px;
    }

    .contact-office {
        grid-column: auto;
        min-height: 380px;
        max-height: 450px;
        border-radius: 24px;
    }

    .contact-office > img {
        min-height: 380px;
        max-height: 450px;
    }

    .office-message {
        top: 15px;
        left: 12px;
        width: 145px;
        padding: 17px;
        border-radius: 20px;
    }

    .office-message strong {
        font-size: 19px;
    }

    .office-help {
        right: 10px;
        bottom: 12px;
        padding: 12px;
    }
}

/* Very small mobile */
@media (max-width: 380px) {
    .contact-info-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .contact-info-card {
        display: grid;
        grid-template-columns: 38px 1fr;
        column-gap: 10px;
    }

    .contact-icon {
        grid-row: 1 / span 3;
        margin: 0;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .contact-left,
    .contact-form-card,
    .contact-office,
    .office-message,
    .office-help {
        animation: none;
    }

    .contact-info-card,
    .contact-submit-btn {
        transition: none;
    }
}

/* ===== CONTACT PAGE: COMPACT ONE-SCREEN LAYOUT ===== */

.contact-hero {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    overflow: hidden;
}

.contact-hero .contact-grid {
    align-items: center;
    gap: 20px;
}

/* Left content */
.contact-hero h1 {
    font-size: clamp(30px, 3.2vw, 44px);
    line-height: 1.02;
    margin: 10px 0 12px;
}

.contact-hero p {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 16px;
}

/* Contact information cards */
.contact-info-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.contact-info-cards .contact-card {
    padding: 14px;
    min-height: 0;
    border-radius: 18px;
}

.contact-info-cards .contact-card h3 {
    font-size: 15px;
    margin: 8px 0 4px;
}

.contact-info-cards .contact-card p,
.contact-info-cards .contact-card span {
    font-size: 11px;
    line-height: 1.4;
}

/* Contact form */
.contact-form,
.contact-form-card {
    padding: 20px !important;
    border-radius: 20px;
}

.contact-form h2,
.contact-form-card h2 {
    font-size: 22px;
    margin-bottom: 5px;
}

.contact-form p,
.contact-form-card p {
    font-size: 12px;
    line-height: 1.4;
    margin-bottom: 10px;
}

.contact-form .form-group,
.contact-form-card .form-group {
    margin-bottom: 9px;
}

.contact-form label,
.contact-form-card label {
    font-size: 12px;
    margin-bottom: 4px;
}

.contact-form input,
.contact-form select,
.contact-form textarea,
.contact-form-card input,
.contact-form-card select,
.contact-form-card textarea {
    padding: 9px 12px;
    font-size: 13px;
    min-height: 38px;
}

.contact-form textarea,
.contact-form-card textarea {
    height: 65px;
    min-height: 65px;
}

.contact-form button,
.contact-form-card button {
    padding: 10px 14px;
    font-size: 13px;
}

/* Right-side image */
.contact-visual,
.contact-hero-image {
    height: 100%;
    max-height: 490px;
    min-height: 0;
    overflow: hidden;
    border-radius: 20px;
}

.contact-visual img,
.contact-hero-image img {
    width: 100%;
    height: 100%;
    max-height: 490px;
    object-fit: cover;
    object-position: center;
}

/* Laptop and smaller desktop */
@media (min-width: 993px) {
    .contact-hero .contact-grid {
        grid-template-columns: 1.15fr 0.9fr 0.85fr;
    }
}

/* Tablet and mobile */
@media (max-width: 992px) {
    .contact-hero {
        padding: 25px 0 !important;
        overflow: visible;
    }

    .contact-hero .contact-grid {
        grid-template-columns: 1fr 1fr;
    }

    .contact-visual,
    .contact-hero-image {
        max-height: 380px;
    }
}

@media (max-width: 768px) {
    .contact-hero .contact-grid {
        grid-template-columns: 1fr;
    }

    .contact-hero h1 {
        font-size: clamp(30px, 8vw, 40px);
    }

    .contact-info-cards {
        grid-template-columns: 1fr;
    }

    .contact-visual,
    .contact-hero-image {
        height: 300px;
        max-height: 300px;
    }
}

/* Contact page: reduce vertical height */
.contact-hero {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    margin-top: 0 !important;
}

.contact-hero .contact-grid {
    align-items: center;
    gap: 16px;
}



.contact-hero .contact-form h2,
.contact-hero .contact-form-card h2 {
    font-size: 20px;
    margin: 0 0 5px;
}

.contact-hero .form-group {
    margin-bottom: 7px !important;
}

.contact-hero input,
.contact-hero select {
    height: 36px !important;
    min-height: 36px !important;
    padding: 7px 10px !important;
}

.contact-hero textarea {
    height: 55px !important;
    min-height: 55px !important;
    resize: none;
}

.contact-hero .contact-visual,
.contact-hero .contact-hero-image {
    height: 440px !important;
    min-height: 0 !important;
    overflow: hidden;
}

.contact-hero .contact-visual img,
.contact-hero .contact-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (min-width: 993px) {
    .contact-hero .contact-grid {
        grid-template-columns: 1.15fr 0.9fr 0.85fr;
    }
}



/* Fix contact section hiding behind navbar */
.seo-contact,
.contact-section,
.contact-hero {
    position: relative;
    margin-top: 0 !important;
    padding-top: 165px !important;
}

/* Keep content below navbar */
.seo-contact .container,
.contact-section .container,
.contact-hero .container {
    position: relative;
    top: 0;
}

/* Reduce top padding on smaller screens */
@media (max-width: 768px) {
    .seo-contact,
    .contact-section,
    .contact-hero {
        padding-top: 125px !important;
    }
}

/* Contact section: align everything in one row */
.contact-hero {
    padding: 20px 0 !important;
    margin-top: 0 !important;
    overflow: visible !important;
}

.contact-hero .contact-grid {
    display: grid !important;
    grid-template-columns: 1.15fr 0.9fr 0.85fr !important;
    align-items: center !important;
    gap: 24px !important;
    padding-top: 0 !important;
}

/* Keep left content compact */
.contact-hero .contact-hero-content h1 {
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.05;
    margin: 10px 0;
}

.contact-hero .contact-info-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

/* Form should fit vertically */
.contact-hero .contact-form,
.contact-hero .contact-form-card {
    padding: 16px !important;
    margin-top: 80px  !important;
}

.contact-hero .form-group {
    margin-bottom: 8px !important;
}

.contact-hero textarea {
    height: 55px !important;
    min-height: 55px !important;
}

/* Right image */
.contact-hero .contact-visual,
.contact-hero .contact-hero-image {
    height: 430px !important;
    min-height: 0 !important;
    margin: 0 !important;
}

.contact-hero .contact-visual img,
.contact-hero .contact-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Smaller screens */
@media (max-width: 992px) {
    .contact-hero .contact-grid {
        grid-template-columns: 1fr 1fr !important;
    }

    .contact-hero .contact-visual,
    .contact-hero .contact-hero-image {
        grid-column: 1 / -1;
        height: 300px !important;
    }
}

@media (max-width: 600px) {
    .contact-hero .contact-grid {
        grid-template-columns: 1fr !important;
    }

    .contact-hero .contact-info-cards {
        grid-template-columns: 1fr;
    }
}

/* ===== CONTACT SECTION ALIGNMENT FIX ===== */

.contact-hero {
    position: relative;
    padding-top: 35px !important;
    padding-bottom: 25px !important;
    overflow: hidden;
}

/* Align all three columns from the top */
.contact-hero .contact-container {
    align-items: center !important;
}

/* Left content */
.contact-hero .contact-content {
    align-self: center;
}

/* Contact form */
.contact-hero .contact-form {
    align-self: center;
    margin-top: 0 !important;
    padding: 22px !important;
    height: auto !important;
}




/* Prevent content from hiding under a fixed navbar */
@media (min-width: 992px) {
    .contact-hero {
        scroll-margin-top: 100px;
    }
}

/* Tablet and mobile */
@media (max-width: 991px) {
    .contact-hero {
        padding-top: 25px !important;
    }

    .contact-hero .contact-image {
        height: 400px;
    }
}

@media (max-width: 767px) {
    .contact-hero {
        padding: 20px 0 !important;
    }

    .contact-hero .contact-form {
        padding: 18px !important;
    }

    .contact-hero .contact-image {
        height: 320px;
    }
}

/* Reduce contact form height */
.contact-form {
    padding: 16px !important;
    margin-top: 0 !important;
    height: auto !important;
}

.contact-form h2 {
    font-size: 22px !important;
    margin-bottom: 5px !important;
}

.contact-form p {
    font-size: 12px !important;
    margin-bottom: 10px !important;
}

.contact-form label {
    font-size: 12px !important;
    margin-bottom: 4px !important;
}

.contact-form input,
.contact-form select {
    height: 38px !important;
    min-height: 38px !important;
    padding: 8px 10px !important;
    margin-bottom: 10px !important;
}

.contact-form textarea {
    height: 65px !important;
    min-height: 65px !important;
    padding: 8px 10px !important;
    margin-bottom: 10px !important;
}

.contact-form button {
    height: 42px !important;
    min-height: 42px !important;
    padding: 8px 12px !important;
}

/* Reduce building image height */






/* ===== CONTACT OFFICE IMAGE ===== */
.contact-office {
    position: relative;
    top: 30px; /* Image thoda neeche */
    width: 100%;
    height: 480px;
    min-width: 0;
    overflow: hidden;
    border-radius: 26px;
    isolation: isolate;
}

.contact-office > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: inherit;
}



/* Bottom help card */
.office-help {
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: calc(100% - 28px);
    padding: 13px 17px;
    border: 1px solid rgba(255, 255, 255, 0.8);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 10px 28px rgba(9, 31, 85, 0.15);
    color: #101d50;
    z-index: 2;
}

.office-help-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: #eaf1ff;
    color: #43109b;
    font-size: 22px;
}

.office-help strong {
    font-size: 14px;
    line-height: 1.4;
}

/* Tablet */
@media (max-width: 991px) {
    .contact-office {
        height: 400px;
    }

    .office-message {
        width: 165px;
        padding: 16px;
    }

    .office-message strong {
        font-size: 20px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .contact-office {
        top: 0;
        height: 320px;
        border-radius: 20px;
    }

    .office-message {
        top: 10px;
        width: 145px;
        padding: 13px;
    }

    .office-message strong {
        font-size: 17px;
    }

    .office-help {
        right: 10px;
        bottom: 10px;
        gap: 8px;
        padding: 9px 12px;
    }

    .office-help-icon {
        flex-basis: 34px;
        width: 34px;
        height: 34px;
        font-size: 18px;
    }

    .office-help strong {
        font-size: 12px;
    }
}


/* ==========================================
   ITOLOGY - OFFICE LOCATION SECTION
========================================== */

.office-location-section {
    position: relative;
    padding: 65px 0 45px;
    overflow: hidden;
    background:
        radial-gradient(ellipse at 90% 0%, rgba(55, 139, 255, 0.12), transparent 35%),
        linear-gradient(135deg, #f8fbff 0%, #eef5ff 100%);
    color: #151a2e;
    font-family: inherit;
}

.office-location-section *,
.office-location-section *::before,
.office-location-section *::after {
    box-sizing: border-box;
}

.office-location-container {
    width: min(94%, 1690px);
    margin: 0 auto;
}

/* Heading */

.office-location-heading {
    margin-bottom: 28px;
}

.office-location-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 13px;
    color: #21103a;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.office-location-eyebrow::after {
    content: "";
    width: 48px;
    height: 2px;
    background: #21103a;
}

.office-location-heading h2 {
    margin: 0 0 8px;
    color: #151a2e;
    font-size: clamp(30px, 3.4vw, 54px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.5px;
}

.office-location-heading h2 span,
.office-benefits-card > h3 span {
    color: #43109b;
}

.office-location-heading p {
    margin: 0;
    color: #61769b;
    font-size: 17px;
    line-height: 1.6;
}

/* Main layout */

.office-location-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr);
    gap: 20px;
    align-items: stretch;
}

/* Office address card */

.office-address-card,
.office-benefits-card {
    min-width: 0;
    padding: 24px;
    border: 1px solid rgba(197, 218, 255, 0.75);
    border-radius: 23px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 12px 35px rgba(35, 82, 155, 0.07);
}

.office-address-card {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.9fr);
    gap: 26px;
    align-items: center;
}

.office-map-visual {
    position: relative;
    min-height: 280px;
    overflow: hidden;
    border-radius: 17px;
    background-color: #e9f3ff;
    background-image:
        linear-gradient(35deg, transparent 43%, rgba(255,255,255,.95) 44%, rgba(255,255,255,.95) 47%, transparent 48%),
        linear-gradient(120deg, transparent 35%, rgba(255,255,255,.9) 36%, rgba(255,255,255,.9) 39%, transparent 40%),
        linear-gradient(75deg, transparent 60%, rgba(255,255,255,.9) 61%, rgba(255,255,255,.9) 64%, transparent 65%),
        repeating-linear-gradient(0deg, transparent 0 35px, rgba(103,157,219,.12) 36px 38px),
        repeating-linear-gradient(90deg, transparent 0 40px, rgba(103,157,219,.12) 41px 43px);
}

.office-map-visual::before,
.office-map-visual::after {
    position: absolute;
    content: "";
    border-radius: 50%;
    background: rgba(119, 190, 255, 0.35);
}

.office-map-visual::before {
    width: 150px;
    height: 150px;
    top: -45px;
    right: -25px;
}

.office-map-visual::after {
    width: 120px;
    height: 120px;
    bottom: -35px;
    left: -25px;
}

.office-map-grid {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
}

.office-map-pin {
    position: relative;
    z-index: 1;
    display: grid;
    width: 76px;
    height: 76px;
    place-items: center;
    border: 10px solid rgba(255, 255, 255, 0.65);
    border-radius: 50%;
    background: #43109b;
    box-shadow: 0 10px 28px rgba(23, 105, 237, 0.25);
    color: #fff;
    font-size: 25px;
}

.office-map-pin span {
    transform: translateY(-2px);
}

/* Address text */

.office-address-content {
    min-width: 0;
}

.office-card-label {
    display: block;
    margin-bottom: 16px;
    color: #647ca5;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.office-address-content h3 {
    margin: 0 0 17px;
    color: #151a2e;
    font-size: clamp(20px, 1.6vw, 28px);
    font-weight: 800;
    line-height: 1.3;
}

.office-address-text {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
    color: #405a82;
    font-size: 15px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.office-address-icon {
    flex-shrink: 0;
    color: #43109b;
    font-size: 21px;
}

.office-directions-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    max-width: 100%;
    margin-top: 25px;
    padding: 14px 20px;
    border: 0;
    border-radius: 50px;
    background: #330879;
    box-shadow: 0 8px 20px rgba(23, 105, 237, 0.2);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.office-directions-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 26px rgba(23, 105, 237, 0.28);
    color: #fff;
}

.office-btn-arrow {
    margin-left: 8px;
    font-size: 21px;
}

/* Why work with ITology */

.office-benefits-card > h3 {
    margin: 0 0 22px;
    color: #151a2e;
    font-size: clamp(22px, 1.8vw, 30px);
    font-weight: 800;
    line-height: 1.25;
}

.office-benefit-item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 15px;
    align-items: start;
    padding: 17px 0;
    border-bottom: 1px solid #e5edfa;
}

.office-benefit-item:first-of-type {
    padding-top: 0;
}

.office-benefit-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.office-benefit-icon {
    display: grid;
    width: 58px;
    height: 58px;
    place-items: center;
    border-radius: 50%;
    background: #e9f2ff;
    color: #43109b;
    font-size: 25px;
    font-weight: 700;
}

.office-benefit-item h4 {
    margin: 3px 0 5px;
    color: #151a2e;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.4;
}

.office-benefit-item p {
    margin: 0;
    color: #61769b;
    font-size: 14px;
    line-height: 1.55;
}

/* Business hours */

.office-hours-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    margin-top: 20px;
    padding: 17px 24px;
    border: 1px solid rgba(210, 228, 255, 0.7);
    border-radius: 19px;
    background: #f1e9ff;
    color: #405a82;
    font-size: 14px;
    line-height: 1.5;
}

.office-hours-icon {
    display: grid;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    place-items: center;
    border-radius: 50%;
    background: #f1e9ff;
    color: #43109b;
    font-size: 30px;
}

.office-hours-bar > strong {
    color: #151a2e;
    font-size: 16px;
    font-weight: 800;
}

.office-hours-bar > span:not(.office-hours-divider) {
    overflow-wrap: anywhere;
}

.office-hours-bar > span strong {
    color: #151a2e;
}

.office-hours-divider {
    width: 1px;
    height: 27px;
    background: #8ab5ff;
}

/* Tablet */

@media (max-width: 1100px) {
    .office-location-section {
        padding: 50px 0 35px;
    }

    .office-location-grid {
        grid-template-columns: 1fr;
    }

    .office-address-card {
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
    }

    .office-map-visual {
        min-height: 260px;
    }

    .office-benefits-card {
        padding: 24px;
    }

    .office-benefit-item {
        grid-template-columns: 52px minmax(0, 1fr);
    }

    .office-benefit-icon {
        width: 52px;
        height: 52px;
    }
}

/* Mobile */

@media (max-width: 600px) {
    .office-location-section {
        padding: 38px 0 28px;
    }

    .office-location-container {
        width: calc(100% - 28px);
    }

    .office-location-heading {
        margin-bottom: 20px;
    }

    .office-location-heading h2 {
        font-size: 31px;
        letter-spacing: -0.8px;
    }

    .office-location-heading p {
        font-size: 14px;
    }

    .office-address-card,
    .office-benefits-card {
        padding: 17px;
        border-radius: 18px;
    }

    .office-address-card {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .office-map-visual {
        min-height: 190px;
    }

    .office-card-label {
        margin-bottom: 10px;
    }

    .office-address-content h3 {
        font-size: 22px;
    }

    .office-address-text {
        font-size: 14px;
    }

    .office-directions-btn {
        margin-top: 18px;
        padding: 12px 17px;
    }

    .office-benefits-card > h3 {
        margin-bottom: 15px;
        font-size: 23px;
    }

    .office-benefit-item {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 12px;
        padding: 14px 0;
    }

    .office-benefit-icon {
        width: 44px;
        height: 44px;
        font-size: 21px;
    }

    .office-benefit-item h4 {
        font-size: 15px;
    }

    .office-benefit-item p {
        font-size: 13px;
    }

    .office-hours-bar {
        gap: 10px 12px;
        padding: 15px;
        border-radius: 16px;
        font-size: 13px;
    }

    .office-hours-icon {
        width: 40px;
        height: 40px;
        font-size: 25px;
    }

    .office-hours-bar > strong {
        font-size: 15px;
    }

    .office-hours-divider {
        display: none;
    }
}

/* Respect reduced-motion preferences */

@media (prefers-reduced-motion: reduce) {
    .office-directions-btn {
        transition: none;
    }
}


/* Real Google Map */
.office-location-section .office-map-visual.office-real-map {
    position: relative;
    width: 100%;
    min-height: 280px;
    height: 100%;
    overflow: hidden;
    padding: 0;
    border-radius: 17px;
    background: #eaf2fb;
}

.office-location-section .office-map-visual.office-real-map::before,
.office-location-section .office-map-visual.office-real-map::after {
    display: none;
}

.office-location-section .office-real-map iframe {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 280px;
    border: 0;
    border-radius: inherit;
}

@media (max-width: 600px) {
    .office-location-section .office-map-visual.office-real-map,
    .office-location-section .office-real-map iframe {
        height: 220px;
        min-height: 220px;
    }
}


/* Make Our Location section background white */
.office-location-section {
    background: #ffffff !important;
}

/* Remove decorative background effects if present */
.office-location-section::before,
.office-location-section::after {
    background: none !important;
}




/* FIX: WEBSITE DEVELOPMENT HERO LAYOUT */

.wd-page,
.wd-page * {
    box-sizing: border-box;
}

.wd-hero {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 125px 0 24px;
    background:
        radial-gradient(
            ellipse at 78% 35%,
            rgba(110, 65, 190, 0.10),
            transparent 42%
        ),
        linear-gradient(
            115deg,
            #ffffff 0%,
            #faf7ff 55%,
            #f1e9ff 100%
        );
}

.wd-container {
    width: min(1200px, calc(100% - 48px));
    margin: 0 auto;
}

.wd-hero-grid {
    display: grid;
    grid-template-columns: 0.92fr 1.08fr;
    align-items: center;
    gap: 35px;
}

.wd-hero-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

.wd-hero-content h1 {
    margin: 0 0 16px;
    color: #28105f;
    font-size: clamp(36px, 4vw, 58px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -1.5px;
}

.wd-hero-content h1 span {
    color: #4b16a5;
}

.wd-hero-content p {
    max-width: 490px;
    margin: 0 0 22px;
    color: #68617f;
    font-size: 15px;
    line-height: 1.7;
}





/* ===== WEBSITE DEVELOPMENT HERO FIX ===== */

.wd-page,
.wd-page * {
    box-sizing: border-box;
}

.wd-hero {
    position: relative;
    width: 100%;
    padding: 120px 0 24px;
    overflow: hidden;
    background:
        radial-gradient(
            ellipse at 78% 40%,
            rgba(110, 65, 190, 0.10),
            transparent 42%
        ),
        linear-gradient(
            115deg,
            #ffffff 0%,
            #faf7ff 55%,
            #f1e9ff 100%
        );
}

.wd-container {
    width: min(1200px, calc(100% - 48px));
    margin-inline: auto;
}

.wd-hero-grid {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;
    gap: 36px;
}

.wd-hero-content {
    min-width: 0;
    position: relative;
    z-index: 2;
}

.wd-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: #42128d;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.wd-badge i {
    width: 24px;
    height: 2px;
    background: #6b35c5;
}

.wd-hero-content h1 {
    margin: 0 0 16px;
    color: #28105f;
    font-size: clamp(38px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -1.5px;
}

.wd-hero-content h1 span {
    color: #4b16a5;
}

.wd-hero-content p {
    max-width: 490px;
    margin: 0 0 22px;
    color: #68617f;
    font-size: 15px;
    line-height: 1.75;
}

.wd-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.wd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 46px;
    padding: 12px 20px;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.wd-btn:hover {
    transform: translateY(-2px);
}

.wd-btn-primary {
    color: #fff;
    background: #330879;
    box-shadow: 0 8px 20px rgba(75, 22, 165, 0.15);
}

.wd-btn-outline {
    color: #35116f;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid #ded0f7;
}

/* RIGHT IMAGE — give the image the available width */

/* RIGHT IMAGE SECTION */
.wd-hero-visual {
    position: relative;
    width: 100%;
    min-width: 0;
    min-height: 360px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

/* IMAGE GLOW */
.wd-image-glow {
    position: absolute;
    inset: 5%;
    z-index: 0;
    border-radius: 50%;
    background: rgba(112, 75, 210, 0.13);
    filter: blur(45px);
    pointer-events: none;
}

/* IMAGE WRAPPER */
.wd-hero-image-wrap {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 360px;
    margin-left: auto;
    overflow: hidden;
    border-radius: 22px;
    background: #f8f5ff;
}

/* ACTUAL IMAGE */
.wd-hero-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: right center;
}

/* MOBILE */
@media (max-width: 767px) {
    .wd-hero-visual {
        justify-content: center;
    }

    .wd-hero-image {
        object-position: center;
    }
}


/* Floating cards overlay the image instead of taking up its space */
.wd-image-card {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 15px;
    border: 1px solid rgba(255, 255, 255, 0.9);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 10px 28px rgba(42, 20, 92, 0.13);
    color: #28105f;
    backdrop-filter: blur(10px);
}

.wd-image-card-one {
    top: 50px;
    right: -8px;
}

.wd-image-card-three {
    bottom: 18px;
    left: -8px;
}

.wd-card-icon,
.wd-marketing-dot {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    color: #fff;
    background: #4b16a5;
    font-weight: 800;
}

.wd-marketing-dot {
    flex-basis: 12px;
    width: 12px;
    height: 12px;
    border: 3px solid #e5d8ff;
    border-radius: 50%;
    background: #4b16a5;
}

.wd-image-card strong,
.wd-image-card span {
    display: block;
}

.wd-image-card strong {
    font-size: 13px;
    line-height: 1.4;
}

.wd-image-card div span,
.wd-image-card > div > span {
    margin-top: 3px;
    color: #716987;
    font-size: 11px;
    line-height: 1.4;
}

/* FEATURE STRIP */
.wd-feature-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid #e4d9f5;
}

.wd-feature {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    padding: 0 16px;
    border-right: 1px solid #e4d9f5;
}

.wd-feature:first-child {
    padding-left: 0;
}

.wd-feature:last-child {
    padding-right: 0;
    border-right: 0;
}

.wd-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    color: #4b16a5;
    background: #eee6ff;
    font-size: 21px;
}

.wd-feature strong,
.wd-feature span {
    display: block;
}

.wd-feature strong {
    margin-bottom: 5px;
    color: #28105f;
    font-size: 13px;
}

.wd-feature span {
    color: #716987;
    font-size: 11px;
    line-height: 1.6;
}

/* TABLET */
@media (max-width: 991px) {
    .wd-hero {
        padding-top: 110px;
    }

    .wd-hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 22px;
    }

    .wd-hero-image-wrap {
        height: 300px;
    }

    .wd-hero-visual {
        min-height: 300px;
    }

    .wd-image-card {
        padding: 9px 11px;
    }

    .wd-feature {
        padding-inline: 10px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .wd-hero {
        padding: 100px 0 24px;
    }

    .wd-container {
        width: calc(100% - 32px);
    }

    .wd-hero-grid {
        grid-template-columns: 1fr;
        gap: 26px;
    }

    .wd-hero-content h1 {
        font-size: clamp(34px, 9vw, 44px);
        letter-spacing: -1px;
    }

    .wd-hero-content p {
        font-size: 14px;
    }

    .wd-hero-visual {
        min-height: 260px;
    }

    .wd-hero-image-wrap {
        height: 260px;
    }

    .wd-image-card-one {
        top: 8px;
        right: 4px;
    }

    .wd-image-card-three {
        bottom: 8px;
        left: 4px;
    }

    .wd-image-card {
        padding: 8px 10px;
        gap: 7px;
    }

    .wd-image-card strong {
        font-size: 11px;
    }

    .wd-image-card div span,
    .wd-image-card > div > span {
        font-size: 10px;
    }

    .wd-feature-strip {
        grid-template-columns: 1fr 1fr;
        gap: 20px 12px;
    }

    .wd-feature,
    .wd-feature:first-child,
    .wd-feature:last-child {
        padding: 0;
        border: 0;
    }

    .wd-feature-icon {
        flex-basis: 34px;
        width: 34px;
        height: 34px;
        font-size: 17px;
    }
}

.wd-hero-visual {
    position: relative;
    background: transparent;
}

.wd-hero-image-wrap {
    width: 100%;
    height: 360px;
    overflow: hidden;
    border-radius: 24px;
    background: transparent;
}



.wd-image-glow {
    position: absolute;
    inset: -20px;
    z-index: -1;
    background: radial-gradient(
        ellipse at center,
        rgba(153, 112, 235, 0.16),
        transparent 72%
    );
    filter: blur(28px);
}

@media (max-width: 767px) {
    .wd-hero-image-wrap {
        height: 260px;
    }
}


/* =========================================
   WEBSITE DEVELOPMENT HERO ANIMATIONS
========================================= */

.wd-hero {
    overflow: hidden;
}

.wd-hero-content > * {
    opacity: 0;
    animation: wdFadeUp 0.75s ease-out forwards;
}

.wd-hero-content .wd-badge {
    animation-delay: 0.1s;
}

.wd-hero-content h1 {
    animation-name: wdFadeLeft;
    animation-delay: 0.2s;
}

.wd-hero-content p {
    animation-delay: 0.4s;
}

.wd-hero-buttons {
    animation-delay: 0.55s;
}

/* Heading accent */
.wd-hero-content h1 span {
    display: inline-block;
    color: #43109b;
    animation: wdTextReveal 0.8s ease-out 0.45s both;
}

/* =========================================
   HERO IMAGE
========================================= */

.wd-hero-image-wrap {
    animation: wdImageReveal 1s cubic-bezier(.2, .7, .2, 1) 0.2s both;
    transform-origin: center;
}



.wd-hero-visual:hover .wd-hero-image {
    transform: scale(1.035);
}

/* Soft glowing background */
.wd-image-glow {
    animation: wdGlowPulse 5s ease-in-out infinite;
    pointer-events: none;
}

/* =========================================
   FLOATING INFORMATION CARDS
========================================= */

.wd-image-card {
    opacity: 0;
    animation:
        wdFadeUp 0.7s ease-out 0.7s forwards,
        wdCardFloat 4s ease-in-out 1.4s infinite;
    transition: box-shadow 0.3s ease;
}

.wd-image-card:hover {
    box-shadow: 0 16px 40px rgba(67, 16, 155, 0.18);
}

.wd-image-card-three {
    animation-delay: 0.9s, 1.6s;
}

/* =========================================
   BUTTON HOVER ANIMATIONS
========================================= */

.wd-btn {
    position: relative;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;
}

.wd-btn:hover {
    transform: translateY(-3px);
}

.wd-btn-primary:hover {
    box-shadow: 0 10px 25px rgba(67, 16, 155, 0.22);
}

.wd-btn span {
    display: inline-block;
    transition: transform 0.3s ease;
}

.wd-btn-primary:hover span {
    transform: translate(3px, -3px);
}

.wd-btn-outline:hover span {
    transform: translateX(5px);
}

/* =========================================
   FEATURE STRIP ANIMATIONS
========================================= */

.wd-feature {
    opacity: 0;
    animation: wdFadeUp 0.7s ease-out forwards;
    transition:
        background-color 0.3s ease,
        transform 0.3s ease;
}

.wd-feature:nth-child(1) {
    animation-delay: 0.3s;
}

.wd-feature:nth-child(2) {
    animation-delay: 0.45s;
}

.wd-feature:nth-child(3) {
    animation-delay: 0.6s;
}

.wd-feature:nth-child(4) {
    animation-delay: 0.75s;
}

.wd-feature:hover {
    transform: translateY(-4px);
    background-color: #f0e8ff;
}

.wd-feature-icon {
    transition:
        transform 0.3s ease,
        background-color 0.3s ease;
}

.wd-feature:hover .wd-feature-icon {
    transform: scale(1.08);
    background-color: #e3d5ff;
}

/* =========================================
   KEYFRAMES
========================================= */

@keyframes wdFadeUp {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes wdFadeLeft {
    from {
        opacity: 0;
        transform: translateX(-35px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes wdImageReveal {
    from {
        opacity: 0;
        transform: translateX(40px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

@keyframes wdTextReveal {
    from {
        opacity: 0;
        transform: translateY(14px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes wdCardFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes wdGlowPulse {
    0%, 100% {
        opacity: 0.65;
        transform: scale(1);
    }
    50% {
        opacity: 1;
        transform: scale(1.05);
    }
}

/* =========================================
   ACCESSIBILITY
========================================= */

@media (prefers-reduced-motion: reduce) {
    .wd-hero-content > *,
    .wd-hero-content h1 span,
    .wd-hero-image-wrap,
    .wd-image-card,
    .wd-feature,
    .wd-image-glow {
        animation: none !important;
        opacity: 1;
        transform: none;
    }

    .wd-hero *,
    .wd-hero *::before,
    .wd-hero *::after {
        transition: none !important;
    }
}




/* Business Software page - image size and position */
#business-software .wd-hero-grid {
    grid-template-columns: 0.9fr 1.1fr;
    gap: 20px;
    align-items: center;
}

#business-software .wd-hero-visual {
    position: relative;
    width: 100%;
    min-width: 0;
    transform: translateY(-35px);
}

#business-software .wd-hero-image-wrap {
    width: 125%;
    max-width: none;
    margin-left: -10%;
}

#business-software .wd-hero-image {
    display: block;
    margin-top: 42px;
    padding-left: 55px;
    width: 700px;
    height: 330px;
    
   
}

/* Mobile responsive */
@media (max-width: 768px) {
    #business-software .wd-hero-grid {
        grid-template-columns: 1fr;
    }

    #business-software .wd-hero-visual {
        transform: translateY(-10px);
    }

    #business-software .wd-hero-image-wrap {
        width: 100%;
        margin-left: 0;
    }
}



/* Business Software - Floating Card Position */
#business-software .wd-image-card-three {
    position: absolute;
    left: 8%;
    right: auto;
    bottom: 5%;
    top: auto;
    z-index: 5;
    transform: translateY(0);
}

/* Keep the card compact */
#business-software .wd-image-card-three {
    padding: 12px 18px;
    border-radius: 16px;
    white-space: nowrap;
}

/* Mobile adjustment */
@media (max-width: 768px) {
    #business-software .wd-image-card-three {
        right: 0;
        bottom: 2%;
        transform: scale(0.9);
        transform-origin: bottom right;
    }
}


/* Shift 24/7 Support card slightly right */
#hosting-support .wd-image-card-three {
    left: 12%;
    right: auto;
}


/* Social Media Marketing - Right Image Size */
#social-media-marketing .wd-hero-image-wrap {
    width: 90%;
    max-width: 100%;
    margin-left: 5%;
}

#social-media-marketing .wd-hero-image {
    display: block;
    width: 520px;
    height: 350px;
}

/* Mobile */
@media (max-width: 768px) {
    #social-media-marketing .wd-hero-image-wrap {
        width: 100%;
        margin-left: 0;
    }
}


/* CRM Floating Cards Position */
#crm-development .wd-hero-visual {
    position: relative;
}

/* Top-right card */
#crm-development .wd-image-card-one {
    position: absolute;
    top: 8%;
    right: 2%;
    left: auto;
    bottom: auto;
    z-index: 5;
}

/* Bottom-left card - move slightly right */
#crm-development .wd-image-card-three {
    position: absolute;
    left: auto;
    right: 10%;
    bottom: 5%;
    top: auto;
    z-index: 5;
}

/* Mobile adjustment */
@media (max-width: 768px) {
    #crm-development .wd-image-card-one {
        top: 2%;
        right: 0;
    }

    #crm-development .wd-image-card-three {
        left: 3%;
        bottom: 0;
    }
}


/* CRM - Smarter CRM Card Position */
#crm-development .wd-image-card-one {
    position: absolute;
    top: 5%;
    right: auto;
    left: 10%;
    bottom: auto;
    z-index: 5;
}

/* Mobile */
@media (max-width: 768px) {
    #crm-development .wd-image-card-one {
        top: 2%;
        right: 0;
    }
}


/* SEO Alternating Image + Content Sections */
.seo-details-section {
    padding: 70px 24px;
    background: #fff;
    overflow: hidden;
}

.seo-details-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.seo-detail-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 65px;
    padding: 45px 0;
}

.seo-detail-row + .seo-detail-row {
    border-top: 1px solid #eee6fa;
}

.seo-detail-row-reverse .seo-detail-image {
    order: 2;
}

.seo-detail-row-reverse .seo-detail-content {
    order: 1;
}

/* Image */
.seo-detail-image {
    min-width: 0;
    padding: 18px;
    border: 1px solid #eee5fc;
    border-radius: 24px;
    background: linear-gradient(135deg, #faf7ff, #f0e7ff);
    overflow: hidden;
}

.seo-detail-image img {
    display: block;
    width: 100%;
    height: 340px;
    object-fit: contain;
    transition: transform .4s ease;
}

.seo-detail-image:hover img {
    transform: scale(1.04);
}

/* Content */
.seo-detail-content {
    min-width: 0;
}

.seo-detail-label {
    display: inline-block;
    margin-bottom: 16px;
    color: #43109b;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: 1.8px;
}

.seo-detail-content h2 {
    margin: 0 0 18px;
    color: #211047;
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1px;
}

.seo-detail-content h2 span {
    color: #5317b5;
}

.seo-detail-content p {
    margin: 0 0 20px;
    color: #6c6680;
    font-size: 15px;
    line-height: 1.85;
}

.seo-detail-list {
    display: grid;
    gap: 12px;
    margin: 0 0 25px;
    padding: 0;
    list-style: none;
}

.seo-detail-list li {
    position: relative;
    padding-left: 28px;
    color: #38304f;
    font-size: 14px;
    line-height: 1.6;
}

.seo-detail-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 1px;
    display: grid;
    place-items: center;
    width: 19px;
    height: 19px;
    border-radius: 50%;
    background: #eee5ff;
    color: #43109b;
    font-size: 12px;
    font-weight: 800;
}

.seo-detail-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #43109b;
    font-size: 14px;
    font-weight: 750;
    text-decoration: none;
}

.seo-detail-link span {
    transition: transform .25s ease;
}

.seo-detail-link:hover span {
    transform: translate(4px, -2px);
}

/* Tablet */
@media (max-width: 900px) {
    .seo-detail-row {
        gap: 32px;
    }

    .seo-detail-image img {
        height: 280px;
    }

    .seo-detail-content h2 {
        font-size: 32px;
    }
}

/* Mobile */
@media (max-width: 650px) {
    .seo-details-section {
        padding: 35px 18px;
    }

    .seo-detail-row {
        grid-template-columns: 1fr;
        gap: 25px;
        padding: 30px 0;
    }

    .seo-detail-row-reverse .seo-detail-image,
    .seo-detail-row-reverse .seo-detail-content {
        order: initial;
    }

    .seo-detail-image {
        padding: 12px;
        border-radius: 18px;
    }

    .seo-detail-image img {
        height: 230px;
    }

    .seo-detail-content h2 {
        font-size: 29px;
    }

    .seo-detail-content p {
        font-size: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .seo-detail-image img,
    .seo-detail-link span {
        transition: none;
    }
}

.client-logo {
  width: 284px;
  height: 120px;
  background-color: var(--tj-color-common-white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 5;
  border-radius: 8px;

  /* Box border */
  border: 1px solid #3b0b83;

  /* Box shadow */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* =========================================
   TESTIMONIAL SLIDER — PREMIUM PURPLE
========================================= */

.testimonial-slider-section {
  position: relative;
  width: 100%;
  padding: 30px 0;
  overflow: hidden;
  box-sizing: border-box;
}

.testimonial-slider {
  width: 100%;
  overflow: hidden;
}

.testimonial-track {
  display: flex;
  align-items: stretch;
  gap: 18px;
  width: 100%;
  transition: transform 0.45s ease-in-out;
  will-change: transform;
}

.testimonial-slide {
  display: flex;
  flex: 0 0 calc((100% - 36px) / 3);
  min-width: 0;
  box-sizing: border-box;
}

.testimonial-slide .client-testimonial {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 190px;
  padding: 24px 20px;
  overflow: hidden;
  box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 16px;
  color: #fff;
  background:
    radial-gradient(
      circle at 100% 100%,
      rgba(153, 105, 255, 0.48),
      transparent 38%
    ),
    linear-gradient(135deg, #5425a8 0%, #321064 58%, #20083f 100%);
  box-shadow: 0 10px 28px rgba(61, 25, 111, 0.16);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.testimonial-slide .client-testimonial:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(61, 25, 111, 0.24);
}

/* Decorative quote */
.testimonial-quote {
  position: absolute;
  top: 5px;
  left: 12px;
  color: rgba(211, 190, 255, 0.35);
  font-size: 48px;
  font-weight: 800;
  line-height: 1;
}

/* Client image */
.testimonial-profile {
  position: relative;
  z-index: 1;
  flex: 0 0 60px;
}

.testimonial-profile img {
  display: block;
  width: 60px;
  height: 60px;
  object-fit: cover;
  border: 2px solid rgba(255, 255, 255, 0.85);
  border-radius: 50%;
}

/* Testimonial content */
.testimonial-content {
  position: relative;
  z-index: 1;
  flex: 1;
  min-width: 0;
}

.testimonial-content p {
  margin: 0 0 12px;
  color: #f0eaff;
  font-size: 11px;
  line-height: 1.65;
}

.testimonial-content h4 {
  margin: 0 0 3px;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
}

.testimonial-content span {
  display: block;
  color: #d9c8ff;
  font-size: 10px;
  line-height: 1.5;
}

.testimonial-stars {
  margin-top: 6px;
  color: #ffd75e;
  font-size: 14px;
  letter-spacing: 1px;
}

/* Slider controls */
.testimonial-controls {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin-top: 22px;
}

.testimonial-controls button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 1px solid #e1d5f5;
  border-radius: 50%;
  background: #fff;
  color: #5425a8;
  font-size: 20px;
  cursor: pointer;
  transition:
    background 0.25s ease,
    color 0.25s ease;
}

.testimonial-controls button:hover:not(:disabled) {
  background: #5425a8;
  color: #fff;
}

.testimonial-controls button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

/* Slider dots */
.testimonial-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

.testimonial-dot {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #d7c8ef;
  cursor: pointer;
  transition: all 0.25s ease;
}

.testimonial-dot.active {
  width: 20px;
  border-radius: 8px;
  background: #5425a8;
}

/* Tablet: 2 cards */
@media (max-width: 900px) {
  .testimonial-slide {
    flex-basis: calc((100% - 18px) / 2);
  }

  .testimonial-slide .client-testimonial {
    padding: 20px 16px;
  }
}

/* Mobile: 1 card */
@media (max-width: 560px) {
  .testimonial-slider-section {
    padding: 20px 0;
  }

  .testimonial-track {
    gap: 14px;
  }

  .testimonial-slide {
    flex-basis: 100%;
  }

  .testimonial-slide .client-testimonial {
    min-height:
    
    
    
    
     170px;
    padding: 24px 18px;
    gap: 14px;
  }

  .testimonial-profile {
    flex-basis: 58px;
  }

  .testimonial-profile img {
    width: 58px;
    height: 58px;
  }

  .testimonial-content p {
    font-size: 12px;
  }

  .testimonial-content h4 {
    font-size: 13px;
  }

  .testimonial-content span {
    font-size: 11px;
  }
}


/* =========================================
   MISSION & VISION — COMPACT BOX HEIGHT
   Keeps your existing purple premium design
========================================= */

.mission-vision-section {
  padding: 65px 0;
}

.mission-vision-heading {
  margin-bottom: 35px;
}

.mission-vision-heading h2 {
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.12;
  letter-spacing: -2px;
}

/* Compact cards */
.mission-card,
.vision-card {
  min-height: 0;
  padding: 26px 30px;
  border-radius: 20px;
}

/* Reduce top row spacing */
.mv-top {
  padding-bottom: 16px;
}

/* Reduce space above the icon and content */
.mv-content {
  padding-top: 24px;
}

/* Smaller icon */
.mv-icon {
  width: 54px;
  height: 54px;
  margin-bottom: 18px;
  border-radius: 15px;
  font-size: 23px;
}

/* Keep the content above decorative backgrounds */
.mission-card .mv-top,
.vision-card .mv-top,
.mission-card .mv-content,
.vision-card .mv-content {
  position: relative;
  z-index: 2;
}

/* Moderate hover effect */
.mission-card:hover,
.vision-card:hover {
  transform: translateY(-5px);
}

/* Tablet */
@media (max-width: 768px) {
  .mission-vision-section {
    padding: 50px 0;
  }

  .mission-vision-grid {
    gap: 16px;
  }

  .mission-card,
  .vision-card {
    padding: 22px;
  }

  .mv-content {
    padding-top: 20px;
  }

  .mv-icon {
    width: 48px;
    height: 48px;
    margin-bottom: 15px;
    font-size: 21px;
  }
}

/* Mobile */
@media (max-width: 560px) {
  .mission-vision-section {
    padding: 40px 0;
  }

  .mission-vision-heading {
    margin-bottom: 25px;
  }

  .mission-vision-heading h2 {
    font-size: 34px;
    letter-spacing: -1.5px;
  }

  .mission-vision-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .mission-card,
  .vision-card {
    padding: 22px;
    border-radius: 17px;
  }

  .mv-top {
    padding-bottom: 14px;
  }

  .mv-content {
    padding-top: 20px;
  }
}

/* =====================================
   ITOLOGY - LEADERSHIP & FOUNDERS
===================================== */

.section#leadership {
  padding: 90px 0;
  background: #f7f8fc;
  overflow: hidden;
}

#leadership .container {
  width: min(1160px, 90%);
  margin: 0 auto;
}

/* Section Heading */

#leadership .center-heading {
  max-width: 750px;
  margin: 0 auto 48px;
  text-align: center;
}

#leadership .eyebrow {
  display: inline-block;
  margin-bottom: 14px;
  color: #21103a;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
}

#leadership .section-title {
  margin: 0 0 18px;
  color: #241535;
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -1.4px;
}

#leadership .section-title .highlight {
  color: #330879;
}

#leadership .section-text {
  max-width: 620px;
  margin: 0 auto;
  color: #686b7b;
  font-size: 15px;
  line-height: 1.8;
}

/* Leadership Grid */

#leadership .leader-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  align-items: stretch;
}

/* Individual Card */

#leadership .leader-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e7e8f1;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 25px rgba(35, 20, 65, 0.04);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

#leadership .leader-card:hover {
  transform: translateY(-8px);
  border-color: #cbd4ff;
  box-shadow: 0 20px 45px rgba(41, 73, 216, 0.12);
}

/* Portrait */

#leadership .leader-card > img {
  display: block;
  width: 100%;
  height: 330px;
  object-fit: cover;
  object-position: center top;
  background: #ececf7;
  transition: transform 0.45s ease;
}

#leadership .leader-card:hover > img {
  transform: scale(1.035);
}

/* Image Bottom Accent */

#leadership .leader-card::before {
  position: absolute;
  z-index: 1;
  top: 322px;
  left: 0;
  width: 65px;
  height: 4px;
  background: linear-gradient(90deg, #35105d, #2949d8);
  content: "";
}

/* Card Content */

#leadership .leader-info {
  padding: 25px 23px 28px;
}

#leadership .leader-info h3 {
  margin: 0 0 10px;
  color: #241535;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

#leadership .leader-role {
  display: inline-block;
  margin-bottom: 15px;
  padding: 6px 11px;
  border-radius: 4px;
  background: #eeedff;
  color: #35105d;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.8px;
  line-height: 1.5;
  text-transform: uppercase;
}

#leadership .leader-info p {
  margin: 0;
  color: #686b7b;
  font-size: 14px;
  line-height: 1.8;
}

/* Tablet */

@media (max-width: 900px) {
  .section#leadership {
    padding: 70px 0;
  }

  #leadership .leader-grid {
    gap: 18px;
  }

  #leadership .leader-card > img {
    height: 270px;
  }

  #leadership .leader-card::before {
    top: 262px;
  }

  #leadership .leader-info {
    padding: 22px 17px 24px;
  }

  #leadership .leader-info h3 {
    font-size: 18px;
  }
}

/* Mobile */

@media (max-width: 600px) {
  .section#leadership {
    padding: 55px 0;
  }

  #leadership .container {
    width: 90%;
  }

  #leadership .center-heading {
    margin-bottom: 32px;
  }

  #leadership .section-title {
    font-size: 32px;
    letter-spacing: -0.8px;
  }

  #leadership .section-text {
    font-size: 14px;
  }

  #leadership .leader-grid {
    grid-template-columns: 1fr;
    gap: 22px;
    max-width: 390px;
    margin: 0 auto;
  }

  #leadership .leader-card > img {
    height: 340px;
  }

  #leadership .leader-card::before {
    top: 332px;
  }

  #leadership .leader-info {
    padding: 24px;
  }

  #leadership .leader-info h3 {
    font-size: 20px;
  }
}

/* Reduced Motion */

@media (prefers-reduced-motion: reduce) {
  #leadership .leader-card,
  #leadership .leader-card > img {
    transition: none;
  }
}




/* Reduce space between About Us and Our Process */

.about-us {
    margin-bottom: 0 !important;
    padding-bottom: 40px !important;
}

.it-process-section {
    margin-top: 0 !important;
    padding-top: 70px !important;
}

/* Tablet */
@media (max-width: 991px) {
    .about-us {
        padding-bottom: 35px !important;
    }

    .it-process-section {
        padding-top: 50px !important;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .about-us {
        padding-bottom: 25px !important;
    }

    .it-process-section {
        padding-top: 35px !important;
    }
}


/* Reduce space around Our Clients section */

.tj-client-section.client-section-gap-2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}

/* Client carousel */
.tj-client-section .client-slider {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Mobile spacing */
@media (max-width: 575px) {
    .tj-client-section.client-section-gap-2 {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
}





/* ==========================================
   ITLOGY SUCCESS STORIES - 3 COLUMN GRID
   Original Purple, Lavender & White Theme
========================================== */

.seo-stories {
    padding: 55px 20px;
    background: #f8f7fb;
    font-family: Arial, sans-serif;
    color: #302342;
}

.seo-stories * {
    box-sizing: border-box;
}

.seo-stories-container {
    max-width: 1250px;
    margin: auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 25px;
    row-gap: 12px;
}

/* HEADING */

/* HEADING */
.seo-main-heading {
    grid-column: 1 / -1;
    text-align: center;
    max-width: 800px;
    margin: 0 auto !important;
    padding: 0 !important;
    height: auto;
    min-height: 0;
}
.seo-main-heading > span {
    display: inline-block;
    padding: 9px 18px;
    background: #eee8f6;
    color: #3b0b83;
    border-radius: 30px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.seo-main-heading h2 {
    color: #302342;
    font-size: clamp(32px, 4vw, 48px);
    margin: 12px 0;
    line-height: 1.2;
    font-weight: 800;
}

.seo-main-heading h2 strong {
    color: #3b0b83;
}

.seo-main-heading p {
    color: #777080;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}
/* STORY CARD */

.seo-story {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 27px 23px;
    margin: 0;
    background: #fff;
    border: 1px solid #e9e1f1;
    border-radius: 16px;
    box-shadow: 0 5px 22px rgba(57, 35, 85, .045);
    transition: transform .3s ease, box-shadow .3s ease;
}

.seo-story:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 32px rgba(57, 35, 85, .11);
    border-color: #cbb5e6;
}

/* TOP */

.story-top {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;
}

.story-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 12px;
    background: #3b0b83;
    color: #fff;
    font-size: 19px;
    font-weight: 800;
}

.story-category {
    color: #8051b5;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    line-height: 1.6;
}

/* TITLE */

.seo-story > h2 {
    color: #302342;
    font-size: 21px;
    line-height: 1.45;
    font-weight: 750;
    margin: 0 0 15px;
    min-height: 90px;
}

/* SHORT PREVIEW */

.story-preview {
    flex: 1;
    margin-bottom: 22px;
}

.story-preview p {
    color: #777080;
    font-size: 14px;
    line-height: 1.8;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* VIEW MORE BUTTON */

.story-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 13px 18px;
    margin-top: auto;
    border: 1px solid #3b0b83;
    border-radius: 8px;
    background: #3b0b83;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.story-toggle:hover {
    background: #8051b5;
    border-color: #8051b5;
}

.story-toggle .toggle-icon {
    font-size: 19px;
    line-height: 1;
}

/* EXPANDED CONTENT */

.story-details {
    padding-top: 22px;
    margin-top: 20px;
    border-top: 1px solid #e9e1f1;
}

.story-details[hidden] {
    display: none !important;
}

.story-details h3 {
    color: #302342;
    font-size: 17px;
    margin: 0 0 10px;
}

.story-details p,
.story-details li {
    color: #716a7a;
    font-size: 13px;
    line-height: 1.8;
}

/* INNER SECTIONS */

.story-details .story-partnership,
.story-details .story-challenge,
.story-details .cnc-challenge,
.story-details .cnc-transformation,
.story-details .nameplate-intro,
.story-details .story-proof {
    padding: 18px;
    margin: 15px 0;
    background: #f8f5fc;
    border-left: 3px solid #8051b5;
}

.story-details .story-trust,
.story-details .story-highlight,
.story-details .cnc-results,
.story-details .story-milestone,
.story-details .nameplate-journey {
    padding: 20px;
    margin: 18px 0;
    background: #302342;
    border-radius: 10px;
}

.story-details .story-trust h3,
.story-details .story-highlight h3,
.story-details .cnc-results h3,
.story-details .story-milestone h3 {
    color: #fff;
}

.story-details .story-trust p,
.story-details .story-highlight p,
.story-details .cnc-results p,
.story-details .story-milestone p {
    color: #eee7f5;
}

/* RESULT GRID */

.story-details .story-result-grid,
.story-details .cnc-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 15px;
}

.story-details .result-item,
.story-details .cnc-result {
    min-width: 0;
    padding: 16px;
    background: #f3eef9;
    border-radius: 9px;
    border: 0;
}

.story-details .result-item strong,
.story-details .cnc-result strong {
    display: block;
    color: #3b0b83;
    font-size: 26px;
    margin-bottom: 8px;
}

.story-details .result-item p {
    margin: 0;
    font-size: 12px;
}

.story-details .story-highlight .result-item {
    background: rgba(255,255,255,.09);
}

.story-details .story-highlight .result-item strong,
.story-details .cnc-results .cnc-result strong {
    color: #d7b7fa;
}

.story-details .story-highlight .result-item p {
    color: #eee7f5;
}

/* TIMELINE */

.story-details .marine-timeline {
    margin: 20px 0 20px 15px;
    border-left: 2px solid #e5d8f2;
}

.story-details .timeline-item {
    position: relative;
    padding: 0 0 22px 25px;
}

.story-details .timeline-number {
    position: absolute;
    left: -17px;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #3b0b83;
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
}

.story-details .timeline-item > div {
    padding-left: 15px;
}

.story-details .marine-client,
.story-details .cnc-location,
.story-details .service-location,
.story-details .nameplate-location {
    padding: 17px;
    margin: 12px 0;
    background: #eee8f6;
    border-radius: 8px;
}

/* OTHER STORY LAYOUTS */

.story-details .story-two-grid,
.story-details .story-client-info,
.story-details .steel-layout,
.story-details .steel-content,
.story-details .evolution-points,
.story-details .service-journey {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 15px 0;
}

.story-details .story-client-info > div,
.story-details .steel-item,
.story-details .evolution-points > div,
.story-details .service-step {
    padding: 16px;
    background: #f8f5fc;
    border-radius: 9px;
}

.story-details .steel-location {
    padding: 20px;
    background: #302342;
    border-radius: 9px;
}

.story-details .steel-location h3 {
    color: #fff;
}

.story-details .service-breakthrough {
    grid-column: 1 / -1;
    padding: 20px;
    background: #302342;
    border-radius: 9px;
}

.story-details .service-breakthrough h3,
.story-details .service-breakthrough p {
    color: #fff;
}

.story-details .service-breakthrough strong {
    display: block;
    color: #d7b7fa;
    font-size: 35px;
}

.story-details .nameplate-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.story-details .nameplate-result {
    padding: 15px;
    background: #eee8f6;
    border-radius: 9px;
}

.story-details .nameplate-result strong,
.story-details .nameplate-result span {
    color: #3b0b83;
}

/* STORY ENDING */

.story-details .story-ending {
    padding: 17px;
    margin-top: 18px;
    background: #eee8f6;
    border-left: 4px solid #8051b5;
    border-radius: 6px;
    color: #50346f;
    font-size: 13px;
    line-height: 1.8;
}

.story-details .story-ending strong {
    display: block;
    margin-top: 8px;
}

/* EXPANDED CARD */

.seo-story.is-expanded {
    grid-column: span 1;
    border-color: #8051b5;
    box-shadow: 0 10px 35px rgba(57, 35, 85, .10);
}

.seo-story.is-expanded .story-preview {
    display: none;
}

/* TABLET - 2 COLUMNS */

@media(max-width: 991px) {
    .seo-stories-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .seo-story > h2 {
        font-size: 20px;
    }
}

/* MOBILE - 1 COLUMN */

@media(max-width: 600px) {
    .seo-stories {
        padding: 55px 14px;
    }

    .seo-stories-container {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    

    .seo-main-heading h2 {
        font-size: 30px;
    }

    .seo-story {
        padding: 23px 18px;
    }

    .seo-story > h2 {
        min-height: auto;
        font-size: 21px;
    }

    .story-details .story-two-grid,
    .story-details .story-client-info,
    .story-details .steel-layout,
    .story-details .steel-content,
    .story-details .evolution-points,
    .story-details .service-journey {
        grid-template-columns: 1fr;
    }

    .story-details .service-breakthrough {
        grid-column: auto;
    }
}


/* FIX: Expand only the clicked story card */

.seo-stories-container {
    align-items: start !important;
    grid-auto-rows: min-content;
}

.seo-story {
    align-self: start !important;
    height: fit-content !important;
    min-height: 0;
}

/* Keep expanded card independent */
.seo-story.is-expanded {
    align-self: start !important;
    height: fit-content !important;
    grid-column: span 1 !important;
}

/* Prevent other cards from stretching */
.seo-story:not(.is-expanded) {
    height: fit-content !important;
}

/* Expanded content */
.story-details[hidden] {
    display: none !important;
}


/* =====================================
   SUCCESS STORY POPUP MODAL
===================================== */

.story-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 25px;
    background: rgba(25, 15, 40, .65);
    backdrop-filter: blur(5px);
}

.story-modal-overlay.is-open {
    display: flex;
    animation: modalFadeIn .25s ease;
}

.story-modal {
    position: relative;
    width: 100%;
    max-width: 900px;
    max-height: 88vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 25px 80px rgba(0,0,0,.25);
    animation: modalSlideIn .3s ease;
}

/* MODAL HEADER */

.story-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 30px;
    background: #3b0b83;
    color: #fff;
}

.story-modal-heading {
    min-width: 0;
}

.story-modal-heading span {
    display: block;
    margin-bottom: 6px;
    color: #d9c4f4;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.story-modal-heading h2 {
    margin: 0;
    color: #fff;
    font-size: 21px;
    line-height: 1.4;
}

.story-modal-close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    border: 1px solid rgba(255,255,255,.4);
    border-radius: 50%;
    background: transparent;
    color: #fff;
    font-size: 25px;
    cursor: pointer;
    transition: .25s ease;
}

.story-modal-close:hover {
    background: #fff;
    color: #3b0b83;
    transform: rotate(90deg);
}

/* MODAL CONTENT */

.story-modal-body {
    padding: 30px;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.story-modal-body .story-details {
    display: block !important;
    padding: 0;
    margin: 0;
    border: 0;
}

.story-modal-body .story-details h3 {
    font-size: 19px;
}

.story-modal-body .story-details p,
.story-modal-body .story-details li {
    font-size: 14px;
    line-height: 1.9;
}

/* MODAL INNER CONTENT */

.story-modal-body .story-result-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.story-modal-body .story-two-grid,
.story-modal-body .steel-content,
.story-modal-body .evolution-points,
.story-modal-body .service-journey {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* ANIMATIONS */

@keyframes modalFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: translateY(25px) scale(.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* RESPONSIVE MODAL */

@media(max-width: 600px) {
    .story-modal-overlay {
        padding: 10px;
    }

    .story-modal {
        max-height: 92vh;
        border-radius: 13px;
    }

    .story-modal-header {
        padding: 17px;
    }

    .story-modal-heading h2 {
        font-size: 17px;
    }

    .story-modal-body {
        padding: 20px 16px;
    }

    .story-modal-body .story-result-grid,
    .story-modal-body .story-two-grid,
    .story-modal-body .steel-content,
    .story-modal-body .evolution-points,
    .story-modal-body .service-journey {
        grid-template-columns: 1fr;
    }
}


/* =================================
   ALL SUCCESS STORY BOXES SAME SIZE
================================= */

.seo-stories-container {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch !important;
    grid-auto-rows: 1fr;
    gap: 25px;
}

.seo-story {
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    width: 100%;
    height: 100% !important;
    min-height: 340px;
    box-sizing: border-box;
}

.seo-story > h2 {
    min-height: 90px;
}

.story-preview {
    flex: 1 1 auto;
    min-height: 90px;
}

.story-toggle {
    margin-top: auto !important;
    flex-shrink: 0;
}

/* Tablet */
@media (max-width: 991px) {
    .seo-stories-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 600px) {
    .seo-stories-container {
        grid-template-columns: 1fr;
    }
}

.footer-logo-img{
  max-width: 66%;
}

/* ABOUT OUR STORY */
.about-our-story {
    padding: 75px 0;
    background: #f8f9fc;
}

.about-story-container {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.3fr 0.7fr;
    gap: 55px;
    align-items: center;
}

.about-story-label {
    display: inline-block;
    color: #21103a;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 15px;
}

.about-story-content h2 {
    font-size: 36px;
    line-height: 1.3;
    color: #20243a;
    margin-bottom: 20px;
    font-weight: 700;
}

.about-story-content h2 span {
    color: #21103a;
}

.about-story-content p {
    font-size: 15px;
    line-height: 1.8;
    color: #626779;
    margin-bottom: 15px;
}

.about-story-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 15px;
    padding: 13px 22px;
    background: #21103a;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: 0.3s ease;
}

.about-story-btn:hover {
    background: #5634b5;
    color: #fff;
    transform: translateY(-2px);
}

.about-story-highlight {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.about-highlight-card {
    padding: 28px;
    background: #fff;
    border: 1px solid #eee9fa;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(40, 30, 80, 0.06);
}

.about-highlight-number {
    display: block;
    font-size: 38px;
    font-weight: 800;
    color: #21103a;
    margin-bottom: 8px;
}

.about-highlight-card h3 {
    font-size: 18px;
    color: #20243a;
    margin-bottom: 8px;
}

.about-highlight-card p {
    font-size: 14px;
    line-height: 1.6;
    color: #737789;
    margin: 0;
}

/* RESPONSIVE */
@media (max-width: 767px) {
    .about-our-story {
        padding: 50px 0;
    }

    .about-story-container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .about-story-content h2 {
        font-size: 28px;
    }

    .about-highlight-card {
        padding: 22px;
    }
}

#our-story .seo-section-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 40px;
}

#our-story .seo-section-heading h2 {
    font-size: 36px;
    line-height: 1.3;
    margin-bottom: 15px;
}

#our-story .seo-section-heading p {
    max-width: 750px;
    margin: 0 auto;
}

#our-story .seo-service-grid {
    margin-top: 30px;
}

/* OUR STORY BOTTOM CONTENT */
#our-story .center-heading {
    margin-top: 20px !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    text-align: center;
}

#our-story .center-heading .section-text {
    margin: 0 auto 12px;
    text-align: center;
}

#our-story .about-story-btn {
    margin: 0 auto;
    display: inline-flex;
}

/* REDUCE SECTION BOTTOM SPACE */
#our-story {
    padding-bottom: 45px;
    margin-bottom: 0;
}

/* FIX SUCCESS STORIES HEADING-TO-CARDS GAP */

.seo-stories .seo-stories-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 0 !important;
    align-content: start !important;
    grid-auto-rows: min-content !important;
}

.seo-stories .seo-main-heading {
    grid-column: 1 / -1;
    width: 100%;
    max-width: 800px;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto 15px !important;
    padding: 0 !important;
}

.seo-stories .seo-main-heading h2 {
    margin: 10px 0 !important;
}

.seo-stories .seo-main-heading p {
    margin: 0 !important;
    padding: 0 !important;
}

.seo-stories .seo-stories-container > .seo-story {
    margin-top: 0 !important;
    align-self: start !important;
}

@media (max-width: 991px) {
    .seo-stories .seo-stories-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .seo-stories .seo-stories-container {
        grid-template-columns: 1fr;
    }
}

/* =================================
   BUSINESS GROWTH CTA
================================= */

.growth-cta-section {
    padding: 45px 20px;
    background: #f8f6fc;
}

.growth-cta-container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1150px;
    min-height: 285px;
    margin: auto;
    padding: 35px 55px;
    overflow: hidden;
    border-radius: 25px;
    border: 1px solid rgba(255,255,255,.9);
    background: linear-gradient(
        110deg,
        #ffffff 0%,
        #f5edff 48%,
        #d8c2fa 100%
    );
    box-shadow: 0 15px 40px rgba(75, 35, 130, .10);
}

/* LEFT CONTENT */

.growth-cta-content {
    position: relative;
    z-index: 3;
    width: 58%;
}

.growth-cta-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.growth-cta-eyebrow span {
    color: #6025a8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.growth-cta-eyebrow i {
    width: 55px;
    height: 1px;
    background: #9b83b7;
}

.growth-cta-content h2 {
    margin: 0 0 12px;
    color: #21162e;
    font-size: clamp(30px, 3.2vw, 42px);
    font-weight: 800;
    line-height: 1.13;
    letter-spacing: -1.2px;
}

.growth-cta-content h2 span {
    display: block;
}

.growth-cta-content h2 strong {
    color: #6824b4;
}

.growth-cta-content p {
    max-width: 480px;
    margin: 0 0 20px;
    color: #655d70;
    font-size: 13px;
    line-height: 1.75;
}

/* BUTTON */

.growth-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding: 6px 7px 6px 20px;
    border-radius: 50px;
    background: linear-gradient(120deg, #7935c5, #48118d);
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    box-shadow: 0 7px 18px rgba(93, 34, 160, .22);
    transition: .3s ease;
}

.growth-cta-btn:hover {
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 12px 22px rgba(93, 34, 160, .3);
}

.growth-cta-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #fff;
    color: #6121a5;
    font-size: 19px;
    transition: .3s ease;
}

.growth-cta-btn:hover .growth-cta-arrow {
    transform: rotate(45deg);
}

/* RIGHT VISUAL */

.growth-cta-visual {
    position: absolute;
    top: 0;
    right: 0;
    width: 46%;
    height: 100%;
    overflow: hidden;
}

.growth-visual-glow {
    position: absolute;
    width: 280px;
    height: 280px;
    top: 0;
    right: 25px;
    border-radius: 50%;
    background: rgba(159, 105, 229, .18);
    filter: blur(45px);
}

/* FLOATING ICONS */

.growth-floating-icon {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 12px;
    background: rgba(255,255,255,.65);
    color: #6425a7;
    font-size: 19px;
    box-shadow: 0 8px 20px rgba(79, 38, 125, .10);
    backdrop-filter: blur(8px);
}

.target-icon {
    top: 35px;
    left: 35%;
}

.marketing-icon {
    top: 105px;
    left: 12%;
}

.chart-icon {
    top: 45px;
    right: 13%;
}

/* GROWTH BARS */

.growth-chart {
    position: absolute;
    width: 300px;
    height: 180px;
    right: 35px;
    bottom: 22px;
}

.growth-bar {
    position: absolute;
    bottom: 0;
    width: 47px;
    border: 1px solid rgba(255,255,255,.8);
    border-radius: 8px 8px 3px 3px;
    background: linear-gradient(
        180deg,
        rgba(190, 151, 244, .65),
        rgba(105, 42, 181, .9)
    );
    box-shadow: 0 8px 20px rgba(87, 37, 146, .12);
}

.bar-one {
    height: 65px;
    left: 75px;
}

.bar-two {
    height: 100px;
    left: 135px;
}

.bar-three {
    height: 140px;
    left: 195px;
}

/* GROWTH ARROW */

.growth-arrow-svg {
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0;
    z-index: 2;
    overflow: visible;
}

/* BOTTOM WAVE */

.growth-wave {
    position: absolute;
    width: 120%;
    height: 80px;
    bottom: -65px;
    left: -10%;
    border: 1px solid rgba(255,255,255,.7);
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    transform: rotate(-7deg);
}

/* TABLET */

@media (max-width: 991px) {
    .growth-cta-container {
        padding: 35px;
    }

    .growth-cta-content {
        width: 65%;
    }

    .growth-cta-visual {
        width: 42%;
        opacity: .8;
    }

    .growth-chart {
        right: -40px;
        transform: scale(.85);
        transform-origin: bottom right;
    }
}

/* MOBILE */

@media (max-width: 600px) {
    .growth-cta-section {
        padding: 30px 14px;
    }

    .growth-cta-container {
        min-height: 260px;
        padding: 30px 22px;
        border-radius: 18px;
    }

    .growth-cta-content {
        width: 100%;
    }

    .growth-cta-content h2 {
        font-size: 29px;
        letter-spacing: -.7px;
    }

    .growth-cta-content p {
        max-width: 100%;
        font-size: 12px;
    }

    .growth-cta-visual {
        width: 100%;
        opacity: .18;
    }

    .growth-chart {
        right: -90px;
        bottom: 0;
        transform: scale(.75);
        transform-origin: bottom right;
    }

    .growth-floating-icon {
        display: none;
    }
}

/* REMOVE EXTRA SPACE BETWEEN CTA AND FOOTER */

.growth-cta-section {
    padding-bottom: 15px !important;
    margin-bottom: 0 !important;
}

footer {
    margin-top: 0 !important;
    padding-top: 35px !important;
}

/* REMOVE EXTRA TOP SPACE IN FOOTER */
footer .footer-top,
footer .footer-main {
    margin-top: 0 !important;
    padding-top: 25px !important;
}

/* MOBILE */
@media (max-width: 767px) {
    .growth-cta-section {
        padding-bottom: 10px !important;
    }

    footer {
        padding-top: 25px !important;
    }
}

/* REMOVE BOTH SIDE SPACES FROM STICKY NAVBAR */
.header-area.header-duplicate.section-gap-x {
    position: fixed !important;
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    inset-inline-start: 0 !important;
    inset-inline-end: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-inline: 0 !important;
    border-radius: 0 0 12px 12px;
    box-sizing: border-box;
}

/* KEEP INNER CONTENT RESPONSIVE */
.header-area.header-duplicate > .container-fluid {
    width: 100%;
    max-width: 100%;
}


/* ==========================================
   GLOBAL WEBSITE TYPOGRAPHY
   Headings: Mona Sans
   Other Text: Arial
   ========================================== */


/* 1. LOAD MONA SANS FONT */

@font-face {
    font-family: 'Mona Sans';
    src: url('../fonts/MonaSans.woff2') format('woff2');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}


/* 2. DEFAULT WEBSITE FONT - ARIAL */

body {
    font-family: Arial, Helvetica, sans-serif !important;
}


/* 3. ALL HEADINGS - MONA SANS */

h1,
h2,
h3,
h4,
h5,
h6,
h1 *,
h2 *,
h3 *,
h4 *,
h5 *,
h6 * {
    font-family: 'Mona Sans', sans-serif !important;
}


/* 4. PARAGRAPHS - ARIAL */

p {
    font-family: Arial, Helvetica, sans-serif !important;
}


/* 5. NAVIGATION, BUTTONS AND OTHER TEXT - ARIAL */

a,
li,
button,
input,
textarea,
select,
label,
small,
blockquote,
figcaption {
    font-family: Arial, Helvetica, sans-serif !important;
}


/* =====================================
   NAVBAR LEFT & RIGHT SPACING
===================================== */

.header-area.header-1.header-absolute.section-gap-x {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.header-area.header-1 .header-wrapper {
  padding-left: 10px;
  padding-right: 10px;
  width: 100%;
}

/* Logo */
.header-area.header-1 .site_logo {
  margin-left: 0;
}

/* Right Side */
.header-area.header-1 .header-right-item {
  margin-right: 0;
}

/* Desktop */
@media (min-width: 992px) {
  .header-area.header-1.header-absolute {
    width: 100%;
  }
}