/* ----------------------------------------------------------------------------------------
* Author        : Awaiken
* Template Name : Genlab - Laboratory & Science Research HTML Template
* File          : CSS File
* Version       : 1.0
* ---------------------------------------------------------------------------------------- */

/* INDEX
----------------------------------------------------------------------------------------
01. Global Variables
02. General css
03. Header css
04. Hero css
05. About Us css
06. Our Services css
07. What We Do css
08. Why Choose Us css
09. Case Study css
10. Our Features css
11. Our Pricing css
12. Our Testimonials css
13. Our FAQ's css
14. Book Appoinment css
15. Our Blog css
16. Footer css
17. About Us Page css
18. Services Page css
19. Service Single css
20. Blog Archive css
21. Blog Single css
22. Case Study css
23. Case Study Single css
24. Team Page css
25. Team Single css
26. Pricing Page css
27. Testimonials Page css
28. Image Gallery css
29. Video Gallery css
30. FAQ's Page css
31. Contact Us Page css
32.	Book Appointment css
33. 404 Error Page css
34. Responsive css
35. Home - Version 2 css
36. Home - Version 3 css
-------------------------------------------------------------------------------------- */

/************************************/

/*** 	 01. Global Variables	  ***/

/************************************/

:root {
    --primary-color: #013A59;
    --secondary-color: #FFFFFF;
    --bg-color: #F2F2F2;
    --text-color: #566B76;
    --accent-color: #116DAD;
    --accent-secondary-color: #13E0B9;
    --white-color: #FFFFFF;
    --divider-color: #013A591A;
    --dark-divider-color: #FFFFFF1A;
    --error-color: rgb(230, 87, 87);
    --default-font: "Google Sans", sans-serif;
    --accent-font: "Playfair Display", serif;
}

/************************************/

/*** 	   02. General css		  ***/

/************************************/

html,
body {
    width: 100%;
    overflow-x: clip;
}

body {
    font-family: var(--default-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 1em;
    color: var(--text-color);
    background: var(--bg-color);
}

::-webkit-scrollbar-track {
    background-color: var(--primary-color);
    border-left: 1px solid var(--primary-color);
}

::-webkit-scrollbar {
    width: 7px;
    background-color: var(--primary-color);
}

::-webkit-scrollbar-thumb {
    background: linear-gradient(254.54deg, var(--accent-color) 0.03%, var(--accent-secondary-color) 100%);
}

::selection {
    color: var(--white-color);
    background-color: var(--accent-color);
    filter: invert(1);
}

p {
    line-height: 1.6em;
    margin-bottom: 1.5em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
    line-height: 1.2em;
    color: var(--primary-color);
    margin: 0;
}

figure {
    margin: 0;
}

img {
    max-width: 100%;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
    outline: 0;
}

a:focus {
    text-decoration: none;
    outline: 0;
}

.container {
    max-width: 1300px;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    padding-right: 15px;
    padding-left: 15px;
}

.image-anime {
    position: relative;
    overflow: hidden;
}

.image-anime:after {
    content: "";
    position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    background-color: rgba(255, 255, 255, .3);
    transform: translate(-50%, -50%) rotate(-45deg);
    z-index: 1;
}

.image-anime:hover:after {
    height: 250%;
    transition: all 600ms linear;
    background-color: transparent;
}

.reveal {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    visibility: hidden;
    overflow: hidden;
}

.reveal img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform-origin: left;
    transform-origin: left;
}

.row {
    margin-right: -15px;
    margin-left: -15px;
}

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

.row.no-gutters {
    margin-right: 0px;
    margin-left: 0px;
}

.row.no-gutters>* {
    padding-right: 0px;
    padding-left: 0px;
}

.btn-default {
    position: relative;
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1em;
    text-transform: capitalize;
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    color: var(--white-color);
    border-radius: 100px;
    padding: 18px 55px 18px 24px;
    border: none;
    overflow: hidden;
    box-shadow: none;
    outline: none;
    transition: all 0.4s ease-in-out;
    z-index: 0;
}

.btn-default:hover {
    background-position: right center;
}

.btn-default::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 6px;
    width: 40px;
    height: 40px;
    transform: translateY(-50%);
    background-color: var(--white-color);
    background-image: url('../images/arrow-primary.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 14px auto;
    border-radius: 50%;
    transition: all 0.4s ease-in-out;
}

.btn-default:hover::before {
    transform: translateY(-50%) rotate(45deg);
}

.readmore-btn {
    position: relative;
    display: inline-block;
    font-weight: 700;
    line-height: 1.5em;
    text-transform: capitalize;
    color: var(--primary-color);
    padding-right: 34px;
    transition: all 0.4s ease-in-out;
}

.readmore-btn::before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0px;
    width: 25px;
    height: 25px;
    background: url('../images/arrow-white.svg'), linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto;
    border-radius: 100px;
    transition: all 0.4s ease-in-out;
}

.readmore-btn:hover::before {
    transform: translateY(-50%) rotate(45deg);
}

.cb-cursor:before {
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
}

.preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    background: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
}

.loading-container,
.loading {
    height: 100px;
    position: relative;
    width: 100px;
    border-radius: 100%;
}

.loading-container {
    margin: 40px auto;
}

.loading {
    border: 1px solid transparent;
    border-color: transparent var(--white-color) transparent var(--white-color);
    animation: rotate-loading 1.5s linear 0s infinite normal;
    transform-origin: 50% 50%;
}

.loading-container:hover .loading,
.loading-container .loading {
    transition: all 0.5s ease-in-out;
}

#loading-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 66px;
    transform: translate(-50%, -50%);
}

@keyframes rotate-loading {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.bg-section {
    width: 100%;
    max-width: 1820px;
    background-color: var(--secondary-color);
    border-radius: 10px;
    margin: 0 auto;
}

.bg-section .container-fluid {
    padding: 0;
}

.dark-section {
    background-color: var(--primary-color);
    background-image: url('../images/dark-section-bg-image.png');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
}

.section-row {
    margin-bottom: 80px;
}

.section-row .section-title {
    margin-bottom: 0;
}

.section-row .section-title.section-title-center {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
}

.section-btn {
    text-align: right;
}

.section-content-btn .section-btn {
    margin-top: 30px;
    text-align: left;
}

.section-title-content p {
    margin-bottom: 20px;
}

.section-title-content p:last-child {
    margin-bottom: 0;
}

.section-title {
    margin-bottom: 40px;
}

.section-title .section-sub-title {
    position: relative;
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize;
    line-height: normal;
    color: var(--primary-color);
    background-color: var(--secondary-color);
    border-radius: 100px;
    padding: 8px 14px 8px 30px;
    margin-bottom: 15px;
}

.bg-section .section-title .section-sub-title {
    background-color: var(--bg-color);
}

.section-title .section-sub-title::before {
    content: '';
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    background: var(--accent-secondary-color);
    border-radius: 50%;
    width: 6px;
    height: 6px;
}

.section-title h1 {
    font-size: 64px;
    font-weight: 500;
    letter-spacing: -0.01em;
    margin-bottom: 0;
    cursor: none;
}

.section-title h2 {
    font-size: 48px;
    font-weight: 500;
    letter-spacing: -0.01em;
    margin-bottom: 0;
    cursor: none;
}

.section-title h1 span {
    font-family: var(--accent-font);
}

.section-title h2 span {
    font-weight: 400;
    font-family: var(--accent-font);
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in-out;
}

.section-title:hover h2 span {
    background-position: right center;
}

.section-title p {
    margin-top: 15px;
    margin-bottom: 0;
}

.dark-section .section-title .section-sub-title {
    background-color: var(--dark-divider-color);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

.dark-section .section-title .section-sub-title,
.dark-section .section-title h1,
.dark-section .section-title h2,
.dark-section .section-title p,
.dark-section .section-title-content p {
    color: var(--white-color);
}

.help-block.with-errors ul {
    margin: 0;
    text-align: left;
}

.help-block.with-errors ul li {
    color: var(--error-color);
    font-weight: 500;
    font-size: 14px;
}

/************************************/

/**** 	    03. Header css		 ****/

/************************************/

header.main-header {
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    z-index: 100;
}

header.main-header .header-sticky {
    position: relative;
    top: 0px;
    border-bottom: 1px solid var(--dark-divider-color);
    z-index: 100;
}

header.main-header .header-sticky.hide {
    transform: translateY(-100%);
    transition: transform 0.3s ease-in-out;
}

header.main-header .header-sticky.active {
    position: fixed;
    top: 15px;
    left: 15px;
    right: 15px;
    transform: translateY(0);
    background: var(--primary-color);
    border: 1px solid var(--dark-divider-color);
    border-radius: 10px;
}

.navbar {
    padding: 30px 0px;
    align-items: center;
}

.navbar-brand {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    white-space: normal;
    min-width: 0;
    flex-shrink: 1;
}

.navbar-brand img {
    height: 65px;
    width: auto;
    flex-shrink: 0;
}

.navbar-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
    min-width: 0;
    white-space: normal;
}

.navbar-brand-title {
    font-size: 24px;
    font-weight: 700;
    color: var(--primary-color);
}

.navbar-brand-title .accent {
    color: var(--accent-secondary-color);
}

.navbar-brand-tagline {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-color);
    margin-top: 4px;
}

header.main-header:not(.main-header-prime) .navbar-brand-title {
    color: var(--white-color);
}

header.main-header:not(.main-header-prime) .navbar-brand-tagline {
    color: var(--white-color);
    opacity: 0.75;
}

.main-menu .nav-menu-wrapper {
    text-align: center;
}

/*
   Base (mobile-first) rules for .service-process-* — the phase/topic
   navigation cards used on every department and phase-hub page. The
   original template only defined these inside the min-width:992px block
   below, so below 992px they had no styling at all even though later
   "Responsive css" blocks further down assume this base already applied
   and only patch the width/gap for smaller screens. Declaring the shared
   look here (before the desktop block and before those later overrides)
   means the existing 1024px/991px/767px width adjustments now work as
   originally intended instead of applying to an unstyled element.
*/
.service-process-item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.service-process-item {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    background: var(--secondary-color);
    border-radius: 10px;
    padding: 10px;
}

.service-process-no {
    position: relative;
    width: 80px;
    min-height: 80px;
    text-align: center;
    align-content: center;
    border-radius: 10px;
    overflow: hidden;
    padding: 10px;
}

.service-process-no figure {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.service-process-no figure::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--primary-color);
    opacity: 40%;
    width: 100%;
    height: 100%;
}

.service-process-no figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service-process-no h3 {
    position: relative;
    font-size: 22px;
    color: var(--white-color);
    z-index: 1;
}

.service-process-item-content {
    width: calc(100% - 95px);
    align-content: center;
}

.service-process-item-content h3 a {
    color: inherit;
}

@media only screen and (min-width: 576px) {
    .service-process-item {
        width: calc(50% - 15px);
    }
}

/*
   Same issue as above for .faq-accordion — the branded accordion styling
   (background, custom chevron icon, spacing, colours) used as the primary
   content container on every phase/topic page. Without this base, screens
   below 992px fall back to Bootstrap's unstyled default accordion look.
*/
.faq-accordion .accordion-item {
    background: var(--secondary-color);
    border-radius: 10px;
    margin-bottom: 25px;
    padding: 0;
    overflow: hidden;
}

.faq-accordion .accordion-item:last-child {
    margin-bottom: 0;
}

.faq-accordion .accordion-header .accordion-button {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.333em;
    background-color: transparent;
    color: var(--primary-color);
    padding: 15px 50px 15px 15px;
    transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-item .accordion-button::after,
.faq-accordion .accordion-item .accordion-button.collapsed::after {
    content: '\f13a';
    font-family: 'FontAwesome';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-button:not(.collapsed)::after {
    transform: translateY(-50%) rotate(180deg);
}

.faq-accordion .accordion-item .accordion-body {
    border-top: 1px solid var(--divider-color);
    padding: 15px;
}

.faq-accordion .accordion-item .accordion-body p {
    margin: 0;
}

/*
   Same issue for .page-header — the hero/breadcrumb banner at the top of
   every page (background image, dark gradient overlay, white heading
   text). Without this base, phones showed no background image, no
   gradient, and unstyled black text instead of the intended white.
*/
.page-header {
    position: relative;
    background-image: url('../images/page-header-bg.jpg');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 10px;
    padding: 265px 0 150px;
    margin: 15px 15px 0;
    overflow: hidden;
}

.page-header.hero-bg-alt {
    background-image: url('../NewImages/herobackgrooudn.png');
    padding: 80px 0 45px;
}

.page-header:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(270deg, transparent 19.44%, var(--primary-color) 100%);
    z-index: 1;
}

.page-header-box {
    position: relative;
    z-index: 2;
}

.page-header-box h1 {
    display: inline-block;
    font-size: 28px;
    font-weight: 500;
    letter-spacing: -0.01em;
    color: var(--white-color);
    margin-bottom: 10px;
    cursor: none;
}

.page-header-box h1 span {
    font-family: var(--accent-font);
    font-weight: 400;
}

.page-header-box ol {
    margin: 0;
    padding: 0;
}

.page-header-box ol li.breadcrumb-item {
    font-size: 14px;
    font-weight: 400;
    line-height: normal;
    text-transform: capitalize;
    color: var(--white-color);
}

.page-header-box ol li.breadcrumb-item a {
    color: inherit;
}

.page-header-box ol .breadcrumb-item+.breadcrumb-item::before {
    color: var(--white-color);
}

@media only screen and (min-width: 992px) {
    .main-menu {
        justify-content: flex-end;
    }
    .main-menu .nav-menu-wrapper {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        margin: 0;
    }
}

.main-menu .nav-menu-wrapper>ul {
    align-items: center;
    display: inline-flex;
}

.main-menu ul li {
    margin: 0 10px;
    position: relative;
}

.main-menu ul li a {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2em;
    padding: 12px 10px !important;
    color: var(--white-color);
    background: transparent;
    border-radius: 0px;
    text-transform: capitalize;
    transition: all 0.3s ease-in-out;
}

.main-menu ul li.submenu>a:after {
    content: '\f107';
    font-family: 'FontAwesome';
    font-weight: 900;
    font-size: 14px;
    margin-left: 8px;
}

.main-menu ul li a:hover,
.main-menu ul li a:focus {
    color: var(--accent-secondary-color);
}

.main-menu ul ul {
    visibility: hidden;
    opacity: 0;
    transform: scale(1, 0.8);
    transform-origin: top;
    padding: 0;
    margin: 0;
    list-style: none;
    width: 235px;
    border-radius: 10px;
    position: absolute;
    left: 0;
    top: 100%;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    transition: all 0.3s ease-in-out;
    text-align: left;
}

.main-menu ul li.submenu:first-child ul {
    width: 235px;
}

.main-menu ul ul ul {
    left: 100%;
    top: 0;
    text-align: left;
}

.main-menu ul li:hover>ul {
    visibility: visible;
    opacity: 1;
    transform: scale(1, 1);
    padding: 5px 0;
}

.main-menu ul li.submenu ul li.submenu>a:after {
    content: '\f105';
    float: right;
}

.main-menu ul ul li {
    margin: 0;
    padding: 0;
}

.main-menu ul ul li a {
    color: var(--white-color);
    padding: 8px 20px !important;
    transition: all 0.3s ease-in-out;
}

.main-menu ul ul li a:hover,
.main-menu ul ul li a:focus {
    color: var(--primary-color);
    background-color: transparent;
    padding: 8px 20px 8px 23px !important;
}

.main-menu ul li.highlighted-menu {
    display: none;
}

.responsive-menu,
.navbar-toggle {
    display: none;
}

.responsive-menu {
    position: relative;
    top: 0;
}

.slicknav_btn {
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 0;
    border-radius: 6px;
}

.slicknav_icon .slicknav_icon-bar {
    display: block;
    width: 100%;
    height: 3px;
    width: 22px;
    background-color: var(--white-color);
    border-radius: 6px;
    margin: 4px auto !important;
    transition: all 0.1s ease-in-out;
}

.slicknav_icon .slicknav_icon-bar:first-child {
    margin-top: 0 !important;
}

.slicknav_icon .slicknav_icon-bar:last-child {
    margin-bottom: 0 !important;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(1) {
    transform: rotate(-45deg) translate(-5px, 5px);
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(2) {
    opacity: 0;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(3) {
    transform: rotate(45deg) translate(-5px, -5px);
}

.slicknav_menu {
    position: absolute;
    width: 100%;
    padding: 0;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
}

.slicknav_menu ul {
    margin: 5px 0;
}

.slicknav_menu ul ul {
    margin: 0;
}

.slicknav_nav .slicknav_row,
.slicknav_nav li a {
    position: relative;
    font-size: 16px;
    font-weight: 500;
    text-transform: capitalize;
    padding: 7px 20px;
    color: var(--white-color);
    line-height: normal;
    margin: 0;
    border-radius: 0 !important;
    transition: all 0.3s ease-in-out;
}

.slicknav_nav a:hover,
.slicknav_nav a:focus,
.slicknav_nav .slicknav_row:hover {
    background-color: transparent;
    color: var(--primary-color);
}

.slicknav_menu ul ul li a {
    padding: 7px 20px 7px 30px;
}

.slicknav_arrow {
    font-size: 0 !important;
}

.slicknav_arrow:after {
    content: '\f107';
    position: absolute;
    font-family: 'FontAwesome';
    font-weight: 900;
    font-size: 12px;
    margin-left: 8px;
    color: var(--white-color);
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease-out;
}

.slicknav_open>a .slicknav_arrow:after {
    transform: translateY(-50%) rotate(-180deg);
    color: var(--primary-color);
}

/************************************/

/*** 	    04. Hero css	      ***/

/************************************/

.hero {
    position: relative;
    align-content: center;
    background-image: url('../images/hero-bg.jpg');
    border-radius: 10px;
    min-height: 800px;
    padding: 255px 0 140px;
    margin: 15px 15px 0;
    overflow: hidden;
}

.hero::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(270deg, transparent 19.44%, Var(--primary-color) 100%);
    height: 100%;
    width: 100%;
    z-index: 1;
}

.hero .container {
    position: relative;
    z-index: 2;
}

.hero-content-list ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px 20px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.hero-content-list ul li {
    position: relative;
    width: calc(50% - 10px);
    line-height: 1.5em;
    color: var(--white-color);
    padding-left: 25px;
}

.hero-content-list ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    color: var(--accent-secondary-color);
    top: 0;
    left: 0;
}

.hero-content-body {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 50px;
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 40px;
    margin-top: 80px;
}

.video-play-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 20px;
    z-index: 1;
}

.video-play-button a {
    position: relative;
    height: 44px;
    width: 44px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: none;
    transition: all 0.4s ease-in-out;
}

.video-play-button:hover a {
    background-position: right center;
}

.video-play-button a.bg-effect:before,
.video-play-button a.bg-effect:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border: 34px solid var(--white-color);
    opacity: 50%;
    border-radius: 50%;
    transform: scale(0.6);
    z-index: -1;
    animation: border-zooming 1.2s infinite linear;
}

.video-play-button a.bg-effect:after {
    animation-delay: .3s;
}

@keyframes border-zooming {
    100% {
        transform: scale(1);
        opacity: 0;
    }
}

.video-play-button a i {
    font-size: 16px;
    color: var(--white-color);
    margin-left: 2px;
}

.video-play-button span {
    color: var(--white-color);
    font-weight: 700;
    margin: 0;
}

/************************************/

/*** 	   05. About Us css	      ***/

/************************************/

.about-us {
    padding: 120px 0;
}

.about-us-image-box {
    display: flex;
    flex-wrap: wrap;
}

.about-us-image-box-1 {
    width: 33%;
    align-content: center;
}

.about-us-flash-image {
    margin-bottom: -10px;
    text-align: center;
}

.about-us-flash-image img {
    width: 100%;
    max-width: 122px;
    aspect-ratio: 1 / 1.55;
    object-fit: cover;
    border-radius: 10px;
}

.about-us-video-box {
    position: relative;
    background: var(--secondary-color);
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 10px;
    margin-right: -135px;
    z-index: 1;
}

.emergency-support-title {
    width: calc(14% - 10px);
    text-align: center;
    writing-mode: vertical-rl;
    transform: rotate(-180deg);
    padding: 10px 10px 10px 0px;
}

.emergency-support-title h2 {
    font-size: 20px;
}

.about-us-video {
    position: relative;
    width: calc(86% - 10px);
}

.about-us-video figure {
    position: relative;
    display: block;
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
}

.about-us-video figure::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--primary-color);
    opacity: 30%;
    z-index: 1;
}

.about-us-video figure img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1.174;
    object-fit: cover;
    border-radius: 10px;
    transition: all 0.6s ease-in-out;
}

.about-us-video:hover figure img {
    transform: scale(1.04);
}

.about-us-video .video-play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.about-us-image-box-2 {
    width: 67%;
}

.about-us-image {
    height: 100%;
}

.about-us-image figure {
    display: block;
    height: 100%;
    border-radius: 10px;
}

.about-us-image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1.542;
    object-fit: cover;
    border-radius: 10px;
}

.about-us-content {
    height: 100%;
    align-content: center;
    margin-left: 10px;
}

.about-us-body {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.about-us-body-item {
    width: calc(50% - 15px);
}

.about-us-body-item .icon-box {
    height: 60px;
    width: 60px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    transition: all 0.4s ease-in-out;
}

.about-us-body-item:hover .icon-box {
    background-position: right center;
}

.about-us-body-item .icon-box img {
    width: 100%;
    max-width: 30px;
}

.about-us-body-item-content h3 {
    font-size: 20px;
}

.about-us-body-item-content p {
    margin: 10px 0 0;
}

.about-us-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 40px;
    border-top: 1px solid var(--divider-color);
    margin-top: 40px;
    padding-top: 40px;
}

.about-us-author-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.about-us-author-image figure {
    display: block;
    border-radius: 50%;
}

.about-us-author-image img {
    width: 100%;
    max-width: 50px;
}

.about-us-author-content h3 {
    font-size: 20px;
}

.about-us-author-content p {
    margin: 5px 0 0;
}

/************************************/

/*** 	 06. Our Services css     ***/

/************************************/

.our-services {
    padding: 120px 0;
}

.service-item {
    background-color: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 10px;
    min-height: 440px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 40px;
    transition: all 0.4s ease-in-out;
}

.service-item:hover {
    transform: translateY(-5px);
}

.service-item-header .icon-box {
    width: 60px;
    height: 60px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 60px;
    transition: all 0.4s ease-in-out;
}

.service-item:hover .service-item-header .icon-box {
    background-position: right center;
}

.service-item-header .icon-box img {
    width: 100%;
    max-width: 30px;
}

.service-item-content h2 {
    font-size: 20px;
    color: var(--white-color);
}

.service-item-content h2 a {
    color: inherit;
}

.service-item-content p {
    color: var(--white-color);
    margin: 10px 0 0;
}

.service-item-btn {
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 40px;
}

.our-services .service-item-btn .readmore-btn {
    color: var(--white-color);
}

.satisfy-client-images {
    display: inline-flex;
    align-items: center;
}

.satisfy-client-image {
    position: relative;
    display: inline-block;
    border: 1px solid var(--white-color);
    border-radius: 50%;
    margin-left: -14px;
    overflow: hidden;
    z-index: 1;
}

.satisfy-client-image:first-child {
    margin-left: 0;
}

.satisfy-client-image figure {
    display: block;
}

.satisfy-client-image img {
    width: 100%;
    max-width: 50px;
}

.satisfy-client-image.add-more {
    width: 50px;
    height: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease-in-out;
}

.satisfy-client-images:hover .satisfy-client-image.add-more {
    background-position: right center;
}

.satisfy-client-image.add-more h3 {
    font-size: 16px;
    line-height: normal;
    color: var(--white-color);
}

.satisfy-client-image.add-more i {
    font-size: 20px;
    color: var(--white-color);
}

.section-footer-text {
    margin-top: 30px;
    text-align: center;
}

.section-footer-text p {
    margin-bottom: 0;
}

.section-footer-text p span {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    color: var(--white-color);
    line-height: 1em;
    padding: 5px 10px;
    border-radius: 100px;
    margin-right: 15px;
    transition: all 0.4s ease-in-out;
}

.section-footer-text p b {
    font-weight: 600;
    color: var(--primary-color);
}

.section-footer-text p a {
    font-weight: 600;
    text-transform: capitalize;
    text-decoration: underline;
    text-underline-offset: 3px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in-out;
}

.section-footer-text p:hover span,
.section-footer-text p a:hover {
    background-position: right center;
}

.section-footer-text ul {
    width: 100%;
    padding: 0;
    margin: 20px 0 0;
    list-style: none;
}

.section-footer-text ul li {
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    color: var(--primary-color);
    margin-right: 10px;
}

.section-footer-text ul li:last-child {
    margin: 0;
}

.section-footer-text ul li i {
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.dark-section .section-footer-text p,
.dark-section .section-footer-text p b,
.dark-section .section-footer-text ul li {
    color: var(--white-color);
}

.section-footer-text.section-footer-contact {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px 20px;
}

.section-footer-text.section-footer-contact span {
    width: 30px;
    height: 30px;
    padding: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
}

.section-footer-text.section-footer-contact span img {
    width: 100%;
    max-width: 16px;
}

.section-footer-text.section-satisfy-img {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.dark-section .section-footer-text.section-satisfy-img .satisfy-client-image {
    border-color: var(--primary-color);
}

.section-footer-text.section-satisfy-img .satisfy-client-image figure img {
    max-width: 30px;
}

.section-footer-text.section-satisfy-img .satisfy-client-image.add-more {
    width: 32px;
    height: 32px;
    margin-left: -10px;
}

.section-footer-text.section-satisfy-img .satisfy-client-image.add-more img {
    max-width: 16px;
}

.section-footer-text.section-satisfy-img ul {
    margin: 5px 0 0;
}

.dark-section .section-footer-text p a:hover {
    color: var(--white-color);
}

/************************************/

/*** 	  07. What We Do css      ***/

/************************************/

.what-we-do {
    background: url('../images/section-bg-image-1.png') no-repeat;
    background-position: center left -150px;
    background-size: auto;
    padding: 120px 0;
}

.skills-progress-bar {
    margin-bottom: 30px;
}

.skills-progress-bar:last-child {
    margin-bottom: 0;
}

.skills-progress-bar .skill-data {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 15px;
}

.skills-progress-bar .skill-data .skill-title,
.skills-progress-bar .skill-data .skill-no {
    font-size: 20px;
    font-weight: 500;
    line-height: normal;
    color: var(--primary-color);
}

.skills-progress-bar .skillbar .skill-progress {
    position: relative;
    width: 100%;
    height: 10px;
    background: var(--divider-color);
    border-radius: 10px;
    overflow: hidden;
}

.skills-progress-bar .skillbar .skill-progress .count-bar {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    border-radius: 100px;
}

.what-we-do-counter-boxes {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.what-we-do-counter-item {
    width: calc(50% - 15px);
    background: var(--secondary-color);
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    padding: 25px;
}

.what-we-do-counter-item .icon-box img {
    width: 100%;
    max-width: 40px;
}

.what-we-counter-item-content {
    width: calc(100% - 55px);
}

.what-we-counter-item-content h2 {
    font-size: 40px;
    line-height: 1em;
}

.what-we-counter-item-content p {
    margin: 5px 0 0;
}

.what-we-do-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 40px;
    border-top: 1px solid var(--divider-color);
    margin-top: 40px;
    padding-top: 40px;
}

.what-we-do-contact-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.what-we-do-contact-box .icon-box {
    position: relative;
    width: 50px;
    height: 50px;
    background: var(--secondary-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.what-we-do-contact-box .icon-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    border-radius: 100px;
    transform: scale(0);
    width: 100%;
    height: 100%;
    transition: all 0.4s ease-in-out;
    z-index: 0;
}

.what-we-do-contact-box:hover .icon-box::before {
    transform: scale(1);
}

.what-we-do-contact-box .icon-box img {
    position: relative;
    width: 100%;
    max-width: 24px;
    transition: all 0.4s ease-in-out;
    z-index: 1;
}

.what-we-do-contact-box:hover .icon-box img {
    filter: brightness(0) invert(1);
}

.what-we-contact-content {
    width: calc(100% - 65px);
}

.what-we-contact-content p {
    line-height: normal;
    margin: 0 0 5px;
}

.what-we-contact-content h3 {
    font-size: 20px;
}

.what-we-contact-content h3 a {
    color: inherit;
    transition: all 0.3s ease-in-out;
}

.what-we-contact-content h3 a:hover {
    color: var(--accent-secondary-color);
}

.what-we-do-images-box {
    position: relative;
}

.what-we-do-image {
    position: relative;
    max-width: 550px;
    margin-left: auto;
}

.what-we-do-image::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url('../images/what-we-do-image-bg-circle.png') no-repeat center center;
    background-size: cover;
    width: 555px;
    height: 555px;
    animation: circleimagerotate 30s infinite linear;
    z-index: 0;
}

@keyframes circleimagerotate {
    100% {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

.what-we-do-image figure {
    position: relative;
    display: block;
    border-radius: 10px;
}

.what-we-do-image figure::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(180deg, transparent 70.76%, var(--bg-color) 100%);
    width: 100%;
    height: 100%;
    z-index: 1;
}

.what-we-do-image img {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1.291;
    object-fit: cover;
    border-radius: 10px;
}

.what-we-do-author-box {
    position: absolute;
    bottom: 115px;
    left: 15px;
    max-width: 250px;
    background: var(--secondary-color);
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.07);
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    padding: 20px;
    animation: authorboxmove 3s infinite linear alternate;
    z-index: 1;
}

@keyframes authorboxmove {
    50% {
        transform: translateX(30px);
    }
}

.what-we-do-author-box:hover {
    animation-play-state: paused;
}

.what-we-author-image figure {
    display: block;
    border-radius: 50%;
}

.what-we-author-image img {
    width: 100%;
    max-width: 50px;
    border-radius: 50%;
}

.what-we-author-content {
    width: calc(100% - 65px);
}

.what-we-author-content h3 {
    font-size: 20px;
}

.what-we-author-content p {
    margin: 5px 0 0;
}

/************************************/

/*** 	08. Why Choose Us css     ***/

/************************************/

.why-choose-us {
    position: relative;
    padding: 120px 0;
    overflow: hidden;
}

.why-choose-us::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--primary-color);
    width: 100%;
    opacity: 80%;
    height: 100%;
    z-index: 1;
}

.why-choose-us.why-choose-video .why-choose-bg-video {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.why-choose-us.why-choose-video .why-choose-bg-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.why-choose-us .container {
    position: relative;
    z-index: 2;
}

.why-choose-us-boxes {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.why-choose-us-box {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.why-choose-us-box.box-1,
.why-choose-us-box.box-3 {
    width: calc(28% - 20px);
}

.why-choose-us-image {
    height: 100%;
}

.why-choose-us-image figure {
    display: block;
    border-radius: 10px;
    height: 100%;
}

.why-choose-us-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.why-choose-us-box.box-1 .why-choose-us-image img {
    aspect-ratio: 1 / 0.9;
}

.why-choose-us-box.box-2 .why-choose-us-image img {
    aspect-ratio: 1 / 0.64;
}

.why-choose-us-box.box-3 .why-choose-us-image img {
    aspect-ratio: 1 / 0.42;
}

.why-choose-counter-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px 20px;
    background: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 10px;
    padding: 30px;
}

.circle {
    position: relative;
    display: inline-flex;
    color: var(--accent-secondary-color);
    border-radius: 50%;
}

.circle .progress_value {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 65px;
    height: 65px;
    color: var(--white-color);
    font-weight: 600;
    background: var(--dark-divider-color);
    border-radius: 50%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.why-choose-counter-content {
    width: calc(100% - 100px);
}

.why-choose-counter-content h2 {
    font-size: 20px;
    line-height: 1.4em;
    color: var(--white-color);
}

.why-choose-us-box.box-2 {
    width: calc(44% - 20px);
    background: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 10px;
    gap: 10px;
    padding: 10px;
}

.why-choose-skills-list {
    padding: 30px;
}

.why-choose-skills-list .skills-progress-bar .skill-data .skill-title,
.why-choose-skills-list .skills-progress-bar .skill-data .skill-no {
    color: var(--white-color);
}

.why-choose-skills-list .skills-progress-bar .skillbar .skill-progress {
    background: var(--dark-divider-color);
}

.why-choose-us-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    background: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 10px;
    padding: 40px;
}

.why-choose-us-item .icon-box img {
    width: 100%;
    max-width: 40px;
}

.why-choose-item-content h2 {
    font-size: 40px;
    color: var(--white-color);
}

.why-choose-item-content p {
    color: var(--white-color);
    margin: 10px 0 0;
}

.why-choose-us .section-footer-text {
    margin-top: 60px;
}

/************************************/

/*** 	  09. Case Study css      ***/

/************************************/

.our-case-study {
    padding: 120px 0;
    background-image: url('../images/section-bg-image-2.png');
    background-repeat: no-repeat;
    background-position: top 100px right -135px;
    background-size: auto;
}

.case-study-item {
    position: relative;
    border-radius: 10px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    overflow: hidden;
}

.case-study-item-image a {
    cursor: none;
    display: block;
    border-radius: 10px;
    overflow: hidden;
}

.case-study-item-image figure {
    position: relative;
    display: block;
}

.case-study-item-image figure:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(180deg, transparent 50%, rgba(1, 58, 89, 0.80) 100%);
    border-radius: 10px;
    z-index: 1;
}

.case-study-item-image img {
    width: 100%;
    aspect-ratio: 1 / 1.24;
    object-fit: cover;
    transition: all 0.6s ease-in-out;
}

.case-study-item:hover .case-study-item-image img {
    transform: scale(1.06);
}

.case-study-item-content {
    position: absolute;
    right: 30px;
    bottom: 30px;
    left: 30px;
    z-index: 2;
}

.case-study-item-content ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 28px;
    margin: 0 0 15px;
    padding: 0 0 0 18px;
    list-style: disc;
}

.case-study-item-content ul li::marker {
    color: var(--accent-secondary-color);
}

.case-study-item-content ul li {
    position: relative;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5em;
    color: var(--white-color);
}

.case-study-item-content ul li a {
    color: inherit;
}

.case-study-item-content h2 {
    font-size: 20px;
    line-height: 1.4em;
    color: var(--white-color);
}

.case-study-item-content h2 a {
    color: inherit;
}

/************************************/

/*** 	 10. Our Features css     ***/

/************************************/

.our-features {
    padding: 120px 0 0;
    margin-bottom: 210px;
}

.feature-item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 40px 6.25vw;
}

.feature-item {
    position: relative;
    width: calc(33.33% - 4.167vw);
    min-height: 200px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 30px;
}

.feature-item::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: -3.125vw;
    background: var(--dark-divider-color);
    width: 1px;
    height: 100%;
}

.feature-item:nth-child(3n+3)::before,
.feature-item:last-child::before {
    display: none;
}

.feature-item .icon-box {
    width: 60px;
    height: 60px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.feature-item:hover .icon-box {
    background-position: right center;
}

.feature-item .icon-box img {
    width: 100%;
    max-width: 30px;
}

.feature-item-content h3 {
    font-size: 20px;
    color: var(--white-color);
}

.feature-item-content p {
    color: var(--white-color);
    margin: 10px 0 0;
}

.cta-box {
    display: flex;
    flex-wrap: wrap;
    background: var(--secondary-color);
    border-radius: 10px;
    gap: 20px 10px;
    padding: 10px;
    margin: 120px 0 -210px;
}

.cta-box-image {
    width: calc(39% - 5px);
}

.cta-box-image figure {
    display: block;
    height: 100%;
    border-radius: 10px;
}

.cta-box-image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 0.68;
    object-fit: cover;
    border-radius: 10px;
}

.cta-box-content {
    width: calc(61% - 5px);
    padding: 40px;
}

.cta-box-content .section-title .section-sub-title {
    background: var(--bg-color);
    color: var(--primary-color);
}

.cta-box-content .section-title h2 {
    color: var(--primary-color);
}

.cta-box-content .section-title p {
    color: var(--text-color);
}

.cta-box-footer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px 40px;
    border-top: 1px solid var(--divider-color);
    padding-top: 40px;
}

.cta-box-footer .what-we-do-contact-box .icon-box {
    background: var(--bg-color);
}

/************************************/

/*** 	 11. Our Pricing css      ***/

/************************************/

.our-pricing {
    background-image: url('../images/section-bg-image-1.png');
    background-repeat: no-repeat;
    background-position: top 120px left -150px;
    background-size: auto;
    padding: 120px 0;
}

.pricing-item {
    position: relative;
    background-color: var(--secondary-color);
    border-radius: 10px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    overflow: hidden;
    padding: 40px;
}

.pricing-item-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.pricing-item-header .icon-box {
    width: 50px;
    height: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.pricing-item:hover .pricing-item-header .icon-box {
    background-position: right center;
}

.pricing-item-header .icon-box img {
    width: 100%;
    max-width: 24px;
}

.pricing-item-header .pricing-item-title {
    width: calc(100% - 65px);
}

.pricing-item-header .pricing-item-title h2 {
    font-size: 20px;
}

.pricing-item-contant {
    margin-bottom: 30px;
}

.pricing-item-contant p {
    margin: 0;
}

.pricing-item-price h2 {
    font-size: 48px;
}

.pricing-item-price h2 sub {
    font-size: 16px;
    font-weight: 400;
    color: var(--text-color);
    bottom: 0;
}

.pricing-item-body {
    border-top: 1px solid var(--divider-color);
    padding-top: 30px;
    margin-top: 30px;
}

.pricing-item-list h3 {
    font-size: 20px;
    margin-bottom: 30px;
}

.pricing-item-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.pricing-item-list ul li {
    position: relative;
    line-height: 1.5em;
    margin-bottom: 15px;
    padding-left: 25px;
}

.pricing-item-list ul li:last-child {
    margin-bottom: 0;
}

.pricing-item-list ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.pricing-item-btn {
    margin-top: 40px;
}

.pricing-item.highlighted-box::after {
    content: 'popular';
    position: absolute;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--white-color);
    top: 28px;
    right: -38px;
    width: 155px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(180deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    background-size: auto 200%;
    transform: rotate(49deg);
}

.pricing-item.highlighted-box .pricing-item-header {
    padding-right: 30px;
}

.pricing-benefit-list {
    margin-top: 30px;
}

.pricing-benefit-list ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 20px 40px;
}

.pricing-benefit-list ul li {
    display: inline-flex;
    align-items: center;
}

.pricing-benefit-list ul li img {
    width: 100%;
    max-width: 20px;
    margin-right: 10px;
}

/************************************/

/***   12. Our Testimonials css   ***/

/************************************/

.our-testimonials {
    padding: 120px 0;
    background-image: url('../images/testimonial-bg-image.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: auto;
}

.testimonial-slider .swiper-wrapper {
    cursor: none;
}

.testimonial-item {
    min-height: 460px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    background: var(--bg-color);
    border-radius: 20px;
    padding: 40px;
    transition: all 0.6s ease-in-out;
}

.testimonial-slider .swiper-wrapper .testimonial-item {
    transform: scale(0.95);
}

.testimonial-slider .swiper-wrapper .swiper-slide.swiper-slide-next .testimonial-item {
    transform: scale(1);
}

.testimonial-item-rating {
    display: inline-block;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 20px;
}

.testimonial-item-content p {
    font-size: 18px;
    font-weight: 500;
    margin: 0;
}

.testimonial-item-author {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    border-top: 1px solid var(--divider-color);
    padding-top: 40px;
}

.testimonial-author-image figure {
    display: block;
    border-radius: 50%;
}

.testimonial-author-image img {
    width: 100%;
    max-width: 50px;
    border-radius: 50%;
}

.testimonial-author-content {
    width: calc(100% - 65px);
}

.testimonial-author-content h2 {
    font-size: 20px;
}

.testimonial-author-content p {
    margin: 5px 0 0;
}

.our-testimonials .section-footer-text {
    margin-top: 60px;
}

/************************************/

/*** 	   13. Our FAQ's css      ***/

/************************************/

.our-faqs {
    padding: 120px 0;
}

.faq-image-box {
    position: relative;
    height: 100%;
    margin-right: 15px;
}

.faq-image {
    height: 100%;
}

.faq-image figure {
    display: block;
    height: 100%;
    border-radius: 10px;
}

.faq-image figure img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1.16;
    object-fit: cover;
    border-radius: 10px;
}

.faq-cta-box {
    position: absolute;
    bottom: 20px;
    left: 20px;
    max-width: 325px;
    min-height: 280px;
    background: var(--secondary-color);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 30px;
    padding: 30px;
    z-index: 1;
}

.faq-cta-header .icon-box img {
    width: 100%;
    max-width: 60px;
}

.faq-cta-title {
    margin-top: 20px;
}

.faq-cta-title h2,
.faq-cta-contant h3 {
    font-size: 20px;
    line-height: 1.4em;
}

.faq-cta-contant h3 a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: all 0.3s ease-in-out;
}

.faq-cta-contant h3 a:hover {
    color: var(--accent-secondary-color);
}

.faq-contant {
    height: 100%;
    align-content: center;
}

.faq-accordion .accordion-item {
    background: var(--secondary-color);
    border-radius: 10px;
    margin-bottom: 25px;
    padding: 0;
    overflow: hidden;
}

.faq-accordion .accordion-item:last-child {
    margin-bottom: 0;
}

.faq-accordion .accordion-header .accordion-button {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.333em;
    background-color: transparent;
    color: var(--primary-color);
    padding: 20px 60px 20px 20px;
    transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-item .accordion-button::after,
.faq-accordion .accordion-item .accordion-button.collapsed::after {
    content: '\f13a';
    font-family: 'FontAwesome';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-button:not(.collapsed)::after {
    transform: translateY(-50%) rotate(180deg);
}

.faq-accordion .accordion-item .accordion-body {
    border-top: 1px solid var(--divider-color);
    padding: 20px;
}

.faq-accordion .accordion-item .accordion-body p {
    margin: 0;
}

.nested-accordion {
    margin-top: 10px;
}

.nested-accordion.accordion-item {
    background: #F5F8FA;
    border: 1px solid var(--divider-color);
    border-radius: 8px;
    margin-bottom: 15px;
}

.nested-accordion.accordion-item:last-child {
    margin-bottom: 0;
}

.nested-accordion .accordion-header .accordion-button {
    font-size: 16px;
    padding: 15px 50px 15px 15px;
}

.nested-accordion .accordion-body {
    padding: 5px 20px 20px;
}

.theory-subheading {
    font-size: 15px;
    font-weight: 600;
    color: var(--primary-color);
    margin: 15px 0 8px;
}

.theory-subheading:first-child {
    margin-top: 0;
}

.theory-list {
    margin: 0 0 15px;
    padding-left: 20px;
}

.theory-list:last-child {
    margin-bottom: 0;
}

.theory-list li {
    line-height: 1.6em;
    margin-bottom: 8px;
}

.theory-list li:last-child {
    margin-bottom: 0;
}

.theory-formula {
    display: inline-block;
    background: var(--white-color);
    border: 1px dashed var(--divider-color);
    border-radius: 6px;
    padding: 8px 16px;
    margin: 5px 0 15px;
    font-style: italic;
}

.theory-definition-list {
    list-style: none;
    margin: 0 0 15px;
    padding-left: 10px;
    border-left: 2px solid var(--divider-color);
}

.theory-definition-list li {
    line-height: 1.6em;
    margin-bottom: 6px;
}

.theory-definition-list li:last-child {
    margin-bottom: 0;
}

.theory-definition-list li strong {
    color: var(--primary-color);
}

.theory-diagram {
    background: var(--white-color);
    border: 1px solid var(--divider-color);
    border-radius: 8px;
    padding: 15px;
    margin: 5px 0 15px;
    text-align: center;
}

.theory-diagram img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
}

.theory-diagram figcaption {
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-color);
    margin-top: 12px;
}

.theory-diagram-placeholder {
    background: var(--bg-color);
    border: 1px dashed var(--divider-color);
    border-radius: 8px;
    padding: 20px;
    margin: 5px 0 15px;
    text-align: center;
}

.theory-diagram-placeholder .placeholder-label {
    display: block;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--primary-color);
    margin-bottom: 8px;
}

.theory-diagram-placeholder p {
    font-size: 14px;
    color: var(--text-color);
    margin: 0;
}

.theory-table-wrap {
    overflow-x: auto;
    margin: 5px 0 15px;
}

.theory-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--white-color);
    border: 1px solid var(--divider-color);
    border-radius: 8px;
    overflow: hidden;
}

.theory-table th,
.theory-table td {
    padding: 10px 14px;
    text-align: left;
    border-bottom: 1px solid var(--divider-color);
    font-size: 14px;
    line-height: 1.5em;
}

.theory-table th {
    background: var(--bg-color);
    color: var(--primary-color);
    font-weight: 600;
}

.theory-table tr:last-child td {
    border-bottom: none;
}

/************************************/

/***    14. Book Appoinment css   ***/

/************************************/

.our-appointment {
    position: relative;
    background-image: url('../images/appointment-bg-image.jpg');
    padding: 100px 0;
    overflow: hidden;
}

.our-appointment::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--primary-color);
    opacity: 80%;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.our-appointment .container {
    position: relative;
    z-index: 2;
}

.our-appointment-content {
    height: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}

.our-appointment-content .section-footer-text {
    justify-content: start;
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 40px;
    margin-top: 0;
}

.appointment-form {
    background-color: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    padding: 50px;
    border-radius: 10px;
}

.appointment-form .form-control {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5em;
    color: var(--white-color);
    background-color: var(--dark-divider-color);
    border-radius: 10px;
    padding: 18px 20px;
    outline: none;
    border: none;
    box-shadow: none;
}

.appointment-form .form-control::placeholder {
    color: var(--white-color);
}

.appointment-form select option {
    color: var(--primary-color);
}

.appointment-form .form-control.form-select {
    padding: 18px 35px 18px 20px;
}

.appointment-form-btn {
    margin-top: 15px;
}

.appointment-form-btn .btn-default {
    width: 100%;
    padding: 18px 24px;
}

.appointment-form-btn .btn-default::before {
    display: none;
}

/************************************/

/*** 	   15. Our Blog css	      ***/

/************************************/

.our-blog {
    background-image: url('../images/section-bg-image-1.png');
    background-repeat: no-repeat;
    background-position: top 120px left -150px;
    background-size: auto;
    padding: 120px 0 90px;
}

.post-item {
    height: calc(100% - 30px);
    margin-bottom: 30px;
}

.post-featured-image {
    margin-bottom: 20px;
}

.post-featured-image a,
.post-featured-image figure {
    display: block;
    border-radius: 10px;
    cursor: none;
    overflow: hidden;
}

.post-featured-image img {
    width: 100%;
    aspect-ratio: 1 / 0.844;
    object-fit: cover;
    transition: all 0.6s ease-in-out;
}

.post-item:hover .post-featured-image img {
    transform: scale(1.06);
}

.post-item-body {
    padding: 0 10px;
}

.post-item-content {
    border-bottom: 1px solid var(--divider-color);
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.post-item-content h2 {
    font-size: 20px;
    line-height: 1.4em;
}

.post-item-content h2 a {
    color: inherit;
}

/************************************/

/*** 	    16. Footer css	      ***/

/************************************/

.main-footer {
    padding: 120px 0 0;
    margin-bottom: 15px;
}

.about-footer {
    max-width: 310px;
}

.footer-logo img {
    width: 100%;
    max-width: 163px;
}

.about-footer-content {
    margin-top: 30px;
}

.about-footer-content p {
    color: var(--white-color);
}

.about-footer-content p:last-child {
    margin: 0;
}

.footer-social-links {
    margin-top: 40px;
}

.footer-social-links ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin: 0;
    padding: 0;
}

.footer-social-links ul li {
    margin: 0;
}

.footer-social-links ul li a {
    width: 36px;
    height: 36px;
    color: var(--white-color);
    border: 1px solid var(--white-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.footer-social-links ul li a:hover {
    background-color: var(--white-color);
    color: var(--primary-color);
}

.footer-social-links ul li a i {
    font-size: 18px;
    color: inherit;
}

.footer-links-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
    margin-left: 3.125vw;
}

.footer-links {
    max-width: 27%;
}

.footer-links h2 {
    font-size: 20px;
    color: var(--white-color);
    margin-bottom: 30px;
}

.footer-links ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-links ul li {
    text-transform: capitalize;
    color: var(--white-color);
    line-height: 1.5em;
    margin-bottom: 15px;
}

.footer-links ul li:last-child {
    margin-bottom: 0;
}

.footer-links ul li a {
    color: inherit;
    transition: all 0.3s ease-in-out;
}

.footer-links ul li a:hover {
    color: var(--accent-secondary-color);
}

.footer-branch-box {
    max-width: 39%;
}

.footer-branch-image figure {
    display: block;
    border-radius: 10px;
}

.footer-branch-image img {
    width: 100%;
    max-width: 303px;
    aspect-ratio: 1 / 0.472;
    object-fit: cover;
    border-radius: 10px;
}

.footer-contact-info-list {
    width: 100%;
    border-top: 1px solid var(--dark-divider-color);
    margin-top: 10px;
    padding-top: 40px;
}

.footer-contact-info-list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 3.125vw;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-contact-info-list ul li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    color: var(--white-color);
    line-height: 1.5em;
}

.footer-contact-info-list ul li img {
    width: 100%;
    max-width: 20px;
}

.footer-contact-info-list ul li a {
    color: inherit;
    transition: all 0.4s ease-in-out;
}

.footer-contact-info-list ul li a:hover {
    color: var(--accent-secondary-color);
}

.footer-copyright-text {
    border-top: 1px solid var(--dark-divider-color);
    text-align: center;
    padding: 60px 0;
    margin-top: 60px;
}

.footer-copyright-text p {
    color: var(--white-color);
    margin: 0;
}

/************************************/

/*** 	17. About Us Page css     ***/

/************************************/

.page-header {
    position: relative;
    background-image: url('../images/page-header-bg.jpg');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 10px;
    padding: 265px 0 150px;
    margin: 15px 15px 0;
    overflow: hidden;
}

.page-header.hero-bg-alt {
    background-image: url('../NewImages/herobackgrooudn.png');
    padding: 80px 0 45px;
}

.page-header:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(270deg, transparent 19.44%, var(--primary-color) 100%);
    z-index: 1;
}

.page-header-box {
    position: relative;
    z-index: 2;
}

.page-header-box h1 {
    display: inline-block;
    font-size: 64px;
    font-weight: 500;
    letter-spacing: -0.01em;
    color: var(--white-color);
    margin-bottom: 15px;
    cursor: none;
}

.page-header-box h1 span {
    font-family: var(--accent-font);
    font-weight: 400;
}

.page-header-box ol {
    margin: 0;
    padding: 0;
}

.page-header-box ol li.breadcrumb-item {
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    text-transform: capitalize;
    color: var(--white-color);
}

.page-header-box ol li.breadcrumb-item a {
    color: inherit;
}

.page-header-box ol .breadcrumb-item+.breadcrumb-item::before {
    color: var(--white-color);
}

.our-approach {
    padding: 120px 0;
}

.our-approach-box {
    display: flex;
    flex-direction: column;
    gap: 60px 0;
}

.approach-item {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.our-approach-box .approach-item:nth-child(even) {
    flex-direction: row-reverse;
}

.approach-item-content {
    width: calc(50% - 15px);
    align-content: center;
    padding-right: 20px;
}

.our-approach-box .approach-item:nth-child(even) .approach-item-content {
    padding: 0 0 0 20px;
}

.approach-item-image {
    width: calc(50% - 15px);
}

.apprach-body-item,
.approach-item-content .section-title {
    border-bottom: 1px solid var(--dark-divider-color);
    margin-bottom: 40px;
    padding-bottom: 40px;
}

.apprach-body-item:last-child {
    margin-bottom: 0px;
    padding-bottom: 0px;
    border-bottom: none;
}

.apprach-body-item h3 {
    font-size: 20px;
    color: var(--white-color);
}

.apprach-body-item p {
    color: var(--white-color);
    margin: 15px 0 0;
}

.apprach-body-item ul {
    list-style: none;
    margin: 30px 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 15px 20px;
}

.apprach-body-item ul li {
    position: relative;
    width: calc(50% - 10px);
    color: var(--white-color);
    line-height: 1.5em;
    padding-left: 25px;
}

.apprach-body-item ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.approach-item-image figure {
    height: 100%;
    display: block;
    border-radius: 10px;
}

.approach-item-image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 0.63;
    object-fit: cover;
    border-radius: 10px;
}

.our-solutions {
    background-image: url('../images/section-bg-image-1.png');
    background-repeat: no-repeat;
    background-position: top 120px left -150px;
    background-size: auto;
    padding: 120px 0;
}

.solutions-item {
    background-color: var(--secondary-color);
    border-radius: 10px;
    min-height: 485px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 40px;
}

.solutions-item .icon-box {
    height: 60px;
    width: 60px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    transition: all 0.4s ease-in-out;
}

.solutions-item:hover .icon-box {
    background-position: right center;
}

.solutions-item .icon-box img {
    width: 100%;
    max-width: 30px;
}

.solutions-item-title h2 {
    font-size: 20px;
    line-height: 1.4em;
}

.solutions-item-body {
    border-top: 1px solid var(--divider-color);
    padding-top: 40px;
}

.solutions-item-content p {
    margin: 0;
}

.solutions-item-counter-box {
    margin-top: 20px;
}

.solutions-item-counter-box h3 {
    font-size: 40px;
}

.solutions-item-counter-box p {
    margin: 5px 0 0;
}

.our-team {
    padding: 120px 0;
}

.team-item {
    position: relative;
    background-color: var(--dark-divider-color);
    border-radius: 10px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 10px;
    overflow: hidden;
    transition: all 0.4s ease-in-out;
}

.team-item-image {
    margin-bottom: 10px;
}

.team-item-image a {
    display: block;
    cursor: none;
    border-radius: 10px;
    overflow: hidden;
}

.team-item-image figure {
    display: block;
}

.team-item-image figure img {
    width: 100%;
    aspect-ratio: 1 / 1.017;
    object-fit: cover;
    transition: all 0.6s ease-in-out;
}

.team-item:hover .team-item-image figure img {
    transform: scale(1.06);
}

.team-item-body {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
    gap: 15px;
    padding: 20px;
}

.team-item-contant {
    width: calc(100% - 59px);
}

.team-item-contant h2 {
    font-size: 20px;
    color: var(--white-color);
}

.team-item-contant h2 a {
    color: inherit;
}

.team-item-contant p {
    color: var(--white-color);
    margin: 10px 0 0;
}

.team-social-list-box {
    position: relative;
    margin-top: -52px;
    z-index: 2;
}

.team-social-btn a {
    width: 44px;
    height: 44px;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    border: 2px solid var(--primary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.team-social-btn img {
    width: 100%;
    max-width: 20px;
}

.team-social-list {
    position: absolute;
    left: 0px;
    right: 0;
    opacity: 0;
    bottom: 46px;
    text-align: center;
    visibility: hidden;
    transition: all 0.4s ease-in-out;
    z-index: 2;
}

.team-item:hover .team-social-list {
    opacity: 1;
    visibility: visible;
    bottom: 60px;
}

.team-social-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.team-social-list ul li {
    margin-bottom: 14px;
}

.team-social-list ul li:last-child {
    margin-bottom: 0;
}

.team-social-list ul li a {
    width: 36px;
    height: 36px;
    color: var(--primary-color);
    background-color: var(--secondary-color);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.4s ease-in-out;
}

.team-social-list ul li:hover a {
    background: var(--accent-secondary-color);
}

.team-social-list ul li a i {
    font-size: 18px;
    color: inherit;
}

.our-technology {
    background-image: url('../images/section-bg-image-1.png');
    background-repeat: no-repeat;
    background-position: top 120px left -150px;
    background-size: auto;
    padding: 120px 0;
}

.technology-image-box {
    position: relative;
    height: 100%;
}

.technology-image {
    height: 100%;
}

.technology-image figure {
    display: block;
    height: 100%;
    border-radius: 10px;
}

.technology-image img {
    height: 100%;
    width: 100%;
    aspect-ratio: 1 / 1.08;
    object-fit: cover;
    border-radius: 10px;
}

.working-hour-box {
    position: absolute;
    bottom: 30px;
    left: 30px;
    right: 30px;
    max-width: 250px;
    background-color: var(--white-color);
    border-radius: 10px;
    padding: 30px;
    z-index: 1;
}

.working-hour-box-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    z-index: 1;
}

.working-hour-box-header .icon-box {
    height: 30px;
    width: 30px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.working-hour-box:hover .working-hour-box-header .icon-box {
    background-position: right center;
}

.working-hour-box-title {
    width: calc(100% - 40px);
}

.working-hour-box-title h3 {
    font-size: 20px;
}

.working-hour-box-body {
    margin-top: 25px;
}

.working-hour-box-body ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.working-hour-box-body ul li {
    line-height: 1.5em;
    margin-bottom: 10px;
}

.working-hour-box-body ul li:last-child {
    margin-bottom: 0;
}

.technology-content {
    height: 100%;
    margin-left: 15px;
    align-content: center;
}

.technology-body {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.technology-counter-item {
    width: calc(33.33% - 20px);
    text-align: center;
}

.technology-counter-item .circle .progress_value {
    font-size: 20px;
    color: var(--primary-color);
    background: transparent;
}

.technology-counter-item h3 {
    font-size: 20px;
    margin-top: 30px;
}

.technology-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 40px;
    border-top: 1px solid var(--divider-color);
    margin-top: 40px;
    padding-top: 40px;
}

/************************************/

/*** 	18. Services Page css     ***/

/************************************/

.page-services {
    padding: 40px 0 90px;
}

.page-services .service-item {
    background-color: var(--white-color);
}

.page-services .service-item .service-item-content h2 {
    color: var(--primary-color);
}

.page-services .service-item .service-item-content p {
    color: var(--text-color);
}

.page-services .service-item .service-item-btn {
    border-color: var(--divider-color);
}

/************************************/

/*** 	19. Service Single css    ***/

/************************************/

.page-service-single {
    padding: 40px 0 120px;
}

.page-single-sidebar {
    position: sticky;
    top: 30px;
    margin-right: 15px;
}

.page-category-list {
    background-color: var(--secondary-color);
    border-radius: 10px;
    margin-bottom: 60px;
    overflow: hidden;
}

.page-category-list .page-category-list-title {
    font-size: 20px;
    line-height: 1.4em;
    color: var(--white-color);
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    padding: 17px 30px;
}

.page-category-list ul {
    list-style: none;
    margin: 0;
    padding: 30px;
}

.page-category-list ul li {
    font-weight: 400;
    line-height: 1.5em;
    border-bottom: 1px solid var(--divider-color);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.page-category-list ul li:last-child {
    border-bottom: none;
    margin: 0;
    padding: 0;
}

.page-category-list ul li a {
    position: relative;
    display: block;
    color: inherit;
    padding-right: 24px;
    transition: all 0.4s ease-in-out;
}

.page-category-list ul li a:hover {
    color: var(--primary-color);
}

.page-category-list ul li a::before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translate(-2px, -50%) rotate(45deg);
    right: 0;
    background: url('../images/arrow-primary.svg') no-repeat;
    background-position: center center;
    background-size: cover;
    width: 14px;
    height: 14px;
    transition: all 0.4s ease-in-out;
}

.page-category-list ul li a:hover::before {
    transform: translate(0, -50%) rotate(45deg);
}

.sidebar-cta-box {
    background: var(--secondary-color);
    border-radius: 10px;
    overflow: hidden;
}

.sidebar-cta-box-header {
    padding: 10px;
}

.sidebar-cta-image {
    margin-bottom: 10px;
}

.sidebar-cta-image figure {
    display: block;
    border-radius: 10px;
}

.sidebar-cta-image img {
    width: 100%;
    aspect-ratio: 1 / 0.6;
    object-fit: cover;
    border-radius: 10px;
    transition: all 0.6s ease-in-out;
}

.sidebar-cta-box:hover .sidebar-cta-image img {
    transform: scale(1.06);
}

.sidebar-cta-info-box {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    padding: 30px;
}

.sidebar-cta-info-box .icon-box {
    width: 40px;
    height: 40px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.sidebar-cta-box:hover .sidebar-cta-info-box .icon-box {
    background-position: right center;
}

.sidebar-cta-info-box .icon-box img {
    width: 100%;
    max-width: 24px;
}

.sidebar-cta-info-content {
    width: calc(100% - 55px);
}

.sidebar-cta-info-content h2 {
    font-size: 20px;
    margin-bottom: 15px;
}

.sidebar-cta-info-content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sidebar-cta-info-content ul li {
    margin-bottom: 10px;
}

.sidebar-cta-info-content ul li:last-child {
    margin-bottom: 0;
}

.sidebar-cta-contact-info a {
    border-radius: 0;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 17px 30px;
}

.sidebar-cta-contact-info a img {
    width: 100%;
    max-width: 26px;
}

.sidebar-cta-contact-info a::before {
    display: none;
}

.page-single-image {
    margin-bottom: 40px;
}

.page-single-image figure {
    display: block;
    border-radius: 10px;
}

.page-single-image img {
    width: 100%;
    aspect-ratio: 1 / 0.598;
    object-fit: cover;
    border-radius: 10px;
}

.service-entry {
    margin-bottom: 60px;
}

.service-entry p {
    margin-bottom: 20px;
}

.service-entry h2 {
    font-size: 48px;
    font-weight: 500;
    letter-spacing: -0.01em;
    margin-bottom: 20px;
}

.service-entry h2 span {
    font-weight: 400;
    font-family: var(--accent-font);
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in-out;
}

.service-entry h2:hover span {
    background-position: right center;
}

.service-entry h3 {
    font-size: 20px;
    line-height: 1.4em;
    font-weight: 700;
    margin-bottom: 5px;
}

.service-entry p:last-child,
.service-entry h2:last-child,
.service-entry h3:last-child {
    margin-bottom: 0;
}

.service-entry ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 15px 20px;
}

.service-entry ul li {
    position: relative;
    width: calc(50% - 10px);
    line-height: 1.5em;
    padding-left: 25px;
}

.service-entry ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.service-testing-box,
.service-process-box,
.service-why-choose-box {
    margin-top: 20px;
}

.service-testing-item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.service-testing-item {
    position: relative;
    width: calc(50% - 15px);
    align-content: end;
    border-radius: 10px;
    min-height: 200px;
    padding: 20px;
    overflow: hidden;
}

.service-testing-item-image {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.service-testing-item-image figure {
    position: relative;
    display: block;
    height: 100%;
}

.service-testing-item-image figure::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, transparent 54.5%, rgba(1, 58, 89, 0.80) 100%);
    z-index: 1;
}

.service-testing-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service-testing-item-content {
    position: relative;
    text-align: center;
    z-index: 1;
}

.service-testing-item-content p {
    font-weight: 700;
    color: var(--white-color);
}

.phase-faq-diagram,
.phase-faq-diagram-grid {
    margin-top: 20px;
}

.phase-faq-diagram a,
.phase-faq-diagram-card {
    display: block;
    text-decoration: none;
}

.phase-faq-diagram img,
.phase-faq-diagram-card img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    box-shadow: 0 18px 40px rgba(1, 58, 89, 0.14);
}

.phase-faq-diagram-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}

.phase-faq-diagram-title {
    display: inline-block;
    margin-bottom: 12px;
    font-size: 18px;
    font-weight: 600;
    color: var(--primary-color);
}

.service-entry .section-footer-text {
    margin-top: 40px;
}

.service-process-item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.service-process-item {
    width: calc(50% - 15px);
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    background: var(--secondary-color);
    border-radius: 10px;
    padding: 10px;
}

.service-process-no {
    position: relative;
    width: 80px;
    min-height: 80px;
    text-align: center;
    align-content: center;
    border-radius: 10px;
    overflow: hidden;
    padding: 10px;
}

.service-process-no figure {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.service-process-no figure::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--primary-color);
    opacity: 40%;
    width: 100%;
    height: 100%;
}

.service-process-no figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service-process-no h3 {
    position: relative;
    font-size: 26px;
    color: var(--white-color);
    z-index: 1;
}

.service-process-item-content {
    width: calc(100% - 95px);
    align-content: center;
}

.service-process-item-content h3 a {
    color: inherit;
}

.service-why-choose-list {
    margin: 40px 0;
}

/************************************/

/*** 	20. Blog Archive css      ***/

/************************************/

.page-blog {
    padding: 120px 0;
}

.page-pagination {
    margin-top: 30px;
    text-align: center;
}

.page-pagination ul {
    justify-content: center;
    padding: 0;
    margin: 0;
}

.page-pagination ul li a,
.page-pagination ul li span {
    display: flex;
    text-decoration: none;
    justify-content: center;
    align-items: center;
    background: var(--secondary-color);
    background-size: 200% auto;
    color: var(--primary-color);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin: 0 5px;
    font-weight: 600;
    line-height: 1em;
    transition: all 0.3s ease-in-out;
}

.page-pagination ul li.active a,
.page-pagination ul li a:hover {
    background: var(--primary-color);
    color: var(--white-color);
}

/************************************/

/*** 	21. Blog Single css       ***/

/************************************/

.page-single-post {
    padding: 120px 0;
}

.post-single-meta ol li {
    font-size: 18px;
    color: var(--white-color);
    margin-right: 15px;
}

.post-single-meta ol li:last-child {
    margin-right: 0;
}

.post-single-meta ol li i {
    font-size: 18px;
    color: var(--white-color);
    margin-right: 5px;
}

.post-image {
    position: relative;
    margin-bottom: 30px;
}

.post-image figure {
    display: block;
    border-radius: 10px;
    overflow: hidden;
}

.post-image img {
    width: 100%;
    aspect-ratio: 1 / 0.50;
    object-fit: cover;
    border-radius: 10px;
}

.post-content {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.post-entry {
    border-bottom: 1px solid var(--divider-color);
    padding-bottom: 30px;
    margin-bottom: 30px;
}

.post-entry:after {
    content: '';
    display: block;
    clear: both;
}

.post-entry a {
    color: var(--accent-color);
}

.post-entry h1,
.post-entry h2,
.post-entry h3,
.post-entry h4,
.post-entry h5,
.post-entry h6 {
    font-weight: 500;
    line-height: 1.2em;
    margin: 0 0 0.42em;
}

.post-entry h1 {
    font-size: 58px;
}

.post-entry h2 {
    font-size: 48px;
}

.post-entry h3 {
    font-size: 40px;
}

.post-entry h4 {
    font-size: 30px;
}

.post-entry h5 {
    font-size: 24px;
}

.post-entry h6 {
    font-size: 20px;
}

.post-entry p {
    margin-bottom: 20px;
}

.post-entry p:last-child {
    margin-bottom: 0;
}

.post-entry p strong {
    color: var(--primary-color);
    font-size: 18px;
    font-weight: 600;
}

.post-entry ol {
    margin: 0 0 30px;
}

.post-entry ul {
    padding: 0;
    margin: 20px 0 20px;
    padding-left: 20px;
}

.post-entry ol li,
.post-entry ul li {
    position: relative;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5em;
    color: var(--text-color);
    margin-bottom: 15px;
}

.post-entry ul li:last-child {
    margin-bottom: 0;
}

.post-entry ul ul,
.post-entry ul ol,
.post-entry ol ol,
.post-entry ol ul {
    margin-top: 20px;
    margin-bottom: 0;
}

.post-entry ul ul li:last-child,
.post-entry ul ol li:last-child,
.post-entry ol ol li:last-child,
.post-entry ol ul li:last-child {
    margin-bottom: 0;
}

.post-entry blockquote {
    background: var(--secondary-color) url('../images/icon-blockquote.svg');
    background-repeat: no-repeat;
    background-position: 30px 30px;
    background-size: 45px;
    border-radius: 10px;
    padding: 30px 30px 30px 90px;
    margin-bottom: 30px;
}

.post-entry blockquote p {
    font-family: var(--accent-font);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4em;
    color: var(--primary-color);
}

.post-entry blockquote p:last-child {
    margin-bottom: 0;
}

.tag-links {
    font-family: var(--accent-font);
    font-size: 20px;
    font-weight: 500;
    text-transform: capitalize;
    color: var(--primary-color);
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.post-tags .tag-links a {
    display: inline-block;
    font-family: var(--default-font);
    font-size: 16px;
    font-weight: 700;
    text-transform: capitalize;
    line-height: 1em;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 100px;
    color: var(--white-color);
    padding: 12px 20px;
    transition: all 0.4s ease-in-out;
}

.post-tags .tag-links a:hover {
    background-position: right center;
}

.post-social-sharing {
    text-align: right;
}

.post-social-sharing ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.post-social-sharing ul li {
    display: inline-block;
    margin-right: 10px;
}

.post-social-sharing ul li:last-child {
    margin-right: 0;
}

.post-social-sharing ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    color: var(--white-color);
    width: 40px;
    height: 40px;
    transition: all 0.4s ease-in-out;
}

.post-social-sharing ul li:hover a {
    background-position: right center;
}

.post-social-sharing ul li a i {
    font-size: 18px;
    color: inherit;
}

/************************************/

/*** 	 22. Case Study css       ***/

/************************************/

.page-case-study {
    padding: 120px 0 90px;
}

/************************************/

/***  23. Case Study Single css   ***/

/************************************/

.page-case-study-single {
    padding: 120px 0;
}

.case-study-category-item-list {
    padding: 30px;
}

.case-study-category-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    border-bottom: 1px solid var(--divider-color);
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.case-study-category-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.case-study-category-item .icon-box {
    position: relative;
    width: 40px;
    height: 40px;
    background: var(--bg-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.case-study-category-item .icon-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    border-radius: 100px;
    transform: scale(0);
    width: 100%;
    height: 100%;
    transition: all 0.4s ease-in-out;
    z-index: 0;
}

.case-study-category-item:hover .icon-box::before {
    transform: scale(1);
}

.case-study-category-item .icon-box img {
    position: relative;
    width: 100%;
    max-width: 20px;
    transition: all 0.4s ease-in-out;
    z-index: 1;
}

.case-study-category-item:hover .icon-box img {
    filter: brightness(0) invert(1);
}

.case-study-category-item-content {
    width: calc(100% - 55px);
}

.case-study-category-item-content h2 {
    font-size: 20px;
}

.case-study-category-item-content p {
    margin: 5px 0 0;
}

.case-study-entry {
    margin-bottom: 60px;
}

.case-study-entry p {
    margin-bottom: 20px;
}

.case-study-entry h2 {
    font-size: 48px;
    font-weight: 500;
    letter-spacing: -0.01em;
    margin-bottom: 20px;
}

.case-study-entry h2 span {
    font-weight: 400;
    font-family: var(--accent-font);
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in-out;
}

.case-study-entry h2:hover span {
    background-position: right center;
}

.case-study-entry h3 {
    font-size: 20px;
    line-height: 1.4em;
    font-weight: 700;
    margin-bottom: 20px;
}

.case-study-entry p:last-child,
.case-study-entry h2:last-child,
.case-study-entry h3:last-child {
    margin-bottom: 0;
}

.case-study-entry ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.case-study-entry ul li {
    position: relative;
    line-height: 1.5em;
    padding-left: 25px;
    margin-bottom: 15px;
}

.case-study-entry ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.case-study-overview-box,
.case-study-approach-box,
.case-study-review-box {
    margin-top: 60px;
}

.case-study-overview-item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.case-study-overview-item {
    width: calc(33.33% - 20px);
    background: var(--secondary-color);
    border-radius: 10px;
    padding: 10px;
}

.case-study-overview-image {
    margin-bottom: 10px;
}

.case-study-overview-image figure {
    display: block;
    border-radius: 10px;
}

.case-study-overview-image img {
    width: 100%;
    aspect-ratio: 1 / 0.587;
    object-fit: cover;
    border-radius: 10px;
    transition: all 0.6s ease-in-out;
}

.case-study-overview-item:hover .case-study-overview-image img {
    transform: scale(1.06);
}

.case-study-overview-item-content {
    padding: 10px;
}

.case-study-approach-image-content {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.case-study-approach-content,
.case-study-approach-image {
    width: calc(50% - 15px);
}

.case-study-approach-item {
    border-bottom: 1px solid var(--divider-color);
    margin-bottom: 30px;
    padding-bottom: 30px;
}

.case-study-approach-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.case-study-approach-item-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
}

.case-study-approach-item-header .icon-box {
    width: 50px;
    height: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.case-study-approach-item:hover .case-study-approach-item-header .icon-box {
    background-position: right center;
}

.case-study-approach-item-header .icon-box img {
    width: 100%;
    max-width: 24px;
}

.case-study-approach-item-title {
    width: calc(100% - 65px);
}

.case-study-approach-image figure {
    display: block;
    height: 100%;
    border-radius: 10px;
}

.case-study-approach-image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 0.86;
    object-fit: cover;
    border-radius: 10px;
}

.case-study-review-list {
    margin-top: 40px;
}

.case-study-review-item {
    position: relative;
    background: linear-gradient(90deg, var(--white-color) 0%, var(--bg-color) 100%);
    border-left: 4px solid var(--accent-secondary-color);
    border-radius: 10px;
    padding: 40px 40px 40px 90px;
    margin-top: 40px;
}

.case-study-review-item::before {
    content: '';
    position: absolute;
    top: 42px;
    left: 40px;
    background: url('../images/icon-blockquote.svg') no-repeat;
    background-position: center center;
    background-size: cover;
    width: 30px;
    height: 30px;
}

.case-study-review-item h3 {
    line-height: 1.6em;
}

/************************************/

/***      24. Team Page css       ***/

/************************************/

.page-team {
    padding: 120px 0 90px;
}

.page-team .team-item {
    background-color: var(--white-color);
}

.page-team .team-item .team-item-contant h2 {
    color: var(--primary-color);
}

.page-team .team-item .team-item-contant p {
    color: var(--text-color);
}

.page-team .team-item .team-social-btn a {
    border-color: var(--white-color);
}

/************************************/

/***    25. Team Single css       ***/

/************************************/

.page-team-single {
    padding: 120px 0;
}

.team-sidebar-box {
    background-color: var(--white-color);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 60px;
}

.team-single-image figure {
    display: block;
}

.team-single-image img {
    width: 100%;
    aspect-ratio: 1 / 1.0178;
    object-fit: cover;
}

.team-sidebar-box-body {
    padding: 30px;
}

.team-sidebar-contact-list h2 {
    font-size: 30px;
    font-weight: 500;
    border-bottom: 1px solid var(--divider-color);
    margin-bottom: 30px;
    padding-bottom: 30px;
}

.team-sidebar-contact-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.team-sidebar-contact-list ul li {
    width: 100%;
    line-height: 1.5em;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    justify-content: space-between;
    margin-bottom: 25px;
}

.team-sidebar-contact-list ul li:last-child {
    margin-bottom: 0;
}

.team-sidebar-contact-list ul li span {
    color: var(--primary-color);
    font-weight: 500;
}

.team-member-skill-list {
    border-top: 1px solid var(--divider-color);
    margin-top: 30px;
    padding-top: 30px;
}

.team-member-skill-list h2 {
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 30px;
}

.team-skills-list .skills-progress-bar .skill-data .skill-title,
.team-skills-list .skills-progress-bar .skill-data .skill-no {
    font-size: 16px;
    color: var(--text-color);
}

.team-member-about,
.team-member-key-points,
.team-member-experience {
    margin-bottom: 60px;
}

.team-about-item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.team-about-item {
    width: calc(33.33% - 20px);
    background-color: var(--white-color);
    border-radius: 10px;
    padding: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.team-about-item .icon-box {
    height: 50px;
    width: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.team-about-item:hover .icon-box {
    background-position: right center;
}

.team-about-item .icon-box img {
    width: 100%;
    max-width: 24px;
}

.team-about-item-content {
    width: calc(100% - 65px);
}

.team-about-item-content h3 {
    font-size: 20px;
}

.team-about-item-content p {
    margin: 5px 0 0;
}

.team-member-key-points-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 15px 20px;
}

.team-member-key-points-list ul li {
    position: relative;
    width: calc(50% - 10px);
    line-height: 1.5em;
    padding-left: 25px;
}

.team-member-key-points-list ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: linear-gradient(270deg, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.team-member-experience-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.team-member-experience-list .team-member-experience-box:nth-child(even) {
    flex-direction: row-reverse;
}

.team-member-experience-box {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.team-member-experience-image,
.team-member-experience-box-content {
    width: calc(50% - 15px);
    align-content: center;
}

.team-member-experience-image figure {
    display: block;
    height: 100%;
    border-radius: 10px;
}

.team-member-experience-image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 0.602;
    object-fit: cover;
    border-radius: 10px;
}

.team-member-experience-box-content {
    background-color: var(--white-color);
    border-radius: 10px;
    padding: 30px;
}

.team-member-experience-box-header {
    margin-bottom: 30px;
}

.team-member-experience-box-header p {
    display: inline-block;
    color: var(--primary-color);
    background-color: var(--bg-color);
    border-radius: 100px;
    font-weight: 600;
    line-height: normal;
    padding: 7px 15px;
    margin: 0;
}

.team-member-experience-box-body {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.team-member-experience-box-body .icon-box {
    height: 40px;
    width: 40px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.team-member-experience-box-content:hover .team-member-experience-box-body .icon-box {
    background-position: right center;
}

.team-member-experience-box-body .icon-box img {
    width: 100%;
    max-width: 20px;
}

.team-member-experience-box-body-content {
    width: calc(100% - 55px);
}

.team-member-experience-box-body-content h3 {
    font-size: 20px;
}

.team-member-experience-box-footer {
    border-top: 1px solid var(--divider-color);
    margin-top: 20px;
    padding-top: 20px;
}

.team-member-experience-box-footer p {
    margin: 0;
}

/************************************/

/***    26.  Pricing Page css     ***/

/************************************/

.page-pricing {
    padding: 120px 0;
}

/************************************/

/***  27. Testimonials Page  css  ***/

/************************************/

.page-testimonials {
    padding: 120px 0 90px;
}

.page-testimonials .testimonial-item {
    background-color: var(--white-color);
    height: calc(100% - 30px);
    margin-bottom: 30px;
}

/************************************/

/***   28.  Image Gallery css     ***/

/************************************/

.page-gallery {
    padding: 120px 0 90px;
}

.page-gallery-box .photo-gallery {
    height: calc(100% - 30px);
    margin-bottom: 30px;
}

.page-gallery-box .photo-gallery a {
    cursor: none;
}

.page-gallery-box .photo-gallery figure {
    display: block;
    border-radius: 10px;
}

.page-gallery-box .photo-gallery img {
    width: 100%;
    aspect-ratio: 1 / 0.83;
    object-fit: cover;
    border-radius: 10px;
}

/************************************/

/***    29. Video Gallery css     ***/

/************************************/

.page-video-gallery {
    padding: 120px 0 90px;
}

.video-gallery-image {
    height: calc(100% - 30px);
    margin-bottom: 30px;
    overflow: hidden;
}

.video-gallery-image a {
    position: relative;
    display: block;
    cursor: none;
}

.video-gallery-image a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--primary-color);
    border-radius: 10px;
    opacity: 0%;
    visibility: hidden;
    width: 100%;
    height: 100%;
    z-index: 1;
    transform: scale(0);
    transition: all 0.4s ease-in-out;
}

.video-gallery-image:hover a::before {
    opacity: 50%;
    visibility: visible;
    transform: scale(1);
}

.video-gallery-image a::after {
    content: '\f04b';
    font-family: 'FontAwesome';
    position: absolute;
    top: 50%;
    left: 50%;
    right: 0;
    transform: translate(-50%, -50%);
    font-size: 20px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    color: var(--white-color);
    border-radius: 50%;
    height: 60px;
    width: 60px;
    cursor: none;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease-in-out;
    z-index: 1;
}

.video-gallery-image:hover a::after {
    opacity: 1;
    visibility: visible;
}

.video-gallery-image img {
    width: 100%;
    aspect-ratio: 1 / 0.83;
    object-fit: cover;
    border-radius: 10px;
}

/************************************/

/***     30. FAQ's Page css       ***/

/************************************/

.page-faqs {
    padding: 120px 0;
}

.page-faqs .page-single-faqs {
    margin-bottom: 60px;
}

.page-faqs .page-single-faqs:last-child {
    margin-bottom: 0px;
}

/************************************/

/***    31. Contact Us Page css   ***/

/************************************/

.page-contact-us {
    padding: 40px 0 60px;
}

.contact-us-contant {
    margin-right: 15px;
}

.contact-info-list {
    padding-top: 40px;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.contact-info-item {
    width: calc(50% - 15px);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.contact-info-item .icon-box {
    position: relative;
    height: 50px;
    width: 50px;
    background-color: var(--secondary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-info-item .icon-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    border-radius: 100px;
    transform: scale(0);
    width: 100%;
    height: 100%;
    transition: all 0.4s ease-in-out;
    z-index: 0;
}

.contact-info-item:hover .icon-box::before {
    transform: scale(1);
}

.contact-info-item .icon-box img {
    position: relative;
    width: 100%;
    max-width: 24px;
    transition: all 0.4s ease-in-out;
    z-index: 1;
}

.contact-info-item:hover .icon-box img {
    filter: brightness(0) invert(1);
}

.contact-info-item-content {
    width: calc(100% - 65px);
    min-width: 0;
}

.contact-info-item-content p {
    margin: 0 0 5px;
}

.contact-info-item-content h3 {
    font-size: 20px;
    transition: all 0.4s ease-in-out;
    overflow-wrap: break-word;
    word-break: break-word;
}

.contact-info-item-content h3 a {
    color: inherit;
    transition: all 0.4s ease-in-out;
}

.contact-info-item .contact-info-item-content h3 a:hover {
    color: var(--accent-secondary-color);
}

.call-support-box {
    background: linear-gradient(90deg, var(--secondary-color) 0%, var(--bg-color) 100%);
    border-left: 4px solid var(--accent-secondary-color);
    border-radius: 20px;
    margin-top: 40px;
    padding: 30px;
}

.call-support-box p {
    margin: 0 0 15px;
}

.call-support-box h3 {
    font-size: 30px;
    color: var(--primary-color);
}

.call-support-box h3 a {
    color: inherit;
    transition: all 0.3s ease-in-out;
}

.call-support-box h3 a:hover {
    color: var(--accent-secondary-color);
}

.contact-us-form {
    background: var(--secondary-color);
    border-radius: 10px;
    padding: 50px;
}

.contact-form .form-control {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5em;
    color: var(--primary-color);
    background: var(--bg-color);
    border: none;
    border-radius: 10px;
    padding: 18px 20px;
    box-shadow: none;
    outline: none;
}

.contact-form .form-control::placeholder {
    color: var(--text-color);
}

.google-map {
    padding: 60px 0 120px;
}

.google-map-iframe,
.google-map-iframe iframe {
    width: 100%;
    height: 610px;
    border-radius: 10px;
}

/************************************/

/***  32.  Book Appointment css   ***/

/************************************/

.page-book-appointment {
    padding: 120px 0;
}

.page-book-appointment .our-appointment-content .section-footer-text {
    border-color: var(--divider-color);
}

.page-book-appointment .appointment-form {
    background-color: var(--white-color);
}

.page-book-appointment .appointment-form .form-control {
    background-color: var(--bg-color);
    color: var(--text-color);
}

.page-book-appointment .appointment-form .form-control::placeholder {
    color: var(--text-color);
}

/************************************/

/***    33. 404 Error Page css    ***/

/************************************/

.error-page {
    padding: 120px 0;
}

.error-page-image {
    text-align: center;
    margin-bottom: 30px;
}

.error-page-image img {
    width: 100%;
    max-width: 650px;
}

.error-page-content {
    text-align: center;
}

.error-page-content .section-title {
    margin-bottom: 15px;
}

/************************************/

/***      34. Responsive css      ***/

/************************************/

@media only screen and (max-width: 1850px) {
    .bg-section {
        width: calc(100% - 30px);
    }
}

@media only screen and (max-width: 1024px) {
    .main-menu ul li {
        margin: 0;
    }
    .section-content-btn .section-btn {
        margin-top: 20px;
    }
    .section-title-content {
        margin-top: 10px;
    }
    .section-btn {
        text-align: left;
        margin-top: 15px;
    }
    .hero::before {
        background: var(--primary-color);
        opacity: 50%;
    }
    .about-us-image-box {
        max-width: 740px;
        margin: 0 auto 30px;
    }
    .about-us-content {
        margin: 0;
        height: auto;
    }
    .service-item {
        min-height: initial;
        gap: 30px;
        padding: 30px;
    }
    .service-item-header .icon-box {
        margin-bottom: 30px;
    }
    .service-item-btn {
        padding-top: 30px;
    }
    .what-we-do-content-box {
        margin: 0 0 30px;
    }
    .what-we-do-images-box {
        max-width: 600px;
        margin: 0 auto;
    }
    .what-we-do-image {
        margin-right: auto;
    }
    .why-choose-us-boxes,
    .why-choose-us-box {
        gap: 20px;
    }
    .why-choose-us-box.box-1,
    .why-choose-us-box.box-2,
    .why-choose-us-item,
    .why-choose-us-box.box-3 .why-choose-us-image {
        width: calc(50% - 10px);
    }
    .why-choose-us-box.box-1 .why-choose-us-image img {
        aspect-ratio: 1 / 0.69;
    }
    .why-choose-counter-box,
    .why-choose-skills-list {
        padding: 20px;
    }
    .why-choose-us-box.box-3 {
        width: 100%;
        flex-direction: initial;
    }
    .why-choose-us-item {
        padding: 30px;
        gap: 30px;
    }
    .case-study-item-image img {
        aspect-ratio: 1 / 1.1;
    }
    .feature-item {
        min-height: auto;
    }
    .cta-box-content {
        padding: 20px;
    }
    .pricing-item {
        padding: 30px;
    }
    .testimonial-item {
        min-height: 340px;
        gap: 30px;
        padding: 30px;
    }
    .testimonial-slider .swiper-wrapper .testimonial-item {
        transform: scale(1);
    }
    .testimonial-item-author {
        padding-top: 30px;
    }
    .faq-image-box {
        height: auto;
        margin: 0 auto 30px;
        max-width: 740px;
    }
    .faq-image,
    .faq-image figure,
    .faq-image figure img {
        height: auto;
    }
    .faq-image figure img {
        aspect-ratio: 1 / 1.05;
    }
    .faq-cta-box {
        min-height: initial;
    }
    .our-appointment-content {
        height: auto;
        margin-bottom: 40px;
    }
    .about-footer {
        max-width: 100%;
        margin-bottom: 30px;
    }
    .about-footer-content {
        margin-top: 15px;
    }
    .footer-social-links {
        margin-top: 20px;
    }
    .footer-links-box {
        margin: 0;
    }
    .footer-links h2 {
        margin-bottom: 20px;
    }
    .footer-links ul li {
        margin-bottom: 10px;
    }
    .footer-contact-info-list {
        margin: 0;
        padding-top: 30px;
    }
    .footer-copyright-text {
        padding: 30px 0;
        margin-top: 30px;
    }
    .our-approach-box {
        gap: 30px 0;
    }
    .approach-item-content {
        width: 100%;
        padding: 0;
    }
    .our-approach-box .approach-item:nth-child(even) .approach-item-content {
        padding: 0;
    }
    .approach-item-image {
        width: 100%;
    }
    .approach-item-image img,
    .approach-item-image figure {
        height: auto;
    }
    .apprach-body-item,
    .approach-item-content .section-title {
        margin-bottom: 30px;
        padding-bottom: 30px;
    }
    .solutions-item {
        min-height: auto;
        gap: 30px;
        padding: 30px;
    }
    .solutions-item-body {
        padding-top: 30px;
    }
    .team-item-image figure img {
        aspect-ratio: 1 / 0.94;
    }
    .technology-image-box,
    .technology-image,
    .technology-image figure,
    .technology-image img {
        height: auto;
    }
    .technology-image-box {
        max-width: 740px;
        margin: 0 auto 30px;
    }
    .technology-image img {
        aspect-ratio: 1 / 0.95;
    }
    .technology-content {
        height: auto;
        margin: 0;
    }
    .page-single-sidebar {
        margin: 0;
    }
    .page-category-list .page-category-list-title {
        padding: 15px 20px;
    }
    .page-category-list ul {
        padding: 20px;
    }
    .page-category-list ul li a::before {
        width: 12px;
        height: 12px;
    }
    .sidebar-cta-info-box {
        gap: 10px;
        padding: 20px 10px;
    }
    .sidebar-cta-info-content {
        width: calc(100% - 50px);
    }
    .sidebar-cta-contact-info a {
        padding: 15px 20px;
    }
    .sidebar-cta-contact-info a img {
        max-width: 22px;
    }
    .page-single-image {
        margin-bottom: 30px;
    }
    .service-entry {
        margin-bottom: 40px;
    }
    .service-testing-box,
    .service-process-box,
    .service-why-choose-box {
        margin-top: 40px;
    }
    .service-testing-item-list,
    .service-entry .section-footer-text {
        margin-top: 30px;
    }
    .service-testing-item-list {
        gap: 20px;
    }
    .service-testing-item {
        width: calc(50% - 10px);
    }
    .phase-reference-gallery .service-testing-item-content h3 {
        font-size: 20px;
    }
    .service-process-item-list {
        gap: 20px;
        margin-top: 30px;
    }
    .service-process-item {
        width: calc(50% - 10px);
    }
    .service-why-choose-list {
        margin: 30px 0;
    }
    .case-study-category-item-list {
        padding: 20px;
    }
    .case-study-entry {
        margin-bottom: 40px;
    }
    .case-study-overview-box,
    .case-study-approach-box,
    .case-study-review-box {
        margin-top: 40px;
    }
    .case-study-overview-item-list {
        margin-top: 30px;
    }
    .case-study-overview-item {
        width: calc(50% - 15px);
    }
    .case-study-approach-image-content {
        gap: 20px;
        margin-top: 30px;
    }
    .case-study-approach-content,
    .case-study-approach-image {
        width: calc(50% - 10px);
    }
    .case-study-approach-item {
        margin-bottom: 20px;
        padding-bottom: 20px;
    }
    .case-study-approach-item-header {
        margin-bottom: 15px;
    }
    .case-study-review-list {
        margin-top: 30px;
    }
    .case-study-review-item {
        padding: 25px 25px 25px 75px;
        margin-top: 30px;
    }
    .case-study-review-item::before {
        top: 30px;
        left: 30px;
    }
    .team-sidebar-box-body {
        padding: 20px;
    }
    .team-sidebar-contact-list h2 {
        margin-bottom: 20px;
        padding-bottom: 20px;
    }
    .team-member-skill-list {
        margin-top: 20px;
        padding-top: 20px;
    }
    .team-member-skill-list h2 {
        margin-bottom: 20px;
    }
    .team-member-about,
    .team-member-key-points,
    .team-member-experience {
        margin-bottom: 40px;
    }
    .team-about-item {
        width: calc(50% - 15px);
        padding: 20px;
    }
    .team-member-experience-list,
    .team-member-experience-box {
        gap: 20px;
    }
    .team-member-experience-image,
    .team-member-experience-box-content {
        width: calc(50% - 10px);
    }
    .team-member-experience-box-content {
        padding: 20px;
    }
    .team-member-experience-box-body-content h3 {
        font-size: 18px;
    }
    .contact-us-contant {
        margin: 0 0 30px;
    }
    .contact-us-form {
        padding: 30px;
    }
}

@media only screen and (max-width: 991px) {
    .btn-default {
        padding: 15px 50px 15px 15px;
    }
    .btn-default::before {
        width: 36px;
        height: 36px;
        right: 5px;
        background-size: 12px auto;
    }
    header.main-header {
        top: 0px;
        right: 0px;
        left: 0px;
    }
    header.main-header .header-sticky {
        width: 100%;
        border-radius: 0;
    }
    header.main-header .header-sticky.active {
        width: 100%;
        border-radius: 0;
        top: 0;
        left: 0;
        right: 0;
        border-left: none;
        border-right: none;
        border-top: none;
    }
    .navbar {
        padding: 20px 0;
    }
    .responsive-menu,
    .navbar-toggle {
        display: block;
    }
    .navbar-brand-text {
        display: none;
    }
    .slicknav_nav li,
    .slicknav_nav ul {
        display: block;
    }
    .header-btn {
        display: none;
    }
    .bg-section {
        width: 100%;
        border-radius: 0;
        margin: 0;
    }
    .bg-section .container-fluid {
        padding: 0 15px;
    }
    .section-row {
        margin-bottom: 40px;
    }
    .section-title {
        margin-bottom: 30px;
    }
    .section-title .section-sub-title {
        margin-bottom: 10px;
    }
    .section-title h1 {
        font-size: 46px;
    }
    .section-title h2 {
        font-size: 38px;
    }
    .section-title p {
        margin-top: 10px;
    }
    .hero {
        border-radius: 0;
        padding: 150px 0 60px;
        margin: 0;
    }
    .hero-content-list ul li::before {
        font-size: 16px;
    }
    .hero-content-body {
        padding-top: 30px;
        margin-top: 30px;
    }
    .hero-content-body {
        gap: 25px;
    }
    .about-us {
        padding: 60px 0;
    }
    .about-us-flash-image img {
        max-width: 100px;
    }
    .about-us-image img {
        aspect-ratio: 1 / 1.35;
    }
    .about-us-body-item .icon-box {
        width: 50px;
        height: 50px;
        margin-bottom: 20px;
    }
    .about-us-body-item .icon-box img {
        max-width: 24px;
    }
    .about-us-footer {
        margin-top: 30px;
        padding-top: 30px;
    }
    .our-services {
        padding: 60px 0;
    }
    .service-item-header .icon-box {
        height: 50px;
        width: 50px;
    }
    .service-item-header .icon-box img {
        max-width: 24px;
    }
    .section-footer-text {
        margin-top: 10px;
    }
    .what-we-do {
        padding: 60px 0;
        background-position: center left -100px;
        background-size: 300px auto;
    }
    .skills-progress-bar .skill-data .skill-title,
    .skills-progress-bar .skill-data .skill-no {
        font-size: 18px;
    }
    .what-we-do-counter-boxes {
        margin-top: 30px;
    }
    .what-we-do-counter-item {
        padding: 20px;
    }
    .what-we-counter-item-content h2 {
        font-size: 34px;
    }
    .what-we-do-footer {
        margin-top: 30px;
        padding-top: 30px;
    }
    .why-choose-us {
        padding: 60px 0;
    }
    .why-choose-item-content h2 {
        font-size: 34px;
    }
    .why-choose-us .section-footer-text {
        margin-top: 40px;
    }
    .our-case-study {
        padding: 60px 0;
    }
    .case-study-item-content {
        right: 20px;
        bottom: 20px;
        left: 20px;
    }
    .case-study-item-content ul {
        margin-bottom: 10px;
    }
    .our-features {
        padding: 60px 0;
        margin: 0;
    }
    .feature-item-list {
        gap: 30px;
    }
    .feature-item {
        width: calc(33.3% - 20px);
    }
    .feature-item::before {
        right: -15px;
    }
    .feature-item .icon-box {
        width: 50px;
        height: 50px;
    }
    .feature-item .icon-box img {
        max-width: 24px;
    }
    .feature-item-content h3 {
        font-size: 18px;
    }
    .cta-box {
        margin: 60px 0 0;
    }
    .cta-box-image,
    .cta-box-content {
        width: 100%;
    }
    .cta-box-content {
        padding: 10px;
    }
    .cta-box-footer {
        padding-top: 30px;
    }
    .our-pricing {
        background-position: top 60px left -100px;
        background-size: 300px auto;
        padding: 60px 0;
    }
    .pricing-item-contant {
        margin-bottom: 20px;
    }
    .pricing-item-price h2 {
        font-size: 38px;
    }
    .pricing-item-body {
        padding-top: 20px;
        margin-top: 20px;
    }
    .pricing-item-list h3 {
        margin-bottom: 20px;
    }
    .pricing-item-list ul li {
        margin-bottom: 10px;
    }
    .pricing-item-list ul li::before {
        font-size: 16px;
    }
    .pricing-item-btn {
        margin-top: 30px;
    }
    .pricing-item.highlighted-box::after {
        font-size: 12px;
        top: 21px;
        right: -50px;
        width: 155px;
        height: 27px;
    }
    .pricing-benefit-list {
        margin-top: 10px;
    }
    .pricing-benefit-list ul {
        gap: 15px 30px;
    }
    .pricing-benefit-list ul li img {
        max-width: 18px;
    }
    .our-testimonials {
        background-size: 100% auto;
        padding: 60px 0;
    }
    .our-testimonials .section-footer-text {
        margin-top: 40px;
    }
    .our-faqs {
        padding: 60px 0;
    }
    .faq-cta-box {
        padding: 20px;
    }
    .faq-cta-header .icon-box img {
        max-width: 45px;
    }
    .faq-accordion .accordion-item {
        margin-bottom: 20px;
    }
    .faq-accordion .accordion-header .accordion-button {
        padding: 15px 45px 15px 15px;
    }
    .faq-accordion .accordion-item .accordion-button::after,
    .faq-accordion .accordion-item .accordion-button.collapsed::after {
        font-size: 20px;
        right: 15px;
    }
    .faq-accordion .accordion-item .accordion-body {
        padding: 15px;
    }
    .our-appointment {
        padding: 60px 0;
    }
    .our-appointment-content {
        margin-bottom: 30px;
    }
    .our-appointment-content .section-footer-text {
        padding-top: 30px;
    }
    .appointment-form {
        padding: 30px;
    }
    .appointment-form .form-control {
        padding: 12px 15px;
    }
    .appointment-form .form-control.form-select {
        padding: 12px 35px 12px 15px;
    }
    .appointment-form-btn {
        margin-top: 0;
    }
    .appointment-form-btn .btn-default {
        padding: 15px;
    }
    .our-blog {
        padding: 60px 0 30px;
        background-position: top 60px left -100px;
        background-size: 300px auto;
    }
    .post-featured-image {
        margin-bottom: 15px;
    }
    .post-item-body {
        padding: 0;
    }
    .post-item-content {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }
    .main-footer {
        padding: 60px 0 0;
    }
    .footer-branch-image img {
        max-width: 250px;
    }
    .page-header {
        padding: 170px 0 80px;
        margin: 0;
        border-radius: 0;
    }
    .page-header-box h1 {
        font-size: 48px;
        margin-bottom: 10px;
    }
    .our-approach {
        padding: 60px 0;
    }
    .apprach-body-item p {
        margin-top: 10px;
    }
    .apprach-body-item ul {
        margin-top: 20px;
    }
    .apprach-body-item ul li::before {
        font-size: 16px;
    }
    .our-solutions {
        background-position: top 60px left -100px;
        background-size: 300px auto;
        padding: 60px 0;
    }
    .solutions-item .icon-box {
        height: 50px;
        width: 50px;
        margin-bottom: 20px;
    }
    .solutions-item .icon-box img {
        max-width: 24px;
    }
    .solutions-item-counter-box h3 {
        font-size: 34px;
    }
    .our-team {
        padding: 60px 0;
    }
    .team-item-body {
        padding: 10px;
    }
    .team-social-list-box {
        margin-top: -42px;
    }
    .our-technology {
        background-position: top 60px left -100px;
        background-size: 300px auto;
        padding: 60px 0;
    }
    .working-hour-box {
        padding: 20px;
        bottom: 20px;
        left: 20px;
    }
    .technology-counter-item h3 {
        margin-top: 15px;
    }
    .technology-footer {
        margin-top: 30px;
        padding-top: 30px;
        gap: 20px 30px;
    }
    .page-services {
        padding: 60px 0 30px;
    }
    .page-service-single {
        padding: 60px 0;
    }
    .page-single-sidebar {
        position: initial;
        margin-bottom: 30px;
    }
    .page-category-list {
        margin-bottom: 30px;
    }
    .service-entry p {
        margin-bottom: 15px;
    }
    .phase-reference-gallery .service-testing-item {
        width: 100%;
        min-height: 220px;
    }
    .phase-reference-gallery .service-testing-item-content h3 {
        font-size: 18px;
    }
    .service-entry h2 {
        font-size: 38px;
        margin-bottom: 15px;
    }
    .service-entry ul li::before {
        font-size: 16px;
    }
    .page-blog {
        padding: 60px 0;
    }
    .page-pagination {
        margin-top: 10px;
    }
    .page-single-post {
        padding: 60px 0;
    }
    .post-image {
        margin-bottom: 20px;
    }
    .post-entry h2 {
        font-size: 38px;
    }
    .post-entry p {
        margin-bottom: 15px;
    }
    .post-entry ol li,
    .post-entry ul li {
        font-size: 16px;
        margin-bottom: 10px;
    }
    .post-entry blockquote {
        background-position: 20px 20px;
        background-size: 40px;
        padding: 20px 20px 20px 70px;
        margin-bottom: 20px;
    }
    .post-entry blockquote p {
        font-size: 18px;
    }
    .post-tags {
        margin-bottom: 20px;
    }
    .post-tags .tag-links a {
        padding: 12px 15px;
    }
    .post-social-sharing ul {
        text-align: left;
    }
    .page-case-study {
        padding: 60px 0 30px;
    }
    .page-case-study-single {
        padding: 60px 0;
    }
    .case-study-category-item {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }
    .case-study-entry p {
        margin-bottom: 15px;
    }
    .case-study-entry h2 {
        font-size: 38px;
        margin-bottom: 15px;
    }
    .case-study-entry ul li {
        margin-bottom: 10px;
    }
    .case-study-entry ul li::before {
        font-size: 16px;
    }
    .case-study-review-item h3 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .page-team {
        padding: 60px 0 30px;
    }
    .page-team-single {
        padding: 60px 0;
    }
    .team-single-image img {
        aspect-ratio: 1 / 0.8;
    }
    .team-sidebar-contact-list h2,
    .team-member-skill-list h2 {
        font-size: 26px;
    }
    .team-sidebar-contact-list ul li {
        margin-bottom: 15px;
    }
    .team-about-item-list {
        gap: 20px;
    }
    .team-about-item {
        width: calc(33.33% - 13.33px);
        padding: 20px;
    }
    .team-member-key-points-list ul li::before {
        font-size: 16px;
    }
    .team-member-experience-box-header {
        margin-bottom: 20px;
    }
    .team-member-experience-box-footer {
        margin-top: 15px;
        padding-top: 15px;
    }
    .team-member-experience-box-header p {
        padding: 5px 12px;
    }
    .page-pricing {
        padding: 60px 0;
    }
    .page-testimonials {
        padding: 60px 0 30px;
    }
    .page-gallery {
        padding: 60px 0 30px;
    }
    .page-video-gallery {
        padding: 60px 0 30px;
    }
    .page-faqs {
        padding: 60px 0;
    }
    .page-faqs-catagery .page-single-faqs {
        margin-bottom: 40px;
    }
    .page-contact-us {
        padding: 60px 0 30px;
    }
    .contact-info-list {
        padding-top: 30px;
    }
    .call-support-box {
        padding: 20px;
        margin-top: 30px;
    }
    .call-support-box p {
        margin: 0 0 10px;
    }
    .call-support-box h3 {
        font-size: 25px;
    }
    .contact-form .form-control {
        padding: 13px 15px;
    }
    .google-map {
        padding: 30px 0 60px;
    }
    .google-map-iframe,
    .google-map-iframe iframe {
        height: 500px;
    }
    .page-book-appointment {
        padding: 60px 0;
    }
    .error-page {
        padding: 60px 0px;
    }
    .error-page-image {
        margin-bottom: 20px;
    }
    .error-page-image img {
        max-width: 500px;
    }
}

@media only screen and (max-width: 767px) {
    .section-row {
        margin-bottom: 30px;
    }
    .section-title h1 {
        font-size: 28px;
    }
    .section-title h2 {
        font-size: 26px;
    }
    .hero-content-list ul {
        gap: 10px;
    }
    .hero-content-list ul li {
        width: 100%;
    }
    .about-us-image img {
        aspect-ratio: 1 / 1.542;
    }
    .service-item {
        gap: 20px;
        padding: 20px;
    }
    .service-item-header .icon-box {
        margin-bottom: 20px;
    }
    .service-item-btn {
        padding-top: 20px;
    }
    .about-us-flash-image img {
        max-width: 60px;
    }
    .about-us-video-box {
        gap: 10px;
        margin-right: -100px;
    }
    .emergency-support-title {
        width: 11%;
        padding: 0;
    }
    .emergency-support-title h2 {
        font-size: 16px;
    }
    .about-us-video {
        width: calc(89% - 10px);
    }
    .about-us-video figure img {
        aspect-ratio: 1 / 1.32;
    }
    .about-us-body {
        gap: 30px 15px;
    }
    .about-us-body-item {
        width: calc(50% - 7.5px);
    }
    .about-us-body-item-content h3 {
        font-size: 18px;
    }
    .about-us-footer {
        gap: 20px;
    }
    .about-us-author-content h3 {
        font-size: 18px;
    }
    .service-item-content h2 {
        font-size: 18px;
    }
    .satisfy-client-image img {
        max-width: 40px;
    }
    .satisfy-client-image.add-more {
        width: 42px;
        height: 42px;
    }
    .skills-progress-bar {
        margin-bottom: 20px;
    }
    .skills-progress-bar .skill-data {
        margin-bottom: 10px;
    }
    .skills-progress-bar .skill-data .skill-title,
    .skills-progress-bar .skill-data .skill-no {
        font-size: 16px;
    }
    .what-we-do-counter-boxes {
        gap: 15px;
    }
    .what-we-do-counter-item {
        width: calc(50% - 7.5px);
        padding: 15px;
    }
    .what-we-counter-item-content {
        width: 100%;
    }
    .what-we-counter-item-content h2 {
        font-size: 28px;
    }
    .what-we-do-footer {
        gap: 20px;
    }
    .what-we-do-contact-box {
        gap: 10px;
    }
    .what-we-do-contact-box .icon-box {
        width: 44px;
        height: 44px;
    }
    .what-we-do-contact-box .icon-box img {
        max-width: 20px;
    }
    .what-we-contact-content {
        width: calc(100% - 54px);
    }
    .what-we-contact-content h3 {
        font-size: 18px;
    }
    .what-we-do-image::before {
        width: 330px;
        height: 330px;
    }
    .what-we-do-author-box {
        bottom: 30px;
        left: 50px;
        padding: 15px;
    }
    .what-we-author-content h3 {
        font-size: 18px;
    }
    .why-choose-us-box.box-1,
    .why-choose-us-box.box-2,
    .why-choose-us-box.box-3,
    .why-choose-us-item,
    .why-choose-us-box.box-3 .why-choose-us-image {
        width: 100%;
    }
    .why-choose-us-box.box-3 {
        flex-direction: column;
    }
    .why-choose-us-image,
    .why-choose-us-image figure,
    .why-choose-us-image img {
        height: auto;
    }
    .why-choose-counter-box {
        padding: 15px;
    }
    .why-choose-counter-content h2 {
        font-size: 18px;
    }
    .why-choose-skills-list {
        padding: 10px;
    }
    .why-choose-us-item {
        padding: 20px;
        gap: 20px;
    }
    .why-choose-item-content h2 {
        font-size: 28px;
    }
    .case-study-item-content h2 {
        font-size: 18px;
    }
    .feature-item-list {
        gap: 40px;
    }
    .feature-item {
        width: 100%;
        gap: 20px;
    }
    .feature-item::before {
        width: 100%;
        height: 1px;
        top: auto;
        bottom: -20px;
        left: 0;
        right: 0;
    }
    .cta-box-footer {
        gap: 20px;
    }
    .pricing-item {
        padding: 20px;
    }
    .pricing-item-header .pricing-item-title h2 {
        font-size: 18px;
    }
    .pricing-item-price h2 {
        font-size: 26px;
    }
    .pricing-item-price h2 sub {
        font-size: 14px;
    }
    .pricing-item-list h3 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .pricing-benefit-list ul {
        gap: 10px 20px;
    }
    .pricing-benefit-list ul li {
        font-size: 14px;
    }
    .pricing-benefit-list ul li img {
        max-width: 16px;
        margin-right: 5px;
    }
    .testimonial-item {
        min-height: initial;
        padding: 20px;
    }
    .testimonial-item-content p {
        font-size: 16px;
    }
    .testimonial-author-content h2 {
        font-size: 18px;
    }
    .faq-image figure img {
        aspect-ratio: 1 / 1.16;
    }
    .faq-cta-box {
        max-width: 240px;
        gap: 20px;
        left: 10px;
        bottom: 10px;
        padding: 15px;
    }
    .faq-cta-title {
        margin-top: 15px;
    }
    .faq-cta-title h2 {
        font-size: 16px;
    }
    .faq-cta-contant h3 {
        font-size: 18px;
    }
    .faq-accordion .accordion-header .accordion-button {
        padding: 12px 45px 12px 15px;
        font-size: 16px;
    }
    .faq-accordion .accordion-item .accordion-body {
        padding: 12px 15px;
    }
    .our-appointment-content .section-footer-text {
        justify-content: center;
    }
    .appointment-form {
        padding: 20px;
    }
    .post-item-content h2 {
        font-size: 18px;
    }
    .about-footer {
        margin-bottom: 30px;
    }
    .footer-links {
        max-width: 100%;
    }
    .footer-links h2 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .footer-contact-info-list ul {
        gap: 10px 25px;
    }
    .footer-contact-info-list ul li {
        gap: 5px;
    }
    .footer-contact-info-list ul li img {
        max-width: 18px;
    }
    .footer-copyright-text {
        padding: 15px 0;
    }
    .page-header-box h1 {
        font-size: 28px;
    }
    .apprach-body-item h3 {
        font-size: 18px;
    }
    .apprach-body-item ul {
        gap: 10px;
    }
    .apprach-body-item ul li {
        width: 100%;
    }
    .solutions-item {
        padding: 20px;
        gap: 20px;
    }
    .solutions-item-title h2 {
        font-size: 18px;
    }
    .solutions-item-body {
        padding-top: 20px;
    }
    .solutions-item-counter-box h3 {
        font-size: 28px;
    }
    .team-item-contant h2 {
        font-size: 18px;
    }
    .technology-image img {
        aspect-ratio: 1 / 1.08;
    }
    .working-hour-box {
        padding: 15px;
        bottom: 15px;
        left: 15px;
        right: 15px;
        max-width: 200px;
    }
    .working-hour-box-title h3 {
        font-size: 18px;
    }
    .working-hour-box-body {
        margin-top: 10px;
    }
    .working-hour-box-body ul li {
        font-size: 14px;
        margin-bottom: 5px;
    }
    .technology-counter-item {
        width: calc(50% - 15px);
    }
    .technology-counter-item h3 {
        font-size: 18px;
        margin-top: 10px;
    }
    .page-category-list .page-category-list-title {
        font-size: 18px;
    }
    .page-category-list ul li {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }
    .sidebar-cta-info-box {
        padding: 10px;
    }
    .sidebar-cta-info-content h2 {
        font-size: 18px;
        margin-bottom: 10px;
    }
    .service-entry h2 {
        font-size: 26px;
    }
    .service-entry h3 {
        font-size: 18px;
    }
    .service-entry ul {
        gap: 10px;
    }
    .service-entry ul li {
        width: 100%;
    }
    .service-testing-item {
        width: 100%;
    }
    .service-process-item {
        width: 100%;
    }
    .service-process-no h3 {
        font-size: 22px;
    }
    .service-why-choose-list {
        margin: 20px 0;
    }
    .post-single-meta ol li,
    .post-single-meta ol li i {
        font-size: 16px;
    }
    .post-image img {
        aspect-ratio: 1 / 0.7;
    }
    .post-entry blockquote {
        padding: 65px 20px 20px 20px;
    }
    .post-entry blockquote p {
        font-size: 16px;
    }
    .post-entry h2 {
        font-size: 26px;
    }
    .tag-links {
        font-size: 18px;
    }
    .case-study-category-item-content h2 {
        font-size: 18px;
    }
    .case-study-entry h2 {
        font-size: 26px;
    }
    .case-study-entry h3 {
        font-size: 18px;
    }
    .case-study-overview-item-list {
        gap: 20px;
    }
    .case-study-overview-item {
        width: 100%;
    }
    .case-study-overview-item-content {
        padding: 5px;
    }
    .case-study-approach-content,
    .case-study-approach-image {
        width: 100%;
    }
    .case-study-approach-image figure,
    .case-study-approach-image img {
        height: auto;
    }
    .case-study-review-item {
        padding: 55px 15px 15px 15px;
    }
    .case-study-review-item::before {
        top: 15px;
        left: 15px;
    }
    .case-study-review-item h3 {
        font-size: 16px;
    }
    .team-single-image img {
        aspect-ratio: 1 / 1.1;
    }
    .team-sidebar-contact-list h2,
    .team-member-skill-list h2 {
        font-size: 22px;
    }
    .team-sidebar-contact-list ul li {
        margin-bottom: 10px;
    }
    .team-about-item {
        width: 100%;
    }
    .team-about-item-content h3 {
        font-size: 18px;
    }
    .team-member-key-points-list ul {
        gap: 10px;
    }
    .team-member-key-points-list ul li {
        width: 100%;
    }
    .team-member-experience-image,
    .team-member-experience-box-content {
        width: 100%;
    }
    .team-member-experience-image img,
    .team-member-experience-image figure {
        height: auto;
    }
    .contact-info-list {
        gap: 20px;
    }
    .contact-info-item {
        width: 100%;
    }
    .contact-info-item-content h3 {
        font-size: 18px;
    }
    .call-support-box p {
        margin: 0 0 5px;
    }
    .call-support-box h3 {
        font-size: 22px;
    }
    .contact-us-form {
        padding: 20px;
    }
    .google-map-iframe,
    .google-map-iframe iframe {
        height: 350px;
    }
}

/************************************/

/***   35. Home - Version 2 css   ***/

/************************************/

.hero-elite {
    position: relative;
    align-content: end;
    border-radius: 10px;
    height: 100vh;
    min-height: 800px;
    padding: 215px 0 100px;
    margin: 15px 15px 0;
    overflow: hidden;
}

.hero-elite::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(1, 58, 89, 0.30) 0%, transparent 50%, var(--primary-color) 100%);
    width: 100%;
    height: 100%;
    z-index: 1;
}

.hero-elite.hero-video-elite .hero-bg-video-elite {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.hero-elite.hero-video-elite .hero-bg-video-elite video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-elite .container {
    position: relative;
    z-index: 2;
}

.hero-content-box-elite .section-title p {
    max-width: 740px;
}

.hero-info-box-elite {
    display: inline-block;
    background: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 10px;
    padding: 30px;
}

.hero-client-review-box-elite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
}

.hero-client-review-counter-elite h2 {
    font-size: 40px;
    color: var(--white-color);
    line-height: 1em;
}

.hero-info-box-content-elite {
    border-top: 1px solid var(--dark-divider-color);
    margin-top: 30px;
    padding-top: 30px;
}

.hero-info-box-content-elite h3 {
    font-size: 20px;
    color: var(--white-color);
}

.hero-info-box-content-elite p {
    color: var(--white-color);
    margin: 10px 0 0;
}

.about-us-elite {
    padding: 120px 0;
}

.about-us-elite .section-row .section-title.section-title-center {
    max-width: 850px;
}

.about-us-item-box-elite {
    height: calc(100% - 30px);
    margin-bottom: 30px;
}

.about-us-item-box-elite .icon-box {
    width: 60px;
    height: 60px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 50px;
    transition: all 0.4s ease-in-out;
}

.about-us-item-box-elite:hover .icon-box {
    background-position: right center;
}

.about-us-item-box-elite .icon-box img {
    width: 100%;
    max-width: 30px;
}

.about-us-counter-elite {
    overflow: hidden;
}

.about-us-counter-elite h2 {
    font-size: 50px;
    margin-bottom: -18px;
    transition: all 0.4s ease-in-out;
}

.about-us-item-box-elite:hover .about-us-counter-elite h2 {
    transform: translateY(-5px);
}

.about-counter-box-content-elite {
    border-top: 1px solid var(--divider-color);
    padding-top: 25px;
}

.about-counter-box-content-elite h3 {
    font-size: 20px;
    line-height: 1.4em;
}

.about-counter-box-content-elite p {
    margin: 15px 0 0;
}

.our-services-elite {
    padding: 120px 0;
}

.service-item-elite {
    background: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 10px;
    min-height: 430px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 30px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 40px;
    transition: all 0.6s ease-in-out;
}

.service-item-elite:hover {
    transform: scale(1.01);
}

.service-item-no-elite {
    display: block;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    color: var(--white-color);
    margin-bottom: 30px;
}

.service-item-content-elite h2 {
    font-size: 20px;
    line-height: normal;
    color: var(--white-color);
    border-bottom: 1px solid var(--dark-divider-color);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.service-item-content-elite h2 a {
    color: inherit;
}

.service-item-content-elite p {
    color: var(--white-color);
    margin: 0;
}

.service-item-elite .icon-box {
    width: 50px;
    height: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease-in-out;
}

.service-item-elite:hover .icon-box {
    background-position: right center;
}

.service-item-elite .icon-box img {
    width: 100%;
    max-width: 24px;
}

.service-item-elite .service-item-btn-elite {
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 20px;
}

.service-item-elite .service-item-btn-elite .readmore-btn {
    color: var(--white-color);
}

.why-choose-us-elite {
    background-image: url('../images/section-bg-image-1.png');
    background-position: bottom 120px left -150px;
    background-repeat: no-repeat;
    background-size: auto;
    padding: 120px 0;
}

.why-choose-image-box-elite {
    position: relative;
    padding-right: 70px;
}

.why-choose-image-box-elite,
.why-choose-image-elite,
.why-choose-image-elite figure,
.why-choose-image-elite figure img {
    height: 100%;
}

.why-choose-image-elite figure {
    display: block;
    border-radius: 10px;
}

.why-choose-image-elite figure img {
    width: 100%;
    aspect-ratio: 1 / 1.518;
    object-fit: cover;
    border-radius: 10px;
}

.why-choose-working-box-elite {
    position: absolute;
    top: 100px;
    right: 0;
    min-width: 240px;
    max-width: 300px;
    padding: 30px;
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 10px;
    animation: workingboxmove 2s infinite linear alternate;
    transition: all 0.4s ease-in-out;
    z-index: 1;
}

@keyframes workingboxmove {
    0% {
        transform: translateY(-20px);
    }
    100% {
        transform: translateY(20px);
    }
}

.why-choose-working-box-elite:hover {
    background-position: right center;
}

.working-hours-icon-box-elite {
    border-bottom: 1px solid var(--dark-divider-color);
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.working-hours-icon-box-elite .icon-box {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--white-color);
    margin-bottom: 20px;
}

.working-hours-icon-box-elite .icon-box img {
    max-width: 20px;
    width: 100%;
}

.working-hours-icon-box-elite h3 {
    font-size: 16px;
    line-height: 1.4em;
    color: var(--white-color);
}

.working-hours-list-elite ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.working-hours-list-elite ul li {
    line-height: 1.5em;
    color: var(--white-color);
    display: flex;
    justify-content: space-between;
    gap: 5px;
    margin-bottom: 10px;
}

.working-hours-list-elite ul li:last-child {
    margin-bottom: 0;
}

.working-hours-list-elite ul li span {
    font-weight: 600;
}

.why-choose-content-box-elite {
    margin-left: 15px;
}

.why-choose-content-body-elite {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.why-choose-body-item-list-elite {
    width: calc(59% - 15px);
    align-content: center;
}

.why-choose-body-item-elite {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    border-bottom: 1px solid var(--divider-color);
    padding-bottom: 30px;
    margin-bottom: 30px;
}

.why-choose-body-item-elite:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.why-choose-body-item-elite .icon-box {
    width: 50px;
    height: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease-in-out;
}

.why-choose-body-item-elite:hover .icon-box {
    background-position: right center;
}

.why-choose-body-item-content-elite {
    width: calc(100% - 65px);
}

.why-choose-body-item-content-elite h3 {
    font-size: 20px;
}

.why-choose-body-item-content-elite p {
    margin: 10px 0 0;
}

.why-choose-body-image-elite {
    width: calc(41% - 15px);
}

.why-choose-body-image-elite figure {
    display: block;
    height: 100%;
    border-radius: 10px;
}

.why-choose-body-image-elite img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 0.93;
    object-fit: cover;
    border-radius: 10px;
}

.why-choose-content-footer-elite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 40px;
    border-top: 1px solid var(--divider-color);
    margin-top: 40px;
    padding-top: 40px;
}

.why-choose-author-box-elite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.why-choose-author-image-elite figure {
    display: block;
    border-radius: 50%;
}

.why-choose-author-image-elite img {
    width: 100%;
    max-width: 50px;
}

.why-choose-author-content-elite h3 {
    font-size: 20px;
}

.why-choose-author-content-elite p {
    margin: 5px 0 0;
}

.why-choose-us-elite .section-footer-text {
    margin-top: 60px;
}

.case-study-elite {
    background-image: url('../images/section-bg-image-1.png');
    background-position: bottom -60px left -60px;
    background-repeat: no-repeat;
    background-size: auto;
    padding: 120px 0;
}

.case-study-content-box-elite {
    position: sticky;
    top: 30px;
    min-height: 650px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 30px;
}

.case-study-partners-box-elite {
    max-width: 390px;
    background: var(--secondary-color);
    border: 1px solid var(--divider-color);
    border-radius: 10px;
    padding: 15px;
}

.case-study-client-review-box-elite {
    background: var(--bg-color);
    border-radius: 10px;
    padding: 15px 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.case-study-review-counter-elite h2 {
    font-size: 40px;
}

.case-study-partners-content-elite {
    padding: 20px 10px 10px;
}

.case-study-partners-content-elite h3 {
    font-size: 20px;
}

.case-study-partners-content-elite p {
    margin: 10px 0 0;
}

.case-study-boxes-elite {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.case-study-item-elite {
    width: calc(50% - 15px);
    background: var(--secondary-color);
    border: 1px solid var(--divider-color);
    border-radius: 10px;
    padding: 10px;
}

.case-study-item-image-elite {
    margin-bottom: 10px;
}

.case-study-item-image-elite a {
    display: block;
    cursor: none;
}

.case-study-item-image-elite figure {
    display: block;
    border-radius: 10px;
}

.case-study-item-image-elite figure img {
    width: 100%;
    aspect-ratio: 1 / 0.856;
    object-fit: cover;
    border-radius: 10px;
    transition: all 0.6s ease-in-out;
}

.case-study-item-elite:hover .case-study-item-image-elite img {
    transform: scale(1.04);
}

.case-study-item-content-elite {
    padding: 20px;
}

.case-study-item-content-elite ul {
    list-style: disc;
    margin: 0;
    padding: 0 0 0 18px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 28px;
}

.case-study-item-content-elite li {
    font-size: 14px;
    font-weight: 500;
    color: var(--primary-color);
    line-height: 1.5em;
}

.case-study-item-content-elite ul li::marker {
    color: var(--accent-secondary-color);
}

.case-study-item-content-elite li a {
    color: inherit;
}

.case-study-item-content-elite h2 {
    font-size: 20px;
    line-height: 1.4em;
    margin-top: 10px;
}

.case-study-item-content-elite h2 a {
    color: inherit;
}

.case-study-elite .section-footer-text {
    margin-top: 60px;
}

.our-features-elite {
    background-image: url('../images/section-bg-image-2.png');
    background-repeat: no-repeat;
    background-position: bottom 120px right -150px;
    background-size: auto;
    padding: 120px 0;
}

.features-image-box-elite,
.features-image-elite,
.features-image-elite figure,
.features-image-elite figure img {
    height: 100%;
}

.features-image-box-elite {
    position: relative;
}

.features-image-elite figure {
    display: block;
    border-radius: 10px;
}

.features-image-elite figure img {
    width: 100%;
    aspect-ratio: 1 / 0.63;
    border-radius: 10px;
    object-fit: cover;
}

.watch-video-cirlce-elite {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.watch-video-cirlce-elite a {
    display: inline-block;
    background-color: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 50%;
    cursor: none;
}

.watch-video-cirlce-elite a img {
    width: 100%;
    max-width: 120px;
    border-radius: 50%;
    animation: infiniterotate 20s infinite linear;
}

@keyframes infiniterotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.watch-video-cirlce-elite a:hover img {
    animation-play-state: paused;
}

.feature-content-boxes-elite {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.feature-item-elite.box-1,
.feature-image-box-elite {
    width: calc(43% - 15px);
}

.feature-item-elite.box-2,
.feature-item-elite.box-3 {
    width: calc(57% - 15px);
}

.feature-item-elite {
    background-color: var(--white-color);
    border-radius: 10px;
    align-content: center;
    padding: 30px;
}

.feature-item-elite.box-1 {
    text-align: center;
}

.feature-item-elite.box-1 .satisfy-client-images {
    margin-bottom: 30px;
}

.feature-item-content-elite h3 {
    font-size: 20px;
    line-height: 1.4em;
}

.feature-item-content-elite p {
    margin: 10px 0 0;
}

.feature-item-list-elite {
    border-top: 1px solid var(--divider-color);
    margin-top: 30px;
    padding-top: 30px;
}

.feature-item-list-elite ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.feature-item-list-elite ul li {
    position: relative;
    margin-bottom: 15px;
    line-height: 1.5em;
    padding-left: 25px;
}

.feature-item-list-elite ul li:last-child {
    margin-bottom: 0;
}

.feature-item-list-elite ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.feature-item-elite.box-3 {
    background-image: url("../images/feature-contact-bg-image-elite.png");
    background-repeat: no-repeat;
    background-position: bottom -25px right -25px;
    background-size: 150px auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 30px;
}

.feature-image-box-elite figure {
    display: block;
    border-radius: 10px;
    height: 100%;
}

.feature-image-box-elite figure img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 0.84;
    object-fit: cover;
    border-radius: 10px;
}

.our-features-elite .section-footer-text {
    margin-top: 60px;
}

.intro-video-elite {
    overflow: hidden;
}

.intro-video-image-box-elite {
    position: relative;
}

.intro-video-image-elite figure {
    position: relative;
    display: block;
}

.intro-video-image-elite figure::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--primary-color);
    opacity: 40%;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.intro-video-image-elite figure img {
    width: 100%;
    aspect-ratio: 1 / 0.467;
    object-fit: cover;
    transition: all 2s ease-in-out;
}

.intro-video-elite:hover .intro-video-image-elite figure img {
    transform: scale(1.04);
}

.play-video-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.play-video-text a {
    width: 90px;
    height: 90px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--white-color);
    border: 1px solid var(--white-color);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease-in-out;
    cursor: none;
}

.play-video-text a:hover {
    background: var(--white-color);
    color: var(--primary-color);
}

.our-pricing-elite {
    padding: 120px 0;
}

.pricing-item-elite {
    background-color: var(--secondary-color);
    border-radius: 20px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 40px;
}

.pricing-item-body-elite {
    border-top: 1px solid var(--divider-color);
    padding-top: 30px;
    margin-top: 30px;
}

.pricing-item-header-elite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
}

.pricing-item-header-elite .icon-box {
    width: 50px;
    height: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease-in-out;
}

.pricing-item-elite:hover .pricing-item-header-elite .icon-box {
    background-position: right center;
}

.pricing-item-header-elite .icon-box img {
    width: 100%;
    max-width: 24px;
}

.pricing-item-content-elite {
    width: calc(100% - 65px);
}

.pricing-item-content-elite p {
    line-height: normal;
    margin: 0 0 5px;
}

.pricing-item-content-elite h2 {
    font-size: 20px;
}

.pricing-item-price-elite h2 {
    font-size: 34px;
}

.pricing-item-price-elite h2 sub {
    font-size: 16px;
    font-weight: 500;
    bottom: 0;
}

.pricing-item-list-elite h3 {
    font-size: 20px;
    margin-bottom: 30px;
}

.pricing-item-list-elite ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.pricing-item-list-elite ul li {
    position: relative;
    line-height: 1.5em;
    margin-bottom: 15px;
    padding-left: 25px;
}

.pricing-item-list-elite ul li:last-child {
    margin-bottom: 0;
}

.pricing-item-list-elite ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.pricing-item-btn-elite {
    margin-top: 40px;
}

.pricing-benefit-list-elite {
    margin-top: 30px;
}

.pricing-benefit-list-elite ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 40px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.pricing-benefit-list-elite ul li {
    display: inline-flex;
    align-items: center;
}

.pricing-benefit-list-elite ul li img {
    width: 100%;
    max-width: 20px;
    margin-right: 10px;
}

.book-appointment-elite {
    position: relative;
    background-image: url('../images/book-appointment-bg-image-elite.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    padding: 120px 0;
    overflow: hidden;
}

.book-appointment-elite::before {
    content: ' ';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--primary-color);
    opacity: 80%;
    z-index: 1;
}

.book-appointment-elite .container {
    position: relative;
    z-index: 2;
}

.book-appointment-box-elite {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.book-appointment-content-elite {
    width: calc(56% - 15px);
    align-content: center;
}

.book-appointment-box-elite .section-title h2 span {
    -webkit-text-fill-color: var(--white-color);
}

.appointment-info-item-list-elite {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 50px;
    margin-top: 50px;
}

.appointment-info-item-elite {
    width: calc(50% - 15px);
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.appointment-info-item-elite .icon-box {
    width: 50px;
    height: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease-in-out;
}

.appointment-info-item-elite:hover .icon-box {
    background-position: right center;
}

.appointment-info-item-content-elite {
    width: calc(100% - 65px);
}

.appointment-info-item-content-elite h3 {
    font-size: 20px;
    color: var(--white-color);
}

.appointment-info-item-content-elite p {
    color: var(--white-color);
    margin: 10px 0 0;
}

.book-appointment-image-elite {
    width: calc(44% - 15px);
    align-content: end;
}

.book-appointment-image-elite figure {
    display: block;
    border-radius: 10px 10px 0 0;
    margin-bottom: -120px;
}

.book-appointment-image-elite figure img {
    width: 100%;
    aspect-ratio: 1 / 1.184;
    object-fit: cover;
    border-radius: 10px 10px 0 0;
}

.our-testimonials-elite {
    padding: 120px 0;
}

.testimonial-slider-elite .swiper-wrapper {
    cursor: none;
}

.testimonial-item-elite {
    min-height: 480px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    background-color: var(--secondary-color);
    border-radius: 10px;
    padding: 40px;
    transition: all 0.5s ease-in-out;
}

.testimonial-slider-elite .swiper-wrapper .testimonial-item-elite {
    transform: scale(0.95);
}

.testimonial-slider-elite .swiper-wrapper .swiper-slide.swiper-slide-next .testimonial-item-elite {
    transform: scale(1);
}

.testimonial-item-rating-elite i {
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.testimonial-item-content-elite p {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 0px;
}

.testimonial-author-box-elite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    border-top: 1px solid var(--divider-color);
    padding-top: 40px;
    margin-top: 40px;
}

.testimonial-author-content-elite {
    width: calc(74% - 15px);
}

.testimonial-author-content-elite h2 {
    font-size: 20px;
    color: var(--primary-color);
}

.testimonial-author-content-elite p {
    color: var(--text-color);
    margin: 5px 0 0;
}

.testimonial-author-elite {
    display: inline-flex;
}

.testimonial-author-image-elite figure {
    display: block;
    border: 1px solid var(--white-color);
    border-radius: 50%;
}

.testimonial-author-image-elite figure img {
    width: 100%;
    max-width: 42px;
    border-radius: 50%;
}

.testimonial-item-quote-elite {
    position: relative;
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    height: 44px;
    width: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid var(--white-color);
    margin-left: -14px;
    z-index: 1;
}

.testimonial-item-quote-elite img {
    width: 100%;
    max-width: 20px;
}

.our-testimonials-elite .section-footer-text {
    margin-top: 60px;
}

.our-faqs-elite {
    padding: 120px 0;
}

.faq-image-elite figure {
    display: block;
    border-radius: 10px;
}

.faq-image-elite figure img {
    width: 100%;
    aspect-ratio: 1 / 0.458;
    object-fit: cover;
    border-radius: 10px;
}

.faq-accordion-elite {
    margin-left: 15px;
}

.faq-accordion-elite .accordion-item-elite {
    border-radius: 10px;
    margin-bottom: 30px;
    padding: 0;
    transition: all 0.3s ease-in-out;
    overflow: hidden;
}

.faq-accordion-elite .accordion-item-elite:last-child {
    margin-bottom: 0;
}

.faq-accordion-elite .accordion-header .accordion-button {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.333em;
    background: var(--bg-color);
    color: var(--primary-color);
    padding: 20px 50px 20px 20px;
    transition: all 0.3s ease-in-out;
}

.faq-accordion-elite .accordion-button:not(.collapsed) {
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    color: var(--white-color);
}

.faq-accordion-elite .accordion-item-elite .accordion-button::after,
.faq-accordion-elite .accordion-item-elite .accordion-button.collapsed::after {
    content: '\f068';
    font-family: 'FontAwesome';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: var(--primary-color);
    transition: all 0.3s ease-in-out;
}

.faq-accordion-elite .accordion-item-elite .accordion-button::after {
    content: '\2b';
    color: var(--white-color);
}

.faq-accordion-elite .accordion-item-elite .accordion-body {
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    border-top: 1px solid var(--dark-divider-color);
    padding: 20px;
}

.faq-accordion-elite .accordion-item-elite .accordion-body p {
    color: var(--white-color);
    margin: 0;
}

.company-supports-slider-box-elite {
    margin-top: 80px;
}

.company-supports-content-elite {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 50px;
    text-align: center;
}

.company-supports-content-elite hr {
    height: 1px;
    flex-grow: 1;
    color: var(--divider-color);
    opacity: 1;
    margin: 0;
}

.company-supports-content-elite p {
    color: var(--primary-color);
    font-weight: 500;
    margin-bottom: 0;
}

.company-supports-slider-elite {
    padding: 0 2.083vw;
}

.company-supports-logo-elite {
    text-align: center;
}

.company-supports-logo-elite img {
    width: 100%;
    max-width: 170px;
    height: 40px;
}

.main-footer-elite {
    padding: 120px 0 60px;
    margin-bottom: 15px;
}

.footer-header-elite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid var(--dark-divider-color);
    padding-bottom: 60px;
    margin-bottom: 60px;
}

.footer-header-elite .section-title {
    max-width: 45%;
    margin-bottom: 0;
}

.footer-header-elite .section-title h2 {
    font-size: 40px;
}

.footer-newsletter-form-elite .form-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border: none;
    border-radius: 100px;
}

.footer-newsletter-form-elite .form-group .form-control {
    width: 300px;
    font-size: 16px;
    line-height: normal;
    color: var(--white-color);
    background: transparent;
    border: none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    padding: 5px 20px;
}

.footer-newsletter-form-elite .form-group .form-control::placeholder {
    color: var(--white-color);
    opacity: 50%;
}

.about-footer-elite {
    margin-right: 3.125vw;
}

.footer-logo-elite img {
    width: 100%;
    max-width: 163px;
}

.about-footer-content-elite {
    margin-top: 20px;
}

.about-footer-content-elite p {
    color: var(--white-color);
}

.about-footer-content-elite p:last-child {
    margin-bottom: 0;
}

.footer-working-hours-elite {
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 30px;
    margin-top: 30px;
}

.footer-working-hours-elite h2 {
    font-size: 20px;
    color: var(--white-color);
}

.footer-working-hours-elite ul {
    list-style: none;
    background-color: var(--dark-divider-color);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 10px;
    margin: 25px 0 0;
    padding: 25px;
}

.footer-working-hours-elite ul li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
    line-height: 1.4em;
    color: var(--white-color);
    border-bottom: 1px solid var(--dark-divider-color);
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.footer-working-hours-elite ul li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.footer-working-hours-elite ul li span {
    font-weight: 700;
}

.footer-links-box-elite {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
    margin-left: 2.604vw;
}

.footer-links-elite {
    max-width: 29%;
}

.footer-links-elite h2 {
    font-size: 20px;
    color: var(--white-color);
    margin-bottom: 25px;
}

.footer-links-elite.footer-social-box-elite h2 {
    margin-bottom: 15px;
}

.footer-social-box-elite p {
    color: var(--white-color);
    margin: 0;
}

.footer-links-elite ul {
    list-style: disc;
    margin: 0;
    padding: 0 0 0 20px;
}

.footer-links-elite ul li {
    line-height: 1.5em;
    color: var(--white-color);
    margin-bottom: 15px;
}

.footer-links-elite ul li:last-child {
    margin-bottom: 0;
}

.footer-links-elite ul li::marker {
    color: var(--accent-color);
}

.footer-links-elite ul li a {
    color: inherit;
    transition: all 0.4s ease-in-out;
}

.footer-links-elite ul li a:hover {
    color: var(--accent-secondary-color);
}

.footer-social-box-elite {
    max-width: 36%;
}

.footer-social-link-elite {
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 30px;
    margin-top: 30px;
}

.footer-social-link-elite ul {
    display: flex;
    gap: 15px;
    list-style: none;
    padding: 0;
}

.footer-social-link-elite ul li {
    margin: 0;
}

.footer-social-link-elite ul li a {
    width: 36px;
    height: 36px;
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-social-link-elite ul li a:hover {
    background-position: right center;
}

.footer-social-link-elite ul li a i {
    font-size: 18px;
    color: var(--white-color);
}

.footer-copyright-elite {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 50px;
    margin-top: 20px;
    gap: 20px;
}

.footer-copyright-text-elite p {
    color: var(--white-color);
    margin: 0;
}

.footer-privacy-policy-elite ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 40px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.footer-privacy-policy-elite ul li {
    position: relative;
    color: var(--white-color);
}

.footer-privacy-policy-elite ul li::before {
    content: '';
    position: absolute;
    top: 50%;
    right: -24px;
    background: linear-gradient(to right, var(--accent-secondary-color) 0%, var(--accent-color) 100%);
    border-radius: 100px;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
}

.footer-privacy-policy-elite ul li:last-child:before {
    display: none;
}

.footer-privacy-policy-elite ul li a {
    color: inherit;
    transition: all 0.4s ease-in-out;
}

.footer-privacy-policy-elite ul li a:hover {
    color: var(--accent-secondary-color);
}

@media only screen and (max-width: 1024px) {
    .hero-elite {
        height: auto;
    }
    .hero-content-box-elite {
        margin: 0 0 30px;
    }
    .service-item-elite {
        padding: 30px;
        min-height: auto;
    }
    .why-choose-image-box-elite {
        max-width: 740px;
        margin: 0 auto 30px;
    }
    .why-choose-image-box-elite,
    .why-choose-image-elite,
    .why-choose-image-elite figure,
    .why-choose-image-elite figure img {
        height: auto;
    }
    .why-choose-image-elite figure img {
        aspect-ratio: 1 / 1.1;
    }
    .why-choose-content-box-elite {
        margin: 0;
    }
    .why-choose-body-image-elite img {
        aspect-ratio: 1 / 0.73;
    }
    .case-study-content-box-elite {
        position: initial;
        min-height: auto;
        margin-bottom: 30px;
    }
    .case-study-item-content-elite {
        padding: 10px;
    }
    .features-image-box-elite {
        margin-bottom: 30px;
    }
    .features-image-box-elite,
    .features-image-elite,
    .features-image-elite figure,
    .features-image-elite figure img {
        height: auto;
    }
    .feature-item-elite {
        padding: 20px;
    }
    .feature-image-box-elite figure img {
        aspect-ratio: 1 / 0.7;
    }
    .book-appointment-content-elite,
    .book-appointment-image-elite {
        width: 100%;
    }
    .book-appointment-content-elite {
        height: auto;
    }
    .book-appointment-image-elite figure {
        max-width: 520px;
        margin-left: auto;
        margin-right: auto;
    }
    .testimonial-slider-elite .swiper-wrapper .testimonial-item-elite {
        transform: scale(1);
    }
    .testimonial-item-elite {
        padding: 30px;
        gap: 30PX;
        min-height: auto;
    }
    .testimonial-author-box-elite {
        margin-top: 30px;
        padding-top: 30px;
    }
    .faq-image-box-elite {
        margin-bottom: 30px;
    }
    .faq-accordion-elite {
        margin: 0;
    }
    .footer-header-elite {
        margin-bottom: 30px;
        padding-bottom: 30px;
    }
    .about-footer-elite {
        margin: 0 0 30px;
    }
    .footer-working-hours-elite ul {
        margin-top: 20px;
        padding: 20px;
    }
    .footer-working-hours-elite ul li {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }
    .footer-links-box-elite {
        margin-left: 0;
    }
    .footer-copyright-elite {
        margin: 0;
        padding-top: 30px;
    }
}

@media only screen and (max-width: 991px) {
    .hero-elite {
        margin: 0;
        border-radius: 0;
        padding: 150px 0 60px;
    }
    .hero-info-box-elite {
        padding: 20px;
    }
    .hero-client-review-counter-elite h2 {
        font-size: 32px;
    }
    .hero-info-box-content-elite {
        margin-top: 20px;
        padding-top: 20px;
    }
    .about-us-elite {
        padding: 60px 0;
    }
    .about-us-item-box-elite .icon-box {
        width: 50px;
        height: 50px;
        margin-bottom: 30px;
    }
    .about-us-item-box-elite .icon-box img {
        max-width: 24px;
    }
    .about-us-counter-elite h2 {
        font-size: 44px;
        margin-bottom: -15px;
    }
    .our-services-elite {
        padding: 60px 0;
    }
    .service-item-no-elite {
        margin-bottom: 20px;
    }
    .why-choose-us-elite {
        background-position: bottom 60px left -100px;
        background-size: 300px auto;
        padding: 60px 0;
    }
    .why-choose-working-box-elite {
        padding: 20px;
        top: 70px;
    }
    .why-choose-body-item-elite {
        margin-bottom: 20px;
        padding-bottom: 20px;
    }
    .why-choose-content-footer-elite {
        padding-top: 30px;
        margin-top: 30px;
    }
    .why-choose-us-elite .section-footer-text {
        margin-top: 40px;
    }
    .case-study-elite {
        background-size: 300px auto;
        padding: 60px 0;
    }
    .case-study-review-counter-elite h2 {
        font-size: 34px;
    }
    .case-study-elite .section-footer-text {
        margin-top: 40px;
    }
    .our-features-elite {
        background-position: bottom 60px right -100px;
        background-size: auto;
        padding: 60px 0;
    }
    .watch-video-cirlce-elite a img {
        max-width: 100px;
    }
    .feature-item-list-elite {
        margin-top: 20px;
        padding-top: 20px;
    }
    .feature-item-list-elite ul li {
        margin-bottom: 10px;
    }
    .feature-item-list-elite ul li::before {
        font-size: 16px;
    }
    .our-features-elite .section-footer-text {
        margin-top: 40px;
    }
    .intro-video-elite.bg-section .container-fluid {
        padding: 0;
    }
    .intro-video-image-elite figure img {
        aspect-ratio: 1 / 0.6;
    }
    .our-pricing-elite {
        padding: 60px 0;
    }
    .pricing-item-elite {
        padding: 30px 25px;
    }
    .pricing-item-body-elite {
        padding-top: 20px;
        margin-top: 20px;
    }
    .pricing-item-price-elite h2 {
        font-size: 30px;
    }
    .pricing-item-price-elite h2 sub {
        font-size: 14px;
    }
    .pricing-item-list-elite h3 {
        margin-bottom: 20px;
    }
    .pricing-item-list-elite ul li {
        margin-bottom: 10px;
    }
    .pricing-item-list-elite ul li::before {
        font-size: 16px;
    }
    .pricing-item-btn-elite {
        margin-top: 30px;
    }
    .pricing-benefit-list-elite {
        margin-top: 10px;
    }
    .pricing-benefit-list-elite ul {
        gap: 15px 30px;
    }
    .pricing-benefit-list-elite ul li img {
        max-width: 18px;
    }
    .book-appointment-elite {
        padding: 60px 0 0;
    }
    .appointment-info-item-list-elite {
        padding-top: 30px;
        margin-top: 30px;
    }
    .book-appointment-image-elite figure {
        margin-bottom: 0;
    }
    .our-testimonials-elite {
        padding: 60px 0;
    }
    .testimonial-item-content-elite p {
        font-size: 18px;
    }
    .our-testimonials-elite .section-footer-text {
        margin-top: 40px;
    }
    .our-faqs-elite {
        padding: 60px 0;
    }
    .faq-accordion-elite .accordion-item-elite {
        margin-bottom: 20px;
    }
    .faq-accordion-elite .accordion-header .accordion-button {
        padding: 15px 40px 15px 15px;
    }
    .faq-accordion-elite .accordion-item-elite .accordion-body {
        padding: 15px;
    }
    .faq-accordion-elite .accordion-item-elite .accordion-button::after,
    .faq-accordion-elite .accordion-item-elite .accordion-button.collapsed::after {
        font-size: 18px;
        right: 15px;
    }
    .company-supports-slider-box-elite {
        margin-top: 50px;
    }
    .company-supports-content-elite {
        margin-bottom: 30px;
    }
    .company-supports-slider-elite {
        padding: 0;
    }
    .company-supports-logo-elite img {
        max-width: 150px;
        height: 34px;
    }
    .main-footer-elite {
        padding: 60px 0 30px;
        margin-bottom: 0;
    }
    .footer-header-elite .section-title {
        max-width: 100%;
    }
    .footer-header-elite .section-title h2 {
        font-size: 34px;
    }
    .about-footer-content-elite {
        margin-top: 15px;
    }
    .footer-links-elite h2 {
        margin-bottom: 20px;
    }
    .footer-links-elite ul li {
        margin-bottom: 10px;
    }
    .footer-social-link-elite ul li {
        margin: 0;
    }
}

@media only screen and (max-width: 767px) {
    .hero-client-review-counter-elite h2 {
        font-size: 28px;
    }
    .hero-info-box-content-elite h3 {
        font-size: 18px;
    }
    .about-us-item-box-elite .icon-box {
        margin-bottom: 20px;
    }
    .about-us-counter-elite h2 {
        font-size: 38px;
    }
    .about-counter-box-content-elite {
        padding-top: 20px;
    }
    .about-counter-box-content-elite h3 {
        font-size: 18px;
    }
    .about-counter-box-content-elite p {
        margin: 10px 0 0;
    }
    .service-item-elite {
        padding: 20px;
        gap: 20px;
    }
    .service-item-no-elite {
        margin-bottom: 10px;
    }
    .service-item-content-elite h2 {
        font-size: 18px;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    .why-choose-image-elite figure img {
        aspect-ratio: 1 / 1.4;
    }
    .why-choose-working-box-elite {
        padding: 15px;
        min-width: 170px;
        top: 50px;
    }
    .working-hours-icon-box-elite {
        margin-bottom: 10px;
        padding-bottom: 10px;
    }
    .working-hours-icon-box-elite .icon-box {
        margin-bottom: 10px;
    }
    .working-hours-icon-box-elite h3 {
        font-size: 14px;
    }
    .working-hours-list-elite ul li {
        font-size: 12px;
        margin-bottom: 5px;
    }
    .working-hours-list-elite ul li span {
        font-size: 14px;
    }
    .why-choose-body-item-list-elite,
    .why-choose-body-image-elite {
        width: 100%;
    }
    .why-choose-body-item-content-elite h3 {
        font-size: 18px;
    }
    .why-choose-content-footer-elite {
        gap: 20px;
    }
    .why-choose-author-box-elite {
        gap: 10px;
    }
    .why-choose-author-content-elite h3 {
        font-size: 18px;
    }
    .case-study-client-review-box-elite {
        padding: 15px;
    }
    .case-study-review-counter-elite h2 {
        font-size: 28px;
    }
    .case-study-partners-content-elite h3 {
        font-size: 18px;
    }
    .case-study-item-elite {
        width: 100%;
    }
    .case-study-item-content-elite h2 {
        font-size: 18px;
    }
    .features-image-elite figure img {
        aspect-ratio: 1 / 0.75;
    }
    .watch-video-cirlce-elite a img {
        max-width: 80px;
    }
    .feature-content-boxes-elite {
        gap: 20px;
    }
    .feature-item-elite.box-1,
    .feature-item-elite.box-2,
    .feature-item-elite.box-3,
    .feature-image-box-elite {
        width: 100%;
    }
    .feature-item-elite.box-1 .satisfy-client-images {
        margin-bottom: 20px;
    }
    .feature-item-content-elite h3 {
        font-size: 18px;
    }
    .feature-item-elite.box-3 {
        background-position: bottom -15px right -15px;
        background-size: 110px auto;
    }
    .feature-image-box-elite figure,
    .feature-image-box-elite figure img {
        height: auto;
    }
    .intro-video-image-elite figure img {
        aspect-ratio: 1 / 0.7;
    }
    .play-video-text a {
        width: 70px;
        height: 70px;
        font-size: 14px;
    }
    .pricing-item-elite {
        padding: 20px;
    }
    .pricing-item-content-elite h2 {
        font-size: 18px;
    }
    .pricing-item-price-elite h2 {
        font-size: 26px;
    }
    .pricing-item-list-elite h3 {
        font-size: 18px;
    }
    .pricing-benefit-list-elite ul {
        gap: 10px 20px;
    }
    .pricing-benefit-list-elite ul li {
        font-size: 14px;
    }
    .pricing-benefit-list-elite ul li img {
        max-width: 16px;
        margin-right: 5px;
    }
    .appointment-info-item-list-elite {
        gap: 30px 20px;
    }
    .appointment-info-item-elite {
        width: calc(50% - 10px);
    }
    .appointment-info-item-content-elite {
        width: 100%;
    }
    .appointment-info-item-content-elite h3 {
        font-size: 18px;
    }
    .book-appointment-image-elite figure {
        max-width: 280px;
    }
    .testimonial-item-elite {
        padding: 20px;
        gap: 20px;
    }
    .testimonial-item-content-elite p {
        font-size: 16px;
    }
    .testimonial-author-box-elite {
        padding-top: 20px;
        margin-top: 20px;
    }
    .testimonial-author-content-elite h2 {
        font-size: 18px;
    }
    .testimonial-author-content-elite p {
        margin: 5px 0 0;
    }
    .faq-image-elite figure img {
        aspect-ratio: 1 / 0.55;
    }
    .faq-accordion-elite .accordion-header .accordion-button {
        font-size: 16px;
        padding: 12px 40px 12px 15px;
    }
    .faq-accordion-elite .accordion-item-elite .accordion-button::after,
    .faq-accordion-elite .accordion-item-elite .accordion-button.collapsed::after {
        font-size: 16px;
    }
    .faq-accordion-elite .accordion-item-elite .accordion-body {
        padding: 12px 15px;
    }
    .company-supports-slider-box-elite {
        margin-top: 30px;
    }
    .company-supports-content-elite {
        margin-bottom: 20px;
    }
    .company-supports-content-elite hr {
        display: none;
    }
    .main-footer-elite {
        padding-bottom: 15px;
    }
    .footer-header-elite .section-title h2 {
        font-size: 28px;
    }
    .footer-newsletter-form-elite {
        width: 100%;
    }
    .footer-newsletter-form-elite .form-group .form-control {
        width: calc(100% - 50px);
    }
    .footer-newsletter-form-elite .form-group .btn-default {
        width: 48px;
        height: 48px;
        font-size: 0;
        padding: 0;
    }
    .footer-working-hours-elite h2 {
        font-size: 18px;
    }
    .footer-links-elite {
        max-width: 100%;
    }
    .footer-links-elite h2 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .footer-copyright-elite {
        flex-direction: column-reverse;
        justify-content: center;
        gap: 15px;
        padding-top: 15px;
    }
    .footer-privacy-policy-elite ul {
        gap: 10px 30px;
    }
    .footer-privacy-policy-elite ul li::before {
        right: -18px;
    }
}

/************************************/

/***   36. Home - Version 3 css   ***/

/************************************/

header.main-header.main-header-prime {
    position: initial;
    border: none;
    margin: 15px 15px 0;
}

header.main-header.main-header-prime .header-sticky {
    background: var(--white-color);
    border-radius: 10px;
}

header.main-header.main-header-prime .header-sticky.active {
    border-color: var(--divider-color);
}

header.main-header.main-header-prime .container-fluid {
    padding: 0;
}

.main-header-prime .navbar {
    padding: 20px 25px;
}

header.main-header.main-header-prime .main-menu ul li a {
    color: var(--primary-color);
}

header.main-header.main-header-prime .main-menu ul li a:hover,
header.main-header.main-header-prime .main-menu ul li a:focus {
    color: var(--accent-secondary-color);
}

header.main-header.main-header-prime .main-menu ul ul li a {
    color: var(--white-color);
}

header.main-header.main-header-prime .main-menu ul ul li a:hover,
header.main-header.main-header-prime .main-menu ul ul li a:focus {
    color: var(--primary-color);
}

header.main-header.main-header-prime .slicknav_menu {
    border-radius: 10px;
    margin-top: 15px;
}

.hero-prime {
    margin-top: 30px;
}

.hero-box-prime {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.hero-content-box-prime {
    position: relative;
    width: calc(50% - 15px);
    background-image: url("../images/hero-content-box-bg-image-prime.png");
    background-position: top left;
    background-size: auto;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 50px;
    padding: 4.167vw;
}

.hero-content-box-prime::before {
    content: "";
    position: absolute;
    right: -120px;
    bottom: 85px;
    width: 490px;
    height: 630px;
    background: url("../images/hero-bg-image-2-prime.png") no-repeat;
    background-position: center center;
    background-size: cover;
}

.hero-content-body-prime,
.hero-satisfaction-client-box-prime,
.hero-content-header-prime .section-title {
    position: relative;
    z-index: 1;
}

.hero-content-header-prime .section-title h1 {
    font-size: 60px;
    line-height: 1.1em;
}

.hero-content-header-prime .section-title h1 span {
    font-weight: 400;
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in-out;
}

.hero-content-header-prime .section-title h1:hover span {
    background-position: right center;
}

.hero-satisfaction-client-box-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 30px;
}

.satisfaction-client-box-prime {
    display: flex;
    align-items: center;
    gap: 20px;
}

.satisfaction-client-box-prime .satisfy-client-image {
    border-color: var(--primary-color);
}

.satisfaction-client-box-prime .satisfy-client-image img {
    max-width: 44px;
}

.satisfaction-client-box-prime .satisfy-client-image.add-more {
    width: 46px;
    height: 46px;
}

.satisfaction-client-content-prime {
    max-width: 135px;
}

.satisfaction-client-content-prime p {
    line-height: 1.4em;
    color: var(--white-color);
    margin: 0;
}

.satisfaction-client-content-prime p span {
    color: var(--accent-secondary-color);
}

.hero-content-body-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 50px;
}

.hero-content-list-prime ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.hero-content-list-prime ul li {
    position: relative;
    line-height: 1.5em;
    color: var(--white-color);
    margin-bottom: 15px;
    padding-left: 25px;
}

.hero-content-list-prime ul li:last-child {
    margin-bottom: 0;
}

.hero-content-list-prime ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: var(--accent-secondary-color);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.contact-feedback-list ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.contact-feedback-list ul li {
    position: relative;
    line-height: 1.5em;
    color: var(--text-color);
    margin-bottom: 15px;
    padding-left: 25px;
}

.contact-feedback-list ul li:last-child {
    margin-bottom: 0;
}

.contact-feedback-list ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    background: var(--accent-secondary-color);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
}

.get-in-touch-circle-prime a {
    display: inline-block;
    border-radius: 50%;
    overflow: hidden;
}

.get-in-touch-circle-prime a img {
    width: 100%;
    max-width: 120px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
    animation: infiniterotate 20s infinite linear;
}

.get-in-touch-circle-prime a:hover img {
    animation-play-state: paused;
}

.hero-image-box-prime {
    position: relative;
    width: calc(50% - 15px);
}

.hero-image-prime,
.hero-image-prime figure,
.hero-image-prime figure img {
    height: 100%;
}

.hero-image-prime figure {
    display: block;
    border-radius: 10px;
}

.hero-image-prime figure img {
    width: 100%;
    aspect-ratio: 1 / 0.874;
    object-fit: cover;
    border-radius: 10px;
}

.hero-image-content-box-prime {
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: var(--bg-color);
    padding: 20px 0 0 20px;
    max-width: 390px;
    border-radius: 10px 0 0;
    z-index: 1;
}

.hero-image-content-box-prime::before,
.hero-image-content-box-prime::after {
    content: "";
    position: absolute;
    top: -10px;
    right: 0;
    background: var(--bg-color);
    mask: url("../images/image-corner-bg-shape.svg");
    -webkit-mask: url("../images/image-corner-bg-shape.svg");
    mask-repeat: no-repeat;
    mask-size: cover;
    width: 10px;
    height: 10px;
}

.hero-image-content-box-prime::after {
    top: auto;
    right: auto;
    bottom: 0;
    left: -10px;
}

.hero-info-box-prime {
    background: var(--white-color);
    border-radius: 10px;
    padding: 10px;
}

.hero-info-header-box-prime {
    padding: 20px 20px 30px;
}

.hero-info-header-prime {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.circle {
    position: relative;
    display: inline-flex;
    border-radius: 50%;
}

.hero-info-header-prime .circle .progress_value {
    width: 52px;
    height: 52px;
    background-color: var(--white-color);
    color: var(--primary-color);
}

.hero-info-header-title-prime {
    width: calc(100% - 80px);
}

.hero-info-header-title-prime h2 {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4em;
}

.hero-info-content-prime {
    border-top: 1px solid var(--divider-color);
    margin-top: 30px;
    padding-top: 30px;
}

.hero-info-content-prime p {
    margin: 0;
}

.hero-info-image-prime figure {
    display: block;
    border-radius: 10px;
}

.hero-info-image-prime figure img {
    aspect-ratio: 1 / 0.387;
    object-fit: cover;
    width: 100%;
    border-radius: 10px;
}

.hero-feature-list-prime {
    background: var(--white-color);
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 30px 5.208vw;
    margin-top: 30px;
    padding: 20px 40px;
}

.hero-feature-item-prime {
    position: relative;
    width: calc(25% - 3.906vw);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.hero-feature-item-prime::before {
    content: "";
    position: absolute;
    top: 0;
    right: -2.604vw;
    bottom: 0;
    left: auto;
    background: var(--divider-color);
    width: 1px;
    height: 100%;
}

.hero-feature-item-prime:last-child:before,
.hero-feature-item-prime:nth-child(4n+4):before {
    display: none;
}

.hero-feature-item-prime .icon-box {
    height: 50px;
    width: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.hero-feature-item-prime:hover .icon-box {
    background-position: right center;
}

.hero-feature-item-content-prime {
    width: calc(100% - 65px);
}

.hero-feature-item-content-prime h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4em;
}

.about-us-prime {
    padding: 120px 0;
}

.about-us-body-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 40px;
}

.about-us-author-box-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 30px;
    width: 100%;
}

.about-author-item-prime {
    display: flex;
    align-items: center;
    gap: 15px;
    width: calc(50% - 15px);
}

.about-author-image-prime figure {
    display: block;
    border-radius: 50%;
}

.about-author-image-prime img {
    width: 100%;
    max-width: 50px;
}

.author-initials-avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #116DAD !important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 16px;
}

.about-author-content-prime h3 {
    font-size: 20px;
}

.about-author-content-prime p {
    margin: 5px 0 0;
}

.about-us-footer-prime {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.about-us-item-prime {
    width: calc(50% - 15px);
    background-color: var(--secondary-color);
    padding: 30px;
    border-radius: 10px;
}

.about-us-item-prime .icon-box {
    height: 50px;
    width: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    transition: all 0.4s ease-in-out;
}

.about-us-item-prime:hover .icon-box {
    background-position: right center;
}

.about-us-item-prime .icon-box img {
    width: 100%;
    max-width: 24px;
}

.about-us-item-content-prime h3 {
    font-size: 20px;
}

.about-us-item-content-prime p {
    margin: 10px 0 0;
}

.about-us-image-box-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 20px;
    margin-left: 15px;
}

.about-us-image-box-1-prime {
    width: calc(62% - 10px);
}

.about-us-image-box-2-prime {
    width: calc(38% - 10px);
}

.about-us-cta-box-prime {
    background-color: var(--secondary-color);
    background-image: url('../images/about-us-cta-bg-image-prime.svg');
    background-repeat: no-repeat;
    background-position: top right -13px;
    background-size: auto;
    border-radius: 10px;
    margin-bottom: 20px;
    padding: 30px;
    overflow: hidden;
}

.about-us-cta-box-prime .icon-box {
    height: 40px;
    width: 40px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    transition: all 0.4s ease-in-out;
}

.about-us-cta-box-prime:hover .icon-box {
    background-position: right center;
}

.about-us-cta-box-prime .icon-box img {
    width: 100%;
    max-width: 20px;
}

.about-us-cta-content-prime h2 {
    font-size: 48px;
    font-weight: 600;
}

.about-us-cta-content-prime p {
    margin: 5px 0 0;
}

.about-us-image-box-2-prime .about-us-image-prime figure,
.about-us-image-box-1-prime .about-us-image-prime figure {
    display: block;
    border-radius: 10px;
}

.about-us-image-box-1-prime .about-us-image-prime figure img,
.about-us-image-box-2-prime .about-us-image-prime figure img {
    width: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.about-us-image-box-1-prime .about-us-image-prime figure img {
    aspect-ratio: 1 / 1.613;
}

.about-us-image-box-2-prime .about-us-image-prime figure img {
    aspect-ratio: 1 / 1.04;
}

.our-services-prime {
    padding: 120px 0;
}

.service-item-prime {
    background: var(--dark-divider-color);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border-radius: 10px;
    min-height: 470px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    gap: 30px;
    padding: 30px;
    margin-bottom: 30px;
    transition: all 0.4s ease-in-out;
}

.service-item-content-prime h2 {
    font-size: 20px;
    color: var(--white-color);
    font-weight: 600;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.service-item-content-prime h2 a {
    color: inherit;
}

.service-item-content-prime p {
    margin: 20px 0 0;
    color: var(--white-color);
}

.box-1.service-item-prime .service-item-image-prime figure {
    mask-image: url('../images/service-image-mask-1-prime.svg');
    background-image: url('../images/service-image-mask-1-prime.svg');
}

.box-2.service-item-prime .service-item-image-prime figure {
    mask-image: url('../images/service-image-mask-2-prime.svg');
    background-image: url('../images/service-image-mask-2-prime.svg');
}

.box-3.service-item-prime .service-item-image-prime figure {
    mask-image: url('../images/service-image-mask-3-prime.svg');
    background-image: url('../images/service-image-mask-3-prime.svg');
}

.service-item-image-prime figure {
    display: block;
    width: 200px;
    height: 200px;
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-size: cover;
    margin: 0 auto;
}

.service-item-image-prime figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.our-services-prime .service-item-btn-prime .readmore-btn {
    color: var(--white-color);
}

.why-choose-us-prime {
    padding: 120px 0;
}

.why-choose-item-prime {
    background-color: var(--secondary-color);
    border-radius: 10px;
    margin-bottom: 30px;
    padding: 30px;
}

.why-choose-item-prime:last-child {
    margin-bottom: 0;
}

.why-choose-item-header-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.why-choose-item-header-prime .icon-box {
    height: 50px;
    width: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.why-choose-item-prime:hover .why-choose-item-header-prime .icon-box {
    background-position: right center;
}

.why-choose-item-title-prime {
    width: calc(100% - 65px);
}

.why-choose-item-title-prime h3 {
    font-size: 20px;
    line-height: 1.4em;
}

.why-choose-item-body-prime {
    margin-top: 20px;
}

.why-choose-item-body-prime p {
    margin: 0;
}

.why-choose-us-image-prime figure {
    display: block;
    border-radius: 10px;
}

.why-choose-us-image-prime figure img {
    width: 100%;
    aspect-ratio: 1 / 1.55;
    object-fit: cover;
    border-radius: 10px;
}

.company-supports-slider-box-prime {
    margin-top: 60px;
}

.company-supports-content-prime {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 50px;
    text-align: center;
}

.company-supports-content-prime hr {
    height: 1px;
    flex-grow: 1;
    color: var(--divider-color);
    opacity: 1;
    margin: 0;
}

.company-supports-content-prime p {
    color: var(--primary-color);
    margin-bottom: 0;
}

.company-supports-slider-prime {
    padding: 0 2.083vw;
}

.company-supports-logo-prime {
    text-align: center;
}

.company-supports-logo-prime img {
    width: 100%;
    max-width: 170px;
    height: 40px;
}

.our-story-prime {
    position: relative;
    background-image: url('../images/our-story-bg-image-prime.jpg');
    background-position: center center;
    padding: 120px 0;
    overflow: hidden;
}

.our-story-prime::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--primary-color);
    opacity: 0.9;
    height: 100%;
    width: 100%;
    z-index: 1;
}

.our-story-prime .container {
    position: relative;
    z-index: 2;
}

.our-story-prime .section-row {
    margin-bottom: 0;
}

.intro-video-play-btn-prime {
    text-align: center;
    margin: 120px 0;
}

.intro-video-play-btn-prime .video-play-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 20px;
    z-index: 1;
}

.intro-video-play-btn-prime .video-play-button a {
    position: relative;
    height: 80px;
    width: 80px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: none;
    transition: all 0.4s ease-in-out;
}

.intro-video-play-btn-prime .video-play-button:hover a {
    background-position: right center;
}

.intro-video-play-btn-prime .video-play-button a.bg-effect:before,
.intro-video-play-btn-prime .video-play-button a.bg-effect:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border: 56px solid var(--white-color);
    opacity: 50%;
    border-radius: 50%;
    transform: scale(0.6);
    z-index: -1;
    animation: border-zooming 1.2s infinite linear;
}

.intro-video-play-btn-prime .video-play-button a.bg-effect:after {
    animation-delay: .3s;
}

@keyframes border-zooming {
    100% {
        transform: scale(1);
        opacity: 0;
    }
}

.intro-video-play-btn-prime .video-play-button a i {
    font-size: 30px;
    color: var(--white-color);
    margin-left: 2px;
}

.intro-video-play-btn-prime span {
    display: block;
    color: var(--white-color);
    font-size: 20px;
    font-weight: 500;
    margin-top: 30px;
}

.our-story-prime .company-supports-slider-box-prime {
    border-top: 1px solid var(--dark-divider-color);
    margin: 0;
    padding-top: 30px;
}

.our-story-prime .company-supports-slider-box-prime .company-supports-slider-prime {
    padding: 0;
}

.our-pricing-prime {
    padding: 120px 0;
}

.pricing-item-prime {
    background: var(--secondary-color);
    border-radius: 10px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 10px;
}

.pricing-item-header-prime {
    text-align: center;
    padding: 20px 20px 30px;
}

.pricing-item-header-prime .icon-box {
    height: 50px;
    width: 50px;
    background: linear-gradient(270deg, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 30px;
    transition: all 0.4s ease-in-out;
}

.pricing-item-prime:hover .icon-box {
    background-position: right center;
}

.pricing-item-header-prime .icon-box img {
    width: 100%;
    max-width: 24px;
}

.pricing-item-content-prime h2 {
    font-size: 20px
}

.pricing-item-content-prime p {
    margin: 20px 0 0;
}

.pricing-item-price-prime h2 {
    font-size: 40px;
}

.pricing-item-price-prime {
    margin-top: 20px;
}

.pricing-item-price-prime h2 sub {
    color: var(--text-color);
    font-size: 16px;
    font-weight: 400;
    bottom: 0;
}

.pricing-item-btn-prime {
    margin-top: 30px;
}

.pricing-item-btn-prime .btn-default {
    width: 100%;
    padding: 18px 24px;
}

.pricing-item-btn-prime .btn-default::before {
    display: none;
}

.pricing-item-list-prime {
    background-color: var(--bg-color);
    padding: 30px;
    border-radius: 10px;
}

.pricing-item-list-prime ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.pricing-item-list-prime ul li {
    position: relative;
    line-height: 1.5em;
    margin-bottom: 15px;
    border-bottom: 1px solid var(--divider-color);
    padding-left: 25px;
    padding-bottom: 15px;
}

.pricing-item-list-prime ul li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.pricing-item-list-prime ul li::before {
    content: '\f058';
    position: absolute;
    font-family: 'Font Awesome 7 Free';
    font-size: 18px;
    font-weight: 900;
    color: var(--accent-secondary-color);
    top: 0;
    left: 0;
}

.pricing-benefit-list-prime {
    margin-top: 30px;
}

.pricing-benefit-list-prime ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 60px;
}

.pricing-benefit-list-prime ul li {
    display: inline-flex;
    align-items: center;
    line-height: normal;
}

.pricing-benefit-list-prime ul li img {
    width: 100%;
    max-width: 20px;
    margin-right: 10px;
}

.key-effect-prime {
    padding: 120px 0;
}

.key-effect-prime .get-in-touch-circle-prime {
    text-align: right;
}

.key-effect-prime .get-in-touch-circle-prime img {
    max-width: 150px;
}

.key-effect-item-prime {
    position: relative;
    min-height: 450px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    gap: 30px;
    border-radius: 10px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 40px;
    overflow: hidden;
}

.key-effect-item-prime.box-1 {
    background-color: var(--primary-color);
}

.key-effect-item-prime.box-1::before {
    content: ' ';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent 0%, var(--primary-color) 80%);
    z-index: 1;
}

.key-effect-item-prime .icon-box {
    position: relative;
    width: 50px;
    height: 50px;
    background: linear-gradient(to right, var(--accent-color) 0%, var(--accent-secondary-color) 50%, var(--accent-color) 100%);
    background-size: 200% auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    transition: all 0.4s ease-in-out;
}

.key-effect-item-prime:hover .icon-box {
    background-position: right center;
}

.key-effect-item-prime .icon-box img {
    width: 100%;
    max-width: 24px;
}

.key-effect-item-body-prime {
    position: relative;
    z-index: 1;
}

.key-effect-item-list-prime ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 20px;
}

.key-effect-item-list-prime ul li {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    color: var(--white-color);
    background-color: var(--dark-divider-color);
    border: 1px solid var(--dark-divider-color);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border-radius: 40px;
    padding: 5px 15px;
}

.key-effect-item-content-prime {
    margin-top: 20px;
}

.key-effect-item-content-prime h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--white-color);
}

.key-effect-item-content-prime p {
    color: var(--white-color);
    margin: 15px 0 0;
}

.key-effect-item-prime.box-2 {
    background-color: var(--white-color);
}

.key-effect-item-prime.box-2::before {
    content: ' ';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent 25%, var(--white-color) 70%);
    z-index: 1;
}

.key-effect-item-prime.box-2 .key-effect-item-list-prime ul li {
    background-color: var(--divider-color);
    color: var(--primary-color);
}

.key-effect-item-prime.box-2 .key-effect-item-content-prime h3 {
    color: var(--primary-color);
}

.key-effect-item-prime.box-2 .key-effect-item-content-prime p {
    color: var(--text-color);
}

.key-effect-item-image-prime {
    position: absolute;
    top: auto;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.key-effect-item-image-prime img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.key-effect-item-prime.box-3 {
    justify-content: end;
}

.key-effect-item-prime.box-3::before {
    content: ' ';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent 10%, var(--accent-color) 85%);
    z-index: 1;
}

.key-effect-cta-body-header-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.key-effect-cta-title-prime {
    width: calc(100% - 65px);
}

.key-effect-cta-title-prime h3 {
    color: var(--white-color);
    font-size: 20px;
}

.key-effect-cta-content-prime {
    margin-top: 20px;
}

.key-effect-cta-content-prime p {
    color: var(--white-color);
    margin: 0;
}

.key-effect-counter-list-prime {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 30px;
    margin-top: 30px;
    gap: 30px 60px;
}

.key-effect-counter-item-prime {
    position: relative;
    width: calc(50% - 30px);
}

.key-effect-counter-item-prime::before {
    content: ' ';
    position: absolute;
    top: 0;
    right: -30px;
    width: 1px;
    height: 100%;
    background-color: var(--dark-divider-color);
}

.key-effect-counter-item-prime:last-child:before {
    display: none;
}

.key-effect-counter-item-prime h2 {
    font-size: 48px;
    font-weight: 600;
    color: var(--white-color);
}

.key-effect-counter-item-prime p {
    color: var(--white-color);
    margin: 10px 0 0;
}

.our-testimonial-prime {
    position: relative;
    background-image: url("../images/testimonial-bg-image-prime.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
    padding: 120px 0;
}

.testimonial-slider-prime .swiper-wrapper {
    cursor: none;
}

.testimonial-item-prime {
    background-color: var(--bg-color);
    border-radius: 10px;
    padding: 30px;
}

.testimonial-item-rating-prime i {
    font-size: 16px;
    background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-secondary-color) 100%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.testimonial-item-content-prime {
    margin-top: 30px;
}

.testimonial-item-content-prime p {
    color: var(--text-color);
    margin: 0;
}

.testimonial-item-footer-prime {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid var(--divider-color);
    padding-top: 30px;
    margin-top: 30px;
    gap: 20px;
}

.testimonial-author-box-prime {
    width: calc(100% - 50px);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.testimonial-author-image-prime figure {
    display: block;
    border-radius: 50%;
}

.testimonial-author-image-prime img {
    width: 100%;
    max-width: 50px;
    border-radius: 50%;
}

.testimonial-author-content-prime {
    width: calc(100% - 65px);
}

.testimonial-author-content-prime h2 {
    font-size: 20px;
    font-weight: 700;
}

.testimonial-author-content-prime p {
    color: var(--text-color);
    margin: 5px 0 0;
}

.testimonial-item-quote-prime img {
    width: 100%;
    max-width: 30px;
}

.testimonial-slider-prime .testimonial-pagination-prime {
    position: relative;
    margin-top: 60px;
    text-align: center;
}

.testimonial-slider-prime .testimonial-pagination-prime .swiper-pagination-bullet {
    position: relative;
    height: 10px;
    width: 10px;
    background: var(--divider-color);
    opacity: 1;
    margin: 0 8px;
    transition: all 0.3s ease-in-out;
}

.testimonial-slider-prime .testimonial-pagination-prime .swiper-pagination-bullet:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 0;
    width: 0;
    border-radius: 50%;
    transition: all 0.3s ease-in-out;
}

.testimonial-slider-prime .testimonial-pagination-prime .swiper-pagination-bullet-active {
    background: var(--accent-secondary-color);
}

.testimonial-slider-prime .testimonial-pagination-prime .swiper-pagination-bullet-active:before {
    border: 1px solid var(--accent-secondary-color);
    height: 20px;
    width: 20px;
}

.our-testimonial-prime .company-supports-slider-box-prime {
    border-top: 1px solid var(--divider-color);
    padding-top: 30px;
}

.our-testimonial-prime .company-supports-slider-prime {
    padding: 0;
}

.main-footer-prime {
    padding: 120px 0 0;
    margin-bottom: 15px;
}

.footer-about-prime {
    margin-right: 50px;
}

.footer-logo-prime img {
    width: 100%;
    max-width: 163px;
}

.about-footer-content-prime h2 {
    font-size: 20px;
    font-weight: 700;
    color: var(--white-color);
    margin-bottom: 30px;
}

.about-footer-content-prime p {
    color: var(--white-color);
    margin: 0;
}

.footer-social-link-prime {
    margin-top: 40px;
}

.footer-social-link-prime ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 15px;
}

.footer-social-link-prime ul li a {
    width: 36px;
    height: 36px;
    border: 1px solid var(--white-color);
    background: transparent;
    color: var(--white-color);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease-in-out;
}

.footer-social-link-prime ul li a:hover {
    background-color: var(--white-color);
    color: var(--primary-color);
}

.footer-social-link-prime ul li a i {
    font-size: 18px;
    color: inherit;
}

.footer-links-box-prime {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
}

.footer-links-prime {
    max-width: 35%;
}

.footer-links-prime h2 {
    font-size: 20px;
    font-weight: 700;
    color: var(--white-color);
    margin-bottom: 30px;
}

.footer-links-prime ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links-prime ul li {
    color: var(--white-color);
    line-height: 1.5em;
    margin-bottom: 15px;
}

.footer-links-prime ul li:last-child {
    margin-bottom: 0;
}

.footer-links-prime ul li a {
    color: inherit;
    transition: all 0.4s ease-in-out;
}

.footer-links-prime ul li a:hover {
    color: var(--accent-secondary-color);
}

.footer-links-prime.footer-contact-prime ul li {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.footer-links-prime.footer-contact-prime ul li:last-child {
    margin-bottom: 0;
}

.footer-links-prime.footer-contact-prime ul li img {
    width: 100%;
    max-width: 20px;
}

.footer-copyright-text-prime {
    border-top: 1px solid var(--dark-divider-color);
    padding: 60px 0;
    margin-top: 60px;
}

.footer-copyright-text-prime p {
    text-align: center;
    color: var(--white-color);
    margin: 0;
}

@media only screen and (max-width: 1440px) {
    .hero-content-box-prime {
        padding: 50px 30px;
    }
    .hero-info-header-box-prime {
        padding: 10px 10px 20px;
    }
    .hero-info-content-prime {
        margin-top: 20px;
        padding-top: 20px;
    }
}

@media only screen and (max-width: 1024px) {
    .hero-prime {
        margin-top: 15px;
    }
    .hero-content-box-prime,
    .hero-image-box-prime {
        width: 100%;
    }
    .hero-content-box-prime::before {
        right: -100px;
        bottom: 40px;
        width: 390px;
        height: 500px;
    }
    .hero-image-prime,
    .hero-image-prime figure,
    .hero-image-prime figure img {
        height: auto;
    }
    .hero-feature-list-prime {
        gap: 30px 40px;
        padding: 20px;
    }
    .hero-feature-item-prime {
        width: calc(50% - 20px);
    }
    .hero-feature-item-prime::before {
        right: -20px;
    }
    .hero-feature-item-prime:nth-child(2n+2)::before {
        display: none;
    }
    .about-us-contant {
        margin-bottom: 30px;
    }
    .about-us-image-box-prime {
        max-width: 740px;
        margin: 0 auto;
    }
    .why-choose-us-image-prime {
        max-width: 430px;
        margin: 30px auto 0;
        text-align: center;
    }
    .key-effect-prime .get-in-touch-circle-prime {
        display: none;
    }
    .footer-about-prime {
        margin-right: 0;
    }
}

@media only screen and (max-width: 991px) {
    header.main-header.main-header-prime {
        margin-top: 15px;
    }
    header.main-header.main-header-prime .header-sticky {
        margin: 0;
    }
    header.main-header.main-header-prime .header-sticky.active {
        top: 0;
        left: 0;
        right: 0;
        border-radius: 0;
        border-left: none;
        border-right: none;
        border-top: none;
    }
    .main-header-prime .navbar {
        padding: 20px 15px;
    }
    .hero-content-box-prime {
        padding: 30px 15px;
        gap: 30px;
    }
    .hero-content-header-prime .section-title h1 {
        font-size: 44px;
    }
    .hero-content-body-prime {
        padding-top: 30px;
    }
    .hero-content-list-prime ul li {
        margin-bottom: 10px;
    }
    .hero-content-list-prime ul li::before {
        font-size: 16px;
    }
    .get-in-touch-circle-prime a img {
        max-width: 120px;
    }
    .hero-image-prime figure img {
        aspect-ratio: 1 / 0.85;
    }
    .hero-image-content-box-prime {
        padding: 15px 0 0 15px;
        max-width: 350px;
    }
    .about-us-prime {
        padding: 60px 0;
    }
    .about-us-footer-prime {
        margin-top: 30px;
    }
    .about-us-item-prime {
        padding: 20px;
    }
    .about-us-item-prime .icon-box {
        margin-bottom: 20px;
    }
    .about-us-cta-content-prime h2 {
        font-size: 40px;
    }
    .our-services-prime {
        padding: 60px 0;
    }
    .service-item-prime {
        min-height: auto;
        padding: 20px;
    }
    .service-item-content-prime p {
        margin: 10px 0 0;
    }
    .service-item-image-prime figure {
        height: 170px;
        width: 170px;
    }
    .why-choose-us-prime {
        padding: 60px 0;
    }
    .why-choose-item-prime {
        padding: 20px;
    }
    .company-supports-slider-box-prime {
        margin-top: 40px;
    }
    .company-supports-content-prime {
        margin-bottom: 30px;
    }
    .company-supports-slider-prime {
        padding: 0;
    }
    .company-supports-logo-prime img {
        max-width: 145px;
        height: 34px;
    }
    .our-story-prime {
        padding: 60px 0;
    }
    .intro-video-play-btn-prime {
        margin: 80px 0;
    }
    .intro-video-play-btn-prime .video-play-button a {
        height: 65px;
        width: 65px;
    }
    .intro-video-play-btn-prime .video-play-button a.bg-effect:before,
    .intro-video-play-btn-prime .video-play-button a.bg-effect:after {
        border-width: 50px;
    }
    .intro-video-play-btn-prime .video-play-button a i {
        font-size: 20px;
    }
    .our-pricing-prime {
        padding: 60px 0;
    }
    .pricing-item-header-prime {
        padding: 10px 10px 20px;
    }
    .pricing-item-header-prime .icon-box {
        margin-bottom: 20px;
    }
    .pricing-item-content-prime p {
        margin: 10px 0 0;
    }
    .pricing-item-price-prime {
        margin-top: 15px;
    }
    .pricing-item-price-prime h2 {
        font-size: 36px;
    }
    .pricing-item-btn-prime {
        margin-top: 20px;
    }
    .pricing-item-list-prime {
        padding: 20px;
    }
    .pricing-item-btn-prime .btn-default {
        padding: 15px;
    }
    .pricing-item-list-prime ul li {
        margin-bottom: 10px;
        padding-bottom: 10px;
    }
    .pricing-item-list-prime ul li::before {
        font-size: 16px;
    }
    .pricing-benefit-list-prime {
        margin-top: 10px;
    }
    .pricing-benefit-list-prime ul {
        gap: 15px 30px;
    }
    .pricing-benefit-list-prime ul li img {
        max-width: 18px;
    }
    .key-effect-prime {
        padding: 60px 0;
    }
    .key-effect-item-prime {
        min-height: 400px;
        padding: 30px;
    }
    .key-effect-cta-content-prime {
        margin-top: 15px;
    }
    .key-effect-counter-list-prime {
        padding-top: 20px;
        margin-top: 20px;
        gap: 20px 30px;
    }
    .key-effect-counter-item-prime {
        width: calc(50% - 15px);
    }
    .key-effect-counter-item-prime::before {
        right: -15px;
    }
    .key-effect-counter-item-prime h2 {
        font-size: 38px;
    }
    .our-testimonial-prime {
        padding: 60px 0;
    }
    .testimonial-item-prime {
        padding: 20px;
    }
    .testimonial-item-content-prime {
        margin-top: 20px;
    }
    .testimonial-item-footer-prime {
        padding-top: 20px;
        margin-top: 20px;
    }
    .testimonial-slider-prime .testimonial-pagination-prime {
        margin-top: 40px;
    }
    .main-footer-prime {
        padding: 60px 0 0;
        margin-bottom: 0;
    }
    .about-footer-content-prime {
        margin-top: 15px;
    }
    .footer-social-link-prime {
        margin-top: 20px;
    }
    .footer-about-prime {
        margin: 0 0 30px;
    }
    .footer-links-prime h2 {
        margin-bottom: 20px;
    }
    .footer-links-prime ul li {
        margin-bottom: 10px;
    }
    .footer-copyright-text-prime {
        padding: 30px 0;
        margin-top: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .page-header-box ol {
        flex-wrap: nowrap;
    }
    .page-header-box ol li.breadcrumb-item {
        font-size: 13px;
        flex-shrink: 0;
    }
    .page-header-box ol .breadcrumb-item:not(:first-child):not(:last-child) {
        display: none;
    }
    .page-header-box ol li.breadcrumb-item.active {
        min-width: 0;
        flex-shrink: 1;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .hero-content-box-prime {
        padding: 20px;
    }
    .hero-content-box-prime::before {
        right: -50px;
        width: 230px;
        height: 290px;
    }
    .hero-content-header-prime .section-title h1 {
        font-size: 28px;
    }
    .hero-satisfaction-client-box-prime {
        gap: 20px;
    }
    .hero-content-body-prime {
        gap: 20px;
    }
    .get-in-touch-circle-prime {
        display: none;
    }
    .hero-image-prime figure img {
        aspect-ratio: 1 / 1.15;
    }
    .hero-image-content-box-prime {
        padding: 10px 0 0 10px;
        max-width: 230px;
    }
    .hero-info-header-box-prime {
        padding: 10px 5px 15px;
    }
    .hero-info-header-prime {
        gap: 10px;
    }
    .hero-info-header-title-prime {
        width: calc(100% - 70px);
    }
    .hero-info-header-title-prime h2 {
        font-size: 16px;
    }
    .hero-info-content-prime {
        padding-top: 10px;
        margin-top: 10px;
    }
    .hero-info-content-prime p {
        font-size: 14px;
    }
    .hero-feature-list-prime {
        gap: 20px;
        padding: 15px;
    }
    .hero-feature-item-prime {
        width: calc(50% - 10px);
        flex-direction: column;
        text-align: center;
    }
    .hero-feature-item-prime::before {
        right: -10px;
    }
    .hero-feature-item-prime:nth-child(4n+4):before {
        display: block;
    }
    .hero-feature-item-prime:nth-child(2n+2):before,
    .hero-feature-item-prime:last-child:before {
        display: none;
    }
    .hero-feature-item-content-prime {
        width: 100%;
    }
    .hero-feature-item-content-prime h3 {
        font-size: 16px;
    }
    .about-us-body-prime {
        gap: 20px;
    }
    .about-us-item-prime {
        width: 100%;
    }
    .about-us-footer-prime {
        gap: 20px;
    }
    .about-author-item-prime {
        width: 100%;
    }
    .about-author-content-prime h3 {
        font-size: 18px;
    }
    .about-us-item-content-prime h3 {
        font-size: 18px;
    }
    .about-us-image-box-prime {
        gap: 10px;
    }
    .about-us-image-box-1-prime {
        width: calc(55% - 5px);
    }
    .about-us-image-box-2-prime {
        width: calc(45% - 5px);
    }
    .about-us-cta-box-prime {
        padding: 10px;
        margin-bottom: 10px;
        background-size: 60px auto;
    }
    .about-us-cta-box-prime .icon-box {
        margin-bottom: 15px;
    }
    .about-us-cta-content-prime h2 {
        font-size: 28px;
    }
    .about-us-cta-content-prime p {
        font-size: 14px;
    }
    .service-item-prime {
        gap: 20px;
    }
    .service-item-content-prime h2 {
        font-size: 18px;
    }
    .service-item-image-prime figure {
        height: 140px;
        width: 140px;
    }
    .why-choose-us-image-prime {
        margin: 30px 0 30px;
    }
    .why-choose-item-title-prime h3 {
        font-size: 18px;
    }
    .company-supports-slider-box-prime {
        margin-top: 30px;
    }
    .company-supports-content-prime {
        gap: 10px;
        justify-content: center;
        margin-bottom: 20px;
    }
    .company-supports-content-prime hr {
        display: none;
    }
    .intro-video-play-btn-prime {
        margin: 40px 0;
    }
    .intro-video-play-btn-prime .video-play-button a {
        height: 50px;
        width: 50px;
    }
    .intro-video-play-btn-prime .video-play-button a.bg-effect:before,
    .intro-video-play-btn-prime .video-play-button a.bg-effect:after {
        border-width: 40px;
    }
    .intro-video-play-btn-prime .video-play-button a i {
        font-size: 18px;
    }
    .intro-video-play-btn-prime span {
        font-size: 18px;
    }
    .our-story-prime .company-supports-slider-box-prime {
        padding-top: 20px;
    }
    .pricing-item-content-prime h2 {
        font-size: 18px;
    }
    .pricing-item-content-prime p {
        margin: 10px 0 0;
    }
    .pricing-item-price-prime h2 {
        font-size: 30px;
    }
    .pricing-item-price-prime h2 sub {
        font-size: 14px;
    }
    .pricing-benefit-list-prime ul {
        gap: 10px 20px;
    }
    .pricing-benefit-list-prime ul li {
        font-size: 14px;
    }
    .pricing-benefit-list-prime ul li img {
        max-width: 16px;
        margin-right: 5px;
    }
    .key-effect-item-prime {
        min-height: 350px;
        padding: 20px;
    }
    .key-effect-item-content-prime h3,
    .key-effect-cta-title-prime h3 {
        font-size: 18px
    }
    .key-effect-item-content-prime p {
        margin-top: 10px;
    }
    .key-effect-counter-item-prime h2 {
        font-size: 26px;
    }
    .key-effect-counter-item-prime p {
        margin-top: 5px;
    }
    .testimonial-item-prime {
        padding: 20px;
    }
    .testimonial-author-content-prime h2 {
        font-size: 18px;
    }
    .testimonial-author-content-prime p {
        font-size: 14px;
    }
    .about-footer-content-prime {
        margin-top: 15px;
    }
    .footer-links-prime {
        max-width: 100%;
    }
    .footer-links-prime h2 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .footer-links-prime.footer-contact-prime ul li {
        margin-bottom: 15px;
    }
    .footer-links-prime.footer-contact-prime ul li img {
        max-width: 18px;
    }
    .footer-copyright-text-prime {
        padding: 15px 0;
    }
}

/* Review Modal */
.review-modal .modal-content {
    border-radius: 16px;
    border: none;
    padding: 10px;
}

.review-modal .modal-header {
    border-bottom: 1px solid var(--divider-color);
}

.review-modal .modal-title {
    font-size: 22px;
    font-weight: 600;
}

.review-star-rating {
    font-size: 32px;
    letter-spacing: 10px;
    cursor: pointer;
    margin-bottom: 8px;
}

.review-star-rating i {
    color: #d8d8d8;
    opacity: 0.6;
    display: inline-block;
    transition: color 0.15s ease-in-out, opacity 0.15s ease-in-out, transform 0.15s ease-in-out;
}

.review-star-rating i.active {
    color: #f5b301;
    opacity: 1;
    transform: scale(1.15);
}

.review-form-message {
    font-size: 14px;
    margin-bottom: 12px;
    min-height: 20px;
}

.review-form-message.success {
    color: #1a9c58;
}

.review-form-message.error {
    color: #e6483a;
}

.testimonial-author-image-generic {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #116DAD !important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 22px;
}

.testimonial-author-initial {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #116DAD !important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 20px;
    font-weight: 700;
    flex-shrink: 0;
}

/************************************/

/***  35. Global Mobile Responsiveness Fixes  ***/

/*
   Almost all of this stylesheet's component rules (lines ~602-5305) are
   wrapped in a single `@media (min-width: 992px)` block, so anything
   defined only in that range renders completely unstyled below 992px
   unless a matching override exists further down in the "Responsive css"
   section. The .theory-* content classes (diagrams, tables, nested
   accordions, lists) used throughout the department/phase content pages
   were added without such overrides, so on phones and small tablets their
   images and tables rendered at native size with no width constraint,
   causing horizontal overflow. The rules below are unconditional
   (no @media wrapper) so they apply at every viewport width; they are
   harmless duplicates of the desktop rules at >=992px and the only
   active styling below that.
*/

/************************************/

img {
    max-width: 100%;
    height: auto;
}

.theory-diagram {
    background: var(--white-color);
    border: 1px solid var(--divider-color);
    border-radius: 8px;
    padding: 15px;
    margin: 5px 0 15px;
    text-align: center;
    max-width: 100%;
}

.theory-diagram img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
}

.theory-diagram figcaption {
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-color);
    margin-top: 12px;
}

.theory-diagram-placeholder {
    background: var(--bg-color);
    border: 1px dashed var(--divider-color);
    border-radius: 8px;
    padding: 20px;
    margin: 5px 0 15px;
    text-align: center;
}

.theory-diagram-placeholder .placeholder-label {
    display: block;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--primary-color);
    margin-bottom: 8px;
}

.theory-diagram-placeholder p {
    font-size: 14px;
    color: var(--text-color);
    margin: 0;
}

.theory-table-wrap {
    overflow-x: auto;
    margin: 5px 0 15px;
    -webkit-overflow-scrolling: touch;
}

.theory-table {
    width: 100%;
    min-width: 480px;
    border-collapse: collapse;
    background: var(--white-color);
    border: 1px solid var(--divider-color);
    border-radius: 8px;
    overflow: hidden;
}

.theory-table th,
.theory-table td {
    padding: 10px 14px;
    text-align: left;
    border-bottom: 1px solid var(--divider-color);
    font-size: 14px;
    line-height: 1.5em;
}

.theory-table th {
    background: var(--bg-color);
    color: var(--primary-color);
    font-weight: 600;
}

.theory-table tr:last-child td {
    border-bottom: none;
}

.nested-accordion {
    margin-top: 10px;
}

.nested-accordion.accordion-item {
    background: #F5F8FA;
    border: 1px solid var(--divider-color);
    border-radius: 8px;
    margin-bottom: 15px;
}

.nested-accordion.accordion-item:last-child {
    margin-bottom: 0;
}

.nested-accordion .accordion-header .accordion-button {
    font-size: 16px;
    padding: 15px 50px 15px 15px;
}

.nested-accordion .accordion-body {
    padding: 5px 20px 20px;
}

.theory-subheading {
    font-size: 15px;
    font-weight: 600;
    color: var(--primary-color);
    margin: 15px 0 8px;
}

.theory-subheading:first-child {
    margin-top: 0;
}

.theory-list {
    margin: 0 0 15px;
    padding-left: 20px;
}

.theory-list:last-child {
    margin-bottom: 0;
}

.theory-list li {
    line-height: 1.6em;
    margin-bottom: 8px;
}

.theory-list li:last-child {
    margin-bottom: 0;
}

.theory-formula {
    display: inline-block;
    background: var(--white-color);
    border: 1px dashed var(--divider-color);
    border-radius: 6px;
    padding: 8px 16px;
    margin: 5px 0 15px;
    font-style: italic;
    max-width: 100%;
}

.theory-definition-list {
    list-style: none;
    margin: 0 0 15px;
    padding-left: 10px;
    border-left: 2px solid var(--divider-color);
}

.theory-definition-list li {
    line-height: 1.6em;
    margin-bottom: 6px;
}

.theory-definition-list li:last-child {
    margin-bottom: 0;
}

@media only screen and (max-width: 575px) {
    .theory-diagram {
        padding: 10px;
    }
    .theory-diagram figcaption {
        font-size: 13px;
    }
    .theory-table th,
    .theory-table td {
        padding: 8px 10px;
        font-size: 13px;
    }
    .nested-accordion .accordion-header .accordion-button {
        font-size: 15px;
        padding: 12px 40px 12px 12px;
    }
    .nested-accordion .accordion-body {
        padding: 5px 15px 15px;
    }
}
