/*-----------------------------------------------------------------------------------

    Template Name: tryesy - Digital Agency HTML Template
    Author: Theme_Pure
    Support: https://help.themepure.net/support/
    Description: tryesy - Digital Agency HTML Template
    Version: 1.0

-----------------------------------------------------------------------------------

/************ TABLE OF CONTENTS ***************

	-----------------
    01. THEME CSS
	-----------------
		1.1 Common Classes

	-----------------
    02. COMPONENTS css
	-----------------
		2.1 Back to top
		2.2 Theme Settings
		2.3 Buttons
		2.4 Animations
		2.5 Preloader
		2.6 Background 
		2.7 Carousel
		2.8 Nice Select
		2.9 Pagination
		2.10 Offcanvas
		2.11 Breadcrumb
		2.12 Accordion
		2.13 Tab
		2.14 Modal
		2.15 Section Title
		2.16 Search
		2.17 Hotspot
		2.18 Ragne Slider

	-----------------
    03. HEADER CSS
	-----------------
		3.1 Header Style 1
		3.3 Header Style 3
		3.4 Header Style 4


    ---------------------------------
	04. MENU CSS
	---------------------------------
		4.1 Main menu css
		4.2 Mobilemenu css

	---------------------------------
	05. BLOG CSS
	---------------------------------
		5.1 Postbox css
		5.2 Recent Post css
		5.3 Sidebar css
		5.4 Blog css

	---------------------------------
	06. FOOTER CSS
	---------------------------------
		6.1 Footer Style 1
		6.2 Footer Style 2
		6.3 Footer Style 3


	---------------------------------
	07. PAGES CSS
	---------------------------------
		7.1 about css
		7.2 brand css
		7.3 contact css
		7.4 cta css
		7.5 dashboard css
		7.6 faq css
		7.7 funfact css
		7.8 goal css
		7.9 Hero css
		7.10 price css
		7.11 project css
		7.12 service css
		7.13 skill css
		7.14 slider css
		7.15 step css
		7.16 team css
		7.17 testimonial css
		7.18 text-anim css
		7.19 text slide css
		7.20 video css
		7.21 vission css

**********************************************/
/*----------------------------------------*/
/*  1.1 Theme Default
/*----------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap&family=Niconne&display=swap");

.tp-offcanvas-area,
.tp-offcanvas-social ul li a,
.back-to-top-wrapper,
a,
button,
p,
input,
select,
textarea,
li,
.transition-3 {
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.tp-btn-white span {
    -webkit-transform: translateY(-1px);
    -moz-transform: translateY(-1px);
    -ms-transform: translateY(-1px);
    -o-transform: translateY(-1px);
    transform: translateY(-1px);
}

.tp-footer-widget-content ul li a span {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
}

.tp-slider-scroll-down a span {
    -webkit-transform: translateY(-3px);
    -moz-transform: translateY(-3px);
    -ms-transform: translateY(-3px);
    -o-transform: translateY(-3px);
    transform: translateY(-3px);
}

/* transform */
:root {
    /**
  @font family declaration
  */
    --tp-ff-body: "Manrope", sans-serif;
    --tp-ff-heading: "Manrope", sans-serif;
    --tp-ff-p: "Manrope", sans-serif;
    --tp-ff-niconne: "Niconne", cursive;
    --tp-ff-fontawesome: "Font Awesome 6 Pro";
    /**
  @color declaration
  */
    --tp-common-white: #FFFFFF;
    --tp-common-black: #141820;
    --tp-common-black-2: #171b24;
    --tp-common-black-3: #002B3B;
    --tp-common-black-4: #012836;
    --tp-common-yellow: #FFEF5B;
    --tp-common-yellow-2: #FAFF1C;
    --tp-common-pink: #d70b54;
    --tp-common-pink-2: #FD4185;
    --tp-common-pink-3: #f939a0;
    --tp-common-sky: #27B5FF;
    --tp-common-sky-2: #44E8F2;
    --tp-common-blue: #277dff;
    --tp-common-paste: #a1ecea;
    --tp-common-purple: #605cfa;
    --tp-common-purple-2: #35387a;
    --tp-common-purple-3: #6B68CE;
    --tp-common-purple-4: #6C68D4;
    --tp-theme-1: #A4FF5C;
    --tp-grey-1: #F6F7F9;
    --tp-grey-2: #b4b7be;
    --tp-grey-3: #EEF0F5;
    --tp-grey-4: #EFF1F2;
    --tp-grey-5: #eef0f5;
    --tp-text-body: #525356;
    --tp-border-1: #EAEBED;
}

@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1230px;
        bs-gutter-x: 30px;
    }

    .container-1680 {
        max-width: 1680px;
    }
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

/*---------------------------------
	typography css start 
---------------------------------*/
body {
    font-size: 14px;
    line-height: 26px;
    font-weight: normal;
    color: var(--tp-text-body);
    font-family: var(--tp-ff-body);
    overflow-x: hidden;
}

img {
    max-width: 100%;
}

a {
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0px;
    font-weight: 500;
    line-height: 1.2;
    -webkit-transition: color 0.3s ease-out;
    -moz-transition: color 0.3s ease-out;
    -ms-transition: color 0.3s ease-out;
    -o-transition: color 0.3s ease-out;
    transition: color 0.3s ease-out;
    color: var(--tp-common-black);
    font-family: var(--tp-ff-heading);
}

h1 {
    font-size: 40px;
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 28px;
}

h4 {
    font-size: 24px;
}

h5 {
    font-size: 20px;
}

h6 {
    font-size: 16px;
}

ul {
    margin: 0px;
    padding: 0px;
}

p {
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 15px;
    line-height: 26px;
    font-family: var(--tp-ff-p);
    color: var(--tp-text-body);
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}

a:focus,
.button:focus {
    text-decoration: none;
    outline: none;
}

a:focus,
a:hover {
    color: inherit;
    text-decoration: none;
}

a,
button {
    color: inherit;
    outline: none;
    border: none;
    background: transparent;
}

button:hover {
    cursor: pointer;
}

button:focus {
    outline: 0;
}

.uppercase {
    text-transform: uppercase;
}

.capitalize {
    text-transform: capitalize;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=number],
input[type=password],
input[type=url],
textarea {
    outline: none;
    height: 56px;
    width: 100%;
    line-height: 56px;
    font-size: 14px;
    padding-left: 26px;
    padding-right: 26px;
    color: var(--tp-common-black);
    border: 1px solid var(--tp-common-black);
    background-color: var(--tp-common-white);
}

input[type=text]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
input[type=number]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=url]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: var(--tp-common-black);
}

input[type=text]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=number]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=url]::-moz-placeholder,
textarea::-moz-placeholder {
    /* Firefox 19+ */
    color: var(--tp-common-black);
}

input[type=text]:-moz-placeholder,
input[type=email]:-moz-placeholder,
input[type=tel]:-moz-placeholder,
input[type=number]:-moz-placeholder,
input[type=password]:-moz-placeholder,
input[type=url]:-moz-placeholder,
textarea:-moz-placeholder {
    /* Firefox 4-18 */
    color: var(--tp-common-black);
}

input[type=text]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
input[type=number]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=url]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    /* IE 10+  Edge*/
    color: var(--tp-common-black);
}

input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
input[type=number]::placeholder,
input[type=password]::placeholder,
input[type=url]::placeholder,
textarea::placeholder {
    /* MODERN BROWSER */
    color: var(--tp-common-black);
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=url]:focus,
textarea:focus {
    border-color: var(--tp-common-black);
}

input[type=text]:focus::placeholder,
input[type=email]:focus::placeholder,
input[type=tel]:focus::placeholder,
input[type=number]:focus::placeholder,
input[type=password]:focus::placeholder,
input[type=url]:focus::placeholder,
textarea:focus::placeholder {
    opacity: 0;
}

textarea {
    line-height: 1.4;
    padding-top: 17px;
    padding-bottom: 17px;
}

input[type=color] {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;
    border: 0;
    cursor: pointer;
    height: 100%;
    width: 100%;
    padding: 0;
    border-radius: 50%;
}

*::-moz-selection {
    background: var(--tp-common-black);
    color: var(--tp-common-white);
    text-shadow: none;
}

*::-moz-selection {
    background: var(--tp-common-black);
    color: var(--tp-common-white);
    text-shadow: none;
}

*::selection {
    background: var(--tp-common-black);
    color: var(--tp-common-white);
    text-shadow: none;
}

*::-moz-placeholder {
    color: var(--tp-common-black);
    font-size: 14px;
    opacity: 1;
}

*::placeholder {
    color: var(--tp-common-black);
    font-size: 14px;
    opacity: 1;
}


.tp-line-black {
    display: inline;
    transition: all 0.3s linear;
    background-repeat: no-repeat;
    background-size: 0% 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-image: linear-gradient(#141820, #141820), linear-gradient(#141820, #141820);
}

.tp-line-black:hover {
    background-size: 0% 1px, 100% 1px;
}

.tp-line-white {
    display: inline;
    transition: all 0.3s linear;
    background-repeat: no-repeat;
    background-size: 0% 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-image: linear-gradient(#fff, #fff), linear-gradient(#fff, #fff);
}

.tp-line-white:hover {
    background-size: 0% 1px, 100% 1px;
}

/*---------------------------------
    1.1 Common Classes
---------------------------------*/
.w-img img {
    width: 100%;
}

.m-img img {
    max-width: 100%;
}

.fix {
    overflow: hidden;
}

.clear {
    clear: both;
}

.z-index-1 {
    position: relative;
    z-index: 1;
}

.z-index-2 {
    position: relative;
    z-index: 2;
}

.z-index-3 {
    position: relative;
    z-index: 3;
}

.z-index-4 {
    position: relative;
    z-index: 4;
}

.z-index-5 {
    position: relative;
    z-index: 5;
}

.z-index-6 {
    position: relative;
    z-index: 6;
}

.z-index-7 {
    position: relative;
    z-index: 7;
}

.z-index-8 {
    position: relative;
    z-index: 8;
}

.z-index-9 {
    position: relative;
    z-index: 9;
}

.z-index-10 {
    position: relative;
    z-index: 10;
}

.gx-10 {
    --bs-gutter-x: 10px;
}

.gx-20 {
    --bs-gutter-x: 20px;
}

.gx-30 {
    --bs-gutter-x: 30px;
}

.gx-40 {
    --bs-gutter-x: 40px;
}

.gx-45 {
    --bs-gutter-x: 45px;
}

.gx-50 {
    --bs-gutter-x: 50px;
}

.gx-60 {
    --bs-gutter-x: 60px;
}

.gx-70 {
    --bs-gutter-x: 70px;
}

.gx-80 {
    --bs-gutter-x: 80px;
}

.gx-90 {
    --bs-gutter-x: 90px;
}

.gx-100 {
    --bs-gutter-x: 100px;
}

.overflow-y-visible {
    overflow-x: hidden;
    overflow-y: visible;
}

.p-relative {
    position: relative;
}

.p-absolute {
    position: absolute;
}

.include-bg {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* dropcap */
.tp-dropcap::first-letter {
    float: left;
    width: 65px;
    height: 85px;
    font-size: 90px;
    line-height: 0.8;
    font-weight: 500;
    margin-right: 5px;
    text-align: center;
    line-height: inherit;
    text-transform: capitalize;
    color: var(--tp-common-white);
    font-family: var(--tp-ff-body);
}

.tp-line-hover {
    position: relative;
    display: inline-block;
}

.tp-line-hover::after {
    right: 0;
    bottom: -2px;
    width: 0;
    height: 1px;
    content: "";
    position: absolute;
    background-color: var(--tp-common-black);
    transition: 0.4s;
}

.tp-line-hover:hover::after {
    right: auto;
    left: 0;
    width: 100%;
}

/*---------------------------------
    1.3 Default Spacing
---------------------------------*/
/*----------------------------------------*/
/*  2.1 Back to top
/*----------------------------------------*/
.back-to-top-wrapper {
    position: fixed;
    right: 50px;
    bottom: 0;
    height: 44px;
    width: 44px;
    cursor: pointer;
    display: block;
    border-radius: 50%;
    z-index: 99;
    opacity: 0;
    visibility: hidden;
}

@media (max-width: 767px) {
    .back-to-top-wrapper {
        right: 20px;
        bottom: 20px;
    }
}

.back-to-top-wrapper.back-to-top-btn-show {
    visibility: visible;
    opacity: 1;
    bottom: 50px;
}

.back-to-top-btn {
    display: inline-block;
    width: 44px;
    height: 44px;
    line-height: 44px;
    text-align: center;
    background: var(--tp-theme-1);
    box-shadow: 0px 8px 16px rgba(3, 4, 28, 0.3);
    color: var(--tp-common-black);
    border-radius: 50%;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.back-to-top-btn svg {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
}

.back-to-top-btn:hover {
    -webkit-transform: translateY(-4px);
    -moz-transform: translateY(-4px);
    -ms-transform: translateY(-4px);
    -o-transform: translateY(-4px);
    transform: translateY(-4px);
}

/*----------------------------------------*/
/*  2.3 Buttons
/*----------------------------------------*/
.tp-btn {
    font-weight: 600;
    font-size: 16px;
    transition: 0.3s;
    display: inline-block;
    padding: 9px 23px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    background-color: var(--tp-theme-1);
}

.tp-btn:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-common-yellow);
}

.tp-btn-subscribe {
    font-size: 14px;
    font-weight: 600;
    border-radius: 6px;
    padding: 11px 24px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
    background-color: var(--tp-common-purple);
}

.tp-btn-subscribe span {
    margin-right: 3px;
    display: inline-block;
}

.tp-btn-subscribe span svg {
    transform: translateY(-1px);
}

.tp-btn-subscribe.large {
    border-radius: 6px;
    padding: 22px 24px;
    background-color: var(--tp-common-blue);
}

.tp-btn-white-border {
    font-weight: 600;
    font-size: 14px;
    transition: 0.3s;
    padding: 4px 23px;
    border-radius: 6px;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    border: 2px solid rgba(20, 24, 32, 0.1);
}

@media (max-width: 767px) {
    .tp-btn-white-border {
        padding: 4px 15px;
    }
}

.tp-btn-white-border:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-purple);
    background-color: var(--tp-common-purple);
}

.tp-btn-border {
    font-size: 16px;
    font-weight: 600;
    padding: 15px 30px;
    letter-spacing: -0.02em;
    display: inline-block;
    color: var(--tp-common-white);
    border: 2px solid rgba(255, 255, 255, 0.2);
    transition: 0.3s;
}

.tp-btn-border span {
    margin-left: 7px;
}

.tp-btn-border.sm {
    padding: 10px 30px;
}

.tp-btn-border:hover {
    color: var(--tp-common-black);
    border-color: var(--tp-theme-1);
    background-color: var(--tp-theme-1);
}

.tp-btn-border.grey-border {
    color: var(--tp-common-black);
    border-color: rgba(20, 24, 32, 0.1);
}

.tp-btn-border.grey-border:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black);
    background-color: var(--tp-common-black);
}

.tp-btn-border-radius {
    font-size: 14px;
    transition: 0.3s;
    font-weight: 600;
    padding: 4px 24px;
    padding-bottom: 5px;
    border-radius: 30px;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
    border: 2px solid rgba(0, 43, 59, 0.1);
}

.tp-btn-border-radius:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-btn-border-radius-6 {
    padding: 5px 22px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
    border: 2px solid rgba(255, 255, 255, 0.1);
}

.tp-btn-border-radius-6 span {
    margin-left: 5px;
    display: inline-block;
}

.tp-btn-border-radius-6 span svg {
    transform: translateY(-1px);
}

.tp-btn-border-radius-6:hover {
    color: var(--tp-common-black);
    border-color: var(--tp-common-white);
    background-color: var(--tp-common-white);
}

.tp-btn-border-radius-6.grey-border {
    color: var(--tp-common-black);
    border: 2px solid rgba(20, 24, 32, 0.1);
}

.tp-btn-border-radius-6.grey-border:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-purple);
    background-color: var(--tp-common-purple);
}

.tp-btn-border-radius-6.lg {
    padding: 8px 22px;
}

.tp-btn-border-radius-6.lg:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black);
    background-color: var(--tp-common-black);
}

.tp-btn-sky {
    font-weight: 600;
    font-size: 14px;
    padding: 10px 30px;
    transition: 0.3s;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    background-color: var(--tp-common-sky-2);
}

.tp-btn-sky:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-pink-2);
}

.tp-btn-sky.blue-bg {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-btn-sky.blue-bg:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-pink-3);
}

.tp-btn-white {
    font-weight: 600;
    font-size: 16px;
    transition: 0.3s;
    padding: 17px 45px;
    letter-spacing: -0.02em;
    display: inline-block;
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
}

.tp-btn-white span {
    margin-left: 6px;
    display: inline-block;
}

.tp-btn-white:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-theme-1);
}

.tp-btn-white.sm {
    padding: 9px 20px;
    font-size: 14px;
    border-radius: 6px;
    letter-spacing: -0.02em;
}

.tp-btn-white.sm:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-btn-black-radius {
    font-weight: 600;
    transition: 0.3s;
    font-size: 14px;
    padding: 5px 24px;
    padding-bottom: 6px;
    border-radius: 30px;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
    background-color: var(--tp-common-black-3);
}

.tp-btn-black-radius:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-btn-blue {
    font-weight: 600;
    font-size: 16px;
    transition: 0.3s;
    border-radius: 30px;
    display: inline-block;
    padding: 10px 30px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-btn-blue:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black-3);
}

.tp-btn-blue.sky-bg {
    background-color: #a1ecea;
    color: var(--tp-common-black-3);
}

.tp-btn-blue.sky-bg:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-btn-blue.radius-6 {
    border-radius: 6px;
}

.tp-btn-blue.radius-6 span {
    margin-left: 10px;
}

.tp-btn-blue.height-46 {
    border-radius: 6px;
    padding: 15px 29px;
}

.tp-btn-blue.height-46 span {
    margin-left: 7px;
    display: inline-block;
}

.tp-btn-border-paste {
    font-weight: 600;
    font-size: 14px;
    border-radius: 30px;
    padding: 8px 26px;
    transition: all 0.3s;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    border: 2px solid var(--tp-common-paste);
}

.tp-btn-border-paste span {
    margin-left: 8px;
    display: inline-block;
    transform: translateY(-1px);
}

.tp-btn-border-paste:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-common-paste);
}

.tp-btn-border-paste.height-50 {
    padding: 10px 26px;
    color: var(--tp-common-black);
    background-color: var(--tp-common-paste);
}

.tp-btn-border-paste.height-50:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.tp-btn-circle {
    height: 160px;
    width: 160px;
    line-height: 1.29;
    border-radius: 50%;
    display: inline-block;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: -0.02em;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--tp-common-black-3);
    border: 1px solid var(--tp-common-black-3);
}

.tp-btn-circle-icon {
    margin-left: -7px;
    transform: translateY(-13px);
    transition: all 0.4s ease-in-out;
}

.tp-btn-circle-text {
    transition: all 0.4s ease-in-out;
}

.tp-btn-circle .tp-btn-circle-dot {
    position: absolute;
    bottom: 0;
    left: 32px;
    width: 20px;
    height: 20px;
    z-index: -1;
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -ms-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
    width: 20px;
    height: 20px;
    line-height: 20px;
    border-radius: 50%;
    background-color: var(--tp-common-black-3);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.tp-btn-circle:hover {
    border: 1px solid transparent;
}

.tp-btn-circle:hover .tp-btn-circle-dot {
    width: 520px;
    height: 520px;
}

.tp-btn-circle:hover span {
    color: var(--tp-common-white);
}

.tp-btn-circle.white {
    color: var(--tp-common-white);
    border: 1px solid var(--tp-common-white);
}

.tp-btn-circle.white .tp-btn-circle-dot {
    background-color: var(--tp-common-white);
}

.tp-btn-circle.white:hover span {
    color: var(--tp-common-black);
    border-color: var(--tp-common-black);
}

.tp-btn-circle.solid-black {
    color: var(--tp-common-black);
    border: 1px solid var(--tp-common-black);
}

.tp-btn-circle.solid-black .tp-btn-circle-dot {
    background-color: var(--tp-common-black);
}

.tp-btn-circle.solid-black:hover span {
    color: var(--tp-common-white);
    border-color: var(--tp-common-white);
}

.tp-btn-circle.sm {
    height: 140px;
    width: 140px;
}

.tp-btn-circle.sm .tp-btn-circle-icon {
    margin-left: -25px;
    transform: translateX(-9px) translateY(-13px);
}

.tp-btn-purple {
    font-weight: 600;
    font-size: 16px;
    transition: 0.3s;
    padding: 13px 32px;
    border-radius: 6px;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
    background-color: var(--tp-common-purple-2);
}

.tp-btn-purple span {
    margin-left: 5px;
    display: inline-block;
    transform: translateY(-1px);
}

.tp-btn-purple:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-purple);
    background-color: var(--tp-common-purple);
}

/*----------------------------------------*/
/*  2.4 Animations
/*----------------------------------------*/
@keyframes rotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes scroll1 {
    0% {
        top: 0px;
    }

    100% {
        top: 100%;
    }
}

@keyframes headerSlideDown {
    0% {
        margin-top: -150px;
    }

    100% {
        margin-top: 0;
    }
}

@keyframes animate-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.8), 0 0 0 0 rgba(255, 255, 255, 0.8);
    }

    40% {
        box-shadow: 0 0 0 50px rgba(255, 109, 74, 0), 0 0 0 0 rgba(255, 255, 255, 0.8);
    }

    80% {
        box-shadow: 0 0 0 50px rgba(255, 109, 74, 0), 0 0 0 30px rgba(255, 109, 74, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(255, 109, 74, 0), 0 0 0 30px rgba(255, 109, 74, 0);
    }
}

/*----------------------------------------*/
/*  2.5 Preloader
/*----------------------------------------*/
.preloader-layout-wrap {
    margin: auto;
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    z-index: 99;
    background-color: var(--tp-common-black);
}

.preloader-layout {
    margin: auto;
    width: 350px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.preloader-path {
    margin: 0;
    height: 80px;
    width: 80px;
    animation: preloader 2s linear 0s infinite;
}

.preloader-path svg {
    height: 100%;
    width: 100%;
}

.preloader-logo {
    margin: 0;
    transform: translateY(4px);
}

/*----------------------------------------*/
/*  2.6 Background
/*----------------------------------------*/
.grey-bg {
    background-color: var(--tp-grey-1);
}

.grey-bg-2 {
    background-color: var(--tp-grey-3);
}

.grey-bg-3 {
    background-color: var(--tp-grey-4);
}

.grey-bg-4 {
    background-color: var(--tp-grey-5);
}

.theme-bg {
    background-color: var(--tp-theme-1);
}

.white-bg {
    background-color: var(--tp-common-white);
}

.black-bg {
    background-color: var(--tp-common-black);
}

.black-bg-2 {
    background-color: var(--tp-common-black-2);
}

.black-bg-3 {
    background-color: var(--tp-common-black-3);
}

.black-bg-4 {
    background-color: var(--tp-common-black-4);
}

.pink-bg {
    background-color: var(--tp-common-pink);
}

.purple-bg {
    background-color: var(--tp-common-purple-4);
}

.purple-bg-2 {
    background-color: var(--tp-common-purple-2);
}

.yellow-bg {
    background-color: var(--tp-common-yellow);
}

.gradient-bg {
    background-size: cover;
    background-repeat: no-repeat;
    background: linear-gradient(180deg, #171b23 0%, #141820 100%);
}

.gradient-bg-2 {
    background-size: cover;
    background-repeat: no-repeat;
    background: linear-gradient(180deg, #f8f9fd 0%, #fff 100%);
}

[data-bg-color=footer-bg-grey] {
    background-color: var(--tp-footer-grey-1);
}

[data-bg-color=footer-bg-white] {
    background-color: var(--tp-common-white);
}

/*----------------------------------------*/
/*  2.8 Nice Select
/*----------------------------------------*/
/*----------------------------------------*/
/*  2.10 Offcanvas
/*----------------------------------------*/
.body-overlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    visibility: hidden;
    opacity: 0;
    transition: 0.45s ease-in-out;
    background: rgba(24, 24, 24, 0.4);
}

.body-overlay.opened {
    opacity: 1;
    visibility: visible;
}

.tp-offcanvas-area {
    position: fixed;
    top: 0;
    right: 0;
    width: 450px;
    height: 100%;
    z-index: 99;
    z-index: 99999;
    padding: 50px 50px;
    overflow-y: scroll;
    overflow-x: hidden;
    scrollbar-width: none;
    background: #FFF;
    overscroll-behavior-y: contain;
    -webkit-transform: translateX(calc(100% + 80px));
    -moz-transform: translateX(calc(100% + 80px));
    -ms-transform: translateX(calc(100% + 80px));
    -o-transform: translateX(calc(100% + 80px));
    transform: translateX(calc(100% + 80px));
}

@media (max-width: 767px) {
    .tp-offcanvas-area {
        width: 100%;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .tp-offcanvas-area {
        width: 450px;
    }
}

.tp-offcanvas-area.opened {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
}

.tp-offcanvas-top {
    margin-bottom: 60px;
}

.tp-offcanvas-close-btn {
    color: black;
}

.tp-offcanvas-close-btn:hover {
    opacity: 1;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
}

.tp-offcanvas-content {
    margin-bottom: 45px;
}

.tp-offcanvas-content p {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #414144;
}

.tp-offcanvas-title {
    font-size: 40px;
    line-height: 1;
    letter-spacing: -0.8px;
    font-weight: 700;
    margin-bottom: 15px;
    color: var(--tp-common-black);
}

.tp-offcanvas-title.sm {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: uppercase;
    color: var(--tp-common-black);
}

.tp-offcanvas-gallery {
    margin-bottom: 65px;
}

.tp-offcanvas-contact {
    margin-bottom: 55px;
}

.tp-offcanvas-contact ul li {
    list-style: none;
}

.tp-offcanvas-contact ul li:not(:last-child) {
    margin-bottom: 2px;
}

.tp-offcanvas-contact ul li a {
    display: inline-block;
    color: #414144;
    font-size: 18px;
    position: relative;
}

.tp-offcanvas-contact ul li a::after {
    position: absolute;
    bottom: 2px;
    right: 0;
    width: 0;
    height: 1px;
    content: "";
    transition: 0.4s;
    background-color: #1e1e1e;
}

.tp-offcanvas-contact ul li a:hover {
    color: var(--tp-common-black);
}

.tp-offcanvas-contact ul li a:hover::after {
    width: 100%;
    right: auto;
    left: 0;
}

.tp-offcanvas-social ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
}

.tp-offcanvas-social ul li {
    list-style: none;
}

.tp-offcanvas-social ul li:not(:last-child) {
    margin-right: 8px;
}

.tp-offcanvas-social ul li a {
    display: inline-block;
    text-align: center;
    width: 40px;
    height: 40px;
    line-height: 38px;
    border-radius: 40px;
    color: var(--tp-common-black);
    border: 1px solid rgba(2, 11, 24, 0.1);
}

.tp-offcanvas-social ul li a:hover {
    background-color: var(--tp-common-black);
    border-color: var(--tp-common-black);
    color: var(--tp-common-white);
}

.tp-offcanvas-social ul li a svg {
    -webkit-transform: translateY(-1px);
    -moz-transform: translateY(-1px);
    -ms-transform: translateY(-1px);
    -o-transform: translateY(-1px);
    transform: translateY(-1px);
}

.tp-offcanvas-style-2 .tp-offcanvas-top {
    margin-bottom: 90px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-offcanvas-style-2 .tp-offcanvas-top {
        margin-bottom: 60px;
    }
}

/*----------------------------------------*/
/*  2.11 Breadcrumb
/*----------------------------------------*/
.breadcrumb-bg {
    padding-top: 240px;
    padding-bottom: 140px;
    background-repeat: no-repeat;
    background-size: cover;
    object-fit: cover;
}

@media (max-width: 767px) {
    .breadcrumb-bg {
        padding-top: 190px;
        padding-bottom: 100px;
    }
}

.breadcrumb-overlay {
    position: relative;
}

.breadcrumb-overlay::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 0%;
    height: 100%;
    content: "";
    background-color: rgba(10, 12, 17, 0.4);
}

/* 关于我们-关于我们大标题*/
.breadcrumb-title {
    font-weight: 800;
    /* 字体加粗 */
    font-size: 100px;
    /* 设置字体大小为 100px */
    letter-spacing: -0.02em;
    /* 微调字母间距，使字母更紧凑 */
    text-transform: capitalize;
    /* 将每个单词的首字母大写 */
    color: var(--tp-common-white);
    /* 设置文字颜色为预定义的白色 */
    text-align: center;
    /* 将文字居中对齐 */

    /* 调整上下左右的间距 */
    margin-top: -100px;
    /* 上方添加 20px 的间距 */
    margin-bottom: 0px;
    /* 下方添加 20px 的间距 */
    margin-left: -950px;
    /* 左侧添加 30px 的间距 */
    margin-right: 30px;
    /* 右侧添加 30px 的间距 */

    /* 调整内部填充 */
    padding-top: 10px;
    /* 内部顶部填充 10px */
    padding-bottom: 10px;
    /* 内部底部填充 10px */
    padding-left: 20px;
    /* 内部左侧填充 20px */
    padding-right: 20px;
    /* 内部右侧填充 20px */
}

/*资源中心-大标题*/
.breadcrumb-title2 {
   font-weight: 800;
    /* 字体加粗 */
    font-size: 50px;
    /* 设置字体大小为 100px */
    letter-spacing: -0.02em;
    /* 微调字母间距，使字母更紧凑 */
    text-transform: capitalize;
    /* 将每个单词的首字母大写 */
    color:	#FFFFFF;
    /* 设置文字颜色为预定义的白色 */
    text-align: center;
    /* 将文字居中对齐 */

    /* 调整上下左右的间距 */
    margin-top: 10px;
    /* 上方添加 20px 的间距 */
    margin-bottom: 0px;
    /* 下方添加 20px 的间距 */
    margin-left: 0px;
    /* 左侧添加 30px 的间距 */
    margin-right: 30px;
    /* 右侧添加 30px 的间距 */

    /* 调整内部填充 */
    padding-top: 10px;
    /* 内部顶部填充 10px */
    padding-bottom: 10px;
    /* 内部底部填充 10px */
    padding-left: 20px;
    /* 内部左侧填充 20px */
    padding-right: 20px;
    /* 内部右侧填充 20px */
} 


/* 控制副标题样式 */
.breadcrumb-subtitle {
    font-size: 20px;
    /* 设置字体大小为 18px */
    color: var(--tp-common-white);
    /* 设置字体颜色为白色，可以根据需求调整 */
    text-align: center;
    /* 将文字居中对齐，当然可以调整为 left 或 right */
    margin-top: 40px;
    /* 设置顶部外边距为 10px */
    margin-bottom: -100px;
    /* 设置底部外边距为 10px */
    line-height: 1.6;
    /* 设置行高为 1.6，增加行间距 */
    font-weight: 400;
    /* 设置字体粗细为 400（常规字体） */
    letter-spacing: 0.5px;
    /* 设置字母间距为 0.5px */
    padding-left: 20px;
    /* 设置左侧内边距为 20px */
    padding-right: 20px;
    /* 设置右侧内边距为 20px */
    max-width: 90%;
    /* 设置最大宽度为 90%，使文字不会撑开过大 */
    margin-left: -300px;
    /* 设置自动左外边距，用于居中 */
    margin-right: auto;
    /* 设置自动右外边距，用于居中 */
}

@media (max-width: 767px) {
    .breadcrumb-subtitle {
        font-size: 16px;
        /* 在小屏幕上设置字体大小为 16px */
        line-height: 1.4;
        /* 小屏幕调整行高 */
    }
}


@media only screen and (min-width: 768px) and (max-width: 991px) {
    .breadcrumb-title {
        font-size: 60px;
    }
}

@media (max-width: 767px) {
    .breadcrumb-title {
        font-size: 40px;
    }
}

.breadcrumb-list {
    display: inline-block;
    padding: 0px 10px;
}

.breadcrumb-list span {
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
    text-transform: capitalize;
    color: var(--tp-common-white);
}

.breadcrumb-list span.dvdr i {
    padding: 0px 14px;
}

.breadcrumb-style-2 .breadcrumb-list span {
    color: #525356;
}

.breadcrumb-style-2 .breadcrumb-list span.active {
    color: var(--tp-common-black);
}



.breadcrumb-style-2 .breadcrumb-content {
    padding: 12px 0;
}

/*----------------------------------------*/
/*  2.12 Accordion
/*----------------------------------------*/
.tp-faq-wrapper .accordion-items {
    position: relative;
    padding: 0;
}

.tp-faq-wrapper .accordion-items:not(:last-child) {
    box-shadow: 0 1px 0 0 rgba(1, 17, 22, 0.14);
}

.tp-faq-wrapper .accordion-header {
    position: relative;
}

.tp-faq-wrapper .accordion-header .accordion-buttons {
    width: 100%;
    padding: 25px 0;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
    text-align: left;
    position: relative;
    padding-right: 30px;
    color: var(--tp-common-black-3);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-faq-wrapper .accordion-header .accordion-buttons {
        font-size: 18px;
    }
}

.tp-faq-wrapper .accordion-header .accordion-buttons:not(.collapsed) {
    color: var(--tp-common-blue);
}

.tp-faq-wrapper .accordion-header .accordion-buttons:not(.collapsed) .accordion-icon::before {
    transform: translate(-50%, -50%) rotate(90deg);
}

.tp-faq-wrapper .accordion-header .accordion-buttons:not(.collapsed) .accordion-icon::after {
    background-color: var(--tp-common-blue);
}

.tp-faq-wrapper .accordion-header .accordion-buttons .accordion-icon {
    position: absolute;
    top: 35px;
    right: 10px;
}

.tp-faq-wrapper .accordion-header .accordion-buttons .accordion-icon::before {
    position: absolute;
    content: "";
    width: 2px;
    height: 16px;
    left: 50%;
    top: 50%;
    transition: 0.4s;
    border-radius: 30px;
    transform: translate(-50%, -50%);
    background-color: var(--tp-common-black-3);
}

.tp-faq-wrapper .accordion-header .accordion-buttons .accordion-icon::after {
    position: absolute;
    content: "";
    width: 16px;
    height: 2px;
    left: 50%;
    top: 50%;
    border-radius: 30px;
    transform: translate(-50%, -50%);
    background-color: var(--tp-common-black-3);
}

.tp-faq-wrapper .accordion-body {
    padding: 0;
    padding-right: 110px;
    padding-bottom: 35px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-faq-wrapper .accordion-body {
        padding-right: 65px;
    }
}

.tp-faq-wrapper .accordion-body p {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.57;
    color: #4d5051;
    margin-bottom: 0;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-faq-wrapper .accordion-body p br {
        display: none;
    }
}

/*----------------------------------------*/
/*  2.13 Tab
/*----------------------------------------*/
.tp-toggler-pre,
.tp-toggler-post {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    color: #848788;
    transition: all 0.3s;
}

.tp-toggler-pre.is-active,
.tp-toggler-post.is-active {
    color: var(--tp-common-black-3);
}

.tp-toggler-pre:hover,
.tp-toggler-post:hover {
    color: var(--tp-common-black-3);
}

.tp-toggler-pre {
    margin-right: 15px;
}

.tp-toggler-post {
    margin-left: 15px;
}

.tp-toggle-input-wrap {
    position: relative;
    width: 76px;
    height: 36px;
    overflow: hidden;
    border-radius: 100px;
    background-color: var(--tp-common-blue);
}

.tp-price-nav-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.tp-price-nav-wrapper .tp-input-check {
    position: absolute;
    display: block;
    cursor: pointer;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 6;
    width: 100%;
    height: 100%;
}

.tp-price-nav-wrapper .tp-input-check:checked~.tp-switch-toggle {
    left: 4px;
    right: 57.3%;
}

.tp-switch-toggle {
    position: absolute;
    top: 4px;
    right: 4px;
    left: 57.3%;
    bottom: 4px;
    z-index: 1;
    border-radius: 100%;
    box-shadow: 0 4px 6px 0 rgba(1, 17, 22, 0.24);
    transition: 0.25s cubic-bezier(0.785, 0.135, 0.15, 0.86);
    background: linear-gradient(180deg, #fff 0%, #e1e4e8 100%);
}

.tp-tab-hide {
    display: none;
}





/* 全局样式 */
body {
    font-family: 'Arial', sans-serif;
    background-color: #f9f9f9;
    margin: 0;
    padding: 20px;
}

h1 {
    text-align: center;
    color: #333;
    margin-bottom: 40px;
    font-size: 2.5em;
}

/* 网格布局 */
.chart-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
}

/* 图表容器样式 */
.chart-container {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    padding: 20px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.chart-container:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

h2 {
    text-align: center;
    color: #555;
    margin-bottom: 20px;
    font-size: 1.5em;
}

canvas {
    max-width: 100%;
    height: auto;
}
/*----------------------------------------*/
/*  2.14 Modal
/*----------------------------------------*/
/*----------------------------------------*/
/*  2.15 Section Title
/*----------------------------------------*/
.tp-section-subtitle {
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.1em;
    display: inline-block;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.7);
}

.tp-section-subtitle::before {
    content: "";
    height: 4px;
    width: 4px;
    border-radius: 50%;
    margin-right: 9px;
    display: inline-block;
    transform: translateY(-3px);
    background-color: rgba(255, 255, 255, 0.7);
}

.tp-section-subtitle.black-dot::before {
    background-color: var(--tp-common-black);
}

.tp-section-subtitle.fs-12 {
    font-weight: 600;
    font-size: 12px;
    border-radius: 20px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    background-color: #eef3f6;
    padding: 2px 23px;
    color: var(--tp-common-black-3);
}

.tp-section-subtitle.fs-12::before {
    display: none;
    margin-right: 0;
}

.tp-section-subtitle.sky-bg {
    background-color: #cae1ec;
}




.tp-section-2-subtitle {
    font-weight: 600;
    font-size: 40px;
    letter-spacing: 0.1em;
    display: inline-block;
    text-transform: uppercase;
    color: var(--tp-common-black);




    /*     我们的优势前面的横线控件     */
}

.tp-section-2-subtitle::before {
    content: "";
    height: 4px;
    width: 40px;
    margin-right: 10px;
    display: inline-block;
    transform: translateY(-10px);
    background-color: var(--tp-common-black);
}




.tp-section-2-subtitle.text-white::before {
    background-color: var(--tp-common-white);
}

.tp-section-title {
    font-weight: 700;
    font-size: 0px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-section-title {
        font-size: 50px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-section-title {
        font-size: 52px;
    }
}

@media (max-width: 767px) {
    .tp-section-title {
        font-size: 35px;
    }
}

.tp-section-title.sm {
    font-weight: 800;
    font-size: 40px;
    line-height: 1.25;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-section-title.sm {
        font-size: 28px;
    }
}

.tp-section-title.sm>span {
    color: var(--tp-common-pink-2);
}



/*为婚恋门店提供优质单身资源与精准服务，助力业绩增长，合作省心高效css控件*/

.tp-section-title.fs-40 {
    font-weight: 800;
    font-size: 20px;
    line-height: 3;
    letter-spacing: 0.1em;
    color: var(--tp-common-black-3);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-section-title.fs-40 {
        font-size: 35px;
    }
}

@media (max-width: 767px) {
    .tp-section-title.fs-40 {
        font-size: 30px;
    }

    .tp-section-title.fs-40 br {
        display: none;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-section-title.fs-44 {
        font-size: 35px;
    }

    .tp-section-title.fs-44 br {
        display: none;
    }
}

@media (max-width: 767px) {
    .tp-section-title.fs-44 {
        font-size: 30px;
    }

    .tp-section-title.fs-44 br {
        display: none;
    }
}

.tp-section-title.fs-44 span {
    color: var(--tp-common-blue);
}

.tp-section-title.fs-55 {
    font-weight: 800;
    font-size: 55px;
    line-height: 1.17;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-section-title.fs-55 {
        font-size: 45px;
    }
}

.tp-section-title.fs-70 {
    font-weight: 800;
    font-size: 70px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-section-title.fs-70 {
        font-size: 55px;
    }
}

@media (max-width: 767px) {
    .tp-section-title.fs-70 {
        font-size: 45px;
    }
}


/*  3.1 Header Style 1
/*----------------------------------------*/
/* 设置类名为 header-transparent 的元素的样式 */
.header-transparent {
    position: absolute;
    /* 绝对定位，脱离文档流 */
    top: 0;
    /* 距离顶部 0 */
    left: 0;
    /* 距离左侧 0 */
    right: 0;
    /* 距离右侧 0 */
    width: 100%;
    /* 宽度占满父容器 */
    z-index: 9;
    /* 设置层级为 9，确保元素在其他内容之上 */
}

/* 媒体查询：针对不同屏幕宽度设置样式 */
@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-header-mob-space {
        padding: 20px 0;
        /* 在移动设备上设置上下内边距为 20px，左右为 0 */
    }
}

/* 设置类名为 tp-header-logo 下的 img 元素的样式 */
.tp-header-logo img {
    width: 135px;
    /* 设置图片宽度为 135px */
    height: 100%;
    /* 设置图片高度为父容器的 100% */
}

/* 设置类名为 tp-header-menu 下的 nav 下的 ul 元素的样式 */
.tp-header-menu>nav>ul {
    margin-left: -80px;
    /* 设置左外边距为 -80px，用于调整导航栏的位置 */
}

/* 媒体查询：针对大屏幕设备调整导航栏样式 */
@media only screen and (min-width: 1600px) and (max-width: 1700px),
only screen and (min-width: 1400px) and (max-width: 1599px),
only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-header-menu>nav>ul {
        margin-left: 0;
        /* 在大屏幕上取消左外边距 */
    }
}

/* 设置类名为 tp-header-menu 下的 nav 下的 ul 下的 li 元素的样式 */
.tp-header-menu>nav>ul>li {
    list-style-type: none;
    /* 移除列表项的默认符号 */
    display: inline-block;
    /* 将列表项设置为行内块元素，使其横向排列 */
    margin: 0px 19px;
    /* 设置列表项的左右外边距为 16px，上下为 0 */
}

/* 媒体查询：针对 1200px 到 1399px 的屏幕宽度调整列表项的外边距 */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-header-menu>nav>ul>li {
        margin: 0px 14px;
        /* 将列表项的左右外边距调整为 14px */
    }
}


/* 针对类名为tp-header-menu元素下的直接子元素nav，再下的直接子元素ul，再下的直接子元素li，最后下的直接子元素a标签的样式 */
.tp-header-menu>nav>ul>li>a {
    padding: 37px 0;
    /* 设置上下内边距37px，左右内边距0 */
    font-size: 18px;
    /* 字体大小设置为18像素 */
    font-weight: 500;
    /* 字体粗细设置为中等（500介于400常规和600加粗之间） */
    display: inline-block;
    /* 将元素显示为行内块元素，兼具行内和块级元素特性 */
    letter-spacing: -0.02em;
    /* 字母间距缩小0.02em（负值使字符更紧凑） */
    text-transform: capitalize;
    /* 文本转换：将每个单词的首字母转换为大写 */
    color: var(--tp-common-white);
    /* 文字颜色使用CSS变量定义的黑色值 */
}



.tp-header-menu>nav>ul>li:hover>a {
    color: var(--tp-theme-1);
}

.tp-header-menu-style-2>nav>ul {
    margin-left: 0;
}

.tp-header-menu-style-2>nav>ul>li>a {
    position: relative;
    padding: 27px 0;
}

.tp-header-menu-style-2>nav>ul>li>a::after {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 1px;
    width: 0;
    content: "";
    transition: 0.4s;
    background-color: var(--tp-theme-1);
}

.tp-header-menu-style-2>nav>ul>li:hover a::after {
    right: auto;
    left: 0;
    width: 100%;
}

.tp-header-menu-style-3>nav>ul {
    margin-left: 0;
}

.tp-header-menu-style-3>nav>ul>li>a {
    color: var(--tp-common-black);
}

.tp-header-menu-style-3>nav>ul>li:hover a {
    color: var(--tp-common-blue);
}

.tp-header-menu-style-4>nav>ul {
    margin-left: 0;
}

.tp-header-menu-style-4>nav>ul>li {
    margin: 0;
    padding: 6px 0;
}

.tp-header-menu-style-4>nav>ul>li>a {
    padding: 0;
    padding: 6px 21px;
    border-radius: 6px;
    display: inline-block;
    background-color: transparent;
    color: var(--tp-common-black);
}

.tp-header-menu-style-4>nav>ul>li:hover>a {
    background-color: #e8ebf0;
    color: var(--tp-common-black);
}

.tp-header-search-input {
    position: relative;
}

.tp-header-search-input::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    transition-delay: 0s;
    transition: width 0.3s ease;
    background-color: var(--tp-common-white);
}

.tp-header-search-input.active::before {
    width: 100%;
    transition-delay: 0.3s;
}

.tp-header-search-input.active input {
    width: 230px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-header-search-input.active input {
        width: 150px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-header-search-input.active input {
        width: 160px;
    }
}

.tp-header-search-input input {
    font-weight: 400;
    font-size: 14px;
    padding: 0px 28px;
    padding-right: 0;
    height: 44px;
    width: 80px;
    border: 0;
    letter-spacing: -0.02em;
    background-color: transparent;
    color: var(--tp-common-white);
}

.tp-header-search-input input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: rgba(255, 255, 255, 0.6);
}

.tp-header-search-input input::-moz-placeholder {
    /* Firefox 19+ */
    color: rgba(255, 255, 255, 0.6);
}

.tp-header-search-input input:-moz-placeholder {
    /* Firefox 4-18 */
    color: rgba(255, 255, 255, 0.6);
}

.tp-header-search-input input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    color: rgba(255, 255, 255, 0.6);
}

.tp-header-search-input input::placeholder {
    /* MODERN BROWSER */
    color: rgba(255, 255, 255, 0.6);
}

.tp-header-search-icon {
    position: absolute;
    left: 0;
    top: 48%;
    transform: translateY(-50%);
}

.tp-header-search-icon span {
    color: var(--tp-common-white);
}

.tp-header-bar {
    margin-left: 10px;
}

.tp-header-bar button {
    height: 44px;
    width: 44px;
    transition: 0.3s;
    line-height: 44px;
    text-align: center;
    color: var(--tp-common-black);
    background-color: var(--tp-theme-1);
}

.tp-header-bar button:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-common-yellow);
}

.tp-header-border {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-header-inner-style .tp-btn {
    border-radius: 6px;
}

.tp-header-inner-style .tp-header-bar button {
    border-radius: 5px;
    color: var(--tp-common-black);
    background-color: var(--tp-theme-1);
}

.tp-header-inner-style .tp-header-bar button:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-common-yellow);
}

.tp-header-inner-style-2 .tp-btn {
    border-radius: 6px;
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-header-inner-style-2 .tp-btn:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black);
}

.tp-header-inner-style-2 .tp-header-menu>nav>ul>li>a {
    color: var(--tp-common-black);
}

.tp-header-inner-style-2 .tp-header-menu>nav>ul>li:hover>a {
    color: var(--tp-common-blue);
}

.tp-header-inner-style-2 .tp-header-menu-style-2 nav ul li a::after {
    background-color: var(--tp-common-blue);
}

.tp-header-inner-style-2 .tp-header-search-input input {
    color: var(--tp-common-black);
}

.tp-header-inner-style-2 .tp-header-search-input input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #525356;
}

.tp-header-inner-style-2 .tp-header-search-input input::-moz-placeholder {
    /* Firefox 19+ */
    color: #525356;
}

.tp-header-inner-style-2 .tp-header-search-input input:-moz-placeholder {
    /* Firefox 4-18 */
    color: #525356;
}

.tp-header-inner-style-2 .tp-header-search-input input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    color: #525356;
}

.tp-header-inner-style-2 .tp-header-search-input input::placeholder {
    /* MODERN BROWSER */
    color: #525356;
}

.tp-header-inner-style-2 .tp-header-search-icon span {
    color: var(--tp-common-black);
}

.tp-header-inner-style-2 .tp-header-search-input::before {
    background-color: var(--tp-common-black);
}

.tp-header-inner-style-2 .tp-header-bar button {
    border-radius: 5px;
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-header-inner-style-2 .tp-header-bar button:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black);
}

.header-sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    opacity: 1;
    width: 100%;
    z-index: 999;
    visibility: visible;
    background: rgba(20, 24, 32, 0.9);
    box-shadow: 0px 1px 3px 0px rgba(18, 20, 32, 0.14);
    animation: 0.95s ease 0s normal forwards 1 running headerSlideDown;
    -webkit-animation: 0.95s ease 0s normal forwards 1 running headerSlideDown;
}

.header-sticky::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(10px);
    z-index: -1;
}

.header-sticky .tp-header-menu>nav>ul>li>a {
    padding: 22px 0;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .header-sticky.tp-header-mob-space {
        padding: 15px 0;
    }
}

.header-sticky.tp-header-border {
    border-bottom: 0;
}

.header-sticky.sticky-white-bg {
    background-color: rgba(255, 255, 255, 0.9);
}

.header-sticky .tp-header-menu-style-4>nav>ul>li>a {
    padding: 6px 21px;
}

.header-sticky.sticky-bg-none {
    background: none;
    box-shadow: none;
}

.header-sticky.sticky-bg-none::after {
    display: none;
}

/*----------------------------------------*/
/*  3.3 Header Style 3
/*----------------------------------------*/
.tp-header-style-3 .tp-header-bar button {
    height: 40px;
    width: 40px;
    transition: 0.3s;
    line-height: 30px;
    text-align: center;
    border-radius: 5px;
    color: var(--tp-common-white);
    background-color: var(--tp-common-black-3);
}

.tp-header-style-3 .tp-header-bar button:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

/*----------------------------------------*/
/*  3.4 Header Style 4
/*----------------------------------------*/
.tp-header-4-box {
    width: 100%;
    border-radius: 8px;
    padding: 0px 6px 0px 20px;
    background-color: var(--tp-common-white);
    box-shadow: 0 20px 34px 0 rgba(20, 24, 32, 0.1);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-header-4-box {
        padding: 6px 6px 6px 20px;
    }
}

@media (max-width: 767px) {
    .tp-header-4-box {
        padding: 6px;
    }
}

.tp-header-4-bar {
    height: 50px;
    width: 50px;
    flex: 0 0 auto;
    margin-left: 10px;
    border-radius: 8px;
    transition: all 0.3s;
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
    box-shadow: 0 20px 34px 0 rgba(20, 24, 32, 0.1);
}

.tp-header-4-bar:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-purple);
}

/* HEADER CSS */
/*----------------------------------------*/
/*  4.1 Main menu css
/*----------------------------------------*/
.header-main-menu>nav>ul li .submenu {
    position: absolute;
    width: 240px;
    z-index: 999;
    padding: 25px 0px;
    top: 100%;
    opacity: 0;
    visibility: hidden;
    transition: 0.4s;
    text-align: left;
    margin-left: 0;
    transform-origin: top;
    transition-duration: 0.1s;
    backdrop-filter: blur(8px);
    background: var(--tp-common-white);
    box-shadow: 0px 10px 30px 0px rgba(25, 25, 26, 0.1);
    -webkit-transform: perspective(300px) rotateX(-18deg);
    -moz-transform: perspective(300px) rotateX(-18deg);
    -ms-transform: perspective(300px) rotateX(-18deg);
    -o-transform: perspective(300px) rotateX(-18deg);
    transform: perspective(300px) rotateX(-18deg);
}

.header-main-menu>nav>ul li .submenu li {
    list-style: none;
    display: block;
    padding: 0 30px;
    position: relative;
}

.header-main-menu>nav>ul li .submenu li:not(:last-child) {
    margin-bottom: 10px;
}

.header-main-menu>nav>ul li .submenu li .submenu {
    left: 100%;
    top: 0;
}

.header-main-menu>nav>ul li .submenu li a {
    color: #575758;
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.3px;
    text-transform: capitalize;
    position: relative;
}

.header-main-menu>nav>ul li .submenu li a::before {
    position: absolute;
    top: 10px;
    left: 0;
    content: "";
    height: 2px;
    width: 0px;
    opacity: 0;
    visibility: hidden;
    display: inline-block;
    transition: all 0.3s ease-out 0s;
    background-color: var(--tp-common-black);
}

.header-main-menu>nav>ul li .submenu li:hover .submenu {
    opacity: 1;
    visibility: visible;
}

.header-main-menu>nav>ul li .submenu li:hover>a {
    padding-left: 25px;
    color: var(--tp-common-black);
}

.header-main-menu>nav>ul li .submenu li:hover>a::before {
    width: 20px;
    visibility: visible;
    opacity: 1;
}

.header-main-menu>nav>ul li:hover>.submenu {
    visibility: visible;
    opacity: 1;
    transition-duration: 0.2s;
    -webkit-transform: perspective(300px) rotateX(0deg);
    -moz-transform: perspective(300px) rotateX(0deg);
    -ms-transform: perspective(300px) rotateX(0deg);
    -o-transform: perspective(300px) rotateX(0deg);
    transform: perspective(300px) rotateX(0deg);
}

/*----------------------------------------*/
/*  4.2 Mobilemenu css
/*----------------------------------------*/
.tp-offcanvas-menu {
    margin-bottom: 40px;
}

.tp-offcanvas-menu ul {
    list-style: none;
}

.tp-offcanvas-menu ul li {
    position: relative;
}

.tp-offcanvas-menu ul li>a {
    padding: 8px 0;
    display: block;
    font-size: 15px;
    font-weight: 500;
}

.tp-offcanvas-menu ul li:not(:last-child)>a {
    border-bottom: 1px solid rgba(1, 15, 28, 0.1);
}

.tp-offcanvas-menu ul li.active>a {
    color: var(--tp-common-black-light);
}

.tp-offcanvas-menu ul li.active>.tp-menu-close {
    color: var(--tp-common-white);
    background: var(--tp-common-black);
    border-color: var(--tp-common-black);
}

.tp-offcanvas-menu ul li.active>.tp-menu-close i {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
}

.tp-offcanvas-menu ul li .tp-submenu {
    display: none;
    padding-left: 20px;
}

.tp-menu-close {
    position: absolute;
    right: 0;
    top: 6px;
    height: 30px;
    width: 30px;
    font-size: 12px;
    line-height: 29px;
    text-align: center;
    border: 1px solid rgba(1, 15, 28, 0.12);
}

.tp-menu-close i {
    transition: all 0.3s;
}

/*----------------------------------------*/
/*  5.1 Postbox css
/*----------------------------------------*/
.postbox-item {
    padding: 20px;
    border-radius: 14px;
    padding-bottom: 34px;
    border: 1px solid rgba(10, 11, 15, 0.1);
}

.postbox-title {
    font-weight: 800;
    font-size: 42px;
    line-height: 1.18;
    margin-bottom: 15px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .postbox-title {
        font-size: 40px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .postbox-title {
        font-size: 32px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .postbox-title {
        font-size: 35px;
    }
}

@media (max-width: 767px) {
    .postbox-title {
        font-size: 30px;
    }
}

.postbox-title a:hover {
    color: var(--tp-common-blue);
}

.postbox-author-title {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    color: var(--tp-common-black);
}

.postbox-author-info {
    padding-right: 15px;
    margin-right: 15px;
    position: relative;
}

.postbox-author-info::after {
    position: absolute;
    top: 12px;
    right: -2px;
    width: 4px;
    height: 4px;
    content: "";
    border-radius: 50%;
    display: inline-block;
    background-color: #4d5051;
}

.postbox-author-info img {
    margin-right: 10px;
}

.postbox-meta {
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #4d5051;
    text-transform: uppercase;
}

.postbox-meta span {
    margin-right: 5px;
    display: inline-block;
}

.postbox-meta span svg {
    transform: translateY(-1px);
}

.postbox-content {
    padding: 12px 38px 45px 38px;
}

@media (max-width: 767px) {
    .postbox-content {
        padding: 12px 0px 45px 0px;
    }
}

.postbox-text {
    padding: 0px 40px;
}

@media (max-width: 767px) {
    .postbox-text {
        padding: 0;
    }
}

.postbox-text p {
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 0;
    line-height: 1.57;
    color: #525356;
}

.postbox-thumb {
    margin-bottom: 25px;
}

.postbox-thumb-gradient {
    position: relative;
}

@media (max-width: 767px) {
    .postbox-thumb-gradient {
        margin-bottom: 0;
    }
}

.postbox-thumb-gradient::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: linear-gradient(180deg, rgba(12, 14, 19, 0) 0%, rgba(12, 14, 19, 0.8) 100%);
}

.postbox-thumb-wrap .postbox-category {
    padding-bottom: 20px;
}

.postbox-category {
    position: absolute;
    top: 0;
    left: 0;
    padding: 30px;
}

@media (max-width: 767px) {
    .postbox-category {
        position: static;
        padding-left: 0;
        padding-bottom: 0;
    }
}

.postbox-category a {
    font-weight: 700;
    font-size: 12px;
    line-height: 1;
    color: #2f3233;
    border-radius: 4px;
    padding: 8px 14px;
    display: inline-block;
    text-transform: uppercase;
    background-color: #fbd2eb;
}

.postbox-category a:not(:last-child) {
    margin-right: 4px;
}

.postbox-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.postbox-play-btn a {
    height: 80px;
    width: 80px;
    line-height: 80px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    background-color: var(--tp-common-white);
    animation: animate-pulse 3s linear infinite;
}

.postbox-slider-item {
    position: relative;
}

.postbox-slider-item::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: rgba(12, 14, 19, 0.2);
}

.postbox-slider-arrow button {
    font-size: 30px;
    position: absolute;
    top: 50%;
    left: 40px;
    z-index: 2;
    transform: translateY(-50%);
    color: var(--tp-common-white);
}

.postbox-slider-arrow button.postbox-arrow-next {
    left: auto;
    right: 40px;
}

@media (max-width: 767px) {
    .postbox-link-post {
        flex-wrap: wrap;
    }
}

.postbox-link-bg {
    border: none;
    padding: 0;
    padding: 35px 55px;
    background-color: #eceff5;
}

@media (max-width: 767px) {
    .postbox-link-bg {
        padding: 35px 35px;
    }
}

.postbox-link-bg.space-bottom {
    padding-bottom: 25px;
}

.postbox-link-icon {
    margin-right: 28px;
    transform: translateY(10px);
}

@media (max-width: 767px) {
    .postbox-link-icon {
        margin-right: 0;
        margin-bottom: 20px;
    }
}

.postbox-link-paragraph p {
    margin-bottom: 0;
    font-weight: 500;
    font-size: 30px;
    line-height: 1.47;
    padding-bottom: 20px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
(max-width: 767px) {
    .postbox-link-paragraph p {
        font-size: 25px;
    }
}

.postbox-link-author span {
    font-weight: 600;
    font-size: 18px;
    padding-right: 10px;
    margin-right: 10px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    position: relative;
}

.postbox-link-author span::after {
    position: absolute;
    top: 12px;
    right: -3px;
    height: 4px;
    width: 4px;
    content: "";
    border-radius: 50%;
    background-color: rgba(20, 24, 32, 0.5);
}

.postbox-link-author i {
    font-weight: 400;
    font-size: 14px;
    color: #525356;
    font-style: normal;
}

.postbox-blockquote .postbox-link-paragraph p {
    padding-right: 20px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .postbox-blockquote .postbox-link-paragraph p {
        padding-right: 0;
    }
}

.postbox-comment-title {
    font-weight: 800;
    font-size: 30px;
    line-height: 1.7;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.postbox-comment ul li {
    list-style-type: none;
}

.postbox-comment ul li:nth-child(2n) {
    margin-left: 70px;
}

@media (max-width: 767px) {
    .postbox-comment ul li:nth-child(2n) {
        margin-left: 0;
    }
}

.postbox-comment-avater {
    flex: 0 0 auto;
}

.postbox-comment-name {
    margin-bottom: 10px;
}

.postbox-comment-name h5 {
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.postbox-comment-name .post-meta {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.43;
    color: #919396;
}

.postbox-comment-text {
    padding-bottom: 35px;
    margin-bottom: 35px;
    border-bottom: 1px solid rgba(20, 24, 32, 0.14);
}

.postbox-comment-text p {
    font-weight: 500;
    font-size: 15px;
    line-height: 1.73;
    color: #525356;
}

.postbox-comment-reply a {
    border-radius: 26px;
    padding: 4px 13px;
    font-weight: 700;
    font-size: 13px;
    transition: all 0.3s;
    border: 1px solid #e4e4e5;
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
}

.postbox-comment-reply a span {
    margin-right: 5px;
    display: inline-block;
}

.postbox-comment-reply a:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.postbox-details-item .postbox-category {
    position: static;
    padding: 0;
}

.postbox-details-item .postbox-title {
    font-weight: 800;
    font-size: 50px;
    line-height: 1;
    margin-bottom: 25px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .postbox-details-item .postbox-title {
        font-size: 45px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .postbox-details-item .postbox-title {
        font-size: 60px;
    }
}


@media (max-width: 767px) {
    .postbox-details-item .postbox-title {
        font-size: 40px;
    }
}


/*资源中心-抖音图标*/
.postbox-details-thumb img.w-35 {
    width: 35%; /* 图片宽度 */
    margin-bottom: 15px; /* 图片与下方内容的间距 */
    border-radius: 10px;
    display: block;
    margin: 0 auto;
}

/* 设置文章标题 */
.postbox-details-thumb h3 {
    font-size: 24px; /* 调整标题大小 */
    color: 	#000000; /* 设置标题颜色 */
    margin-bottom: 20px; /* 设置标题与下方内容的间距 */
    font-weight: 900; /* 设置更高的加黑效果 */
}
/* 设置小标题 */
.postbox-details-thumb h5 {
    font-size: 18px; /* 小标题字体大小 */
    color: 	#000000; /* 小标题颜色 */
    margin-top: 20px; /* 小标题与上方内容的间距 */
    margin-bottom: px; /* 小标题与下方内容的间距 */
    font-weight: bold; /* 加粗小标题 */
}

/* 设置段落文字的样式 */
.postbox-details-thumb li {
    font-size: 16px; /* 正文字体大小 */
    line-height: 1.5; /* 行距 */
    color: #666; /* 正文字体颜色 */
    margin-bottom: 10px; /* 每个段落的间距 */
}

/*资源中心-抖音图标*/
.postbox-details-thumb img.w-40 {
    width: 40%; /* 图片宽度 */
    margin-bottom: 15px; /* 图片与下方内容的间距 */
}

/* 设置文本内容段落 */
.postbox-details-thumb h6 {
    font-size: 14px; /* 正文字体大小 */
    color: #777; /* 正文颜色 */
    line-height: 1.6; /* 行距 */
    margin-top: 15px; /* 与上方内容的间距 */
    margin-bottom: 20px; /* 与下方内容的间距 */
    font-weight: bold; /* 加粗段落标题 */
}

/* 设置列表整体样式 */
.postbox-details-thumb ul {
    list-style-type: none; /* 去除默认的列表符号 */
    padding: 0; /* 去除默认的内边距 */
}

.postbox-details-thumb p {
    font-size: 17px; /* 字体大小 */
    color: 	#000000; /* 设置标题颜色 */
    line-height: 1.8; /* 行距 */
    text-indent: 2em; /* 首行缩进2个字符的宽度 */
}








.postbox-details-text p {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.62;
    color: #1d2026;
}

.postbox-details-text-list {
    margin-bottom: 70px;
}

.postbox-details-text-list span {
    font-weight: 700;
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    display: inline-block;
    margin-bottom: 25px;
}

.postbox-details-text-list ul li {
    display: block;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.4;
    position: relative;
    padding-left: 15px;
    list-style-type: none;
    color: var(--tp-common-black);
}

.postbox-details-text-list ul li:not(:last-child) {
    margin-bottom: 16px;
}

.postbox-details-text-list ul li::after {
    position: absolute;
    top: 5px;
    left: 0;
    width: 4px;
    height: 4px;
    content: "";
    border-radius: 50%;
    background-color: var(--tp-common-black);
}

.postbox-details-share a {
    height: 34px;
    width: 34px;
    line-height: 30px;
    border-radius: 4px;
    text-align: center;
    display: inline-block;
    color: var(--tp-common-white);
    background-color: #1877f2;
    margin-left: 5px;
}

.postbox-details-share a.instagram {
    background: radial-gradient(109.62% 117.86% at 0% 108.33%, rgb(255, 221, 85) 0%, rgb(255, 84, 62) 46.3858932257%, rgb(200, 55, 171) 100%);
}

.postbox-details-share a.twitter {
    background-color: #1da1f2;
}

.postbox-details-share a.link {
    background-color: #eef0f5;
    color: var(--tp-common-black);
}

.postbox-details-share-wrapper {
    padding: 25px 0;
    padding-bottom: 20px;
    border-top: 1px solid rgba(10, 11, 15, 0.1);
    border-bottom: 1px solid rgba(10, 11, 15, 0.1);
}

.postbox-details-navigation-icon {
    color: var(--tp-common-black);
    transition: all 0.3s;
}

.postbox-details-navigation-icon svg {
    transform: translateY(1px);
}

.postbox-details-navigation-text {
    font-weight: 700;
    font-size: 17px;
    line-height: 1.53;
    letter-spacing: -0.01em;
    color: var(--tp-common-black);
    transition: all 0.3s;
}

.postbox-details-navigation-item a:hover .postbox-details-navigation-icon {
    color: var(--tp-common-blue);
}

.postbox-details-navigation-item a:hover .postbox-details-navigation-text {
    color: var(--tp-common-blue);
}

.postbox-details-author-wrap {
    border-radius: 14px;
    padding: 50px;
    background-color: #eceff5;
}

@media (max-width: 767px) {
    .postbox-details-author-wrap {
        padding: 35px;
        flex-wrap: wrap;
    }
}

.postbox-details-author-info p {
    font-weight: 500;
    font-size: 24px;
    line-height: 142%;
    letter-spacing: -0.02em;
    margin-bottom: 10px;
    color: var(--tp-common-black);
}

@media (max-width: 767px) {
    .postbox-details-author-info p {
        font-size: 20px;
    }
}

.postbox-details-author-info span {
    font-weight: 600;
    font-size: 15px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.postbox-details-author-info span::before {
    content: "";
    height: 2px;
    width: 30px;
    margin-right: 11px;
    display: inline-block;
    transform: translateY(-4px);
    background-color: var(--tp-common-black);
}

.postbox-details-author-thumb {
    margin-right: 30px;
}

@media (max-width: 767px) {
    .postbox-details-author-thumb {
        margin-right: 0;
        margin-bottom: 15px;
    }
}

.postbox-details-author-thumb img {
    border-radius: 100px;
}

.postbox-details-form-bg {
    background: linear-gradient(180deg, #eef0f5 0%, rgba(238, 240, 245, 0) 100%);
}

.postbox-details-form-title {
    font-weight: 800;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 10px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.postbox-details-form p {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.86;
    color: #525356;
    margin-bottom: 30px;
}

.postbox-details-input-box {
    line-height: 1;
}

.postbox-details-input input,
.postbox-details-input textarea {
    border-radius: 6px;
    border: 1px solid rgba(1, 17, 22, 0.16);
}

.postbox-details-input input::-webkit-input-placeholder,
.postbox-details-input textarea::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #848788;
    letter-spacing: -0.02em;
}

.postbox-details-input input::-moz-placeholder,
.postbox-details-input textarea::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #848788;
    letter-spacing: -0.02em;
}

.postbox-details-input input:-moz-placeholder,
.postbox-details-input textarea:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #848788;
    letter-spacing: -0.02em;
}

.postbox-details-input input:-ms-input-placeholder,
.postbox-details-input textarea:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #848788;
    letter-spacing: -0.02em;
}

.postbox-details-input input::placeholder,
.postbox-details-input textarea::placeholder {
    /* MODERN BROWSER */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #848788;
    letter-spacing: -0.02em;
}

.postbox-details-input input:focus,
.postbox-details-input textarea:focus {
    border-color: var(--tp-common-blue);
    box-shadow: 0 0 0 3px rgba(39, 125, 255, 0.1);
}

.postbox-details-input textarea {
    height: 160px;
    resize: none;
}

.postbox-details-remeber input {
    display: none;
}

.postbox-details-remeber input:checked~label::before {
    visibility: visible;
    opacity: 1;
}

.postbox-details-remeber label {
    position: relative;
    padding-left: 26px;
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    z-index: 1;
    color: #4d5051;
    letter-spacing: -0.02em;
}

.postbox-details-remeber label::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    z-index: -1;
    transition: 0.3s;
    line-height: 16px;
    border-radius: 4px;
    text-align: center;
    border: 1px solid #a1a5a7;
}

.postbox-details-remeber label::before {
    position: absolute;
    content: url("../image/check.svg");
    top: -1px;
    left: 0;
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    visibility: hidden;
    opacity: 0;
    color: var(--tp-common-black);
    transition: 0.3s;
}

.postbox-details-remeber label:hover {
    cursor: pointer;
}

.related-post-title {
    font-weight: 800;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.basic-pagination {
    margin-bottom: 40px;
}

.basic-pagination ul li {
    list-style: none;
    display: inline-block;
    margin-right: 5px;
}

@media (max-width: 767px) {
    .basic-pagination ul li {
        margin-right: 5px;
    }
}

.basic-pagination ul li:hover a {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black);
    background-color: var(--tp-common-black);
}

.basic-pagination ul li>a {
    height: 40px;
    width: 40px;
    line-height: 39px;
    text-align: center;
    font-size: 15px;
    border-radius: 50%;
    display: inline-block;
    color: var(--tp-common-black);
    transition: all 0.3s ease-in-out;
    border: 1px solid rgba(10, 11, 15, 0.1);
}

.basic-pagination ul li .current {
    height: 40px;
    width: 40px;
    line-height: 39px;
    text-align: center;
    font-size: 15px;
    border-radius: 50%;
    display: inline-block;
    color: var(--tp-common-white);
    transition: all 0.3s ease-in-out;
    border-color: var(--tp-common-black);
    background-color: var(--tp-common-black);
}

.basic-pagination-label span {
    font-weight: 500;
    font-size: 15px;
    line-height: 1.33;
    color: #525356;
    display: inline-block;
}

@media (max-width: 767px) {
    .basic-pagination-label span {
        margin-bottom: 15px;
    }
}

/*----------------------------------------*/
/*  5.2 Recent Post css
/*----------------------------------------*/
.rc-post:not(:last-child) {
    padding-bottom: 25px;
    margin-bottom: 30px;
    border-bottom: 1px solid #e8e8e9;
}

.rc-post-title {
    font-weight: 600;
    font-size: 18px;
    line-height: 1.44;
    color: var(--tp-common-black);
}

@media (max-width: 767px) {
    .rc-post-title br {
        display: none;
    }
}

.rc-post-title a:hover {
    color: var(--tp-common-blue);
}

.rc-meta span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #8e8f92;
    position: relative;
    display: inline-block;
}

.rc-meta span:first-child {
    padding-right: 8px;
    margin-right: 8px;
}

.rc-meta span:first-child::after {
    position: absolute;
    content: "";
    top: 5px;
    right: -2px;
    height: 4px;
    width: 4px;
    border-radius: 50%;
    display: inline-block;
    background-color: #8e8f92;
}

.rc-category a {
    font-weight: 800;
    font-size: 11px;
    border-radius: 4px;
    padding: 9px 10px;
    color: #525356;
    line-height: 1;
    margin-bottom: 10px;
    display: inline-block;
    text-transform: uppercase;
    background-color: #e6eed9;
}

/*----------------------------------------*/
/*  5.3 Sidebar css
/*----------------------------------------*/
.sidebar-wrapper {
    padding-left: 55px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sidebar-wrapper {
        padding-left: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .sidebar-wrapper {
        margin-top: 40px;
        padding-left: 0;
    }
}

.sidebar-widget-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 1;
    margin-bottom: 25px;
    color: var(--tp-common-black);
}

.sidebar-widget ul li {
    list-style: none;
    margin-bottom: 18px;
}

.sidebar-widget ul li:last-child {
    margin-bottom: 0;
}

.sidebar-widget ul li a {
    font-weight: 500;
    font-size: 15px;
    line-height: 1;
    color: #4d5051;
}

.sidebar-widget ul li a:hover {
    color: var(--tp-common-blue);
}

.sidebar-border-bottom {
    border-bottom: 1px solid #e8e8e9;
}

.sidebar-content-title {
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    color: var(--tp-common-black);
    margin-bottom: 6px;
}

.sidebar-content-designation {
    font-weight: 400;
    font-size: 14px;
    color: #727A7D;
    display: block;
    margin-bottom: 13px;
}

.sidebar-content p {
    font-size: 16px;
    color: #838383;
    margin-bottom: 27px;
}

.sidebar-content-social a {
    height: 37px;
    width: 42px;
    line-height: 37px;
    text-align: center;
    display: inline-block;
    border: 1px solid #E8E8E8;
    margin-right: 12px;
}

.sidebar-content-social a i {
    transition: 0.3s;
}

.sidebar-content-social a:hover {
    border: 1px solid var(--tp-theme-1);
    background-color: var(--tp-theme-1);
}

.sidebar-content-social a:hover i {
    color: var(--tp-common-white);
}

.sidebar-search {
    position: relative;
}

.sidebar-search input {
    width: 100%;
    height: 60px;
    line-height: 60px;
    padding: 0 25px;
    border-radius: 6px;
    padding-right: 50px;
    background: #eef0f5;
    border: 1px solid transparent;
}

.sidebar-search input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 400;
    font-size: 15px;
    color: #8e8f92;
}

.sidebar-search input::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 400;
    font-size: 15px;
    color: #8e8f92;
}

.sidebar-search input:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 400;
    font-size: 15px;
    color: #8e8f92;
}

.sidebar-search input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 400;
    font-size: 15px;
    color: #8e8f92;
}

.sidebar-search input::placeholder {
    /* MODERN BROWSER */
    font-weight: 400;
    font-size: 15px;
    color: #8e8f92;
}

.sidebar-search input:focus {
    border: 1px solid #277dff;
    box-shadow: 0 0 0 3px rgba(39, 125, 255, 0.1);
}

.sidebar-search button {
    position: absolute;
    top: 0;
    right: 25px;
    height: 100%;
    line-height: 60px;
    color: var(--tp-common-black);
}

.tagcloud a {
    border-radius: 4px;
    padding: 10px 18px;
    font-weight: 700;
    font-size: 12px;
    line-height: 1;
    color: #525356;
    margin-bottom: 10px;
    display: inline-block;
    text-transform: uppercase;
    background-color: #eef0f5;
}

@media (max-width: 767px) {
    .tagcloud a {
        padding: 10px 14px;
    }
}

.tagcloud a:not(:last-child) {
    margin-right: 5px;
}

.tagcloud a:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

/*----------------------------------------*/
/*  5.4 Blog css
/*----------------------------------------*/
.tp-blog-meta {
    margin-bottom: 5px;
}

.tp-blog-meta span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    position: relative;
    display: inline-block;
    color: rgba(255, 255, 255, 0.7);
}

.tp-blog-meta span:not(:last-child) {
    padding-right: 11px;
    margin-right: 11px;
}

.tp-blog-meta span:not(:last-child)::after {
    position: absolute;
    content: "";
    top: 8px;
    right: -4px;
    height: 4px;
    width: 4px;
    border-radius: 50%;
    background-color: var(--tp-common-yellow);
}

.tp-blog-title {
    font-size: 22px;
    font-weight: 700;
    line-height: 1.36;
    margin-bottom: 15px;
    display: inline-block;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-blog-title {
        font-size: 20px;
    }
}

.tp-blog-title a:hover {
    color: var(--tp-theme-1);
}

.tp-blog-author-img {
    margin-right: 10px;
    border-radius: 50%;
}

.tp-blog-author-name {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    display: inline-block;
    transform: translateY(1px);
    color: var(--tp-common-white);
}

.tp-blog-content {
    padding: 30px 0;
    padding-top: 20px;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.tp-blog-content::after {
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1px;
    width: 0;
    content: "";
    transition: 0.4s;
    background-color: var(--tp-theme-1);
}

.tp-blog-thumb img {
    transition: 0.9s;
    width: 100%;
}

.tp-blog-item:hover .tp-blog-thumb img {
    transform: scale(1.1) rotate(-2deg);
}

.tp-blog-item:hover .tp-blog-content::after {
    right: auto;
    left: 0;
    width: 100%;
}

.tp-blog-style-2 .tp-blog-meta span {
    color: #525356;
}

.tp-blog-style-2 .tp-blog-meta span:not(:last-child)::after {
    background-color: var(--tp-common-black);
}

.tp-blog-style-2 .tp-blog-title {
    color: var(--tp-common-black);
}

.tp-blog-style-2 .tp-blog-title a:hover {
    color: var(--tp-common-blue);
}

.tp-blog-style-2 .tp-blog-content {
    border-bottom: 1px solid rgba(20, 24, 32, 0.1);
}

.tp-blog-style-2 .tp-blog-content::after {
    background-color: var(--tp-common-blue);
}

.tp-blog-style-2 .tp-blog-author-name {
    color: var(--tp-common-black);
}

.tp-blog-3-item {
    padding: 40px 10px;
    padding-bottom: 45px;
    border-radius: 10px;
    transition: all 0.3s;
    background-color: var(--tp-common-white);
}

.tp-blog-3-item:hover {
    box-shadow: 0 20px 16px 0 rgba(1, 17, 22, 0.06);
}

.tp-blog-3-item:hover .tp-blog-3-thumb img {
    transform: scale(1.1) rotate(-2deg);
}

.tp-blog-3-content {
    padding: 0px 30px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-blog-3-content {
        padding: 0px 20px;
    }
}

.tp-blog-3-category {
    margin-bottom: 10px;
}

.tp-blog-3-category a {
    font-weight: 700;
    font-size: 12px;
    line-height: 1.67;
    border-radius: 4px;
    padding: 4px 10px;
    color: #4d5051;
    text-transform: uppercase;
    transition: all 0.3s;
    border: 1px solid rgba(0, 43, 59, 0.1);
}

.tp-blog-3-category a:not(:last-child) {
    margin-right: 4px;
}

.tp-blog-3-category a:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black-3);
    background-color: var(--tp-common-black-3);
}

.tp-blog-3-title {
    font-weight: 700;
    font-size: 22px;
    line-height: 1.27;
    color: var(--tp-common-black-3);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-blog-3-title {
        font-size: 18px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-blog-3-title {
        font-size: 20px;
    }
}

.tp-blog-3-title a:hover {
    color: var(--tp-common-blue);
}

.tp-blog-3-meta span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.43;
    display: inline-block;
    text-transform: uppercase;
    color: var(--tp-common-black-3);
}

.tp-blog-3-meta span svg {
    color: #4d5051;
    margin-right: 4px;
    transform: translateY(-2px);
}

.tp-blog-3-thumb {
    margin-bottom: 20px;
}

.tp-blog-3-thumb img {
    transition: all 0.9s;
}

.tp-blog-3-avater-info img {
    height: 30px;
    width: 30px;
    border-radius: 50%;
    margin-right: 10px;
}

.tp-blog-3-avater-info span {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    color: var(--tp-common-black-3);
}

.tp-blog-style-4 .row [class*=col-]:not(:last-child) .tp-blog-3-item {
    padding-bottom: 25px;
    margin-bottom: 25px;
    border-bottom: 1px solid #e8e8e9;
}

.tp-blog-style-4 .tp-blog-3-item {
    padding: 0;
    padding-bottom: 0;
    border-radius: 0;
}

.tp-blog-style-4 .tp-blog-3-content {
    padding: 0;
}

@media (max-width: 767px) {
    .tp-blog-style-4 .tp-blog-3-content {
        margin-bottom: 30px;
    }
}

.tp-blog-style-4 .tp-blog-3-title {
    font-weight: 600;
    font-size: 20px;
    line-height: 1.3;
    color: var(--tp-common-black);
}

.tp-blog-style-4 .tp-blog-3-title a:hover {
    color: var(--tp-common-purple);
}

.tp-blog-style-4 .tp-blog-3-item:hover {
    box-shadow: none;
}

.tp-blog-style-4 .tp-blog-3-thumb {
    margin-bottom: 0;
    border-radius: 6px;
}

.tp-blog-style-4 .tp-blog-3-thumb img {
    width: 100%;
    border-radius: 6px;
}

.tp-blog-style-4 .tp-blog-3-category a:hover {
    border-color: #eaecf1;
    background-color: #eaecf1;
    color: var(--tp-common-black);
}

@media (max-width: 767px) {
    .tp-blog-4-area {
        padding-top: 0px;
        padding-bottom: 70px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-blog-4-btn {
        margin-bottom: 60px;
    }
}

.blog-hero-shape {
    position: absolute; /* 设置元素的位置为绝对定位，相对于最近的已定位父元素（如果没有，则相对于文档根元素） */
    top: 0; /* 将元素的顶部边界对齐到包含块的顶部 */
    height: 100%; /* 设置元素的高度为其包含块的高度（通常是父元素的高度） */
    width: 100%; /* 设置元素的宽度为其包含块的宽度 */
    z-index: -1; /* 设置元素的堆叠顺序，值为-1表示该元素将位于其它元素下方 */
    
}
/*资源中心-渐变背景图*/
.blog-hero-shape img {
   width: 100%;           /* 图片宽度填满容器 */
    height: 100%;          /* 图片高度填满容器 */

}



.blog-hero-left {
    border-radius: 14px;
    padding: 70px 70px 60px 60px;
    background-color: var(--tp-common-white);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .blog-hero-left {
        padding: 70px 40px 60px 40px;
    }
}

@media (max-width: 767px) {
    .blog-hero-left {
        padding: 50px 40px 50px 40px;
    }
}

.blog-hero-left-circle {
    position: absolute;
    top: 0%;
    left: 0%;
    height: 500px;
    width: 500px;
    z-index: -1;
    border-radius: 50%;
    border-radius: 100%;
    display: inline-block;
    background: linear-gradient(212deg, #fff 0%, rgba(255, 255, 255, 0) 70.66%);
}

.blog-hero-title {
    font-weight: 800;
    font-size: 80px;
    line-height: 1;
    margin-bottom: 60px;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .blog-hero-title {
        font-size: 65px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .blog-hero-title {
        font-size: 60px;
    }
}

@media (max-width: 767px) {
    .blog-hero-title {
        font-size: 35px;
        margin-bottom: 30px;
    }
}

.blog-hero-author {
    margin-bottom: 47px;
}

.blog-hero-author-img {
    margin-right: 15px;
    flex: 0 0 auto;
}

.blog-hero-author-text p {
    font-weight: 500;
    font-size: 20px;
    margin-bottom: 0;
    line-height: 1.4;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .blog-hero-author-text p {
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    .blog-hero-subscribe {
        flex-wrap: wrap;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .blog-hero-subscribe {
        flex-wrap: inherit;
    }
}

.blog-hero-subscribe-btn {
    flex: 0 0 auto;
    margin-left: 5px;
}

.blog-hero-subscribe-input {
    width: 100%;
}

.blog-hero-subscribe-input input {
    border: 0;
    height: 70px;
    font-weight: 400;
    font-size: 14px;
    line-height: 70px;
    border-radius: 6px;
    padding-left: 50px;
    background-color: #f0f2f5;
    color: var(--tp-common-black);
}

.blog-hero-subscribe-input input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.blog-hero-subscribe-input input::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.blog-hero-subscribe-input input:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.blog-hero-subscribe-input input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.blog-hero-subscribe-input input::placeholder {
    /* MODERN BROWSER */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.blog-hero-subscribe-input span {
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
}

.blog-hero-right-style .tp-project-4-thumb {
    height: 100%;
}

.blog-hero-right-style .tp-project-4-thumb img {
    height: 100%;
    object-fit: cover;
}

.blog-grid-style .tp-blog-3-category a {
    border: none;
}

.blog-grid-style .tp-blog-3-category a:hover {
    color: var(--tp-common-black);
}

.blog-grid-style .tp-blog-3-item {
    padding: 40px 10px;
    padding-bottom: 40px;
}

.blog-grid-top-wrap {
    padding: 8px;
    border-radius: 8px;
    margin-bottom: 60px;
    background-color: var(--tp-common-white);
}

.blog-grid-top-wrap .tp-service-4-tab ul {
    padding: 0px;
    background-color: transparent;
}

.blog-grid-top-wrap .tp-service-4-tab ul li button {
    font-size: 15px;
    padding: 9px 45px;
}

@media (max-width: 767px) {
    .blog-grid-top-wrap .tp-service-4-tab ul li button {
        font-size: 13px;
        padding: 9px 12px;
    }
}

.blog-grid-top-wrap #lineMarker {
    top: 50%;
    height: 44px;
    background: #f0f2f5;
    transform: translateY(-50%);
}

.blog-grid-search-input input {
    height: 44px;
    border-radius: 6px;
    padding: 13px 15px 13px 17px;
    padding-right: 40px;
    border: 1px solid rgba(1, 17, 22, 0.16);
}

.blog-grid-search-input input:focus {
    border: 1px solid #277dff;
    box-shadow: 0 0 0 3px rgba(39, 125, 255, 0.1);
}

.blog-grid-search-input input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 400;
    font-size: 14px;
    color: #525356;
    letter-spacing: -0.02em;
}

.blog-grid-search-input input::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 400;
    font-size: 14px;
    color: #525356;
    letter-spacing: -0.02em;
}

.blog-grid-search-input input:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 400;
    font-size: 14px;
    color: #525356;
    letter-spacing: -0.02em;
}

.blog-grid-search-input input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 400;
    font-size: 14px;
    color: #525356;
    letter-spacing: -0.02em;
}

.blog-grid-search-input input::placeholder {
    /* MODERN BROWSER */
    font-weight: 400;
    font-size: 14px;
    color: #525356;
    letter-spacing: -0.02em;
}

.blog-grid-search-icon {
    position: absolute;
    top: 50%;
    right: 15px;
    line-height: 0;
    transform: translateY(-50%);
    color: var(--tp-common-black);
}

/*----------------------------------------*/
/*  6.1 Footer Style 1
/*----------------------------------------*/
.tp-footer-logo {
    margin-bottom: 30px;
}

.tp-footer-logo img {
    width: 135px;
    height: auto;
}

.tp-footer-text {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    color: #afb2b8;
    margin-bottom: 40px;
}

.tp-footer-link {
    font-weight: 600;
    font-size: 16px;
    line-height: 1.5;
    transition: 0.3s;
    color: var(--tp-common-white);
}

.tp-footer-link span {
    margin-left: 10px;
}

.tp-footer-link:hover {
    color: var(--tp-theme-1);
}

.tp-footer-col-1 {
    padding-right: 50px;
}

.tp-footer-col-3 {
    padding-left: 55px;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-footer-col-3 {
        padding-left: 0;
    }
}

.tp-footer-widget-title {
    font-weight: 700;
    font-size: 20px;
    margin-bottom: 40px;
    text-transform: uppercase;
    color: var(--tp-common-white);
}

.tp-footer-widget-content ul li {
    list-style-type: none;
}

.tp-footer-widget-content ul li:not(:last-child) {
    margin-bottom: 7px;
}

.tp-footer-widget-content ul li a {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    color: #afb2b8;
    transition: 0.3s;
}

.tp-footer-widget-content ul li a span {
    display: inline-block;
    margin-right: 10px;
}

.tp-footer-widget-content ul li a:hover {
    color: var(--tp-theme-1);
}

.tp-footer-style-2 .tp-footer-text {
    color: var(--tp-common-black);
}

.tp-footer-style-2 .tp-footer-link {
    color: var(--tp-common-black);
}

.tp-footer-style-2 .tp-footer-link:hover {
    color: var(--tp-common-blue);
}

.tp-footer-style-2 .tp-footer-widget-title {
    color: var(--tp-common-black);
}

.tp-footer-style-2 .tp-footer-widget-content ul li a {
    color: #525356;
}

.tp-footer-style-2 .tp-footer-widget-content ul li a:hover {
    color: var(--tp-common-blue);
}

.tp-copyright-bg {
    padding: 30px 30px;
    background: rgba(255, 255, 255, 0.04);
}

.tp-copyright-social>span {
    font-weight: 700;
    font-size: 14px;
    color: #828386;
    margin-right: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.tp-copyright-social a {
    height: 40px;
    width: 40px;
    line-height: 40px;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    margin-right: 6px;
    color: rgba(255, 255, 255, 0.5);
    background-color: rgba(255, 255, 255, 0.06);
}

.tp-copyright-social a:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-theme-1);
}

.tp-copyright-text span {
    font-weight: 500;
    font-size: 14px;
    color: #828386;
}

.tp-copyright-text span a {
    color: var(--tp-common-white);
}

.tp-copyright-style-2 .tp-copyright-bg {
    background: #eef0f5;
}

.tp-copyright-style-2 .tp-copyright-text span {
    color: #525356;
}

.tp-copyright-style-2 .tp-copyright-text span a {
    color: var(--tp-common-blue);
}

.tp-copyright-style-2 .tp-copyright-social>span {
    color: #525356;
}

.tp-copyright-style-2 .tp-copyright-social a {
    color: #525356;
    background-color: var(--tp-common-white);
}

.tp-copyright-style-2 .tp-copyright-social a:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

/*----------------------------------------*/
/*  6.2 Footer Style 2
/*----------------------------------------*/
.tp-footer-2-widget-paragraph p {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    color: var(--tp-common-white);
}

.tp-footer-2-widget-social a {
    height: 40px;
    width: 40px;
    line-height: 33px;
    border-radius: 50%;
    display: inline-block;
    text-align: center;
    color: rgba(255, 255, 255, 0.5);
    border: 2px solid rgba(255, 255, 255, 0.1);
}

.tp-footer-2-widget-social a:not(:last-child) {
    margin-right: 6px;
}

.tp-footer-2-widget-social a:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.tp-footer-2-widget-title {
    font-weight: 800;
    font-size: 74px;
    line-height: 0.86;
    padding-bottom: 20px;
    background-clip: border-box;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background: linear-gradient(90deg, #d4fc79 0%, #96e6a1 100%);
    background: -webkit-linear-gradient(90deg, #d4fc79 0%, #96e6a1 100%);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-footer-2-widget-title {
        font-size: 55px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-footer-2-widget-title {
        font-size: 51px;
    }
}

@media (max-width: 767px) {
    .tp-footer-2-widget-title {
        font-size: 45px;
    }
}

.tp-footer-2-widget .tp-footer-link:hover {
    color: var(--tp-common-blue);
}

.tp-footer-2-col-1 {
    padding-right: 125px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-footer-2-col-1 {
        padding-right: 80px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-footer-2-col-1 {
        padding-right: 0;
    }
}

.tp-footer-2-col-2 {
    padding-left: 100px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-footer-2-col-2 {
        padding-left: 0;
    }
}

.tp-footer-2-bg::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 38.9%;
    height: 100%;
    content: "";
    background-color: #082e3d;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .tp-footer-2-bg::after {
        width: 35.9%;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-footer-2-bg::after {
        width: 34.9%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-footer-2-bg::after {
        display: none;
    }
}

.tp-copyright-2-left p {
    font-weight: 500;
    font-size: 14px;
    color: #72878e;
    margin-bottom: 0;
}

.tp-copyright-2-left p a {
    color: var(--tp-common-white);
}

.tp-copyright-2-middle a {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.71;
    color: #afb2b8;
    transition: all 0.3s;
}

.tp-copyright-2-middle a span {
    margin-right: 5px;
    display: inline-block;
    transform: translateY(-1px);
}

.tp-copyright-2-middle a:hover {
    color: var(--tp-common-white);
}

.tp-copyright-2-right ul li {
    display: inline-block;
    list-style-type: none;
}

.tp-copyright-2-right ul li:not(:first-child) {
    margin-left: 30px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-copyright-2-right ul li:not(:first-child) {
        margin-left: 20px;
    }
}

.tp-copyright-2-right ul li a {
    font-weight: 500;
    font-size: 14px;
    color: #afb2b8;
    transition: all 0.3s;
}

.tp-copyright-2-right ul li a:hover {
    color: var(--tp-common-white);
}

.tp-copyright-2-border {
    padding-top: 22px;
    padding-bottom: 40px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

/*----------------------------------------*/
/*  6.3 Footer Style 3
/*----------------------------------------*/
.phone-number {
    margin-right: 50px; /* Adjust this value as needed */
}



/* 设置底部联系方式区域的样式 */
.tp-footer-3-area {
    color: #fff; /* 字体颜色 */
    padding-top: 50px;
    padding-bottom: 30px;
}

/* 联系信息容器 */
.contact-info-container {
    max-width: 1200px;
    margin: 0 auto;
    font-family: Arial, sans-serif;
    text-align: center;
}

/* 联系标题 */
.contact-info h3 {
    font-size: 18px;
    color: 	#838B8B;
    margin-bottom: 20px;
}

/* 每一项联系信息 */
.contact-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    font-size: 16px;
    margin-bottom: 15px;
}

/* 图标样式 */
.contact-item i {
    font-size: 18px;
    color: #007bff;
}

/* 设置联系项中的文字颜色 */
.contact-item span {
    color: 	#838B8B;
}

/* 响应式调整：调整大屏和小屏的布局 */
@media (max-width: 767px) {
    .contact-item {
        flex-direction: column; /* 小屏设备时，设置垂直排列 */
        text-align: center; /* 内容居中 */
    }

    .contact-item i {
        margin-bottom: 5px; /* 图标和文字之间添加间距 */
    }
}


/* 微信图标的容器样式 */
.wechat-icon-container {
    display: inline-block;
    position: relative;
}

/* 二维码样式：初始时隐藏二维码 */
.wechat-qrcode {
    position: absolute; 
    bottom: 100%; /* 让二维码出现在图标的上方 */
    left: 50%;
    transform: translateX(-50%); /* 让二维码居中 */
    display: none; /* 初始时不显示二维码 */
    z-index: 10; /* 保证二维码在图标之上 */
    width: 176px;  /* 设置二维码的固定宽度 */
    height: 176px; /* 设置二维码的固定高度 */
}

/* 当鼠标悬停在微信图标上时显示二维码 */
.wechat-icon-container:hover .wechat-qrcode {
    display: block;
}

/* 微信图标的尺寸，保持不变 */
.wechat-icon-container svg {
    width: 20px;
    height: 20px;
}

/* 二维码图片的大小，确保不失真 */
.wechat-qrcode img {
    width: 100%;
    height: 100%;
    object-fit: contain; /* 保证二维码比例不失真 */
}






/* 设置底部小工具的左侧空间 */
.tp-footer-3-space-2 {
    padding-left: 100px; /* 左侧内边距 */
}

/* 当屏幕宽度在992px到1199px之间时，调整左侧空间为30px */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-footer-3-space-2 {
        padding-left: 30px;
    }
}

/* 当屏幕宽度在768px到991px之间时，调整左侧空间为70px */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-footer-3-space-2 {
        padding-left: 70px;
    }
}

/* 当屏幕宽度小于767px时，去除左侧空间 */
@media (max-width: 767px) {
    .tp-footer-3-space-2 {
        padding-left: 0;
    }
}

/* 设置底部小工具的左侧空间 */
.tp-footer-3-space-3 {
    padding-left: 80px; /* 左侧内边距 */
}

/* 当屏幕宽度在992px到1199px之间时，调整左侧空间为30px */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-footer-3-space-3 {
        padding-left: 30px;
    }
}

/* 当屏幕宽度小于767px时，去除左侧空间 */
@media (max-width: 767px) {
    .tp-footer-3-space-3 {
        padding-left: 0;
    }
}




/*底部长虚线*/
.tp-copyright-3-border {
    border-top: 1px dashed rgba(255, 255, 255, 0.3);
}





@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-copyright-3-left {
        margin-bottom: 30px;
    }
}



/*底部备案号控件*/
.tp-copyright-3-left p {
    font-weight: 500;
    font-size: 13px;
    color: #93959b;
    margin-bottom: 0;
}

.tp-copyright-3-left p a {
    color: var(--tp-common-white);
}





/*苹果控件*/
.tp-copyright-3-store {
    border-radius: 6px;
    padding: 1px 18px;
    display: inline-block;
    background-color: #2b313f;
    margin-left: 10px;
    transition: 0.3s;
}

.tp-copyright-3-store:hover {
    background-color: #3a4254;
}

.tp-copyright-3-store>span {
    flex: 0 0 auto;
    margin-right: 10px;
}

.tp-copyright-3-store-info span {
    font-weight: 600;
    font-size: 12px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-copyright-3-store-info h5 {
    font-weight: 700;
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-copyright-3-right>span {
    font-weight: 700;
    font-size: 12px;
    margin-right: 10px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.7);
}

.tp-footer-style-5 .tp-footer-2-widget-paragraph p {
    color: #525356;
}

.tp-footer-style-5 .tp-footer-2-widget-social a {
    color: var(--tp-common-black);
    border: 2px solid rgba(20, 24, 32, 0.1);
}

.tp-footer-style-5 .tp-footer-2-widget-social a:hover {
    color: var(--tp-common-white);
    border-color: #277dff;
    background-color: #277dff;
}

.tp-footer-style-5 .tp-footer-2-widget-title {
    background-image: -webkit-linear-gradient(90deg, #3e86f2 0%, #ad60cb 49.48%, #ff656a 100%);
    background-image: -moz-linear-gradient(90deg, #3e86f2 0%, #ad60cb 49.48%, #ff656a 100%);
    background-image: -ms-linear-gradient(90deg, #3e86f2 0%, #ad60cb 49.48%, #ff656a 100%);
    background-image: -o-linear-gradient(90deg, #3e86f2 0%, #ad60cb 49.48%, #ff656a 100%);
    background-image: linear-gradient(90deg, #3e86f2 0%, #ad60cb 49.48%, #ff656a 100%);
    background-clip: text;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

.tp-footer-style-5 .tp-footer-link {
    color: var(--tp-common-black);
}

.tp-copyright-style-2.tp-copyright-2-border {
    border-top: 1px solid #e8eaed;
}

.tp-copyright-style-2 .tp-copyright-2-left p {
    color: #525356;
}

.tp-copyright-style-2 .tp-copyright-2-left p a {
    color: var(--tp-common-black);
}

.tp-copyright-style-2 .tp-copyright-2-middle a {
    color: var(--tp-common-black);
}

.tp-copyright-style-2 .tp-copyright-2-middle a:hover {
    color: var(--tp-common-blue);
}

.tp-copyright-style-2 .tp-copyright-2-right ul li a {
    color: var(--tp-common-black);
}

.tp-copyright-style-2 .tp-copyright-2-right ul li a:hover {
    color: var(--tp-common-blue);
}

/*----------------------------------------*/
/*  7.9 Hero css
/*----------------------------------------*/
.tp-hero-pt {
    padding-top: 180px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-pt {
        padding-top: 160px;
    }
}

@media (max-width: 767px) {
    .tp-hero-pt {
        padding-top: 150px;
    }
}

.tp-hero-title {
    font-weight: 800;
    font-size: 80px;
    line-height: 1;
    margin-bottom: 27px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-title {
        font-size: 60px;
    }
}

@media (max-width: 767px) {
    .tp-hero-title {
        font-size: 45px;
    }
}

.tp-hero-title-box {
    margin-bottom: 45px;
}

.tp-hero-title-box p {
    font-weight: 400;
    font-size: 20px;
    letter-spacing: -0.02em;
    color: var(--tp-grey-2);
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-hero-title-box p {
        font-size: 18px;
    }
}

.tp-hero-tell a {
    font-weight: 600;
    font-size: 16px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-hero-tell a span {
    height: 50px;
    width: 50px;
    margin-right: 10px;
    line-height: 49px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    color: var(--tp-common-black);
    background-color: var(--tp-common-yellow);
}

.tp-hero-btn-box {
    line-height: 1;
}

.tp-hero-banner-shape {
    position: absolute;
    top: -60px;
    right: 11%;
    z-index: 2;
}

.tp-hero-banner-shape img {
    animation: rotate 15s linear infinite;
}

.tp-hero-banner-height {
    height: 800px;
    overflow: hidden;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-hero-banner-height {
        height: 600px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-banner-height {
        height: 450px;
    }
}

@media (max-width: 767px) {
    .tp-hero-banner-height {
        height: 200px;
    }
}

.tp-hero-banner img {
    margin-top: -140px;
    width: 100%;
    object-fit: cover;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-banner img {
        margin-top: -50px;
    }
}

@media (max-width: 767px) {
    .tp-hero-banner img {
        margin-top: 0px;
        height: 300px;
    }
}

.tp-hero-gradient-circle {
    position: absolute;
    right: -10%;
    top: 25%;
    z-index: -1;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-hero-gradient-circle {
        right: -20%;
        top: 35%;
    }
}

.tp-hero-gradient-circle span {
    height: 900px;
    width: 900px;
    border-radius: 50%;
    filter: blur(400px);
    display: inline-block;
    background-color: rgba(109, 97, 255, 0.4);
}

.tp-hero-3-bg {
    padding-top: 260px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-hero-3-bg {
        padding-top: 200px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-3-bg {
        padding-top: 120px;
    }
}

@media (max-width: 767px) {
    .tp-hero-3-bg {
        padding-top: 130px;
    }
}

.tp-hero-3-title {
    font-weight: 800;
    font-size: 70px;
    line-height: 1.2;
    text-align: center;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-hero-3-title {
        font-size: 65px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-3-title {
        font-size: 55px;
    }
}

@media (max-width: 767px) {
    .tp-hero-3-title {
        font-size: 36px;
    }
}

.tp-hero-3-title span {
    color: var(--tp-common-blue);
}

.custom-line {
    position: absolute;
    /* 确保它是绝对定位 */
    left: 340px;
    /* 调整到你需要的左偏移量，负值也可以尝试 */
    bottom: -25px;
    /* 如果需要调整垂直位置 */
    transform: translateX(-20px);
    /* 可以用这个进一步微调位置 */
}

.tp-hero-3-title-box P {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.5;
    text-align: center;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
}

@media (max-width: 767px) {
    .tp-hero-3-title-box P {
        font-size: 16px;
    }

    .tp-hero-3-title-box P br {
        display: none;
    }
}

.tp-hero-3-playbtn span {
    height: 46px;
    width: 46px;
    line-height: 46px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    margin-right: 10px;
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
    animation: animate-pulse 3s linear infinite;
}

.tp-hero-3-playbtn span svg {
    margin-left: 2px;
}

.tp-hero-3-playbtn i {
    font-weight: 400;
    font-size: 24px;
    font-style: normal;
    display: inline-block;
    transform: translateY(3px);
    color: var(--tp-common-black-3);
    font-family: var(--tp-ff-niconne);
}

.tp-hero-3-dashboard {
    position: relative;
}

.tp-hero-3-dashboard::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    height: 220px;
    width: 100%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 85.94%);
}

.tp-hero-3-shape-1 {
    position: absolute;
    bottom: 70px;
    left: -90px;
    z-index: 2;
}

.tp-hero-4-bg {
    padding-top: 290px;
    padding-bottom: 210px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-hero-4-bg {
        padding-top: 190px;
        padding-bottom: 190px;
    }
}

.tp-hero-4-scroll-nav {
    position: absolute;
    bottom: -120px;
    right: 0;
}

.tp-hero-4-scroll-nav a {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.tp-hero-4-scroll-nav a span {
    margin-left: 10px;
    display: inline-block;
}

.tp-hero-4-scroll-nav a span svg {
    transform: translateY(-1px);
}

.tp-hero-4-subtitle {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.87;
    display: inline-block;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--tp-common-purple-2);
}

.tp-hero-4-title {
    font-weight: 800;
    font-size: 100px;
    line-height: 0.96;
    padding-bottom: 15px;
    letter-spacing: -0.04em;
    background-image: -webkit-linear-gradient(180deg, #935acd 0%, #444899 100%);
    background-image: -moz-linear-gradient(180deg, #935acd 0%, #444899 100%);
    background-image: -ms-linear-gradient(180deg, #935acd 0%, #444899 100%);
    background-image: -o-linear-gradient(180deg, #935acd 0%, #444899 100%);
    background-image: linear-gradient(180deg, #935acd 0%, #444899 100%);
    background-clip: text;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-hero-4-title {
        font-size: 85px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-hero-4-title {
        font-size: 63px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-4-title {
        font-size: 72px;
    }
}

@media (max-width: 767px) {
    .tp-hero-4-title {
        font-size: 55px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .tp-hero-4-title {
        font-size: 65px;
    }
}

.tp-hero-4-title-box {
    padding-right: 70px;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-hero-4-title-box {
        padding-right: 0;
        margin-bottom: 50px;
    }
}

.tp-hero-4-thumb img {
    max-width: inherit;
    margin-left: -15px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-hero-4-thumb img {
        margin-left: -30px;
    }
}

@media (max-width: 767px) {
    .tp-hero-4-thumb img {
        margin-left: 0px;
        max-width: 100%;
    }
}

.tp-hero-4-sub-img {
    position: absolute;
    top: 10%;
    left: 28%;
    animation: anim-top-bottom 1s linear infinite alternate;
}

.tp-hero-4-circle {
    position: absolute;
    top: 4%;
    right: -16%;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-hero-4-circle {
        right: -5%;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-hero-4-circle {
        right: -2%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-4-circle {
        right: 14%;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .tp-hero-4-circle {
        right: 0;
    }
}

.tp-hero-4-circle span {
    height: 500px;
    width: 500px;
    border-radius: 50%;
    display: inline-block;
    background: linear-gradient(212deg, #fff 0%, rgba(255, 255, 255, 0) 70.66%);
}

.tp-hero-5-bg {
    background-color: #CED9FF;
}

.tp-hero-5-subtitle {
    font-weight: 600;
    font-size: 14px;
    padding: 1px 14px;
    margin-bottom: 15px;
    border-radius: 20px;
    display: inline-block;
    text-transform: uppercase;
    background-color: #fbcea0;
    color: var(--tp-common-black);
}

.tp-hero-5-title {
    font-weight: 800;
    font-size: 70px;
    line-height: 109%;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.tp-hero-5-title i {
    font-style: normal;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-hero-5-title {
        font-size: 60px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-hero-5-title {
        font-size: 48px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-5-title {
        font-size: 62px;
    }
}

@media (max-width: 767px) {
    .tp-hero-5-title {
        font-size: 43px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .tp-hero-5-title {
        font-size: 52px;
    }
}

.tp-hero-5-title span {
    color: var(--tp-common-blue);
}

.tp-hero-5-circle-1 {
    position: absolute;
    top: -75%;
    right: 0;
    z-index: -1;
}

.tp-hero-5-circle-1 span {
    height: 800px;
    width: 800px;
    border-radius: 50%;
    border-radius: 100%;
    filter: blur(300px);
    display: inline-block;
    background-color: rgba(16, 255, 212, 0.14);
}

.tp-hero-5-circle-2 {
    position: absolute;
    top: -50px;
    left: -60px;
    z-index: -1;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-hero-5-circle-2 {
        left: -35px;
    }
}

.tp-hero-5-circle-2 span {
    height: 460px;
    width: 460px;
    border-radius: 100%;
    display: inline-block;
    background: linear-gradient(156deg, #fff 9.72%, rgba(255, 255, 255, 0) 70.66%);
}

.tp-hero-5-inner-shape-1 {
    position: absolute;
    top: 23%;
    left: 9%;
    animation: rotate 5s linear infinite;
}

.tp-hero-5-inner-shape-2 {
    position: absolute;
    top: 12%;
    left: 26%;
    animation: rotate 7s linear infinite;
}

.tp-hero-5-inner-shape-3 {
    position: absolute;
    left: -5%;
    bottom: 29%;
    mix-blend-mode: luminosity;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-hero-5-inner-shape-3 {
        left: -13%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-hero-5-inner-shape-3 {
        left: 3%;
    }
}

@media (max-width: 767px) {
    .tp-hero-5-inner-shape-3 {
        left: 0;
    }
}

.tp-hero-inner-bg {
    padding-top: 215px;
    padding-bottom: 160px;
    background-color: #CEE1FF;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-hero-inner-bg {
        padding-bottom: 100px;
    }
}

.tp-hero-inner-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    mix-blend-mode: overlay;
}

.tp-hero-inner-img img {
    height: 100%;
    width: 100%;
}

.inner-sv-3-style .tp-hero-5-subtitle {
    background-color: #A3DCC6;
}

.inner-sv-3-shape-1 {
    position: absolute;
    bottom: -26%;
    left: -5%;
    mix-blend-mode: luminosity;
}

.inner-sv-3-shape-2 {
    position: absolute;
    top: -42%;
    right: 13%;
    mix-blend-mode: luminosity;
    animation: anim-left-right 4s linear infinite alternate;
}

.inner-sv-3-shape-3 {
    position: absolute;
    top: -15%;
    left: 30%;
    mix-blend-mode: luminosity;
    animation: anim-top-bottom 1s linear infinite alternate;
}

.inner-sv-3-text p {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.71;
    margin-bottom: 0;
    color: var(--tp-common-black);
}

.inner-sv-title-thumb {
    position: absolute;
    top: -10px;
    right: 16%;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .inner-sv-title-thumb {
        top: -20px;
        right: 20%;
    }
}

/*----------------------------------------*/
/*  7.14 slider css
/*----------------------------------------*/
.tp-slider-item {
    padding-top: 350px;
    padding-bottom: 275px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-slider-item {
        padding-top: 230px;
        padding-bottom: 230px;
    }
}

@media (max-width: 767px) {
    .tp-slider-item {
        padding-top: 200px;
        padding-bottom: 200px;
    }
}

.tp-slider-item::after {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    content: "";
    background: rgba(10, 12, 17, 0.4);
}

.tp-slider-thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: scale(1);
    background-size: cover;
    -webkit-transform: scale(1);
    background-repeat: no-repeat;
    background-position: left center;
    transition: transform 7000ms ease, opacity 1500ms ease-in;
    transition: opacity 1500ms ease-in, -webkit-transform 7000ms ease;
    -webkit-transition: opacity 1500ms ease-in, -webkit-transform 7000ms ease;
    transition: transform 7000ms ease, opacity 1500ms ease-in, -webkit-transform 7000ms ease;
}

.tp-slider-subtitle {
    font-weight: 600;
    font-size: 16px;
    line-height: 1.87;
    letter-spacing: 0.1em;
    display: inline-block;
    text-transform: uppercase;
    color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-slider-subtitle {
        font-size: 14px;
    }
}

.tp-slider-title {
    font-weight: 800;
    font-size: 80px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-slider-title {
        font-size: 60px;
    }
}

@media (max-width: 767px) {
    .tp-slider-title {
        font-size: 45px;
    }
}

.tp-slider-title-box {
    opacity: 0;
    transform: translateY(-150px);
}

.tp-slider-btn {
    opacity: 0;
    transform: translateY(150px);
}

.tp-slider-active .swiper-slide-active .tp-slider-thumb {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
}

.tp-slider-active .swiper-slide-active .tp-slider-title-box,
.tp-slider-active .swiper-slide-active .tp-slider-btn {
    opacity: 1;
    transform: translatey(0px);
    transition: all 2500ms ease;
}

.tp-slider-dot-wrap {
    position: absolute;
    bottom: 80px;
    left: 80px;
    z-index: 55;
}

@media (max-width: 767px) {
    .tp-slider-dot-wrap {
        left: 30px;
    }
}

.tp-slider-dot .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    opacity: 1;
    transition: 0.3s;
    margin: 0px 5px;
    border-radius: 50%;
    display: inline-block;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.4);
}

.tp-slider-dot .swiper-pagination-bullet.swiper-pagination-bullet-active {
    color: var(--tp-common-white);
    background-color: var(--tp-common-white);
}

.tp-slider-scroll-down {
    position: absolute;
    bottom: 80px;
    right: 80px;
    z-index: 55;
}

@media (max-width: 767px) {
    .tp-slider-scroll-down {
        right: 30px;
    }
}

.tp-slider-scroll-down a {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-slider-scroll-down a span {
    margin-left: 10px;
    display: inline-block;
}

/*----------------------------------------*/
/*  7.2 brand css
/*----------------------------------------*/
.tp-brand-title {
    font-weight: 600;
    font-size: 20px;
    line-height: 1;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: var(--tp-common-white);
}

.tp-brand-title::after {
    content: "";
    height: 6px;
    width: 6px;
    margin-left: 30px;
    border-radius: 50%;
    display: inline-block;
    transform: translateY(-4px);
    background-color: var(--tp-common-white);
}

.tp-brand-wrapper {
    padding: 27px 0 23px 0;
}

.tp-brand-wrapper .slide-transtion {
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear;
}

.tp-brand-active .swiper-slide {
    width: auto;
}

.tp-brand-style-2 .tp-brand-wrapper {
    background-color: var(--tp-theme-1);
}

.tp-brand-style-2 .tp-brand-title {
    color: var(--tp-common-black);
}

.tp-brand-style-2 .tp-brand-title::after {
    background-color: var(--tp-common-black);
}

.tp-brand-style-3 .tp-brand-wrapper {
    background-color: var(--tp-common-yellow);
}

.tp-brand-style-3 .tp-brand-title {
    color: var(--tp-common-black);
}

.tp-brand-style-3 .tp-brand-title::after {
    background-color: var(--tp-common-black);
}

.tp-brand-2-title {
    font-weight: 600;
    font-size: 16px;
    letter-spacing: -0.04em;
    color: var(--tp-common-black-3);
}

@media (max-width: 767px) {
    .tp-brand-2-title {
        margin-bottom: 30px;
        display: inline-block;
    }
}





/*首页渠道图标控件*/
.tp-brand-2-box a {
    color: #8a969a;
    transition: 0.3s;
}

.tp-brand-2-box a:not(:last-child) {
    margin-right: 38px; /* 调整右侧间距 */
}









@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-brand-2-box a:not(:last-child) {
        margin-right: 35px;
    }
}

@media (max-width: 767px) {
    .tp-brand-2-box a:not(:last-child) {
        margin-right: 25px;
    }
}

.tp-brand-2-box a:hover {
    color: var(--tp-common-black-3);
}

.tp-brand-2-wave-border {
    position: absolute;
    bottom: 0;
    left: 0;
}

@media (max-width: 767px) {
    .tp-brand-4-area {
        padding-bottom: 70px;
    }
}

.tp-brand-4-ratting-box {
    border-radius: 20px;
    padding: 4px 12px;
    padding-left: 6px;
    margin-right: 12px;
    border: 1px solid rgba(20, 24, 32, 0.12);
}

.tp-brand-4-ratting-box img {
    margin-right: 5px;
}

.tp-brand-4-ratting-box em {
    font-weight: 700;
    font-size: 14px;
    font-style: normal;
    margin-left: 5px;
    color: var(--tp-common-black);
}

.tp-brand-4-ratting-box span {
    color: #ffbc11;
    border-radius: 1px;
    margin-top: -2px;
    margin-right: 4px;
}

.tp-brand-4-title {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 0;
    letter-spacing: -0.04em;
    margin-right: 20px;
    color: var(--tp-common-black);
}

@media (max-width: 767px) {
    .tp-brand-4-title {
        margin-bottom: 20px;
    }
}

.tp-brand-4-top-content>span {
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.tp-brand-4-item {
    cursor: pointer;
    text-align: center;
}

.tp-brand-4-item img {
    transition: 0.3s;
}

.tp-brand-4-active .swiper-slide {
    width: auto;
}

.tp-brand-4-active .swiper-wrapper {
    display: flex;
    align-items: center;
}

.tp-brand-5-active .swiper-slide {
    width: auto;
}

.tp-brand-5-active .swiper-wrapper {
    display: flex;
    align-items: center;
}

.tp-brand-5-active .tp-brand-4-item img {
    opacity: 0.5;
    transition: 0.3s;
}

.tp-brand-5-active .tp-brand-4-item img:hover {
    opacity: 1;
}

.pr-brand-item {
    padding: 15px;
    text-align: center;
    margin: -1px -1px 0 0;
    border: 1px solid #E8E8E9;
}

.pr-brand-item:hover .pr-brand-inner {
    box-shadow: 0 20px 30px 0 rgba(20, 24, 32, 0.1), 0 1px 4px 0 rgba(20, 24, 32, 0.06);
}

.pr-brand-item:hover .pr-brand-inner img {
    opacity: 1;
}

.pr-brand-inner {
    min-height: 192px;
    line-height: 192px;
    transition: all 0.4s;
    background: var(--tp-common-white);
}

.pr-brand-inner img {
    opacity: 0.5;
    transition: all 0.4s;
}

/*----------------------------------------*/
/*  7.1 about css  
/*----------------------------------------*/
/* 默认样式：为 .tp-about-4-title-box 设置右侧内边距为 120px */
.tp-about-4-title-box {
    padding-right: 110px;
}

/* 响应式设计：当屏幕宽度在 992px 到 1199px 之间时，调整 .tp-about-4-title-box 的右侧内边距为 60px */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-about-4-title-box {
        padding-right: 50px;
    }
}

/* 响应式设计：当屏幕宽度小于 767px 时，取消 .tp-about-4-title-box 的右侧内边距 */
@media (max-width: 767px) {
    .tp-about-4-title-box {
        padding-right: 0px;
    }
}

/* 为 .tp-about-4-title-box 内的 p 元素设置样式：加粗字体、字号为 14px、行高为 1.57，文字颜色为 #cacbce */
.tp-about-4-title-box p {
    font-weight: 500;
    font-size: 20px;
    line-height: 2;
    color: #cacbce;
}

/* 为 .tp-about-4-list 中的 ul > li 元素设置样式：加粗字体、字号为 14px、行高为 1、左边距为 45px，颜色使用 --tp-common-white 变量 */
.tp-about-4-list ul li {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    padding-left: 45px;
    position: relative;
    list-style-type: none;
    color: var(--tp-common-white);
}

.tp-about-4-list ul li:not(:last-child) {
    margin-bottom: 20px;
}

.tp-about-4-list ul li span {
    position: absolute;
    top: -4px;
    left: 0;
    height: 24px;
    width: 24px;
    line-height: 21px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.1);
}

.tp-about-4-thumb img {
    border-radius: 14px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-about-4-thumb img {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .tp-about-4-thumb img {
        width: 100%;
        margin-bottom: 30px;
    }
}

.tp-about-4-funfact {
    padding: 30px 40px;
    border-radius: 10px 0 0 0;
    background-color: var(--tp-common-white);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-about-4-funfact {
        padding: 20px 30px;
    }
}

/* 设置背景颜色为淡黄色 */
.tp-about-4-funfact.yellow-box {
    background-color: #ffef5b;

    /* 设置边框圆角，仅右下角有10px的圆角 */
    border-radius: 0 0 10px 0;
}

.tp-about-4-funfact h4 {
    font-weight: 800;
    font-size: 46px;
    margin-bottom: 15px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.tp-about-4-funfact>span {
    font-weight: 500;
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-about-4-funfact>span {
        font-size: 18px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-about-4-funfact>span {
        font-size: 15px;
    }
}

.tp-about-4-funfact-wrap {
    margin-right: 100px;
    margin-top: -205px;
}

@media (max-width: 767px) {
    .tp-about-4-funfact-wrap {
        margin-right: 0;
        margin-top: 0;
    }
}




/* 丰富的行业经验 & 专业分析能力*/

.tp-about-4-area {
    padding-top: 38px;
    padding-bottom: 38px;
}

.tp-about-4-tab-wrap {
    margin-bottom: 60px;
    border-bottom: 2px solid rgba(255, 255, 255, 0.08);

}

.tp-about-4-tab-wrap ul li {
    padding-right: 160px;
    padding-bottom: 10px;
}

.tp-about-4-tab-wrap {
    margin-bottom: 10px;
    /* 减少底部的外边距 */
}

.tp-project-4-area {
    padding-top: 10px;
    /* 减少顶部的内边距 */

}

.tp-project-4-item {
    margin-top: 0;
    /* 如果存在上边距，设置为0 */
}




@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-about-4-tab-wrap ul li {
        padding-right: 120px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-about-4-tab-wrap ul li {
        padding-right: 60px;
    }
}

@media (max-width: 767px) {
    .tp-about-4-tab-wrap ul li {
        padding-right: 50px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .tp-about-4-tab-wrap ul li {
        padding-right: 20px;
    }
}




/* 丰富的行业经验按钮的字体颜色更改为橙色 */
.tp-about-4-tab-wrap .nav-links {
    font-weight: 600;
    font-size: 25px;
    min-width: 100px;
    color: #FF7F24 !important;
    /* !important  */
    text-align: left;
    transition: 0.3s;
}




.tp-about-4-tab-wrap ul li button.active {
    color: var(--tp-common-white);
}

.tp-about-4-tab-wrap ul li button:hover {
    color: var(--tp-common-white);
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-about-4-btn {
        margin-bottom: 50px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-about-4-area {
        padding-top: 60px;
    }
}

@media (max-width: 767px) {
    .tp-about-4-area {
        padding-top: 70px;
    }
}

#lineMarker-2 {
    position: absolute;
    bottom: -1px;
    height: 2px;
    min-width: 160px;
    z-index: 1;
    transition: 0.4s;
    border-radius: 6px;
    display: inline-block;
    background: var(--tp-common-white);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    #lineMarker-2 {
        min-width: 0;
        width: 100%;
    }
}

@media (max-width: 767px) {
    .tp-about-5-area {
        padding-top: 70px;
        padding-bottom: 0;
    }
}

.tp-about-5-list ul li {
    list-style-type: none;
}

.tp-about-5-list ul li:not(:last-child) {
    margin-bottom: 15px;
}

.tp-about-5-list ul li a {
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    color: #8e8f92;
    transition: 0.3s;
    display: inline-block;
}

.tp-about-5-list ul li a span {
    opacity: 0;
    transition: 0.3s;
    visibility: hidden;
    padding-right: 13px;
}

.tp-about-5-list ul li a span svg {
    transform: translateY(-1px);
}

.tp-about-5-list ul li a.active {
    color: var(--tp-common-black);
}

.tp-about-5-list ul li a.active span {
    opacity: 1;
    visibility: visible;
    color: var(--tp-common-blue);
}

.tp-about-5-shape-1 {
    position: absolute;
    top: 35%;
    left: 0;
    animation: anim-top-bottom 1s linear infinite alternate;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-about-5-shape-1 {
        left: 80px;
    }
}

.tp-about-5-thumb {
    padding-left: 15px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-about-5-thumb {
        padding-left: 0;
        margin-bottom: 50px;
    }
}

@media (max-width: 767px) {
    .tp-about-5-thumb {
        padding-left: 0;
        margin-bottom: 30px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-about-5-title-box .tp-section-title.fs-44 {
        font-size: 34px;
    }
}

.tp-about-5-big-text {
    position: absolute;
    top: -30%;
    left: -4px;
    z-index: -1;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-about-5-big-text {
        top: -25%;
    }
}

.tp-about-5-big-text h1 {
    font-weight: 800;
    font-size: 400px;
    line-height: 0.8;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background: linear-gradient(180deg, rgba(24, 43, 82, 0.1) 0%, rgba(24, 43, 82, 0) 100%);
    background-clip: border-box;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-about-5-big-text h1 {
        font-size: 335px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-about-5-big-text h1 {
        font-size: 290px;
    }
}

@media (max-width: 767px) {
    .tp-about-5-left {
        margin-left: 0;
    }
}

.tp-about-inner-style .tp-about-4-tab-wrap ul li button {
    color: #8e8f92;
}

.tp-about-inner-style .tp-about-4-tab-wrap ul li button:hover {
    color: var(--tp-common-black);
}




/*关于我们中灰长线的css*/
.tp-about-inner-style .tp-about-4-tab-wrap {
    border-bottom: 2px solid rgba(20, 24, 32, 0.1);
}




.tp-about-inner-style #lineMarker-2 {
    background: var(--tp-common-black);
}

.tp-about-inner-style .tp-about-4-tab-wrap ul li button.active {
    color: var(--tp-common-black);
}

.tp-about-inner-style .tp-about-4-title-box p {
    color: #525356;
}

.tp-about-inner-style .tp-about-4-list ul li {
    color: var(--tp-common-black);
}

.tp-about-inner-style .tp-about-4-list ul li span {
    color: var(--tp-common-black);
    background-color: rgba(20, 24, 32, 0.1);
}

.tp-about-inner-style .tp-about-4-funfact {
    background-color: var(--tp-common-black);
}

.tp-about-inner-style .tp-about-4-funfact.yellow-box {
    background-color: #ffef5b;
}

.tp-about-inner-style .tp-about-4-funfact h4 {
    color: var(--tp-common-white);
}

.tp-about-inner-style .tp-about-4-funfact>span {
    color: var(--tp-common-white);
}

.tp-about-inner-style .tp-about-4-funfact.yellow-box h4 {
    color: var(--tp-common-black);
}

.tp-about-inner-style .tp-about-4-funfact.yellow-box>span {
    color: var(--tp-common-black);
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-about-6-area {
        padding-top: 50px;
        padding-bottom: 70px;
    }
}

/*----------------------------------------*/
/*  7.12 service css
/*----------------------------------------*/
.tp-service-icon {
    display: inline-block;
    margin-bottom: 23px;
    color: var(--tp-common-sky);
}

.tp-service-title {
    font-weight: 500;
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-service-left {
    padding-right: 150px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-service-left {
        margin-bottom: 40px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-service-left {
        padding-right: 0;
        margin-bottom: 40px;
    }
}

.tp-service-shape {
    position: absolute;
    top: -50px;
    left: 70px;
    z-index: -1;
    animation: rotate 15s linear infinite;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-service-title-box .tp-section-title br {
        display: none;
    }
}

.tp-service-style-2 .tp-service-icon {
    color: var(--tp-common-pink);
}

.tp-service-3-btn-box {
    margin-top: -33px;
}

@media (max-width: 767px) {
    .tp-service-3-btn-box {
        margin-top: 0;
    }
}

.tp-service-3-title {
    font-weight: 700;
    font-size: 20px;
    margin-bottom: 14px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
}

@media (max-width: 767px) {
    .tp-service-3-title-box {
        margin-bottom: 40px;
    }
}

.tp-service-3-title.sm {
    font-weight: 600;
    font-size: 16px;
    line-height: 1.25;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.tp-service-3-title.sm a {
    display: inline;
    transition: all 0.4s linear;
    background-repeat: no-repeat;
    background-size: 0% 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-image: linear-gradient(var(--tp-common-black), var(--tp-common-black)), linear-gradient(var(--tp-common-black), var(--tp-common-black));
}

.tp-service-3-title.sm a:hover {
    background-size: 0% 1px, 100% 1px;
}

.tp-service-3-item:hover .tp-service-3-icon span {
    animation: icon-bounce 0.8s 1;
}

.tp-service-3-icon {
    margin-bottom: 25px;
}

.tp-service-3-icon span {
    height: 50px;
    width: 50px;
    line-height: 47px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    background-color: #fbcea0;
    color: var(--tp-common-black-3);
}

.tp-service-3-content p {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.57;
    color: #4d5051;
    margin-bottom: 0;
    padding-right: 30px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-service-3-content p {
        font-size: 13px;
        padding-right: 0;
    }
}

@media (max-width: 767px) {
    .tp-service-4-area {
        padding-bottom: 70px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-service-4-tab-wrap {
        margin-bottom: 10px;
    }
}

@media (max-width: 767px) {
    .tp-service-4-title-box {
        margin-bottom: 30px;
    }
}

.tp-service-4-subtitle {
    font-weight: 500;
    font-size: 16px;
    color: #8e8f92;
    display: inline-block;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.tp-service-4-title {
    font-weight: 600;
    font-size: 26px;
    line-height: 138%;
    text-align: center;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-service-4-title {
        font-size: 23px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-service-4-title {
        font-size: 21px;
    }
}

@media (max-width: 767px) {
    .tp-service-4-title {
        font-size: 23px;
    }
}

.tp-service-4-title a:hover {
    color: var(--tp-common-purple-3);
}

.tp-service-4-item {
    padding: 60px 55px;
    position: relative;
    border-radius: 14px;
    background-color: var(--tp-common-white);
}

.tp-service-4-item::after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    z-index: -1;
    margin: -2px;
    height: 100%;
    opacity: 0.3;
    border-radius: 14px;
    width: calc(100% + 4px);
    opacity: 0.3;
    transition: all 0.3s ease-out 0s;
    background: -moz-linear-gradient(90deg, rgb(255, 255, 255) 0%, #3771FE 100%, rgb(255, 255, 255) 100%);
    background: -webkit-linear-gradient(90deg, rgb(255, 255, 255) 0%, #3771FE 100%, rgb(255, 255, 255) 100%);
    background: -ms-linear-gradient(90deg, rgb(255, 255, 255) 0%, #3771FE 100%, rgb(255, 255, 255) 100%);
}

.tp-service-4-item::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    z-index: -1;
    margin: -2px;
    height: 101%;
    opacity: 1;
    opacity: 0;
    visibility: hidden;
    border-radius: 14px;
    width: calc(100% + 4px);
    transition: all 0.3s ease-out 0s;
    background-color: var(--tp-common-purple-3);
}

.tp-service-4-item:hover::after {
    opacity: 0;
    visibility: hidden;
}

.tp-service-4-item:hover::before {
    opacity: 1;
    visibility: visible;
}

.tp-service-4-icon {
    margin-bottom: 50px;
}

.tp-service-4-content {
    margin-bottom: 40px;
}

.tp-service-4-link a {
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--tp-common-black);
}

.tp-service-4-link a span {
    height: 34px;
    width: 34px;
    margin-left: 2px;
    line-height: 32px;
    border-radius: 50%;
    display: inline-block;
    border: 1px solid rgba(20, 24, 32, 0.14);
    transition: all 0.3s;
}

.tp-service-4-link a:hover {
    color: var(--tp-common-purple-3);
}

.tp-service-4-link a:hover span {
    background-color: var(--tp-common-purple-3);
    color: var(--tp-common-white);
}

.tp-service-4-tab ul {
    padding: 4px;
    border-radius: 8px;
    background-color: #eaecf1;
}

.tp-service-4-tab ul li button {
    font-weight: 600;
    font-size: 14px;
    border-radius: 6px;
    letter-spacing: -0.02em;
    padding: 6px 20px;
    color: var(--tp-common-black);
    position: relative;
    z-index: 2;
}

#lineMarker {
    position: absolute;
    top: 5px;
    height: 36px;
    z-index: 1;
    transition: 0.4s;
    border-radius: 6px;
    display: inline-block;
    background: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-feature-area {
        padding-top: 70px;
        padding-bottom: 40px;
    }
}

.tp-feature-wrap .tp-service-3-icon {
    margin-bottom: 20px;
}

.tp-feature-wrap .tp-service-3-icon span {
    height: 60px;
    width: 60px;
    line-height: 57px;
}

.tp-feature-shape {
    position: absolute;
    bottom: -35%;
    right: 25%;
    animation: anim-top-bottom 1s linear infinite alternate;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-feature-title-wrap {
        margin-bottom: 50px;
    }
}

.tp-feature-5-style-2 .tp-testimonial-4-fea-star span {
    color: var(--tp-common-black);
}

.tp-feature-5-style-2 .tp-testimonial-4-fea-text span {
    color: var(--tp-common-black);
}

.tp-feature-style-5 .tp-service-3-icon {
    margin-bottom: 0px;
    margin-right: 14px;
}

.tp-feature-style-5 .tp-service-3-title.sm {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .tp-service-5-area {
        padding-bottom: 50px;
    }
}

.tp-service-5-title-box {
    padding-right: 50px;
}

@media (max-width: 767px) {
    .tp-service-5-title-box {
        padding-right: 0;
    }
}

.tp-service-5-title {
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #8e8f92;
    padding-top: 25px;
    display: inline-block;
    padding-bottom: 25px;
    padding-left: 25px;
}

.tp-service-5-right {
    margin-top: 40px;
    margin-left: 50px;
    border-top: 1px solid var(--tp-common-black);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-service-5-right {
        margin-left: 0;
    }
}

.tp-service-5-list ul li {
    line-height: 1;
    font-size: 20px;
    font-weight: 500;
    padding-left: 25px;
    position: relative;
    list-style-type: none;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-service-5-list ul li {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .tp-service-5-list ul li {
        font-size: 18px;
    }
}

.tp-service-5-list ul li:not(:last-child) {
    margin-bottom: 16px;
}

.tp-service-5-list ul li::after {
    position: absolute;
    top: 10px;
    left: 0;
    width: 4px;
    height: 4px;
    content: "";
    border-radius: 50%;
    background-color: var(--tp-common-black);
}

.tp-client-left-wrap {
    margin-right: 50px;
}

.tp-client-wave span {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.tp-service-inner-style .tp-service-left {
    padding-right: 0px;
}

.tp-service-inner-style .tp-service-title {
    font-size: 20px;
}

.sv-inner-video {
    padding: 100px 40px;
    border-radius: 14px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
}

.sv-inner-video::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 14px;
    z-index: -1;
    background: linear-gradient(180deg, rgba(12, 14, 19, 0) 0%, rgba(12, 14, 19, 0.8) 100%);
}

.sv-inner-video-title {
    font-weight: 800;
    font-size: 44px;
    line-height: 1.14;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .sv-inner-video-title {
        font-size: 42px;
    }
}

.sv-inner-video-playbtn {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    text-align: center;
    transform: translateY(-50%);
}

.sv-inner-video-playbtn span {
    color: var(--tp-common-white);
}

.sv-inner-video-playbtn-box img {
    animation: rotate 15s linear infinite;
}

.sv-details-style-2 .tp-service-5-right {
    border-top: 0;
}

.sv-details-style-2 .tp-service-5-right p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    padding-right: 20px;
    padding-bottom: 35px;
    margin-bottom: 35px;
    color: #525356;
    border-bottom: 1px solid var(--tp-common-black);
}

.sv-details-category-list {
    padding: 30px 0px;
    border-radius: 14px;
    border: 1px solid rgba(20, 24, 32, 0.14);
    box-shadow: 0 1px 3px 0 rgba(20, 24, 32, 0.1);
}

.sv-details-category-list ul li {
    list-style-type: none;
    position: relative;
    padding: 0px 30px;
}

.sv-details-category-list ul li.active::after {
    height: 36px;
}

.sv-details-category-list ul li.active a {
    color: var(--tp-common-black);
}

.sv-details-category-list ul li::after {
    position: absolute;
    top: -6px;
    left: -1px;
    width: 2px;
    height: 0;
    content: "";
    transition: all 0.4s;
    background-color: var(--tp-common-black);
}

.sv-details-category-list ul li:not(:last-child) {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px dashed rgba(20, 24, 32, 0.2);
}

.sv-details-category-list ul li a {
    font-weight: 500;
    font-size: 18px;
    color: #525356;
}

.sv-details-category-list ul li a span {
    margin-right: 18px;
    display: inline-block;
}

.sv-details-category-list ul li a span svg {
    transform: translateY(-2px);
}

.sv-details-category-list ul li a:hover {
    color: var(--tp-common-black);
}

.sv-details-category-list ul li:hover::after {
    height: 36px;
}

.sv-details-sidebar-wrap {
    padding-right: 40px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sv-details-sidebar-wrap {
        padding-right: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .sv-details-sidebar-wrap {
        padding-right: 0;
        margin-bottom: 40px;
    }
}

.sv-details-sidebar-contact {
    padding: 50px;
    border-radius: 14px;
    background-color: #eff0f2;
}

.sv-details-sidebar-contact>span {
    display: block;
    font-weight: 600;
    font-size: 26px;
    line-height: 1.38;
    margin-bottom: 20px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.sv-details-thumb img {
    border-radius: 14px;
}

.sv-details-content.border-bottom-2 {
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px dashed rgba(20, 24, 32, 0.24);
}

.sv-details-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 1.67;
    color: #525356;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sv-details-content p {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .sv-details-content p {
        font-size: 15px;
    }
}

.sv-details-right-wrap .tp-client-left-wrap {
    margin-right: 0;
}

.sv-details-testi {
    border-radius: 14px;
    background-color: #eceff5;
    padding: 40px 100px 40px 125px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sv-details-testi {
        padding: 40px 40px 40px 100px;
    }
}

@media (max-width: 767px) {
    .sv-details-testi {
        padding: 30px;
    }
}

.sv-details-testi-text p {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.47;
    margin-bottom: 25px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .sv-details-testi-text p {
        font-size: 27px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sv-details-testi-text p {
        font-size: 20px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .sv-details-testi-text p {
        font-size: 25px;
    }
}

@media (max-width: 767px) {
    .sv-details-testi-text p {
        font-size: 22px;
    }
}

.sv-details-testi-info h4 {
    font-weight: 600;
    font-size: 18px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.sv-details-testi-info h4 span {
    font-weight: 400;
    font-size: 14px;
    color: #525356;
    padding-left: 10px;
    margin-left: 10px;
    position: relative;
}

.sv-details-testi-info h4 span::before {
    position: absolute;
    top: 8px;
    left: 0;
    height: 4px;
    width: 4px;
    content: "";
    border-radius: 50%;
    display: inline-block;
    background-color: #525356;
}

.sv-details-testi-shape-1 {
    position: absolute;
    bottom: 0;
    right: 70px;
}

.sv-details-testi-quote span {
    position: absolute;
    top: 5px;
    left: -75px;
    color: var(--tp-common-black);
}

/*----------------------------------------*/
/*  7.8 goal css
/*----------------------------------------*/
.tp-goal-shape {
    position: absolute;
    top: 200px;
    right: -59px;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-goal-shape {
        right: 30px;
    }
}

.tp-goal-shape img {
    animation: rotate 15s linear infinite;
}

.tp-goal-left {
    margin-right: 45px;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-goal-left {
        margin-right: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-goal-thumb {
        margin-bottom: 40px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-goal-right-thumb img {
        width: 100%;
    }
}

.tp-goal-text p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    padding-right: 60px;
    color: rgba(255, 255, 255, 0.8);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
(max-width: 767px) {
    .tp-goal-text p {
        padding-right: 0;
    }
}

.tp-goal-content {
    padding-left: 100px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-goal-content {
        padding-left: 65px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-goal-content {
        padding-left: 20px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-goal-content {
        padding-left: 20px;
    }
}

@media (max-width: 767px) {
    .tp-goal-content {
        padding-left: 0px;
    }
}

.tp-goal-list ul li {
    position: relative;
    padding-left: 90px;
    list-style-type: none;
    margin-bottom: 50px;
}

.tp-goal-list ul li>span {
    position: absolute;
    top: -16px;
    left: 0;
    line-height: 1;
}

.tp-goal-list ul li>span>span {
    position: relative;
    display: inline-block;
    line-height: 1;
}

.tp-goal-list ul li>span>span i {
    height: 60px;
    width: 60px;
    transition: 0.3s;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.06);
}

.tp-goal-list ul li>span>span svg {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translateY(-50%);
    color: var(--tp-theme-1);
    transition: 0.3s;
}

.tp-goal-list ul li p {
    font-weight: 600;
    font-size: 20px;
    line-height: 1.2;
    color: var(--tp-common-white);
}

.tp-goal-list ul li:hover span span i {
    transform: scale(1.1);
    background-color: var(--tp-theme-1);
}

.tp-goal-list ul li:hover span span svg {
    color: var(--tp-common-black);
}

.tp-goal-style-2 .tp-goal-text p {
    color: #525356;
}

.tp-goal-style-2 .tp-goal-list ul li p {
    color: var(--tp-common-black);
}

.tp-goal-style-2 .tp-goal-list ul li>span>span i.tp-goal-color-1 {
    background-color: #a5d3fa;
}

.tp-goal-style-2 .tp-goal-list ul li>span>span i.tp-goal-color-2 {
    background-color: #fbcea0;
}

.tp-goal-style-2 .tp-goal-list ul li>span>span i.tp-goal-color-3 {
    background-color: #ccdcb3;
}

.tp-goal-style-2 .tp-goal-list ul li>span>span svg {
    color: var(--tp-common-black);
}

/*----------------------------------------*/
/*  7.11 project css
/*--------------------------------*/
.tp-project-content {
    bottom: 30px;
    left: 30px;
    position: absolute;
    display: inline-block;
    padding: 25px 30px;
    padding-right: 60px;
    transform-origin: center;
    transition: all 0.5s ease-in-out;
    background-color: var(--tp-common-white);
    transform: perspective(400px) rotateX(-90deg);
}


.project-description {
    font-size: 18px;
    /* 字体大小 */
    line-height: 2;
    /* 行间距 */
    margin-left: 15px;
    /* 左边距 */
    margin-right: 15px;
    /* 右边距 */
}

.project-description h5 {
    font-size: 20px;
    /* 标题大小 */
    margin-bottom: 20px;
    /* 标题下边距 */
}

.project-description li {
    margin-bottom: 18px;
    /* 列表项间距 */
}

/* 如果你需要为段落之间添加额外的间距，可以修改 p 元素 */
.project-description p {
    margin-bottom: 20px;
    /* 段落之间的间距 */
}




@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-project-content {
        padding-right: 40px;
    }
}

@media (max-width: 767px) {
    .tp-project-content {
        padding-right: 30px;
    }
}

.tp-project-content p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.25;
    margin-bottom: 0;
    color: var(--tp-common-black);
}

.tp-project-title {
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 7px;
    position: relative;
    display: inline-block;
    letter-spacing: -0.02em;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-project-title {
        font-size: 25px;
    }
}

.tp-project-title::after {
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    content: "";
    position: absolute;
    background-color: var(--tp-common-black);
    transition: 0.4s;
}

.tp-project-title:hover::after {
    width: 100%;
}

.tp-project-thumb img {
    transition: 0.9s;
    width: 100%;
}

.tp-project-item:hover .tp-project-thumb img {
    transform: scale(1.1) rotate(-2deg);
}

.tp-project-item:hover .tp-project-content {
    transform: perspective(400px) rotateX(0deg);
}

.tp-project-3-title-box .tp-section-subtitle.fs-12 {
    background-color: #0d3f52;
    color: var(--tp-common-white);
}

.tp-project-3-item {
    background: #0e3948;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.04);
    box-shadow: 0 20px 30px 0 rgba(3, 14, 18, 0.1);
    padding: 38px 50px;
}

@media (max-width: 767px) {
    .tp-project-3-item {
        padding: 38px 35px;
    }
}

.tp-project-3-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.33;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-project-3-title {
        margin-bottom: 35px;
    }
}

@media (max-width: 767px) {
    .tp-project-3-title {
        font-size: 20px;
        margin-bottom: 35px;
    }

    .tp-project-3-title br {
        display: none;
    }
}

.tp-project-3-title a {
    display: inline;
    transition: all 0.3s linear;
    background-repeat: no-repeat;
    background-size: 0% 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-image: linear-gradient(#ffef5b, #ffef5b), linear-gradient(#ffef5b, #ffef5b);
}

.tp-project-3-title a:hover {
    color: var(--tp-common-yellow);
    background-size: 0% 1px, 100% 1px;
}

.tp-project-3-info h5 {
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 10px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-project-3-info span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: rgba(255, 255, 255, 0.8);
}

.tp-project-3-content {
    padding-left: 50px;
    margin-left: 50px;
    position: relative;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-project-3-content {
        margin-left: 0;
    }
}

.tp-project-3-content::after {
    top: 0;
    left: 0;
    width: 1px;
    height: 80px;
    content: "";
    position: absolute;
    background: rgba(255, 255, 255, 0.14);
}

.tp-project-3-btn a {
    height: 60px;
    width: 60px;
    line-height: 55px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    color: var(--tp-common-white);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-project-3-btn a:hover {
    color: var(--tp-common-black);
    border-color: var(--tp-common-yellow);
    background-color: var(--tp-common-yellow);
}

.tp-project-4-item {
    height: 100%;
    border-radius: 14px;
}

.tp-project-4-thumb {
    position: relative;
}

.tp-project-4-thumb img {
    border-radius: 14px;
}

.tp-project-4-thumb::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(12, 14, 19, 0) 0%, rgba(12, 14, 19, 0.8) 100%);
}

.tp-project-4-category a {
    font-weight: 500;
    font-size: 14px;
    padding: 1px 14px;
    border-radius: 20px;
    display: inline-block;
    transition: all 0.3s;
    text-transform: uppercase;
    background-color: #ffef5b;
    color: var(--tp-common-black);
}

.tp-project-4-category a:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-purple);
}

.tp-project-4-content-wrap {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    padding: 40px 40px 40px 50px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-project-4-content-wrap {
        padding: 30px 30px 30px 40px;
    }
}

@media (max-width: 767px) {
    .tp-project-4-content-wrap {
        padding: 20px;
    }
}

.tp-project-4-meta {
    font-weight: 500;
    font-size: 16px;
    margin-bottom: 15px;
    display: inline-block;
    color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-project-4-meta {
        font-size: 14px;
    }
}

.tp-project-4-title {
    font-weight: 7;
    font-size: 26px;
    line-height: 1.31;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-project-4-title {
        font-size: 24px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-project-4-title {
        font-size: 20px;
    }
}

@media (max-width: 767px) {
    .tp-project-4-title {
        font-size: 16px;
    }

    .tp-project-4-title br {
        display: none;
    }
}

.tp-project-4-title a {
    display: inline;
    transition: all 0.4s linear;
    background-repeat: no-repeat;
    background-size: 0% 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-image: linear-gradient(#fff, #fff), linear-gradient(#fff, #fff);
}

.tp-project-4-title a:hover {
    background-size: 0% 1px, 100% 1px;
}

.tp-project-4-link-btn a {
    height: 40px;
    width: 40px;
    transition: 0.3s;
    line-height: 37px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
}

.tp-project-4-link-btn a:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-purple);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-project-4-gradient-bg {
        min-height: 300px;
        width: 100%;
    }
}

@media (max-width: 767px) {
    .tp-project-4-gradient-bg {
        min-height: 200px;
        width: 100%;
    }
}

.tp-project-4-gradient-bg::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-radius: 14px;
    background: linear-gradient(180deg, #9054cc 0%, #444899 100%);
}

.tp-project-4-gradient-bg .tp-project-4-content-wrap {
    padding: 40px 40px 40px 40px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-project-4-gradient-bg .tp-project-4-content-wrap {
        padding: 30px 30px 30px 40px;
    }
}

@media (max-width: 767px) {
    .tp-project-4-gradient-bg .tp-project-4-content-wrap {
        padding: 20px;
    }
}

.tp-project-4-gradient-bg .tp-project-4-link-btn a {
    color: var(--tp-common-white);
    line-height: 34px;
    background-color: transparent;
    border: 2px solid rgba(255, 255, 255, 0.1);
}

.tp-project-4-gradient-bg .tp-project-4-link-btn a:hover {
    color: var(--tp-common-black);
    border-color: var(--tp-common-white);
    background-color: var(--tp-common-white);
}

.tp-project-4-video a i {
    height: 70px;
    width: 70px;
    line-height: 65px;
    margin-right: 20px;
    text-align: center;
    border-radius: 100%;
    display: inline-block;
    animation: animate-pulse 3s linear infinite;
    border: 2px solid rgba(255, 255, 255, 0.2);
}

@media (max-width: 767px) {
    .tp-project-4-video a i {
        height: 40px;
        width: 40px;
        line-height: 34px;
    }
}

.tp-project-4-video a i svg {
    margin-left: 5px;
}

.tp-project-4-video a span {
    font-weight: 600;
    font-size: 20px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-project-4-video a span em {
    display: block;
    font-size: 14px;
    font-style: normal;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-project-inner-style {
        padding-top: 0;
    }
}

.tp-project-inner-style .tp-project-4-item {
    box-shadow: 0 30px 50px 0 rgba(11, 14, 18, 0.3);
}

.tp-project-inner-style .tp-project-4-content-wrap {
    padding: 40px 40px 55px 60px;
}

@media (max-width: 767px) {
    .tp-project-inner-style .tp-project-4-content-wrap {
        padding: 20px;
    }
}

.pr-portfolio-button>span {
    font-weight: 500;
    font-size: 16px;
    color: #8e8f92;
    margin-right: 20px;
    display: inline-block;
}

.pr-portfolio-button button {
    border-radius: 6px;
    padding: 1px 14px;
    font-weight: 500;
    font-size: 14px;
    margin-right: 6px;
    margin-bottom: 10px;
    letter-spacing: -0.02em;
    border: 1px solid #dbdcdd;
    color: var(--tp-common-black);
}

.pr-portfolio-button button:hover {
    border-color: #ffc864;
    background-color: #ffc864;
    color: var(--tp-common-black);
}

.pr-portfolio-button button.active {
    border-color: #ffc864;
    background-color: #ffc864;
    color: var(--tp-common-black);
}

.pr-portfolio-content {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 40px;
}

.pr-portfolio-content span {
    font-weight: 400;
    font-size: 16px;
    color: var(--tp-common-white);
}

.pr-portfolio-title {
    font-weight: 700;
    font-size: 26px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.pr-portfolio-title a {
    display: inline;
    transition: all 0.3s linear;
    background-repeat: no-repeat;
    background-size: 0% 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-image: linear-gradient(#fff, #fff), linear-gradient(#fff, #fff);
}

.pr-portfolio-title a:hover {
    background-size: 0% 1px, 100% 1px;
}

.pr-portfolio-img {
    position: relative;
}

.pr-portfolio-img::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: linear-gradient(180deg, rgba(20, 24, 32, 0) 0%, #141820 100%);
}

.pr-portfolio-img img {
    width: 100%;
    transition: 0.9s;
    border-radius: 14px;
}

.pr-portfolio-icon {
    position: absolute;
    top: 30px;
    right: 40px;
    z-index: 2;
}

.pr-portfolio-icon a {
    height: 40px;
    width: 40px;
    line-height: 35px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    color: var(--tp-common-white);
    border: 2px solid rgba(255, 255, 255, 0.1);
}

.pr-portfolio-item {
    border-radius: 14px;
    overflow: hidden;
}

.pr-portfolio-item:hover .pr-portfolio-img img {
    transform: scale(1.1) rotate(-2deg);
}

.pr-details-top-meta span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.43;
    color: #525356;
}

.pr-details-top-meta span:first-child {
    position: relative;
    margin-right: 7px;
    padding-right: 7px;
}

.pr-details-top-meta span:first-child::after {
    position: absolute;
    top: 8px;
    right: -4px;
    width: 4px;
    height: 4px;
    content: "";
    border-radius: 50%;
    background-color: var(--tp-common-black);
}

.pr-details-title-box p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.62;
    margin-bottom: 0;
    color: var(--tp-common-black);
}

.pr-details-meta-content h5 {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    margin-bottom: 0;
    margin-bottom: 5px;
    color: var(--tp-common-black);
}

.pr-details-meta-content span {
    font-weight: 400;
    font-size: 14px;
    color: #525356;
}

.pr-details-meta-item {
    margin-right: 85px;
    margin-bottom: 30px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .pr-details-meta-item {
        margin-right: 50px;
    }
}

.pr-details-social a {
    margin-right: 20px;
}

.pr-details-social a span {
    color: #8e8f92;
    transition: all 0.3s;
}

.pr-details-social a:hover span {
    color: var(--tp-common-black);
}

.pr-details-slider-active {
    margin: 0px -910px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .pr-details-slider-active {
        margin: 0px 30px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .pr-details-slider-active {
        margin: 0px 30px;
    }
}

@media (max-width: 767px) {
    .pr-details-slider-active {
        margin: 0px 15px;
    }
}

.pr-details-slider-active .pr-details-dot .swiper-pagination-bullet {
    width: 60px;
    height: 2px;
    opacity: 1;
    border-radius: 0;
    display: inline-block;
    background: #cbcccf;
    transition: 0.3s;
}

.pr-details-slider-active .pr-details-dot .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--tp-common-blue);
}

.pr-details-border {
    padding-bottom: 40px;
    border-bottom: 1px dashed rgba(20, 24, 32, 0.24);
}

.pr-details-border-2 {
    margin-bottom: 50px;
    padding-bottom: 50px;
    border-bottom: 1px dashed rgba(20, 24, 32, 0.24);
}

.pr-details-border-3 {
    border-bottom: 1px dashed rgba(20, 24, 32, 0.24);
}

.portfolio-more-menu a {
    color: var(--tp-common-black);
}

.portfolio-more-menu a:hover {
    color: var(--tp-common-blue);
}

.portfolio-more-navigation {
    margin-top: 50px;
    padding: 35px 30px;
}

.portfolio-more-icon a {
    height: 40px;
    width: 40px;
    font-size: 16px;
    line-height: 40px;
    text-align: center;
    margin-right: 15px;
    border-radius: 50%;
    display: inline-block;
    color: var(--tp-common-black);
    border: 1px solid var(--tp-common-black);
}

.portfolio-more-icon a svg {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
}

.portfolio-more-icon a:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.portfolio-more-content p {
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    text-transform: uppercase;
    color: #525356;
    margin-bottom: 5px;
}

.portfolio-more-content p a:hover {
    color: var(--tp-theme-1);
}

.portfolio-more-content h4 {
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    margin-bottom: 0;
    color: var(--tp-common-black);
}

.portfolio-more-content h4 a:hover {
    color: var(--tp-common-blue);
}

.portfolio-more-right {
    text-align: right;
}

.portfolio-more-right .portfolio-more-icon a {
    margin-right: 0;
    margin-left: 15px;
}

.tp-project-5-item {
    padding: 50px;
    padding-bottom: 30px;
    border-radius: 14px;
    background-color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-project-5-item {
        padding: 30px;
    }
}

.tp-project-5-thumb img {
    border-radius: 6px;
    margin-bottom: 25px;
}

.tp-project-5-title {
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 5px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media (max-width: 767px) {
    .tp-project-5-title {
        font-size: 22px;
    }
}

.tp-project-5-title a:hover {
    color: var(--tp-common-blue);
}

.tp-project-5-title-box span {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.25;
    color: rgba(20, 24, 32, 0.8);
}

.tp-project-5-icon a {
    height: 50px;
    width: 50px;
    line-height: 46px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    color: var(--tp-common-black);
    border: 1px solid rgba(20, 24, 32, 0.14);
}

.tp-project-5-icon a:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

/*----------------------------------------*/
/*  7.13 skill css
/*--------------------------------*/
.tp-skill-title-box p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    padding-right: 70px;
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.8);
}

.tp-skill-mail a {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    color: var(--tp-common-white);
}

.tp-skill-mail a>span {
    height: 50px;
    width: 50px;
    line-height: 47px;
    border-radius: 50%;
    margin-right: 15px;
    text-align: center;
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.06);
}

.tp-skill-mail a i {
    font-style: normal;
    position: relative;
}

.tp-skill-mail a i::after {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 1px;
    content: "";
    background-color: #fff;
    transition: 0.4s;
}

.tp-skill-mail a:hover i::after {
    right: auto;
    left: 0;
    width: 100%;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-skill-wrap {
        margin-bottom: 40px;
    }
}

.tp-progress-bar-wrap {
    padding-left: 100px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-progress-bar-wrap {
        padding-left: 0;
    }
}

.tp-progress-bar-item {
    padding: 25px 0px;
    overflow: hidden;
    padding-bottom: 10px;
}

.tp-progress-bar-title {
    margin-bottom: 20px;
}

.tp-progress-bar-title label,
.tp-progress-bar-title span {
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    display: inline-block;
    color: var(--tp-common-white);
}

.tp-progress-bar .progress {
    overflow: visible;
    height: 6px;
    border-radius: 0;
    background: rgba(255, 255, 255, 0.1);
}

.tp-progress-bar .progress-bar {
    position: relative;
    top: 0;
    height: 6px;
    overflow: visible;
    border-radius: 0;
    background-color: var(--tp-common-sky);
}

.tp-progress-bar .progress-bar::after {
    position: absolute;
    content: "";
    height: 20px;
    width: 1px;
    top: -7px;
    right: 0;
    background-color: var(--tp-common-sky);
}

.tp-skill-style-2 .tp-skill-title-box p {
    color: #525356;
}

.tp-skill-style-2 .tp-skill-mail a {
    color: var(--tp-common-black);
}

.tp-skill-style-2 .tp-skill-mail a>span {
    background-color: rgba(20, 24, 32, 0.06);
}

.tp-skill-style-2 .tp-skill-mail a i::after {
    background-color: var(--tp-common-black);
}

.tp-skill-style-2 .tp-progress-bar-title label,
.tp-skill-style-2 .tp-progress-bar-title span {
    color: var(--tp-common-black);
}

.tp-skill-style-2 .tp-progress-bar .progress {
    background: #f2eef0;
}

.tp-skill-style-2 .tp-progress-bar .progress-bar {
    background-color: var(--tp-common-pink-3);
}

.tp-skill-style-2 .tp-progress-bar .progress-bar::after {
    background-color: var(--tp-common-pink-3);
}

/*----------------------------------------*/
/*  7.7 funfact css
/*--------------------------------*/
.tp-funfact-number {
    font-weight: 400;
    font-size: 70px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-funfact-item {
    position: relative;
    padding-left: 40px;
}

.tp-funfact-item>span {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: #abaeb4;
}

.tp-funfact-item::after {
    position: absolute;
    content: "";
    left: 0;
    top: -19px;
    width: 1px;
    height: 144px;
    background-color: var(--tp-common-yellow-2);
}

.tp-funfact-style-2 .tp-funfact-number {
    color: var(--tp-common-black);
}

.tp-funfact-style-2 .tp-funfact-item::after {
    background-color: var(--tp-common-blue);
}

.tp-funfact-style-2 .tp-funfact-item>span {
    color: #525356;
}

/*----------------------------------------*/
/*  7.16 team css
/*--------------------------------*/
.tp-team-content-box {
    bottom: 0;
    left: 0;
    right: 0;
    margin: 20px;
    position: absolute;
    padding: 14px 20px;
    padding-right: 15px;
    padding-bottom: 20px;
    background: rgba(255, 255, 255, 0.96);
    transform-origin: center;
    transition: all 0.5s ease-in-out;
    transform: perspective(400px) rotateX(-90deg);
}

.tp-team-title {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 0;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-2);
}

.tp-team-content span {
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    color: #57595c;
    display: block;
}

.tp-team-social a {
    height: 40px;
    width: 40px;
    line-height: 33px;
    border-radius: 50%;
    display: inline-block;
    text-align: center;
    transition: 0.3s;
    color: var(--tp-common-black);
    border: 1px solid rgba(20, 24, 32, 0.2);
}

.tp-team-social a:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black);
    background-color: var(--tp-common-black);
}

.tp-team-thumb {
    overflow: hidden;
}

.tp-team-thumb img {
    width: 100%;
    transition: 0.4s;
}

.tp-team-item {
    height: 100%;
}

.tp-team-item:hover .tp-team-thumb img {
    filter: grayscale(100%);
    transform: scale(1.1);
}

.tp-team-item:hover .tp-team-content-box {
    transform: perspective(400px) rotateX(0deg);
}

.tp-team-link-box {
    height: 100%;
    background: #242934;
    padding: 80px 20px;
    border: 1px solid rgba(255, 255, 255, 0.02);
}

.tp-team-link-icon {
    height: 44px;
    width: 44px;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    line-height: 44px;
    margin-bottom: 15px;
    color: var(--tp-common-black);
    background-color: var(--tp-theme-1);
}

.tp-team-link-icon:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
}

.tp-team-link-text {
    font-weight: 400;
    font-size: 18px;
    display: block;
    text-align: center;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-team-link-text:hover {
    color: var(--tp-common-white);
}

.tp-team-style-2 .tp-team-link-box {
    background: #eef0f5;
}

.tp-team-style-2 .tp-team-link-icon {
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-team-style-2 .tp-team-link-icon:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black);
}

.tp-team-style-2 .tp-team-link-text {
    color: var(--tp-common-black);
}

@media (max-width: 767px) {
    .tp-team-4-area {
        padding-top: 70px;
        padding-bottom: 70px;
    }
}

.tp-team-4-item:hover .tp-team-4-thumb img {
    transform: scale(1.04);
}



.tp-team-4-item:hover .tp-team-4-hover-box {
    bottom: -5px;
    opacity: 1;
}









@media only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 767px) {
    .tp-team-4-thumb {
        display: flex; /* 父容器Flex 布局 */
        align-items: center; /* 垂直居中 */
        justify-content: center; /* 水平居中 */
    }
    .tp-team-4-thumb img {
        width: 50%; /* 设置图片宽度为 50% */
    }
}

/* 默认样式，适用于桌面端 */
.tp-team-4-thumb::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    height: 0;
    width: 51%;
    border-radius: 10px;
    transition: all 0.3s ease-out;
    background: linear-gradient(180deg, rgba(71, 67, 236, 0) 38.02%, #00BFFF 100%);
}

/* 针对屏幕宽度小于768px的样式，隐藏或禁用效果 */
@media (max-width: 768px) {
    .tp-team-4-thumb::after {
        display: none;  /* 移动端隐藏此元素 */
    }
}


.tp-team-4-hover-box {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 10px;
    opacity: 0;
    z-index: 1;
    transition: all 0.5s;
}

.tp-team-4-social>a {
    width: 40px;
    height: 40px;
    line-height: 42px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
}

.tp-team-4-social>a:not(:last-of-type) {
    margin-right: 5px;
}

.tp-team-4-social>a:hover {
    color: var(--tp-common-black);
    background-color: var(--tp-common-yellow);
}









.tp-team-4-thumb-dy img {
    width: 50%;
    transition: 0.5s;
    border-radius: 10px;
    margin-bottom: 0px;
}

.tp-team-4-thumb-xhs img {
    width: 50%;
    transition: 0.5s;
    border-radius: 10px;
    margin-bottom: 0px;
}

.tp-team-4-thumb-bz img {
    width: 50%;
    transition: 0.5s;
    border-radius: 10px;
    margin-bottom: 0px;
}

.tp-team-4-thumb-pyq img {
    width: 50%;
    transition: 0.5s;
    border-radius: 10px;
    margin-bottom: 0px;
}

.tp-team-4-thumb-sph img {
    width: 50%;
    transition: 0.5s;
    border-radius: 10px;
    margin-bottom: 0px;
}

.tp-team-4-title-dy {
    font-weight: 700; /* 设置字体粗细为粗体 */
    font-size: 24px; /* 设置字体大小为 24 像素 */
    letter-spacing: -0.02em; /* 设置字母间距为 -0.02em（稍微紧凑） */
    color: var(--tp-common-black); /* 设置字体颜色为变量 --tp-common-black 的值 */
    margin-right: 15px; /* 设置右边距为 15 像素 */
    margin-bottom: 20px; /* 设置下边距为 20 像素 */
    margin-left: 15px; /* 设置左边距为 15 像素 */
    transition: color 0.1s ease; /* 添加颜色变化的过渡效果 */
}

.tp-team-4-title-dy:hover {
    color: 	#838B8B; 
}


.tp-team-4-item {
    display: flex;
    flex-direction: column; /* 设置为列布局 */
    align-items: center; /* 水平居中 */
    justify-content: center; /* 垂直居中 */
}

.tp-team-4-thumb-dy,
.tp-team-4-content {
    width: 100%; /* 确保宽度一致 */
    text-align: center; /* 文本居中 */
}

.tp-team-4-title-xhs {
    font-weight: 700; /* 设置字体粗细为粗体 */
    font-size: 24px; /* 设置字体大小为 24 像素 */
    letter-spacing: -0.02em; /* 设置字母间距为 -0.02em（稍微紧凑） */
    color: var(--tp-common-black); /* 设置字体颜色为变量 --tp-common-black 的值 */
    margin-right: 15px; /* 设置右边距为 15 像素 */
    margin-bottom: 20px; /* 设置下边距为 20 像素 */
    margin-left: 15px; /* 设置左边距为 15 像素 */
    transition: color 0.1s ease; /* 添加颜色变化的过渡效果 */
}

.tp-team-4-title-xhs:hover {
    color: 	#838B8B; 
}



.tp-team-4-item {
    display: flex;
    flex-direction: column; /* 设置为列布局 */
    align-items: center; /* 水平居中 */
    justify-content: center; /* 垂直居中 */
}

.tp-team-4-thumb-xhs,
.tp-team-4-content {
    width: 100%; /* 确保宽度一致 */
    text-align: center; /* 文本居中 */
}


.tp-team-4-title-bz {
    font-weight: 700; /* 设置字体粗细为粗体 */
    font-size: 24px; /* 设置字体大小为 24 像素 */
    letter-spacing: -0.02em; /* 设置字母间距为 -0.02em（稍微紧凑） */
    color: var(--tp-common-black); /* 设置字体颜色为变量 --tp-common-black 的值 */
    margin-right: 15px; /* 设置右边距为 15 像素 */
    margin-bottom: 20px; /* 设置下边距为 20 像素 */
    margin-left: 15px; /* 设置左边距为 15 像素 */
    transition: color 0.1s ease; /* 添加颜色变化的过渡效果 */
}

.tp-team-4-title-bz:hover {
    color: 	#838B8B; 
}



.tp-team-4-item {
    display: flex;
    flex-direction: column; /* 设置为列布局 */
    align-items: center; /* 水平居中 */
    justify-content: center; /* 垂直居中 */
}

.tp-team-4-thumb-bz,
.tp-team-4-content {
    width: 100%; /* 确保宽度一致 */
    text-align: center; /* 文本居中 */
}


.tp-team-4-title-pyq {
    font-weight: 700; /* 设置字体粗细为粗体 */
    font-size: 24px; /* 设置字体大小为 24 像素 */
    letter-spacing: -0.02em; /* 设置字母间距为 -0.02em（稍微紧凑） */
    color: var(--tp-common-black); /* 设置字体颜色为变量 --tp-common-black 的值 */
    margin-right: 15px; /* 设置右边距为 15 像素 */
    margin-bottom: 20px; /* 设置下边距为 20 像素 */
    margin-left: 15px; /* 设置左边距为 15 像素 */
    transition: color 0.1s ease; /* 添加颜色变化的过渡效果 */
}

.tp-team-4-title-pyq:hover {
    color: 	#838B8B; 
}


.tp-team-4-item {
    display: flex;
    flex-direction: column; /* 设置为列布局 */
    align-items: center; /* 水平居中 */
    justify-content: center; /* 垂直居中 */
}

.tp-team-4-thumb-pyq,
.tp-team-4-content {
    width: 100%; /* 确保宽度一致 */
    text-align: center; /* 文本居中 */
}


.tp-team-4-title-sph {
    font-weight: 700; /* 设置字体粗细为粗体 */
    font-size: 24px; /* 设置字体大小为 24 像素 */
    letter-spacing: -0.02em; /* 设置字母间距为 -0.02em（稍微紧凑） */
    color: var(--tp-common-black); /* 设置字体颜色为变量 --tp-common-black 的值 */
    margin-right: 15px; /* 设置右边距为 15 像素 */
    margin-bottom: 20px; /* 设置下边距为 20 像素 */
    margin-left: 15px; /* 设置左边距为 15 像素 */
    transition: color 0.1s ease; /* 添加颜色变化的过渡效果 */
}

.tp-team-4-title-sph:hover {
    color: 	#838B8B; 
}

.tp-team-4-item {
    display: flex;
    flex-direction: column; /* 设置为列布局 */
    align-items: center; /* 水平居中 */
    justify-content: center; /* 垂直居中 */
}

.tp-team-4-thumb-sph,
.tp-team-4-content {
    width: 100%; /* 确保宽度一致 */
    text-align: center; /* 文本居中 */
}




.tp-team-4-content-1 span {
    font-weight: 400;
    font-size: 20px;
    color: #525356;
    margin-top: -200px; /* 设置上边距为 20 像素 */
    margin-right: 0px; /* 设置右边距为 15 像素 */
    margin-bottom: 0px; /* 设置下边距为 20 像素 */
    margin-left: 40px; /* 设置左边距为 15 像素 */
}

.tp-team-4-content-2 span {
    font-weight: 400;
    font-size: 20px;
    color: #525356;
    margin-top: 20px; /* 设置上边距为 20 像素 */
    margin-right: 100px; /* 设置右边距为 15 像素 */
    margin-bottom: 20px; /* 设置下边距为 20 像素 */
    margin-left: 40px; /* 设置左边距为 15 像素 */
}




.tp-team-4-shape {
    position: absolute; /* 设置元素的定位为绝对定位，相对于最近的已定位父元素 */
    bottom: 0; /* 设置元素的底部对齐到包含块的底部 */
    left: 50%; /* 将元素的左边界设置为父元素宽度的50%，实现水平居中 */
    transform: translateX(-50%); /* 使用平移将元素向左移动其自身宽度的50%，实现真正的居中 */
}



.team-details-thumb img {
    width: 100%;
    border-radius: 14px;
}

.team-details-left-info {
    line-height: 1;
    padding: 16px 20px;
    display: inline-block;
    border-top: 1px solid rgba(10, 11, 15, 0.1);
    border-bottom: 1px solid rgba(10, 11, 15, 0.1);
}

.team-details-left-info>span {
    font-weight: 700;
    font-size: 12px;
    line-height: 1;
    color: #2f3233;
    margin-right: 20px;
    padding-right: 20px;
    text-transform: uppercase;
    position: relative;
}

.team-details-left-info>span::after {
    position: absolute;
    top: -2px;
    right: 0;
    width: 1px;
    height: 20px;
    content: "";
    background-color: rgba(10, 11, 15, 0.1);
}

.team-details-left-info a span svg {
    transform: translateY(-1px);
}

.team-details-social a {
    height: 40px;
    width: 40px;
    margin-left: 5px;
    line-height: 35px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    border: 1px solid rgba(10, 11, 15, 0.1);
}

.team-details-social a:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.team-details-right-wrap {
    margin-left: 75px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .team-details-right-wrap {
        margin-left: 30px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .team-details-right-wrap {
        margin-left: 0px;
    }
}

.team-details-author-info {
    margin-bottom: 30px;
}

.team-details-author-info h5 {
    font-weight: 700;
    font-size: 34px;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.team-details-author-info span {
    font-weight: 400;
    font-size: 16px;
    color: #525356;
}

.team-details-text p {
    font-weight: 400;
    font-size: 18px;
    line-height: 1.56;
    color: #4d5051;
    margin-bottom: 0;
}

.team-details-more-info ul li {
    list-style-type: none;
}

.team-details-more-info ul li:not(:last-child) {
    margin-bottom: 10px;
}

.team-details-more-info ul li span {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.25;
    color: #525356;
    min-width: 135px;
    display: inline-block;
}

.team-details-more-info ul li i {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.25;
    font-style: normal;
    color: var(--tp-common-black);
}

.team-details-info-title {
    font-weight: 700;
    font-size: 24px;
    line-height: 1;
    margin-bottom: 25px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.team-details-exprience ul li {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    padding-left: 15px;
    position: relative;
    list-style-type: none;
    color: var(--tp-common-black);
}

.team-details-exprience ul li:not(:last-child) {
    margin-bottom: 20px;
}

.team-details-exprience ul li::after {
    position: absolute;
    content: "";
    top: 6px;
    left: 0;
    height: 4px;
    width: 4px;
    border-radius: 50%;
    background-color: var(--tp-common-black);
}

.team-details-skill-style .tp-progress-bar-item {
    padding: 0;
    padding-bottom: 30px;
}

.team-details-input input,
.team-details-input textarea {
    border-radius: 6px;
    color: var(--tp-common-black);
    border: 1px solid rgba(1, 17, 22, 0.16);
}

.team-details-input input::-webkit-input-placeholder,
.team-details-input textarea::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.team-details-input input::-moz-placeholder,
.team-details-input textarea::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.team-details-input input:-moz-placeholder,
.team-details-input textarea:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.team-details-input input:-ms-input-placeholder,
.team-details-input textarea:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.team-details-input input::placeholder,
.team-details-input textarea::placeholder {
    /* MODERN BROWSER */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.team-details-input input:focus,
.team-details-input textarea:focus {
    border: 1px solid #277dff;
    box-shadow: 0 0 0 3px rgba(39, 125, 255, 0.1);
}

.team-details-input textarea {
    height: 160px;
    resize: none;
}



/*----------------------------------------*/
/*  7.15 step css   服务--控制样式
/*----------------------------------------*/
/* 服务部分整体布局 */
.service-card {
    display: flex;
    /* 让卡片内部的元素横向排列 */
    align-items: center;
    /* 让图片和文本垂直居中对齐 */
    gap: 50px;
    /* 图片和文字之间的间距 */
    width: 100%;
    /* 设置卡片宽度为100%（可调整为固定值，例如 600px） */
    max-width: 1230px;
    /* 设置最大宽度，避免卡片过宽 */
    height: 450px;
    /* 固定卡片的高度（可以根据需要调整） */
    background: rgba(255, 255, 255, 0.6);
    /* 半透明背景，提升视觉层次 */
    padding: 20px;
    /* 内边距，增加内容与边框的距离 */
    border-radius: 35px;
    /* 圆角边框 */
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3);
    /* 添加轻微阴影 */
    margin-bottom: 100px;
    /* 每个卡片的底部间距 */
}

/* 控制图片的大小 */
.service-image {
    width: 288px;
    /* 控制图片的宽度 */
    height: 288px;
    /* 控制图片的高度 */

    object-fit: cover;
    /* 保持图片比例并填充整个框 */
    border-radius: 20px;
    /* 让图片有圆角 */
}

/* 控制文字区域大小 */
.service-text {
    text-align: left;
    /* 文字靠左对齐 */
    flex: 1;
    /* 让文本区域自动填充剩余空间 */
    overflow: hidden;
    /* 防止文本超出边界 */
}

/* 调整每个卡片的间距，避免影响最后一个卡片 */
.service-card:last-child {
    margin-bottom: 100;
}

/* 控制每个服务卡片的具体大小 */
.service-card-custom-size {
    width: 400px;
    /* 固定宽度 */
    height: 350px;
    /* 固定高度 */
}



.highlight .highlight-text {
    color: #ff6347;
    /* 你可以更改为任何你想要的颜色 */
}




/* 设置.tp-step-title-box的外边距，左右分别为10px，底部为40px */
.tp-step-title-box {
    margin: 0px 0px; /* 设置左右外边距为10px */
    margin-bottom: 35px; /* 设置底部外边距为40px */
}

/* 当屏幕宽度小于等于767px时（即手机屏幕尺寸），调整.tp-step-title-box的外边距 */
@media (max-width: 767px) {
    .tp-step-title-box {
        margin: 0; /* 设置所有外边距为0 */
        margin-bottom: 40px; /* 保持底部外边距为40px */
    }
}


.tp-step-link a {
    font-weight: 600;
    font-size: 14px;
    letter-spacing: -0.02em;
    display: inline-block;
    padding: 6px 40px;
    border-radius: 30px;
    background-color: #a1ecea;
    color: var(--tp-common-black-3);
    border: 2px solid transparent;
}

.tp-step-link a span {
    margin-left: 10px;
}

.tp-step-link a:hover {
    background-color: transparent;
    border-color: #a1ecea;
}

.tp-step-icon {
    display: inline-block;
    margin-bottom: 25px;
}

.tp-step-icon>span {
    height: 100px;
    width: 100px;
    text-align: center;
    line-height: 95px;
    border-radius: 50%;
    display: inline-block;
    color: var(--tp-common-blue);
    border: 2px solid var(--tp-common-blue);
    transition: 0.3s;
    position: relative;
}

.tp-step-icon>span::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    content: "";
    visibility: hidden;
    border-radius: 50%;
    transition: 0.3s;
    transform: scale(1.2);
    border: 1px dashed var(--tp-common-blue);
}

.tp-step-title-sm {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.33;
    margin-bottom: 0;
    text-align: center;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
}

.tp-step-item {
    display: inline-block;
}

.tp-step-item.active .tp-step-icon>span {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.tp-step-item.active .tp-step-icon>span::after {
    opacity: 1;
    visibility: visible;
}

.tp-step-item:hover .tp-step-icon>span {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.tp-step-item:hover .tp-step-icon>span::after {
    opacity: 1;
    visibility: visible;
}

.tp-step-number {
    position: absolute;
    top: 3px;
    right: 1px;
    z-index: 3;
    height: 30px;
    width: 30px;
    line-height: 29px;
    border-radius: 50%;
    font-style: normal;
    display: inline-block;
    color: var(--tp-common-white);
    background-color: var(--tp-common-blue);
}

.tp-step-number::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    border-radius: 50%;
    border: 4px solid var(--tp-common-white);
    transform: scale(1.2);
}

.tp-step-shape-1 {
    position: absolute;
    top: 26%;
    left: 0;
}

.tp-step-shape-1 img {
    animation: anim-top-bottom 1s linear infinite alternate;
}

.tp-step-shape-2 {
    position: absolute;
    top: 42%;
    right: 0;
    animation: anim-left-right 4s linear infinite alternate;
}

.tp-step-arrow-shape-1 {
    position: absolute;
    top: 21%;
    right: 0;
}

.tp-step-arrow-shape-2 {
    position: absolute;
    top: 21%;
    left: 0;
}

.tp-step-2-area .row [class*=col-]:not(:first-child) .tp-step-2-item {
    padding-left: 45px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-step-2-area .row [class*=col-]:not(:first-child) .tp-step-2-item {
        padding-left: 20px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-step-2-area .row [class*=col-]:not(:first-child) .tp-step-2-item {
        padding-left: 0;
    }
}

.tp-step-2-wrap {
    padding: 33px 50px;
    border-radius: 14px;
    border: 2px solid rgba(20, 24, 32, 0.06);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-step-2-wrap {
        padding: 30px 30px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-step-2-wrap {
        padding-bottom: 20px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-step-2-wrap {
        padding: 33px 25px;
        padding-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .tp-step-2-wrap {
        padding: 30px 30px;
        padding-bottom: 20px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-step-2-item {
        margin-bottom: 10px;
    }
}

.tp-step-2-item:hover .tp-step-2-content span {
    color: var(--tp-common-white);
    background-color: var(--tp-common-purple);
}

.tp-step-2-content span {
    height: 50px;
    width: 50px;
    font-weight: 600;
    font-size: 20px;
    text-align: center;
    line-height: 50px;
    transition: 0.3s;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    margin-right: 20px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    background-color: rgba(20, 24, 32, 0.1);
}

.tp-step-2-content h4 {
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.tp-step-2-arrow span {
    color: var(--tp-common-black);
}

/*----------------------------------------*/
/*  7.4 cta css
/*--------------------------------*/
.tp-cta-bg-img {
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    position: absolute;
    background-color: #7887A4;
    mix-blend-mode: color-dodge;
}

.tp-cta-bg-img img {
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    mix-blend-mode: luminosity;
}

.tp-cta-line {
    position: absolute;
    bottom: -22px;
    left: 0;
    color: var(--tp-common-pink-2);
}

.tp-cta-input input {
    height: 54px;
    width: 100%;
    font-weight: 500;
    font-size: 14px;
    padding-right: 140px;
    color: var(--tp-common-black);
}

.tp-cta-input input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #5a5c60;
}

.tp-cta-input input::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #5a5c60;
}

.tp-cta-input input:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #5a5c60;
}

.tp-cta-input input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #5a5c60;
}

.tp-cta-input input::placeholder {
    /* MODERN BROWSER */
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #5a5c60;
}

.tp-cta-input-wrapper {
    margin: 0px 80px;
}

@media (max-width: 767px) {
    .tp-cta-input-wrapper {
        margin: 0;
    }
}

.tp-cta-subscribe-btn {
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
}

.tp-cta-bottom-text span {
    margin-right: 10px;
}

.tp-cta-bottom-text p {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.43;
    margin-bottom: 0;
    color: var(--tp-common-white);
}

.tp-cta-style-2 .tp-cta-bg-img img {
    mix-blend-mode: unset;
}

.tp-cta-style-2 .tp-cta-line {
    color: var(--tp-theme-1);
}

@media (max-width: 767px) {
    .tp-cta-style-2 .tp-cta-line {
        display: none;
    }
}

.tp-cta-style-2 .tp-cta-bottom-text span {
    color: var(--tp-common-blue);
}

.tp-cta-style-2 .tp-section-title.sm>span {
    color: var(--tp-theme-1);
}

.tp-cta-4-bg {
    padding: 50px 0;
    position: relative;
}

.tp-cta-4-bg::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    height: 100%;
    width: 53%;
    z-index: -1;
    background-color: #6360ca;
    clip-path: polygon(0 0, 100% 0, 95% 100%, 0% 100%);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-cta-4-bg::after {
        display: none;
    }
}

.tp-cta-4-stroke-text {
    font-weight: 800;
    font-size: 60px;
    margin-bottom: 0;
    line-height: 1;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: var(--tp-common-white);
    -webkit-text-fill-color: transparent;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-cta-4-stroke-text {
        font-size: 55px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-cta-4-stroke-text {
        margin-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .tp-cta-4-stroke-text {
        font-size: 35px;
        margin-bottom: 20px;
    }
}

.tp-cta-4-content span {
    font-weight: 700;
    font-size: 30px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-cta-4-content span {
        font-size: 25px;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-cta-4-content span {
        font-size: 25px;
    }
}

.tp-cta-4-avatar {
    flex: 0 0 auto;
    margin-left: 35px;
}

.tp-cta-4-right {
    margin-left: 75px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-cta-4-right {
        margin-left: 0;
    }
}

.tp-cta-5-input input {
    border: none;
    height: 60px;
    font-weight: 400;
    font-size: 14px;
    border-radius: 6px;
    padding-right: 145px;
    color: var(--tp-common-black);
    background: var(--tp-common-white);
    box-shadow: 0 20px 30px 0 rgba(20, 24, 32, 0.06);
}

.tp-cta-5-input input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.tp-cta-5-input input::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.tp-cta-5-input input:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.tp-cta-5-input input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.tp-cta-5-input input::placeholder {
    /* MODERN BROWSER */
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.tp-cta-5-btn {
    top: 50%;
    right: 6px;
    position: absolute;
    transform: translateY(-50%);
}

.tp-cta-5-remeber input {
    display: none;
}

.tp-cta-5-remeber input:checked~label::after {
    background-color: var(--tp-common-black);
    border-color: var(--tp-common-black);
}

.tp-cta-5-remeber input:checked~label::before {
    visibility: visible;
    opacity: 1;
}

.tp-cta-5-remeber label {
    position: relative;
    padding-left: 26px;
    z-index: 1;
}

.tp-cta-5-remeber label span {
    font-weight: 400;
    font-size: 16px;
    color: #6d6e71;
}

.tp-cta-5-remeber label span>span {
    text-decoration: underline;
    color: var(--tp-common-black);
}

.tp-cta-5-remeber label::after {
    position: absolute;
    content: "";
    top: 5px;
    left: 0;
    width: 16px;
    height: 16px;
    z-index: -1;
    transition: 0.3s;
    border-radius: 4px;
    border: 1px solid #b1b2b7;
}

.tp-cta-5-remeber label::before {
    position: absolute;
    content: url("../image/check1.svg");
    top: -1px;
    left: 1px;
    opacity: 0;
    width: 14px;
    height: 14px;
    transition: 0.3s;
    text-align: center;
    visibility: hidden;
    color: var(--tp-common-white);
}

.tp-cta-5-remeber label:hover {
    cursor: pointer;
}

.tp-cta-5-shape-1 {
    position: absolute;
    top: 0;
    left: 0;
    animation: anim-top-bottom 1s linear infinite alternate;
}

.tp-cta-5-shape-2 {
    position: absolute;
    position: absolute;
    top: 29%;
    right: 80px;
    animation: anim-top-bottom 1s linear infinite alternate;
}

.tp-cta-inner-wrap {
    padding: 100px 0px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-cta-inner-wrap {
        padding: 50px 0;
    }
}

.tp-cta-inner-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.tp-cta-inner-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    mix-blend-mode: luminosity;
}

.tp-cta-inner-title {
    font-weight: 800;
    font-size: 60px;
    line-height: 1.17;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-cta-inner-title {
        font-size: 50px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-cta-inner-title {
        font-size: 45px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-cta-inner-title {
        font-size: 40px;
    }
}

@media (max-width: 767px) {
    .tp-cta-inner-title {
        font-size: 35px;
        margin-bottom: 30px;
    }

    .tp-cta-inner-title br {
        display: none;
    }
}

/*----------------------------------------*/
/*  7.20 video css
/*----------------------------------------*/
.tp-video-height {
    height: 760px;
    overflow: hidden;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-video-height {
        height: 600px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-video-height {
        height: 460px;
    }
}

@media (max-width: 767px) {
    .tp-video-height {
        height: 200px;
    }
}

.tp-video-img {
    position: relative;
}

.tp-video-img::after {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    content: "";
    background-color: rgba(2, 18, 23, 0.2);
}

.tp-video-img img {
    position: relative;
    height: 100%;
    width: 100%;
    margin-top: -50px;
}

@media (max-width: 767px) {
    .tp-video-img img {
        height: 300px;
        object-fit: cover;
    }
}

.tp-video-play-btn {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    z-index: 22;
    text-align: center;
    transform: translateY(-50%);
}

.tp-video-play-btn a {
    height: 180px;
    width: 180px;
    line-height: 188px;
    border-radius: 50%;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
    border: 1px solid var(--tp-common-white);
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-video-play-btn a {
        height: 140px;
        width: 140px;
        line-height: 146px;
    }
}

.tp-video-play-btn a span {
    transform: translateY(-2px);
    margin-left: 6px;
}

.tp-video-inner-style .tp-video-img img {
    margin-top: -400px;
}

@media only screen and (min-width: 1600px) and (max-width: 1700px),
only screen and (min-width: 1400px) and (max-width: 1599px),
only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-video-inner-style .tp-video-img img {
        margin-top: -200px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-video-inner-style .tp-video-img img {
        margin-top: -100px;
    }
}

@media (max-width: 767px) {
    .tp-video-inner-style .tp-video-img img {
        margin-top: -50px;
    }
}

/*----------------------------------------*/
/*  7.10 price css
/*--------------------------------*/
.tp-price-head h5 {
    font-weight: 700;
    font-size: 24px;
    line-height: 1;
    margin-bottom: 20px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
}

.tp-price-head span {
    font-weight: 700;
    font-size: 50px;
    display: inline-block;
    color: var(--tp-common-black-3);
}

.tp-price-head span i {
    font-size: 20px;
    font-style: normal;
    margin-right: 5px;
    display: inline-block;
    transform: translateY(-20px);
}

.tp-price-head span em {
    font-size: 18px;
    font-style: normal;
}

.tp-price-list {
    margin-bottom: 65px;
}

.tp-price-list ul li {
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    padding-left: 20px;
    position: relative;
    list-style-type: none;
    color: var(--tp-common-black-3);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-price-list ul li {
        font-size: 16px;
    }
}

.tp-price-list ul li:not(:last-child) {
    margin-bottom: 17px;
}

.tp-price-list ul li::after {
    position: absolute;
    content: "";
    top: 7px;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: var(--tp-common-black-3);
}

.tp-price-item {
    border-radius: 10px;
    padding: 35px 40px;
    background-color: var(--tp-common-white);
}

.tp-price-item.active {
    background-color: var(--tp-common-blue);
}

.tp-price-item.active .tp-price-head h5 {
    color: var(--tp-common-white);
}

.tp-price-item.active .tp-price-head span {
    color: var(--tp-common-white);
}

.tp-price-item.active .tp-price-list ul li {
    color: var(--tp-common-white);
}

.tp-price-item.active .tp-price-list ul li::after {
    background-color: var(--tp-common-white);
}

.tp-price-item.active .tp-btn-blue.sky-bg {
    color: var(--tp-common-black-3);
    background-color: var(--tp-common-white);
}

.tp-price-item.active .tp-btn-blue.sky-bg:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black-3);
}

.tp-price-offer {
    position: absolute;
    top: -50px;
    right: -62px;
}

.tp-price-style-2 .tp-price-item.active {
    background-color: var(--tp-common-white);
}

.tp-price-style-2 .tp-price-item.active .tp-price-head h5 {
    color: var(--tp-common-black);
}

.tp-price-style-2 .tp-price-item.active .tp-price-head span {
    color: var(--tp-common-black);
}

.tp-price-style-2 .tp-price-item.active .tp-price-list ul li {
    color: var(--tp-common-black);
}

.tp-price-style-2 .tp-price-item.active .tp-price-list ul li::after {
    background-color: var(--tp-common-black);
}

.tp-price-style-2 .tp-price-item.active .tp-btn-border-radius-6.lg {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black);
    background-color: var(--tp-common-black);
}

/*----------------------------------------*/
/*  7.6 faq css
/*----------------------------------------*/
.tp-faq-form-box {
    padding: 80px;
    margin-left: 75px;
    border-radius: 20px;
    background-color: #eff1f2;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-faq-form-box {
        margin-left: 30px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-faq-form-box {
        padding: 40px;
        margin-left: 0px;
    }
}

@media (max-width: 767px) {
    .tp-faq-form-box {
        padding: 20px;
        margin-left: 0px;
    }
}

.tp-faq-form-wrap {
    padding: 40px 50px;
    border-radius: 10px;
    background-color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-faq-form-wrap {
        padding: 30px 20px;
    }
}

.tp-faq-form-content p {
    font-weight: 400;
    font-size: 17px;
    letter-spacing: -0.02em;
    margin-bottom: 0;
    color: var(--tp-common-black-3);
}

@media (max-width: 767px) {
    .tp-faq-form-content p {
        font-size: 14px;
    }
}

.tp-faq-form-title {
    font-weight: 800;
    font-size: 26px;
    line-height: 1.23;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-faq-form-title {
        font-size: 23px;
    }
}

@media (max-width: 767px) {
    .tp-faq-form-title {
        font-size: 20px;
    }
}

.tp-faq-input input {
    height: 46px;
    border-radius: 30px;
    color: var(--tp-common-black-3);
    border: 1px solid rgba(1, 17, 22, 0.16);
}

.tp-faq-input input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.tp-faq-input input::-moz-placeholder {
    /* Firefox 19+ */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.tp-faq-input input:-moz-placeholder {
    /* Firefox 4-18 */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.tp-faq-input input:-ms-input-placeholder {
    /* IE 10+  Edge*/
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.tp-faq-input input::placeholder {
    /* MODERN BROWSER */
    font-weight: 500;
    font-size: 14px;
    color: #848788;
    letter-spacing: -0.02em;
}

.tp-faq-input input:focus {
    border-color: var(--tp-common-blue);
    box-shadow: 0 0 0 3px rgba(39, 125, 255, 0.1);
}

.tp-faq-remeber input {
    display: none;
}

.tp-faq-remeber input:checked~label::after {
    background-color: var(--tp-common-paste);
    border-color: var(--tp-common-paste);
}

.tp-faq-remeber input:checked~label::before {
    visibility: visible;
    opacity: 1;
}

.tp-faq-remeber label {
    position: relative;
    padding-left: 26px;
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    z-index: 1;
    color: #4d5051;
    letter-spacing: -0.02em;
}

.tp-faq-remeber label::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    z-index: -1;
    transition: 0.3s;
    line-height: 16px;
    border-radius: 4px;
    text-align: center;
    border: 1px solid #a1a5a7;
}

.tp-faq-remeber label::before {
    position: absolute;
    content: url("../image/check.svg");
    top: -1px;
    left: 0;
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    visibility: hidden;
    opacity: 0;
    color: var(--tp-common-black);
    transition: 0.3s;
}

.tp-faq-remeber label:hover {
    cursor: pointer;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-faq-title-box {
        margin-bottom: 40px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-faq-wrapper {
        margin-bottom: 40px;
    }
}

.tp-faq-style-2 .accordion-items:not(:last-child) {
    box-shadow: none;
}

.tp-faq-style-2 .accordion-header .accordion-buttons {
    padding-right: 60px;
}

@media (max-width: 767px) {
    .tp-faq-style-2 .accordion-body {
        padding-right: 0;
    }

    .tp-faq-style-2 .accordion-body p br {
        display: none;
    }
}

.tp-faq-style-2 .accordion-items {
    padding: 0px 30px;
    margin-bottom: 10px;
    border-radius: 10px;
    transition: 0.3s;
    border: 1px solid rgba(10, 11, 15, 0.1);
}

.tp-faq-style-2 .accordion-items.active {
    border-radius: 10px;
    background: var(--tp-common-white);
    box-shadow: 0 6px 20px 0 rgba(20, 24, 32, 0.14), 0 1px 4px 0 rgba(20, 24, 32, 0.06);
}

.tp-faq-style-2 .accordion-items.active .accordion-buttons {
    cursor: pointer;
    pointer-events: none;
    color: var(--tp-common-blue);
}

.tp-faq-style-2 .accordion-items.active .accordion-icon::after {
    background-color: var(--tp-common-black);
}

.tp-faq-style-2 .accordion-items.active .accordion-icon::before {
    transform: translate(-50%, -50%) rotate(90deg);
}

.tp-faq-style-2 .accordion-items.active .accordion-header .accordion-buttons .accordion-icon {
    background-color: #e8ebf0;
    border-color: #e8ebf0;
}

.tp-faq-style-2 .accordion-header .accordion-buttons .accordion-icon {
    position: absolute;
    top: 20px;
    right: 0px;
    height: 34px;
    width: 34px;
    border-radius: 50%;
    border: 1px solid rgba(10, 11, 15, 0.14);
}

.tp-faq-style-2 .accordion-header .accordion-buttons:not(.collapsed) .accordion-icon::after {
    background-color: var(--tp-common-black);
}

.tp-faq-style-2 .accordion-header .accordion-buttons:not(.collapsed) .accordion-icon {
    background-color: #e8ebf0;
    border-color: #e8ebf0;
}

@media (max-width: 767px) {
    .tp-faq-4-area {
        padding-top: 70px;
        padding-bottom: 70px;
    }
}

.tp-faq-4-nav nav button {
    height: 30px;
    transition: 0.3s;
    padding: 0 12px;
    font-weight: 600;
    font-size: 14px;
    margin-left: 8px;
    border-radius: 6px;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
    background-color: #dbdde3;
}

@media (max-width: 767px) {
    .tp-faq-4-nav nav button {
        margin-left: 0;
        margin-right: 8px;
    }
}

.tp-faq-4-nav nav button:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black);
}

.tp-faq-4-nav nav button.active {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black);
}

.tp-faq-4-contact-info {
    padding: 20px 30px;
    border-radius: 10px;
    background: linear-gradient(180deg, #dde0e7 0%, rgba(221, 224, 231, 0) 100%);
}

.tp-faq-4-contact-icon span {
    height: 50px;
    width: 50px;
    line-height: 50px;
    border-radius: 50%;
    text-align: center;
    margin-right: 11px;
    display: inline-block;
    background-color: var(--tp-common-white);
}

.tp-faq-4-contact-title {
    font-weight: 600;
    font-size: 16px;
    line-height: 1.37;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.pr-faq-title-box {
    padding-right: 60px;
}

/*----------------------------------------*/
/*  7.3 contact css  联系我们  联系方式css样式
/*----------------------------------------*/
.contact-left-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
    /* 控制各个信息项的间距 */
}

.contact-left-info-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* 确保均匀分布 */
    gap: 15px;
    /* 控制每个信息块之间的间距 */
}

.contact-left-info-item {
    display: flex;
    align-items: center;
    gap: 8px;
    /* 图标和文本之间的间距 */
    font-size: 16px;
    /* 控制文字大小 */
}

.contact-left-info-icon {
    font-size: 20px;
    /* 控制图标大小 */
    width: 50px;
    /* 让图标宽度统一 */
    height: 20px;
    /* 让图标高度统一 */
    display: flex;
    justify-content: center;
    align-items: center;
}

.contact-title {
    font-size: 24px;
    /* 控制字体大小 */
    font-weight: bold;
    /* 加粗字体 */
    color: #333;
    /* 字体颜色 */
    text-align: center;
    /* 文字居中 */
    margin-bottom: 800px;
    /* 标题下方留出间距 */
}

.contact-title {
    text-align: center;
    margin-bottom: 10px;
    /* "我们的企业位置" 的底部间距 */
}

.contact-left-title {
    text-align: center;
    margin-bottom: 80px;
    /* "我们的联系方式" 的底部间距 */
}




.location-thumb {
    position: relative;
    overflow: hidden;
}

@media (max-width: 767px) {
    .location-thumb {
        height: 500px;
    }
}

.location-thumb::after {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    content: "";
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(12, 14, 19, 0) 0%, rgba(12, 14, 19, 0.8) 100%);
}

.location-thumb img {
    border-radius: 14px;
}

@media (max-width: 767px) {
    .location-thumb img {
        height: 100%;
    }
}

.location-info-main {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 60px;
}

@media (max-width: 767px) {
    .location-info-main {
        padding: 30px;
    }
}

.location-info-content a {
    font-weight: 700;
    font-size: 30px;
    line-height: 1.13;
    display: block;
    margin-bottom: 7px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .location-info-content a {
        font-size: 22px;
    }
}

.location-info-content a:hover {
    color: var(--tp-common-blue);
}

.location-info-content span {
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 20px;
    display: inline-block;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.location-info .team-details-left-info {
    border-top: 2px solid rgba(255, 255, 255, 0.2);
    border-bottom: 2px solid rgba(255, 255, 255, 0.2);
}

.location-info .team-details-left-info>span {
    color: var(--tp-common-white);
}

.location-info .team-details-left-info>span::after {
    width: 2px;
    background-color: rgba(255, 255, 255, 0.2);
}




/*联系我们/svg波浪线css样式*/
.location-area {
    display: flex;
    justify-content: center;
    /* 水平居中 */
    align-items: center;
    /* 垂直居中 */
    height: 60vh;
    /* 占满整个视口高度 */
    position: relative;
    /* 避免受 absolute 影响 */
}

.location-top-shape {
    position: absolute;
    top: 0;
    left: 1;
    right: 6;
}




/*----------------------------------------*/
/*  7.21 vission css
/*----------------------------------------*/
.tp-vission-overlay {
    position: relative;
}

.tp-vission-overlay::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(10, 12, 17, 0.4);
}

@media (max-width: 767px) {
    .tp-vission-overlay::after {
        display: none;
    }
}

.tp-vission-ptb {
    padding: 140px 0;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .tp-vission-ptb {
        padding: 80px 0;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-vission-ptb {
        padding: 60px 0;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-vission-ptb {
        padding: 50px 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-vission-ptb {
        padding: 30px 0;
    }
}

@media (max-width: 767px) {
    .tp-vission-ptb {
        padding: 0 0;
        overflow: visible;
    }
}

.tp-vission-img {
    position: absolute;
    left: 0;
    top: -240px;
    width: 100%;
    height: 100%;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-vission-img {
        top: -150px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-vission-img {
        top: -50px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-vission-img {
        top: 0px;
        height: 100%;
    }

    .tp-vission-img img {
        height: 500px;
    }
}

.tp-vission-item {
    padding: 50px;
    padding-bottom: 40px;
    border-radius: 10px;
    border: 1px solid #fff;
    backdrop-filter: blur(30px);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 6px 20px 0 rgba(20, 24, 32, 0.14), 0 1px 4px 0 rgba(20, 24, 32, 0.06);
}

@media (max-width: 767px) {
    .tp-vission-item {
        flex-wrap: wrap;
    }
}

.tp-vission-category {
    margin-bottom: 15px;
}

.tp-vission-category a {
    font-weight: 700;
    font-size: 12px;
    padding: 2px 17px;
    border-radius: 20px;
    display: inline-block;
    text-transform: uppercase;
    background-color: #cc1c90;
    color: var(--tp-common-white);
}

.tp-vission-text {
    margin-bottom: 10px;
    display: inline-block;
}

.tp-vission-text p {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    padding-right: 60px;
    color: var(--tp-common-black);
}

@media (max-width: 767px) {
    .tp-vission-text p {
        padding-right: 0;
    }
}

@media (max-width: 767px) {
    .tp-vission-content {
        margin-bottom: 40px;
    }
}

.tp-vission-link a {
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    color: var(--tp-common-black);
}

.tp-vission-link a span {
    height: 34px;
    width: 34px;
    margin-left: 5px;
    line-height: 34px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    border: 1px solid rgba(20, 24, 32, 0.14);
}

.tp-vission-link a span svg {
    transform: translateY(-1px);
}

.tp-vission-number span {
    font-weight: 800;
    font-size: 280px;
    line-height: 0.7;
    text-transform: uppercase;
    color: var(--tp-common-black);
}

.tp-vission-number p {
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 0;
    text-align: center;
    color: var(--tp-common-black);
}

/*----------------------------------------*/
/*  7.19 text slide css
/*----------------------------------------*/
.tp-text-item span {
    font-weight: 800;
    font-size: 140px;
    line-height: 1;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    white-space: nowrap;
    color: rgba(255, 255, 255, 0.06);
}

@media (max-width: 767px) {
    .tp-text-item span {
        font-size: 90px;
    }
}

.tp-text-wrapper .text-transtion {
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear;
}

.tp-text-active .swiper-slide {
    width: auto;
}

.tp-text-style-2 .tp-text-item span {
    color: var(--tp-common-blue);
}

.tp-text-slider-3-title {
    font-weight: 800;
    font-size: 60px;
    line-height: 1;
    margin-right: 55px;
    color: var(--tp-common-black-3);
}

.tp-text-slider-3-active .swiper-slide {
    width: auto;
}

.tp-text-slider-3-wave-shape-1 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
}

.tp-text-slider-3-wave-shape-2 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
}

.slider-transtion {
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear;
}

.tp-text-inner-style .tp-text-slider-3-title {
    color: var(--tp-common-blue);
}

.tp-text-inner-style .tp-text-item span {
    color: #bfcee3;
}

/*----------------------------------------*/
/*  7.17 testimonial css
/*--------------------------------*/
.tp-testimonial-quote {
    margin-bottom: 15px;
}

.tp-testimonial-quote span {
    color: var(--tp-common-sky);
}

.tp-testimonial-text {
    margin-bottom: 35px;
}

.tp-testimonial-text p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 0;
    color: var(--tp-common-white);
}

.tp-testimonial-author {
    display: inline-block;
}

.tp-testimonial-author-wrap {
    margin-bottom: 40px;
}

.tp-testimonial-author-img {
    border-radius: 50%;
    border: 2px solid var(--tp-common-white);
}

.tp-testimonial-author-logo {
    position: absolute;
    bottom: -5px;
    right: 0;
    border-radius: 50%;
    border: 2px solid var(--tp-common-black);
}

.tp-testimonial-author-name {
    font-weight: 700;
    font-size: 18px;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
    margin-bottom: 5px;
}

.tp-testimonial-author-info {
    line-height: 1;
    margin-left: 15px;
}

.tp-testimonial-author-info span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.43;
    color: #828386;
}

.tp-testimonial-slider-wrap {
    padding-right: 170px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-testimonial-slider-wrap {
        padding-right: 0;
    }
}

.tp-testimonial-dot .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    opacity: 1;
    transition: 0.3s;
    border-radius: 50%;
    display: inline-block;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.4);
}

.tp-testimonial-dot .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border-color: var(--tp-theme-1);
    background-color: var(--tp-theme-1);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-testimonial-space {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-testimonial-space {
        padding-top: 0;
    }
}

.tp-testimonial-thumb {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 50%;
    overflow: hidden;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-testimonial-thumb {
        position: relative;
        width: 100%;
        height: 500px;
        margin-bottom: 60px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-testimonial-thumb {
        position: relative;
        width: 100%;
        height: 400px;
        margin-bottom: 60px;
    }
}

@media (max-width: 767px) {
    .tp-testimonial-thumb {
        position: relative;
        width: 100%;
        height: 250px;
        margin-bottom: 60px;
    }
}

.tp-testimonial-thumb img {
    margin-top: -200px;
    width: 100%;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .tp-testimonial-thumb img {
        margin-top: -150px;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-testimonial-thumb img {
        margin-top: -50px;
    }
}

.tp-testimonial-playbtn {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    width: 100px;
    height: 100px;
    margin: 0 auto;
    line-height: 100px;
    text-align: center;
    border-radius: 50%;
    transform: translateY(-50%);
    display: inline-block;
    backdrop-filter: blur(14px);
    color: var(--tp-common-black);
    background-color: var(--tp-common-white);
    animation: animate-pulse 3s linear infinite;
}

.tp-testimonial-playbtn span {
    margin-left: 2px;
}

.tp-testimonial-playbtn:hover {
    color: var(--tp-common-white);
    background-color: var(--tp-common-black);
}

.tp-testimonial-style-2 .tp-testimonial-quote span {
    color: var(--tp-common-pink-3);
}

.tp-testimonial-style-2 .tp-testimonial-text p {
    color: var(--tp-common-black);
}

.tp-testimonial-style-2 .tp-testimonial-author-name {
    color: var(--tp-common-black);
}

.tp-testimonial-style-2 .tp-testimonial-author-info span {
    color: #525356;
}

.tp-testimonial-style-2 .tp-testimonial-author-logo {
    border: 2px solid #EEF0F5;
}

.tp-testimonial-style-2 .tp-testimonial-dot .swiper-pagination-bullet {
    border: 1px solid rgba(20, 24, 32, 0.3);
}

.tp-testimonial-style-2 .tp-testimonial-dot .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border-color: var(--tp-common-blue);
    background-color: var(--tp-common-blue);
}

.tp-testimonial-3-slider-wrap {
    margin-left: 100px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-testimonial-3-slider-wrap {
        margin-left: 50px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-testimonial-3-slider-wrap {
        margin-left: 0;
    }
}

.tp-testimonial-3-avater {
    margin-bottom: 15px;
}

.tp-testimonial-3-avater-title {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-black-3);
}

.tp-testimonial-3-avater-info {
    margin-bottom: 45px;
}

.tp-testimonial-3-avater-info span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: #4d5051;
}

.tp-testimonial-3-text p {
    font-weight: 400;
    font-size: 24px;
    line-height: 1.42;
    margin-bottom: 0;
    color: var(--tp-common-black-3);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-testimonial-3-text p {
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    .tp-testimonial-3-text p {
        font-size: 20px;
    }
}

.tp-testimonial-3-dot .swiper-pagination-bullet {
    width: 60px;
    height: 2px;
    opacity: 1;
    border-radius: 0;
    display: inline-block;
    background: #cbcccf;
    transition: 0.3s;
}

.tp-testimonial-3-dot .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--tp-common-blue);
}

@media (max-width: 767px) {
    .tp-testimonial-3-title-box {
        margin-bottom: 30px;
    }

    .tp-testimonial-3-title-box .tp-section-title.fs-40 {
        font-size: 28px;
    }
}

@media (max-width: 767px) {
    .tp-testimonial-3-btn {
        margin-bottom: 40px;
    }
}

@media (max-width: 767px) {
    .tp-testimonial-4-area {
        padding-top: 70px;
        padding-bottom: 70px;
    }
}

.tp-testimonial-4-item {
    border-radius: 14px;
    padding: 40px 40px 45px 30px;
    background-color: var(--tp-common-white);
    box-shadow: 0 20px 30px 0 rgba(12, 12, 19, 0.2);
}

.tp-testimonial-4-top {
    margin-bottom: 15px;
}

.tp-testimonial-4-avatar {
    flex: 0 0 auto;
    margin-right: 12px;
}

.tp-testimonial-4-avatar-name {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

.tp-testimonial-4-avatar-content span {
    font-weight: 400;
    font-size: 14px;
    color: #919396;
}

.tp-testimonial-4-ratting>span {
    height: 24px;
    line-height: 23px;
    padding: 0 12px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 12px;
    display: inline-block;
    color: var(--tp-common-black);
    border: 1px solid rgba(20, 24, 32, 0.14);
}

.tp-testimonial-4-ratting>span span {
    margin-left: 5px;
    display: inline-block;
    transform: translateY(-2px);
}

.tp-testimonial-4-text {
    margin-left: 50px;
}

.tp-testimonial-4-text p {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.57;
    color: #525356;
    margin-bottom: 0;
    padding-right: 2px;
}

.tp-testimonial-4-quote {
    position: absolute;
    top: -5px;
    left: -40px;
}

.tp-testimonial-4-active {
    margin: 0px -50px;
    padding-bottom: 60px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-testimonial-4-active {
        margin: 0;
    }
}

.tp-testimonial-4-dot-box {
    position: absolute;
    right: 0;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-testimonial-4-dot-box {
        right: 0;
        left: 0;
        text-align: center;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-testimonial-4-dot-wrap {
        margin-bottom: 80px;
    }
}

.tp-testimonial-4-dot::before {
    content: "";
    height: 1px;
    width: 1085px;
    display: inline-block;
    transform: translateY(-5px);
    background: linear-gradient(-90deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .tp-testimonial-4-dot::before {
        width: 990px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-testimonial-4-dot::before {
        width: 810px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-testimonial-4-dot::before {
        display: none;
    }
}

.tp-testimonial-4-dot .swiper-pagination-bullet {
    opacity: 1;
    width: 12px;
    height: 12px;
    transition: 0.3s;
    border-radius: 50%;
    margin-left: 10px;
    display: inline-block;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.4);
}

.tp-testimonial-4-dot .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-testimonial-4-fea-item {
        margin-bottom: 40px;
    }
}

.tp-testimonial-4-fea-img {
    flex: 0 0 auto;
    margin-right: 15px;
}

.tp-testimonial-4-fea-star span {
    margin-right: 3px;
    color: var(--tp-common-white);
}

.tp-testimonial-4-fea-text {
    line-height: 1;
}

.tp-testimonial-4-fea-text span {
    font-weight: 700;
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: -0.02em;
    color: var(--tp-common-white);
}

.tp-testimonial-4-fea-head {
    margin-right: 20px;
}

.tp-testimonial-4-fea-head h4 {
    font-weight: 800;
    font-size: 40px;
    margin-bottom: 0;
    letter-spacing: -0.02em;
    color: var(--tp-common-black);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-testimonial-4-fea-head h4 {
        font-size: 30px;
    }
}

.tp-testimonial-4-shape {
    position: absolute;
    top: 70px;
    right: 70px;
}

.tp-testimonial-4-shape span {
    opacity: 0.1;
    mix-blend-mode: luminosity;
}

.tp-testimonial-5-wrap .tp-testimonial-4-item {
    background: #4a4d8e;
    box-shadow: 0 20px 30px 0 rgba(12, 12, 19, 0.06);
}

.tp-testimonial-5-wrap .tp-testimonial-4-avatar-name {
    color: var(--tp-common-white);
}

.tp-testimonial-5-wrap .tp-testimonial-4-avatar-content span {
    color: #c7c9cf;
}

.tp-testimonial-5-wrap .tp-testimonial-4-text p {
    color: var(--tp-common-white);
}

.tp-testimonial-5-wrap .tp-testimonial-4-ratting>span {
    color: var(--tp-common-white);
    border: 1px solid rgba(255, 255, 255, 0.14);
}

/*----------------------------------------*/
/*  7.18 text-anim css
/*----------------------------------------*/
.tp-reveal-line {
    overflow: hidden;
    padding-bottom: 9px;
}

.tp-border-line {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 3;
    width: 18.6%;
    z-index: -1;
    border-right: 1px solid rgba(255, 255, 255, 0.06);
}

.tp-border-line::after {
    position: absolute;
    top: 300px;
    right: -1px;
    width: 1px;
    opacity: 0.5;
    height: 100px;
    content: "";
    animation: scroll1 15s ease-out infinite;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 100%);
}

.tp-border-line.line-2 {
    width: 39.6%;
}

.tp-border-line.line-2::after {
    animation: scroll1 25s ease-out infinite;
}

.tp-border-line.line-3 {
    width: 60.6%;
}

.tp-border-line.line-3::after {
    animation: scroll1 15s ease-out infinite;
}

.tp-border-line.line-4 {
    width: 81.6%;
}

.tp-border-line.line-4::after {
    animation: scroll1 25s ease-out infinite;
}

/*----------------------------------------*/
/*  7.5 dashboard css
/*----------------------------------------*/
.tp-dashboard-bg {
    border-radius: 14px 14px 16px 14px;
    padding: 105px 70px 105px 70px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-dashboard-bg {
        padding: 90px 50px 90px 50px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .tp-dashboard-bg {
        padding: 70px 70px 105px 70px;
    }
}

@media (max-width: 767px) {
    .tp-dashboard-bg {
        padding: 50px 30px 60px 30px;
    }
}

.tp-dashboard-title-box p {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.57;
    color: #cacbce;
    margin-bottom: 30px;
}

@media (max-width: 767px) {
    .tp-dashboard-title-box p br {
        display: none;
    }
}

.tp-dashboard-list ul {
    display: flex;
    align-items: center;
}

.tp-dashboard-list ul li {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    list-style-type: none;
    color: var(--tp-common-white);
}

@media (max-width: 767px) {
    .tp-dashboard-list ul li {
        font-size: 13px;
    }
}

.tp-dashboard-list ul li:not(:last-child) {
    margin-right: 30px;
}

.tp-dashboard-list ul li span {
    height: 20px;
    width: 20px;
    margin-right: 10px;
    line-height: 18px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    background-color: var(--tp-theme-1);
}

.tp-dashboard-thumb {
    position: absolute;
    bottom: 0;
    right: 0;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-dashboard-thumb {
        bottom: -45px;
        right: -50px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-dashboard-thumb {
        position: static;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .tp-dashboard-thumb img {
        transform: scale(0.8);
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .tp-dashboard-thumb img {
        width: 100%;
        margin-bottom: 40px;
    }
}

/*# sourceMappingURL=main.css.map */