/*-----------------------------------------------------------------------------------

    Template Name: DK Digital Solutions - Digital Marketing & SEO Agency HTML5 Template
    Author: RRDevs
    Support: rubelmah55@gmail.com
    Description: DK Digital Solutions - Digital Marketing & SEO Agency HTML5 Template
    Version: 1.0

-----------------------------------------------------------------------------------


/************ TABLE OF CONTENTS ***************

	01. Theme Default CSS
	02. background CSS
	03. buttons css

**********************************************/
/**----------------------------------------
START: Theme Default CSS
----------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Urbanist:wght@200;300;400;500;600;700;800;900&display=swap");
:root {
  --pb-ff-body: 'Urbanist', sans-serif;
  --pb-ff-heading: 'Urbanist', serif;
  --pb-fw-normal: normal;
  --pb-fw-thin: 100;
  --pb-fw-elight: 200;
  --pb-fw-light: 300;
  --pb-fw-regular: 400;
  --pb-fw-medium: 500;
  --pb-fw-sbold: 600;
  --pb-fw-bold: 700;
  --pb-fw-ebold: 800;
  --pb-fw-black: 900;
  --pb-fs-body: 16px;
  --pb-fs-p: 16px;
  --pb-fs-h1: 80px;
  --pb-fs-h2: 54px;
  --pb-fs-h3: 30px;
  --pb-fs-h4: 18px;
  --pb-fs-h5: 16px;
  --pb-fs-h6: 14px;
  --pb-color-common-white: #ffffff;
  --pb-color-common-black: #000000;
  --pb-color-common-yellow: #FF9D15;
  --pb-color-common-yellow-2: #FF5E14;
  --pb-color-common-purple: #3c8ffd;
  --pb-color-heading-primary: #221F3F;
  --pb-color-text-body: #6D6C79;
  --pb-color-theme-primary: #fa6604;
  --pb-color-theme-secondary: #030303;
  --pb-color-gradient-1: linear-gradient(81deg, #E8411D 0%, #FAAC52 100%);
  --pb-color-gradient-2: linear-gradient(80deg, #47479F 0%, #9191D7 100%);
  --pb-color-grey-1: #F4F5F9;
  --pb-color-border-1: rgba(109, 108, 121, 0.2);
  --pb-color-border-2: rgba(15, 27, 36, 0.1);
  --pb-color-border-3: rgba(255, 255, 255, 0.1);
  --pb-color-border-4: rgba(109, 108, 121, 0.5);
  --pb-color-shadow-1: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}

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

/**
	Typography CSS
*/
body {
  font-family: var(--pb-ff-body);
  font-size: 16px;
  line-height: 1.563;
  font-weight: 500;
  color: var(--pb-color-text-body);
  padding-top: 80px;
}

img {
  max-width: 100%;
}

a {
  text-decoration: none;
}

a,
a:hover {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--pb-ff-heading);
  color: var(--pb-color-heading-primary);
  margin-top: 0px;
  font-weight: var(--pb-fw-sbold);
  line-height: 1.2;
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -ms-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}

h1 {
  font-size: var(--pb-fs-h1);
}

h2 {
  font-size: var(--pb-fs-h2);
}

h3 {
  font-size: var(--pb-fs-h3);
}

h4 {
  font-size: var(--pb-fs-h4);
}

h5 {
  font-size: var(--pb-fs-h5);
}

h6 {
  font-size: var(--pb-fs-h6);
}

ul {
  margin: 0px;
  padding: 0px;
}

p {
  font-family: var(--pb-ff-body);
  font-size: 16px;
  font-weight: var(--pb-fw-medium);
  color: var(--pb-color-text-body);
  margin-bottom: 15px;
  line-height: 25px;
}

a:focus,
.button:focus {
  text-decoration: none;
  outline: none;
}

a:focus,
a:hover {
  color: inherit;
  text-decoration: none;
}

a:hover {
  color: var(--pb-color-theme-primary);
}

.slick-list.draggable {
  cursor: grab;
}

a,
button {
  color: inherit;
  outline: none;
  border: none;
  background: transparent;
}

button:hover {
  cursor: pointer;
}

button:focus {
  outline: 0;
  border: 0;
}

.uppercase {
  text-transform: uppercase;
}

.capitalize {
  text-transform: capitalize;
}

input {
  outline: none;
}

input[type=color] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: none;
  border: 0;
  cursor: pointer;
  height: 100%;
  width: 100%;
  padding: 0;
  border-radius: 50%;
}

ul {
  display: block;
  padding: 0;
  margin: 0;
}

*::-moz-selection {
  background: var(--pb-color-common-black);
  color: var(--pb-color-common-white);
  text-shadow: none;
}

::-moz-selection {
  background: var(--pb-color-common-black);
  color: var(--pb-color-common-white);
  text-shadow: none;
}

::selection {
  background: var(--pb-color-common-black);
  color: var(--pb-color-common-white);
  text-shadow: none;
}

*::-moz-placeholder {
  color: var(--pb-color-common-black);
  font-size: var(--pb-fs-body);
  opacity: 1;
}

*::placeholder {
  color: var(--pb-color-common-black);
  font-size: var(--pb-fs-body);
  opacity: 1;
}

/**
 	Common Classes CSS
*/
.w-img img {
  width: 100%;
}

.m-img img {
  max-width: 100%;
}

.fix {
  overflow: hidden;
}

.clear {
  clear: both;
}

.f-left {
  float: left;
}

.f-right {
  float: right;
}

.z-index-1 {
  z-index: 1;
}

.z-index-11 {
  z-index: 11;
}

.overflow-y-visible {
  overflow-x: hidden;
  overflow-y: visible;
}

.p-relative {
  position: relative;
}

.p-absolute {
  position: absolute;
}

.include-bg {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.b-radius {
  border-radius: 6px;
}

.pb-10 {
  margin-top: 10px;
}

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

.pb-20 {
  margin-top: 20px;
}

.pb-25 {
  margin-top: 25px;
}

.pb-30 {
  margin-top: 30px;
}

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

.pb-40 {
  margin-top: 40px;
}

.pb-45 {
  margin-top: 45px;
}

.pb-50 {
  margin-top: 50px;
}

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

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

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

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

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

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

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

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

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

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

.pt-180 {
  padding-top: 180px;
}
@media only screen and (max-width: 991px) {
  .pt-180 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-180 {
    padding-top: 50px;
  }
}

.pt-120 {
  padding-top: 120px;
}
@media only screen and (max-width: 991px) {
  .pt-120 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-120 {
    padding-top: 50px;
  }
}

.pt-115 {
  padding-top: 115px;
}
@media only screen and (max-width: 991px) {
  .pt-115 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-115 {
    padding-top: 50px;
  }
}

.pt-100 {
  padding-top: 100px;
}
@media only screen and (max-width: 991px) {
  .pt-100 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-100 {
    padding-top: 50px;
  }
}

.pt-90 {
  padding-top: 90px;
}
@media only screen and (max-width: 991px) {
  .pt-90 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-90 {
    padding-top: 50px;
  }
}

.pt-80 {
  padding-top: 80px;
}
@media only screen and (max-width: 991px) {
  .pt-80 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-80 {
    padding-top: 50px;
  }
}

.pt-70 {
  padding-top: 70px;
}
@media only screen and (max-width: 991px) {
  .pt-70 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-70 {
    padding-top: 50px;
  }
}

.pb-180 {
  padding-bottom: 180px;
}
@media only screen and (max-width: 991px) {
  .pb-180 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-180 {
    padding-bottom: 50px;
  }
}

.pb-120 {
  padding-bottom: 120px;
}
@media only screen and (max-width: 991px) {
  .pb-120 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-120 {
    padding-bottom: 50px;
  }
}

.pb-100 {
  padding-bottom: 100px;
}
@media only screen and (max-width: 991px) {
  .pb-100 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-100 {
    padding-bottom: 50px;
  }
}

.pb-90 {
  padding-bottom: 90px;
}
@media only screen and (max-width: 991px) {
  .pb-90 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-90 {
    padding-bottom: 50px;
  }
}

.pb-80 {
  padding-bottom: 80px;
}
@media only screen and (max-width: 991px) {
  .pb-80 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-80 {
    padding-bottom: 50px;
  }
}

.pb-70 {
  padding-bottom: 70px;
}
.pb-50 {
  padding-bottom: 50px;
}
@media only screen and (max-width: 991px) {
  .pb-70 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-70 {
    padding-bottom: 50px;
  }
}

@media only screen and (max-width: 991px) {
  .md-pb-20 {
    padding-bottom: 20px;
  }
}

@media only screen and (max-width: 991px) {
  .md-pb-30 {
    padding-bottom: 30px;
  }
}

@media only screen and (max-width: 991px) {
  .md-pb-40 {
    padding-bottom: 40px;
  }
}

@media only screen and (max-width: 991px) {
  .md-pb-50 {
    padding-bottom: 50px;
  }
}

.overlay {
  background-color: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.bg-grey {
  background-color: var(--pb-color-grey-1);
}

.bg-dark-1 {
  background-color: #1d1d1d;
}

.bg-dark-light {
  background-color: #212121;
}

.container {
  max-width: 1315px;
}

.bd-bottom {
  border-bottom: 1px solid var(--pb-color-border-1);
}

.overflow-h {
  overflow: hidden;
}

.section-heading {
  margin-bottom: 55px;
}
@media only screen and (max-width: 991px) {
  .section-heading {
    margin-bottom: 30px;
  }
}
.section-heading .sub-heading {
  color: var(--pb-color-common-yellow);
  font-size: 20px;
  font-weight: 600;
  display: inline-block;
  margin-bottom: 10px;
  text-transform: capitalize;
}
.section-heading .section-title {
  font-size: 45px;
  line-height: 1.2;
  font-weight: 700;
  display: block;
  margin-bottom: 0;
  text-transform: capitalize;
  position: relative;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}
@media only screen and (max-width: 991px) {
  .section-heading .section-title {
    max-width: 500px;
  }
}
@media only screen and (max-width: 991px) {
  .section-heading .section-title {
    font-size: 38px;
  }
}
@media only screen and (max-width: 767px) {
  .section-heading .section-title {
    font-size: 28px;
    max-width: 350px;
  }
}
.section-heading .section-title span {
  background: linear-gradient(81deg, #f27d3b 0%, #f69145 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-feature-settings: "clig" off, "liga" off;
  display: inline-block;
  position: relative;
}
.section-heading .section-title span:before {
  background-image: url(../img/shapes/blog-text-shape.png);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: contain;
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  animation: section-animation-2 3s infinite;
}
@media only screen and (max-width: 991px) {
  .section-heading .section-title span:before {
    bottom: -8px;
  }
}
@media only screen and (max-width: 767px) {
  .section-heading .section-title span:before {
    bottom: -5px;
  }
}
.section-heading.white-content p,
.section-heading.white-content .section-title,
.section-heading.white-content .sub-heading {
  color: var(--pb-color-common-white);
}
.section-heading.heading-2 {
  margin-bottom: 50px;
}
.section-heading.heading-2 .section-title {
  margin: 0;
}
.section-heading.heading-3 .section-title span {
  background: linear-gradient(81deg, #221F3F 100%, #221F3F 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-feature-settings: "clig" off, "liga" off;
}
.section-heading.heading-3 .section-title span:before {
  background-image: url(../img/shapes/blog-text-shape-2.png);
  bottom: -13px;
}
.section-heading.heading-3 p {
  margin-top: 20px;
}
.section-heading.heading-4 .sub-heading {
  color: var(--pb-color-theme-secondary);
}
.section-heading.heading-4 .section-title {
  max-width: 600px;
  width: 100%;
  margin: 0;
}
.section-heading.sub-heading-color .sub-heading {
  color: var(--pb-color-theme-primary);
}

@keyframes section-animation-2 {
  0% {
    width: 0;
  }
  15% {
    width: 100%;
  }
  85% {
    opacity: 1;
  }
  90% {
    width: 100%;
    opacity: 0;
  }
  to {
    width: 0;
    opacity: 0;
  }
}
.read-more {
  display: inline-block;
}

.gradient-text {
  background: linear-gradient(81deg, #E8411D 0%, #FAAC52 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-feature-settings: "clig" off, "liga" off;
}

.gradient-text-2 {
  background: linear-gradient(80deg, #47479F 0%, #9191D7 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.pagination-wrap {
  text-align: center;
  margin-top: 60px;
}
@media only screen and (max-width: 991px) {
  .pagination-wrap {
    margin-top: 30px;
  }
}
.pagination-wrap .pagination-list {
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
  column-gap: 10px;
}
.pagination-wrap .pagination-list li a {
  background-color: rgba(254, 86, 36, 0.1);
  height: 36px;
  width: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: var(--pb-color-theme-primary);
}
.pagination-wrap .pagination-list li a:hover {
  background-color: var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
}
.pagination-wrap .pagination-list li.active a {
  background-color: var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
}

@media (min-width: 992px) {
  .sticky-widget {
    position: -webkit-sticky;
    position: sticky;
    top: 150px;
  }
}
@media screen and (max-width: 800px) {
  .wow {
    animation-name: none !important;
    visibility: visible !important;
  }
}
/*Scrool Up*/
#scrollup {
  width: 45px;
  height: 45px;
  position: fixed;
  bottom: 30px;
  right: 30px;
  overflow: hidden;
  z-index: 999;
}

.scroll-to-top {
  width: 100%;
  height: 100%;
  text-align: center;
  background-color: var(--pb-color-theme-primary);
  font-size: 20px;
  padding: 0;
  line-height: 40px;
  color: var(--pb-color-common-white);
  border-radius: 5px;
  outline: none;
  text-decoration: none;
  transform: translateY(150%);
  transition: all 0.3s ease-in-out;
}

#scrollup.show {
  opacity: 1;
}

#scrollup.show .scroll-to-top {
  transform: translateY(0);
  transition: all 0.3s ease-in-out;
}

.scroll-to-top:hover {
  text-decoration: none;
  opacity: 0.8;
  transition: all 0.3s ease-in-out;
}

/* Site Preloader */
.preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw !important;
  height: 100vh !important;
  background-color: #fff;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.preloader img {
  width: 70px;
}

/*  Custom Cursor */
@media (min-width: 992px) {
  .mt-cursor {
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    position: fixed;
    left: 10px;
    top: 10px;
    user-select: none;
    pointer-events: none;
    visibility: hidden;
    z-index: 10000;
    -webkit-transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .mt-cursor:before {
    background: var(--pb-color-theme-primary);
    opacity: 1;
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0;
    transition: all 0.3s ease;
  }
  .mt-cursor.cursor-grow:before {
    opacity: 0.7;
    transform: scale(1.5);
    transition: all 0.3s ease;
  }
  .mt-cursor.hide {
    opacity: 0;
    transition: opacity 0.3s ease;
    transition-delay: 0.4s;
  }
  .mt-cursor.hide .inner {
    transform: scale(0.1);
    transition: transform 0.3s ease;
  }
}
/**
  Buttons CSS
*/
.pb-primary-btn {
  background-color: transparent;
  font-family: var(--pb-ff-heading);
  color: var(--pb-color-heading-primary);
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  padding: 20px 30px;
  text-transform: capitalize;
  transition: all 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  border: 1px solid var(--pb-color-theme-secondary);
  border-radius: 30px;
  line-height: 1;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.pb-primary-btn:before {
  content: "";
  background-image: var(--pb-color-gradient-1);
  width: 100%;
  height: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  z-index: -1;
}
.pb-primary-btn:hover {
  color: var(--pb-color-common-white);
  font-weight: 600;
  border: 1px solid transparent;
}
.pb-primary-btn:hover:before {
  height: 100%;
}
.pb-primary-btn i {
  font-size: 12px;
  margin-left: 5px;
}

.pb-primary-btn.primary-2 {
  background: linear-gradient(80deg, #0da7f7 0%, #9191D7 100%);
  border: none;
  color: var(--pb-color-common-white);
}
.pb-primary-btn.primary-3 {
  background: #ff7c00;
  border: none;
  color: var(--pb-color-common-white);
}
.pb-primary-btn.primary-3:before {
  background: var(--pb-color-common-purple);
}

/**----------------------------------------
START: Theme Header CSS
----------------------------------------*/
.header {
  background-color: transparent;
  width: 100%;
  width: 100%;
  position: relative;
  top: 0;
  z-index: 99;
}
@media only screen and (max-width: 991px) {
  .header {
    position: inherit;
    height: auto !important;
  }
}
.header .primary-header {
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}
.header .top-bar {
  background-color: var(--pb-color-common-black);
}
@media only screen and (max-width: 991px) {
  .header .top-bar {
    display: none;
  }
}
.header .top-bar .top-bar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 7px 0;
}
@media only screen and (max-width: 991px) {
  .header .top-bar .top-bar-inner {
    flex-direction: column;
    row-gap: 15px;
    justify-content: center;
    border-bottom: 1px solid var(--pb-color-border-1);
    padding: 10px 0;
  }
}
.header .top-bar .top-bar-inner .top-bar-list {
  display: flex;
  align-items: center;
  list-style: none;
  column-gap: 30px;
  flex-wrap: wrap;
  row-gap: 15px;
}
@media only screen and (max-width: 767px) {
  .header .top-bar .top-bar-inner .top-bar-list {
    row-gap: 10px;
    justify-content: center;
  }
}
.header .top-bar .top-bar-inner .top-bar-list li {
  font-size: 14px;
  color: var(--pb-color-common-white);
  font-weight: 400;
}
@media only screen and (max-width: 991px) {
  .header .top-bar .top-bar-inner .top-bar-list li {
    color: var(--pb-color-heading-primary);
  }
}
.header .top-bar .top-bar-inner .top-bar-list li i {
  margin-right: 10px;
}
.header .top-bar .top-bar-inner .top-bar-list li a:hover {
  color: var(--pb-color-theme-primary);
}
.header .top-bar .top-bar-inner .top-social {
  display: flex;
  align-items: center;
  list-style: none;
  column-gap: 10px;
}
.header .top-bar .top-bar-inner .top-social li:not(:last-of-type) {
  margin-right: 8px;
}
.header .top-bar .top-bar-inner .top-social li a {
  color: var(--pb-color-common-white);
  font-size: 14px;
}
@media only screen and (max-width: 991px) {
  .header .top-bar .top-bar-inner .top-social li a {
    color: var(--pb-color-heading-primary);
  }
}
.header .top-bar .top-bar-inner .top-social li a:hover {
  color: var(--pb-color-theme-primary);
}

.primary-header-inner {
  background-color: var(--pb-color-common-white);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}
@media only screen and (max-width: 991px) {
  .primary-header-inner {
    padding: 10px 0;
  }
}
.primary-header-inner .header-logo img {
  max-width: 240px;
}
.primary-header-inner .header-menu-wrap {
  display: flex !important;
  align-items: center;
}
.primary-header-inner .header-menu-wrap ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media only screen and (max-width: 991px) {
  .primary-header-inner .header-menu-wrap ul {
    display: none;
  }
}
.primary-header-inner .header-menu-wrap ul li {
  display: inline-block;
  position: relative;
  margin: 0 10px;
}
@media (max-width: 1170px) {
  .primary-header-inner .header-menu-wrap ul li {
    margin: 0 10px;
  }
}
.primary-header-inner .header-menu-wrap ul li.menu-item-has-children {
  position: relative;
}
.primary-header-inner .header-menu-wrap ul li.menu-item-has-children:after {
  background-image: none;
  font-family: "Font Awesome 6 Pro";
  color: var(--pb-color-common-white);
  font-size: 12px;
  content: "\f078";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  cursor: pointer;
}
.primary-header-inner .header-menu-wrap ul li.menu-item-has-children:hover:after {
  color: var(--pb-color-common-white);
}
.primary-header-inner .header-menu-wrap ul li.menu-item-has-children a {
  padding-right: 17px;
}
.primary-header-inner .header-menu-wrap ul li a {
  font-family: var(--pb-ff-heading);
  color: var(--pb-color-heading-primary);
  display: block;
  font-size: 15px;
  padding: 49px 0;
  letter-spacing: 0;
  font-weight: 500;
  text-transform: capitalize;
  position: relative;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  transition: all 0.3s ease-in-out;
}
.primary-header-inner .header-menu-wrap ul li a i {
  font-size: 13px;
}
.primary-header-inner .header-menu-wrap ul li a:hover {
  color: var(--pb-color-theme-primary);
}
.primary-header-inner .header-menu-wrap ul li a:before {
  content: "";
  background-color: var(--pb-color-theme-primary);
  width: 0;
  height: 2px;
  position: absolute;
  bottom: 45px;
  transition: all 0.4s ease-in-out;
}
.primary-header-inner .header-menu-wrap ul li ul {
  background-color: var(--pb-color-common-white);
  display: block;
  width: 220px;
  padding: 0;
  -webkit-box-shadow: 0px 50px 100px 0px rgba(64, 1, 4, 0.1), 0px -6px 0px 0px rgba(248, 99, 107, 0.004);
  box-shadow: 0px 50px 100px 0px rgba(64, 1, 4, 0.1), 0px -6px 0px 0px rgba(248, 99, 107, 0.004);
  position: absolute;
  left: 0;
  top: 120px;
  opacity: 0;
  visibility: hidden;
  z-index: 0;
  -webkit-transform: rotate3d(1, 0, 0, -90deg);
  transform: rotate3d(1, 0, 0, -90deg);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  transition: all 0.6s ease;
}
.primary-header-inner .header-menu-wrap ul li:hover > ul {
  visibility: visible;
  transition: all 0.6s ease;
  opacity: 1;
  transform: none;
}
.primary-header-inner .header-menu-wrap ul li li {
  display: flex;
  justify-content: space-between;
  text-align: left;
  position: relative;
  transition: all 0.3s ease-in-out;
  margin: 0;
  padding: 0 20px;
}
.primary-header-inner .header-menu-wrap ul li li:last-child {
  margin: 0;
  border-bottom: none;
}
.primary-header-inner .header-menu-wrap ul li li:hover {
  background-color: var(--pb-color-theme-primary);
}
.primary-header-inner .header-menu-wrap ul li li a {
  display: block;
  height: auto;
  line-height: inherit;
  color: var(--pb-color-common-black);
  font-weight: 600;
  font-size: 14px;
  line-height: 45px;
  padding: 0;
  letter-spacing: 0;
  width: 100%;
  -webkit-font-smoothing: antialiased;
  margin: 0;
}
.primary-header-inner .header-menu-wrap ul li li a:hover {
  padding-left: 10px;
  color: var(--pb-color-common-white);
}
.primary-header-inner .header-menu-wrap ul li li a:before {
  display: none;
}
.primary-header-inner .header-menu-wrap ul li:hover a:before {
  width: 100%;
}
.primary-header-inner .header-right {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .primary-header-inner .header-right .header-logo img {
    width: 90px;
  }
}
@media only screen and (max-width: 767px) {
  .primary-header-inner .header-right .header-btn {
    display: none;
  }
}
.primary-header-inner .header-right .search-icon {
  color: var(--pb-color-heading-primary);
  font-size: 20px;
  margin-right: 20px;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .primary-header-inner .header-right .search-icon {
    margin-right: 0;
  }
}
.primary-header-inner .header-right .header-right-item .mobile-side-menu-toggle {
  color: var(--pb-color-heading-primary);
  font-size: 25px;
  margin-left: 20px;
}
@media only screen and (max-width: 991px) {
  .primary-header-inner .mean-push {
    display: none;
  }
}

.header-2 {
  background-color: transparent;
  position: absolute;
  top: 0;
  width: 100%;
}
@media only screen and (max-width: 991px) {
  .header-2 {
    background-color: var(--pb-color-common-white);
    position: inherit;
  }
}
.header-2 .header-container {
  max-width: 1735px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}
.header-2 .sticky-header-wrap.fixed {
  background-color: var(--pb-color-common-black);
}

.primary-header-inner.inner-2 {
  background-color: transparent;
}
@media only screen and (max-width: 991px) {
  .primary-header-inner.inner-2 .header-logo .light {
    display: none;
  }
}
.primary-header-inner.inner-2 .header-logo .dark {
  display: none;
}
@media only screen and (max-width: 991px) {
  .primary-header-inner.inner-2 .header-logo .dark {
    display: block;
  }
}
.primary-header-inner.inner-2 .header-menu-wrap ul li {
  margin: 0 12px;
}
.primary-header-inner.inner-2 .header-menu-wrap ul li a {
  color: var(--pb-color-common-white);
}
.primary-header-inner.inner-2 .header-menu-wrap ul li a:hover {
  color: var(--pb-color-theme-primary);
}
.primary-header-inner.inner-2 .header-menu-wrap ul li.menu-item-has-children:after {
  color: var(--pb-color-common-white);
}
.primary-header-inner.inner-2 .header-menu-wrap ul li.menu-item-has-children:hover:after {
  color: var(--pb-color-theme-primary);
}
.primary-header-inner.inner-2 .header-menu-wrap ul li ul li {
  margin: 0;
}
.primary-header-inner.inner-2 .header-menu-wrap ul li ul li a {
  color: var(--pb-color-heading-primary);
}
.primary-header-inner.inner-2 .header-menu-wrap ul li ul li a:hover {
  color: var(--pb-color-common-white);
}
.primary-header-inner.inner-2 .header-right .header-btn {
  background: #657EFF;
  color: var(--pb-color-common-white);
  border: none;
}

.header-3 .primary-header {
  box-shadow: none;
}
.header-3 .primary-header-inner .header-menu-wrap ul li a {
  color: var(--pb-color-heading-primary);
}
.header-3 .primary-header-inner .header-menu-wrap ul li.menu-item-has-children:after {
  color: var(--pb-color-heading-primary);
}

.header-4 .primary-header {
  background-color: #212121;
}
.header-4 .primary-header .primary-header-inner {
  border-bottom: 1px solid var(--pb-color-text-body);
}
.header-4 .primary-header .primary-header-inner .header-right .search-icon {
  font-size: 18px;
  color: var(--pb-color-common-white);
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid #E7E7EB;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media only screen and (max-width: 991px) {
  .header-4 .primary-header .primary-header-inner .header-right .search-icon {
    margin-right: 0;
  }
}
.header-4 .primary-header .primary-header-inner .header-right .search-icon:hover {
  background-color: #E7E7EB;
  color: #212121;
}
.header-4 .primary-header .primary-header-inner .header-right .header-contact {
  display: flex;
  align-items: center;
  column-gap: 10px;
}
@media (max-width: 1170px) {
  .header-4 .primary-header .primary-header-inner .header-right .header-contact {
    display: none;
  }
}
.header-4 .primary-header .primary-header-inner .header-right .header-contact .icon {
  background-color: var(--pb-color-grey-1);
  font-size: 18px;
  color: var(--pb-color-theme-primary);
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.header-4 .primary-header .primary-header-inner .header-right .header-contact .number span {
  font-size: 16px;
  font-weight: 500;
  display: block;
  color: var(--pb-color-common-white);
}
.header-4 .primary-header .primary-header-inner .header-right .header-contact .number a {
  color: var(--pb-color-common-white);
  font-size: 20px;
  font-weight: 600;
}
.header-4 .primary-header .primary-header-inner .header-right .header-contact .number a:hover {
  color: var(--pb-color-theme-primary);
}
.header-4 .primary-header .primary-header-inner .header-right .mobile-side-menu-toggle {
  color: var(--pb-color-common-white);
}
.header-4 .primary-header.fixed {
  background-color: #212121;
}
.header-4 .primary-header.fixed .primary-header-inner {
  border-bottom: none;
}

.header-5 .primary-header.fixed .primary-header-inner .header-logo .light {
  display: none;
}
.header-5 .primary-header.fixed .primary-header-inner .header-logo .dark {
  display: block;
}
.header-5 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li a {
  color: var(--pb-color-heading-primary);
}
.header-5 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li a:hover {
  color: var(--pb-color-theme-primary);
}
.header-5 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li.menu-item-has-children:after {
  color: var(--pb-color-heading-primary);
}
.header-5 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li.menu-item-has-children:hover:after {
  color: var(--pb-color-theme-primary);
}
.header-5 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li ul li a {
  color: var(--pb-color-heading-primary);
}
.header-5 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li ul li a:hover {
  color: var(--pb-color-common-white);
}

.primary-header {
  width: 100%;
}
.primary-header.fixed {
  background-color: var(--pb-color-common-white);
  position: fixed;
  left: 0;
  top: 0;
  animation-name: menuSticky;
  -webkit-animation-name: menuSticky;
  animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  box-shadow: 0px 1px 3px 0px rgba(17, 17, 17, 0.1);
  z-index: 99;
}

@-webkit-keyframes menuSticky {
  0% {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  100% {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
  }
}
@-moz-keyframes menuSticky {
  0% {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  100% {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
  }
}
@-ms-keyframes menuSticky {
  0% {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  100% {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
  }
}
@keyframes menuSticky {
  0% {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  100% {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
  }
}
@media only screen and (max-width: 991px) {
  .mobile-side-menu .header-right {
    display: none !important;
  }
}
.side-menu-icon {
  position: absolute;
  right: 20px;
  top: 25px;
  z-index: 100;
  display: block;
  cursor: pointer;
}
@media only screen and (max-width: 991px) {
  .side-menu-icon {
    display: none;
  }
}

.mobile-side-menu-overlay,
.mobile-side-menu {
  display: none;
}

@media only screen and (max-width: 991px) {
  .mobile-side-menu {
    position: fixed;
    overflow-y: auto;
    top: 0;
    right: 0;
    width: 80%;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    height: 100%;
    display: block;
    z-index: 100;
    padding: 40px;
    -webkit-transition: transform 0.5s ease;
    -o-transition: transform 0.5s ease;
    transition: transform 0.5s ease;
    backface-visibility: hidden;
  }
}
@media only screen and (max-width: 991px) and (max-width: 767px) {
  .mobile-side-menu {
    padding: 40px 20px;
    width: 100%;
    max-width: 320px;
  }
}
@media only screen and (max-width: 991px) {
  .mobile-side-menu.is-open {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  .mobile-side-menu .side-menu-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 50px;
  }
  .mobile-side-menu .side-menu-head .mobile-side-menu-close {
    position: fixed;
    top: 10px;
    right: 40px;
    color: #ffffff;
    font-size: 22px;
    height: 50px;
    width: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ffffff14;
  }
}
@media only screen and (max-width: 991px) and (max-width: 767px) {
  .mobile-side-menu .side-menu-head .mobile-side-menu-close {
    right: 16px;
  }
}
@media only screen and (max-width: 991px) {
  .mobile-side-menu .side-menu-head .mobile-side-menu-close:hover {
    background-color: var(--pb-color-theme-primary);
    color: var(--pb-color-common-white);
  }
  .mobile-side-menu .side-menu-wrap {
    overflow: hidden;
    margin-bottom: 50px;
  }
  .mobile-side-menu p {
    color: var(--pb-color-common-white);
    margin-bottom: 50px;
  }
  .mobile-side-menu .list-header {
    color: var(--pb-color-common-white);
    font-family: var(--pb-ff-body);
    font-weight: 400;
    margin-bottom: 30px;
  }
  .mobile-side-menu .side-menu-list {
    margin-bottom: 50px;
  }
  .mobile-side-menu .side-menu-list li {
    font-size: 20px;
    color: var(--pb-color-common-white);
    display: flex;
    align-items: center;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 991px) and (max-width: 767px) {
  .mobile-side-menu .side-menu-list li {
    font-size: 12px;
  }
}
@media only screen and (max-width: 991px) {
  .mobile-side-menu .side-menu-list li p {
    font-size: 20px;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 991px) and (max-width: 767px) {
  .mobile-side-menu .side-menu-list li p {
    font-size: 12px;
  }
}
@media only screen and (max-width: 991px) {
  .mobile-side-menu .side-menu-list li i {
    background-color: var(--pb-color-theme-primary);
    font-size: 12px;
    color: var(--pb-color-common-black);
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    transition: all 0.2s ease-in-out;
    margin-right: 20px;
  }
  .mobile-side-menu .side-menu-list li :last-child {
    margin-bottom: 0;
  }
  .mobile-side-menu .side-menu-social ul {
    display: flex;
    align-items: center;
    column-gap: 10px;
    list-style: none;
  }
  .mobile-side-menu .side-menu-social ul li a {
    background-color: var(--pb-color-theme-bg-dark-deep);
    color: var(--pb-color-theme-primary);
    font-size: 18px;
    width: 50px;
    padding: 15px 0;
    line-height: 1;
    text-align: center;
    border: 1px solid var(--pb-color-border-6);
    border-radius: 2px;
    display: block;
    margin-bottom: 10px;
    transition: all 0.3s ease-in-out;
  }
  .mobile-side-menu .side-menu-social ul li a:hover {
    background-color: var(--pb-color-theme-primary);
    color: var(--pb-color-common-white);
  }
  .mobile-side-menu .mean-bar {
    background-color: transparent;
    min-height: auto;
    padding: 0;
  }
  .mobile-side-menu .mean-bar .meanmenu-reveal {
    display: none !important;
  }
  .mobile-side-menu .mean-bar .mean-nav {
    background-color: transparent;
    margin-top: 0;
    padding-top: 20px;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul {
    display: block !important;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li {
    position: relative;
    float: none;
    display: block;
    width: auto;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li:not(:last-of-type) {
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--pb-color-border-1);
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a {
    color: var(--pb-color-heading-primary);
    font-size: 22px;
    font-weight: 500;
    line-height: 1;
    border-top: none;
    padding: 0;
    float: none;
  }
}
@media only screen and (max-width: 991px) and (max-width: 767px) {
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a {
    font-size: 16px;
  }
}
@media only screen and (max-width: 991px) {
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand {
    background-color: var(--pb-color-theme-primary);
    color: var(--pb-color-common-white);
    position: absolute;
    padding: 0;
    top: -3px;
    right: 0;
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand:before, .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand:after {
    font-size: 14px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand:before {
    content: "+";
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand.mean-clicked:after {
    content: "\f068";
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand.mean-clicked:before {
    display: none;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand i {
    display: none;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul {
    padding: 0 0 0 30px;
    margin-top: 20px;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul li:not(:last-of-type) {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul li a {
    padding: 0;
    font-size: 20px;
    font-weight: 500;
    text-transform: capitalize;
  }
}
@media only screen and (max-width: 991px) and (max-width: 767px) {
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul li a {
    font-size: 14px;
  }
}
@media only screen and (max-width: 991px) {
  .mobile-side-menu-overlay {
    background-color: rgba(0, 0, 0, 0.7);
    height: 100%;
    width: 0%;
    position: fixed;
    top: 0;
    z-index: 9;
    right: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 600ms ease;
    -o-transition: all 600ms ease;
    transition: all 600ms ease;
    z-index: 10;
    display: block;
  }
  .mobile-side-menu-overlay.is-open {
    width: 100%;
    opacity: 0.5;
    visibility: visible;
  }
}
#popup-search-box {
  background-color: var(--pb-color-common-white);
  position: fixed;
  width: 100%;
  height: 20%;
  top: -100%;
  left: 0;
  right: 0;
  white-space: nowrap;
  z-index: 99;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 500ms ease all;
  -moz-transition: 500ms ease all;
  transition: 500ms ease all;
}
#popup-search-box .box-inner-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}
#popup-search-box .box-inner-wrap form {
  position: relative;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  padding: 0 15px;
}
#popup-search-box .box-inner-wrap form input {
  width: 100%;
  padding: 20px 15px;
  padding-right: 80px;
  background: transparent;
  border: none;
  color: #ddd;
  border: 1px solid var(--pb-color-border-1);
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input::-webkit-input-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input:-moz-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input::-moz-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input:-ms-input-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input:focus {
  outline: none;
}
#popup-search-box .box-inner-wrap:hover {
  cursor: url(../img/cross.html), auto;
}
#popup-search-box .box-inner-wrap .search-close {
  position: absolute;
  top: 30px;
  right: 50px;
  color: var(--pb-color-heading-primary);
  border: 1px solid var(--pb-color-border-1);
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  border-radius: 50%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  #popup-search-box .box-inner-wrap .search-close {
    height: 35px;
    width: 35px;
    top: 10px;
    right: 10px;
  }
}
#popup-search-box .box-inner-wrap .search-close:hover {
  background-color: var(--pb-color-theme-primary);
  border: 1px solid var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
}
#popup-search-box.toggled {
  top: 0;
  opacity: 1;
  visibility: visible;
}

/* !END: Theme Header CSS */
/**----------------------------------------
START: Theme Blog CSS
----------------------------------------*/
.blog-section .section-heading {
  margin-bottom: 60px;
}
@media only screen and (max-width: 991px) {
  .blog-section .section-heading {
    margin-bottom: 30px;
  }
}

.post-card .post-thumb {
  overflow: hidden;
  border-radius: 20px 20px 0px 0px;
}
.post-card .post-thumb img {
  transform: scale(1);
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.post-card:hover .post-thumb img {
  transform: scale(1.02);
}
.post-card:hover .post-content {
  background-color: #fff;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}

.post-content {
  padding: 30px 30px 40px 30px;
  border-bottom: 2px solid var(--pb-color-theme-primary);
  border-radius: 0 0 20px 20px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media only screen and (max-width: 991px) {
  .post-content {
    padding: 30px 20px;
  }
}
.post-content .title {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 0;
  line-height: 1.4;
  max-width: 550px;
  width: 100%;
  margin-bottom: 15px;
}
@media only screen and (max-width: 991px) {
  .post-content .title {
    font-size: 24px;
  }
}
.post-content .title a {
  background: linear-gradient(var(--pb-color-theme-primary) 0%, var(--pb-color-theme-primary) 98%);
  background-size: 0 2px;
  background-repeat: no-repeat;
  background-position: left 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.post-content .title a:hover {
  color: var(--pb-color-theme-primary);
  background-size: 100% 2px;
}
.post-content p {
  max-width: 500px;
  width: 100%;
  margin-bottom: 0;
}

.post-meta {
  background-color: var(--pb-color-grey-1);
  list-style: none;
  display: flex;
  align-items: center;
  column-gap: 30px;
  flex-wrap: wrap;
  row-gap: 15px;
  padding: 25px 30px;
}
@media only screen and (max-width: 991px) {
  .post-meta {
    padding: 25px 20px;
    column-gap: 20px;
  }
}
.post-meta li {
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
@media only screen and (max-width: 991px) {
  .post-meta li {
    font-size: 14px;
  }
}
.post-meta li i {
  margin-right: 10px;
  font-size: 12px;
}

.blog-2 .post-thumb {
  position: relative;
}
.blog-2 .post-thumb .post-meta {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
.blog-2 .post-content .title {
  font-size: 26px;
  margin-bottom: 25px;
}
.blog-2 .post-content .read-more {
  color: var(--pb-color-heading-primary);
  font-size: 16px;
  font-weight: 500;
  display: flex;
  align-items: center;
  display: block;
  margin-top: 30px;
}
.blog-2 .post-content .read-more:hover {
  color: var(--pb-color-theme-primary);
}
.blog-2 .post-content .read-more i {
  margin-left: 5px;
}

.blog-card:not(:last-of-type) {
  margin-bottom: 60px;
}
.blog-card .post-thumb {
  border-radius: 20px;
  overflow: hidden;
}
.blog-card .post-content {
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  border-bottom: none;
  padding: 30px 40px 40px 40px;
}
@media only screen and (max-width: 991px) {
  .blog-card .post-content {
    padding: 20px;
  }
}
.blog-card .post-content .post-meta {
  padding: 15px 40px;
  display: inline-flex;
  border-radius: 5px;
  border-left: 5px solid var(--pb-color-theme-primary);
  margin-bottom: 20px;
}
@media only screen and (max-width: 991px) {
  .blog-card .post-content .post-meta {
    padding: 15px 20px;
  }
}
.blog-card .post-content .post-meta li i {
  color: var(--pb-color-theme-primary);
  font-size: 17px;
}
.blog-card .post-content .title {
  max-width: inherit;
}
.blog-card .post-content p {
  max-width: inherit;
  margin-bottom: 30px;
}
.blog-card .post-content .pb-primary-btn {
  border: 1px solid var(--pb-color-theme-primary);
}
.blog-card .post-content .pb-primary-btn i {
  font-size: 14px;
}

.pagination-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
}
@media only screen and (max-width: 991px) {
  .pagination-wrap {
    margin-bottom: 40px;
  }
}
.pagination-wrap li:not(:last-of-type) {
  margin-right: 15px;
}
.pagination-wrap li a {
  color: var(--pb-color-heading-primary);
  font-size: 25px;
  line-height: 1;
  height: 60px;
  width: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--pb-color-border-1);
  border-radius: 5px;
  position: relative;
  z-index: 1;
}
.pagination-wrap li a:before {
  content: "";
  background-image: var(--pb-color-gradient-1);
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  z-index: -1;
  visibility: hidden;
  opacity: 0;
}
.pagination-wrap li a:hover {
  color: var(--pb-color-common-white);
}
.pagination-wrap li a:hover:before {
  visibility: visible;
  opacity: 1;
}

/* !END: Theme Blog CSS */
/**----------------------------------------
START: Theme Blog Details CSS
----------------------------------------*/
.blog-details-content .details-title {
  font-size: 50px;
  font-weight: 700;
  margin-bottom: 30px;
}
@media only screen and (max-width: 991px) {
  .blog-details-content .details-title {
    font-size: 40px;
  }
}
.blog-details-content p {
  font-weight: 500;
}
.blog-details-content .blog-details-img img {
  width: 100%;
}
.blog-details-content .details-bottom-content {
  margin-bottom: 40px;
}
.blog-details-content .details-bottom-content .title {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 20px;
}
.blog-details-content .comment-area {
  margin-bottom: 60px;
}
.blog-details-content .comment-area .comment-title {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 30px;
}
.blog-details-content .comment-area .comment-item {
  display: grid;
  align-items: center;
  grid-template-columns: 115px 1fr;
  grid-gap: 30px;
}
@media only screen and (max-width: 767px) {
  .blog-details-content .comment-area .comment-item {
    grid-template-columns: 1fr;
  }
}
.blog-details-content .comment-area .comment-item:not(:last-of-type) {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .blog-details-content .comment-area .comment-item:not(:last-of-type) {
    margin-bottom: 50px;
  }
}
.blog-details-content .comment-area .comment-item.item-2 {
  margin-left: 75px;
}
@media only screen and (max-width: 767px) {
  .blog-details-content .comment-area .comment-item.item-2 {
    margin-left: 30px;
  }
}
.blog-details-content .comment-area .comment-item .comment-thumb img {
  width: 115px;
  height: 115px;
  border-radius: 50%;
}
.blog-details-content .comment-area .comment-item .comment-info {
  background-color: var(--pb-color-grey-1);
  padding: 40px;
  border-radius: 5px;
}
.blog-details-content .comment-area .comment-item .comment-info .author {
  font-size: 20px;
  color: var(--pb-color-heading-primary);
  font-weight: 600;
  margin-bottom: 15px;
}
.blog-details-content .comment-area .comment-item .comment-info p {
  font-size: 16px;
}
.blog-details-content .comment-area .comment-item .comment-info .comment-meta {
  display: flex;
  align-items: center;
}
.blog-details-content .comment-area .comment-item .comment-info .comment-meta span {
  font-size: 16px;
  font-weight: 500;
  margin-right: 40px;
}
.blog-details-content .comment-area .comment-item .comment-info .comment-meta .reply {
  color: var(--pb-color-heading-primary);
  font-size: 16px;
  font-weight: 600;
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.blog-details-content .comment-area .comment-item .comment-info .comment-meta .reply:hover {
  color: var(--pb-color-theme-secondary);
}
.blog-details-content .blog-form-wrap {
  background-color: var(--pb-color-grey-1);
  padding: 40px;
}
@media only screen and (max-width: 767px) {
  .blog-details-content .blog-form-wrap {
    padding: 25px;
  }
}
.blog-details-content .blog-form-wrap .form-title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 15px;
}
.blog-details-content .blog-form-wrap p {
  margin-bottom: 20px;
}
.blog-details-content .blog-form-wrap .form-group .form-control {
  box-shadow: none;
  border: none;
  padding: 15px;
  margin-bottom: 20px;
  border-radius: 5px;
}
.blog-details-content .blog-form-wrap .form-group .form-control::-webkit-input-placeholder {
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
}
.blog-details-content .blog-form-wrap .form-group .form-control:-moz-placeholder {
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
}
.blog-details-content .blog-form-wrap .form-group .form-control::-moz-placeholder {
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
}
.blog-details-content .blog-form-wrap .form-group .form-control:-ms-input-placeholder {
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
}

.layout-social-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 20px;
  padding: 40px 0;
  border-top: 1px solid var(--pb-color-border-1);
  border-bottom: 1px solid var(--pb-color-border-1);
  margin-bottom: 90px;
}
.layout-social-box .box-left {
  display: flex;
  align-items: center;
}
.layout-social-box .box-left ul {
  list-style: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 20px;
}
.layout-social-box .box-left ul li:not(:last-of-type) {
  margin-right: 10px;
}
.layout-social-box .box-left ul li a {
  background-color: var(--pb-color-grey-1);
  font-family: var(--pb-ff-heading);
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
  padding: 7px 20px;
  border-radius: 5px;
}
.layout-social-box .box-left ul li a:hover {
  background-color: var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
}
.layout-social-box .box-right {
  display: flex;
  align-items: center;
  column-gap: 15px;
}
.layout-social-box .box-right .share {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 0;
}
.layout-social-box .box-right .social-list {
  list-style: none;
  display: flex;
  align-items: center;
  column-gap: 10px;
}
.layout-social-box .box-right .social-list li a {
  background-color: transparent;
  font-size: 16px;
  color: var(--pb-color-heading-primary);
  width: 40px;
  height: 40px;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid var(--pb-color-border-1);
}
.layout-social-box .box-right .social-list li a:hover {
  background-color: #0866FF;
  color: var(--pb-color-common-white);
  border: 1px solid transparent;
}
.layout-social-box .box-right .social-list li:nth-child(2):hover a {
  background-color: #229EF2;
}
.layout-social-box .box-right .social-list li:nth-child(3):hover a {
  background-color: #0681BA;
}
.layout-social-box .box-right .social-list li:nth-child(4):hover a {
  background-color: #EE2A7B;
}

.sidebar-widget {
  background-color: var(--pb-color-grey-1);
  padding: 40px;
  border-radius: 20px;
}
@media (max-width: 1170px) {
  .sidebar-widget {
    padding: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .sidebar-widget {
    padding: 25px;
  }
}
.sidebar-widget:not(:last-of-type) {
  margin-bottom: 30px;
}
.sidebar-widget .widget-title {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 30px;
}
.sidebar-widget .search-box {
  position: relative;
}
.sidebar-widget .search-box .form-control {
  font-size: 16px;
  font-weight: 500;
  box-shadow: none;
  border: none;
  outline: none;
  padding: 20px;
  padding-left: 20px;
  border-radius: 20px;
}
.sidebar-widget .search-box .form-control::-webkit-input-placeholder {
  font-size: 16px;
  font-weight: 500;
}
.sidebar-widget .search-box .form-control:-moz-placeholder {
  font-size: 16px;
  font-weight: 500;
}
.sidebar-widget .search-box .form-control::-moz-placeholder {
  font-size: 16px;
  font-weight: 500;
}
.sidebar-widget .search-box .form-control:-ms-input-placeholder {
  font-size: 16px;
  font-weight: 500;
}
.sidebar-widget .search-box .search-btn {
  background: var(--pb-color-gradient-1);
  font-size: 16px;
  color: var(--pb-color-common-white);
  height: 100%;
  width: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  border-radius: 20px;
}
.sidebar-widget .sidebar-post {
  display: grid;
  align-items: center;
  grid-template-columns: 88px 1fr;
  grid-gap: 15px;
}
.sidebar-widget .sidebar-post:not(:last-of-type) {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--pb-color-border-1);
}
.sidebar-widget .sidebar-post img {
  height: 88px;
  width: 88px;
  border-radius: 20px;
}
.sidebar-widget .sidebar-post .post-content {
  padding: 0;
  border: none;
}
.sidebar-widget .sidebar-post .post-content .post-meta {
  margin-bottom: 15px;
  padding: 0;
}
.sidebar-widget .sidebar-post .post-content .post-meta li {
  position: relative;
}
.sidebar-widget .sidebar-post .post-content .post-meta li:not(:last-of-type):after {
  background-color: var(--pb-color-theme-primary);
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  top: 50%;
  right: -17px;
  transform: translateY(-50%);
  border-radius: 50%;
}
.sidebar-widget .sidebar-post .post-content .title {
  font-size: 20px;
  margin-bottom: 0;
  line-height: 1.2;
}
.sidebar-widget .sidebar-post .post-content .title a {
  color: rgba(34, 31, 63, 0.7);
}
.sidebar-widget .sidebar-post .post-content .title a:hover {
  color: var(--pb-color-theme-primary);
}
.sidebar-widget .category-list {
  list-style: none;
}
.sidebar-widget .category-list li a {
  background-color: var(--pb-color-common-white);
  display: block;
  padding: 15px 20px;
  font-size: 16px;
  font-weight: 500;
  transition: all 0.3s ease-in-out;
  border-radius: 30px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.sidebar-widget .category-list li a:before {
  background: var(--pb-color-gradient-1);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease-in-out;
  z-index: -1;
}
.sidebar-widget .category-list li a:hover {
  color: var(--pb-color-common-white);
}
.sidebar-widget .category-list li a:hover:before {
  visibility: visible;
  opacity: 1;
}
.sidebar-widget .category-list li:not(:last-of-type) {
  margin-bottom: 15px;
}
.sidebar-widget .category-list li.active a {
  color: var(--pb-color-common-white);
}
.sidebar-widget .category-list li.active a:before {
  visibility: visible;
  opacity: 1;
}
.sidebar-widget .tags {
  list-style: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 10px;
}
.sidebar-widget .tags li a {
  background-color: var(--pb-color-theme-secondary);
  color: var(--pb-color-common-white);
  font-family: var(--pb-ff-heading);
  font-size: 16px;
  font-weight: 500;
  padding: 7px 20px;
  display: inline-block;
  border-radius: 30px;
}
.sidebar-widget.widget-2 .widget-title {
  margin-bottom: 10px;
}
.sidebar-widget.widget-2 p {
  font-size: 16px;
  margin-bottom: 30px;
}
.sidebar-widget.widget-2 .news-form {
  position: relative;
}
.sidebar-widget.widget-2 .news-form .form-control {
  background-color: var(--pb-color-common-white);
  padding: 15px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 500;
  box-shadow: none;
  border: none;
  outline: none;
}
.sidebar-widget.widget-2 .news-form .news-btn {
  background: var(--pb-color-gradient-1);
  height: 30px;
  width: 30px;
  color: var(--pb-color-common-white);
  font-size: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

/* !END: Theme Blog Details CSS */
/**----------------------------------------
START: Theme Contact CSS
----------------------------------------*/
.contact-item {
  border: 1px solid var(--pb-color-border-1);
  padding: 20px;
}
.contact-item .icon {
  background-color: rgba(254, 86, 36, 0.1);
  font-size: 25px;
  color: var(--pb-color-theme-primary);
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  margin-bottom: 20px;
}
.contact-item .title {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 15px;
}
.contact-item .number {
  font-family: var(--pb-ff-heading);
  color: var(--pb-color-heading-primary);
  font-size: 25px;
  font-weight: 600;
  display: block;
  margin-bottom: 20px;
}
.contact-item .contact-btn {
  background-color: var(--pb-color-grey-1);
  font-family: var(--pb-ff-heading);
  font-size: 14px;
  font-weight: 500;
  padding: 7px 20px;
  color: var(--pb-color-heading-primary);
}
.contact-item .contact-btn:hover {
  background-color: var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
}
.contact-item.item-2 {
  background-color: var(--lg-bg);
    backdrop-filter: blur(var(--lg-blur)) saturate(180%) brightness(1.05);
}
.contact-item.item-2 .header {
  color: var(--pb-color-common-white);
  width: 100%;
  text-align: center;
  margin-bottom: 20px;
}
.contact-item.item-2 .contact-list {
  list-style: none;
}
.contact-item.item-2 .contact-list li {
  color: var(--pb-color-common-white);
  font-family: var(--pb-ff-heading);
  font-size: 16px;
  font-weight: 500;
}
.contact-item.item-2 .contact-list li span {
  font-size: 16px;
  font-family: var(--pb-ff-body);
  display: block;
  font-weight: 400;
}
.contact-item.item-2 .contact-list li a {
  font-size: 16px;
  font-family: var(--pb-ff-body);
  display: block;
  font-weight: 400;
}
.contact-item.item-2 .contact-list li:not(:last-of-type) {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.contact-form-area .section-title {
  line-height: 1;
}

.contact-form .form-control {
  box-shadow: none;
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid var(--pb-color-border-1);
  border-radius: 0;
}
.contact-form .submit-btn {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .contact-form .submit-btn {
    margin-top: 20px;
  }
}

.ajax-response {
  font-size: 16px;
  font-weight: 400;
  margin-top: 10px;
}
.ajax-response.success {
  color: rgba(0, 128, 0, 0.8);
}
.ajax-response.error {
  color: rgb(255, 5, 5);
}

.contact-content .title {
  font-size: 50px;
  font-weight: 700;
  margin-bottom: 25px;
}
@media only screen and (max-width: 991px) {
  .contact-content .title {
    font-size: 35px;
  }
}
.contact-content p {
  max-width: 520px;
  width: 100%;
}
.contact-content .contact-box {
  background-color: var(--pb-color-common-white);
  max-width: 520px;
  width: 100%;
  border-radius: 20px;
  padding: 50px 40px;
  margin-top: 40px;
}
.contact-content .contact-box .contact-list li {
  display: flex;
  align-items: center;
  column-gap: 15px;
}
.contact-content .contact-box .contact-list li:not(:last-of-type) {
  margin-bottom: 20px;
}
.contact-content .contact-box .contact-list li i {
  color: var(--pb-color-common-yellow);
}
.contact-content .contact-box .contact-list li span,
.contact-content .contact-box .contact-list li a {
  font-size: 20px;
  font-weight: 600;
  color: var(--pb-color-common-yellow);
}
@media only screen and (max-width: 767px) {
  .contact-content .contact-box .contact-list li span,
  .contact-content .contact-box .contact-list li a {
    font-size: 15px;
  }
}
.contact-content .contact-box .contact-list li a:hover {
  color: var(--pb-color-common-purple);
}

.contact-form {
  background-color: var(--pb-color-common-white);
  padding: 50px 40px;
  border-radius: 20px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}
@media only screen and (max-width: 767px) {
  .contact-form {
    padding: 40px 20px;
  }
}
.contact-form .submit-btn .pb-primary-btn {
  width: auto;
}

.map-wrapper {
  margin-bottom: -10px;
}

.error-content {
  max-width: 1030px;
  margin: 0 auto;
}
.error-content .error-img {
  margin-bottom: 20px;
}
.error-content .sub-title {
  font-size: 54px;
  font-weight: 700;
  margin-bottom: 50px;
}
@media only screen and (max-width: 991px) {
  .error-content .sub-title {
    font-size: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .error-content .sub-title {
    font-size: 28px;
  }
}
.error-content .error-img-2 {
  display: block;
  width: 100%;
}
.error-content .error-btn {
  display: inline-block;
  background: var(--pb-color-common-yellow);
  border: 1px solid var(--pb-color-common-yellow);
  padding: 20px 80px;
}

/* !END: Theme Contact CSS */
/**----------------------------------------
START: Theme Page Header CSS
----------------------------------------*/
.page-header {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}

.page-header-content {
  padding: 242px 0 182px;
}
@media only screen and (max-width: 991px) {
  .page-header-content {
    padding: 100px 0 100px 50px;
  }
}
@media only screen and (max-width: 767px) {
  .page-header-content {
    padding-left: 20px;
  }
}
.page-header-content .title {
  color: var(--pb-color-common-white);
  font-size: 54px;
  font-weight: 700;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .page-header-content .title {
    font-size: 40px;
  }
}
.page-header-content .sub-title {
  color: var(--pb-color-common-white);
  margin-bottom: 0;
}
.page-header-content .sub-title a {
  font-size: 16px;
  font-weight: 500;
}
.page-header-content .sub-title a:hover {
  color: var(--pb-color-theme-primary);
}
.page-header-content .sub-title .home {
  position: relative;
  margin-right: 45px;
}
.page-header-content .sub-title .home:before {
  background-image: none;
  font-family: "Font Awesome 6 Pro";
  color: var(--pb-color-common-white);
  font-size: 12px;
  content: "\f054";
  position: absolute;
  top: 60%;
  right: -24px;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}

/* !END: Theme Page Header CSS */
/**----------------------------------------
START: Theme Service CSS
----------------------------------------*/
.service-item {
  background-color: #fda50254;
  padding: 40px 40px 60px 40px;
  border-radius: 20px; 
  position: relative;
  margin-bottom: 60px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.service-item:hover {
  margin-top: -10px;
}
@media only screen and (max-width: 991px) {
  .service-item:hover {
    margin-top: 0;
  }
}
.service-item .service-icon {
  background-color: var(--pb-color-common-white);
  height: 100px;
  width: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: drop-shadow(0px 0px 60px rgba(0, 0, 0, 0.05));
  margin: 0 auto;
  border-radius: 50%;
  margin-bottom: 30px;
}
.service-item .service-icon img {
  width: 60px;
  height: 60px;
}
.service-item .title {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 20px;
}
.service-item .service-btn {
  position: absolute;
  left: 50%;
  bottom: -30px;
  transform: translateX(-50%);
}
.service-item .service-btn a {
  background-color: var(--pb-color-common-white);
  color: #ff7c00;
  height: 60px;
  width: 60px;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--pb-color-border-1);
  border-radius: 50%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.service-item .service-btn a:hover {
  background-color: #0da7f7;
  color: var(--pb-color-common-white);
  border: transparent;
}

.service-section-2 {
  overflow: hidden;
}
.service-section-2 .section-heading .section-title {
  margin: 0 auto;
}

.service-box-wrap .service-box {
  background-color: var(--pb-color-theme-secondary);
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 630px;
  width: 100%;
  border-radius: 20px;
  position: relative;
}
@media only screen and (max-width: 991px) {
  .service-box-wrap .service-box {
    margin: 0 auto;
  }
}
.service-box-wrap .service-box:not(:last-of-type) {
  margin-bottom: 60px;
}
.service-box-wrap .service-box:before {
  background: rgba(34, 31, 63, 0.1);
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  left: 68%;
  top: 0;
  transform: translateX(-50%);
}
@media only screen and (max-width: 767px) {
  .service-box-wrap .service-box:before {
    left: 65%;
  }
}
.service-box-wrap .service-box .shape {
  position: absolute;
  bottom: 0;
  left: -160px;
}
.service-box-wrap .service-box .service-left {
  padding: 30px 35px;
}
.service-box-wrap .service-box .service-left .service-icon {
  background-color: var(--pb-color-common-white);
  width: 100px;
  height: 100px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
}
.service-box-wrap .service-box .service-left .title {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 20px;
}
.service-box-wrap .service-box .service-left p {
  color: var(--pb-color-heading-primary);
  font-size: 16px;
  font-weight: 500;
  max-width: 370px;
  width: 100%;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .service-box-wrap .service-box .service-left p {
    max-width: 330px;
  }
}
.service-box-wrap .service-box .service-right {
  padding-right: 35px;
}
.service-box-wrap .service-box:nth-child(2) {
  margin-left: 330px;
}
@media (max-width: 1399px) {
  .service-box-wrap .service-box:nth-child(2) {
    margin-left: 200px;
  }
}
@media (max-width: 1170px) {
  .service-box-wrap .service-box:nth-child(2) {
    margin-left: 100px;
  }
}
@media only screen and (max-width: 991px) {
  .service-box-wrap .service-box:nth-child(2) {
    margin-left: 0;
  }
}
@media only screen and (max-width: 991px) {
  .service-box-wrap .service-box:nth-child(2) {
    margin: 0 auto;
  }
}
.service-box-wrap .service-box:nth-child(3) {
  margin-left: 650px;
}
@media (max-width: 1399px) {
  .service-box-wrap .service-box:nth-child(3) {
    margin-left: 520px;
  }
}
@media (max-width: 1170px) {
  .service-box-wrap .service-box:nth-child(3) {
    margin-left: 300px;
  }
}
@media only screen and (max-width: 991px) {
  .service-box-wrap .service-box:nth-child(3) {
    margin: 0 auto;
  }
}
.service-box-wrap .service-box:not(:last-of-type) {
  margin-bottom: 60px;
}
@media only screen and (max-width: 991px) {
  .service-box-wrap .service-box:not(:last-of-type) {
    margin-bottom: 40px;
  }
}

.service-page .service-item .service-btn a {
  background-color: var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
  border: 1px solid var(--pb-color-theme-primary);
}
.service-page .service-item .service-btn a:hover {
  background-color: var(--pb-color-heading-primary);
  border: 1px solid var(--pb-color-heading-primary);
}

/* !END: Theme Service CSS */
/**----------------------------------------
START: Theme Sponsor CSS
----------------------------------------*/
.sponsor-item {
  text-align: center;
}

/* !END: Theme Sponsor CSS */
/**----------------------------------------
START: Theme About CSS
----------------------------------------*/
.about-img {
  position: relative;
}
@media only screen and (max-width: 991px) {
  .about-img .img {
    width: 100%;
  }
  .about-img {
  Display: none;
  }
}
.about-img .shape {
  background-repeat: no-repeat;
  background-position: top left;
  background-size: contain;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.about-img .about-counter {
  background-color: var(--pb-color-common-white);
  filter: drop-shadow(0px 0px 18px rgba(0, 0, 0, 0.05));
  padding: 20px 45px;
  border-radius: 20px;
  position: absolute;
  bottom: 0;
  right: 20%;
  animation: about-anim 2s infinite linear alternate-reverse;
}
@media only screen and (max-width: 767px) {
  .about-img .about-counter {
    padding: 20px;
  }
}
.about-img .about-counter .counter-icon {
  display: flex;
  align-items: center;
  column-gap: 10px;
}
.about-img .about-counter .counter-icon .icon {
  background-color: var(--pb-color-theme-primary);
  height: 55px;
  width: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.about-img .about-counter .counter-icon .title {
  margin-bottom: 0;
  font-size: 54px;
  font-weight: 700;
}
.about-img .about-counter .counter-icon .title .odometer-auto-theme {
  font-family: inherit;
  line-height: 1;
}
.about-img .about-counter .counter-icon .title .odometer-auto-theme .odometer-digit-spacer {
  width: 32px;
}
.about-img .about-counter p {
  color: var(--pb-color-heading-primary);
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 0;
}

.about-content {
  position: relative;
}
.about-content .shape {
  position: absolute;
  right: 20%;
  bottom: 5%;
}
.about-content .section-heading .section-title {
  margin-bottom: 15px;
}
.about-content .section-heading p {
  max-width: 500px;
  width: 100%;
}
.about-content .about-list {
  list-style: none;
  margin-bottom: 30px;
}
.about-content .about-list li {
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
}
.about-content .about-list li:not(:last-of-type) {
  margin-bottom: 10px;
}
.about-content .about-list li i {
  font-size: 14px;
  color: var(--pb-color-theme-primary);
  margin-right: 10px;
}
.about-content .about-list li:nth-child(2) i {
  color: var(--pb-color-theme-secondary);
}
.about-content .about-list li:nth-child(3) i {
  color: var(--pb-color-gradient-2);
}

@-webkit-keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
@-moz-keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
@-ms-keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
@keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
.about-img-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  grid-gap: 25px;
  padding-right: 20px;
}
@media only screen and (max-width: 991px) {
  .about-img-wrap {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .about-img-wrap {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    padding-right: 0;
    margin-top: 150px;
  }
}

.about-img-item {
  position: relative;
  z-index: 1;
}
.about-img-item:nth-child(1) {
  text-align: right;
}
.about-img-item:nth-child(2) {
  margin-right: 10px;
}
.about-img-item:nth-child(3) {
  margin-left: 10px;
}
.about-img-item .about-counter {
  background-color: var(--pb-color-common-white);
  display: inline-flex;
  align-items: center;
  column-gap: 20px;
  padding: 20px 25px;
  border-radius: 20px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  position: absolute;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 767px) {
  .about-img-item .about-counter {
    bottom: 25px;
    right: 50%;
    transform: translateX(50%);
    width: 100%;
    justify-content: center;
  }
}
.about-img-item .about-counter .counter-content .title {
  font-size: 54px;
  font-weight: 700;
  margin-bottom: 0;
  display: flex;
  align-items: center;
}
.about-img-item .about-counter .counter-content .title .odometer-auto-theme {
  font-family: inherit;
}
.about-img-item .about-counter .counter-content p {
  color: var(--pb-color-heading-primary);
  font-weight: 500;
  margin-top: -5px;
  margin-bottom: 5px;
}
.about-img-item .shape {
  position: absolute;
  left: 0;
  top: 45px;
}
@media only screen and (max-width: 991px) {
  .about-img-item .shape {
    left: 44px;
    top: 80px;
  }
}
.about-img-item .item-img {
  position: relative;
  z-index: 1;
}
.about-img-item .item-img .bg-shape {
  background-color: var(--pb-color-common-yellow);
  width: 100%;
  height: 100%;
  position: absolute;
  top: -10px;
  right: -10px;
  z-index: -1;
  border-radius: 25px;
}
.about-img-item .item-img .bg-shape.bottom {
  background-color: var(--pb-color-theme-secondary);
  right: auto;
  top: auto;
  left: -10px;
  bottom: -10px;
}
.about-img-item .item-img img {
  width: 100%;
  border-radius: 25px;
}
.about-img-item.chart {
  height: 100%;
  background-color: var(--pb-color-common-white);
  border-radius: 20px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  max-width: 235px;
  width: 100%;
  padding: 10px;
}
.about-img-item.chart .item-chart-wrap {
  padding: 10px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  z-index: 1;
}
.about-img-item.chart .item-chart-wrap:before {
  background-color: transparent;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  border: 2px dashed var(--pb-color-common-yellow);
  border-radius: 20px;
  z-index: -1;
}
.about-img-item.chart .item-chart {
  text-align: center;
}
.about-img-item.chart .item-chart .piechart {
  color: var(--pb-color-heading-primary);
  position: relative;
  display: inline-block;
  font-size: 26px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 10px;
}
.about-img-item.chart .item-chart .piechart canvas {
  position: absolute;
  top: 0;
  left: 0;
}
.about-img-item.chart .item-chart .item-content .title {
  color: var(--pb-color-heading-primary);
  font-size: 20px;
  font-weight: 600;
}

.about-content-2 .section-heading {
  margin-bottom: 30px;
}
.about-content-2 .section-heading .section-title {
  margin-left: 0;
}
@media (max-width: 1170px) {
  .about-content-2 .section-heading .section-title {
    font-size: 40px;
  }
}
@media only screen and (max-width: 991px) {
  .about-content-2 .section-heading .section-title {
    font-size: 38px;
  }
}
@media only screen and (max-width: 767px) {
  .about-content-2 .section-heading .section-title {
    font-size: 28px;
  }
}
.about-content-2 .section-heading .section-title span:before {
  bottom: -6px;
}
.about-content-2 .section-heading p {
  max-width: 550px;
  width: 100%;
}
.about-content-2 .about-box-wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 20px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .about-content-2 .about-box-wrap {
    margin-bottom: 10px;
  }
}
.about-content-2 .about-box-wrap .about-box .title {
  display: flex;
  align-items: center;
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 15px;
}
.about-content-2 .about-box-wrap .about-box .title i {
  font-size: 16px;
  color: var(--pb-color-theme-primary);
  margin-right: 10px;
}
.about-content-2 .about-box-wrap .about-box p {
  max-width: 300px;
  width: 100%;
}

.about-3 {
  padding: 105px 0 185px 0;
}
@media only screen and (max-width: 991px) {
  .about-3 {
    padding: 65px 0 165px 0;
  }
}
.about-3 .about-content {
  transform: translateY(40px);
}
@media only screen and (max-width: 991px) {
  .about-3 .about-content {
    transform: translateY(100px);
  }
}
.about-3 .about-content .section-heading {
  margin-bottom: 30px;
}
.about-3 .about-content .section-heading .sub-heading {
  color: var(--pb-color-common-yellow);
}
.about-3 .about-content .about-list li {
  color: var(--pb-color-common-white);
}
.about-3 .about-content .about-list li:nth-child(3) i {
  color: #47479F;
}
.about-3 .about-content a {
  color: var(--pb-color-common-white);
}

.about-img-box {
  position: relative;
  max-width: 600px;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  column-gap: 25px;
}
.about-img-box .img-box {
  position: relative;
}
.about-img-box .img-box .about-counter {
  background-color: var(--pb-color-common-white);
  filter: drop-shadow(0px 0px 18px rgba(0, 0, 0, 0.05));
  padding: 20px 45px;
  border-radius: 20px;
  width: 100%;
  position: absolute;
  bottom: 50px;
  right: -20%;
  animation: about-anim 2s infinite linear alternate-reverse;
  z-index: 1;
}
@media (max-width: 1170px) {
  .about-img-box .img-box .about-counter {
    padding: 20px 35px;
  }
}
@media only screen and (max-width: 767px) {
  .about-img-box .img-box .about-counter {
    display: none;
  }
}
.about-img-box .img-box .about-counter .counter-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 10px;
}
@media only screen and (max-width: 991px) {
  .about-img-box .img-box .about-counter .counter-icon {
    justify-content: flex-start;
  }
}
.about-img-box .img-box .about-counter .counter-icon .icon {
  background-color: var(--pb-color-theme-primary);
  height: 55px;
  width: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.about-img-box .img-box .about-counter .counter-icon .title {
  margin-bottom: 0;
  font-size: 54px;
  font-weight: 700;
}
.about-img-box .img-box .about-counter .counter-icon .title .odometer-auto-theme {
  font-family: inherit;
  line-height: 1;
}
.about-img-box .img-box .about-counter .counter-icon .title .odometer-auto-theme .odometer-digit-spacer {
  width: 32px;
}
.about-img-box .img-box .about-counter p {
  color: var(--pb-color-heading-primary);
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 0;
}
.about-img-box .img-box.box-2 {
  max-width: 280px;
  transform: translateY(80px);
}

/* !END: Theme About CSS */
/**----------------------------------------
START: Theme Skill CSS
----------------------------------------*/
.skill-content .section-heading {
  margin-bottom: 50px;
}
@media only screen and (max-width: 991px) {
  .skill-content .section-heading {
    margin-bottom: 30px;
  }
}
.skill-content .section-heading .section-title {
  margin-bottom: 15px;
}
.skill-content .section-heading p {
  max-width: 500px;
  width: 100%;
}

.skills-items {
  max-width: 480px;
  width: 100%;
}
.skills-items .skills-item {
  overflow: hidden;
  padding-top: 30px;
  padding-bottom: 10px;
}
.skills-items .skills-item:not(:last-of-type) {
  margin-bottom: 25px;
}
.skills-items .skills-item .item-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.skills-items .skills-item .item-content span,
.skills-items .skills-item .item-content .title {
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 0;
  position: relative;
  z-index: 1;
}
.skills-items .skills-item .item-content .title {
  margin-bottom: 20px;
}
.skills-items .skills-item .progress {
  height: 3px;
  overflow: visible;
}
.skills-items .skills-item .progress .progress-bar {
  position: relative;
  background-color: var(--pb-color-theme-primary);
  overflow: visible;
}
.skills-items .skills-item .progress .progress-bar span {
  background-repeat: no-repeat;
  color: var(--pb-color-common-white);
  padding: 10px 10px 20px 10px;
  position: absolute;
  top: -66px;
  right: -11px;
}
.skills-items .skills-item .progress .progress-bar .dot {
  background-color: var(--pb-color-theme-primary);
  height: 20px;
  width: 20px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  border-radius: 50%;
}

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

@media only screen and (max-width: 991px) {
  .skill-wrap {
    flex-direction: column-reverse;
  }
}

/* !END: Theme Skill CSS */
/**----------------------------------------
START: Theme Counter CSS
----------------------------------------*/
.counter-section {
  position: relative;
  z-index: 1;
}
.counter-section .bg-color {
  background-color: var(--pb-color-grey-1);
  width: 100%;
  height: 50%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.counter-wrap {
  background: var(--pb-color-gradient-2);
  padding: 60px 40px;
  border-radius: 20px;
}
@media only screen and (max-width: 991px) {
  .counter-wrap {
    padding: 40px;
  }
}

.counter-item {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 20px;
}
.counter-item .counter-icon {
  width: 60px;
}
.counter-item .counter-icon img {
  width: 60px;
}
.counter-item .counter-content {
  margin-top: -10px;
}
.counter-item .counter-content .title {
  color: var(--pb-color-common-white);
  font-size: 54px;
  font-weight: 700;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
}
@media (max-width: 1170px) {
  .counter-item .counter-content .title {
    font-size: 44px;
  }
}
@media only screen and (max-width: 767px) {
  .counter-item .counter-content .title {
    justify-content: center;
  }
}
.counter-item .counter-content .title .odometer-auto-theme {
  font-family: inherit;
}
.counter-item .counter-content .title .odometer-auto-theme .odometer-digit-spacer {
  padding-right: 2px;
}
.counter-item .counter-content p {
  color: var(--pb-color-common-white);
  margin-bottom: 0;
  letter-spacing: 0.3px;
}
@media (max-width: 1170px) {
  .counter-item .counter-content p {
    font-size: 14px;
  }
}

.counter-wrap.wrap-2 {
  background: var(--pb-color-common-white);
  border-radius: 20px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  position: relative;
}
@media only screen and (max-width: 767px) {
  .counter-wrap.wrap-2 {
    padding: 20px 40px 40px 40px;
    margin: 0 20px 0 20px;
  }
}
.counter-wrap.wrap-2:before {
  background: var(--pb-color-gradient-1);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: -5px;
  left: 0;
  z-index: -1;
  border-radius: 20px;
}
.counter-wrap.wrap-2 .counter-item .title {
  color: var(--pb-color-theme-primary);
}
.counter-wrap.wrap-2 .counter-item p {
  color: var(--pb-color-heading-primary);
  font-size: 16px;
  font-weight: 700;
}

.counter-2 {
  overflow: hidden;
}

.counter-wrap.wrap-3 {
  background: transparent;
  padding: 0;
  position: relative;
}
.counter-wrap.wrap-3 .shape {
  position: absolute;
  top: 0px;
  left: -100px;
}
.counter-wrap.wrap-3 .counter-item {
  padding: 30px 0 25px 0;
  border: 1px solid var(--pb-color-theme-primary);
  border-radius: 20px;
  text-align: center;
}
.counter-wrap.wrap-3 .counter-item .title {
  justify-content: center;
}

/* !END: Theme Counter CSS */
/**----------------------------------------
START: Theme Project CSS
----------------------------------------*/
.project-section {
  position: relative;
  z-index: 1;
}
.project-section .bg-color {
  background-color: var(--pb-color-common-white);
  width: 100%;
  height: 25%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
@media only screen and (max-width: 991px) {
  .project-section .bg-color {
    height: 15%;
  }
}
.project-section .shapes .shape {
  position: absolute;
  top: 20%;
  left: 10%;
}
@media (max-width: 1170px) {
  .project-section .shapes .shape {
    left: 5%;
  }
}
@media only screen and (max-width: 991px) {
  .project-section .shapes .shape {
    top: 10%;
  }
}
@media only screen and (max-width: 767px) {
  .project-section .shapes .shape {
    display: none;
  }
}
@media only screen and (max-width: 991px) {
  .project-section .shapes .shape.shape-1 {
    display: none;
  }
}
.project-section .shapes .shape.shape-2 {
  top: 25%;
  left: auto;
  right: 10%;
}
@media (max-width: 1170px) {
  .project-section .shapes .shape.shape-2 {
    right: 5%;
  }
}
@media only screen and (max-width: 991px) {
  .project-section .shapes .shape.shape-2 {
    top: 10%;
  }
}

.project-filter .project-filter-list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  row-gap: 20px;
  list-style: none;
  margin-bottom: 60px;
}
@media only screen and (max-width: 991px) {
  .project-filter .project-filter-list {
    margin: 10px 0 40px 0;
  }
}
.project-filter .project-filter-list .filter-item {
  padding: 10px 20px;
  border: 1px solid var(--pb-color-common-yellow);
  border-radius: 30px;
  font-size: 16px;
  font-weight: 500;
  color: var(--pb-color-heading-primary);
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.project-filter .project-filter-list .filter-item.active, .project-filter .project-filter-list .filter-item:hover {
  background-color: var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
  border: 1px solid var(--pb-color-theme-primary);
}
.project-filter .project-filter-list .filter-item:first-child {
  margin-right: 45px;
}
.project-filter .project-filter-list .filter-item:not(:last-of-type) {
  margin-right: 45px;
}
@media only screen and (max-width: 767px) {
  .project-filter .project-filter-list .filter-item:not(:last-of-type) {
    margin-right: 20px;
  }
}

.project-item .project-thumb {
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}
.project-item .project-thumb img {
  width: 100%;
}
.project-item .project-thumb .project-content {
  background-color: var(--pb-color-common-white);
  width: 90%;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  padding: 30px 20px;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s all ease-in-out;
  border-radius: 20px;
}
.project-item .project-thumb .project-content .title {
  font-size: 22px;
  font-weight: 700;
}
.project-item .project-thumb .project-content p {
  max-width: 300px;
  width: 100%;
  margin-bottom: 0;
}
.project-item .project-thumb:hover .project-content {
  bottom: 30px;
  visibility: visible;
  opacity: 1;
}

.project-section-2 .section-heading {
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  .project-section-2 .section-heading {
    margin-bottom: 120px;
  }
}
.project-section-2 .section-heading .section-title {
  max-width: 750px;
}

.project-img-wrap {
  position: relative;
  max-width: 600px;
  width: 100%;
}
@media only screen and (max-width: 991px) {
  .project-img-wrap {
    margin: 0 auto;
  }
}
.project-img-wrap img {
  max-width: 500px;
  width: 100%;
  border-radius: 5px;
}
@media only screen and (max-width: 991px) {
  .project-img-wrap img {
    max-width: inherit;
  }
}
.project-img-wrap .project-counter {
  background-color: var(--pb-color-common-yellow);
  display: inline-block;
  padding: 25px 20px;
  position: absolute;
  top: -90px;
  left: 50px;
  border-radius: 20px;
  max-width: 155px;
  width: 100%;
}
.project-img-wrap .project-counter .title {
  display: flex;
  align-items: center;
  color: var(--pb-color-common-white);
  font-size: 54px;
  font-weight: 700;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .project-img-wrap .project-counter .title {
    font-size: 40px;
  }
}
.project-img-wrap .project-counter .title .odometer-auto-theme {
  font-family: inherit;
}
.project-img-wrap .project-counter .title .odometer-digit-spacer {
  padding-right: 2px;
}
.project-img-wrap .project-counter p {
  font-size: 20px;
  color: var(--pb-color-common-white);
  max-width: 170px;
  width: 100%;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .project-img-wrap .project-counter p {
    font-size: 14px;
    line-height: 1.3;
  }
}
.project-img-wrap .project-counter-2 {
  background-color: var(--pb-color-theme-secondary);
  display: inline-flex;
  align-items: center;
  padding: 15px 30px;
  border-radius: 20px;
  column-gap: 15px;
  position: absolute;
  bottom: 10px;
  right: 30px;
}
.project-img-wrap .project-counter-2 .icon {
  background-color: var(--pb-color-common-white);
  color: var(--pb-color-theme-secondary);
  width: 50px;
  height: 50px;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.project-img-wrap .project-counter-2 .title {
  display: flex;
  align-items: center;
  color: var(--pb-color-common-white);
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 0;
}
.project-img-wrap .project-counter-2 .title .odometer-auto-theme {
  font-family: inherit;
}
.project-img-wrap .project-counter-2 .title .odometer-digit-spacer {
  padding-right: 2px;
}
.project-img-wrap .project-counter-2 p {
  color: var(--pb-color-common-white);
  margin-bottom: 0;
}

.project-list-wrap {
  position: relative;
  z-index: 1;
}
.project-list-wrap .shape {
  position: absolute;
  top: -70px;
  right: -55px;
  z-index: -1;
}
@media only screen and (max-width: 991px) {
  .project-list-wrap .shape {
    display: none;
  }
}

.project-list {
  margin-top: -40px;
}
@media only screen and (max-width: 991px) {
  .project-list {
    margin-top: 40px;
  }
}
.project-list li {
  display: grid;
  grid-template-columns: 80px 1fr;
  grid-gap: 20px;
}
.project-list li:not(:last-of-type) {
  margin-bottom: 15px;
}
.project-list li .list-icon {
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--pb-color-common-white);
  border-radius: 50%;
}
.project-list li .title {
  background-color: var(--pb-color-common-white);
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 0;
  padding: 20px 20px 20px 50px;
  width: 100%;
  display: flex;
  align-items: center;
  border-radius: 140px;
}
@media only screen and (max-width: 767px) {
  .project-list li .title {
    font-size: 17px;
  }
}

.project-box {
  position: relative;
  z-index: 1;
  border-radius: 20px;
}
.project-box img {
  width: 100%;
}
.project-box .project-content {
  background-color: var(--pb-color-common-white);
  width: 90%;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  padding: 30px 20px;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s all ease-in-out;
  border-radius: 20px;
}
.project-box .project-content .title {
  font-size: 22px;
  font-weight: 700;
}
.project-box .project-content p {
  max-width: 300px;
  width: 100%;
  margin-bottom: 0;
}

.project-carousel {
  padding-bottom: 40px;
  padding-top: 40px;
}
.project-carousel .swiper-slide {
  transition: 0.3s all ease-in-out;
}
.project-carousel .swiper-slide-active {
  transform: translateY(-40px);
}
.project-carousel .swiper-slide-active .project-box .project-content {
  visibility: visible;
  opacity: 1;
}

.swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
}
.swiper-pagination .swiper-pagination-bullet {
  background: #E7E7EB;
  height: 5px;
  width: 20px;
  border-radius: 20px;
  opacity: 1;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--pb-color-gradient-1);
  width: 40px;
  height: 10px;
}

.project-page .project-box {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.project-page .project-box .overlay {
  background: linear-gradient(180deg, rgba(34, 31, 63, 0) 0%, #221F3F 100%);
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.project-page .project-box .project-content {
  z-index: 2;
}
.project-page .project-box .project-content .project-btn {
  background-color: var(--pb-color-common-yellow);
  color: var(--pb-color-common-white);
  height: 45px;
  width: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  top: -22.5px;
  right: 0;
}
.project-page .project-box .project-content .project-btn:hover {
  background-color: var(--pb-color-theme-primary);
}
.project-page .project-box:hover .overlay {
  visibility: visible;
  opacity: 1;
}
.project-page .project-box:hover .project-content {
  bottom: 30px;
  visibility: visible;
  opacity: 1;
}

.project-details-img {
  margin-bottom: 35px;
}
.project-details-img img {
  width: 100%;
}

.project-details-content .content-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 20px;
}
.project-details-content .content-top .title {
  font-size: 54px;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .project-details-content .content-top .title {
    font-size: 32px;
  }
}
.project-details-content .content-top p {
  max-width: 630px;
  width: 100%;
  margin-bottom: 0;
}
.project-details-content .content-item .title {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 20px;
}
.project-details-content .details-list-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 900px;
  width: 100%;
  flex-wrap: wrap;
  row-gap: 10px;
  margin-bottom: 40px;
}
.project-details-content .details-list-wrap ul li {
  color: var(--pb-color-text-body);
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
}
.project-details-content .details-list-wrap ul li i {
  color: var(--pb-color-theme-primary);
  margin-right: 10px;
}
.project-details-content .details-list-wrap ul li:nth-child(2) i {
  color: var(--pb-color-theme-secondary);
}
.project-details-content .details-list-wrap ul li:nth-child(3) i {
  color: var(--pb-color-common-purple);
}
.project-details-content .details-list-wrap ul li:not(:last-of-type) {
  margin-bottom: 10px;
}
.project-details-content .details-img-wrap {
  margin-bottom: 40px;
}
.project-details-content .details-img-wrap .details-img-thumb img {
  width: 100%;
}
.project-details-content .layout-social-box {
  margin-top: 40px;
  margin-bottom: 0;
}

/* !END: Theme Project CSS */
/**----------------------------------------
START: Theme Testimonial CSS
----------------------------------------*/
.testi-info {
  padding-right: 20px;
}
@media only screen and (max-width: 991px) {
  .testi-info {
    padding-right: 0;
  }
}
.testi-info .section-heading .section-title {
  margin-bottom: 20px;
}
.testi-info .section-heading .section-title span:before {
  bottom: -3px;
}
.testi-info .section-heading p {
  max-width: 500px;
  width: 100%;
}

.testi-items {
  padding-top: 10px;
  padding-left: 20px;
}
@media only screen and (max-width: 991px) {
  .testi-items {
    padding-left: 0;
  }
}

.testi-item {
  background-color: var(--pb-color-common-white);
  position: relative;
  border-radius: 20px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  padding: 40px;
}
.testi-item:not(:last-of-type) {
  margin-bottom: 50px;
}
.testi-item .client-thumb {
  position: absolute;
  top: -10px;
  left: -10px;
}
.testi-item .client-thumb img {
  width: 120px;
  height: 120px;
}
.testi-item .quote {
  position: absolute;
  top: 40px;
  right: 40px;
}
@media only screen and (max-width: 767px) {
  .testi-item .quote {
    display: none;
  }
}
.testi-item .testi-content .name {
  padding-left: 110px;
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 45px;
}
.testi-item .testi-content .name span {
  color: var(--pb-color-text-body);
  display: block;
  font-size: 16px;
  font-weight: 500;
  margin-top: 5px;
}
.testi-item .testi-content .review {
  display: flex;
  align-items: center;
  list-style: none;
  margin-bottom: 15px;
}
.testi-item .testi-content .review li:not(:last-of-type) {
  margin-right: 7px;
}
.testi-item .testi-content .review li i {
  color: #FE9D51;
}
.testi-item .testi-content p {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .testi-item .testi-content p {
    font-size: 16px;
  }
}

.testimonial-section-2 {
  position: relative;
  z-index: 1;
}
.testimonial-section-2 .bg-color {
  background-color: var(--pb-color-grey-1);
  width: 100%;
  height: 50%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.testi-wrap {
  background-color: var(--pb-color-common-white);
  grid-gap: 65px;
  border-radius: 20px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  padding: 85px 70px;
  position: relative;
}
.testi-wrap:before {
  background: var(--pb-color-gradient-1);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: -5px;
  left: 0;
  z-index: -1;
  border-radius: 20px;
}
@media only screen and (max-width: 767px) {
  .testi-wrap {
    padding: 40px;
  }
}
.testi-wrap .shape {
  position: absolute;
  top: -120px;
  right: -80px;
  z-index: -1;
}
@media (max-width: 1600px) {
  .testi-wrap .shape {
    right: -30px;
  }
}
@media (max-width: 1399px) {
  .testi-wrap .shape {
    right: 0;
  }
}
@media only screen and (max-width: 991px) {
  .testi-wrap .shape {
    top: -60px;
  }
}
@media only screen and (max-width: 767px) {
  .testi-wrap .shape {
    display: none;
  }
}
.testi-wrap .quote {
  position: absolute;
  left: 70px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .testi-wrap .quote {
    display: none;
  }
}

.testi-carousel-wrap {
  padding-left: 170px;
}
@media only screen and (max-width: 767px) {
  .testi-carousel-wrap {
    padding-left: 0;
  }
}
.testi-carousel-wrap .testi-carousel .swiper-pagination {
  position: absolute;
  top: 40px;
  right: 40px;
  left: auto;
  bottom: auto;
  width: auto;
}
@media only screen and (max-width: 767px) {
  .testi-carousel-wrap .testi-carousel .swiper-pagination {
    display: none;
  }
}

.testi-box .author-info {
  display: grid;
  grid-template-columns: 95px 1fr;
  align-items: center;
  grid-gap: 30px;
  margin-bottom: 35px;
}
.testi-box .author-info .name {
  font-size: 22px;
  font-weight: 600;
}
.testi-box .author-info .name span {
  color: var(--pb-color-text-body);
  display: block;
  font-size: 16px;
  font-weight: 500;
  margin-top: 5px;
}
.testi-box p {
  font-size: 20px;
  margin-bottom: 0;
  line-height: 1.6;
}

/* !END: Theme Testimonial CSS */
/**----------------------------------------
START: Theme Pricing CSS
----------------------------------------*/
.pricing-tab {
  position: relative;
  z-index: 1;
}
.pricing-tab .shape {
  position: absolute;
  top: 35px;
  right: -70px;
}
@media only screen and (max-width: 767px) {
  .pricing-tab .shape {
    display: none;
  }
}
.pricing-tab .nav-tabs {
  justify-content: center;
  column-gap: 10px;
  border: none;
  margin-bottom: 60px;
}
@media only screen and (max-width: 991px) {
  .pricing-tab .nav-tabs {
    margin: 40px;
  }
}
.pricing-tab .nav-tabs .nav-link {
  color: var(--pb-color-text-body);
  font-size: 16px;
  font-weight: 500;
  padding: 8px 25px;
  border: 1px solid #657EFF;
  border-radius: 30px;
  position: relative;
  z-index: 1;
  transition: all 0.3s ease-in-out;
}
.pricing-tab .nav-tabs .nav-link:before {
  background: var(--pb-color-gradient-2);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  z-index: -1;
  transition: all 0.3s ease-in-out;
  border-radius: 20px;
}
.pricing-tab .nav-tabs .nav-link.active, .pricing-tab .nav-tabs .nav-link:hover {
  color: var(--pb-color-common-white);
}
.pricing-tab .nav-tabs .nav-link.active:before, .pricing-tab .nav-tabs .nav-link:hover:before {
  visibility: visible;
  opacity: 1;
}

.pricing-item {
  background-color: var(--pb-color-grey-1);
  position: relative;
  padding: 40px;
  border-radius: 20px;
  transition: all 0.3s ease-in-out;
  z-index: 1;
}
@media (max-width: 1170px) {
  .pricing-item {
    padding: 40px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .pricing-item {
    padding: 40px 20px;
  }
}
.pricing-item:before {
  background: var(--pb-color-gradient-1);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  z-index: -1;
  transition: all 0.3s ease-in-out;
  border-radius: 20px;
}
.pricing-item .pricing-icon {
  background-color: var(--pb-color-common-white);
  height: 100px;
  width: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  top: 40px;
  right: 40px;
}
@media (max-width: 1170px) {
  .pricing-item .pricing-icon {
    right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .pricing-item .pricing-icon {
    right: 20px;
  }
}
.pricing-item .pricing-content .sub-title {
  color: var(--pb-color-heading-primary);
  font-size: 22px;
  font-weight: 600;
  display: block;
  margin-bottom: 40px;
  line-height: 1;
  transition: all 0.3s ease-in-out;
}
.pricing-item .pricing-content .title {
  font-size: 54px;
  font-weight: 700;
  margin-bottom: 30px;
  transition: all 0.3s ease-in-out;
}
.pricing-item .pricing-content .title span {
  font-size: 16px;
  font-weight: 400;
}
.pricing-item .pricing-content p {
  margin-bottom: 25px;
  transition: all 0.3s ease-in-out;
}
.pricing-item .pricing-content .pricing-list {
  list-style: none;
  margin-bottom: 40px;
}
.pricing-item .pricing-content .pricing-list li {
  font-size: 16px;
  font-weight: 400;
  transition: all 0.3s ease-in-out;
}
.pricing-item .pricing-content .pricing-list li:not(:last-of-type) {
  margin-bottom: 10px;
}
.pricing-item .pricing-content .pricing-list li i {
  margin-right: 10px;
  color: var(--pb-color-heading-primary);
  transition: all 0.3s ease-in-out;
}
.pricing-item .pricing-content .pricing-btn {
  background-color: transparent;
  font-family: var(--pb-ff-heading);
  color: var(--pb-color-heading-primary);
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  padding: 20px 30px;
  transition: all 0.3s ease-in-out;
  border: 1px solid var(--pb-color-heading-primary);
  border-radius: 30px;
  line-height: 1;
  width: 100%;
  text-align: center;
  position: relative;
  z-index: 1;
}
.pricing-item .pricing-content .pricing-btn:before {
  background: var(--pb-color-gradient-1);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  border-radius: 30px;
  z-index: -1;
  transition: all 0.3s ease-in-out;
}
.pricing-item .pricing-content .pricing-btn:hover {
  color: var(--pb-color-common-white);
  border: 1px solid transparent;
}
.pricing-item .pricing-content .pricing-btn:hover:before {
  visibility: visible;
  opacity: 1;
}
.pricing-item.active:before {
  visibility: visible;
  opacity: 1;
}
.pricing-item.active .sub-title,
.pricing-item.active .title,
.pricing-item.active p,
.pricing-item.active .pricing-list li i,
.pricing-item.active .pricing-list li {
  color: var(--pb-color-common-white);
}
.pricing-item.active .pricing-btn {
  background-color: var(--pb-color-common-white);
  border: 1px solid var(--pb-color-common-white);
}
.pricing-item.active .pricing-btn:hover {
  background-color: var(--pb-color-heading-primary);
  color: var(--pb-color-common-white);
  border: 1px solid var(--pb-color-heading-primary);
}
.pricing-item.active .pricing-btn:hover:before {
  display: none;
}

/* !END: Theme Pricing CSS */
/**----------------------------------------
START: Theme Request CSS
----------------------------------------*/
.request-section {
  position: relative;
  z-index: 1;
}
.request-section .bg-color {
  background-color: var(--pb-color-common-white);
  width: 100%;
  height: 130px;
  position: absolute;
  left: 0;
  bottom: 0;
}
@media only screen and (max-width: 991px) {
  .request-section .bg-color {
    display: none;
  }
}

.request-content {
  background-color: var(--pb-color-common-white);
  padding: 50px 40px;
  border-radius: 20px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  position: relative;
}
@media only screen and (max-width: 767px) {
  .request-content {
    padding: 40px 20px;
  }
}
.request-content .shape {
  position: absolute;
  top: 0;
  left: -150px;
}
@media only screen and (max-width: 767px) {
  .request-content .shape {
    display: none;
  }
}
.request-content .section-heading .section-title {
  font-size: 50px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 991px) {
  .request-content .section-heading .section-title {
    font-size: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .request-content .section-heading .section-title {
    font-size: 28px;
  }
}

.request-form .form-group .form-control {
  background-color: var(--pb-color-grey-1);
  font-size: 16px;
  box-shadow: none;
  padding: 23px 20px;
  margin-bottom: 20px;
  border: none;
  border-radius: 20px;
}
.request-form .form-group .form-control::-webkit-input-placeholder {
  color: var(--pb-color-text-body);
  font-weight: 500;
}
.request-form .form-group .form-control:-moz-placeholder {
  color: var(--pb-color-text-body);
  font-weight: 500;
}
.request-form .form-group .form-control::-moz-placeholder {
  color: var(--pb-color-text-body);
  font-weight: 500;
}
.request-form .form-group .form-control:-ms-input-placeholder {
  color: var(--pb-color-text-body);
  font-weight: 500;
}
.request-form .form-group .form-control.select-control {
  color: var(--pb-color-text-body);
  font-weight: 500;
  line-height: inherit;
  height: inherit;
  float: none;
}
.request-form .form-group .form-control.nice-select .list {
  width: 100%;
  border-radius: 20px;
}
.request-form .form-group .form-control.nice-select .list li {
  border: none;
}
.request-form .form-group .form-control.nice-select:after {
  top: 46%;
  width: 8px;
  height: 8px;
  border-color: var(--pb-color-heading-primary);
  border-bottom: 1px solid var(--pb-color-heading-primary);
  border-right: 1px solid var(--pb-color-heading-primary);
  right: 20px;
}
.request-form .submit-btn {
  margin-top: 10px;
}
.request-form .submit-btn .pb-primary-btn {
  width: 100%;
  color: var(--pb-color-common-white);
  padding: 25px 30px;
  border: 1px solid transparent;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border-radius: 999px;
  border: 1px solid transparent;
}
.request-form .submit-btn .pb-primary-btn:before {
  background: var(--pb-color-common-purple);
  height: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.request-form .submit-btn .pb-primary-btn:hover {
  color: var(--pb-color-common-yellow);
  border: 1px solid var(--pb-color-common-purple);
}
.request-form .submit-btn .pb-primary-btn:hover:before {
  visibility: hidden;
  opacity: 0;
}

@media only screen and (max-width: 991px) {
  .request-img img {
    width: 100%;
    display: none;
  }
}

/* !END: Theme Request CSS */
/**----------------------------------------
START: Theme Promo CSS
----------------------------------------*/
.promo-section {
  margin-top: -100px;
  position: relative;
  z-index: 1;
}

.promo-item {
  background-color: var(--pb-color-common-white);
  border-radius: 20px;
  border-bottom: 4px solid var(--pb-color-theme-secondary);
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  padding: 50px 40px;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .promo-item .promo-header {
    font-size: 24px;
  }
}
.promo-item .promo-icon {
  margin-bottom: 30px;
}
.promo-item .title {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 30px;
}
.promo-item p {
  margin-bottom: 40px;
}
.promo-item .promo-list {
  list-style: none;
}
.promo-item .promo-list li {
  font-size: 16px;
}
.promo-item .promo-list li:not(:last-of-type) {
  margin-bottom: 15px;
}
.promo-item .promo-list li i {
  color: var(--pb-color-theme-primary);
  font-size: 14px;
  margin-right: 10px;
}
.promo-item.item-1 {
  padding: 90px 40px;
}
@media only screen and (max-width: 767px) {
  .promo-item.item-1 {
    font-size: 24px;
    padding: 50px 40px;
  }
}
.promo-item.item-1 .promo-header {
  margin-bottom: 20px;
}
.promo-item.item-1 p {
  margin-bottom: 40px;
}

/* !END: Theme Promo CSS */
/**----------------------------------------
START: Theme Feature CSS
----------------------------------------*/
.feature-section {
  padding: 200px 0;
  overflow: hidden;
}
@media only screen and (max-width: 991px) {
  .feature-section {
    padding: 70px 0;
  }
}
@media only screen and (max-width: 767px) {
  .feature-section {
    padding: 50px 0;
  }
}
.feature-section .section-heading {
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 991px) {
  .feature-section .section-heading .shapes {
    display: none;
  }
}
.feature-section .section-heading .shapes .shape {
  position: absolute;
  top: 0;
  right: -50px;
}
.feature-section .section-heading .shapes .shape.shape-2 {
  right: auto;
  left: -200px;
  top: 50%;
}

.feature-item {
  padding-bottom: 35px;
  border-bottom: 1px solid var(--pb-color-border-4);
}
.feature-item:not(:last-of-type) {
  margin-bottom: 35px;
}
.feature-item .feature-left {
  display: flex;
  align-items: center;
  column-gap: 100px;
}
@media only screen and (max-width: 991px) {
  .feature-item .feature-left {
    column-gap: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .feature-item .feature-left {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 991px) {
  .feature-item .feature-left .icon {
    width: 100px;
  }
}
.feature-item .feature-left .title {
  color: var(--pb-color-common-white);
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 0;
}
@media only screen and (max-width: 991px) {
  .feature-item .feature-left .title {
    font-size: 22px;
  }
}
.feature-item p {
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 0;
  max-width: 630px;
  width: 100%;
}

/* !END: Theme Feature CSS */
/**----------------------------------------
START: Theme Sponsor CSS
----------------------------------------*/
.gallary-section .gallary-top .section-heading {
  margin-bottom: 0;
}
.gallary-section .gallary-top .section-heading .section-title span:before {
  bottom: 0;
}

.gallary-top {
  display: flex;
  align-items: end;
  justify-content: space-between;
  column-gap: 50px;
  margin-bottom: 60px;
  flex-wrap: wrap;
  row-gap: 20px;
}
.gallary-top .section-heading {
  margin-bottom: 0;
}
.gallary-top .gallary-right p {
  max-width: 520px;
  width: 100%;
  margin-bottom: 20px;
}

.gallary-2 {
  overflow: hidden;
}
.gallary-2 .gallary-top {
  align-items: end;
  margin-bottom: 160px;
}
.gallary-2 .gallary-top p {
  color: var(--pb-color-common-white);
  margin-bottom: 0;
}

.gallary-item {
  position: relative;
}
.gallary-item .gallary-img {
  width: 100%;
  object-fit: cover;
  object-position: center center;
  border-radius: 20px;
  overflow: hidden;
}
.gallary-item .gallary-btn-wrap {
  text-align: center;
  margin-top: 40px;
  position: absolute;
  left: 50%;
  bottom: -100px;
  transform: translateX(-50%);
  display: none;
  transition: 0.5s all ease-in-out;
}
.gallary-item .gallary-btn-wrap .gallary-btn {
  color: var(--pb-color-common-white);
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 20px;
  text-transform: capitalize;
}

.gallary-carousel {
  max-width: 1070px;
  width: 100%;
  margin: 0 auto;
  overflow: visible;
}
.gallary-carousel .swiper-wrapper .swiper-slide {
  transition: 0.5s all ease-in-out;
}
.gallary-carousel .swiper-wrapper .swiper-slide.swiper-slide-active {
  transform: translateY(-100px);
}
.gallary-carousel .swiper-wrapper .swiper-slide.swiper-slide-active .gallary-item .gallary-btn-wrap {
  display: block;
}

/* !END: Theme Sponsor CSS */
/**----------------------------------------
START: Theme Content CSS
----------------------------------------*/
@media only screen and (max-width: 991px) {
  .content-thumb {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 991px) {
  .content-thumb img {
    width: 100%;
  }
}

.content-info .section-heading .section-title {
  margin-left: 0;
}
.content-info .section-heading .section-title span:before {
  bottom: -5px;
}

.content-list li {
  display: grid;
  align-items: center;
  grid-template-columns: 45px 1fr;
  grid-gap: 15px;
  position: relative;
}
.content-list li:not(:last-of-type) {
  margin-bottom: 30px;
}
.content-list li .arrow {
  position: absolute;
  bottom: -32px;
  left: 0;
}
.content-list li .arrow img {
  height: 33px;
}
.content-list li .number {
  background-color: var(--pb-color-theme-primary);
  height: 45px;
  width: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--pb-color-common-white);
  font-size: 16px;
}
.content-list li .title {
  background-color: var(--pb-color-grey-1);
  color: var(--pb-color-text-body);
  font-weight: 500;
  max-width: 330px;
  width: 100%;
  height: 45px;
  display: flex;
  align-items: center;
  margin-bottom: 0;
  padding: 0 20px 0 20px;
  padding-left: 30px;
  border-radius: 30px;
}

/* !END: Theme Content CSS */
/**----------------------------------------
START: Theme Team CSS
----------------------------------------*/
.team-section .section-heading .section-title span:before {
  bottom: 0px;
}

.team-wrap {
  --team-gradient-bg: linear-gradient(180deg, rgba(251, 82, 82, 0.25) 0%, rgba(251, 82, 82, 0.00) 100%);
}
.team-wrap > div:nth-child(2) {
  --team-gradient-bg: linear-gradient(180deg, rgba(254, 157, 81, 0.25) 0%, rgba(254, 157, 81, 0.00) 100%);
}
.team-wrap > div:nth-child(3) {
  --team-gradient-bg: linear-gradient(180deg, rgba(87, 210, 136, 0.25) 0%, rgba(87, 210, 136, 0.00) 100%);
}
.team-wrap > div:nth-child(4) {
  --team-gradient-bg: linear-gradient(180deg, rgba(101, 126, 255, 0.25) 0%, rgba(101, 126, 255, 0.00) 100%);
}
.team-wrap > div:nth-child(6) {
  --team-gradient-bg: linear-gradient(180deg, rgba(254, 157, 81, 0.25) 0%, rgba(254, 157, 81, 0.00) 100%);
}
.team-wrap > div:nth-child(7) {
  --team-gradient-bg: linear-gradient(180deg, rgba(87, 210, 136, 0.25) 0%, rgba(87, 210, 136, 0.00) 100%);
}
.team-wrap > div:nth-child(8) {
  --team-gradient-bg: linear-gradient(180deg, rgba(101, 126, 255, 0.25) 0%, rgba(101, 126, 255, 0.00) 100%);
}

.team-item .team-thumb {
  background: var(--team-gradient-bg);
  height: 410px;
  border-radius: 340px;
  overflow: hidden;
  position: relative;
}
.team-item .team-thumb img {
  height: 100%;
  object-fit: cover;
  object-position: bottom center;
}
.team-item .team-thumb .team-social {
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  list-style: none;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.team-item .team-thumb .team-social li {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  visibility: hidden;
  opacity: 0;
}
.team-item .team-thumb .team-social li:not(:last-of-type) {
  margin-bottom: 10px;
}
.team-item .team-thumb .team-social li a {
  background: var(--pb-color-common-purple);
  color: var(--pb-color-common-white);
  font-size: 14px;
  height: 35px;
  width: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.team-item .team-thumb .team-social li a:hover {
  background: var(--pb-color-theme-primary);
}
.team-item .team-thumb .team-social li:nth-child(1) {
  transition-delay: 250ms;
}
.team-item .team-thumb .team-social li:nth-child(2) {
  transition-delay: 200ms;
}
.team-item .team-thumb .team-social li:nth-child(3) {
  transition-delay: 150ms;
}
.team-item .team-thumb .team-social li:nth-child(4) {
  transition-delay: 100ms;
}
.team-item .team-content {
  margin-top: 20px;
}
.team-item .team-content .title {
  font-size: 30px;
  margin-bottom: 5px;
}
.team-item:hover .team-thumb .team-social {
  bottom: 50px;
}
.team-item:hover .team-thumb .team-social li {
  visibility: visible;
  opacity: 1;
}

.team-details-content {
  padding-left: 30px;
}
@media only screen and (max-width: 991px) {
  .team-details-content {
    padding-left: 0;
  }
}
.team-details-content .title {
  font-size: 54px;
  font-weight: 700;
}
@media only screen and (max-width: 991px) {
  .team-details-content .title {
    font-size: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .team-details-content .title {
    font-size: 28px;
  }
}
.team-details-content span {
  font-size: 16px;
  font-weight: 500;
  color: var(--pb-color-text-body);
}
.team-details-content .social-list {
  list-style: none;
  margin: 30px 0;
}
.team-details-content .social-list li {
  display: inline-flex;
}
.team-details-content .social-list li:not(:last-of-type) {
  margin-right: 5px;
}
.team-details-content .social-list li a {
  color: var(--pb-color-heading-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--pb-color-border-1);
  height: 35px;
  width: 35px;
  border-radius: 5px;
}
.team-details-content .social-list li a:hover {
  background-color: #0866FF;
  color: var(--pb-color-common-white);
  border: 1px solid transparent;
}
.team-details-content .social-list li:nth-child(2):hover a {
  background-color: #229EF2;
}
.team-details-content .social-list li:nth-child(3):hover a {
  background-color: #0681BA;
}
.team-details-content .social-list li:nth-child(4):hover a {
  background-color: #EE2A7B;
}
.team-details-content p {
  max-width: 710px;
  width: 100%;
  margin-bottom: 0;
}

.team-details-wrap {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .team-details-wrap {
    margin-top: 30px;
  }
}
.team-details-wrap .details-content {
  padding-right: 20px;
}
@media only screen and (max-width: 991px) {
  .team-details-wrap .details-content {
    padding-right: 0;
  }
}
.team-details-wrap .details-content .title {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 30px;
}
.team-details-wrap .details-content .details-progress {
  list-style: none;
}
.team-details-wrap .details-content .details-progress .skills-item {
  overflow: hidden;
}
.team-details-wrap .details-content .details-progress .skills-item:not(:last-of-type) {
  margin-bottom: 30px;
}
.team-details-wrap .details-content .details-progress .skills-item h5 {
  font-size: 16px;
  font-weight: 500;
}
.team-details-wrap .details-content .details-progress .skills-item .progress {
  height: 8px;
  overflow: visible;
}
.team-details-wrap .details-content .details-progress .skills-item .progress .progress-bar {
  background-color: var(--pb-color-common-purple);
  border-radius: 20px;
  position: relative;
  overflow: visible;
}
.team-details-wrap .details-content .details-progress .skills-item .progress .progress-bar span {
  position: absolute;
  top: -25px;
  right: -15px;
  font-size: 14px;
  font-weight: 600;
  color: var(--pb-color-heading-primary);
}

/* !END: Theme Team CSS */
/**----------------------------------------
START: Theme Flow CSS
----------------------------------------*/
.flow-top .gallary-right p {
  color: var(--pb-color-common-white);
}

.flow-wrap {
  position: relative;
  z-index: 1;
}
.flow-wrap .shapes .shape {
  position: absolute;
  top: 50%;
  left: 35px;
  transform: translateY(-50%);
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .flow-wrap .shapes .shape {
    display: none;
  }
}
.flow-wrap .shapes .shape.shape-1 {
  transform: inherit;
  top: auto;
  left: auto;
  bottom: -70px;
  right: 70px;
}

.flow-item {
  display: flex;
  align-items: center;
  column-gap: 75px;
  flex-wrap: wrap;
  row-gap: 40px;
}
@media (max-width: 1399px) {
  .flow-item {
    column-gap: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .flow-item {
    column-gap: 10px;
  }
}
.flow-item:not(:last-of-type) {
  margin-bottom: 75px;
}
.flow-item:nth-child(2) {
  padding-left: 220px;
}
@media (max-width: 1399px) {
  .flow-item:nth-child(2) {
    padding-left: 180px;
  }
}
@media (max-width: 1170px) {
  .flow-item:nth-child(2) {
    padding-left: 150px;
  }
}
@media only screen and (max-width: 767px) {
  .flow-item:nth-child(2) {
    padding-left: 0;
  }
}
.flow-item .flow-left {
  display: flex;
  align-items: center;
}
@media (max-width: 1170px) {
  .flow-item .flow-left img {
    width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .flow-item .flow-left img {
    width: 30%;
  }
}
.flow-item .flow-left .number {
  color: var(--pb-color-common-yellow);
  font-size: 30px;
  font-weight: 600;
  height: 80px;
  width: 80px;
  border: 2px solid var(--pb-color-common-yellow);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.flow-item .flow-right .title {
  color: var(--pb-color-common-white);
  margin-bottom: 0;
}
@media (max-width: 1170px) {
  .flow-item .flow-right .title {
    font-size: 20px;
  }
}

.flow-thumb img {
  width: 100%;
}

/* !END: Theme Flow CSS */
/**----------------------------------------
START: Theme Service Details CSS
----------------------------------------*/
.service-details-img {
  margin-bottom: 40px;
}
.service-details-img img {
  width: 100%;
}

.service-details-content .title {
  font-size: 54px;
  font-weight: 700;
  margin-bottom: 20px;
}
@media only screen and (max-width: 991px) {
  .service-details-content .title {
    font-size: 36px;
  }
}
.service-details-content .service-content-item {
  margin-top: 40px;
}
.service-details-content .service-content-item .title {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  .service-details-content .service-content-item .title {
    font-size: 25px;
  }
}
.service-details-content .service-details-list {
  list-style: none;
  margin-top: 20px;
}
.service-details-content .service-details-list li {
  display: flex;
  align-items: center;
}
.service-details-content .service-details-list li:not(:last-of-type) {
  margin-bottom: 10px;
}
.service-details-content .service-details-list li i {
  color: var(--pb-color-theme-primary);
  margin-right: 15px;
}

/* !END: Theme Service Details CSS */
/**----------------------------------------
START: Theme Faq CSS
----------------------------------------*/
.faq-content .accordion-item {
  border: none;
}
.faq-content .accordion-item:not(:last-of-type) {
  margin-bottom: 20px;
}
.faq-content .accordion-item .accordion-header .accordion-button {
  color: var(--pb-color-heading-primary);
  font-size: 20px;
  font-weight: 600;
  box-shadow: none;
  border: none;
  padding: 25px;
  border-radius: 30px;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}
.faq-content .accordion-item .accordion-header .accordion-button:after {
  background-image: none;
  font-family: "Font Awesome 6 Pro";
  color: var(--pb-color-common-purple);
  content: "\f101";
  height: auto;
  width: auto;
}
.faq-content .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  background-color: var(--pb-color-common-purple);
  color: var(--pb-color-common-white);
}
.faq-content .accordion-item .accordion-header .accordion-button:not(.collapsed):after {
  color: var(--pb-color-common-white);
  transform: rotate(90deg);
}
.faq-content .accordion-item .accordion-body {
  color: var(--pb-color-text-body);
  padding-bottom: 0;
}

/* !END: Theme Faq CSS */
/**----------------------------------------
START: Theme Footer CSS
----------------------------------------*/
.footer-section {
  position: relative;
  z-index: 1;
}
.footer-section .footer-bg {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top left;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

@media only screen and (max-width: 991px) {
  .footer-wrap {
    padding-bottom: 0;
  }
}

@media only screen and (max-width: 991px) {
  .footer-widget {
    margin-bottom: 50px;
  }
}
.footer-widget .site-logo {
  margin-bottom: 35px;
  width: 70%;
}
@media only screen and (max-width: 991px) {
  .footer-widget .site-logo {
    margin-bottom: 20px;
    width: 50%;
  }
}
@media only screen and (max-width: 991px) {
  .footer-widget .section-heading {
    margin-bottom: 20px;
  }
}
.footer-widget .section-heading .section-title {
  font-size: 48px;
}
@media only screen and (max-width: 991px) {
  .footer-widget .section-heading .section-title {
    font-size: 36px;
  }
}
@media only screen and (max-width: 767px) {
  .footer-widget .section-heading .section-title {
    font-size: 30px;
  }
}
.footer-widget .footer-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 10px;
  list-style: none;
}
.footer-widget .footer-links li:not(:last-of-type) {
  margin-right: 20px;
}
.footer-widget .footer-links li a {
  font-size: 15px;
  font-weight: 500;
  color: var(--pb-color-heading-primary);
}
.footer-widget .footer-links li a:hover {
  color: var(--pb-color-theme-primary);
}
.footer-widget .widget-title {
  color: var(--pb-color-heading-primary);
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 40px;
}
@media only screen and (max-width: 991px) {
  .footer-widget .widget-title {
    margin-bottom: 20px;
  }
}
.footer-widget .footer-social {
  display: flex;
  align-items: center;
  list-style: none;
  margin-top: 40px;
}
@media only screen and (max-width: 991px) {
  .footer-widget .footer-social {
    margin-top: 40px;
  }
}
.footer-widget .footer-social li:not(:last-of-type) {
  margin-right: 10px;
}
.footer-widget .footer-social li a {
  color: var(--pb-color-heading-primary);
  height: 35px;
  width: 35px;
  font-size: 18px;
  border: 1px solid rgba(34, 31, 63, 0.2);
  border-radius: 50%;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer-widget .footer-social li a:hover {
  background-color: #0866FF;
  color: var(--pb-color-common-white);
  border: 1px solid #0866FF;
}
.footer-widget .footer-social li:nth-child(2):hover a {
  background-color: #229EF2;
  border: 1px solid #229EF2;
}
.footer-widget .footer-social li:nth-child(3):hover a {
  background-color: #0681BA;
  border: 1px solid #0681BA;
}
.footer-widget .footer-social li:nth-child(4):hover a {
  background-color: #EB044F;
  border: 1px solid #EB044F;
}
.footer-widget .footer-list {
  list-style: none;
}
.footer-widget .footer-list li:not(:last-of-type) {
  margin-bottom: 15px;
}
.footer-widget .footer-list li a {
  font-size: 16px;
  font-weight: 500;
}
.footer-widget .footer-list li a i {
  font-size: 14px;
  color: var(--pb-color-heading-primary);
  margin-right: 10px;
}

.footer-2 .footer-widget .footer-form {
  margin-top: 30px;
}
.footer-2 .footer-widget .footer-form .form-control {
  color: var(--pb-color-heading-primary);
  border: 1px solid #E7E7EB;
  border-radius: 5px;
  font-weight: 600;
}
.footer-2 .footer-widget .footer-form .form-control::-webkit-input-placeholder {
  color: var(--pb-color-heading-primary);
}
.footer-2 .footer-widget .footer-form .form-control:-moz-placeholder {
  color: var(--pb-color-heading-primary);
}
.footer-2 .footer-widget .footer-form .form-control::-moz-placeholder {
  color: var(--pb-color-heading-primary);
}
.footer-2 .footer-widget .footer-form .form-control:-ms-input-placeholder {
  color: var(--pb-color-heading-primary);
}
.footer-2 .footer-widget .footer-form .submit {
  background: var(--pb-color-gradient-2);
  border-radius: 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.footer-2 .footer-widget .footer-form .submit:hover {
  color: var(--pb-color-common-white);
  background: var(--pb-color-gradient-1);
  border-left: 1px solid var(--pb-color-border-1);
}
.footer-2 .footer-widget.widget-2 {
  padding-left: 70px;
}
@media only screen and (max-width: 991px) {
  .footer-2 .footer-widget.widget-2 {
    padding-left: 0;
  }
}
.footer-2 .footer-widget .footer-contact {
  list-style: none;
}
.footer-2 .footer-widget .footer-contact li {
  display: flex;
  column-gap: 10px;
  font-size: 16px;
  color: var(--pb-color-text-body);
}
.footer-2 .footer-widget .footer-contact li:not(:last-of-type) {
  margin-bottom: 15px;
}
.footer-2 .footer-widget .footer-contact li i {
  color: var(--pb-color-heading-primary);
  line-height: 1;
  margin-top: 5px;
}
.footer-2 .footer-widget .widget-title.title-2 {
  margin-top: 30px;
  margin-bottom: 20px;
}
.footer-2 .footer-widget .footer-social li a {
  background-color: var(--pb-color-common-white);
  border: 1px solid transparent;
}
.footer-2 .footer-widget .footer-social li a:hover {
  background-color: #0866FF;
  color: var(--pb-color-common-white);
  border: 1px solid #0866FF;
}
.footer-2 .footer-widget .footer-social li:nth-child(2):hover a {
  background-color: #229EF2;
  border: 1px solid #229EF2;
}
.footer-2 .footer-widget .footer-social li:nth-child(3):hover a {
  background-color: #0681BA;
  border: 1px solid #0681BA;
}
.footer-2 .footer-widget .footer-social li:nth-child(4):hover a {
  background-color: #EB044F;
  border: 1px solid #EB044F;
}

.footer-3 {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}
.footer-3 .footer-text {
  position: absolute;
  top: 45%;
  left: -120px;
  transform: translateY(-50%) rotate(-90deg);
}
@media (max-width: 1170px) {
  .footer-3 .footer-text {
    display: none;
  }
}
.footer-3 .footer-text .market {
  font-size: 92px;
  font-weight: 700;
  margin-bottom: 0;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: var(--pb-color-common-purple);
}
.footer-3 .footer-social {
  list-style: none;
  position: absolute;
  top: 50%;
  right: 80px;
  transform: translateY(-50%);
}
@media (max-width: 1170px) {
  .footer-3 .footer-social {
    display: none;
  }
}
.footer-3 .footer-social li:not(:last-of-type) {
  margin-bottom: 20px;
}
.footer-3 .footer-social li a {
  color: var(--pb-color-common-white);
  height: 40px;
  width: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--pb-color-common-white);
  border-radius: 5px;
}
.footer-3 .footer-social li a:hover {
  background-color: var(--pb-color-common-white);
  color: var(--pb-color-heading-primary);
}
.footer-3 .footer-content .site-logo {
  margin-bottom: 55px;
}
.footer-3 .footer-content .footer-page-list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  row-gap: 10px;
  list-style: none;
}
.footer-3 .footer-content .footer-page-list li:not(:last-of-type) {
  margin-right: 40px;
}
.footer-3 .footer-content .footer-page-list li a {
  color: var(--pb-color-common-white);
  font-size: 15px;
  font-weight: 500;
}
.footer-3 .footer-content .footer-page-list li a:hover {
  color: var(--pb-color-theme-primary);
}
.footer-3 .footer-content .footer-page-list.list-1 {
  margin-bottom: 20px;
}
.footer-3 .footer-content .footer-form {
  position: relative;
  max-width: 765px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
  margin-top: 50px;
}
.footer-3 .footer-content .footer-form .form-control {
  background-color: transparent;
  color: var(--pb-color-common-white);
  font-size: 16px;
  font-weight: 500;
  border: 1px solid #6D6C79;
  padding: 20px 170px 20px 30px;
  border-radius: 60px;
  box-shadow: none;
  outline: none;
}
@media only screen and (max-width: 767px) {
  .footer-3 .footer-content .footer-form .form-control {
    padding: 20px 135px 20px 30px;
  }
}
.footer-3 .footer-content .footer-form .form-control::-webkit-input-placeholder {
  color: var(--pb-color-common-white);
  font-size: 16px;
  font-weight: 500;
}
.footer-3 .footer-content .footer-form .form-control:-moz-placeholder {
  color: var(--pb-color-common-white);
  font-size: 16px;
  font-weight: 500;
}
.footer-3 .footer-content .footer-form .form-control::-moz-placeholder {
  color: var(--pb-color-common-white);
  font-size: 16px;
  font-weight: 500;
}
.footer-3 .footer-content .footer-form .form-control:-ms-input-placeholder {
  color: var(--pb-color-common-white);
  font-size: 16px;
  font-weight: 500;
}
.footer-3 .footer-content .footer-form button {
  background-color: var(--pb-color-theme-primary);
  color: var(--pb-color-common-white);
  padding: 15px 40px;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  border-radius: 60px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border: 1px solid transparent;
}
@media only screen and (max-width: 767px) {
  .footer-3 .footer-content .footer-form button {
    font-size: 13px;
    padding: 15px 20px;
  }
}
.footer-3 .footer-content .footer-form button:hover {
  background-color: var(--pb-color-common-white);
  color: var(--pb-color-heading-primary);
}
.footer-3 .copyright-content p {
  color: rgba(255, 255, 255, 0.7);
}
.footer-3 .copyright-content .copy-list li a {
  color: rgba(255, 255, 255, 0.7);
}

.copyright-area {
  padding: 25px 0;
  border-top: 1px solid var(--pb-color-border-1);
}

.copyright-content {
  display: flex;
  align-items: center;
  justify-content: space-around;
  column-gap: 20px;
  flex-wrap: wrap;
  row-gap: 20px;
}
@media only screen and (max-width: 991px) {
  .copyright-content {
    justify-content: center;
  }
}
.copyright-content p {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .copyright-content p {
    font-size: 14px;
    text-align: center;
  }
}
.copyright-content .copy-list {
  list-style: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .copyright-content .copy-list {
    justify-content: center;
  }
}
.copyright-content .copy-list li:not(:last-of-type) {
  margin-right: 30px;
}


/* !END: Theme Footer CSS */

/* ============================================================
   WhatsApp Floating Button
============================================================ */
.wa-float-btn {
    position: fixed;
    bottom: 32px;
    left: 28px;
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 0;
    text-decoration: none;
    animation: wa-enter .6s .4s cubic-bezier(.34,1.56,.64,1) both;
}
.wa-float-btn .wa-circle {
    width: 58px;
    height: 58px;
    border-radius: 30%;
    background: linear-gradient(135deg,#25d366 0%,#128c7e 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 24px rgba(37,211,102,.45);
    transition: transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .25s ease;
    position: relative;
    flex-shrink: 0;
}
.wa-float-btn .wa-circle::before {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 30%;
    border: 3px solid rgba(37,211,102,.55);
    animation: wa-pulse 2s ease-out infinite;
}
.wa-float-btn .wa-label {
    background: #fff;
    color: #128c7e;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .3px;
    padding: 7px 14px 7px 10px;
    border-radius: 0 30px 30px 0;
    box-shadow: 2px 4px 16px rgba(0,0,0,.12);
    white-space: nowrap;
    max-width: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-width .35s ease, opacity .3s ease, padding .35s ease;
    pointer-events: none;
}
.wa-float-btn:hover .wa-label,
.wa-float-btn:focus .wa-label {
    max-width: 180px;
    opacity: 1;
    padding: 7px 14px 7px 10px;
}
.wa-float-btn:hover .wa-circle,
.wa-float-btn:focus .wa-circle {
    transform: scale(1.1);
    box-shadow: 0 10px 30px rgba(37,211,102,.55);
}
@keyframes wa-pulse {
    0%   { transform: scale(1);   opacity: 1; }
    70%  { transform: scale(1.4); opacity: 0; }
    100% { transform: scale(1.4); opacity: 0; }
}
@keyframes wa-enter {
    from { transform: translateY(80px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}
@media (max-width: 575px) {
    .wa-float-btn { bottom: 22px; left: 16px; }
    .wa-float-btn .wa-circle { width: 50px; height: 50px; }
}
/* ============================================================
   END: WhatsApp Floating Button
============================================================ */

/*# sourceMappingURL=main.css.map */

.world-map-section {
    width: 100%;
    padding: 25px 15px;
}

.world-map-container {
    width: 100%;
    max-width: 1400px;
    margin: auto;
    overflow: hidden;
    border-radius: 15px;
    position: relative;
}

#worldMap {
    width: 100%;
    height: auto;
    display: block;
}

/* World map countries */
.country {
    fill: #b8d6e9;
    stroke: #ffffff;
    stroke-width: 0.8px;
}

/* Country borders */
.country:hover {
    fill: #8ec8e8;
}

/* Golden connection glow */
.connection-glow {
    fill: none;
    stroke: #f8b94e;
    stroke-width: 9px;
    opacity: 0.22;
    filter: blur(4px);
}

/* Main golden route */
.connection-line {
    fill: none;
    stroke: #eab04d;
    stroke-width: 2.5px;
    stroke-linecap: round;
    filter: drop-shadow(0 0 3px #ffc66b);
}

/* Moving golden light */
.moving-light {
    fill: #fff8d8;
    stroke: #f5ae35;
    stroke-width: 2px;
    filter: drop-shadow(0 0 7px #ffb52e);
    pointer-events: none;
}

.moving-light-glow {
    fill: #ffc05a;
    opacity: 0.4;
    filter: blur(5px);
    pointer-events: none;
}

/* Country marker */
.country-marker {
    cursor: pointer;
}

/* Marker glow */
.marker-pulse {
    fill: #ffb84d;
    opacity: 0.3;
}

.marker-dot {
    fill: #ffb94f;
    stroke: #ffffff;
    stroke-width: 2px;
}

/* Flag circle */
.flag-circle {
    fill: #ffffff;
    stroke: #c5d4df;
    stroke-width: 2px;
}

/* Country flag */
.flag-image {
    font-size: 23px;
    text-anchor: middle;
    dominant-baseline: central;
}

.country-label {
    fill: #ffffff;
    font-size: 12px;
    font-weight: 600;
}

.country-marker:hover {
    fill: #c58c32;
}

/* Mobile */
@media(max-width: 600px) {
    .world-map-section {
        padding: 10px 3px;
    }

    .world-map-container {
        border-radius: 8px;
    }
}


/* =========================================
   GMB OPTIMIZATION PAGE CSS
   Isolated CSS - No Global Conflicts
========================================= */

.gmb-page {
    --gmb-primary: #ff7a01;
    --gmb-secondary: #23aef0;
    --gmb-text: #171a2b;
    --gmb-muted: #6d7185;
    --gmb-border: #ffc107;

    width: 100%;
    overflow: hidden;
    color: var(--gmb-text);
    font-family: inherit;
}

.gmb-page *,
.gmb-page *::before,
.gmb-page *::after {
    box-sizing: border-box;
}

.gmb-page .gmb-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.gmb-page a {
    text-decoration: none;
}

.gmb-page .gmb-section-label {
    display: inline-block;
    color: var(--gmb-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 18px;
}

.gmb-page .gmb-section-heading h2,
.gmb-page .gmb-heading-center h2,
.gmb-page .gmb-why-content h2 {
    font-size: clamp(30px, 4vw, 43px);
    line-height: 1.2;
    font-weight: 800;
    margin: 0;
    color: var(--gmb-text);
}

.gmb-page .gmb-section-heading h2 span,
.gmb-page .gmb-heading-center h2 span,
.gmb-page .gmb-why-content h2 span {
    color: var(--gmb-primary);
}


/* =========================================
   HERO SECTION
========================================= */

.gmb-page .gmb-hero {
    position: relative;
    padding: 70px 0 70px;
    background:
        radial-gradient(circle at 85% 20%, rgba(35,174,240,.12), transparent 32%),
        linear-gradient(135deg, #fffaf4 0%, #ffffff 55%, #f1faff 100%);
}

.gmb-page .gmb-hero-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    align-items: center;
    gap: 65px;
}

.gmb-page .gmb-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--gmb-secondary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
    margin-bottom: 22px;
}

.gmb-page .gmb-eyebrow-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gmb-primary);
    box-shadow: 0 0 0 5px rgba(255,122,1,.12);
}

.gmb-page .gmb-hero-content h1 {
    font-size: clamp(36px, 4.5vw, 58px);
    font-weight: 850;
    line-height: 1.13;
    letter-spacing: -1.8px;
    color: var(--gmb-text);
    margin: 0 0 23px;
}

.gmb-page .gmb-hero-content h1 span {
    display: block;
    color: var(--gmb-primary);
}

.gmb-page .gmb-hero-content > p {
    color: var(--gmb-muted);
    font-size: 16px;
    line-height: 1.9;
    margin: 0 0 30px;
}

.gmb-page .gmb-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.gmb-page .gmb-btn-primary,
.gmb-page .gmb-btn-outline,
.gmb-page .gmb-btn-white {
    min-height: 53px;
    padding: 0 25px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 17px;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 750;
    transition: .3s ease;
}

.gmb-page .gmb-btn-primary {
    color: #fff;
    background: var(--gmb-primary);
    box-shadow: 0 8px 22px rgba(255,122,1,.2);
}

.gmb-page .gmb-btn-primary:hover {
    background: var(--gmb-text);
    color: #fff;
    transform: translateY(-3px);
}

.gmb-page .gmb-btn-outline {
    color: var(--gmb-text);
    border: 1px solid var(--gmb-border);
    background: #fff;
}

.gmb-page .gmb-btn-outline:hover {
    background: var(--gmb-secondary);
    color: #fff;
    border-color: var(--gmb-secondary);
}

.gmb-page .gmb-hero-note {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 27px;
    color: var(--gmb-muted);
    font-size: 13px;
    font-weight: 600;
}

.gmb-page .gmb-hero-note span {
    width: 21px;
    height: 21px;
    display: grid;
    place-items: center;
    color: #fff;
    border-radius: 50%;
    background: var(--gmb-secondary);
}


/* HERO VISUAL */

.gmb-page .gmb-hero-visual {
    position: relative;
    padding: 25px;
}

.gmb-page .gmb-visual-glow {
    position: absolute;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: rgba(35,174,240,.15);
    filter: blur(55px);
    top: 15%;
    left: 15%;
}

.gmb-page .gmb-map-card {
    position: relative;
    z-index: 1;
    padding: 27px;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 25px 70px rgba(23,26,43,.12);
    border: 1px solid rgba(255,193,7,.5);
}

.gmb-page .gmb-map-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.gmb-page .gmb-map-label {
    color: var(--gmb-secondary);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.gmb-page .gmb-map-top h3 {
    margin: 7px 0 0;
    font-size: 21px;
    color: var(--gmb-text);
}

.gmb-page .gmb-map-icon {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    color: #fff;
    background: var(--gmb-primary);
    border-radius: 12px;
    font-size: 25px;
}

.gmb-page .gmb-map-art {
    height: 240px;
    overflow: hidden;
    position: relative;
    border-radius: 14px;
    background-color: #eaf7fc;
    background-image:
        linear-gradient(45deg, transparent 47%, rgba(35,174,240,.09) 48%, rgba(35,174,240,.09) 52%, transparent 53%),
        linear-gradient(-45deg, transparent 47%, rgba(35,174,240,.09) 48%, rgba(35,174,240,.09) 52%, transparent 53%);
    background-size: 60px 60px;
}

.gmb-page .gmb-map-road {
    position: absolute;
    height: 15px;
    width: 140%;
    background: #fff;
    border: 1px solid #d6e8ee;
}

.gmb-page .gmb-road-one {
    top: 35%;
    left: -15%;
    transform: rotate(25deg);
}

.gmb-page .gmb-road-two {
    top: 65%;
    left: -10%;
    transform: rotate(-35deg);
}

.gmb-page .gmb-road-three {
    top: 45%;
    left: -15%;
    transform: rotate(90deg);
}

.gmb-page .gmb-map-pin {
    position: absolute;
    top: 40%;
    left: 45%;
    width: 57px;
    height: 57px;
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    background: var(--gmb-primary);
    box-shadow: 0 8px 20px rgba(255,122,1,.3);
    display: grid;
    place-items: center;
    color: #fff;
}

.gmb-page .gmb-map-pin span {
    transform: rotate(45deg);
    font-size: 27px;
}

.gmb-page .gmb-map-small-pin {
    position: absolute;
    top: 20%;
    left: 23%;
    color: var(--gmb-secondary);
    font-size: 19px;
}

.gmb-page .gmb-map-small-pin.pin-two {
    top: 72%;
    left: 76%;
}

.gmb-page .gmb-map-small-pin.pin-three {
    top: 18%;
    left: 80%;
}

.gmb-page .gmb-business-card {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 20px;
    padding: 15px;
    border: 1px solid #edf0f5;
    border-radius: 12px;
}

.gmb-page .gmb-business-logo {
    width: 47px;
    height: 47px;
    display: grid;
    place-items: center;
    flex-shrink: 0;
    border-radius: 10px;
    background: var(--gmb-secondary);
    color: #fff;
    font-size: 27px;
    font-weight: 800;
}

.gmb-page .gmb-business-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.gmb-page .gmb-business-info strong {
    font-size: 14px;
}

.gmb-page .gmb-business-info span {
    color: var(--gmb-muted);
    font-size: 11px;
}

.gmb-page .gmb-stars {
    color: #f6a800;
    font-size: 13px;
    letter-spacing: 2px;
}

.gmb-page .gmb-verified {
    margin-left: auto;
    color: #fff;
    background: var(--gmb-secondary);
    width: 25px;
    height: 25px;
    border-radius: 50%;
    display: grid;
    place-items: center;
}

.gmb-page .gmb-floating-tag {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 12px 16px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(23,26,43,.12);
    font-size: 12px;
    font-weight: 750;
}

.gmb-page .gmb-floating-tag span {
    color: var(--gmb-primary);
    font-size: 17px;
}

.gmb-page .gmb-tag-one {
    top: 10%;
    right: -12px;
}

.gmb-page .gmb-tag-two {
    bottom: 5%;
    left: -15px;
}


/* =========================================
   INTRO SECTION
========================================= */

.gmb-page .gmb-intro {
    padding: 70px 0;
    background: #fff;
}

.gmb-page .gmb-intro-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}

.gmb-page .gmb-intro-text p {
    font-size: 15px;
    line-height: 1.9;
    color: var(--gmb-muted);
    margin: 0 0 15px;
}

.gmb-page .gmb-intro-text a,
.gmb-page .gmb-detail-content a {
    color: var(--gmb-secondary);
    font-weight: 700;
}


/* =========================================
   SERVICES SECTION
========================================= */

.gmb-page .gmb-services {
    padding: 70px 0;
    background: #f7f9fc;
}

.gmb-page .gmb-heading-center {
    max-width: 750px;
    margin: 0 auto 55px;
    text-align: center;
}

.gmb-page .gmb-heading-center > p {
    color: var(--gmb-muted);
    line-height: 1.8;
    font-size: 15px;
    margin: 18px 0 0;
}

.gmb-page .gmb-service-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 23px;
}

.gmb-page .gmb-service-card {
    position: relative;
    padding: 32px 28px;
    background: #fff;
    border: 1px solid #edf0f4;
    border-radius: 13px;
    transition: .35s ease;
    overflow: hidden;
}

.gmb-page .gmb-service-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 3px;
    background: var(--gmb-primary);
    transition: .35s ease;
}

.gmb-page .gmb-service-card:hover {
    transform: translateY(-8px);
    border-color: var(--gmb-border);
    box-shadow: 0 18px 40px rgba(23,26,43,.07);
}

.gmb-page .gmb-service-card:hover::before {
    width: 100%;
}

.gmb-page .gmb-service-number {
    position: absolute;
    top: 20px;
    right: 23px;
    color: #e9edf3;
    font-size: 35px;
    font-weight: 850;
}

.gmb-page .gmb-service-icon {
    width: 57px;
    height: 57px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: rgba(255,122,1,.1);
    color: var(--gmb-primary);
    font-size: 29px;
    margin-bottom: 24px;
    transition: .3s ease;
}

.gmb-page .gmb-service-card:nth-child(even) .gmb-service-icon {
    background: rgba(35,174,240,.1);
    color: var(--gmb-secondary);
}

.gmb-page .gmb-service-card:hover .gmb-service-icon {
    background: var(--gmb-primary);
    color: #fff;
}

.gmb-page .gmb-service-card h3 {
    font-size: 19px;
    font-weight: 750;
    line-height: 1.4;
    margin: 0 0 13px;
    color: var(--gmb-text);
}

.gmb-page .gmb-service-card p {
    font-size: 14px;
    line-height: 1.8;
    color: var(--gmb-muted);
    margin: 0 0 22px;
}

.gmb-page .gmb-card-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--gmb-primary);
    font-size: 13px;
    font-weight: 800;
}

.gmb-page .gmb-card-link span {
    transition: .3s ease;
}

.gmb-page .gmb-card-link:hover span {
    transform: translate(4px, -4px);
}


/* =========================================
   DETAILED SERVICES
========================================= */

.gmb-page .gmb-details {
    padding: 70px 0;
    background: #fff;
}

.gmb-page .gmb-detail-heading {
    max-width: 820px;
    margin-bottom: 75px;
}

.gmb-page .gmb-detail-row {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 75px;
    align-items: center;
    padding: 40px 0;
    border-bottom: 1px solid #edf0f4;
    scroll-margin-top: 100px;
}

.gmb-page .gmb-detail-row:last-child {
    border-bottom: 0;
}

.gmb-page .gmb-detail-reverse .gmb-detail-visual {
    order: 2;
}

.gmb-page .gmb-detail-reverse .gmb-detail-content {
    order: 1;
}

.gmb-page .gmb-detail-illustration {
    min-height: 330px;
    border-radius: 20px;
    position: relative;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.gmb-page .gmb-illustration-orange {
    background: linear-gradient(140deg, #fff0df, #fff8ef);
}

.gmb-page .gmb-illustration-blue {
    background: linear-gradient(140deg, #e5f6ff, #f1fbff);
}

.gmb-page .gmb-illustration-circle {
    position: absolute;
    width: 230px;
    height: 230px;
    border: 2px dashed rgba(255,122,1,.3);
    border-radius: 50%;
}

.gmb-page .gmb-illustration-blue .gmb-illustration-circle {
    border-color: rgba(35,174,240,.4);
}

.gmb-page .gmb-illustration-icon {
    position: relative;
    width: 130px;
    height: 130px;
    display: grid;
    place-items: center;
    background: #fff;
    color: var(--gmb-primary);
    border-radius: 30px;
    box-shadow: 0 20px 45px rgba(23,26,43,.1);
    font-size: 75px;
}

.gmb-page .gmb-illustration-blue .gmb-illustration-icon {
    color: var(--gmb-secondary);
}

.gmb-page .gmb-illustration-tag {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    padding: 10px 18px;
    background: #fff;
    color: var(--gmb-text);
    border-radius: 30px;
    font-size: 10px;
    letter-spacing: 1.5px;
    font-weight: 800;
    white-space: nowrap;
    box-shadow: 0 5px 20px rgba(23,26,43,.08);
}

.gmb-page .gmb-detail-count {
    color: var(--gmb-secondary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.gmb-page .gmb-detail-content h3 {
    font-size: clamp(25px, 3vw, 32px);
    font-weight: 800;
    line-height: 1.3;
    margin: 15px 0;
    color: var(--gmb-text);
}

.gmb-page .gmb-detail-content > p {
    color: var(--gmb-muted);
    font-size: 14px;
    line-height: 1.9;
    margin: 0 0 20px;
}

.gmb-page .gmb-detail-content h4 {
    font-size: 15px;
    margin: 23px 0 17px;
    color: var(--gmb-text);
}

.gmb-page .gmb-check-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 18px;
}

.gmb-page .gmb-check-list li {
    position: relative;
    padding-left: 24px;
    color: var(--gmb-muted);
    font-size: 13px;
    line-height: 1.6;
}

.gmb-page .gmb-check-list li::before {
    content: "✓";
    position: absolute;
    top: 0;
    left: 0;
    color: var(--gmb-primary);
    font-weight: 900;
}

.gmb-page .gmb-detail-content .gmb-detail-bottom {
    margin-top: 23px;
    padding: 15px 18px;
    background: #fff9f0;
    border-left: 3px solid var(--gmb-border);
    border-radius: 0 7px 7px 0;
    font-size: 13px;
}


/* =========================================
   WHY CHOOSE US
========================================= */

.gmb-page .gmb-why {
    padding: 70px 0;
    background: #f6f9fc;
}

.gmb-page .gmb-why-grid {
    display: grid;
    grid-template-columns: .75fr 1.25fr;
    gap: 65px;
    align-items: center;
}

.gmb-page .gmb-why-content > p {
    color: var(--gmb-muted);
    font-size: 15px;
    line-height: 1.9;
    margin: 22px 0 28px;
}

.gmb-page .gmb-why-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.gmb-page .gmb-why-card {
    position: relative;
    background: #fff;
    border: 1px solid #edf0f4;
    border-radius: 12px;
    padding: 25px 20px;
    transition: .3s ease;
}

.gmb-page .gmb-why-card:hover {
    transform: translateY(-5px);
    border-color: var(--gmb-border);
    box-shadow: 0 12px 30px rgba(23,26,43,.06);
}

.gmb-page .gmb-why-card > span {
    position: absolute;
    top: 18px;
    right: 18px;
    font-size: 25px;
    font-weight: 850;
    color: #edf0f5;
}

.gmb-page .gmb-why-icon {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    color: var(--gmb-primary);
    background: #fff3e7;
    border-radius: 10px;
    font-size: 23px;
    margin-bottom: 17px;
}

.gmb-page .gmb-why-card:nth-child(even) .gmb-why-icon {
    color: var(--gmb-secondary);
    background: #e9f8ff;
}

.gmb-page .gmb-why-card h3 {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 750;
    margin: 0 0 8px;
}

.gmb-page .gmb-why-card p {
    color: var(--gmb-muted);
    font-size: 12px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   FINAL CTA
========================================= */

.gmb-page .gmb-cta {
    padding: 85px 0;
    background: #fff;
}

.gmb-page .gmb-cta-inner {
    position: relative;
    overflow: hidden;
    padding: 75px 30px;
    text-align: center;
    border-radius: 20px;
    background: linear-gradient(120deg, #ff7a01, #f49a28);
}

.gmb-page .gmb-cta-decoration {
    position: absolute;
    width: 350px;
    height: 350px;
    top: -190px;
    right: -70px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 50%;
    box-shadow: 0 0 0 40px rgba(255,255,255,.06),
                0 0 0 80px rgba(255,255,255,.04);
}

.gmb-page .gmb-cta-label {
    position: relative;
    color: rgba(255,255,255,.85);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.gmb-page .gmb-cta-inner h2 {
    position: relative;
    color: #fff;
    font-size: clamp(30px, 4vw, 45px);
    line-height: 1.2;
    font-weight: 850;
    margin: 18px 0;
}

.gmb-page .gmb-cta-inner h2 span {
    display: block;
    color: #171a2b;
}

.gmb-page .gmb-cta-inner > p {
    position: relative;
    max-width: 680px;
    margin: 0 auto 28px;
    color: rgba(255,255,255,.9);
    font-size: 14px;
    line-height: 1.9;
}

.gmb-page .gmb-btn-white {
    position: relative;
    background: #fff;
    color: var(--gmb-text);
}

.gmb-page .gmb-btn-white:hover {
    background: var(--gmb-text);
    color: #fff;
    transform: translateY(-3px);
}


/* =========================================
   RESPONSIVE - TABLET
========================================= */

@media (max-width: 991px) {

    .gmb-page .gmb-hero {
        padding: 75px 0;
    }

    .gmb-page .gmb-hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 25px;
    }

    .gmb-page .gmb-hero-visual {
        padding: 10px;
    }

    .gmb-page .gmb-map-card {
        padding: 18px;
    }

    .gmb-page .gmb-service-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gmb-page .gmb-detail-row {
        gap: 35px;
    }

    .gmb-page .gmb-detail-illustration {
        min-height: 280px;
    }

    .gmb-page .gmb-why-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}


/* =========================================
   RESPONSIVE - MOBILE
========================================= */

@media (max-width: 767px) {

    .gmb-page .gmb-container {
        padding: 0 18px;
    }

    .gmb-page .gmb-hero {
        padding: 65px 0 55px;
    }

    .gmb-page .gmb-hero-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .gmb-page .gmb-hero-content h1 {
        font-size: 37px;
        letter-spacing: -1px;
    }

    .gmb-page .gmb-hero-content > p {
        font-size: 14px;
    }

    .gmb-page .gmb-hero-visual {
        padding: 8px;
    }

    .gmb-page .gmb-map-card {
        padding: 17px;
    }

    .gmb-page .gmb-map-art {
        height: 190px;
    }

    .gmb-page .gmb-tag-one {
        right: -5px;
    }

    .gmb-page .gmb-tag-two {
        left: -5px;
    }

    .gmb-page .gmb-intro,
    .gmb-page .gmb-services,
    .gmb-page .gmb-details,
    .gmb-page .gmb-why {
        padding: 40px 0;
    }

    .gmb-page .gmb-intro-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .gmb-page .gmb-section-heading h2,
    .gmb-page .gmb-heading-center h2,
    .gmb-page .gmb-why-content h2 {
        font-size: 31px;
    }

    .gmb-page .gmb-service-grid {
        grid-template-columns: 1fr;
        gap: 17px;
    }

    .gmb-page .gmb-service-card {
        padding: 26px 23px;
    }

    .gmb-page .gmb-heading-center {
        margin-bottom: 38px;
    }

    .gmb-page .gmb-detail-heading {
        margin-bottom: 35px;
    }

    .gmb-page .gmb-detail-row {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 40px 0;
    }

    .gmb-page .gmb-detail-reverse .gmb-detail-visual,
    .gmb-page .gmb-detail-reverse .gmb-detail-content {
        order: initial;
    }

    .gmb-page .gmb-detail-illustration {
        min-height: 240px;
    }

    .gmb-page .gmb-illustration-icon {
        width: 105px;
        height: 105px;
        font-size: 60px;
    }

    .gmb-page .gmb-illustration-circle {
        width: 190px;
        height: 190px;
    }

    .gmb-page .gmb-detail-content h3 {
        font-size: 26px;
    }

    .gmb-page .gmb-check-list {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .gmb-page .gmb-why-cards {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .gmb-page .gmb-why-card {
        padding: 20px 14px;
    }

    .gmb-page .gmb-why-card h3 {
        font-size: 13px;
    }

    .gmb-page .gmb-cta {
        padding: 55px 0;
    }

    .gmb-page .gmb-cta-inner {
        padding: 55px 20px;
    }

}


/* =========================================
   RESPONSIVE - SMALL MOBILE
========================================= */

@media (max-width: 420px) {

    .gmb-page .gmb-hero-content h1 {
        font-size: 32px;
    }

    .gmb-page .gmb-hero-actions {
        flex-direction: column;
    }

    .gmb-page .gmb-btn-primary,
    .gmb-page .gmb-btn-outline,
    .gmb-page .gmb-btn-white {
        width: 100%;
    }

    .gmb-page .gmb-why-cards {
        grid-template-columns: 1fr;
    }

    .gmb-page .gmb-business-card {
        gap: 9px;
        padding: 12px;
    }

}


/* =========================================
   DK DIGITAL SOLUTIONS
   GRAPHIC DESIGN PAGE CSS
   Unique Prefix: gds-
========================================= */

.gds-page {
    --gds-primary: #ff7a01;
    --gds-secondary: #23aef0;
    --gds-text: #171a2b;
    --gds-muted: #6d7185;
    --gds-border: #ffc107;

    width: 100%;
    overflow: hidden;
    color: var(--gds-text);
    background: #ffffff;
    font-family: inherit;
}

.gds-page * {
    box-sizing: border-box;
}

.gds-page a {
    text-decoration: none;
}

.gds-container {
    width: min(1200px, calc(100% - 40px));
    margin: 0 auto;
}

/* HERO SECTION */

.gds-hero {
    position: relative;
    padding: 70px 0 70px;
    background:
        radial-gradient(circle at 85% 15%, rgba(35,174,240,.10), transparent 30%),
        radial-gradient(circle at 5% 90%, rgba(255,122,1,.08), transparent 30%),
        #f8faff;
}

.gds-hero-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: 65px;
}

.gds-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--gds-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

.gds-eyebrow::before {
    content: "";
    width: 25px;
    height: 2px;
    background: var(--gds-primary);
}

.gds-hero-content h1 {
    font-size: clamp(38px, 5vw, 62px);
    font-weight: 800;
    line-height: 1.13;
    letter-spacing: -2px;
    margin: 0 0 22px;
    color: var(--gds-text);
}

.gds-hero-content h1 span,
.gds-section-heading h2 span,
.gds-section-title h2 span,
.gds-detail-content h3 span,
.gds-why-heading h2 span,
.gds-cta-content h2 span {
    color: var(--gds-primary);
}

.gds-hero-content > p {
    color: var(--gds-muted);
    font-size: 16px;
    line-height: 1.9;
    margin: 0 0 30px;
    max-width: 560px;
}

.gds-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.gds-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    background: var(--gds-primary);
    color: #ffffff !important;
    padding: 16px 25px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 700;
    transition: .3s ease;
}

.gds-btn-primary:hover {
    background: var(--gds-text);
    transform: translateY(-4px);
}

.gds-btn-primary span {
    font-size: 19px;
}

.gds-btn-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--gds-secondary);
    color: var(--gds-text);
    padding: 15px 25px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 700;
    transition: .3s ease;
}

.gds-btn-outline:hover {
    background: var(--gds-secondary);
    color: #ffffff;
}

.gds-hero-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 32px;
    font-size: 12px;
    color: var(--gds-muted);
    font-weight: 600;
}

.gds-hero-trust span::first-letter {
    color: var(--gds-primary);
}

/* HERO VISUAL */

.gds-hero-visual {
    position: relative;
    padding: 20px;
}

.gds-visual-main {
    position: relative;
    padding: 22px;
    background: #ffffff;
    border: 1px solid #edf0f5;
    border-radius: 16px;
    box-shadow: 0 25px 65px rgba(23,26,43,.10);
    transform: rotate(2deg);
}

.gds-visual-top,
.gds-visual-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--gds-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.gds-live-dot {
    width: 9px;
    height: 9px;
    background: var(--gds-primary);
    border-radius: 50%;
}

.gds-visual-art {
    height: 340px;
    margin: 22px 0;
    position: relative;
    overflow: hidden;
    background: #171a2b;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gds-art-circle {
    position: absolute;
    width: 250px;
    height: 250px;
    background: var(--gds-primary);
    border-radius: 50%;
    top: -80px;
    right: -35px;
}

.gds-art-square {
    position: absolute;
    width: 150px;
    height: 150px;
    border: 25px solid var(--gds-secondary);
    transform: rotate(45deg);
    bottom: -40px;
    left: -35px;
}

.gds-art-text {
    position: relative;
    z-index: 2;
    color: #ffffff;
    font-size: 65px;
    line-height: .95;
    font-weight: 900;
    letter-spacing: -4px;
    text-align: center;
}

.gds-art-small {
    position: absolute;
    right: 20px;
    bottom: 20px;
    color: #ffffff;
    font-size: 10px;
    letter-spacing: 2px;
}

.gds-floating-card {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 12px;
    background: #ffffff;
    padding: 15px 20px;
    border-radius: 9px;
    box-shadow: 0 12px 35px rgba(23,26,43,.12);
    z-index: 3;
}

.gds-float-one {
    top: 5px;
    right: -15px;
}

.gds-float-two {
    bottom: 10px;
    left: -25px;
}

.gds-float-icon {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    background: #fff0e2;
    color: var(--gds-primary);
    border-radius: 8px;
    font-size: 22px;
}

.gds-floating-card strong,
.gds-floating-card small {
    display: block;
}

.gds-floating-card strong {
    font-size: 12px;
    margin-bottom: 4px;
}

.gds-floating-card small {
    color: var(--gds-muted);
    font-size: 10px;
}

/* INTRO */

.gds-intro {
    padding: 70px 0;
}

.gds-intro-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 80px;
    align-items: start;
}

.gds-section-heading h2,
.gds-section-title h2,
.gds-why-heading h2 {
    font-size: clamp(30px, 4vw, 43px);
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: -1.5px;
    margin: 0;
}

.gds-intro-content p {
    color: var(--gds-muted);
    line-height: 1.9;
    font-size: 15px;
    margin: 0 0 17px;
}

/* SERVICES */

.gds-services {
    padding: 70px 0;
    background: #f8faff;
}

.gds-section-title {
    max-width: 700px;
    margin: 0 auto 50px;
    text-align: center;
}

.gds-section-title .gds-eyebrow {
    justify-content: center;
}

.gds-section-title h2 {
    margin-bottom: 16px;
}

.gds-section-title > p {
    color: var(--gds-muted);
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

.gds-service-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.gds-service-card {
    padding: 32px 28px;
    background: #ffffff;
    border: 1px solid #edf0f5;
    border-radius: 10px;
    transition: .35s ease;
    position: relative;
    overflow: hidden;
}

.gds-service-card::after {
    content: "";
    position: absolute;
    height: 3px;
    width: 0;
    bottom: 0;
    left: 0;
    background: var(--gds-primary);
    transition: .35s ease;
}

.gds-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(23,26,43,.08);
    border-color: rgba(255,122,1,.25);
}

.gds-service-card:hover::after {
    width: 100%;
}

.gds-card-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 28px;
}

.gds-card-number {
    color: #b5b8c5;
    font-size: 35px;
    font-weight: 800;
}

.gds-card-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gds-primary);
    background: #fff1e5;
    font-size: 27px;
    transition: .3s ease;
}

.gds-service-card:nth-child(even) .gds-card-icon {
    color: var(--gds-secondary);
    background: #eaf8ff;
}

.gds-service-card:hover .gds-card-icon {
    transform: rotate(-10deg);
}

.gds-service-card h3 {
    font-size: 19px;
    font-weight: 800;
    margin: 0 0 13px;
    line-height: 1.4;
}

.gds-service-card p {
    color: var(--gds-muted);
    font-size: 14px;
    line-height: 1.8;
    margin: 0 0 22px;
}

.gds-service-card > a {
    color: var(--gds-primary);
    font-size: 13px;
    font-weight: 800;
}

.gds-service-card > a span {
    margin-left: 8px;
}

/* DETAIL SECTION */

.gds-details {
    padding: 70px 0;
}

.gds-detail-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
    margin-bottom: 100px;
}

.gds-detail-row:last-child {
    margin-bottom: 0;
}

.gds-detail-reverse .gds-detail-visual {
    order: 2;
}

.gds-detail-reverse .gds-detail-content {
    order: 1;
}

.gds-detail-visual {
    min-height: 370px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    padding: 45px;
}

.gds-detail-orange {
    background: #fff0e3;
}

.gds-detail-blue {
    background: #e7f7ff;
}

.gds-detail-purple {
    background: #f0edff;
}

.gds-detail-yellow {
    background: #fff8d9;
}

.gds-detail-pink {
    background: #fff0ed;
}

.gds-detail-cyan {
    background: #e4faff;
}

.gds-detail-big {
    position: absolute;
    top: 15px;
    left: 22px;
    font-size: 75px;
    font-weight: 900;
    color: rgba(23,26,43,.08);
}

.gds-detail-content {
    padding: 10px 0;
}

.gds-detail-label {
    color: var(--gds-secondary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.gds-detail-content h3 {
    font-size: clamp(26px, 3vw, 35px);
    line-height: 1.25;
    font-weight: 800;
    margin: 16px 0;
    letter-spacing: -1px;
}

.gds-detail-content > p {
    color: var(--gds-muted);
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 23px;
}

.gds-feature-list {
    list-style: none;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    padding: 0;
    margin: 0;
}

.gds-feature-list li {
    position: relative;
    padding-left: 24px;
    color: var(--gds-text);
    font-size: 12px;
    line-height: 1.5;
    font-weight: 600;
}

.gds-feature-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--gds-primary);
    font-weight: 900;
    font-size: 15px;
}

.gds-text-link {
    display: inline-block;
    margin-top: 24px;
    color: var(--gds-secondary);
    font-size: 13px;
    font-weight: 800;
}

/* MOCKUP DESIGNS */

.gds-logo-mockup {
    position: relative;
    z-index: 1;
    width: 250px;
    height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #171a2b;
    color: white;
    box-shadow: 15px 15px 0 rgba(255,122,1,.25);
}

.gds-logo-mockup span {
    font-size: 18px;
    letter-spacing: 9px;
}

.gds-logo-mockup strong {
    font-size: 38px;
    color: var(--gds-primary);
}

.gds-logo-mockup small {
    font-size: 9px;
    letter-spacing: 3px;
    margin-top: 15px;
}

.gds-social-mockup {
    width: 260px;
    padding: 15px;
    background: white;
    box-shadow: 15px 15px 0 rgba(35,174,240,.20);
    position: relative;
    z-index: 1;
}

.gds-social-header,
.gds-social-footer {
    font-size: 9px;
    font-weight: 800;
    color: var(--gds-text);
    letter-spacing: 2px;
}

.gds-social-design {
    margin: 15px 0;
    padding: 35px 12px;
    text-align: center;
    background: #171a2b;
    color: white;
}

.gds-social-design span,
.gds-social-design strong,
.gds-social-design small {
    display: block;
}

.gds-social-design span {
    font-size: 18px;
}

.gds-social-design strong {
    color: var(--gds-primary);
    font-size: 29px;
}

.gds-social-design small {
    font-size: 8px;
    margin-top: 15px;
}

.gds-ad-mockup {
    position: relative;
    z-index: 1;
    width: 270px;
    padding: 30px 25px;
    background: #171a2b;
    color: white;
    box-shadow: 14px 14px 0 rgba(35,174,240,.25);
}

.gds-ad-mockup > span,
.gds-ad-mockup small {
    font-size: 9px;
    letter-spacing: 2px;
}

.gds-ad-mockup strong {
    display: block;
    font-size: 30px;
    line-height: 1.1;
    margin: 25px 0;
    color: var(--gds-primary);
}

.gds-ad-line {
    width: 50px;
    height: 4px;
    background: var(--gds-secondary);
    margin-bottom: 15px;
}

.gds-brochure-mockup {
    position: relative;
    z-index: 1;
    width: 250px;
    height: 290px;
    padding: 25px;
    background: #ffffff;
    box-shadow: 14px 14px 0 rgba(255,193,7,.3);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.gds-brochure-mockup small {
    font-size: 9px;
    letter-spacing: 2px;
}

.gds-brochure-mockup strong {
    font-size: 40px;
    line-height: 1;
    color: var(--gds-text);
}

.gds-brochure-mockup span {
    font-size: 8px;
    color: var(--gds-muted);
    letter-spacing: 1px;
}

.gds-business-mockup {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.gds-business-card {
    width: 260px;
    height: 150px;
    padding: 22px;
    background: #171a2b;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: 9px 9px 0 rgba(255,122,1,.25);
}

.gds-business-card strong {
    font-size: 30px;
    color: var(--gds-primary);
}

.gds-business-card span {
    font-size: 10px;
    letter-spacing: 2px;
}

.gds-business-card small {
    font-size: 8px;
    margin-top: 14px;
}

.gds-business-back {
    background: var(--gds-secondary);
    color: #ffffff;
    box-shadow: none;
}

.gds-business-back strong {
    color: white;
    font-size: 17px;
}

.gds-web-mockup {
    width: 285px;
    background: #ffffff;
    position: relative;
    z-index: 1;
    box-shadow: 12px 12px 0 rgba(35,174,240,.25);
}

.gds-web-top {
    height: 35px;
    display: flex;
    align-items: center;
    padding: 0 12px;
    gap: 5px;
    border-bottom: 1px solid #eee;
}

.gds-web-top i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--gds-primary);
}

.gds-web-top span {
    margin-left: auto;
    font-size: 8px;
    color: var(--gds-muted);
}

.gds-web-content {
    padding: 30px 22px;
    background: #171a2b;
    color: white;
}

.gds-web-content small {
    color: var(--gds-secondary);
    font-size: 8px;
    letter-spacing: 2px;
}

.gds-web-content strong {
    display: block;
    font-size: 30px;
    line-height: 1.1;
    margin: 15px 0 25px;
}

.gds-web-content > span {
    display: inline-block;
    padding: 9px 12px;
    background: var(--gds-primary);
    font-size: 8px;
    font-weight: 800;
}

/* WHY CHOOSE US */

.gds-why {
    padding: 70px 0;
    background: #f8faff;
}

.gds-why-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 75px;
    align-items: center;
}

.gds-why-heading {
    position: sticky;
    top: 100px;
}

.gds-why-heading h2 {
    margin-bottom: 20px;
}

.gds-why-heading > p {
    color: var(--gds-muted);
    line-height: 1.9;
    font-size: 14px;
}

.gds-why-item {
    display: grid;
    grid-template-columns: 40px 1fr 25px;
    gap: 18px;
    align-items: start;
    padding: 24px 0;
    border-bottom: 1px solid #e4e7ee;
    transition: .3s ease;
}

.gds-why-item:first-child {
    padding-top: 0;
}

.gds-why-item > span {
    color: var(--gds-primary);
    font-size: 13px;
    font-weight: 900;
}

.gds-why-item h3 {
    font-size: 17px;
    margin: 0 0 8px;
}

.gds-why-item p {
    font-size: 13px;
    line-height: 1.7;
    color: var(--gds-muted);
    margin: 0;
}

.gds-why-item > b {
    color: var(--gds-secondary);
    font-size: 19px;
    transition: .3s ease;
}

.gds-why-item:hover > b {
    transform: translate(4px, -4px);
    color: var(--gds-primary);
}

/* CTA */

.gds-cta {
    padding: 90px 0;
}

.gds-cta-inner {
    position: relative;
    overflow: hidden;
    padding: 65px 70px;
    background: #171a2b;
    border-radius: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.gds-cta-content {
    position: relative;
    z-index: 2;
    max-width: 680px;
}

.gds-cta-content .gds-eyebrow {
    color: var(--gds-border);
}

.gds-cta-content .gds-eyebrow::before {
    background: var(--gds-border);
}

.gds-cta-content h2 {
    font-size: clamp(30px, 4vw, 43px);
    color: #ffffff;
    line-height: 1.2;
    margin: 0 0 18px;
}

.gds-cta-content h2 span {
    color: var(--gds-primary);
}

.gds-cta-content > p {
    color: #c3c5d0;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 25px;
}

.gds-cta-shape {
    position: relative;
    min-width: 230px;
    height: 220px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: white;
}

.gds-cta-shape strong {
    font-size: 120px;
    color: var(--gds-primary);
    line-height: 1;
}

.gds-cta-shape > span {
    font-size: 13px;
    letter-spacing: 5px;
    font-weight: 800;
}

.gds-cta-shape small {
    font-size: 9px;
    letter-spacing: 2px;
    color: var(--gds-secondary);
    margin-top: 10px;
}

/* TABLET RESPONSIVE */

@media (max-width: 991px) {

    .gds-hero-grid {
        gap: 30px;
    }

    .gds-hero-content h1 {
        font-size: 43px;
    }

    .gds-visual-art {
        height: 280px;
    }

    .gds-art-text {
        font-size: 48px;
    }

    .gds-service-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gds-detail-row {
        gap: 40px;
    }

    .gds-detail-visual {
        min-height: 330px;
        padding: 25px;
    }

    .gds-intro-grid,
    .gds-why-grid {
        gap: 40px;
    }

    .gds-cta-inner {
        padding: 50px 40px;
    }

}

/* MOBILE RESPONSIVE */

@media (max-width: 767px) {

    .gds-container {
        width: min(100% - 32px, 540px);
    }

    .gds-hero {
        padding: 65px 0 70px;
    }

    .gds-hero-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .gds-hero-content h1 {
        font-size: 39px;
        letter-spacing: -1.5px;
    }

    .gds-hero-content > p {
        font-size: 14px;
    }

    .gds-hero-trust {
        gap: 12px;
        font-size: 11px;
    }

    .gds-hero-visual {
        padding: 15px;
        margin: 0 5px;
    }

    .gds-visual-art {
        height: 270px;
    }

    .gds-art-text {
        font-size: 50px;
    }

    .gds-floating-card {
        padding: 10px 12px;
    }

    .gds-float-one {
        right: -5px;
    }

    .gds-float-two {
        left: -8px;
    }

    .gds-intro,
    .gds-services,
    .gds-details,
    .gds-why {
        padding: 65px 0;
    }

    .gds-intro-grid,
    .gds-why-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .gds-section-heading h2,
    .gds-section-title h2,
    .gds-why-heading h2 {
        font-size: 32px;
    }

    .gds-section-title {
        margin-bottom: 35px;
    }

    .gds-service-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .gds-service-card {
        padding: 25px 23px;
    }

    .gds-detail-row {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-bottom: 70px;
    }

    .gds-detail-reverse .gds-detail-visual,
    .gds-detail-reverse .gds-detail-content {
        order: initial;
    }

    .gds-detail-visual {
        min-height: 320px;
    }

    .gds-detail-content h3 {
        font-size: 27px;
    }

    .gds-feature-list {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .gds-why-heading {
        position: static;
    }

    .gds-why-item {
        grid-template-columns: 30px 1fr 20px;
        gap: 12px;
    }

    .gds-why-item h3 {
        font-size: 15px;
    }

    .gds-cta {
        padding: 60px 0;
    }

    .gds-cta-inner {
        padding: 40px 25px;
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }

    .gds-cta-content h2 {
        font-size: 31px;
    }

    .gds-cta-shape {
        align-self: center;
        height: 170px;
    }

    .gds-cta-shape strong {
        font-size: 95px;
    }

}

/* SMALL MOBILE */

@media (max-width: 380px) {

    .gds-hero-content h1 {
        font-size: 33px;
    }

    .gds-hero-buttons {
        flex-direction: column;
    }

    .gds-btn-primary,
    .gds-btn-outline {
        width: 100%;
    }

    .gds-visual-art {
        height: 220px;
    }

    .gds-art-text {
        font-size: 40px;
    }

    .gds-detail-visual {
        padding: 15px;
        min-height: 290px;
    }

    .gds-cta-inner {
        padding: 35px 20px;
    }

}


/* ==========================================
   DK DIGITAL SOLUTIONS
   VIDEO EDITING SERVICES PAGE
   UNIQUE PREFIX: dve-
========================================== */

.dve-page {
    --dve-primary: #ff7a01;
    --dve-secondary: #23aef0;
    --dve-text: #171a2b;
    --dve-muted: #6d7185;
    --dve-border: #ffc107;

    width: 100%;
    color: var(--dve-text);
    font-family: inherit;
    overflow: hidden;
    background: #ffffff;
}

.dve-page *,
.dve-page *::before,
.dve-page *::after {
    box-sizing: border-box;
}

.dve-page a {
    text-decoration: none;
}

.dve-container {
    width: 100%;
    max-width: 1200px;
    padding: 0 20px;
    margin: 0 auto;
}

.dve-page h1,
.dve-page h2,
.dve-page h3,
.dve-page h4,
.dve-page p {
    margin-top: 0;
}

.dve-page h1,
.dve-page h2,
.dve-page h3,
.dve-page h4 {
    color: var(--dve-text);
    line-height: 1.2;
}

.dve-page p {
    color: var(--dve-muted);
    line-height: 1.8;
    font-size: 15px;
}


/* ==========================================
   HERO SECTION
========================================== */

.dve-hero {
    padding: 70px 0 70px;
    background:
        radial-gradient(circle at 90% 10%, rgba(35,174,240,.09), transparent 28%),
        radial-gradient(circle at 5% 90%, rgba(255,122,1,.07), transparent 30%),
        #fff;
}

.dve-hero-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: 65px;
}

.dve-tag,
.dve-section-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--dve-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.6px;
    margin-bottom: 22px;
}

.dve-tag > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--dve-primary);
    box-shadow: 0 0 0 5px rgba(255,122,1,.12);
}

.dve-hero-content h1 {
    font-size: clamp(36px, 4.4vw, 57px);
    font-weight: 800;
    letter-spacing: -1.8px;
    margin-bottom: 22px;
}

.dve-hero-content h1 span,
.dve-intro-content h2 span,
.dve-section-heading h2 span,
.dve-detail-content h3 span,
.dve-why-heading h2 span,
.dve-related-box h2 span {
    color: var(--dve-primary);
}

.dve-hero-content > p {
    max-width: 570px;
    margin-bottom: 28px;
}

.dve-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-bottom: 28px;
}

.dve-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    padding: 15px 24px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    transition: .3s ease;
}

.dve-btn-primary {
    background: var(--dve-primary);
    color: #fff;
    box-shadow: 0 8px 22px rgba(255,122,1,.19);
}

.dve-btn-primary:hover {
    background: var(--dve-text);
    color: #fff;
    transform: translateY(-3px);
}

.dve-btn-outline {
    color: var(--dve-text);
    border: 1px solid var(--dve-border);
    background: #fff;
}

.dve-btn-outline:hover {
    color: #fff;
    background: var(--dve-secondary);
    border-color: var(--dve-secondary);
}

.dve-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.dve-hero-points span {
    font-size: 12px;
    font-weight: 600;
    color: var(--dve-muted);
}


/* HERO VISUAL */

.dve-hero-visual {
    position: relative;
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dve-visual-bg {
    position: absolute;
    width: 340px;
    height: 340px;
    background: linear-gradient(135deg, #ff7a01, #23aef0);
    border-radius: 35% 65% 60% 40%;
    opacity: .12;
    transform: rotate(-15deg);
}

.dve-video-card {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 410px;
    background: #171a2b;
    border: 8px solid #fff;
    border-radius: 18px;
    padding: 17px;
    box-shadow: 0 25px 70px rgba(23,26,43,.17);
}

.dve-video-top {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    padding-bottom: 15px;
}

.dve-live-dot {
    width: 8px;
    height: 8px;
    background: var(--dve-primary);
    border-radius: 50%;
}

.dve-video-menu {
    margin-left: auto;
}

.dve-video-preview {
    height: 195px;
    border-radius: 9px;
    background:
        radial-gradient(circle at 70% 20%, rgba(35,174,240,.65), transparent 30%),
        linear-gradient(140deg, #303d63, #15182c);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #fff;
    font-size: 10px;
    letter-spacing: 2px;
}

.dve-play-icon {
    width: 53px;
    height: 53px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: var(--dve-primary);
    box-shadow: 0 0 0 10px rgba(255,255,255,.12);
    font-size: 17px;
}

.dve-timeline {
    padding-top: 17px;
}

.dve-timeline-head {
    display: flex;
    justify-content: space-between;
    color: #b7bdd0;
    font-size: 9px;
    margin-bottom: 10px;
}

.dve-track {
    display: flex;
    gap: 5px;
    height: 9px;
    margin-bottom: 7px;
}

.dve-track span {
    border-radius: 3px;
    background: var(--dve-secondary);
}

.dve-track-one span:first-child {
    flex: 2;
    background: var(--dve-primary);
}

.dve-track-one span:nth-child(2) {
    flex: 1;
}

.dve-track-one span:nth-child(3) {
    flex: 2;
}

.dve-track-two span:first-child {
    flex: 3;
    background: #5c6c9c;
}

.dve-track-two span:last-child {
    flex: 2;
}

.dve-track-three span {
    width: 60%;
    background: #ffc107;
}

.dve-float-card {
    position: absolute;
    z-index: 3;
    background: #fff;
    padding: 14px 19px;
    border-radius: 9px;
    box-shadow: 0 10px 35px rgba(23,26,43,.12);
    font-size: 12px;
    font-weight: 700;
}

.dve-float-top {
    top: 42px;
    right: -5px;
    color: var(--dve-text);
}

.dve-float-top span {
    color: var(--dve-primary);
    margin-right: 7px;
}

.dve-float-bottom {
    left: -15px;
    bottom: 35px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.dve-float-bottom strong {
    font-size: 24px;
    color: var(--dve-secondary);
}

.dve-float-bottom span {
    font-size: 11px;
    color: var(--dve-muted);
}


/* ==========================================
   INTRO SECTION
========================================== */

.dve-intro {
    padding: 70px 0;
    border-top: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
}

.dve-intro-grid {
    display: grid;
    grid-template-columns: .7fr 1.3fr;
    gap: 70px;
}

.dve-small-line {
    width: 30px;
    height: 3px;
    background: var(--dve-primary);
}

.dve-intro-content h2 {
    font-size: 38px;
    font-weight: 800;
    margin-bottom: 22px;
    letter-spacing: -1px;
}

.dve-intro-content p:last-child {
    margin-bottom: 0;
}


/* ==========================================
   SERVICE OVERVIEW
========================================== */

.dve-services {
    padding: 70px 0;
    background: #f8faff;
}

.dve-section-heading {
    max-width: 700px;
    margin: 0 auto 50px;
    text-align: center;
}

.dve-section-heading h2 {
    font-size: 40px;
    font-weight: 800;
    letter-spacing: -1px;
    margin-bottom: 15px;
}

.dve-section-heading p {
    max-width: 580px;
    margin: 0 auto;
}

.dve-service-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.dve-service-card {
    position: relative;
    background: #fff;
    border: 1px solid #edf0f5;
    border-radius: 12px;
    padding: 30px 25px;
    overflow: hidden;
    transition: .35s ease;
}

.dve-service-card::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    left: 0;
    bottom: 0;
    background: linear-gradient(90deg, var(--dve-primary), var(--dve-secondary));
    transform: scaleX(0);
    transform-origin: left;
    transition: .35s ease;
}

.dve-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 40px rgba(23,26,43,.08);
    border-color: transparent;
}

.dve-service-card:hover::after {
    transform: scaleX(1);
}

.dve-card-number {
    position: absolute;
    right: 23px;
    top: 22px;
    font-size: 35px;
    font-weight: 800;
    color: #f0f2f7;
}

.dve-card-icon {
    width: 55px;
    height: 55px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 24px;
    margin-bottom: 25px;
}

.dve-icon-orange {
    color: var(--dve-primary);
    background: rgba(255,122,1,.10);
}

.dve-icon-blue {
    color: var(--dve-secondary);
    background: rgba(35,174,240,.10);
}

.dve-service-card h3 {
    font-size: 19px;
    font-weight: 750;
    margin-bottom: 12px;
}

.dve-service-card p {
    font-size: 14px;
    min-height: 76px;
    margin-bottom: 20px;
}

.dve-service-card > a {
    display: inline-flex;
    gap: 10px;
    color: var(--dve-primary);
    font-size: 13px;
    font-weight: 700;
    transition: .3s ease;
}

.dve-service-card > a:hover {
    color: var(--dve-secondary);
    gap: 15px;
}


/* ==========================================
   DETAILED SERVICES
========================================== */

.dve-details {
    padding: 70px 0 70px;
}

.dve-detail-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 75px;
    align-items: center;
    padding: 55px 0;
    border-bottom: 1px solid #edf0f5;
    scroll-margin-top: 100px;
}

.dve-detail-row:last-child {
    border-bottom: 0;
}

.dve-reverse .dve-detail-visual {
    order: 2;
}

.dve-reverse .dve-detail-content {
    order: 1;
}

.dve-detail-visual {
    min-height: 340px;
    position: relative;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.dve-orange-bg {
    background: linear-gradient(135deg, #fff1e5, #ffdfc5);
}

.dve-blue-bg {
    background: linear-gradient(135deg, #e5f6ff, #d4efff);
}

.dve-detail-number {
    position: absolute;
    top: 20px;
    left: 25px;
    font-size: 60px;
    font-weight: 900;
    color: rgba(23,26,43,.07);
}

.dve-visual-caption {
    position: absolute;
    bottom: 20px;
    left: 25px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
    color: var(--dve-text);
}


/* VISUAL 1 */

.dve-mock-window {
    width: 70%;
    max-width: 300px;
    background: #171a2b;
    border-radius: 12px;
    padding: 12px;
    box-shadow: 0 20px 40px rgba(23,26,43,.18);
}

.dve-mock-header {
    display: flex;
    gap: 5px;
    padding-bottom: 12px;
}

.dve-mock-header span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--dve-primary);
}

.dve-mock-header span:nth-child(2) {
    background: var(--dve-secondary);
}

.dve-mock-header span:nth-child(3) {
    background: #ffc107;
}

.dve-mock-content {
    height: 145px;
    background: linear-gradient(135deg, #394a77, #161b31);
    border-radius: 7px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.dve-mock-play {
    color: #fff;
    background: var(--dve-primary);
    padding: 13px 17px;
    border-radius: 50%;
}

.dve-mock-lines {
    display: flex;
    gap: 5px;
}

.dve-mock-lines span {
    width: 30px;
    height: 4px;
    border-radius: 4px;
    background: #23aef0;
}

.dve-mock-footer {
    color: #fff;
    font-size: 9px;
    letter-spacing: 2px;
    text-align: center;
    padding-top: 12px;
}


/* VISUAL 2 */

.dve-phone-mockup {
    width: 165px;
    height: 260px;
    border: 7px solid #171a2b;
    border-radius: 24px;
    padding: 9px;
    background: #fff;
    box-shadow: 0 20px 35px rgba(23,26,43,.15);
}

.dve-phone-camera {
    width: 45px;
    height: 5px;
    background: #171a2b;
    border-radius: 10px;
    margin: 0 auto 10px;
}

.dve-phone-screen {
    height: 210px;
    border-radius: 13px;
    background: linear-gradient(150deg, #23aef0, #171a2b);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #fff;
    gap: 10px;
}

.dve-reel-play {
    font-size: 30px;
    color: #fff;
}

.dve-phone-screen strong {
    font-size: 20px;
}

.dve-phone-screen small {
    font-size: 8px;
    letter-spacing: 1px;
}


/* VISUAL 3 */

.dve-promo-art {
    position: relative;
    width: 72%;
    max-width: 300px;
    padding: 35px 25px;
    background: var(--dve-primary);
    color: #fff;
    border-radius: 8px;
    box-shadow: 12px 12px 0 rgba(23,26,43,.10);
    transform: rotate(-3deg);
}

.dve-promo-small,
.dve-promo-bottom {
    display: block;
    font-size: 9px;
    letter-spacing: 2px;
    font-weight: 700;
}

.dve-promo-art strong {
    display: block;
    color: #fff;
    font-size: 43px;
    line-height: 1;
    margin: 18px 0;
    font-weight: 900;
}

.dve-promo-star {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 30px;
}


/* VISUAL 4 */

.dve-corporate-art {
    width: 72%;
    max-width: 300px;
    padding: 28px;
    border-radius: 12px;
    background: #171a2b;
    color: #fff;
    box-shadow: 0 20px 40px rgba(23,26,43,.15);
}

.dve-corporate-icon {
    font-size: 35px;
    color: var(--dve-secondary);
    margin-bottom: 20px;
}

.dve-corporate-art strong {
    display: block;
    font-size: 28px;
    color: #fff;
    line-height: 1.1;
}

.dve-corporate-art > span {
    display: block;
    font-size: 8px;
    letter-spacing: 2px;
    margin-top: 12px;
    color: #bbc2d6;
}

.dve-corporate-bars {
    display: flex;
    gap: 5px;
    margin-top: 20px;
}

.dve-corporate-bars i {
    height: 5px;
    border-radius: 5px;
    width: 35%;
    background: var(--dve-primary);
}

.dve-corporate-bars i:nth-child(2) {
    background: var(--dve-secondary);
}

.dve-corporate-bars i:nth-child(3) {
    background: #ffc107;
}


/* VISUAL 5 */

.dve-youtube-art {
    width: 75%;
    max-width: 310px;
    text-align: center;
    padding: 30px 20px;
    border-radius: 15px;
    background: #171a2b;
    box-shadow: 0 20px 40px rgba(23,26,43,.15);
}

.dve-youtube-play {
    width: 65px;
    height: 45px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--dve-primary);
    color: #fff;
    margin: 0 auto 17px;
    font-size: 20px;
}

.dve-youtube-art strong {
    display: block;
    color: #fff;
    font-size: 27px;
    letter-spacing: 2px;
}

.dve-youtube-art span {
    display: block;
    color: #b8c0d7;
    font-size: 9px;
    letter-spacing: 2px;
    margin-top: 8px;
}

.dve-youtube-line {
    width: 60%;
    height: 4px;
    border-radius: 5px;
    background: linear-gradient(90deg, var(--dve-primary), var(--dve-secondary));
    margin: 20px auto 0;
}


/* VISUAL 6 */

.dve-ad-art {
    width: 75%;
    max-width: 310px;
    padding: 35px 25px;
    background: linear-gradient(135deg, #171a2b, #34466e);
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(23,26,43,.15);
}

.dve-ad-art > span {
    color: var(--dve-secondary);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
}

.dve-ad-art strong {
    display: block;
    color: #fff;
    font-size: 38px;
    line-height: 1.1;
    margin: 15px 0 22px;
}

.dve-ad-button {
    display: inline-block;
    background: var(--dve-primary);
    color: #fff;
    padding: 10px 15px;
    font-size: 10px;
    font-weight: 800;
    border-radius: 4px;
    letter-spacing: 1px;
}


/* DETAIL CONTENT */

.dve-detail-label {
    display: inline-block;
    color: var(--dve-secondary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.6px;
    margin-bottom: 17px;
}

.dve-detail-content h3 {
    font-size: 30px;
    font-weight: 800;
    letter-spacing: -.7px;
    margin-bottom: 17px;
}

.dve-detail-content > p {
    margin-bottom: 23px;
}

.dve-detail-content h4 {
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 15px;
}

.dve-check-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.dve-check-list li {
    position: relative;
    padding-left: 22px;
    font-size: 13px;
    line-height: 1.5;
    color: var(--dve-muted);
}

.dve-check-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--dve-primary);
    font-weight: 900;
}

.dve-text-link {
    display: inline-block;
    color: var(--dve-secondary);
    font-size: 13px;
    font-weight: 700;
    transition: .3s ease;
}

.dve-text-link:hover {
    color: var(--dve-primary);
}


/* ==========================================
   WHY CHOOSE US
========================================== */

.dve-why {
    padding: 70px 0;
    background: #f8faff;
}

.dve-why-grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 70px;
    align-items: center;
}

.dve-why-heading .dve-section-label {
    color: var(--dve-secondary);
}

.dve-why-heading h2 {
    color: #fff;
    font-size: 39px;
    font-weight: 800;
    margin-bottom: 20px;
}

.dve-why-heading h2 span {
    color: var(--dve-primary);
}

.dve-why-heading p {
    color: #b9bed0;
    margin-bottom: 27px;
}

.dve-why-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.dve-feature {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding: 20px 16px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 9px;
    transition: .3s ease;
}

.dve-feature:hover {
    background: rgba(255,255,255,.05);
    border-color: var(--dve-primary);
    transform: translateY(-4px);
}

.dve-feature-icon {
    min-width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: #fff;
    background: linear-gradient(135deg, var(--dve-primary), var(--dve-secondary));
    font-size: 17px;
}

.dve-feature h3 {
    color: var(--dve-text);
    font-size: 14px;
    margin-bottom: 8px;
}

.dve-feature p {
    color: #aeb5c9;
    font-size: 12px;
    line-height: 1.7;
    margin-bottom: 0;
}


/* ==========================================
   RELATED SERVICES
========================================== */

.dve-related {
    padding: 70px 0;
    background: #f8faff;
}

.dve-related-box {
    display: grid;
    grid-template-columns: 1fr .85fr;
    gap: 55px;
    align-items: center;
    padding: 45px;
    background: #fff;
    border-radius: 15px;
    border: 1px solid #edf0f5;
}

.dve-related-box h2 {
    font-size: 33px;
    font-weight: 800;
    margin-bottom: 15px;
}

.dve-related-box p {
    margin-bottom: 0;
}

.dve-related-links {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.dve-related-links a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 18px;
    background: #f8faff;
    border-radius: 7px;
    color: var(--dve-text);
    font-size: 13px;
    font-weight: 700;
    border: 1px solid #edf0f5;
    transition: .3s ease;
}

.dve-related-links a span {
    color: var(--dve-primary);
}

.dve-related-links a:hover {
    background: var(--dve-primary);
    color: #fff;
    border-color: var(--dve-primary);
}

.dve-related-links a:hover span {
    color: #fff;
}


/* ==========================================
   RESPONSIVE DESIGN
========================================== */

@media (max-width: 991px) {

    .dve-hero-grid {
        gap: 35px;
    }

    .dve-hero-content h1 {
        font-size: 42px;
    }

    .dve-hero-visual {
        min-height: 360px;
    }

    .dve-video-card {
        max-width: 340px;
    }

    .dve-video-preview {
        height: 160px;
    }

    .dve-service-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .dve-intro-grid {
        gap: 35px;
    }

    .dve-detail-row {
        gap: 35px;
    }

    .dve-detail-content h3 {
        font-size: 26px;
    }

    .dve-why-grid {
        gap: 35px;
    }

    .dve-related-box {
        gap: 30px;
        padding: 30px;
    }
}


@media (max-width: 767px) {

    .dve-container {
        padding: 0 18px;
    }

    .dve-hero {
        padding: 65px 0 70px;
    }

    .dve-hero-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .dve-hero-content h1 {
        font-size: 38px;
        letter-spacing: -1px;
    }

    .dve-hero-content > p {
        font-size: 14px;
    }

    .dve-hero-visual {
        min-height: 350px;
    }

    .dve-video-card {
        max-width: 390px;
    }

    .dve-float-top {
        right: 0;
    }

    .dve-float-bottom {
        left: 0;
    }

    .dve-intro {
        padding: 60px 0;
    }

    .dve-intro-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .dve-intro-content h2 {
        font-size: 31px;
    }

    .dve-services,
    .dve-details,
    .dve-why {
        padding: 70px 0;
    }

    .dve-section-heading {
        margin-bottom: 35px;
    }

    .dve-section-heading h2 {
        font-size: 31px;
    }

    .dve-service-grid {
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }

    .dve-service-card {
        padding: 22px 17px;
    }

    .dve-service-card h3 {
        font-size: 16px;
    }

    .dve-service-card p {
        font-size: 13px;
        min-height: 100px;
    }

    .dve-card-number {
        font-size: 25px;
        right: 13px;
        top: 15px;
    }

    .dve-detail-row {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 40px 0;
    }

    .dve-detail-visual {
        min-height: 300px;
    }

    .dve-reverse .dve-detail-visual,
    .dve-reverse .dve-detail-content {
        order: initial;
    }

    .dve-detail-content h3 {
        font-size: 27px;
    }

    .dve-check-list {
        grid-template-columns: 1fr 1fr;
    }

    .dve-why-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .dve-why-heading h2 {
        font-size: 32px;
    }

    .dve-related {
        padding: 65px 0;
    }

    .dve-related-box {
        grid-template-columns: 1fr;
        padding: 27px 20px;
        gap: 25px;
    }

    .dve-related-box h2 {
        font-size: 28px;
    }

    .dve-cta {
        padding-bottom: 70px;
    }

    .dve-cta-inner {
        padding: 60px 20px;
    }

    .dve-cta-inner h2 {
        font-size: 32px;
    }

}


@media (max-width: 480px) {

    .dve-hero-content h1 {
        font-size: 33px;
    }

    .dve-visual-caption {
      display: none;
    }

    .dve-hero-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .dve-hero-buttons .dve-btn {
        width: 100%;
    }

    .dve-hero-points {
        gap: 10px;
        flex-direction: column;
    }

    .dve-hero-visual {
        min-height: 300px;
    }

    .dve-video-card {
        padding: 12px;
        border-width: 5px;
    }

    .dve-video-preview {
        height: 135px;
    }

    .dve-float-card {
        padding: 10px 12px;
        font-size: 10px;
    }

    .dve-float-bottom strong {
        font-size: 20px;
    }

    .dve-service-grid {
        grid-template-columns: 1fr;
    }

    .dve-service-card p {
        min-height: auto;
    }

    .dve-check-list {
        grid-template-columns: 1fr;
    }

    .dve-detail-visual {
        min-height: 270px;
    }

    .dve-why-features {
        grid-template-columns: 1fr;
    }

    .dve-cta-inner h2 {
        font-size: 28px;
    }

}
