/*
Theme Name: CRYOCHIPS
Theme URI: https://cryochips.com
Description: Wafer-Scale Quantum Refrigeration theme
Author: Saad Malik
Author URI: https://cryochips.com
Version: 1.0.0
/*=================================
    CSS Index Here
==================================*/
/*

01. Theme Base
    1.1. Mixin
    1.2. Function
    1.3. Variable
    1.4. Typography
    1.5. Wordpress Default
02. Reset
    2.1. Container
    2.2. Grid
    2.3. Input
    2.4. Slider
    2.5. Mobile Menu
03. Utilities
    3.1. Preloader
    3.2. Buttons
    3.3. Titles
    3.4. Common
    3.6. Font
    3.7. Background
    3.8. Text Color
    3.9. Overlay
    3.10. Animation

04. Template Style
    4.1. Widget
    4.2. Header
    4.3. Footer
    4.4. Breadcumb
    4.5. Pagination
    4.6. Blog
    4.7. Comments
    4.8. Hero Area
    4.9. Error    
    4.00. Popup Search
    4.00. Popup Side Menu
    4.00. Wocommerce
    4.00. Products
    4.00. Cart
    4.00. Checkout
    4.00. Wishlist
    4.00. Contact
    4.00. About
    4.00. Team
    4.00. Testimonial
    4.00. Counter
    4.00. Blog
    4.00. Brand
    4.00. Simple Sections
    4.00. Why
    4.00. Faq
    4.00. Service
    4.00. Process
    4.00. Pricing
    4.00. Feature
    4.00. Project
    4.00. Category
    4.00. Color Scheme
    4.00. CTA
    4.00. Appointment
    4.00. Video
    4.00. Tab Menu
    4.00. Schedule

05. Spacing

*/
/*=================================
    CSS Index End
==================================*/
/*=================================
   01. Theme Base
==================================*/
/*------------------- 1.1. Mixin -------------------*/
/*------------------- 1.2. Function -------------------*/
/*------------------- 1.3. Variable-------------------*/
:root {
  --theme-color: #2D6ED2;
  --theme-color2: #1A4B8F;
  --theme-color3: #5B9EF7;
  --title-color: #0D2847;
  --body-color: #4A6A8A;
  --smoke-color: #F5F8FF;
  --smoke-color2: #F5F8FF;
  --smoke-color3: #F5F8FF;
  --smoke-color4: #F5F8FF;
  --black-color: #000000;
  --black-color2: #0D0D0D;
  --black-color3: #2F2F2F;
  --th-border-color: #B8CFED;
  --th-border-color2: #B8CFED;
  --th-border-color3: rgba(87, 88, 95, 0.5);
  --th-border-color4: rgba(198, 201, 212, 0.5);
  --light-color: #C6C9D4;
  --gray-color: #0D2847;
  --gray-color2: #F4F3E6;
  --gray-color3: #A1A1A1;
  --gray-color4: #F4F1FC;
  --gray-color5: #FFF5F1;
  --gray-color6: #FCFFE4;
  --gray-color7: #E4F4F6;
  --black-color4: #00110E;
  --black-color5: #22272E;
  --black-color6: #2D333D;
  --black-color7: #0E0E13;
  --white-color: #ffffff;
  --yellow-color: #5B9EF7;
  --success-color: #28a745;
  --error-color: #dc3545;
  --th-border-color5: #49515C;
  --th-border-color6: #383D46;
  --title-font: "Space Grotesk", sans-serif;
  --body-font: "DM Sans", sans-serif;
  --icon-font: "Font Awesome 6 Pro";
  --main-container: 1464px;
  --container-gutters: 24px;
  --section-space: 120px;
  --section-space-mobile: 80px;
  --section-title-space: 60px;
  --ripple-ani-duration: 5s;
  --th-body-background: #F5F8FF;
}

/*------------------- 1.4. Typography -------------------*/
html,
body {
  scroll-behavior: auto !important;
}

body {
  font-family: var(--body-font);
  font-size: 16px;
  font-weight: 400;
  color: var(--body-color);
  line-height: 26px;
  overflow-x: hidden;
  background: inherit;
  -webkit-font-smoothing: antialiased;
}

form.qt-sec42-form.qt-contact-form {
  margin-top: -45px !important;
}

iframe {
  border: none;
  width: 100%;
}


button:focus,
a:focus,
a:active,
input,
input:hover,
input:focus,
input:active,
textarea,
textarea:hover,
textarea:focus,
textarea:active {
  outline: none;
}

input:focus {
  outline: none;
  box-shadow: none;
}

img:not([draggable]),
object,
video {
  max-width: 100%;
  height: auto;
}

ul {
  list-style-type: disc;
}

a {
  color: var(--theme-color);
  text-decoration: none;
  outline: 0;
  transition: all ease 0.4s;
}

a:hover {
  color: var(--title-color);
}

a:active,
a:focus,
a:hover,
a:visited {
  text-decoration: none;
  outline: 0;
}

button {
  transition: all ease 0.4s;
}

img {
  border: none;
  max-width: 100%;
}


p:empty {
  display: none;
}

p {
  font-family: var(--body-font);
  margin: 0 0 18px 0;
  color: var(--body-color);
  line-height: 1.75;
  font-size: 18px;
}

h1 a,
h2 a,
h3 a,
h4 a,
p a,
span a {
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4 {
  font-family: var(--title-font);
  color: var(--title-color);
  text-transform: none;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 15px 0;
}

.h1,
h1 {
  font-size: 74px;
  line-height: 1.18;
}

.h2,
h2 {
  font-size: 64px;
  line-height: 1.227;
}

.h3,
h3 {
  font-size: 36px;
  line-height: 1.278;
}

.h4,
h4 {
  font-size: 30px;
  line-height: 1.333;
}

/* Medium Large devices */
@media (max-width: 1399px) {

  .h1,
  h1 {
    font-size: 64px;
    line-height: 1.3;
  }
}

/* Medium Large devices */
@media (max-width: 1299px) {

  .h1,
  h1 {
    font-size: 60px;
  }
}

/* Large devices */
@media (max-width: 1199px) {

  .h1,
  h1 {
    font-size: 55px;
    line-height: 1.3;
  }

  .h2,
  h2 {
    font-size: 40px;
    line-height: 1.3;
  }

  .h3,
  h3 {
    font-size: 30px;
  }

  .h4,
  h4 {
    font-size: 24px;
  }
}

/* Small devices */
@media (max-width: 767px) {

  .h1,
  h1 {
    font-size: 40px;
  }

  .h2,
  h2 {
    font-size: 34px;
    line-height: 1.3;
  }

  .h3,
  h3 {
    font-size: 26px;
  }

  .h4,
  h4 {
    font-size: 22px;
  }
}

/* Extra small devices */
@media (max-width: 575px) {

  .h1,
  h1 {
    font-size: 34px;
    line-height: 1.35;
  }

  .h2,
  h2 {
    font-size: 28px;
  }
}

/* Extra small devices */
@media (max-width: 375px) {

  .h1,
  h1 {
    font-size: 32px;
  }
}

/*------------------- 1.5. Wordpress Default -------------------*/
.admin-bar {
  position: relative;
}

.th-search {
  background-color: var(--smoke-color);
  margin-bottom: 30px;
  border-radius: 15px;
  overflow: hidden;
}

.th-search .search-grid-content {
  padding: 30px;
  /* Small devices */
}

@media (max-width: 767px) {
  .th-search .search-grid-content {
    padding: 20px;
  }
}

.th-search .search-grid-title {
  font-size: 20px;
  margin-bottom: 5px;
  margin-top: 0;
}

.th-search .search-grid-title a {
  color: inherit;
}

.th-search .search-grid-title a:hover {
  color: var(--theme-color);
}

.th-search .search-grid-meta>* {
  display: inline-block;
  margin-right: 15px;
  font-size: 14px;
}

.th-search .search-grid-meta>*:last-child {
  margin-right: 0;
}

.th-search .search-grid-meta a,
.th-search .search-grid-meta span {
  color: var(--body-color);
}

/* Small devices */

/*blog-navigation*****************/

/* Extra small devices */

/*=================================
    02. Reset
==================================*/
/*------------------- 2.1. Container -------------------*/
/* Medium Large devices */
@media (max-width: 1399px) {
  :root {
    --main-container: 1250px;
  }
}

@media (min-width: 1560px) {
  .th-container2 {
    width: 100%;
    max-width: 1560px;
    margin-left: auto;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .th-container2 .container {
    --main-container: 1220px;
  }

  .th-container3 {
    width: 100%;
    max-width: 1560px;
    margin-left: 0;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }

  .th-container3 .container {
    --main-container: 1220px;
  }
}

/* Hight Resoulation devices */
@media (min-width: 1922px) {

  .th-container3,
  .th-container2 {
    margin-right: auto;
  }
}

@media only screen and (min-width: 1300px) {

  
  .container {
    max-width: calc(var(--main-container) + var(--container-gutters));
    padding-left: calc(var(--container-gutters) / 2);
    padding-right: calc(var(--container-gutters) / 2);
  }
}

@media only screen and (min-width: 1300px) {
  .th-container {
    --main-container: 1764px;
  }
}

/*------------------- 2.2. Grid -------------------*/

@media (min-width: 1300px) {
  .row {
    --bs-gutter-x: 24px;
  }
}

.gy-40 {
  --bs-gutter-y: 40px;
}

.gy-60 {
  --bs-gutter-y: 60px;
}

@media (min-width: 1299px) {

  .gx-80 {
    --bs-gutter-x: 80px;
  }
}

/* Extra large devices */

/* Medium devices */

/*------------------- 2.3. Input -------------------*/
select,
.form-control,
textarea,
input {
  height: 56px;
  padding: 0 30px 0 30px;
  padding-right: 45px;
  border: 1px solid transparent;
  color: var(--body-color);
  background-color: var(--smoke-color);
  border-radius: 30px;
  font-size: 16px;
  width: 100%;
  font-family: var(--body-font);
  transition: 0.4s ease-in-out;
}

select:focus,
.form-control:focus,
textarea:focus,
input:focus {
  outline: 0;
  box-shadow: none;
  border-color: var(--theme-color);
  background-color: var(--smoke-color);
}

select::-moz-placeholder,
.form-control::-moz-placeholder,
textarea::-moz-placeholder,
input::-moz-placeholder {
  color: var(--body-color);
}

select::-webkit-input-placeholder,
.form-control::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
  color: var(--body-color);
}

select:-ms-input-placeholder,
.form-control:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-ms-input-placeholder {
  color: var(--body-color);
}

select::placeholder,
.form-control::placeholder,
textarea::placeholder,
input::placeholder {
  color: var(--body-color);
}

input[type=date] {
  padding: 0 25px 0 25px;
  position: relative;
}

input[type=date]::-webkit-calendar-picker-indicator {
  background: transparent;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  cursor: pointer;
}

input[type=time] {
  padding: 0 30px;
  position: relative;
}

input[type=time]::-webkit-calendar-picker-indicator {
  background: transparent;
  position: absolute;
  left: 0px;
  height: 100%;
  width: 100%;
  z-index: 1;
  cursor: pointer;
}


select {
  display: block;
  width: 100%;
  line-height: 1.5;
  vertical-align: middle;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
  background-position: right 26px center;
  background-repeat: no-repeat;
  background-size: 16px 12px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}


select.style2 {
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='6' viewBox='0 0 11 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.87109 1.71094L5.71484 5.62109C5.56901 5.7487 5.41406 5.8125 5.25 5.8125C5.08594 5.8125 4.9401 5.7487 4.8125 5.62109L0.65625 1.71094C0.382812 1.40104 0.373698 1.09115 0.628906 0.78125C0.920573 0.507812 1.23047 0.498698 1.55859 0.753906L5.25 4.25391L8.96875 0.753906C9.27865 0.498698 9.57943 0.498698 9.87109 0.753906C10.1263 1.08203 10.1263 1.40104 9.87109 1.71094Z' fill='%238B929C'/%3E%3C/svg%3E");
}

textarea.form-control,
textarea {
  min-height: 178px;
  padding-top: 25px;
  padding-bottom: 17px;
  border-radius: 30px;
}

textarea.form-control.style2,
textarea.style2 {
  min-height: 100px;
}

option:checked,
option:focus,
option:hover {
  background-color: var(--theme-color);
  color: var(--white-color);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

label {
  margin-bottom: 0.5em;
  margin-top: -0.3em;
  display: block;
  color: var(--title-color);
  font-family: var(--body-font);
  font-size: 16px;
}

textarea.is-invalid,
select.is-invalid,
input.is-invalid {
  border: 1px solid var(--error-color) !important;
  background-position: right calc(0.375em + 0.8875rem) center;
  background-image: none;
}

textarea.is-invalid:focus,
select.is-invalid:focus,
input.is-invalid:focus {
  outline: 0;
  box-shadow: none;
}

textarea.is-invalid {
  background-position: top calc(0.375em + 0.5875rem) right calc(0.375em + 0.8875rem);
}

/*------------------- 2.4. Slick Slider -------------------*/

.th-slider.has-shadow {
  padding-left: 12px;
  padding-right: 12px;
  margin: -25px -12px;
}

.th-slider.has-shadow .swiper-wrapper {
  padding: 25px 0;
}

/* Extra large devices */

/* Medium Large devices */

/* Medium devices */

/* Medium devices */

/*slider-drag-cursor**************/

/*------------------- 2.5. Mobile Menu -------------------*/
.th-menu-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 999999;
  width: 0;
  width: 100%;
  height: 100%;
  transition: all ease 0.8s;
  opacity: 0;
  visibility: hidden;
}

.th-menu-wrapper .mobile-logo {
  padding-bottom: 30px;
  padding-top: 40px;
  display: block;
  text-align: center;
  background-color: var(--smoke-color);
}

.th-menu-wrapper .mobile-logo svg {
  max-width: 185px;
}

.th-menu-wrapper .th-menu-toggle {
  border: none;
  font-size: 22px;
  position: absolute;
  right: -16.5px;
  top: 50px;
  padding: 0;
  line-height: 1;
  width: 33px;
  height: 33px;
  line-height: 35px;
  font-size: 18px;
  z-index: 1;
  color: var(--white-color);
  background-color: var(--theme-color);
  border-radius: 50%;
}

.th-menu-wrapper .th-menu-toggle:hover {
  background-color: var(--title-color);
  color: var(--white-color);
}

.th-menu-wrapper .th-menu-area {
  width: 100%;
  max-width: 310px;
  background-color: #fff;
  border-right: 3px solid var(--theme-color);
  height: 100%;
  position: relative;
  left: -110%;
  opacity: 0;
  visibility: hidden;
  transition: all ease 1s;
  z-index: 1;
}

.th-menu-wrapper.th-body-visible {
  opacity: 1;
  visibility: visible;
}

.th-menu-wrapper.th-body-visible .th-menu-area {
  left: 0;
  opacity: 1;
  visibility: visible;
}

.th-menu-wrapper.style2 .mobile-logo {
  background: var(--title-color);
}

.th-menu-wrapper.style2 .th-menu-toggle {
  color: var(--title-color);
}

.th-menu-wrapper.style2 .th-menu-toggle:hover {
  color: var(--white-color);
  background: var(--black-color2);
}

.th-menu-wrapper.style2 .th-mobile-menu ul li.th-active>a {
  color: var(--title-color);
}

.th-mobile-menu {
  overflow-y: scroll;
  max-height: calc(100vh - 200px);
  padding-bottom: 40px;
  margin-top: 33px;
  text-align: left;
}

.th-mobile-menu ul {
  margin: 0;
  padding: 0 0;
}

.th-mobile-menu ul li {
  border-bottom: 1px solid var(--th-border-color);
  list-style-type: none;
}

.th-mobile-menu ul li li:first-child {
  border-top: 1px solid var(--th-border-color);
}

.th-mobile-menu ul li a {
  display: block;
  position: relative;
  padding: 12px 0;
  line-height: 1.4;
  font-size: 16px;
  text-transform: capitalize;
  color: var(--title-color);
  padding-left: 18px;
}

.th-mobile-menu ul li a:before {
  content: "\f105";
  font-family: var(--icon-font);
  position: absolute;
  left: 0;
  top: 12px;
  margin-right: 10px;
  display: inline-block;
}

.th-mobile-menu ul li.th-active>a {
  color: var(--theme-color);
}

.th-mobile-menu ul li.th-active>a:before {
  transform: rotate(90deg);
}

.th-mobile-menu ul li ul li {
  padding-left: 20px;
}

.th-mobile-menu ul li ul li:last-child {
  border-bottom: none;
}

.th-mobile-menu ul .menu-item-has-children>a .th-mean-expand {
  position: absolute;
  right: 0;
  top: 50%;
  font-weight: 400;
  font-size: 12px;
  width: 25px;
  height: 25px;
  line-height: 25px;
  margin-top: -12.5px;
  display: inline-block;
  text-align: center;
  background-color: var(--smoke-color);
  color: var(--title-color);
  box-shadow: 0 0 20px -8px rgba(173, 136, 88, 0.5);
  border-radius: 50%;
}

.th-mobile-menu ul .menu-item-has-children>a .th-mean-expand:before {
  content: "\f067";
  font-family: var(--icon-font);
}

.th-mobile-menu ul .menu-item-has-children>a:after {
  content: "\f067";
  font-family: var(--icon-font);
  width: 22px;
  height: 22px;
  line-height: 22px;
  display: inline-block;
  text-align: center;
  font-size: 12px;
  border-radius: 50px;
  background-color: var(--smoke-color);
  float: right;
  margin-top: 1px;
}

.th-mobile-menu ul .menu-item-has-children.th-active>a .th-mean-expand:before {
  content: "\f068";
}

.th-mobile-menu ul .menu-item-has-children.th-active>a:after {
  content: "\f068";
}

.th-mobile-menu>ul {
  padding: 0 40px;
}

.th-mobile-menu>ul>li:last-child {
  border-bottom: none;
}

.th-menu-toggle {
  width: auto;
  height: auto;
  padding: 0;
  font-size: 20px;
  border: none;
  background-color: var(--theme-color);
  color: var(--white-color);
  display: inline-block;
  border-radius: 5px;
}

.th-menu-toggle.style-text,
.th-menu-toggle.style-text-white {
  width: auto;
  height: auto;
  background-color: transparent;
  color: var(--title-color);
  font-size: 20px;
}

.th-menu-toggle.style-text i,
.th-menu-toggle.style-text-white i {
  margin-right: 10px;
}

.th-menu-toggle.style-text-white {
  color: var(--white-color);
}

@media (max-width: 400px) {
  .th-menu-wrapper .th-menu-area {
    width: 100%;
    max-width: 270px;
  }

  .th-mobile-menu>ul {
    padding: 0 20px;
  }
}

/*=================================
    03. Utilities
==================================*/
/*------------------- 3.1. Preloader -------------------*/

@keyframes animloader {
  0% {
    width: 0%;
  }

  100% {
    width: 100%;
  }
}

/*------------------- 3.2. Buttons -------------------*/
.th-btn {
  position: relative;
  z-index: 2;
  vertical-align: middle;
  display: inline-flex;
  border: none;
  text-align: center;
  background-color: var(--theme-color);
  color: var(--white-color);
  font-family: var(--body-font);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  padding: 21px 30px;
  min-width: 170px;
  border-radius: 50px;
  justify-content: center;
  overflow: hidden;
  transition: 0.5s;
}

.th-btn i {
  transition: 0.2s;
  color: var(--white-color);
}

.th-btn:after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--title-color);
  z-index: -1;
  transition: 0.5s;
  -webkit-mask-image: none;
  mask-image: none;
  mask-size: 2300%, 100%;
  animation: ani2 0.5s steps(22) forwards;
}

.th-btn:focus,
.th-btn:hover,
.th-btn:active {
  background: var(--theme-color);
  color: var(--white-color);
}

.th-btn:focus i,
.th-btn:hover i,
.th-btn:active i {
  color: var(--white-color);
}

.th-btn:focus i.fa-arrow-up-right,
.th-btn:hover i.fa-arrow-up-right,
.th-btn:active i.fa-arrow-up-right {
  transform: rotate(45deg);
}

.th-btn:focus:after,
.th-btn:hover:after,
.th-btn:active:after {
  animation: ani 0.5s steps(22) forwards;
}

.th-btn.style2 {
  background: var(--white-color);
}

.th-btn.style2:after {
  background: var(--theme-color);
}

.th-btn.style2:focus,
.th-btn.style2:hover,
.th-btn.style2:active {
  color: var(--title-color);
}

.th-btn.style2:focus i,
.th-btn.style2:hover i,
.th-btn.style2:active i {
  color: var(--title-color);
}

.th-btn.style3 {
  background: var(--title-color);
}

.th-btn.style3:after {
  background: var(--theme-color);
}

.th-btn.style4 {
  background: var(--theme-color);
}

.th-btn.style4:after {
  background: var(--black-color3);
}

.th-btn.style5 {
  background: var(--white-color);
}

.th-btn.style5:after {
  background: var(--title-color);
}

.th-btn.style5:hover {
  color: var(--title-color);
}

.th-btn.style6 {
  background: var(--white-color);
  border-radius: 10px;
  color: var(--title-color);
}

.th-btn.style6 i {
  color: var(--title-color);
}

.th-btn.style6:after {
  background: var(--theme-color);
}

.th-btn.style6:focus,
.th-btn.style6:active,
.th-btn.style6:hover {
  color: var(--title-color);
}

.th-btn.style7 {
  background: var(--theme-color);
  color: var(--white-color);
}

.th-btn.style7 i {
  color: var(--white-color);
}

.th-btn.style7:after {
  background: var(--title-color);
}

.th-btn.style7:focus,
.th-btn.style7:active,
.th-btn.style7:hover {
  color: var(--title-color);
}

.th-btn.style7:focus i,
.th-btn.style7:active i,
.th-btn.style7:hover i {
  color: var(--title-color);
}

.th-btn.style8 {
  background: var(--theme-color);
  border-radius: 10px;
  color: var(--white-color);
}

.th-btn.style8 i {
  color: var(--white-color);
}

.th-btn.style8:after {
  background: var(--title-color);
}

.th-btn.style8:focus,
.th-btn.style8:active,
.th-btn.style8:hover {
  color: var(--title-color);
}

.th-btn.style8:focus i,
.th-btn.style8:active i,
.th-btn.style8:hover i {
  color: var(--title-color);
}

.th-btn.style9 {
  background: var(--white-color);
  border-radius: 10px;
  color: var(--white-color);
}

.th-btn.style9 i {
  color: var(--white-color);
}

.th-btn.style9:after {
  background: var(--theme-color);
}

.th-btn.style9:focus,
.th-btn.style9:active,
.th-btn.style9:hover {
  color: var(--title-color);
}

.th-btn.style9:focus i,
.th-btn.style9:active i,
.th-btn.style9:hover i {
  color: var(--title-color);
}

.th-btn.style10 {
  background: var(--theme-color);
  border-radius: 10px;
  color: var(--white-color);
}

.th-btn.style10 i {
  color: var(--white-color);
}

.th-btn.style10:after {
  background: var(--title-color);
}

.th-btn.style10:focus,
.th-btn.style10:active,
.th-btn.style10:hover {
  color: var(--white-color);
}

.th-btn.style10:focus i,
.th-btn.style10:active i,
.th-btn.style10:hover i {
  color: var(--white-color);
}

.th-btn.style-border {
  border: 2px solid var(--th-border-color);
  background: var(--title-color);
  color: var(--title-color);
  padding: 19px 30px;
}

.th-btn.style-border i {
  color: var(--title-color);
}

.th-btn.style-border:after {
  background: var(--white-color);
}

.th-btn.style-border:focus,
.th-btn.style-border:active,
.th-btn.style-border:hover {
  border: 2px solid var(--title-color);
  color: var(--white-color);
}

.th-btn.style-border:focus i,
.th-btn.style-border:active i,
.th-btn.style-border:hover i {
  color: var(--white-color);
}

.th-btn.style-border2 {
  border: 2px solid var(--white-color);
  background: transparent;
  color: var(--white-color);
  padding: 19px 30px;
}

.th-btn.style-border2:after {
  background: transparent;
}

.th-btn.style-border2:focus,
.th-btn.style-border2:active,
.th-btn.style-border2:hover {
  border: 2px solid var(--white-color);
  color: var(--title-color);
  background: var(--white-color);
}

.th-btn.style-border2:focus i,
.th-btn.style-border2:active i,
.th-btn.style-border2:hover i {
  color: var(--title-color);
}

.th-btn.style-border2:focus:after,
.th-btn.style-border2:active:after,
.th-btn.style-border2:hover:after {
  background: var(--theme-color);
}

.th-btn.style-border3 {
  border: 1px solid var(--black-color3);
  background: transparent;
  color: var(--white-color);
  padding: 20px 30px;
}

.th-btn.style-border3:after {
  background: transparent;
}

.th-btn.style-border3:focus,
.th-btn.style-border3:active,
.th-btn.style-border3:hover {
  border: 1px solid var(--white-color);
  color: var(--title-color);
  background: var(--white-color);
}

.th-btn.style-border3:focus i,
.th-btn.style-border3:active i,
.th-btn.style-border3:hover i {
  color: var(--title-color);
}

.th-btn.style-border3:focus:after,
.th-btn.style-border3:active:after,
.th-btn.style-border3:hover:after {
  background: var(--theme-color);
}

.th-btn.style-border4 {
  border: 2px solid var(--white-color);
  background: transparent;
  color: var(--white-color);
  padding: 19px 30px;
}

.th-btn.style-border4:after {
  background: transparent;
}

.th-btn.style-border4:focus,
.th-btn.style-border4:active,
.th-btn.style-border4:hover {
  border: 2px solid var(--theme-color);
  color: var(--white-color);
  background: var(--theme-color);
}

.th-btn.style-border4:focus i,
.th-btn.style-border4:active i,
.th-btn.style-border4:hover i {
  color: var(--white-color);
}

.th-btn.style-border4:focus:after,
.th-btn.style-border4:active:after,
.th-btn.style-border4:hover:after {
  background: var(--white-color);
}

.th-btn.style-border5 {
  border: 1px solid var(--title-color);
  background: transparent;
  color: var(--title-color);
  padding: 20px 30px;
}

.th-btn.style-border5:after {
  background: transparent;
}

.th-btn.style-border5 i {
  color: var(--title-color);
}

.th-btn.style-border5:focus,
.th-btn.style-border5:active,
.th-btn.style-border5:hover {
  border: 1px solid var(--title-color);
  color: var(--white-color);
  background: var(--title-color);
}

.th-btn.style-border5:focus i,
.th-btn.style-border5:active i,
.th-btn.style-border5:hover i {
  color: var(--white-color);
}

.th-btn.style-border5:focus:after,
.th-btn.style-border5:active:after,
.th-btn.style-border5:hover:after {
  background: var(--theme-color);
}

.th-btn.style-border6 {
  border: 1px solid var(--title-color);
  background: transparent;
  color: var(--title-color);
  padding: 20px 30px;
}

.th-btn.style-border6:after {
  background: transparent;
}

.th-btn.style-border6:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, var(--theme-color) 0%, var(--theme-color2) 50%) border-box;
  -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: destination-out;
  mask-composite: exclude;
  border: 1px solid transparent;
  border-radius: 30px;
  z-index: -1;
  transition: 0.4s;
  opacity: 0;
}

.th-btn.style-border6 i {
  color: var(--title-color);
}

.th-btn.style-border6:focus,
.th-btn.style-border6:active,
.th-btn.style-border6:hover {
  border: 1px solid transparent;
  color: var(--theme-color);
}

.th-btn.style-border6:focus i,
.th-btn.style-border6:active i,
.th-btn.style-border6:hover i {
  color: var(--theme-color);
}

.th-btn.style-border6:focus:before,
.th-btn.style-border6:active:before,
.th-btn.style-border6:hover:before {
  opacity: 1;
}

.th-btn.style-border6:focus:after,
.th-btn.style-border6:active:after,
.th-btn.style-border6:hover:after {
  background: var(--theme-color);
}

.th-btn.style-border7 {
  border: 2px solid rgba(255, 255, 255, 0.1);
  background: transparent;
  color: var(--white-color);
  padding: 20px 30px;
}

.th-btn.style-border7:after {
  background: transparent;
}

.th-btn.style-border7 i {
  color: var(--white-color);
}

.th-btn.style-border7:focus,
.th-btn.style-border7:active,
.th-btn.style-border7:hover {
  border: 2px solid var(--white-color);
  color: var(--theme-color);
  background: var(--white-color);
}

.th-btn.style-border7:focus i,
.th-btn.style-border7:active i,
.th-btn.style-border7:hover i {
  color: var(--theme-color);
}

.th-btn.style-border7:focus:after,
.th-btn.style-border7:active:after,
.th-btn.style-border7:hover:after {
  background: var(--theme-color);
}

.th-btn.style-border8 {
  border: 1px solid var(--white-color);
  background: transparent;
  color: var(--white-color);
  padding: 20px 30px;
  border-radius: 10px;
}

.th-btn.style-border8:after {
  background: transparent;
}

.th-btn.style-border8 i {
  color: var(--white-color);
}

.th-btn.style-border8:focus,
.th-btn.style-border8:active,
.th-btn.style-border8:hover {
  border: 1px solid var(--white-color);
  color: var(--title-color);
  background: var(--white-color);
}

.th-btn.style-border8:focus i,
.th-btn.style-border8:active i,
.th-btn.style-border8:hover i {
  color: var(--title-color);
}

.th-btn.style-border8:focus:after,
.th-btn.style-border8:active:after,
.th-btn.style-border8:hover:after {
  background: var(--theme-color);
}

.th-btn.style-border9 {
  border: 1px solid var(--th-border-color);
  background: var(--theme-color);
  color: var(--title-color);
  padding: 20px 30px;
}

.th-btn.style-border9:after {
  background: var(--white-color);
}

.th-btn.style-border9 i {
  color: var(--title-color);
  transition: 0.4s;
}

.th-btn.style-border9:focus,
.th-btn.style-border9:active,
.th-btn.style-border9:hover {
  border: 1px solid var(--theme-color);
  color: var(--white-color);
  background: var(--theme-color);
}

.th-btn.style-border9:focus i,
.th-btn.style-border9:active i,
.th-btn.style-border9:hover i {
  color: var(--white-color);
}

.th-btn.style-border9:focus:after,
.th-btn.style-border9:active:after,
.th-btn.style-border9:hover:after {
  background: var(--white-color);
}

.th-btn.style-gradient {
  mask-image: url(../img/theme-img/btn-shape.png);
  mask-size: 100% 100%;
  border-radius: 0;
  background: var(--title-color);
}

.th-btn.style-gradient:after {
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color3) 100%);
}

.th-btn.style-gradient2 {
  mask-image: url(../img/theme-img/btn-shape.png);
  mask-size: 100% 100%;
  border-radius: 0;
  background: var(--white-color);
}

.th-btn.style-gradient2:after {
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color3) 100%);
}

.th-btn.style-gradient2:hover {
  color: var(--title-color);
}

.th-btn.style-gradient2:hover i {
  color: var(--title-color);
}

.th-btn.style-gradient3 {
  mask-image: url(../img/theme-img/btn-shape.png);
  mask-size: 100% 100%;
  border-radius: 0;
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color3) 100%);
}

.th-btn.style-gradient3:after {
  background: var(--title-color);
}

.th-btn.style-gradient4 {
  mask-size: 100% 100%;
  border-radius: 0;
  border-radius: 50px;
  background: var(--white-color);
}

.th-btn.style-gradient4:after {
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color3) 100%);
}

.th-btn.style-gradient4:focus,
.th-btn.style-gradient4:active,
.th-btn.style-gradient4:hover {
  color: var(--title-color);
}

.th-btn.style-gradient4:focus img,
.th-btn.style-gradient4:active img,
.th-btn.style-gradient4:hover img {
  filter: brightness(0);
}

.th-btn.style-gradient4:focus i,
.th-btn.style-gradient4:active i,
.th-btn.style-gradient4:hover i {
  color: var(--title-color);
}

.th-btn.style-gradient5 {
  mask-size: 100% 100%;
  border-radius: 0;
  border-radius: 50px;
  background: var(--title-color);
}

.th-btn.style-gradient5:after {
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color3) 100%);
}

.th-btn.style-gradient5:focus,
.th-btn.style-gradient5:active,
.th-btn.style-gradient5:hover {
  color: var(--white-color);
}

.th-btn.style-gradient6 {
  mask-size: 100% 100%;
  border-radius: 0;
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color2) 100%);
  border-radius: 50px;
  background: var(--title-color);
}

.th-btn.style-gradient6:after {
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color2) 100%);
}

.th-btn.style-gradient6:focus,
.th-btn.style-gradient6:active,
.th-btn.style-gradient6:hover {
  color: var(--white-color);
}

.th-btn.style-gradient7 {
  mask-size: 100% 100%;
  border-radius: 0;
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color2) 100%);
  border-radius: 50px;
  background: var(--white-color);
}

.th-btn.style-gradient7:after {
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color2) 100%);
}

.th-btn.style-gradient7:focus,
.th-btn.style-gradient7:active,
.th-btn.style-gradient7:hover {
  color: var(--title-color);
}

.th-btn.style-gradient7:focus i,
.th-btn.style-gradient7:active i,
.th-btn.style-gradient7:hover i {
  color: var(--title-color);
}

.th-btn.btn-fw {
  width: 100%;
}

.th-btn.btn-fw:before,
.th-btn.btn-fw:after {
  display: none;
}

.th-btn.btn-fw:hover {
  background: var(--theme-color);
  color: var(--white-color);
}

.th-btn.btn-md {
  padding: 20px 48px;
}

.th-btn.btn-sm {
  padding: 16px 25px;
  min-width: 140px;
}

.th-btn.btn-radius-0 {
  border-radius: 0;
}

.th-btn.btn-radius-8 {
  border-radius: 8px;
}

.th-btn.btn-radius-10 {
  border-radius: 10px;
}

.th-btn.circle-btn {
  height: 210px;
  width: 210px;
  min-width: auto;
  border-radius: 50%;
  align-items: center;
  font-weight: 500;
  font-size: 16px;
  padding: 20px;
  border: 1px solid var(--black-color3);
}

.th-btn.circle-btn:after {
  background: var(--black-color);
}

.th-btn.circle-btn.style2 {
  color: var(--title-color);
}

.th-btn.circle-btn.style2 i {
  color: var(--title-color);
}

.th-btn.circle-btn.style2:after {
  background: transparent;
}

.th-btn.circle-btn.style2:hover {
  background: var(--title-color);
  color: var(--white-color);
}

.th-btn.circle-btn.style2:hover i {
  color: var(--white-color);
}

.th-btn.circle-btn.style3 {
  border: 1px solid var(--smoke-color);
  width: 180px;
  height: 180px;
  font-size: 30px;
  background: var(--theme-color);
}

.th-btn.circle-btn.style3:after {
  background: var(--smoke-color);
}

.th-btn.circle-btn.style3 i {
  background: linear-gradient(90deg, var(--theme-color) 0%, var(--theme-color3) 180%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  transition: 0.4s;
}

.th-btn.circle-btn.style3:hover {
  border: 1px solid var(--theme-color);
}

.th-btn.circle-btn.style3:hover i {
  -webkit-text-fill-color: var(--white-color);
}

.th-btn.circle-btn.style-border {
  background: transparent;
  border: 1px solid #626262;
  color: var(--white-color);
}

.th-btn.circle-btn.style-border>i {
  color: var(--white-color);
}

.th-btn.circle-btn.style-border:after {
  background: transparent;
}

.th-btn.circle-btn.style-border:focus,
.th-btn.circle-btn.style-border:active,
.th-btn.circle-btn.style-border:hover {
  background: var(--white-color);
  color: var(--title-color);
}

.th-btn.circle-btn.style-border:focus>i,
.th-btn.circle-btn.style-border:active>i,
.th-btn.circle-btn.style-border:hover>i {
  color: var(--title-color);
}

@keyframes ani {
  from {
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
  }

  to {
    -webkit-mask-position: 100% 0;
    mask-position: 100% 0;
  }
}

@keyframes ani2 {
  from {
    -webkit-mask-position: 100% 0;
    mask-position: 100% 0;
  }

  to {
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
  }
}

@keyframes btn-icon-anim {
  0% {
    top: 0;
    right: 2px;
  }

  25% {
    top: -10px;
    right: -10px;
  }

  50% {
    top: 10px;
    opacity: 0;
    right: 17px;
  }

  100% {
    top: 0;
    right: 2px;
    opacity: 1;
  }
}

/*------------------- 3.3. Titles -------------------*/
.sec-title {
  margin-bottom: calc(var(--section-title-space) - 11px);
  margin-top: -0.24em;
  font-weight: 700;
}

.sec-title.style2 {
  font-size: 44px;
  font-weight: 500;
  line-height: 1.227;
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .sec-title.style2 {
    font-size: 36px;
  }
}

.sec-title.style2 {
  /* Small devices */
}

@media (max-width: 767px) {
  .sec-title.style2 {
    font-size: 34px;
  }
}

.sec-title.style2 {
  /* Small devices */
}

@media (max-width: 767px) {
  .sec-title.style2 {
    font-size: 30px;
  }
}

.sec-title.style3 {
  font-size: 54px;
  line-height: 1.185;
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .sec-title.style3 {
    font-size: 40px;
  }
}

.sec-title.style3 {
  /* Medium Large devices */
}

@media (max-width: 1299px) {
  .sec-title.style3 {
    font-size: 36px;
  }
}

.sec-title.style3 {
  /* Small devices */
}

@media (max-width: 767px) {
  .sec-title.style3 {
    font-size: 34px;
  }
}

.sec-title.style3 {
  /* Small devices */
}

@media (max-width: 767px) {
  .sec-title.style3 {
    font-size: 30px;
  }
}

.sub-title {
  display: inline-block;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
  font-family: var(--title-font);
  color: var(--theme-color);
  text-transform: uppercase;
  margin-bottom: 28px;
  line-height: 24px;
  position: relative;
  padding-bottom: 4px;
}

.sub-title:before,
.sub-title:after {
  content: "";
  position: relative;
  height: 1px;
  width: 100px;
  background: var(--th-border-color);
  display: inline-block;
  top: -4px;
}

.sub-title:before {
  margin-right: 20px;
}

.sub-title:after {
  margin-left: 20px;
}

.sub-title.text-white:after {
  background: var(--white-color);
}

.sub-title.before-none:before {
  display: none;
}

.sub-title.h4 {
  font-size: 30px;
  font-weight: 600;
  line-height: 1;
  margin-top: -0.14em;
}

.sub-title.style2:after,
.sub-title.style2:before {
  background: var(--title-color);
}

.sub-title.style3 {
  font-size: 16px;
  font-weight: 400;
  font-family: var(--body-font);
  background: transparent;
  padding: 10px 16px;
}

.sub-title.style3:before {
  display: none;
}

.sub-title.style3:after {
  width: auto;
  height: auto;
  inset: 0;
  border-radius: 48px;
  border: 1px solid transparent;
  background: linear-gradient(0, transparent 0%, var(--theme-color) 100%) border-box;
  -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: destination-out;
  mask-composite: exclude;
}

.sub-title {
  /* Extra small devices */
}

@media (max-width: 575px) {

  .sub-title:after,
  .sub-title:before {
    width: 30px;
  }
}

.sub-title {
  /* Extra small devices */
}

@media (max-width: 375px) {

  .sub-title:after,
  .sub-title:before {
    display: none;
  }
}

.sec-text {
  font-size: 18px;
}

.box-title {
  font-size: 24px;
  line-height: 1.417;
  font-weight: 600;
  margin-top: -0.32em;
}

.box-title a {
  color: inherit;
}

.box-title a:hover {
  color: var(--theme-color);
}

.title-area {
  margin-bottom: calc(var(--section-title-space) - 18px);
  position: relative;
  z-index: 2;
}

.title-area:has(.sub-title) {
  margin-top: -0.4em;
}

.title-area .sec-title {
  margin-bottom: 18px;
}

.title-area.mb-0 .sec-title {
  margin-bottom: -0.24em;
}

.title-area.text-center .sub-title {
  justify-content: center;
}

/* Large devices */
@media (max-width: 1199px) {

  .title-area,
  .sec-title {
    --section-title-space: 60px;
  }

  .title-area.mb-45,
  .sec-title.mb-45 {
    margin-bottom: 36px;
  }
}

/* Medium devices */
@media (max-width: 991px) {

  .title-area,
  .sec-title {
    --section-title-space: 50px;
  }

  .title-area.mb-45,
  .sec-title.mb-45 {
    margin-bottom: 35px;
  }

  .sub-title.h4 {
    font-size: 22px;
  }
}

/* Small devices */

/* Extra small devices */

/*------------------- 3.4. Common -------------------*/
.shape-mockup-wrap {
  z-index: 2;
  position: relative;
}

.shape-mockup {
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

.badge {
  position: absolute;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: inline-block;
  text-align: center;
  background-color: var(--theme-color);
  color: var(--white-color);
  padding: 0.25em 0.45em;
  font-size: 0.7em;
  border-radius: 50%;
  top: 8px;
  right: 8px;
  font-weight: 400;
  transition: 0.3s ease-in-out;
}

.th-social a {
  display: inline-block;
  width: var(--icon-size, 40px);
  height: var(--icon-size, 40px);
  line-height: var(--icon-size, 40px);
  background-color: var(--white-color);
  border: 0;
  color: var(--title-color);
  font-size: 18px;
  text-align: center;
  margin-right: 6px;
  border-radius: 50%;
}

.th-social a:last-child {
  margin-right: 0;
}

.th-social a:hover {
  background-color: var(--theme-color);
  color: var(--white-color);
}

.th-social.color-theme a {
  color: var(--body-color);
  border-color: var(--theme-color);
}

.th-social.style2 a {
  --icon-size: 40px;
  border: 1px solid var(--th-border-color);
  background: transparent;
  color: var(--body-color);
  font-size: 16px;
}

.th-social.style2 a:hover {
  background: var(--theme-color);
  color: var(--white-color);
}

.th-social.style3 a {
  --icon-size: 40px;
}

.th-social.style4 a {
  --icon-size: 44px;
  line-height: 46px;
  border-radius: 50%;
  background: var(--black-color2);
  color: var(--theme-color);
  border: 0;
}

.th-social.style4 a:hover {
  background: var(--theme-color);
  color: var(--white-color);
}

.th-social.style5 a {
  background: var(--black-color2);
  color: var(--theme-color);
}

.th-social.style5 a:hover {
  background: var(--theme-color);
  color: var(--title-color);
}

.th-social.style6 a {
  background: var(--smoke-color);
  border: 0;
  font-size: 16px;
  --icon-size: 40px;
  line-height: 42px;
}

.th-social.style6 a:hover {
  background: var(--theme-color2);
  color: var(--white-color);
}

.th-social.style7 a {
  color: var(--theme-color);
}

.th-social.style7 a:hover {
  color: var(--title-color);
}

.th-social.style8 a {
  background: var(--white-color);
  color: var(--theme-color);
}

.th-social.style8 a:hover {
  background: var(--title-color);
}

.th-social.style9 a {
  background: transparent;
  color: var(--theme-color);
  border: 1px solid var(--th-border-color);
  --icon-size: 32px;
  line-height: 32px;
  margin-right: 5px;
  font-size: 14px;
}

.th-social.style9 a:hover {
  background: var(--title-color);
}

.th-social.style10 a {
  background: transparent;
  color: var(--white-color);
  border: 1px solid var(--black-color3);
  --icon-size: 46px;
  line-height: 46px;
  margin-right: 7px;
  font-size: 14px;
}

.th-social.style10 a:hover {
  background: var(--theme-color);
  border-color: var(--theme-color);
}

.th-social.style11 a {
  background: transparent;
  color: var(--white-color);
  border: 1px solid var(--black-color3);
  --icon-size: 46px;
  line-height: 46px;
  margin-right: 7px;
  font-size: 16px;
}

.th-social.style11 a:hover {
  background: var(--theme-color);
  border-color: var(--theme-color);
  color: var(--title-color);
}

.bg-mask {
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
}

.box-icon img {
  transition: 0.4s ease-in-out;
}

.box-text {
  margin-bottom: -0.5em;
}

.th-bg-img {
  position: absolute;
  inset: 0;
}

.th-bg-img img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.color-masking {
  position: relative;
  display: inline-block;
}

.color-masking .masking-src {
  position: absolute;
  inset: 0;
  mix-blend-mode: color;
  background: var(--theme-color);
}

.th-radius {
  border-radius: 50px;
}

.scroll-to-zoom {
  transform: scale(0.8);
}

@keyframes gridanim {
  0% {
    top: -60px;
  }

  50% {
    top: 100%;
  }

  100% {
    top: -60px;
    background: linear-gradient(180deg, var(--white-color) 0%, rgba(255, 255, 255, 0) 100%);
  }
}

@keyframes gridanim2 {
  0% {
    top: -60px;
  }

  50% {
    top: 100%;
  }

  100% {
    top: -60px;
    background: linear-gradient(180deg, var(--theme-color) 0%, rgba(255, 255, 255, 0) 100%);
  }
}

/*------------------- 3.6. Font -------------------*/

/*------------------- 3.7. Background -------------------*/

.bg-smoke {
  background-color: var(--smoke-color) !important;
}

.bg-white {
  background-color: var(--white-color) !important;
}

.bg-title {
  background-color: var(--title-color) !important;
}

.background-image,
[data-bg-src] {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

/*------------------- 3.8. Text Color -------------------*/

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

/*------------------- 3.9. Overlay -------------------*/
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

/*------------------- 3.10. Animation -------------------*/

@keyframes ripple {
  0% {
    transform: scale(1);
    opacity: 0;
  }

  30% {
    opacity: 0.4;
  }

  100% {
    transform: scale(1.8);
    opacity: 0;
  }
}

@keyframes ripple2 {
  0% {
    transform: scale(1);
    opacity: 0;
  }

  30% {
    opacity: 0.4;
  }

  100% {
    transform: scale(2.8);
    opacity: 0;
  }
}

@keyframes morph {
  0% {
    border-radius: 60% 40% 30% 70%/60% 30% 70% 40%;
  }

  50% {
    border-radius: 30% 60% 70% 40%/50% 60% 30% 60%;
  }

  100% {
    border-radius: 60% 40% 30% 70%/60% 30% 70% 40%;
  }
}

@keyframes movingX {
  0% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(50px);
  }

  100% {
    transform: translateX(0);
  }
}

@keyframes shake {
  0% {
    transform: rotate(0);
  }

  50% {
    transform: rotate(-10deg);
  }

  100% {
    transform: rotate(0);
  }
}

@keyframes movingCar {
  0% {
    transform: translateX(0) rotateY(0deg);
  }

  50% {
    transform: translateX(calc(-100vw + 108%));
  }

  51% {
    transform: translateX(calc(-100vw + 108%)) rotateY(180deg);
  }

  100% {
    transform: translateX(0) rotateY(180deg);
  }
}

.moving {
  animation: moving 8s linear infinite;
}

@keyframes moving {
  0% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(-50px);
  }

  100% {
    transform: translateX(0);
  }
}

@keyframes movingY {
  0% {
    left: 0;
  }

  50% {
    left: calc(100% - 20px);
  }

  100% {
    left: 0;
  }
}

@keyframes jumpAni {
  0% {
    transform: translateY(0);
  }

  40% {
    transform: translateY(-30px);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes jumpReverseAni {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(30px);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes spin2 {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(-360deg);
  }
}

@keyframes bounce {

  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }

  40% {
    transform: translateY(-30px);
  }

  60% {
    transform: translateY(-15px);
  }
}

@keyframes bgColor {
  0% {
    background-color: #F2BA4C;
  }

  25% {
    background-color: #81F24C;
  }

  50% {
    background-color: #41F27D;
  }

  75% {
    background-color: #0500FF;
  }

  100% {
    background-color: #F2BA4C;
  }
}

@keyframes twinkle {

  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.1;
  }
}

@keyframes twinkle2 {

  0%,
  100% {
    scale: 1;
  }

  50% {
    scale: 0.9;
  }
}

.scroll-text-ani {
  background: linear-gradient(to right, var(--title-color) 0%, var(--th-border-color) 0%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  line-height: 1.2;
  transition: background 0.4s ease-out;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

@keyframes animate-positive {
  0% {
    width: 0;
  }
}

@keyframes fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes slideinup {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideinright {
  0% {
    opacity: 0;
    transform: translateX(180px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideindown {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideinleft {
  0% {
    opacity: 0;
    transform: translateX(-100px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slidebottomright {
  0% {
    opacity: 0;
    transform: translateX(120px) translateY(120px);
  }

  100% {
    opacity: 1;
    transform: translateX(0) translateY(0);
  }
}

@keyframes slidetopleft {
  0% {
    opacity: 0;
    transform: translateX(-100px) translateY(-100px);
  }

  100% {
    opacity: 1;
    transform: translateX(0) translateY(0);
  }
}

/*animation bubble****************/

@keyframes bubble-animation {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    height: 1px;
    width: 1px;
  }

  100% {
    -webkit-transform: translate3d(-50%, -280px, 0);
    transform: translate3d(-50%, -280px, 0);
    height: 30px;
    width: 30px;
  }
}

@keyframes toTopFromBottom {
  49% {
    transform: translateY(-100%);
  }

  50% {
    opacity: 0;
    transform: translateY(100%);
  }

  51% {
    opacity: 1;
  }
}

/*custom-animation**********************/

@keyframes custom-anim-right {
  0% {
    transform: translateX(5%);
    clip-path: inset(0 0 0 100%);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}

@keyframes custom-anim-left {
  0% {
    transform: translateX(-5%);
    clip-path: inset(0 100% 0 0);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}

@keyframes custom-anim-top {
  0% {
    transform: translateY(-5%);
    clip-path: inset(0 0 100% 0);
    opacity: 0;
  }

  100% {
    transform: translateY(0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}

@keyframes custom-anim-bottom {
  0% {
    transform: translate3d(0, 100%, 0);
    clip-path: inset(100% 0 0 0);
    opacity: 0;
  }

  100% {
    transform: translateZ(0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}

@keyframes fadeinup {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeinright {
  0% {
    opacity: 0;
    transform: translateX(100px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeinleft {
  0% {
    opacity: 0;
    transform: translateX(-50px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.scroll-text-ani {
  background: linear-gradient(to right, var(--title-color) 0%, var(--th-border-color) 0%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  line-height: 1.2;
  transition: background 0.4s ease-out;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

/*=================================
    04. Template Style
==================================*/
/*------------------- 4.1. Widget  -------------------*/

.th-blog ul.wp-block-archives li {
  margin: 5px 0;
}

.th-video-widget .video-thumb {
  position: relative;
}

.th-video-widget .play-btn {
  --icon-size: 60px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.th-video-widget .play-btn i {
  font-size: 16px;
}

.th-video-widget .video-thumb-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  margin-top: 10px;
  margin-bottom: -0.3em;
}

/* Large devices */

/* Medium devices */

/* Extra small devices */

/* Extra small devices */

.th-widget-about {
  max-width: 283px;
}

.th-widget-about .about-logo {
  margin-bottom: 30px;
}

.th-widget-about .about-text {
  margin-bottom: 35px;
  margin-top: -0.5em;
}

.th-newsletter-widget {
  max-width: 442px;
}

.th-newsletter-widget .widget_title {
  font-size: 30px;
  padding-bottom: 0;
  margin-bottom: 20px;
}

.th-newsletter-widget .widget_title:after,
.th-newsletter-widget .widget_title:before {
  display: none;
}

.th-newsletter-widget .widget_title {
  /* Medium devices */
}

@media (max-width: 991px) {
  .th-newsletter-widget .widget_title {
    font-size: 24px;
  }
}

.th-newsletter-widget .newsletter-form {
  margin-top: 32px;
  position: relative;
  display: block;
}

.th-newsletter-widget .newsletter-form .form-group input {
  backdrop-filter: none;
  font-size: 14px;
  height: 56px;
  padding: 0 30px;
  border: 0;
  border-radius: 50px;
  background: var(--gray-color);
  padding-right: 145px;
}

.th-newsletter-widget .newsletter-form .form-group input::placeholder {
  color: var(--body-color);
}

.th-newsletter-widget .newsletter-form .form-group:after {
  display: none;
}

.th-newsletter-widget .newsletter-form .th-btn {
  font-size: 14px;
  font-weight: 500;
  padding: 12px 27px;
  position: absolute;
  right: 8px;
  top: 9px;
}

.th-newsletter-widget .form-group {
  margin-bottom: 0;
}

.th-newsletter-widget .check-group {
  margin-bottom: 20px;
}

.th-newsletter-widget.style2 .newsletter-form .th-btn {
  border-radius: 30px;
}

.th-newsletter-widget.style3 .newsletter-form .form-group input {
  border-radius: 0px;
}

.th-widget-instagram .instagram-feeds {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  max-width: 312px;
}

.th-widget-instagram .insta-thumb {
  overflow: hidden;
  position: relative;
  border-radius: 16px;
}

.th-widget-instagram .insta-thumb img {
  width: 100%;
}

.th-widget-instagram .insta-thumb:before {
  content: "";
  height: calc(100% - 14px);
  width: calc(100% - 14px);
  background-color: var(--title-color);
  opacity: 0.8;
  position: absolute;
  top: 7px;
  left: 7px;
  transform: scaleX(0);
  border-radius: inherit;
  transition: 0.4s ease-in-out;
}

.th-widget-instagram .insta-thumb .insta-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  color: var(--white-color);
  visibility: hidden;
  opacity: 0;
  transform: translate(-50%, 20px);
  background: transparent;
}

.th-widget-instagram .insta-thumb .insta-btn:hover {
  color: var(--theme-color);
}

.th-widget-instagram .insta-thumb:hover:before {
  transform: scaleX(1);
}

.th-widget-instagram .insta-thumb:hover .insta-btn {
  transform: translate(-50%, -50%);
  opacity: 1;
  visibility: visible;
}

/* Large devices */

/* Small devices */
@media (max-width: 767px) {

  .th-widget-about .about-text {
    margin-bottom: 20px;
  }
}

/* ---------------- Scroll Cue Plugin --------------------*/
/**-----------------------

 scrollCue.js - ver.2.0.0
 URL : https://prjct-samwest.github.io/scrollCue/

 created by SamWest.
 Copyright (c) 2020 SamWest.
 This plugin is released under the MIT License.

 -----------------------**/
/**  ---------------
     fadeIn
*/

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/**  ---------------
     slideInLeft
*/

@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-60px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/**  ---------------
     slideInRight
*/
[data-cue=slideInRight] {
  opacity: 0;
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(60px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/**  ---------------
     slideInDown
*/

@keyframes slideInDown {
  from {
    opacity: 0;
    transform: translateY(-60px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/**  ---------------
     slideInUp
*/
[data-cue=slideInUp] {
  opacity: 0;
}

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(60px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/**  ---------------
     zoomIn
*/

@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale(0.8);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

/**  ---------------
     zoomOut
*/

@keyframes zoomOut {
  from {
    opacity: 0;
    transform: scale(1.2);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

/**  ---------------
     rotateIn
*/

@keyframes rotateIn {
  from {
    opacity: 0;
    transform: rotateZ(-15deg);
  }

  to {
    opacity: 1;
    transform: rotateZ(0deg);
  }
}

/**  ---------------
     bounceIn
*/

@keyframes bounceIn {
  0% {
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    transform: scale3d(0.97, 0.97, 0.97);
  }

  100% {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}

/**  ---------------
     bounceInLeft
*/

@keyframes bounceInLeft {

  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }

  75% {
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    transform: translate3d(5px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/**  ---------------
     bounceInRight
*/

@keyframes bounceInRight {

  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    transform: translate3d(10px, 0, 0);
  }

  90% {
    transform: translate3d(-5px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/**  ---------------
     bounceInDown
*/

@keyframes bounceInDown {

  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }

  75% {
    transform: translate3d(0, -10px, 0);
  }

  90% {
    transform: translate3d(0, 5px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/**  ---------------
     bounceInUp
*/

@keyframes bounceInUp {

  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }

  75% {
    transform: translate3d(0, 10px, 0);
  }

  90% {
    transform: translate3d(0, -5px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/**  ---------------
     flipInX
*/

@keyframes flipInX {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    animation-timing-function: ease-in;
  }

  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    opacity: 1;
    transform: perspective(400px);
  }
}

/**  ---------------
     flipInY
*/

@keyframes flipInY {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    animation-timing-function: ease-in;
  }

  60% {
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    opacity: 1;
    transform: perspective(400px);
  }
}

/*------------------- 4.2. Header  -------------------*/
/*------------------- 4.3. Footer  -------------------*/
.footer-wrapper {
  --border-color: rgba(255, 255, 255, 0.3);
  --body-color: #829592;
  position: relative;
  z-index: 2;
  background-color: var(--black-color2);
  overflow: hidden;
}

/* Medium devices */

/* Small devices */

/* Extra small devices */

/* Medium devices */

/* footer default ---------------------------------- */
.footer-default {
  position: relative;
  background: transparent;
  --body-color: #D7D7D7;
}

.footer-default .footer-bg-shape {
  position: absolute;
  inset: 0;
  z-index: -1;
  /* Large devices */
}

@media (max-width: 1199px) {
  .footer-default .footer-bg-shape {
    mask-image: none !important;
    border-radius: 50px 50px 0 0;
  }
}

.footer-default .footer-bg-shape {
  /* Extra small devices */
}

@media (max-width: 575px) {
  .footer-default .footer-bg-shape {
    border-radius: 30px 30px 0 0;
  }
}

.footer-default .footer-bg-shape2 {
  /* Extra large devices */
}

@media (max-width: 1500px) {
  .footer-default .footer-bg-shape2 {
    right: -60% !important;
    bottom: -45% !important;
  }
}

.footer-default .footer-bg-shape2 {
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .footer-default .footer-bg-shape2 {
    right: -70% !important;
    bottom: -45% !important;
  }
}

.footer-default .footer-bg-shape2 {
  /* Medium Large devices */
}

@media (max-width: 1299px) {
  .footer-default .footer-bg-shape2 {
    right: -80% !important;
    bottom: -50% !important;
  }
}

.footer-default .footer-cta-wrap {
  position: relative;
}

/* footer 1 ---------------------------------- */

/* footer 3 ---------------------------------- */

/* footer 4 ---------------------------------- */

/* footer 6 ---------------------------------- */

/* footer 7 ---------------------------------- */

/* footer 8 ---------------------------------- */

/* footer 9 ---------------------------------- */

/* footer 10 ---------------------------------- */

/* footer 11 ---------------------------------- */

/*------------------- 4.4. Breadcumb  -------------------*/
/*------------------- 4.5. Pagination  -------------------*/
/*------------------- 4.8. Hero Area  -------------------*/
/* Hero Global ---------------------------------- */
.th-hero-wrapper {
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.th-hero-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
}

.th-hero-bg img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

/* Hero 1 ---------------------------------- */
.hero-title {
  line-height: 1.222;
  margin-bottom: 20px;
  margin-top: -0.25em;
}

.hero-title span {
  display: block;
}

.hero-1 {
  position: relative;
}

.hero-1:after,
.hero-1:before {
  content: "";
  position: absolute;
  inset: 0;
}

.hero-1:after {
  background: var(--black-color);
  opacity: 0.3;
  mix-blend-mode: soft-light;
  /* Large devices */
}

@media (max-width: 1199px) {
  .hero-1:after {
    opacity: 0.7;
  }
}

.hero-1:before {
  background: var(--theme-color);
  mix-blend-mode: hue;
}

@keyframes scrollMove {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: translateY(10px);
  }
}

.hero-style1 {
  position: relative;
  z-index: 6;
  padding: 270px 0 370px;
  /* Extra large devices */
}

@media (max-width: 1500px) {
  .hero-style1 {
    padding: 250px 0 350px;
  }
}

.hero-style1 {
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .hero-style1 {
    padding: 220px 0 320px;
  }
}

.hero-style1 {
  /* Medium Large devices */
}

@media (max-width: 1299px) {
  .hero-style1 {
    padding: 220px 0 300px;
  }
}

.hero-style1 {
  /* Medium Large devices */
}

@media (max-width: 1299px) {
  .hero-style1 {
    padding: 220px 0;
  }
}

.hero-style1 .btn-wrap {
  gap: 24px;
  margin-top: 36px;
}

.hero-style1 {
  /* Extra large devices */
}

.hero-style1 {
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .hero-style1 .sub-title {
    font-size: 20px;
  }
}

.hero-style1 {
  /* Large devices */
}

@media (max-width: 1199px) {
  .hero-style1 {
    text-align: center;
  }

  .hero-style1 .sub-title {
    margin-bottom: 26px;
  }

  .hero-style1 .btn-wrap {
    justify-content: center;
  }
}

.hero-style1 {
  /* Small devices */
}

@media (max-width: 767px) {
  .hero-style1 .sub-title {
    font-size: 18px;
  }
}

/* Hero 2 --------------------------------------*/

/* Hero 3 --------------------------------------*/

/* Hero 4 --------------------------------------*/

/* Hero 5 --------------------------------------*/

/* Hero 6 --------------------------------------*/

/* Hero 7 --------------------------------------*/

/* Hero 8 --------------------------------------*/

/* Hero 9 --------------------------------------*/

/* Hero 10 --------------------------------------*/

/* Hero 11 --------------------------------------*/

/* Hero 12 --------------------------------------*/

/* Hero 13 --------------------------------------*/

/*------------------- 4.9. Error  -------------------*/
/*------------------- 4.00. Contact  -------------------*/
/* Consulting Area 1 ---------------------------------- */

/* Contact Area 1 ---------------------------------- */

/* Contact Area 2 ---------------------------------- */

/* Contact Area 4 ---------------------------------- */

/* Team Details Contact Form ---------------------------------- */

/* Contact Page ---------------------------------- */

/*------------------- 4.00. About  -------------------*/
/* About 1 ---------------------------------- */

/* About 3 ---------------------------------- */

/* About 4 ---------------------------------- */

/* About 5 ---------------------------------- */

/* About 6 ---------------------------------- */

/* About 7 ---------------------------------- */

/* About 9 ---------------------------------- */
.about-wrap9 .sec-title {
  margin-left: auto;
  margin-right: auto;
}

.about-wrap9 .sec-text {
  font-size: 20px;
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .about-wrap9 .sec-text {
    font-size: 18px;
  }
}

.about-wrap9 .sec-text {
  /* Medium devices */
}

@media (max-width: 991px) {
  .about-wrap9 .sec-text {
    font-size: 16px;
  }
}

.img-box9 {
  border-radius: 30px;
  overflow: hidden;
}

.img-box9 img {
  width: 100%;
}

.img-box9 {
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .img-box9 {
    margin-right: -20px;
  }
}

.img-box9 {
  /* Medium Large devices */
}

@media (max-width: 1299px) {
  .img-box9 {
    margin-right: 0;
  }
}

/* About 10 ---------------------------------- */
.about-bg-shape10-1 {
  transform: translate(-50%, -50%) scale(1.3);
  opacity: 0.6;
}

.about-wrap10 .sec-title {
  margin-left: auto;
  margin-right: auto;
}

.about-wrap10 .sec-text {
  font-size: 20px;
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .about-wrap10 .sec-text {
    font-size: 18px;
  }
}

.about-wrap10 .sec-text {
  /* Medium Large devices */
}

.about-wrap10 .sec-text {
  /* Medium devices */
}

@media (max-width: 991px) {
  .about-wrap10 .sec-text {
    margin-left: 0;
    max-width: none;
    text-align: center;
    font-size: 16px;
  }
}

/* Architecture Showcase — 3-column layout */
.arch-showcase {
  display: flex;
  align-items: center;
  gap: 24px;
  width: 100%;
}

.arch-showcase__col--img {
  flex: 0 1 40%;
  max-width: 600px;
  min-width: 0;
}

.arch-showcase__col--img img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 20px;
  display: block;
}

.arch-showcase__col--stats {
  flex: 0 0 20%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.arch-showcase .counter-card {
  border-radius: 16px;
  background: var(--white-color);
  border: 1px solid var(--th-border-color);
  text-align: center;
  padding: 14px 8px;
  width: 100%;
}

.arch-showcase .counter-card .box-number {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 2px;
}

.arch-showcase .counter-card .box-text {
  font-size: 11px;
  font-weight: 500;
  font-family: var(--title-font);
  color: var(--title-color);
  display: block;
  margin: 0 auto;
}

/* Architecture Ribbon — layered circle badge */
.arch-ribbon {
  position: relative;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: var(--white-color);
  margin-top: 8px;
  flex-shrink: 0;
}

/* Layer 2: rotating text — 10px smaller than parent on each side */
.arch-ribbon__text {
  position: absolute;
  inset: 5px;
  border-radius: 50%;
  --arch-ribbon-font-size: 20px;
  --arch-rotate-letter: 11deg;
  --arch-char-width: 0.82em;
}

/* Override the base .circle-title-anime to fill this layer */
.arch-ribbon__text .circle-title-anime {
  width: 100%;
  height: 100%;
  margin: 0;
  top: 0;
  left: 0;
  font-size: var(--arch-ribbon-font-size);
  color: var(--theme-color);
  line-height: 1;
}

.arch-ribbon__text .circle-title-anime span {
  --rotate-letter: var(--arch-rotate-letter);
  height: 50%;
  width: var(--arch-char-width);
  left: calc(50% - (var(--arch-char-width) / 2));
  top: 0;
}

/* Layer 3: dark center dot */
.arch-ribbon__dot {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 55%;
  height: 55%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: var(--title-color);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

/* Layer 4: logo inside the dot */
.arch-ribbon__dot img {
  width: 40px;
  display: block;
}

@media (max-width: 1199px) {
  .arch-ribbon {
    display: none;
  }
}

/* Responsive */
@media (max-width: 1399px) {
  .arch-showcase {
    gap: 16px;
  }

  .arch-showcase .counter-card {
    padding: 10px 6px;
  }

  .arch-showcase .counter-card .box-number {
    font-size: 18px;
  }

  .arch-showcase .counter-card .box-text {
    font-size: 10px;
  }

  .arch-ribbon {
    width: 130px;
    height: 130px;
  }

  .arch-ribbon__dot img {
    width: 34px;
  }

  .arch-ribbon__text .circle-title-anime {
    font-size: var(--arch-ribbon-font-size);
  }
}

@media (max-width: 991px) {
  .arch-showcase {
    gap: 12px;
  }

  .arch-showcase .counter-card .box-number {
    font-size: 16px;
  }

  .arch-showcase .counter-card .box-text {
    font-size: 9px;
  }
}

@media (max-width: 767px) {
  .arch-showcase {
    flex-wrap: wrap;
    justify-content: center;
  }

  .arch-showcase__col--img {
    flex: 0 1 calc(50% - 8px);
    max-width: calc(50% - 8px);
  }

  .arch-showcase__col--stats {
    flex: 0 0 100%;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
    order: 3;
  }

  .arch-showcase .counter-card {
    flex: 0 0 calc(50% - 5px);
  }
}

/* About 11 ---------------------------------- */

/* About 12 ---------------------------------- */

/* About 13 ---------------------------------- */

/* About Page ---------------------------------- */

/*------------------- 4.00. Counter  -------------------*/
/* Counter 1 ---------------------------------- */
.counter-card {
  text-align: center;
  padding: 37.6px 0;
}

.counter-card .box-number {
  margin-top: -0.22em;
  margin-bottom: -0.1em;
}


@media (max-width: 767px) {
  .counter-card .box-text {
    font-size: 16px;
    max-width: 170px;
  }
}

/* Counter 2 ---------------------------------- */

/* Counter 4 ---------------------------------- */

/* Counter 5 ---------------------------------- */

/* Counter 6 ---------------------------------- */

/* Counter 7 ---------------------------------- */

/*------------------- 4.00. Service -------------------*/
/* Service Card ---------------------------------- */
.service-bg-shape1-1 {
  transform: translate(-50%, 0);
}

.service-bg-shape1-1 img {
  transform-origin: bottom;
}

.service-card {
  position: relative;
  padding: 30px;
  overflow: hidden;
  background: var(--white-color);
  box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.05);
  border-radius: 30px;
}

.service-card .box-icon {
  margin-bottom: 24px;
}

.service-card .box-icon .color-masking {
  transition: all 0.4s ease-in-out;
}

.service-card .box-title {
  margin-bottom: -0.3em;
}

.service-card .box-title a {
  font-size: 24px;
  font-weight: 700;
  color: var(--title-color);
}

.service-card .box-title a:hover {
  color: var(--theme-color);
}

.service-card .box-text {
  margin-top: 15px;
  margin-bottom: 14px;
}

.service-card:hover .box-icon .color-masking {
  transform: scale(-1) rotate(180deg);
}

.service-card {
  /* Medium Large devices */
}

@media (max-width: 1299px) {

  .service-card .box-content {
    transform: rotate(0);
    width: -webkit-fill-available;
    margin: 32px;
    opacity: 0;
  }
}

.service-card {
  /* Medium devices */
}

@media (max-width: 991px) {
  .service-card .box-content {
    padding: 50px;
  }
}

.service-card {
  /* Small devices */
}

@media (max-width: 767px) {

  .service-card .box-content {
    padding: 40px;
  }

  .service-card .box-number {
    font-size: 30px;
  }

  .service-card .box-title a {
    font-size: 24px;
  }
}

.service-card {
  /* Extra small devices */
}

@media (max-width: 575px) {
  .service-card .box-content {
    padding: 30px;
  }

  .service-card .box-number {
    font-size: 24px;
  }

  .service-card .box-title {
    max-width: 210px;
  }

  .service-card .box-title a {
    font-size: 20px;
  }
}

.service-card.style2 .box-title a {
  background-image: linear-gradient(to left, var(--title-color), var(--title-color));
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 2px;
  transition: 0.5s ease-in-out;
}

.service-card.style2 .box-title a:hover {
  color: var(--title-color);
  background-size: 100% 2px;
}

.service-card.style2 .box-icon .color-masking {
  filter: brightness(0);
}

.service-card.style3 {
  background: var(--gray-color);
}

.service-card.style3 .box-title a {
  background-image: linear-gradient(to left, var(--white-color), var(--white-color));
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 2px;
  transition: 0.5s ease-in-out;
  color: var(--white-color);
}

.service-card.style3 .box-title a:hover {
  color: var(--white-color);
  background-size: 100% 2px;
}

.service-card.style3 .box-icon .color-masking {
  filter: brightness(99);
}

/* Service Area 2 ---------------------------------- */

/* Service Area 3 ---------------------------------- */

/* Service Card 4---------------------------------- */

/* Service Card 5---------------------------------- */

/* Service Card 6---------------------------------- */

/* Service Card 7---------------------------------- */

/* Service Area 9 ---------------------------------- */

/* Service Area 10 ---------------------------------- */

/* Service Area 11 ---------------------------------- */

/* Service Area 12 ---------------------------------- */

/* Service Details ---------------------------------- */

/*------------------- 4.00. Process -------------------*/
/* Process Card ---------------------------------- */

/* Process Card 2---------------------------------- */
.process-img-box2 {
  border-radius: 30px;
  overflow: hidden;
  height: 100%;
}

.process-img-box2 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.process-wrap2 {
  position: relative;
}

.process-card2 {
  position: relative;
  display: flex;
  gap: 20px;
}

.process-card2:nth-child(1) {
  margin-left: 0px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(1) {
    margin-left: 0;
  }
}

.process-card2:nth-child(2) {
  margin-left: 40px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(2) {
    margin-left: 0;
  }
}

.process-card2:nth-child(3) {
  margin-left: 80px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(3) {
    margin-left: 0;
  }
}

.process-card2:nth-child(4) {
  margin-left: 288px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(4) {
    margin-left: 0;
  }
}

.process-card2:nth-child(5) {
  margin-left: 384px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(5) {
    margin-left: 0;
  }
}

.process-card2:nth-child(6) {
  margin-left: 480px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(6) {
    margin-left: 0;
  }
}

.process-card2:nth-child(7) {
  margin-left: 576px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(7) {
    margin-left: 0;
  }
}

.process-card2:nth-child(8) {
  margin-left: 672px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(8) {
    margin-left: 0;
  }
}

.process-card2:nth-child(9) {
  margin-left: 768px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2:nth-child(9) {
    margin-left: 0;
  }
}

.process-card2 .process-arrow {
  position: absolute;
  left: 19px;
  top: 49px;
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2 .process-arrow {
    display: none;
  }
}

.process-card2:nth-child(even) .process-arrow {
  position: absolute;
  left: -41px;
  top: 40px;
}

.process-card2:not(:last-child) {
  margin-bottom: 40px;
}

.process-card2:last-child .process-arrow {
  display: none;
}

.process-card2 .box-number {
  height: 40px;
  width: 40px;
  border: 2px solid var(--theme-color);
  border-radius: 13px;
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 500;
  color: var(--title-color);
  font-family: var(--title-font);
}

.process-card2 .box-content {
  margin-top: 10px;
}

.process-card2 .box-title {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: -0.4em;
  /* Medium Large devices */
}

@media (max-width: 1399px) {
  .process-card2 .box-title {
    font-size: 22px;
  }
}

.process-card2 .box-text {
  margin-top: 24px;
  max-width: 550px;
}

.process-card2 {
  /* Small devices */
}

@media (max-width: 767px) {
  .process-card2 {
    gap: 20px;
  }
}

.process-card2 {
  /* Extra small devices */
}

@media (max-width: 575px) {
  .process-card2 {
    gap: 20px;
  }
}

/* Process Card 3---------------------------------- */

/* Process Card 4---------------------------------- */

/* Process Card 5---------------------------------- */

/* Process Card 6---------------------------------- */

/*------------------- 4.00. Client -------------------*/
/*------------------- 4.00. Marquee -------------------*/
/*------------------- 4.00. Class -------------------*/
/*------------------- 4.00. Gallery -------------------*/
/*------------------- 4.00. MegaMenu -------------------*/
/*------------------- 4.00. Award -------------------*/
/*------------------- 4.00. Experience -------------------*/
/*------------------- 4.00. Work -------------------*/
/*------------------- 4.00. Event -------------------*/
/*------------------- 4.00. Story -------------------*/
/*------------------- 4.00. Subscribe -------------------*/
/* Subscribe ---------------------------------- */

/*=================================
    05. Spacing
==================================*/
/*-- Padding Left And Right --*/

/*-- Padding Top And Bottom --*/

/*-- Padding Top --*/

/*-- Padding Bottom --*/

/*-- Padding Left --*/

/*-- Padding Right --*/

/*-- margin Left And Right --*/

/*-- margin Top And Bottom --*/

/*-- margin Top --*/

.mt-15 {
  margin-top: 15px;
}

.mt-35 {
  margin-top: 35px;
}

/*-- margin Bottom --*/

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

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

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

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

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

/*-- margin Left --*/

/*-- margin Right --*/

.space {
  padding-top: var(--section-space);
}

.space {
  padding-bottom: var(--section-space);
}

/* Medium devices */
@media (max-width: 991px) {

  .space {
    padding-top: var(--section-space-mobile);
  }

  .space {
    padding-bottom: var(--section-space-mobile);
  }
}

/*------------------- RTL -------------------*/
