/*------------ off canvas ---------------- */
/* ---------------------------------------------------------
    * Name: 
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

    * section

    * dashboard

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.offcanvas-backdrop,
.overlay-popup {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden;
  position: fixed;
  background: rgba(0, 0, 0, 0.7019607843);
  opacity: 0.7;
  backdrop-filter: blur(10px);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.offcanvas-backdrop.show,
.overlay-popup.show {
  opacity: 1;
  visibility: visible;
  z-index: 998;
}

.offcanvas .close-menu {
  font-size: 24px;
  color: var(--Text-light);
  cursor: pointer;
  padding: 4px;
}
.offcanvas .offcanvas-body::-webkit-scrollbar {
  width: 3px;
}
.offcanvas .offcanvas-body::-webkit-scrollbar-thumb {
  background: var(--Primary);
  border-radius: 999px;
}

.tf-sidebar-menu {
  max-width: 324px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background: var(--Bg-dark);
}
.tf-sidebar-menu .offcanvas-header {
  padding: 24px 15px;
}
.tf-sidebar-menu .tag-heading {
  color: var(--Text-light);
}
.tf-sidebar-menu .sidebar-menu-inner {
  padding: 40px 30px;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.tf-sidebar-menu .sidebar-menu-inner::-webkit-scrollbar {
  width: 0;
}
.tf-sidebar-menu .sidebar-heading {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
  align-items: flex-end;
}
.tf-sidebar-menu .sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-left: 10px;
  margin-bottom: 80px;
}
.tf-sidebar-menu .sidebar-nav a {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: start;
  color: var(--Text-light);
}
.tf-sidebar-menu .sidebar-nav a .icon {
  font-size: 24px;
}
.tf-sidebar-menu .sidebar-nav a.active, .tf-sidebar-menu .sidebar-nav a:hover {
  color: var(--Primary);
}
.tf-sidebar-menu .sidebar-social .heading {
  margin-bottom: 24px;
}

.popup-show-bar {
  background-color: transparent;
  transition: transform 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
  transform: translateY(100%);
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  padding-right: 15px;
  padding-left: 15px;
  width: 1500px;
  max-width: 100%;
  z-index: 999;
}
.popup-show-bar .header-sidebar {
  background: linear-gradient(123.51deg, rgba(215, 237, 237, 0.1) -61.8%, rgba(204, 235, 235, 0.01) 100%);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1019607843);
}
.popup-show-bar .nav-menu .submenu {
  bottom: 100%;
}
.popup-show-bar.show {
  transform: translateY(-20px);
}

.popup-menu-mobile {
  position: absolute;
  background-color: rgba(18, 18, 18, 0.8);
  backdrop-filter: blur(12px);
  left: 0;
  right: 0;
  top: 100%;
  z-index: 999;
  margin-top: 30px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.popup-menu-mobile .nav-menu {
  display: block !important;
}
.popup-menu-mobile.show {
  opacity: 1;
  visibility: visible;
  margin-top: 0;
}

.tf-setting-color {
  max-width: 700px;
  width: 100% !important;
  background: var(--Bg-dark);
}
.tf-setting-color .btn-setting-color {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  animation: spin 5s infinite linear;
}
.tf-setting-color .btn-setting-color:hover {
  color: var(--primary);
}
.tf-setting-color .setting-color-option {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  padding-top: 50px;
  padding: 40px 5px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.tf-setting-color .setting-color-option .heading {
  margin-bottom: 50px;
}
.tf-setting-color .setting-color-option .title {
  margin-bottom: 30px;
}
.tf-setting-color .settings-color {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 26px;
  margin-bottom: 50px;
}
.tf-setting-color .settings-color a {
  display: block;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  position: relative;
}
.tf-setting-color .settings-color a:nth-child(1) {
  background: #45e77b;
}
.tf-setting-color .settings-color a:nth-child(2) {
  background: #f8c736;
}
.tf-setting-color .settings-color a:nth-child(3) {
  background: #f5772e;
}
.tf-setting-color .settings-color a:nth-child(4) {
  background: #2ac6f8;
}
.tf-setting-color .settings-color a:nth-child(5) {
  background: #8dca37;
}
.tf-setting-color .settings-color a:nth-child(6) {
  background: #6c34fa;
}
.tf-setting-color .settings-color a:nth-child(7) {
  background: #f14444;
}
.tf-setting-color .settings-color a:nth-child(8) {
  background: #e14392;
}
.tf-setting-color .settings-color a::before {
  position: absolute;
  content: "";
  border: 1px solid #fff;
  border-radius: 50%;
  width: calc(100% + 10px);
  height: calc(100% + 10px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.tf-setting-color .settings-color a.active::before {
  opacity: 1;
}
.tf-setting-color .settings-themes {
  display: flex;
  gap: 55px 80px;
  flex-wrap: wrap;
}
.tf-setting-color .settings-themes a {
  color: var(--Text-light);
}
.tf-setting-color .settings-themes a:hover, .tf-setting-color .settings-themes a.active {
  color: var(--Primary);
}
@media (min-width: 768px) {
  .tf-setting-color .setting-color-option {
    padding: 70px;
  }
  .tf-setting-color .settings-color a {
    width: 44px;
    height: 44px;
  }
  .tf-setting-color .settings-color a::before {
    width: calc(100% + 20px);
    height: calc(100% + 20px);
  }
}
@media (min-width: 1150px) {
  .tf-setting-color {
    max-width: 1043px;
  }
}

.popup-setting {
  background-color: var(--Bg-dark);
  min-height: 314px;
}
.popup-setting .offcanvas-body {
  padding: 0;
}
.popup-setting .wrap-features {
  padding: 0;
  border: unset;
  background: unset;
  padding: 24px 15px;
}
.popup-setting .close-menu {
  position: absolute;
  right: 15px;
  top: 15px;
  z-index: 3;
}
@media (min-width: 992px) {
  .popup-setting .wrap-features {
    background-color: unset;
    padding: 40px 30px 0px 60px;
  }
}
@media (min-width: 1150px) {
  .popup-setting .wrap-features .line {
    margin-left: 60px;
    margin-right: 60px;
  }
}

/*------------ hover ---------------- */
/* ---------------------------------------------------------
    * Name: 
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

    * section

    * dashboard

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.hover-image .img-style,
.hover-image .article-thumb {
  position: relative;
  overflow: hidden;
}
.hover-image .img-style:after,
.hover-image .article-thumb:after {
  content: "";
  position: absolute;
  width: 200%;
  height: 0%;
  left: 50%;
  top: 50%;
  background-color: rgba(255, 255, 255, 0.3);
  transform: translate(-50%, -50%) rotate(-45deg);
  z-index: 1;
}
.hover-image .img-style img,
.hover-image .article-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 1s;
}
.hover-image:hover .img-style:after,
.hover-image:hover .article-thumb:after {
  height: 250%;
  transition: all 600ms linear;
  background-color: transparent;
}
.hover-image:hover .img-style img,
.hover-image:hover .article-thumb img {
  transform: scale(1.1);
}

.hover-image-translate .img-style {
  overflow: hidden;
}
.hover-image-translate .img-style img {
  transition: all 0.5s;
  transform: scale(1.1);
  pointer-events: none;
}
.hover-image-translate:hover .img-style img {
  transform: scale(1.1) translateX(4%);
}

.hover-image-rotate .img-style {
  overflow: hidden;
}
.hover-image-rotate .img-style img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.hover-image-rotate:hover .img-style img {
  transform: scale(1.1) rotate(3deg);
}

.hover-underline-link {
  --underline-position-y: calc(100% + -2px);
  --underline-height: 1px;
  background-repeat: no-repeat;
  background-image: linear-gradient(90deg, currentColor 0, currentColor 100%);
  background-position: 100% var(--underline-position-y);
  background-size: 100% var(--underline-height);
}
.hover-underline-link:hover {
  animation: qode-inline-underline-initial-hover 0.8s cubic-bezier(0.57, 0.39, 0, 0.86) 1 forwards;
}
@keyframes qode-inline-underline-initial-hover {
  0% {
    background-position: 100% var(--underline-position-y);
    background-size: 100% var(--underline-height);
  }
  35% {
    background-position: 100% var(--underline-position-y);
    background-size: 0 var(--underline-height);
  }
  36% {
    background-position: 0 var(--underline-position-y);
    background-size: 0 var(--underline-height);
  }
  100% {
    background-position: 0 var(--underline-position-y);
    background-size: 100% var(--underline-height);
  }
}

.effec-icon .icon img,
.effec-icon .icon i,
.effec-icon .icon svg,
.effec-icon .tf-icon img,
.effec-icon .tf-icon i,
.effec-icon .tf-icon svg {
  transition: all 0.6s ease-in-out;
}
.effec-icon:hover .icon i,
.effec-icon:hover .icon img,
.effec-icon:hover .icon svg,
.effec-icon:hover .tf-icon i,
.effec-icon:hover .tf-icon img,
.effec-icon:hover .tf-icon svg {
  transform: rotateY(360deg);
}

.hover-line-text {
  display: inline;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  background-image: -webkit-gradient(linear, left top, left bottom, from(currentColor), color-stop(98%, currentColor));
  background-image: linear-gradient(to bottom, currentColor 0%, currentColor 98%);
  background-size: 0 2px;
  background-repeat: no-repeat;
  background-position: left 100%;
}
.hover-line-text:hover {
  background-size: 100% 2px;
}

/*------------ blog ---------------- */
/* ---------------------------------------------------------
    * Name: 
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

    * section

    * dashboard

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.testimonial-item {
  position: relative;
  overflow: hidden;
  padding: 40px;
  border-radius: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  background: var(--Bg-linear-2);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.testimonial-item .icon {
  margin-bottom: 21px;
  font-size: 34px;
  color: var(--Text-light);
}
.testimonial-item .item-shape {
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.testimonial-item .item-shape img {
  transform: translate(-36%, -50%);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: 1;
}
@media (max-width: 767px) {
  .testimonial-item {
    padding: 28px 15px;
  }
}

/*------------ dark-mode ---------------- */
/* ---------------------------------------------------------
    * Name: 
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

    * section

    * dashboard

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.dark-mode {
  --Bg-dark: #f8f7f4;
  --Bg-linear: #ffffff;
  --Bg-linear-2: #ffffff;
  --Text-light: #121212;
  --Text-primary: #ffffff;
  --Text-muted: #121212;
}
.dark-mode .tf-btn.style-border {
  --Bg-linear-2: #f8f7f4;
  border: 1px solid #e5e7eb;
}
.dark-mode .body-overlay {
  display: none;
}
.dark-mode .popup-menu-mobile {
  background: #f8f7f4;
}
.dark-mode .header.header-fixed {
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
}
@media (min-width: 992px) {
  .dark-mode .header.header-fixed {
    box-shadow: unset;
  }
  .dark-mode .header.header-fixed .header-sidebar {
    box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
  }
}
.dark-mode .header-sidebar {
  background: #ffffff;
}
.dark-mode .header-sidebar .nav-menu li > * {
  border: unset;
}
.dark-mode .header-sidebar .nav-menu li .nav_link.active, .dark-mode .header-sidebar .nav-menu li:hover a {
  --Text-primary: #121212;
  background: #f8f7f4;
}
.dark-mode .header-sidebar .menu-button {
  background: #f8f7f4;
}
.dark-mode .nav-menu .tooltip {
  color: var(--Text-light);
  border-radius: 8px;
}
.dark-mode .nav-menu .tooltip::after {
  background-color: white;
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
}
.dark-mode .list-icon {
  column-gap: 8px;
}
.dark-mode .list-icon li > * {
  border: 1px solid #e5e7eb;
}
.dark-mode .list-icon li:hover > * {
  background-color: var(--Text-light);
  color: var(--Text-primary);
}
.dark-mode .portfolio-item {
  background-image: url(../images/item/bg-portfolio-light.png);
}
.dark-mode .service-item .btn-arrow {
  --Bg-linear-2: #f8f7f4;
  --Text-primary: #121212;
  --Text-light: #f8f7f4;
  color: var(--Text-primary);
  border: unset;
}
.dark-mode .bs-light-mode {
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
}
.dark-mode .education-item:hover {
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
}
.dark-mode .education-item:hover .date {
  background-color: var(--Bg-dark);
}
.dark-mode .service-item:hover .content-inner {
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
}
.dark-mode .testimonial-item,
.dark-mode .form-contact,
.dark-mode .counter-item {
  --Bg-dark: #ffffff;
}
.dark-mode .sw-button {
  --White: #f8f7f4;
  --Text-primary: #121212;
}
.dark-mode .section-testimonial .swiper {
  padding: 10px;
  margin: -10px;
}
.dark-mode .section-testimonial .testimonial-item {
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
}
.dark-mode .tab-slide {
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
}
.dark-mode .tab-slide .item-slide-effect {
  background: #f8f7f4;
}
.dark-mode .section-pricing {
  --Bg-dark: #ffffff;
}
.dark-mode .section-pricing .tf-btn {
  --Text-primary: #121212;
}
.dark-mode .form-contact .list-tag a {
  background: #f8f7f4;
}
.dark-mode .form-contact .tf-btn {
  --Text-primary: #121212;
}
.dark-mode form fieldset input,
.dark-mode form fieldset textarea {
  border-color: #e5e7eb;
}
.dark-mode .item-shape {
  opacity: 0;
  visibility: hidden;
}
.dark-mode .menu-option li > * {
  --Text-primary: #121212;
  border: unset;
  box-shadow: 0px 5px 5px 0px rgba(28, 36, 51, 0.1019607843);
  background: white;
}
.dark-mode .menu-option li:hover > * {
  color: #fff;
}
.dark-mode .tf-setting-color .settings-color a::before {
  border-color: #121212;
}

/*------------ landing ---------------- */
/* ---------------------------------------------------------
    * Name: 
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

    * section

    * dashboard

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.bg-landing {
  background-color: #0c0c0c;
}

.header-landing {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 25px;
}
.header-landing .site-logo {
  font-size: 36px;
  line-height: 50px;
  padding: 0 10px;
  color: var(--White);
}

.heading-top {
  position: relative;
}
.heading-top .item {
  z-index: 2;
  position: absolute;
  display: none;
}
@media (min-width: 992px) {
  .heading-top .item {
    display: block;
  }
  .heading-top .item-1 {
    bottom: 56px;
    left: 0;
  }
  .heading-top .item-2 {
    top: 104px;
    right: 0;
  }
}
@media (min-width: 1025px) {
  .heading-top .item {
    width: 14%;
  }
}
@media (min-width: 1441px) {
  .heading-top .item-1 {
    bottom: 56px;
    left: 8%;
  }
  .heading-top .item-2 {
    top: 104px;
    right: 7.7%;
  }
}

.page-title {
  text-align: center;
  padding: 99px 0;
  position: relative;
}
.page-title .title-border-shape {
  background-color: #101010;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 991px) {
  .page-title {
    padding: 50px 0;
  }
}

.bg-shape {
  top: 0;
  pointer-events: none;
  left: 0;
  right: 0;
  width: 100%;
}
.bg-shape img {
  object-fit: cover;
  width: 100%;
}

.bg-shape-2 {
  bottom: 0;
  pointer-events: none;
  left: 0;
  right: 0;
  width: 100%;
}
.bg-shape-2 img {
  object-fit: cover;
  width: 100%;
}

.bg-shape-3 {
  bottom: 0;
  pointer-events: none;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1;
  opacity: 0.3;
  -webkit-mask: url("../images/item/bg-shape.svg") no-repeat center;
  -webkit-mask-size: cover;
  mask: url("../images/item/bg-shape.svg") no-repeat center;
  width: 100%;
  height: 100%;
  background: var(--Primary);
  mask-size: cover;
}

.bg-overlay-landing {
  top: 46%;
  transform: translateY(-50%);
  z-index: 1;
  width: 100%;
}
.bg-overlay-landing img {
  width: 100%;
  object-fit: cover;
}

.home-box {
  padding: 24px;
  background: linear-gradient(123.51deg, rgba(215, 237, 237, 0.1) -61.8%, rgba(204, 235, 235, 0.01) 100%);
  border: 1px solid rgba(255, 255, 255, 0.1019607843);
  border-radius: 20px;
  text-align: center;
}
.home-box .title {
  padding: 34px 0 31px;
}
.home-box .thumbs {
  position: relative;
  overflow: hidden;
}
.home-box .thumbs img {
  width: 100%;
  object-fit: cover;
}
.home-box .thumbs::after {
  position: absolute;
  content: "";
  background: linear-gradient(180deg, rgba(12, 8, 44, 0) 0%, var(--Primary) 200%);
  width: 100%;
  height: 0;
  bottom: 0;
  left: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.home-box .tf-btn {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  bottom: 38px;
  z-index: 3;
  border-radius: 8px;
  opacity: 0;
  transform: translateY(30px);
  transition-delay: 0.18s;
  height: 52px;
  padding: 0 52px;
}
.home-box:hover .thumbs::after {
  height: 131px;
}
.home-box:hover .tf-btn {
  transform: translateY(0);
  opacity: 1;
}

.wrap-features {
  display: flex;
  padding: 60px 60px 58px;
  border-radius: 60px;
  background: linear-gradient(123.51deg, rgba(215, 237, 237, 0.1) -61.8%, rgba(204, 235, 235, 0.01) 100%);
  border: 1px solid rgba(255, 255, 255, 0.1019607843);
  z-index: 1;
  position: relative;
}
.wrap-features .feature-color {
  max-width: 283px;
}
.wrap-features .tf-setting-color {
  background-color: unset;
}
.wrap-features .settings-color {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 49px 32px;
  padding-left: 10px;
}
.wrap-features .wrap-feature-bg-item {
  gap: 18px 19px;
}
@media (min-width: 992px) {
  .wrap-features .line {
    display: block;
    margin-left: 40px;
    margin-right: 40px;
    width: 1px;
    background-color: rgba(255, 255, 255, 0.1019607843);
  }
}
@media (min-width: 1150px) {
  .wrap-features .line {
    margin-left: 80px;
    margin-right: 80px;
  }
}
@media (max-width: 991px) {
  .wrap-features {
    flex-direction: column;
  }
  .wrap-features .tf-setting-color {
    max-width: unset;
  }
  .wrap-features .settings-color {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 32px;
  }
}
@media (max-width: 767px) {
  .wrap-features {
    padding: 40px 10px 38px;
  }
}

.features-background {
  gap: 20px;
}

@media (max-width: 575px) {
  .wrap-feature-bg-item {
    gap: 8px;
  }
}

.feature-bg-item {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid transparent;
  border-top: 1px solid;
  border-image-source: linear-gradient(123.51deg, rgba(215, 237, 237, 0.1) -61.8%, rgba(204, 235, 235, 0.01) 100%);
  background: var(--Bg-linear-2);
  border-radius: 100px;
  overflow: hidden;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.feature-bg-item img {
  position: absolute;
  inset: 0;
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 100%;
  object-fit: cover;
  height: 100%;
}
.feature-bg-item a {
  position: relative;
  z-index: 1;
  white-space: nowrap;
  padding: 24px;
}
.feature-bg-item:hover {
  border: 1px solid var(--Primary);
}
.feature-bg-item:hover img {
  opacity: 1;
}
@media (max-width: 1149px) {
  .feature-bg-item a {
    padding: 18px;
  }
}
@media (max-width: 991px) {
  .feature-bg-item a {
    padding: 12px;
  }
}
@media (max-width: 575px) {
  .feature-bg-item a {
    padding: 8px;
  }
}

.section-box-home .tf-grid-layout {
  gap: 10px;
}

.section-features {
  padding-top: 175px;
  position: relative;
}
.section-features .item {
  position: absolute;
}
.section-features .item-1 {
  top: 92px;
  left: 50%;
  transform: translateX(-50%);
}
.section-features .item-2 {
  bottom: -104px;
  left: -4.7%;
}
.section-features .item-3 {
  opacity: 0.8;
  right: 16%;
  bottom: 14%;
}
@media (max-width: 991px) {
  .section-features {
    padding-top: 80px;
  }
  .section-features .item-2 {
    display: none;
  }
}
@media (max-width: 767px) {
  .section-features {
    padding-top: 50px;
  }
  .section-features .item {
    width: 30%;
  }
}

.footer-landing {
  padding-top: 105px;
  padding-bottom: 117px;
  position: relative;
  z-index: 3;
  text-align: center;
}
.footer-landing .title-border-shape {
  background-color: #101010;
  padding-left: 20px;
  padding-right: 20px;
}
.footer-landing .title {
  box-shadow: 0px 10px 25px 0px rgba(54, 95, 104, 0.1019607843);
}
.footer-landing .content {
  padding-top: 27px;
  position: relative;
  z-index: 3;
}
.footer-landing .bg-footer {
  position: absolute;
  inset: 0;
}
.footer-landing .item {
  top: 33px;
  right: 9.2%;
}
@media (max-width: 991px) {
  .footer-landing .item {
    display: none;
  }
}
@media (max-width: 767px) {
  .footer-landing {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .footer-landing .content {
    padding-top: 0;
  }
}

/*------------ animation ---------------- */
@keyframes shape-animaiton1 {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(100px);
  }
}
@keyframes shape-animaiton2 {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(30px);
  }
}
@keyframes shape-animaiton3 {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(10px);
  }
}
@keyframes shape-animaiton4 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(1000deg);
  }
}
@keyframes animate1 {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-20px);
  }
}
@keyframes animate2 {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(20px);
  }
}
@keyframes animate3 {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(15px);
  }
}
@keyframes animate4 {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-25px);
  }
}
@keyframes animate5 {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
.shape-animaiton1 {
  position: relative;
  animation-name: shape-animaiton1;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: cubic-bezier(0.59, 0.59, 1, 1);
}

.shape-animaiton2 {
  position: relative;
  animation-name: shape-animaiton2;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.shape-animaiton3 {
  position: relative;
  animation-name: shape-animaiton3;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.shape-animaiton4 {
  position: relative;
  animation-name: shape-animaiton4;
  animation-duration: 62s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: linear;
}

.animate1 {
  position: relative;
  animation-name: animate1;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.animate2 {
  position: relative;
  animation-name: animate2;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.animate3 {
  position: relative;
  animation-name: animate3;
  animation-duration: 4s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.animate4 {
  position: relative;
  animation-name: animate4;
  animation-duration: 4s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.animate5 {
  position: relative;
  animation-name: animate5;
  animation-duration: 4s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

@keyframes heartbeat-strong {
  0% {
    transform: scale(1);
  }
  15% {
    transform: scale(1.4);
  }
  30% {
    transform: scale(1);
  }
  45% {
    transform: scale(1.3);
  }
  60% {
    transform: scale(1);
  }
  75% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
/*
::::::::::::::::::::::::::
ANIMATION AREA CSS
::::::::::::::::::::::::::
*/
/*------------ widgets ---------------- */
/* ---------------------------------------------------------
    * Name: 
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

    * section

    * dashboard

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.user-bar {
  position: fixed;
  left: 41px;
  top: 50%;
  transform: translateY(-50%);
  max-width: 370px;
  padding: 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  overflow: hidden;
  background: var(--Bg-linear-2);
  z-index: 99;
}
@media (max-width: 1440px) {
  .user-bar {
    max-width: 320px;
  }
}
.user-bar .name {
  margin-bottom: 1px;
}
.user-bar .img-style {
  max-width: 314px;
  margin-left: auto;
  margin-right: auto;
}
.user-bar .img-style img {
  width: 100%;
}
.user-bar .item-shape {
  position: absolute;
  top: -63px;
  left: -79px;
}
@media (max-width: 1440px) {
  .user-bar {
    left: 15px;
    max-height: 100vh;
    transform: translateY(-50%);
    top: 50%;
  }
}
@media (max-width: 1149px) {
  .user-bar {
    position: relative;
    top: unset;
    left: unset;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    transform: unset;
  }
}
@media (max-width: 767px) {
  .user-bar {
    padding: 28px 15px;
  }
}
.user-bar.style-1 {
  position: unset;
}

@media (max-width: 1149px) {
  .wrap-user-bar {
    padding-top: 25px;
  }
}

.box-author {
  position: relative;
  z-index: 1;
}
.box-author .img-style {
  border-radius: 40px;
  overflow: hidden;
}
.box-author .name {
  font-size: 36px;
  line-height: 36px;
}

.tag-heading {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  color: var(--Text-muted);
}
.tag-heading::before {
  content: "";
  position: relative;
  height: 8px;
  width: 8px;
  background-color: var(--Primary);
  border-radius: 50%;
  animation: flickerAnimation 0.8s infinite;
}

.counter-item {
  padding: 16px 14px;
  border-radius: 16px;
  border: 1px solid transparent;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  background: var(--Bg-linear-2);
  position: relative;
  overflow: hidden;
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.counter-item .odometer-inside {
  letter-spacing: -4px;
}
.counter-item .odometer-digit {
  width: 40px;
}
.counter-item .counter-number {
  display: flex;
  align-items: center;
}
.counter-item span {
  font-family: "Sora", sans-serif;
}
.counter-item .item-shape {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  pointer-events: none;
}
.counter-item .item-shape img {
  position: absolute;
  min-width: 611px;
  height: 678px;
  top: -195%;
  right: -141%;
}
.counter-item:hover {
  border: 1px solid rgba(255, 255, 255, 0.1);
}
@media (min-width: 768px) {
  .counter-item .item-shape {
    opacity: 0;
  }
  .counter-item:hover .item-shape {
    animation: fadeIn 0.3s ease forwards, slideBg 0.3s linear 0.4s forwards;
  }
}
@media (max-width: 1149px) {
  .counter-item .odometer-digit {
    width: 33px;
  }
}
@media (max-width: 991px) {
  .counter-item .odometer-digit {
    width: 28px;
  }
}
@media (max-width: 767px) {
  .counter-item .odometer-digit {
    width: 24px;
  }
  .counter-item .item-shape img {
    top: -81px;
    right: unset;
    left: 0;
  }
}
@media (max-width: 575px) {
  .counter-item .odometer-digit {
    width: 22px;
  }
}

@keyframes fadeIn {
  to {
    opacity: 1;
  }
}
@keyframes slideBg {
  100% {
    right: 50%;
  }
}
.education-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 19px 20px 20px 40px;
  border-radius: 20px;
  position: relative;
  overflow: hidden;
  border-top: 1px solid transparent;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.education-item .date {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--Bg-linear-2);
  height: 38px;
  padding: 0 16px;
  border-radius: 40px;
  white-space: nowrap;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.education-item .content {
  position: relative;
  z-index: 1;
}
.education-item .item-shape {
  position: absolute;
  height: 100%;
  width: 100%;
}
.education-item .item-shape img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: absolute;
  min-width: 611px;
  height: 678px;
  opacity: 0;
  transform: translate(-36%, -50%);
}
.education-item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--Bg-linear-2);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: 0;
}
.education-item:hover {
  border-color: rgba(255, 255, 255, 0.1);
}
.education-item:hover::after {
  opacity: 1;
}
.education-item:hover .item-shape img {
  opacity: 1;
}
@media (max-width: 575px) {
  .education-item {
    flex-direction: column;
    align-items: start;
    gap: 12px;
  }
}

.wrap-education-item {
  position: relative;
}
.wrap-education-item:not(:first-child) .point::after {
  position: absolute;
  content: "";
  width: 1px;
  height: 86px;
  background-color: var(--Text-light);
  opacity: 0.1;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(100% + 3px);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.wrap-education-item .point {
  display: block;
  height: 16px;
  width: 16px;
  background-color: var(--Text-primary);
  border-radius: 50%;
  border: 3px solid var(--Primary);
  position: absolute;
  top: 26px;
  left: 13.52px;
  z-index: 1;
}
@media (max-width: 575px) {
  .wrap-education-item:not(:first-child) .point::after {
    height: 128px;
  }
}

.effect-line-hover .wrap-education-item:hover:not(:first-child) .point::after, .effect-line-hover .wrap-education-item:has(~ .wrap-education-item:hover):not(:first-child) .point::after {
  opacity: 1;
}

.service-item {
  position: relative;
}
.service-item .content-inner {
  border-radius: 20px;
  padding: 43px 20px 37px;
  overflow: hidden;
  position: relative;
}
.service-item .content-inner::after {
  position: absolute;
  content: "";
  inset: 0;
  background: var(--Bg-linear-2);
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.service-item .content {
  gap: 23px;
  position: relative;
  z-index: 1;
}
.service-item .btn-arrow {
  height: 56px;
  width: 56px;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
  font-size: 24px;
  color: var(--Text-light);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 4;
  flex-shrink: 0;
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.service-item .btn-arrow i {
  position: relative;
  z-index: 2;
}
.service-item .btn-arrow::after {
  position: absolute;
  content: "";
  inset: 0;
  background: var(--Bg-linear-2);
  opacity: 1;
}
.service-item .btn-arrow:hover {
  background-color: var(--Primary) !important;
}
.service-item .item-shape {
  position: absolute;
  pointer-events: none;
  width: 100%;
  height: 100%;
}
.service-item .item-shape img {
  transform: translate(-36%, -50%);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: 0;
}
.service-item .img-hover {
  position: absolute;
  left: 62%;
  top: 26%;
  opacity: 0;
  transform: rotate(4deg) scale(0.8) translateY(calc(-50% + 14px));
  transition: opacity 0.35s, transform 0.5s ease-out;
  pointer-events: none;
  overflow: hidden;
}
.service-item .img-hover img {
  transform: rotate(0) scale(1.14);
  transition: transform 0.3s ease-out;
}
.service-item:hover .btn-arrow {
  background-color: var(--Text-light);
  color: var(--Text-primary);
}
.service-item:hover .item-shape img {
  opacity: 1;
}
.service-item:hover .img-hover {
  z-index: 2;
  transform: rotate(0) scale(1) translateY(-50%);
  opacity: 1;
}
.service-item:hover .img-hover img {
  transform: rotate(0) scale(1.01);
}
.service-item:hover .content-inner::after {
  opacity: 1;
}
@media (max-width: 767px) {
  .service-item .content-inner {
    padding: 43px 20px 37px;
    padding: 24px 15px 24px;
  }
  .service-item .img-hover {
    width: 65px;
    left: 66%;
    top: 7%;
  }
  .service-item .btn-arrow {
    height: 38px;
    width: 38px;
    font-size: 16px;
  }
}

.portfolio-item {
  background-image: url(../images/item/bg-portfolio-dark.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 28px 15px;
  border-radius: 40px 40px 0 0;
  position: relative;
}
.portfolio-item .img-style {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 24px;
  position: relative;
  z-index: 1;
  box-shadow: 0px 10px 25px 0px rgba(54, 95, 104, 0.1);
}
.portfolio-item .img-style img {
  width: 100%;
}
.portfolio-item .tag {
  display: flex;
  align-items: center;
  height: 32px;
  padding: 0 16px;
  background-color: var(--Primary);
  position: absolute;
  left: 20px;
  color: var(--Text-primary);
  bottom: 20px;
  border-radius: 24px;
}
.portfolio-item .item-shape {
  overflow: hidden;
  position: absolute;
  pointer-events: none;
  opacity: 0;
  inset: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-radius: inherit;
}
.portfolio-item .item-shape img {
  position: absolute;
  top: -245px;
  left: -163px;
}
.portfolio-item:hover .item-shape {
  opacity: 1;
}
.portfolio-item:hover .title {
  color: var(--Primary);
}
@media (min-width: 768px) {
  .portfolio-item {
    padding: 40px 40px 40px;
  }
}

.pricing-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
  padding: 58px 35px 60px 40px;
  border-radius: 20px;
  background: var(--Bg-linear-2);
  border-top: 1px solid rgba(255, 255, 255, 0.1019607843);
  gap: 12px;
  z-index: 1;
}
.pricing-item .list-check {
  flex: 31.8%;
}
.pricing-item .list-check i {
  font-size: 24px;
  color: var(--Primary);
}
.pricing-item .item-shape {
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.pricing-item .item-shape img {
  transform: translate(-36%, -50%);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: 1;
}
.pricing-item .title {
  flex: 11.4%;
}
.pricing-item .wrap-pricing {
  flex: 12.3%;
}
.pricing-item.style-1 .title {
  flex: 38.5%;
}
.pricing-item.style-1 .wrap-pricing {
  flex: 15.9%;
}
.pricing-item.style-1 .list-check {
  flex: 50.8%;
}
@media (min-width: 1441px) {
  .pricing-item .title {
    margin-bottom: 23px;
  }
}
@media (max-width: 767px) {
  .pricing-item {
    padding: 28px 15px;
  }
}
@media (max-width: 575px) {
  .pricing-item {
    flex-direction: column;
    align-items: start;
    gap: 24px;
  }
}

.partner-item {
  position: absolute;
  border-radius: 50%;
  background: var(--Bg-linear-2);
  width: max-content;
  overflow: hidden;
}
.partner-item.sz-80 > img {
  padding: 14px;
}
.partner-item.sz-60 > img {
  padding: 4px;
}
.partner-item.sz-100 > img {
  padding: 24px;
}
.partner-item.sz-120 > img {
  padding: 34px;
}
.partner-item.sz-160 > img {
  padding: 50px;
}
.partner-item.sz-200 > img {
  padding: 60px;
}
.partner-item > img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding: 24px;
}
.partner-item .item-shape {
  position: absolute;
  pointer-events: none;
  inset: 0;
  width: 100%;
  height: 100%;
}
.partner-item .item-shape img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: absolute;
  min-width: 611px;
  height: 678px;
  top: -148%;
  left: -145px;
  opacity: 0;
}
.partner-item:hover > img {
  transform: rotate(25deg);
  animation: heartbeat-strong 2s infinite;
}
.partner-item:hover .item-shape img {
  opacity: 1;
}
@media (max-width: 991px) {
  .partner-item {
    display: flex !important;
    justify-content: center;
    align-items: center;
    position: unset !important;
    padding: 12px;
  }
  .partner-item > img {
    height: 52px;
    width: 52px;
    padding: 0 !important;
  }
}

.wrap-partner {
  position: relative;
  width: 100%;
  height: 338px;
}
.wrap-partner .partner-item {
  position: absolute;
}
.wrap-partner .item-1 {
  top: 161.74px;
  left: 0;
}
.wrap-partner .item-2 {
  bottom: 0%;
  left: 76px;
}
.wrap-partner .item-3 {
  top: 74.2px;
  left: 62px;
}
.wrap-partner .item-4 {
  top: 46px;
  left: 220.18px;
}
.wrap-partner .item-5 {
  top: 61px;
  right: 282px;
}
.wrap-partner .item-6 {
  top: 27px;
  right: 162.42px;
}
.wrap-partner .item-8 {
  top: 116.74px;
  left: 132px;
}
.wrap-partner .item-7 {
  bottom: 7.26px;
  right: 171px;
}
.wrap-partner .item-9 {
  top: 56.74px;
  left: 292px;
}
.wrap-partner .item-10 {
  top: 95.95px;
  right: 51px;
}
.wrap-partner .item-11 {
  bottom: 27.26px;
  left: 286.83px;
}
.wrap-partner .item-12 {
  bottom: 21.26px;
  right: 72.81px;
}
.wrap-partner.position-2 .item-1 {
  top: 133.74px;
  left: 21px;
}
.wrap-partner.position-2 .item-2 {
  bottom: 8%;
  left: 97px;
}
.wrap-partner.position-2 .item-3 {
  top: 47.2px;
  left: 83px;
}
.wrap-partner.position-2 .item-4 {
  top: 18px;
  left: 241.18px;
}
.wrap-partner.position-2 .item-5 {
  top: 34px;
  right: 231px;
}
.wrap-partner.position-2 .item-6 {
  top: 0px;
  right: 112.42px;
}
.wrap-partner.position-2 .item-8 {
  top: 88.74px;
  left: 153px;
}
.wrap-partner.position-2 .item-7 {
  bottom: 34.26px;
  right: 119px;
}
.wrap-partner.position-2 .item-9 {
  top: 29.74px;
  left: 314px;
}
.wrap-partner.position-2 .item-10 {
  top: 67.95px;
  right: 0px;
}
.wrap-partner.position-2 .item-11 {
  bottom: 54.26px;
  left: 305.83px;
}
.wrap-partner.position-2 .item-12 {
  bottom: 49.26px;
  right: 20.81px;
}
@media (max-width: 991px) {
  .wrap-partner {
    height: unset;
    padding: 24px 0;
  }
}

.footer-logo {
  margin-top: 26px;
}

.text-menu .toggle {
  display: grid;
}
.text-menu .toggle .text {
  grid-area: 1/1;
  transition: opacity 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95), transform 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.text-menu .toggle .text .word {
  white-space: nowrap;
}
.text-menu .toggle .text .char {
  display: inline-block;
  transform-origin: 50% 50% 0.4em;
  transition: transform 0.5s cubic-bezier(0.5, 0, 0, 1);
  transition-delay: calc(0ms + var(--char-index) * 25ms);
  backface-visibility: hidden;
  margin: 0 -0.02em;
}
.text-menu .toggle .text:nth-child(2) {
  opacity: 0;
}
.text-menu .toggle .text:nth-child(2) .char {
  transform: rotate3d(1, -0.5, 0, 90deg);
}
.text-menu:hover .toggle .text:nth-child(1) {
  opacity: 0;
}
.text-menu:hover .toggle .text:nth-child(1) .char {
  transform: rotate3d(1, 0.3, 0, -90deg);
}
.text-menu:hover .toggle .text:nth-child(2) {
  opacity: 1;
}
.text-menu:hover .toggle .text:nth-child(2) .char {
  transform: rotate3d(0, 0, 0, 90deg);
}

/*------------ sections ---------------- */
/* ---------------------------------------------------------
    * Name: 
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

    * section

    * dashboard

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
@media (min-width: 1150px) {
  .main-content {
    padding-top: 70px;
  }
}
@media (min-width: 1441px) {
  .main-content {
    padding-top: 50px;
    margin-right: 77px;
  }
}
@media (max-width: 767px) {
  .main-content {
    padding-top: 130px;
  }
}
.main-content.style-fullwidth {
  padding-top: 233.38px;
}
@media (min-width: 768px) {
  .main-content.style-fullwidth {
    margin-right: 0;
  }
}
@media (max-width: 1149px) {
  .main-content.style-fullwidth {
    padding-top: 133px;
  }
}
.main-content.style-fullwidth .right-bar {
  top: 150px;
}
.main-content.style-fullwidth .user-bar {
  position: sticky;
  top: 143px;
  transform: unset;
}
.main-content.style-3 {
  padding-top: 50px;
}
@media (max-width: 1440px) {
  .main-content.style-3 {
    padding-top: 30px;
  }
}
@media (max-width: 575px) {
  .main-content.style-3 {
    padding-top: 0;
  }
}
@media (max-width: 1149px) {
  .wrap-main-content {
    padding-top: 40px;
  }
}
@media (max-width: 767px) {
  .wrap-main-content {
    padding-top: 130px;
  }
}

@media (max-width: 767px) {
  .heading-section {
    margin-bottom: 24px;
  }
  .heading-section .tag-heading {
    margin-bottom: 12px;
  }
}

.main-content-2 {
  padding-top: 100px;
}
@media (min-width: 1441px) {
  .main-content-2 {
    margin-right: 35px;
  }
}

.title-border-shape {
  position: relative;
  max-width: max-content;
  padding: 8px;
}
.title-border-shape .shape span {
  position: absolute;
  display: block;
  height: 12px;
  width: 12px;
  background-color: var(--White);
  border: 2px solid var(--Primary);
  z-index: 1;
}
.title-border-shape .shape .shape-1 {
  left: -7px;
  top: -7px;
}
.title-border-shape .shape .shape-2 {
  right: -4px;
  top: -7px;
}
.title-border-shape .shape .shape-3 {
  right: -5px;
  bottom: -5px;
}
.title-border-shape .shape .shape-4 {
  left: -7px;
  bottom: -7px;
}
.title-border-shape .line-horizontal {
  background-color: var(--Primary);
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
}
.title-border-shape .line-vertical {
  background-color: var(--Primary);
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
}
.title-border-shape .vertical-1 {
  right: 0;
}
.title-border-shape .vertical-2 {
  left: 0;
}
.title-border-shape .horizontal-1 {
  top: 0;
}
.title-border-shape .horizontal-2 {
  bottom: 0;
}

.section-testimonial .swiper-slide {
  height: auto !important;
}
.section-testimonial .wrap-sw-button {
  position: absolute;
  z-index: 2;
  right: 40px;
  bottom: 40px;
}
.section-testimonial.style-1 .wrap-sw-button {
  position: unset;
}

.section-portfolio .portfolio-item:not(:last-child) {
  margin-bottom: 44px;
}
@media (max-width: 767px) {
  .section-portfolio .portfolio-item:not(:last-child) {
    margin-bottom: 30px;
  }
}
.section-portfolio.style-1 .portfolio-item {
  margin-bottom: 0;
}
.section-portfolio.style-1 .tf-grid-layout {
  gap: 44px;
}

@media (min-width: 992px) {
  .section-partner .swiper-slide {
    position: unset;
  }
}
.section-partner.style-1 {
  padding-top: 22px;
}
@media (min-width: 992px) {
  .section-partner.style-1 .heading-section {
    padding-top: 71px;
  }
}

@media (min-width: 1441px) {
  .section-about.style-1,
  .section-resume.style-1 {
    margin-left: 80px;
  }
}

@media (min-width: 1150px) {
  .section-about {
    height: 73vh;
  }
}
@media (min-width: 1150px) {
  .section-about.v2 {
    height: 86vh;
    padding-top: 0;
  }
}
@media (min-width: 1441px) {
  .section-about.v2 {
    height: 100vh;
    padding-top: 50px;
  }
}
@media (max-width: 1440px) {
  .section-about.v2 {
    display: flex;
    align-items: center;
  }
}
.section-about.v3 {
  height: unset;
}

.section-contact.style-1 {
  padding-bottom: 40px;
}
@media (min-width: 1150px) {
  .section-contact.style-1 .heading-section {
    padding-top: 112px;
  }
  .section-contact.style-1 .form-contact {
    margin-left: 35px;
    padding: 40px 60px;
  }
}

@media (max-width: 1149px) {
  .wrap-section .row {
    gap: 40px;
  }
}
p{
  color: #fff !important;
}
/*# sourceMappingURL=styles.css.map */
