/* Table of Contents
----------------------------------


/*------------------------------ (00)-Global CSS ------------------------------*/
/*
0- Global CSS
1- Heading CSS
2- Button CSS
3- Logo Area CSS
4- Page Title CSS
5- Header Area CSS
6- Footer Area CSS
7- Scroll-Top Area CSS
8- Form CSS
9- Dark Form CSS
10- Swiper Pagination CSS
11- Swiper Navigation CSS
12- CheckBox CSS
13- Sidebar Heading CSS
14- Sidebar CSS
*/

/*------------------------------ (01)-Home ------------------------------*/
/*
1- Home
2- Feature
3- Counter
4- Section Slider
5- Home Schedule
6- Speaker Slider
7- Why Choose Us
8- Banner
9- Testimonial
10- Newsletter
11- Latest Blogs
12- Sponsor Slider
*/

/*------------------------------ (02)-About ------------------------------*/

/*--------------- PAGES ---------------*/
/*
1- About Us
2- Why Choose Us
3- Team
4- Team Single
5- Testimonials
6- Faqs
*/

/*------------------------------ (03)-Pages ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/*
01- Tab Information
02- Page Single
03- Page Sidebar
04- Custom Form
*/

/*--------------- PAGES ---------------*/
/*
1- Gallery
2- Tickets
3- Services
4- Service Single
5- Portfolio
6- Portfolio Single
7- Careers
8- Career Single
9- Career Form
10- Venues
11- Venue Single
12- Not Found
13- Privacy Policy
14- Terms & Condition
15- Registration
16- Sponsors
*/


/*------------------------------ (04)-Schedule ------------------------------*/
/*
1- Schedule Tabs
2- Schedule List
3- Schedule Event
4- Schedule Single
*/


/*------------------------------ (05)-Speaker ------------------------------*/
/*
1- Speakers
2- Speaker Single
*/

/*------------------------------ (06)-Blog ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/*
01- Blog-Item
02- Comment 
03- Pages-No
*/

/*--------------- PAGES ---------------*/
/*
1- Blog Grid
2- Blog List
3- Blog Single 
*/

/*------------------------------ (07)-Shop ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/*
01- Filter
02- Shop Header 
03- Quantity Box
04- Product-Item
05- Shop-Title
06- Cart-Summary
07- Radio Button
08- Account-Form
*/

/*--------------- PAGES ---------------*/
/*
1- Shop Grid
2- Shop Standard
3- Product Single
4- Wishlist
5- Cart
6- Checkout
7- Login
8- Register
9- Forgot Password
*/

/*------------------------------ (08)-Contact ------------------------------*/



/*------------------------------ (00)- Global CSS (Start) ------------------------------*/

/*----- 0- Global CSS -----*/
:root{
    --main-color: #38b6ff;
    --accent-color: #5271ff;
    --secondary-color: #ff66c4;
    --black: #000; 
    --white: #fff;
    --light-grey: #E6E6E6;
    --grey: #666; 
    --custom-bg: rgba(0, 0, 0, 0.8);
    --border-radius-1: 0.5rem;
    --border-radius-2: 1rem;
    --border-radius-3: 50%;
    --custom-border: 0.5rem solid var(--main-color);
    --box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
}

*{
    font-family: 'Microsoft YaHei', '微软雅黑', 'PingFang SC', 'SimHei', Arial, sans-serif;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    padding: 0; 
    text-decoration: none;
    border: none;
    outline: none;
}

*:not(.portfolio-item){
    -webkit-transition: all 0.2s linear;
        -o-transition: all 0.2s linear;
            transition: all 0.2s linear;
}

section {
    padding: 6rem 5%;
}

*::-moz-selection{
    color: var(--white);
    background-color: var(--main-color);
}

*::selection{
    color: var(--white);
    background-color: var(--main-color);
}

body{
    background: #f2f3f8;
    overflow-x: hidden;
}

html{
    font-size: 62.5%;
    overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-padding-top: 7rem;
}

section{
    padding: 6rem 5%;
}

::-webkit-scrollbar{
    width: 0.8rem;
}

::-webkit-scrollbar-track{
    background: var(--black);
}

::-webkit-scrollbar-thumb{
    border-radius: var(--border-radius-2);
    background: var(--main-color);
}

p{
    font-size: 1.6rem;
    line-height: 1.7;
    color: var(--grey);
}

img{
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/*----- 1- Heading CSS -----*/
.heading{ 
    margin-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

.heading .sub {
    letter-spacing: 0.1rem;
    display: inline-block;
    font-size: 2.6rem;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    color: var(--accent-color);
    background: -webkit-linear-gradient(right, var(--main-color), var(--accent-color));
    background: linear-gradient(270deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 0.5rem;
    position: relative;
    padding-bottom: 0.1rem;
    z-index: 1;
}

.heading .sub img {
    height: 6rem;
    width: auto;
    vertical-align: middle;
}

.heading h2{
    text-align: center;
    font-size: 4rem;  
    font-weight: 600;
    color: var(--black);
    text-shadow: 1px 1px 8px rgba(0,0,0, 0.2);
    letter-spacing: 0.1rem;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.linear-bg .heading h2{
    color: var(--white);
    padding-bottom: 0rem;
}

/*----- 2- Button CSS -----*/
.btn{
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 1.5rem 3rem;
    text-align: center;
    color: var(--white);
    background-image: -webkit-linear-gradient(306deg, var(--main-color), var(--accent-color), var(--secondary-color));
    background-image:         linear-gradient(144deg, var(--main-color), var(--accent-color), var(--secondary-color));
    background-size: 300% 100%;
    border-radius: var(--border-radius-1);
    cursor: pointer;
}

.btn:hover{
    background-position: 100% 0px; 
}

/*----- 3- Logo Area CSS -----*/  
.logo{
    z-index: 100000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.4rem;
}

.logo img{
    height: 4.5rem;
    width: auto;
    padding-right: 1rem;
}

.logo-content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 1;
}

.logo h3 {
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1;
    transform: translateY(0.4rem);
}

.logo p {
    color: #ffffff;
}

/*----- 4- Page Title CSS -----*/
.page-title{
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), url("../images/Background/PageTitle.jpg");
    background:         linear-gradient(180deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), url("../images/Background/PageTitle.jpg");
    background-repeat: no-repeat;  
    background-size: cover;
    background-position: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
    padding: 0rem 5%;
    padding-top: 8rem;
    min-height: 45rem;
    text-align: center;
    position: relative;
    overflow: hidden;
}

/* banner 背景：缓慢放大 (Ken Burns) + 两侧光晕 */
.page-title::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background: inherit;
    background-size: cover;
    background-position: center;
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-animation: pageTitleZoom 20s ease-in-out infinite alternate;
            animation: pageTitleZoom 20s ease-in-out infinite alternate;
    pointer-events: none;
}
.page-title::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
    background:
        -webkit-radial-gradient(ellipse at left center, rgba(255,255,255,0.30), rgba(255,255,255,0) 55%),
        -webkit-radial-gradient(ellipse at right center, rgba(255,255,255,0.30), rgba(255,255,255,0) 55%);
    background:
        radial-gradient(ellipse at left center, rgba(255,255,255,0.30), rgba(255,255,255,0) 55%),
        radial-gradient(ellipse at right center, rgba(255,255,255,0.30), rgba(255,255,255,0) 55%);
}
.page-title .title{
    position: relative;
    z-index: 2;
}
.page-title .link{
    z-index: 2;
}
@keyframes pageTitleZoom{
    0%{ -webkit-transform: scale(1); transform: scale(1); }
    100%{ -webkit-transform: scale(1.15); transform: scale(1.15); }
}

.page-title .title h2{
    color: var(--white);
    line-height: 1.2;
    font-size: 5rem;
    font-weight: 500;
}

.page-title .link{
    position: absolute;
    bottom: 0;
    right: 0;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(15% 0%, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(15% 0%, 100% 0, 100% 100%, 0% 100%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    font-size: 1.6rem;
    padding: 2rem 4rem;
    padding-left: 7rem;
}

.page-title .link a{
    /* font-weight: 600; */
    color: var(--white);
}

.page-title .link a:hover{
    color: var(--black);
}

.page-title .link .icon{
    color: var(--white);
}

.page-title .link span{
    font-weight: 500;
    color: var(--white);
}

/*----- 5- Header Area CSS -----*/
.header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.header .header-1{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 5%;
    border-bottom: 0.1rem solid rgba(255, 255, 255, 0.5);
}

.header.active .header-1{
    display: none;
}

.header .header-contacts{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 3rem;
    list-style-type: none;
}

.header .header-contacts li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    gap: 1rem;
    font-size: 1.4rem;
    color: var(--white);
}

.header .header-contacts li i{
    color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.header .header-contacts span{
    text-transform: none;
}

.header .social-contacts{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 1rem;
    list-style-type: none;
}

.header .social-contacts li a{
    height: 3rem;
    width: 3rem;
    font-size: 1.4rem;
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header .social-contacts li a:hover{
    color: var(--main-color);
}

.header .header-2{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
    height: 7rem;
    padding: 0rem 5%;
    gap: 1rem;
}

.header.active .header-2{
    background-color: var(--white);
    border-bottom: 0.2rem solid var(--main-color);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.header.active .header-2 .logo h3,
.header.active .header-2 .logo p,
.header.active .header-2 .navbar .nav-btn,
.header.active .header-2 .icon{
    color: var(--black);
    text-shadow: none;
}

.header #menu-btn{
    cursor: pointer;
    display: none;
}

.header .navbar{
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    gap: 2rem;
}

.mobile-menu{
    display: none;
}

.header .container{
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.5rem;
}

.header .dropdown-menu{
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header .navbar .nav-btn{
    display: inline-block;
    font-size: 1.7rem;
    color: var(--white);
    cursor: pointer;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6), 0 0 12px rgba(0, 0, 0, 0.35);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: none;
    gap: 0.5rem;
}

.header .navbar .nav-btn:hover{
    color: var(--main-color);
}

.header .navbar .nav-btn.active{
    color: var(--main-color);
    /* font-weight: 600; */
    position: relative;
}
.header .navbar .nav-btn.active::after{
    content: '';
    position: absolute;
    bottom: -0.5rem;
    left: 0;
    width: 100%;
    height: 0.2rem;
    background: var(--main-color);
    border-radius: 0.2rem;
}

.header .dropdown-content{
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--black);
    width: 20rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: none;
    -webkit-transition:  all 0.5s;
    -o-transition:  all 0.5s;
    transition:  all 0.5s;
    z-index: 1000;
}

.header .dropdown-menu:hover .nav-btn{
    color: var(--main-color);
}

.header .dropdown-menu:hover .dropdown-content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: var(--custom-border);
}

.header .dropdown-content a,
.header .dropdown-content button{
    display: block;
    font-size: 1.4rem;
    /* font-weight: 600; */
    color: var(--white);
    padding: 1rem 1.5rem;
    cursor: pointer;
    background-color: transparent;
    overflow: hidden;
}

.header .dropdown-content a:hover{
    background: var(--main-color);
}

.header .dropdown-content .side-dropdown {
    color: var(--white);
    font-size: 1.2rem;
    padding-right: 1.5rem;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header .dropdown-content .side-dropdown .dropdown-content {
    left: 20rem;
    top: 0;
    display: none !important;
}

.header .dropdown-content .side-dropdown:hover .dropdown-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex !important;
}

.header .dropdown-content .side-dropdown button{
    display: block;
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--white);
    background-color: var(--black);
    padding: 1rem 1.5rem;
    cursor: pointer;
}

.header .dropdown-content .side-dropdown {
    position: relative;
}

.header .dropdown-content .side-dropdown:hover {
    color: var(--white);
    background-color: var(--main-color);
}

.header .dropdown-content .side-dropdown:hover button {
    color: var(--white);
    background-color: var(--main-color);
} 

.header .icon-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center; 
    align-items: center;
    gap: 1rem;
}

.header-2 .icon{
    font-size: 1.8rem;
    color: var(--white);
    cursor: pointer;
}

.header-2 .icon:hover{ 
    color: var(--main-color);
}

.header .search-container{
    position: absolute;
    top: 100%;
    right: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 2rem;
    background: var(--white);
    width: 40rem;
    padding: 1.5rem 2rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    opacity: 0;
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right;
    -webkit-transition: -webkit-transform 0.3s ease;
    -o-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    border-radius: 50rem;
    -webkit-transform: translateX(300%);
        -ms-transform: translateX(300%);
            transform: translateX(300%);
}

.header .search-container.active{
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
        transform: translateX(0);
}

.header .search-container input{
    width: 100%;
    height: 100%;
    background: transparent;
    color: var(--black);
    font-size: 1.8rem;
    text-transform: none;
}

.header .search-container button{
    color: var(--black);
    background-color: transparent;
    font-size: 2rem;
    padding-right: 0.5rem;
    padding-left: 1rem;
}

.header .search-container button:hover{
    color: var(--main-color);
    cursor: pointer;
}

/*----- 6- Footer Area CSS -----*/
.footer{
    background: var(--white);
    border-top: 0.2rem solid var(--main-color);
}

.footer .box-container {
    margin: 0 auto;
    max-width: 120rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1rem;
    padding: 6rem 1%;
    text-align: left;
}

.footer .footer-left{
    max-width: 60rem;
}

.footer .footer-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 9rem;
}

.footer .logo {
    z-index: 1;
    text-align: left;
    margin-bottom: 1.5rem;
}

.footer .logo h3{
    color: var(--black);
}

.footer .logo p{
    color: var(--main-color);
}

.footer .box-container > .footer-left > p{
    font-size: 1.5rem;
    line-height: 1.8;
    color: var(--grey);
    margin-top: 1.5rem;
}

.footer .info h4{
    font-size: 2rem;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 1.5rem;
    margin-top: 1.5rem;
    position: relative;
    padding-bottom: 0.8rem;
}

.footer .info h4::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 3rem;
    height: 0.3rem;
    border-radius: 0.3rem;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
}

.footer .dark-form {
    padding-top: 2rem;
    padding-bottom: 1rem;
}

.footer .dark-form .input-field {
    width: 40rem;
    margin-bottom: 1rem;
}

.footer .dark-form .alert {
    min-height: 2.5rem;
    display: inline-block;
    font-size: 1.6rem;
    color: var(--white);
    padding-top: 0.6rem;
}

.footer .links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.8rem 2rem;
}

.footer .links h4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
}

.footer .links a {
    font-size: 1.5rem;
    color: var(--grey);
    -webkit-transition: color 0.3s ease, padding-left 0.3s ease;
    transition: color 0.3s ease, padding-left 0.3s ease;
}

.footer .links a:hover {
    color: var(--main-color);
    padding-left: 0.5rem;
}

.footer .contacts p{
    font-size: 1.4rem;
    line-height: 2;
    color: #060606;
    text-align: left;
}

.footer .contacts p i{
    color: var(--main-color);
    margin-right: 1rem;
    width: 1.6rem;
    text-align: center;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 1.6rem;
            flex: 0 0 1.6rem;
}

.footer .content{
    padding: 1.8rem 5%;
    background: var(--white);
    border-top: 0.1rem solid var(--light-grey);
    text-align: center;
}

.footer .content p{
    font-size: 1.5rem;
    color: var(--black);
}

.footer .content p a{
    color: var(--main-color);
}


/*----- 7- Scroll-Top Area CSS -----*/
.scroll-top{
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    height: 4.5rem;
    width: 4.5rem;
    font-size: 2rem;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    z-index: 900;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.scroll-top:hover{
    background: var(--black);
    cursor: pointer;
}

/*----- 8- Form CSS -----*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    color: var(--black) !important;
    -webkit-transition: background-color 5000s ease-in-out 0s;
        -o-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;
}

.form .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.form .box{
    width: 100%;
    background-color: transparent;
    font-size: 1.6rem;
    color: var(--black);
    padding: 1rem 1.5rem; 
    border: 0.15rem solid rgba(0, 0, 0, 0.1);
    border-radius: var(--border-radius-1);
    text-transform: none;
}

.form .box::-webkit-input-placeholder{
    text-transform: capitalize;
}
.form .box::-moz-placeholder{
    text-transform: capitalize;
}
.form .box:-ms-input-placeholder{
    text-transform: capitalize;
}
.form .box::placeholder{
    text-transform: capitalize;
}

.form .box:focus{
    border-color: var(--main-color);
}

.form textarea{
    resize: none;
    height: 20rem;
}

.form .btn{
    width: 100%;
    overflow: hidden;
    margin-top: 1rem;
}

/*----- 9- Dark Form CSS -----*/
.dark-form input:-webkit-autofill,
.dark-form input:-webkit-autofill:hover,
.dark-form input:-webkit-autofill:focus,
.dark-form input:-webkit-autofill:active {
    -webkit-text-fill-color: var(--white);
    -webkit-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;
}

.dark-form .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dark-form .input-field{
    border: 0.15rem solid rgba(255, 255, 255, 0.9);
    padding: 1.5rem;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    border-radius: var(--border-radius-1);
}

.dark-form .input-box > .input-field{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem; 
}

.dark-form .input-field:hover{
    border-color: var(--main-color);
}

.dark-form .input-field label {
    color: var(--main-color);
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.dark-form .box{
    width: 100%;
    font-size: 1.6rem;
    color: var(--white);
    background-color: transparent;
    text-transform: none;
}

.dark-form .box::-webkit-input-placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form .box::-moz-placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form .box:-ms-input-placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form .box::placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form textarea{
    height: 15rem;
    resize: none;
}

.dark-form .text-area {
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.dark-form .select option{
    color: var(--grey);
}

.dark-form .select{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 20rem;
            flex: 1 1 20rem;
    border: 0.15rem solid rgba(255, 255, 255, 0.9);
    border-radius: var(--border-radius-1);
    width: 100%;
}

.dark-form .select-container{
    height: 100%;
    min-width: 100%;
    position: relative;
}

.dark-form .select-box{
    -webkit-appearance: none;
        -moz-appearance: none;
            appearance: none;
    width: 100%;
    color: var(--white);
    background-color: transparent;
    padding: 1.5rem;
    font-size: 1.6rem;
    padding-left: 4.5rem;
}

.dark-form .select-container label{
    position: absolute;
    height: 100%;
    top: 0;
    left: 1.5rem;
    color: var(--main-color);
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.dark-form .select-container .icon-container{
    width: 4rem;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
            pointer-events: none;
}

.dark-form .select-container .icon-container i{
    font-size: 1.6rem;
    color: var(--white);
}

.dark-form ::-webkit-calendar-picker-indicator {
    -webkit-filter: invert(1);
            filter: invert(1);
}

.dark-form .alert {
    min-height: 2.5rem;
    display: inline-block;
    font-size: 1.6rem;
    color: var(--white);
    padding-top: 0.6rem;
}

/*----- 10- Swiper Pagination CSS -----*/
.swiper-pagination-bullet{ 
    height: 1rem;
    width: 1rem;
    border-radius: 0rem;
    background: var(--white);
    opacity: 0.7;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.swiper-pagination-bullet-active{
    width: 3rem;
    background: var(--main-color) !important;
    opacity: 0.9;
}

/*----- 11- Swiper Navigation CSS -----*/
.swiper-button-next,
.swiper-button-prev{
    background-color: var(--main-color);
    font-size: 1rem;
    height: 6rem;
    width: 6rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.swiper-button-next::after,
.swiper-button-prev::after{
    font-size: 2rem;
    font-weight: bold;
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center; 
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
  
.swiper-button-next:hover,
.swiper-button-prev:hover{
    background: var(--black);
}

/*----- 12- CheckBox CSS -----*/
.checkbox-label {
    color: var(--white);
    position: relative;
    padding-left: 2.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.checkbox-label label{
    cursor: pointer;
}

.checkbox-label input{
    position: absolute;
    opacity: 0;
    z-index: -1;
}

.checkbox-indicator{
    position: absolute;
    top: 0.2rem;
    left: 0;
    height: 1.6rem;
    width: 1.6rem;
    background: transparent;
    outline: 0.15rem solid var(--white);
    border-radius: 0.2rem;
}

.checkbox-label input:checked ~ 
.checkbox-indicator {
    background: var(--main-color);
    outline-color: var(--main-color);
}

.checkbox-indicator:after {
    content: '';
    position: absolute;
    left: 0.5rem;
    top: 0.2rem;
    width: 0.3rem;
    height: 0.8rem;
    border: solid var(--white);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    display: none;
}

.checkbox-label input:checked ~ 
.checkbox-indicator:after {
    display: initial;
}

/*----- 13- Sidebar Heading CSS -----*/
.sidebar-heading h2{
    position: relative;
    font-size: 2rem;
    font-weight: 600;
    word-spacing: 1px;
    color: var(--black);
    letter-spacing: 0.1rem;
    line-height: 1;
    margin-bottom: 1.5rem;
    padding-bottom: 1.2rem;
}

.sidebar-heading h2:before{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 10rem;
    height: 2px;
    content: "";
    background-color: var(--main-color);
}

/*----- 14- Sidebar CSS -----*/
/*
1- Search
2- Category
3- Recent Items
4- Tags
*/

.sidebar{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 40rem;
        flex: 0 0 40rem;
}

.sidebar .sidebar-item{
    margin-bottom: 1.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-1);
    border-bottom: var(--custom-border);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 1.5rem;
}

/*-- 1- Search --*/
.sidebar .search .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    border-radius:  var(--border-radius-1);
}

.sidebar .search .input-box input{
    width: 100%;
    padding: 1.5rem; 
    overflow: hidden;
    border: 0.1rem solid rgba(0, 0, 0, 0.5);
    border-top-left-radius: var(--border-radius-1);
    border-bottom-left-radius: var(--border-radius-1);
}

.sidebar .search .input-box input:focus{
    border-color: var(--main-color);
}

.sidebar .search .input-box button{
    color: var(--white);
    background-color: var(--black);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.5rem 2rem;
    font-size: 1.8rem;
    cursor: pointer;
}

.sidebar .search .input-box button:hover{
    background-color: var(--main-color);
}

/*-- 2- Category --*/
.sidebar .category .item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding: 0.7rem 0 0.7rem 2rem;
}

.sidebar .category .item:last-child{
    margin-bottom: 0;
}

.sidebar .category .item span{
    font-size: 1.7rem;
    color: var(--black);
    font-weight: 400;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.sidebar .category .item span i{
    font-size: 1.6rem;
    color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.sidebar .category .item p{
    color: var(--grey);
    font-size: 1.5rem;
}

.sidebar .category .acc-item > .item:hover span{
    color: #fbfdff;
}

/*-- 手风琴二级菜单 --*/
.sidebar .category .acc-item > .item{
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1rem;
    padding: 0.7rem 0 0.7rem 2rem;
}

.sidebar .category .acc-icon{
    font-size: 1.4rem;
    color: var(--grey);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
}

.sidebar .category .acc-item.active .acc-icon{
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    color: var(--main-color);
}

.sidebar .category .acc-sub{
    display: none;
    margin: 0 0 1rem 2rem;
    padding-left: 1.2rem;
    border-left: 0.2rem solid var(--main-color);
}

.sidebar .category .acc-item.active .acc-sub{
    display: block;
}

.sidebar .category .acc-sub .sub-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.8rem;
    padding: 0.6rem 0;
    font-size: 1.5rem;
    color: var(--grey);
    -webkit-transition: color 0.3s ease, padding-left 0.3s ease;
    transition: color 0.3s ease, padding-left 0.3s ease;
}

.sidebar .category .acc-sub .sub-item i{
    font-size: 1.2rem;
    color: var(--main-color);
}

.sidebar .category .acc-sub .sub-item:hover,
.sidebar .category .acc-sub .sub-item.active{
    color: var(--main-color);
    padding-left: 0.5rem;
}

/*-- 3- Post Items --*/
.sidebar .post-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.sidebar .post-item:last-child{
    margin-bottom: 0;
}

.sidebar .post-item img{
    height: 8rem;
    width: 8rem;
    border-radius: var(--border-radius-1);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.sidebar .recent-posts .post-item img{
    width: 10rem;
}

.sidebar .post-item a{
    display: inline-block;
    font-weight: 600;
    font-size: 2rem;
    color: var(--black);
    line-height: 1.2;
}

.sidebar .recent-posts .post-item a{
    font-size: 1.8rem;
}

.sidebar .post-item a:hover{
    color: var(--main-color);
}

.sidebar .post-item .price p{
    font-size: 1.7rem;
    font-weight: bold;
    color: var(--main-color);
}

.sidebar .post-item .price span{
    font-size: 1.3rem;
    font-weight: 400;
    color: var(--grey);
    text-decoration: line-through;
    padding-left: 0.2rem;
}

/*-- 4- Tags --*/
.sidebar .tags .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.7rem;
}

.sidebar .tag-item{
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    font-size: 1.7rem;
    padding: 0.8rem 2rem;
    border-radius: var(--border-radius-1);
}

.sidebar .tag-item:hover,
.sidebar .tag-item.active{
    background: -webkit-linear-gradient(45deg, var(--secondary-color), var(--accent-color));
    background: linear-gradient(45deg, var(--secondary-color), var(--accent-color));
    cursor: pointer;
}

/*------------------------------ (00)- Global CSS (End) ------------------------------*/



/*------------------------------ (01)- Home (Start) ------------------------------*/

/*----- 1- Home-----*/
.home{
    padding: 0;
    position: relative;
    height: 60rem;
}

.home .content{ 
    padding: 10rem 5%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4));
    background:         linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4));
}

.home .content .text{
    max-width: 70rem;
    margin-top: 10rem;
}

.home .content h5 {
    letter-spacing: 0.1rem;
    display: inline-block;
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    color: var(--accent-color);
    background: -webkit-linear-gradient(right, var(--main-color), var(--accent-color));
    background: linear-gradient(270deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 0.5rem;
    position: relative;
    padding-bottom: 0.1rem;
    z-index: 1;
}

.home .content h5:after {
    content: "";
    position: absolute;
    bottom: 0%;
    left: 0%;
    height: 0.4rem;
    width: 100%;
    z-index: -1;
    border-radius: var(--border-radius-2);
    background-image: -webkit-linear-gradient(306deg, var(--main-color), var(--accent-color));
    background-image: linear-gradient(144deg, var(--main-color), var(--accent-color));
}

.home .content h5 i {
    padding-right: 0.5rem;
}

.home .content h1{
    font-size: 6.5rem;
    font-weight: 600;
    margin: 1.5rem 0;
    color: var(--white);
    letter-spacing: 0.1rem;
    line-height: 1.2;
}

.home .content h4 {
    font-size: 2rem;
    color: var(--white);
    margin-bottom: 3rem;
}

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

.counter {
    position: absolute;
    bottom: 0;
    right: 0;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; 
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 4rem;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color), var(--secondary-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color), var(--secondary-color));
    padding: 2rem 5rem;
    border-top-left-radius: var(--border-radius-2);
    overflow: hidden;
}

.counter .counter-item h3{
    color: var(--white);
    font-size: 6rem;
    font-weight: 600;
    margin-bottom: 1rem;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.counter .counter-item span{
    display: block;
    font-size: 2rem;
    font-weight: 500;
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/*----- 2- Feature -----*/
.feature{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
}

.feature-item {
    padding: 3rem;
    border-radius: var(--border-radius-2);
    background-color: var(--light-grey);
    margin-top: 2.5rem;
    padding-top: 7rem;
    position: relative;
    -webkit-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.feature-item:hover{
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem);
    -webkit-box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.15);
            box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.15);
}
.feature-item:hover i{
    -webkit-transform: translateY(-2.5rem) scale(1.25);
            transform: translateY(-2.5rem) scale(1.25);
}

.feature-item i {
    position: absolute;
    top: 0;
    left: 3rem;
    transform: translateY(-2.5rem);
    color: var(--white);
    -webkit-text-stroke: 1.5px var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    font-size: 3rem;
    width: 8rem;
    height: 8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.feature-item h3 {
    font-size: 2.5rem;
    padding-bottom: 1rem;
    color: var(--black);
}

.feature-item p {
    color: var(--grey);
}

/*----- 3- Counter -----*/
.counting{
    padding: 4rem 5%;
    margin: 1rem 0;
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.6)), url("../images/Background/Counter.jpg");
    background:         linear-gradient(180deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.6)), url("../images/Background/Counter.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.counting{
    display: -webkit-box; 
    display: -ms-flexbox; 
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; 
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; 
    gap: 4rem;
}

.counting .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem;
        flex: 1 1 25rem;
    text-align: center;
    padding: 3rem 2rem;
    border-radius: 1.5rem;
}

.counting .box i{
    margin: 0 auto;
    margin-bottom: 1rem;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 3.5rem;
    width: 9rem;
    height: 9rem;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
}

.counting .box .count{
    color: var(--white);
    font-size: 4.5rem;
    font-weight: 500;
}

.counting .box h3{
    font-size: 1.8rem;
    color: var(--white);
    font-weight: 400;
}

/*----- 4- Section Slider -----*/
.section-slider{
    overflow: hidden;
    padding: 0.5rem;
}

/*----- 5- Home Schedule -----*/
.schedule.main {
    background: -webkit-linear-gradient(rgba(0,0,0,0.7),rgba(0,0,0,0.8)),url("../images/Background/Schedule.jpg");
    background: linear-gradient(rgba(0,0,0,0.7),rgba(0,0,0,0.8)),url("../images/Background/Schedule.jpg");
    background-position: center;
    background-size: cover;
}

.schedule.main .tab-buttons button {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.schedule.main .tab-buttons button:hover,
.schedule.main .tab-buttons button.active {
    background: -webkit-linear-gradient(45deg, var(--secondary-color),  var(--accent-color));
    background: linear-gradient(45deg, var(--secondary-color),  var(--accent-color));             
    cursor: pointer;
}

.schedule.main .session {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 0.1rem solid rgba(255, 255, 255, 0.2);
}

/*----- 6- Speaker Slider -----*/
.speaker-slider{
    overflow: hidden;
    padding: 0.5rem;
}

/*----- 7- Why Choose Us -----*/
.why-us.main {
    background: -webkit-linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0, 0.8)),url("../images/Background/WhyUs.jpg");
    background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0, 0.8)),url("../images/Background/WhyUs.jpg");
    background-position: center;
    background-size: cover;
}

.why-us.main .heading p {
    color: var(--white);
}

/*----- 8- Banner -----*/
.banner{
    width: 100%;
    padding: 8rem 5%;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: -webkit-linear-gradient(135deg, #0b1230 0%, #0d1b3e 55%, #1a1140 100%);
    background:         linear-gradient(135deg, #0b1230 0%, #0d1b3e 55%, #1a1140 100%);
}

.banner-canvas{
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
}

.banner-glow{
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
}

.banner-glow span{
    position: absolute;
    display: block;
    border-radius: 50%;
    -webkit-filter: blur(70px);
            filter: blur(70px);
    opacity: 0.55;
    will-change: transform;
}

.banner-glow span:nth-child(1){
    width: 40rem; height: 40rem;
    left: -8rem; top: -12rem;
    background: radial-gradient(circle, rgba(56,182,255,0.9), transparent 70%);
    -webkit-animation: bannerFloat1 16s ease-in-out infinite;
            animation: bannerFloat1 16s ease-in-out infinite;
}
.banner-glow span:nth-child(2){
    width: 36rem; height: 36rem;
    right: -6rem; top: -8rem;
    background: radial-gradient(circle, rgba(82,113,255,0.85), transparent 70%);
    -webkit-animation: bannerFloat2 20s ease-in-out infinite;
            animation: bannerFloat2 20s ease-in-out infinite;
}
.banner-glow span:nth-child(3){
    width: 30rem; height: 30rem;
    right: 20%; bottom: -14rem;
    background: radial-gradient(circle, rgba(255,102,196,0.7), transparent 70%);
    -webkit-animation: bannerFloat3 24s ease-in-out infinite;
            animation: bannerFloat3 24s ease-in-out infinite;
}

@-webkit-keyframes bannerFloat1 { 0%,100%{ -webkit-transform: translate(0,0); transform: translate(0,0);} 50%{ -webkit-transform: translate(6rem,4rem); transform: translate(6rem,4rem);} }
@keyframes bannerFloat1 { 0%,100%{ transform: translate(0,0);} 50%{ transform: translate(6rem,4rem);} }
@-webkit-keyframes bannerFloat2 { 0%,100%{ -webkit-transform: translate(0,0); transform: translate(0,0);} 50%{ -webkit-transform: translate(-5rem,5rem); transform: translate(-5rem,5rem);} }
@keyframes bannerFloat2 { 0%,100%{ transform: translate(0,0);} 50%{ transform: translate(-5rem,5rem);} }
@-webkit-keyframes bannerFloat3 { 0%,100%{ -webkit-transform: translate(0,0); transform: translate(0,0);} 50%{ -webkit-transform: translate(-4rem,-6rem); transform: translate(-4rem,-6rem);} }
@keyframes bannerFloat3 { 0%,100%{ transform: translate(0,0);} 50%{ transform: translate(-4rem,-6rem);} }

.banner .content{
    width: 70rem;
    position: relative;
    z-index: 2;
}

.banner .heading {
    -webkit-box-align: start;
        -ms-flex-align: start;
                -ms-grid-row-align: flex-start;
            align-items: flex-start;
}

.banner h2{
    font-size: 4.5rem;
    font-weight: 600;
    line-height: 1.3;
    padding-top: 1rem;
    letter-spacing: 0.1rem;
    color: var(--white);
    text-align: left;
}

/*----- 9- Testimonial -----*/
.testimonial-bg{
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6)), url("../images/Background/Testimonials.jpg");
    background:         linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6)), url("../images/Background/Testimonials.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

/*----- 10- Newsletter -----*/
.newsletter-subscribe{
    width: 100%;
    padding: 6rem 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-image: url("../images/Background/Newsletter.jpg");
    background-position: center;
    background-size: cover;
}

.newsletter-subscribe .content{
    width: 70rem;
    text-align: center;
    padding-top: 3rem;
}

.newsletter-subscribe .heading {
    padding: 0;
}

.newsletter-subscribe h2{
    font-size: 4.5rem;
    font-weight: 600;
    color: var(--white);
}

.newsletter-subscribe p{
    letter-spacing: 0.15rem;
    font-weight: 500;
    color: var(--white);
    padding-top: 1rem;
    padding-bottom: 2rem;
}

.newsletter-subscribe .box-container{
    max-width: 60rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    padding: 0.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-2);
}

.newsletter-subscribe input{
    padding: 0rem 1.5rem;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
    color: var(--black);
    background-color: var(--white);
    text-transform: none;
    font-size: 1.5rem;
}

.newsletter-form .alert {
    display: block;
    font-size: 1.8rem;
    color: var(--white);
    padding-top: 1rem;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

/*----- 11- Latest Blogs -----*/
.blog.main .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

/*----- 12- Sponsor Slider -----*/
.sponsors .sponsor-slider{
    overflow: hidden;
}

/*------------------------------ (01)-Home (End) ------------------------------*/



/*------------------------------ (02)-About (Start) ------------------------------*/
.about-us{
    padding: 0;
}

/*----- 1- About Us -----*/
.about{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
}

.about .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 42rem;
        flex: 1 1 42rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    position: relative;
}

.about .sub-image{
    height: 48rem;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
        flex: 1 1 15rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
}

.about .image img{
    width: 100%;
    border-radius: var(--border-radius-2);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.about .sub-image.one img:nth-child(1),
.about .sub-image.two img:nth-child(2){
    height: 55%;
}

.about .sub-image.two img:nth-child(1),
.about .sub-image.one img:nth-child(2){
    height: 45%;
}

.about .image .experience {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 20rem;
    height: 20rem;
    padding: 2rem;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    color: var(--white);
    font-size: 2rem;
}

.about .image .experience span {
    font-size: 6rem;
    font-weight: 600;
    color: var(--white);
}

.about .content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 40rem;
        flex: 1 1 40rem;
}

.about .heading {
    -webkit-box-align: start;
        -ms-flex-align: start;
                -ms-grid-row-align: flex-start;
            align-items: flex-start;
}

.about .heading h2 {
    text-align: left;
}

.about .company-intro{
    margin: 6rem auto;
}

.about .company-intro p{
    color: var(--grey);
    line-height: 1.8;
    margin-bottom: 1rem;
}

/*----- 2- Why Choose Us -----*/
.why-us .heading {
    max-width: 70rem;
    margin: 0 auto;
}

.why-us .heading p {
    margin-top: 1rem;
    color: var(--grey);
}

.why-us .box-container {
    text-align: center;
}

.why-us .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4rem;
    margin-top: 3rem;
}

.why-us .image {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 24rem;
    flex: 1 1 24rem;
    margin: auto;
}

.whyus-section-points {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 31rem;
    flex: 1 1 31rem;
}

.whyus-section-points li {
    margin-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.5rem;
    overflow: hidden;
    padding: 2rem;
    border-radius: var(--border-radius-1);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
}

.whyus-section-points li:last-child {
    margin-bottom: 0;
}

.whyus-section-points i {
    color: transparent;
    -webkit-text-stroke: 0.1rem var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 4rem;
    width: 5rem;
    height: 5rem;
}

.whyus-section-points .text {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 15rem;
            flex: 1 1 15rem;
    text-align: left;
}

.whyus-section-points h5 {
    font-size: 2.2rem;
    margin-bottom: 0.5rem;
    color: var(--white);
}

.whyus-section-points p {
    font-size: 1.6rem;
    color: var(--white);
}


/*----- 3- Team -----*/
.team .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
}

.team-item {
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-1);
    position: relative;
}

.team-item .image{
    height: 40rem;
    width: 100%;
}

.team-item .content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    overflow: hidden;
    -webkit-clip-path: polygon(0 0, 89% 16%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 89% 16%, 100% 100%, 0% 100%);
    background: -webkit-linear-gradient(left, var(--main-color), var(--secondary-color));
    background: linear-gradient(90deg, var(--main-color), var(--secondary-color));
    padding-top: 1rem;
}

.team-item .text {
    height: 100%;
    padding: 1.5rem 2rem;
    padding-top: 3rem;
    -webkit-clip-path: polygon(0 0, 84% 19%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 84% 19%, 100% 100%, 0% 100%);
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
}

.team-item .content h3 {
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
}

.team-item .content h3:hover {
    color: var(--black);
}

.team-item .content p {
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--white);
}

.team-item .icon-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 0.5rem;
    gap: 0.5rem;
}

.team-item .icon-container a{
    height: 3rem;
    width: 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;  
    font-size: 1.8rem;
    color: var(--white);
}

.team-item .icon-container a:hover{
    color: var(--black);
}

/*----- 4- Team Single -----*/
.team-single .team-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 3rem;
    padding-bottom: 4rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.team-single .team-image{
    width: 40rem;
    height: 50rem;
    border-radius: var(--border-radius-2);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.team-single .information{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50rem;
        flex: 1 1 50rem;
}

.team-single .information h3{
    color: var(--black);
    font-size: 3rem;
    font-weight: 600;
    padding-bottom: 0.5rem;
}

.team-single .information h5{
    color: var(--main-color);
    font-size: 1.8rem;
    font-weight: 500;
    padding-bottom: 1.5rem;
}

.team-single .information .team-about{
    padding-top: 1.5rem;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.team-single .text{
    font-size: 1.6rem;
    letter-spacing: 0.2px;
    font-weight: 400;
    color: var(--grey);
    line-height: 1.7;
}

.team-single .team-personal-info{
    padding-top: 2rem;
    padding-bottom: 1rem;
}

.team-single .team-personal-info li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-bottom: 1.5rem;
}

.team-single .team-personal-info .title{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.team-single .team-personal-info i{
    font-size: 1.8rem;
    color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.team-single .team-personal-info h6{
    font-size: 2rem;
    color: var(--black);
}

.team-single .team-personal-info span{
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--grey);
    text-transform: none;
}

.team-single .icon-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.team-single .icon-container a{
    height: 4.5rem;
    width: 4.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;  
    font-size: 1.8rem;
    color: var(--white);
    border-radius: var(--border-radius-3);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
}

.team-single .icon-container a:hover{
    background: -webkit-linear-gradient(45deg, var(--secondary-color), var(--accent-color));
    background: linear-gradient(45deg, var(--secondary-color), var(--accent-color));
}

.team-single .page-info{
    background-color: transparent;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
}

.team-single .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    padding-top: 2rem;
}

.team-single h4{
    font-size: 3rem;
    font-weight: 500;
    color: var(--black);
    padding-bottom: 0.5rem;
}

.team-single .sub-section{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 42rem;
        flex: 1 1 42rem;
}

.skills .box{
    padding: 1rem 0;
}

.skills .box h3{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0.7rem 0;
    font-size: 1.7rem;
    color: var(--black);
    font-weight: 400;
}

.skills .box .progress-bar{
    width: 100%;
    background: #ddd;
    overflow: hidden;
    height: 1rem;
    border-radius: 50rem;
}

.skills .box .progress-bar span{
    display: block;
    height: 100%;
    background: var(--main-color);
    border-radius: var(--border-radius-1);
}

/*----- 5- Testimonials -----*/
.testimonial-slider{
    overflow: hidden;
    position: relative;
    padding-bottom: 4rem;
}

.testimonial .swiper-pagination-bullet{
    background: #bbb;
    opacity: 0.9;
}

.testi-item{
    background-color: var(--black);
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-1);
    overflow: hidden;
    border: 0.1rem solid rgba(255, 255, 255, 0.25);
}

.testi-item .detail {
    padding: 4rem;
}

.testi-item p{
    padding-bottom: 2rem;
    color: var(--light-grey);
}

.testi-item .rating i {
    font-size: 1.8rem;
    color: var(--main-color);
}

.testi-item .intro {
    width: 100%;
    padding: 3rem 4rem;
    position: relative;
    z-index: 1; /* create stacking context */
}

.testi-item .intro:before {
    content: "";
    position: absolute;
    bottom: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    -webkit-clip-path: polygon(0 0, 94% 7%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 94% 7%, 100% 100%, 0% 100%);
    background: -webkit-linear-gradient(left, var(--main-color), var(--secondary-color));
    background: linear-gradient(90deg, var(--main-color), var(--secondary-color));
    z-index: 0; /* stays behind text */
}

.testi-item .intro:after {
    content: "";
    position: absolute;
    bottom: 0%;
    left: 0%;
    width: 100%;
    height: 95%;
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(0 0, 91% 14%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 91% 14%, 100% 100%, 0% 100%);
    z-index: 0; /* stays behind text */
}

.testi-item h4 {
    font-size: 2.6rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 0.5rem;
    position: relative; /* ensure it's on top */
    z-index: 2; /* above pseudo-element */
}

.testi-item h6 {
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--white);
    position: relative;
    z-index: 2;
}

.testi-item img {
    position: absolute;
    top: 0;
    right: 6rem;
    -webkit-transform: translateY(-3rem);
    transform: translateY(-3rem);
    height: 11rem;
    width: 10rem;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-1);
    z-index: 2;
}

/*----- 6- Faqs -----*/
.faq .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; 
}

.faq .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30rem;
        flex: 1 1 30rem;
    height: 60rem;
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
}

.accordion-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 55rem;
        flex: 1 1 55rem;
}

.faq .accordion {
    background: var(--white);
    margin-bottom: 1.5rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-1);
    overflow: hidden;
}

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

.faq .accordion .accordion-heading {
    padding: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    background-color: var(--black);
}

.accordion.active .accordion-heading {
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
}

.faq .accordion .accordion-heading h3 {
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color);
}

.accordion.active .accordion-heading h3 {
    background: -webkit-linear-gradient(left, var(--white), var(--white));
    background: linear-gradient(90deg, var(--white), var(--white));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--white);
}

.faq .accordion .accordion-heading i {
    height: 4rem;
    width: 4rem;
    border-radius: var(--border-radius-3);
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--accent-color), var(--secondary-color));
    background: linear-gradient(45deg, var(--accent-color), var(--secondary-color));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.faq .accordion-content {
    padding: 2rem;
    font-size: 1.5rem;
    line-height: 2;
    color: var(--grey);
    display: none;
}

.faq .accordion.active .accordion-content {
    display: block;
}

/*------------------------------ (02)-About (End) ------------------------------*/



/*------------------------------ (03)-Pages (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Tab Information -----*/
.tab-buttons{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style-type: none;
    gap: 1rem;
    margin-bottom: 2rem;
}

.tab-buttons .button{
    font-size: 1.6rem;
    font-weight: 500;
    padding: 1.5rem 3rem;
    color: var(--white);
    background-color: var(--black);
    text-align: center;
    border-radius: var(--border-radius-1);
}

.tab-buttons .button:hover,
.tab-buttons .button.active{
    background: -webkit-linear-gradient(45deg, var(--main-color),  var(--accent-color));
    background: linear-gradient(45deg, var(--main-color),  var(--accent-color));      
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    cursor: pointer;
}

.tab-sections .tab-section{
    display: none;
}

.tab-sections .tab-section.active{
    display: block;
    margin-top: 2rem;
}

/*----- 02- Page Single -----*/
.page-single{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
}

.service-single .sidebar .sidebar-item{
    margin-bottom: 0;
}

.page-info{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem; 
        flex: 1 1 75rem;
}

.page-info .image{
    height: 40rem;
    position: relative;
}

.page-single .image img{
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.page-info .content{
    padding-top: 2rem;
}

.page-info .main-heading{
    display: inline-block;
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--black);
    text-shadow: 1px 1px 8px rgba(0,0,0, 0.2);
    padding-bottom: 1rem;
}
.page-info .main-heading-center{
    display: block;
    text-align: center;
}

.page-info .important{
    color: var(--black) !important;
    font-weight: 600;
}

.page-info p{
    padding-bottom: 1rem;
}

.page-info .page-gallery{ 
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
    padding: 2rem 0;
}

.page-info .page-gallery img{
    cursor: pointer;
    border-radius: var(--border-radius-1);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.page-info .sub-heading{
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--black);
    padding-bottom: 0.5rem;
}

.page-info .sub-section{
    padding-top: 2rem;
}

.page-info .sub-section p{
    margin-bottom: -1rem;
}

.page-info .sub-section ul li{
    padding-top: 1.5rem;
    font-size: 1.5rem;
    color: var(--grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1rem;
}

.page-info .sub-section ul li p{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.page-info .sub-section strong{
    color: var(--black);
}

.page-info .sub-section ul i{ 
    color: var(--main-color);
    font-size: 1.4rem;
    height: 1.8rem;
    width: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.page-single .reviews h2,
.page-single .comments h2{
    font-size: 3rem; 
    color: var(--black);
    padding-bottom: 2rem;
}

.page-single .leave-reply h3{
    font-size: 3rem; 
    color: var(--black); 
    padding-bottom: 2rem;
}

/*----- 03- Page Sidebar -----*/
.page-sidebar{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem; 
        flex: 1 1 25rem;  
    padding: 4rem;
    border-radius: var(--border-radius-2);
    background: var(--black);
    border-bottom: var(--custom-border);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.page-sidebar .sub-heading{
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 2rem;
    line-height: 1;
}

.page-sidebar .detail-item{
    padding-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
}

.page-sidebar .detail-item:last-child{
    padding-bottom: 0;
}

.page-sidebar .detail-item i{
    height: 2rem;
    width: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    font-size: 1.8rem;
    color: var(--main-color);
}

.page-sidebar .detail-item h3{
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1;
    padding-bottom: 0.8rem;
}

.page-sidebar .detail-item p{
    font-weight: 400;
    color: var(--light-grey);
    line-height: 1.3;
    text-transform: none;
}

.page-sidebar .btn{
    margin-top: 3rem;
}

/*----- 4- Custom Form -----*/
.custom-form .box-container{
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    margin-bottom: 2rem;
    margin-top: 6rem;
}

.custom-form .content{
    -webkit-transform: translateY(-6rem);
            transform: translateY(-6rem);
    width: 70rem;
    margin: 0 auto;
    background-color: var(--black);
    padding: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: var(--border-radius-2);
    text-align: center;
}

.custom-form .content form{
    width: 100%;
}

.custom-form form .alert{
    display: inline-block;
    font-size: 2rem;
    color: var(--main-color);
    padding-left: 1rem;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

/*--------------- PAGES ---------------*/

/*----- 1- Gallery -----*/
.gallery .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
            grid-auto-rows: 26rem;
    gap: 1.5rem;
    grid-template-areas: 
        "gallery-1 gallery-2 gallery-3"
        "gallery-4 gallery-2 gallery-5"
        "gallery-6 gallery-7 gallery-9"
        "gallery-6 gallery-8 gallery-9";
}

.gallery-item{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    position: relative;
    cursor: pointer;
    height: 26rem;
    border-radius: var(--border-radius-1);
    overflow: hidden;
}

/* Assign grid areas to Each Category Box */
.gallery-1 {
    grid-area: gallery-1;
}

.gallery-2 {
    grid-area: gallery-2;
    height: auto;
}

.gallery-3 {
    grid-area: gallery-3;
}

.gallery-4 {
    grid-area: gallery-4;
}

.gallery-5 {
    grid-area: gallery-5;
}

.gallery-6 {
    grid-area: gallery-6;
    height: auto;
}

.gallery-7 {
    grid-area: gallery-7;
}

.gallery-8 {
    grid-area: gallery-8;
}

.gallery-9 {
    grid-area: gallery-9;
    height: auto;
}

.gallery-item .content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center; 
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    -webkit-box-orient: vertical; 
    -webkit-box-direction: normal; 
        -ms-flex-direction: column; 
            flex-direction: column;
    position: absolute;
    left: 10%;
    top: 10%;
    opacity: 0;
    width: 80%;
    height: 80%;
    z-index: 1;
    -webkit-transition: all 0.4s ease-in-out 0s;
    -moz-transition: all 0.4s ease-in-out 0s;
    -o-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
    background: -webkit-linear-gradient(45deg, rgba(56, 182, 255, 0.9), rgba(81, 112, 255, 0.9), rgba(255, 102, 196, 0.9));
    background: linear-gradient(45deg, rgba(56, 182, 255, 0.9), rgba(81, 112, 255, 0.9), rgba(255, 102, 196, 0.9));
    border-radius: var(--border-radius-1);
}

.gallery-item:hover .content{
    opacity: 1;
}

.gallery-item a i{
    scale: 0;
    font-size: 4rem;
    color: var(--white);
}

.gallery-item:hover a i{
    scale: 1;
}

/*----- 2- Tickets -----*/
.tickets .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(33rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(33rem, 1fr));
    gap: 1rem;
}

.ticket-item{
    border-radius: var(--border-radius-2);
    position: relative;
    margin-top: 2.5rem;
}

.ticket-item img{
    height: 52rem;
    border-radius: var(--border-radius-2);
}

.ticket-item .content {
    position: absolute;
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: var(--border-radius-2);
}

.ticket-item .intro {
    padding: 2rem 4rem;
    padding-top: 8.5rem;
}

.ticket-item .intro .icon {
    position: absolute;
    top: 0%;
    left: 4rem;
    -webkit-transform: translateY(-2.5rem);
            transform: translateY(-2.5rem);
    width: 9rem;
    height: 9rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 3.5rem;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    background: -webkit-linear-gradient(45deg,var(--accent-color), var(--secondary-color));
    background: linear-gradient(45deg,var(--accent-color), var(--secondary-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}

.ticket-item .intro h3{
    color: var(--white);
    font-size: 3.5rem;
    font-weight: 600;
}

.ticket-item .intro .price{
    font-size: 2rem;
    color: var(--white);
    padding-top: 1rem;
}

.ticket-item .intro .price span{
    font-size: 6rem;
    font-weight: 600;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color), var(--secondary-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color), var(--secondary-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color);
}

.ticket-item .bottom {
    padding: 2rem 4rem;
    border-top: 0.15rem solid rgba(255, 255, 255, 0.3);
}

.ticket-item ul{ 
    padding-bottom: 2rem;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.ticket-item ul li{
    padding: 0.8rem 0;
    font-size: 1.6rem;
    color: var(--light-grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.7rem;
}

.ticket-item ul li .icon{
    height: 2.5rem;
    width: 2.5rem;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    border-radius: var(--border-radius-3);
    font-size: 1.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

/*----- 3- Services -----*/
.services .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

.service-item{
    border-radius: var(--border-radius-2);
    overflow: hidden;
    position: relative;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
}

.service-item .image {
    height: 38rem;
}

.service-item .content{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    padding: 2rem 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.service-item i{
    font-size: 3.5rem;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    width: 8rem;
    height: 8rem;
    margin-bottom: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.service-item h3{
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 1rem;
}

.service-item h3:hover{
    color: var(--main-color);
}

.service-item p{
    color: var(--light-grey);
    padding-bottom: 2.5rem;
}

/*----- 4- Service Single -----*/
.service-single .faq .accordion-container{
    padding-top: 0.5rem;
}

/*----- 5- Portfolio -----*/
.portfolio-item{
    width: 33.3%;
    padding: 0.8rem;
}

.portfolio-content{
    height: 30rem;
    position: relative;
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
}

.portfolio-item .content{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 90%;
    padding-top: 0.5rem;
    -webkit-clip-path: polygon(0 0, 94% 7%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 94% 7%, 100% 100%, 0% 100%);
    background: -webkit-linear-gradient(left, var(--main-color), var(--secondary-color));
    background: linear-gradient(90deg, var(--main-color), var(--secondary-color));
}

.portfolio-item .text {
    padding: 1.5rem 2rem;
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(0 0, 91% 14%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 91% 14%, 100% 100%, 0% 100%);
}

.portfolio-item .text p{
    font-weight: 500;
    font-size: 1.6rem;
    color: var(--white);
    text-transform: uppercase;
}

.portfolio-item .text h3{
    font-size: 2.6rem;
    font-weight: 600;
    color: var(--white);
}

.portfolio-item .text h3:hover{
    color: var(--black);
}

.portfolio-item .view{
    position: absolute;
    top: 2rem;
    right: 2rem;
    height: 5rem;
    width: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: var(--border-radius-3);
    background-image:         -webkit-linear-gradient(306deg, var(--accent-color), var(--secondary-color));
    background-image:         linear-gradient(144deg, var(--accent-color), var(--secondary-color));
    scale: 0;
    cursor: pointer;
}

.portfolio-item .view i{
    font-size: 2rem;
    color: var(--white);
}

.portfolio-item:hover .view{
    scale: 1;
}

.portfolio-item .view:hover {
    background-image: -webkit-linear-gradient(306deg, var(--main-color), var(--accent-color));
    background-image:         linear-gradient(144deg, var(--main-color), var(--accent-color));
}

/*----- 6- Portfolio Single -----*/



/*----- 7- Careers -----*/
.career{
    padding: 0;
}

.career .career-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
    padding: 3rem 5%;
}

.career .content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 42rem;
        flex: 1 1 42rem;
}

.career-intro .heading{
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.career-intro .heading h2{
    text-align: left;
}

.career .content p{
    padding-bottom: 1rem;
}

.career .career-features{
    padding-top: 0.5rem;
}

.career .career-features li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    padding-bottom: 1rem;
    font-size: 1.6rem;
}

.career .career-features i{
    color: var(--main-color);
}

.career .career-features span{
    color: var(--grey);
}

.career .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 42rem;
        flex: 1 1 42rem;
    border-radius: var(--border-radius-1);
    overflow: hidden;
    height: 45rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.career-benefits{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(30rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    gap: 3rem;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.7)), url("../images/Background/Career.jpg");
    background:         linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.7)), url("../images/Background/Career.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    padding: 6rem 5%;
}

.career-benefits .benefit-item {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--border-radius-1);
    overflow: hidden;
    padding: 3rem;
}

.career-benefits .benefit-item i{
    height: 8rem;
    width: 8rem;
    font-size: 3.5rem;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.career-benefits .benefit-item h3{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    padding: 1rem 0;
}

.career-benefits .benefit-item p{
    color: var(--light-grey);
}

.career-positions{
    padding: 3rem 5%;
}

.career-positions .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(45rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(45rem, 1fr));
    gap: 1.5rem;
}

.position-item{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    background-color: var(--black);
    border-radius: var(--border-radius-1);
    border-top: var(--custom-border);
    padding: 3rem;
    padding-top: 4.5rem;
    position: relative;
    margin-top: 3.5rem;
}

.position-item .label{
    position: absolute;
    top: -3rem;
    left: 3rem;
    color: var(--white);
    background-color: #f2f3f8;
    height: 8rem;
    width: 8rem;
    font-size: 1.6rem;
    font-weight: 600;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.position-item h3{
    font-size: 2.8rem;
    color: var(--white);
    padding: 2rem 0;
}

.position-item h3:hover{
    color: var(--main-color);
}

.position-item .details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
    margin-bottom: 2.5rem;
}

.position-item h5{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.position-item h5 i{
    font-size: 1.6rem;
    color: var(--main-color);
}

.position-item h5 span{
    font-size: 1.8rem;
    font-weight: 400;
    color: var(--white);
}

/*----- 8- Career Single -----*/


/*----- 9- Career Form -----*/
.career-form .box-container{
    background-image: url("../images/Background/Career-Form.jpg");
}

.career-form .alert{
    font-size: 2rem;
    color: var(--white);
    padding-left: 1rem;
}

/*----- 10- Venues -----*/
.venues .box-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

.venue-item{
    background-color: var(--white);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    position: relative;
}

.venue-item .image{
    height: 35rem;
} 

.venue-item .content{
    padding: 2rem;  
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.9));
    background: linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.9));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}

.venue-item h4 {
    font-size: 1.6rem;
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color);
    text-transform: uppercase;
}

.venue-item .main-heading{
    display: block;
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1.2;
    padding: 0.6rem 0;
}

.venue-item .main-heading:hover{
    color: var(--main-color);
}

.venue-item h3 {
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--white);
}

.venue-item h3 span {
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color);
    padding-right: 0.6rem;
}

/*----- 11- Venue Single -----*/

/*-- Google Map --*/
.venue-single iframe{
    width: 100%;
    height: 30rem;
    border-radius: var(--border-radius-2);
    margin-top: 1rem;
}

/*----- 12- Not Found -----*/
.not-found {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.not-found .box-container {
    width: 60rem;
    text-align: center;
    margin: 2rem 0;
}

.not-found img {
    width: 40rem;
}

.not-found h5 {
    font-size: 4rem;
    font-weight: 600;
    color: var(--black);
    line-height: 1.4;
    padding: 1rem 0;
}

.not-found h5 span {
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color), var(--secondary-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color), var(--secondary-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color);
}

.not-found p {
    padding-bottom: 2rem;
    color: var(--grey);
}

.not-found .btn i {
    padding-left: 1rem;
}

/*----- 13- Privacy Policy -----*/
.policy {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3rem;
}

.policy .policy-tab-buttons {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
    flex: 1 1 15rem;
}

.policy .category {
    display: block;
    padding: 2rem 2.5rem;
    font-size: 1.7rem;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--accent-color), var(--main-color));
    background: linear-gradient(45deg, var(--accent-color), var(--main-color));
    font-weight: 500;
    margin-bottom: 0.5rem;
    border-radius: var(--border-radius-1);
}

.policy .category:hover {
    background: -webkit-linear-gradient(45deg, var(--accent-color), var(--secondary-color));
    background: linear-gradient(45deg, var(--accent-color), var(--secondary-color));
}

.policy .category:last-child {
    margin-bottom: 0%;
}

.policy .policy-tabs {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 70rem;
    flex: 1 1 70rem;
}

.policy-item {
    margin-bottom: 1.5rem;
}

.policy-item h3 {
    padding-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    font-size: 2.5rem;
    color: var(--black);
}

.policy-item p {
    font-size: 1.5rem;
    line-height: 2;
    color: var(--grey);
}

.policy-item ul {
    list-style: none;
    padding-left: 1rem;
}

.policy-item ul li {
    padding-top: 1rem;
    font-size: 1.5rem;
    color: var(--grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.policy-item ul i {
    color: var(--main-color);
    font-size: 1.2rem;
    height: 1.8rem;
    width: 1rem;
    padding-top: 0.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/*----- 14- Terms & Condition -----*/


/*----- 15- Registration -----*/
.registration .box-container{
    background-image: url("../images/Background/Registration.jpg");
}

/*----- 16- Sponsors -----*/
.sponsors .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 4rem;
}

.sponsor-item{
    width: 20rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

/*------------------------------ (03)-Pages (End) ------------------------------*/




/*------------------------------ (04)-Schedule (Start) ------------------------------*/

/*----- 1- Schedule Tabs -----*/
.schedule .tab-buttons{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 2rem;
}

.schedule .tab-buttons button{
    padding: 1.5rem 3rem;
    letter-spacing: 0.1rem;
    font-size: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.schedule .tab-buttons button span {
    font-size: 1.6rem;
    font-weight: 500;
    padding-top: 0.5rem;
}

.session{
    border-radius: var(--border-radius-1);
    margin-bottom: 2rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    background: var(--black);
}

.session-intro{
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    padding: 2rem 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 22rem;
            flex: 1 1 22rem;
    text-align: center;
    color: var(--white);
}

.session-intro .session-timing{
    font-size: 1.8rem;
    font-weight: 500;
    padding-bottom: 1rem;
}

.session-intro .session-venue{
    font-size: 2rem;
}

.session .image {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 18rem;
            flex: 1 1 18rem;
    position: relative;
}

.session .number {
    position: absolute;
    bottom: 1rem;
    left: 1rem;
    width: 5rem;
    height: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.5rem;
    font-weight: 600;
    padding: 1rem;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--accent-color), var(--secondary-color));
    background: linear-gradient(45deg, var(--accent-color), var(--secondary-color));
    border-radius: var(--border-radius-3);
}

.session .session-topic{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 55rem;
            flex: 1 1 55rem;
    padding: 2rem;
}

.session .session-topic h3{
    font-size: 3rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--white);
    padding-bottom: 0.5rem;
}

.session .session-topic h3:hover{
    color: var(--main-color);
}

.session .session-topic p{
    color: var(--light-grey);
    margin-bottom: 1.5rem;
}

.session-speakers{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 3rem;
}

.session-speaker img{
    height: 5rem;
    width: 5rem;
    border-radius: var(--border-radius-3);
}

.session-speaker{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.session-speaker .text{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 10rem;
            flex: 1 1 10rem;
}

.session-speaker h4{
    font-size: 2rem;
    font-weight: 600;
    color: var(--white);
}

.session-speaker h6{
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--main-color);
}

/*----- 2- Schedule List -----*/


/*----- 3- Schedule Event -----*/
.event-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(42rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(42rem, 1fr));
    gap: 1rem;
}

.event-item {
    position: relative;
    border-radius: var(--border-radius-2);
    overflow: hidden;
}

.event-item .image {
    height: 32rem;
}

.event-item .content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    padding: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}

.event-item .detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    padding-bottom: 1rem;
}

.event-item .detail h3 {
    font-size: 1.6rem;
    color: var(--white);
}

.event-item .detail h3 i {
    color: transparent;
    -webkit-text-stroke: 1.5px var(--main-color);
    padding-right: 1rem;
}

.event-item .main-heading {
    display: block;
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1.2;
    padding-bottom: 1.5rem;
}

.event-item .main-heading:hover {
    color: var(--main-color);
}

/*----- 4- Schedule Single -----*/
.session-info iframe{
    width: 100%;
    height: 30rem;
    border-radius: var(--border-radius-1);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

/*------------------------------ (04)-Schedule (End) ------------------------------*/




/*------------------------------ (05)-Speaker (Start) ------------------------------*/

/*----- 1- Speakers -----*/
.speakers .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fill];
    grid-template-columns: repeat(auto-fill, minmax(25rem, 1fr));
    gap: 1.5rem;
}

/*----- 2- Speaker Single -----*/
.speaker-single .speaker-image{
    height: 60rem;
}

.speaker-single .schedule{
    padding-top: 2rem;
}

.speaker-single .day-container{
    padding-top: 1rem;
}

/*------------------------------ (05)-Speaker (End) ------------------------------*/




/*------------------------------ (06)-Blog (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Blog-Item -----*/
.blog-item{
    display: block;
    background-color: var(--white);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    position: relative;
}

.blog-item .image{
    position: relative;
    height: 35rem;
}

.blog-item .image img{
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: -webkit-transform 0.6s ease;
    transition: transform 0.6s ease;
}

.blog-item:hover .image img{
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
}

.blog-item .date{
    position: absolute; 
    top: 2rem;
    right: 2rem;
    width: 8rem;
    height: 8rem;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    font-size: 2rem;
    padding: 2rem;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 2;
}

.blog-item .content{
    padding: 2rem;  
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-linear-gradient(rgba(0,0,0,0.2),rgba(0,0,0,0.8));
    background: linear-gradient(rgba(0,0,0,0.2),rgba(0,0,0,0.8));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}

.blog-item .main-heading{
    display: block;
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1.2;
    padding-bottom: 1rem;
}

.blog-item:hover .main-heading{
    color: var(--main-color);
}

.blog-item .detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2rem;
}

.blog-item .detail h3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--white);
}

.blog-item .detail h3 i {
    width: 3rem;
    height: 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: transparent;
    -webkit-text-stroke: 1px var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    border-radius: var(--border-radius-3);
}

/*----- 02- Comments -----*/
.comment-item{
    padding-bottom: 1rem;
}

.comment-item:last-child{
    padding-bottom: 0;
}

.comment{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    gap: 2rem;
    padding-bottom: 2rem;
}

.comment .comment-image{
    height: 10rem;
    width: 10rem;
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
}

.comment .comment-content { 
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
}

.comment .comment-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem;
    padding-bottom: 0.5rem;
}

.comment .comment-text { 
    padding-top: 1rem;
    font-size: 1.5rem;
    color: var(--grey);
    line-height: 1.2;
}

.comment .comment-intro h3 {
    font-size: 2.2rem;
    font-weight: 700;
    color: var(--black);
}

.comment .comment-intro h6 {
    font-size: 1.5rem;
    font-weight: 500;
    color: var(--main-color);
    padding: 0.5rem 0;
}

.comment .rating {
    padding-top: 0.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
}

.comment .rating i {
    font-size: 1.6rem;
    color: var(--main-color);
}

.comment .rating h5 {
    font-size: 1.6rem;
    color: var(--black);
}

.comment .icon-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.3rem;
    color: var(--white);
    background-color: var(--main-color);
    padding: 0.7rem 1.5rem;
    border-radius: var(--border-radius-1);
    cursor: pointer;
}

.comment .icon-item i {
    color: var(--white);
    font-size: 2rem;
    padding-right: 0.5rem
}

.comment .icon-item span {
    color: var(--white);
    font-size: 1.6rem;
}

.comment .icon-item:hover{
    cursor: pointer;
    color: var(--black);
}

.comment.reply{
    margin-left: 12rem;
}

.comment.reply .comment-content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
}

/*----- 03- Pages-No -----*/
.pages-no{
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 2rem;
}

.pages-no .container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.pages-no .item{
    color: var(--white);
    background-color: var(--black);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    height: 5rem;
    width: 5rem;
    font-size: 2rem;
    border-radius: var(--border-radius-1);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.pages-no .item.active,
.pages-no .item:hover{
    cursor: pointer;
    background-color: var(--main-color);
}

.pages-no .numbers{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.pages-no .page-total{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--black);
    white-space: nowrap;
    margin-right: 1rem;
}

/*--------------- PAGES ---------------*/
.blog-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem;
        flex: 1 1 75rem;
}

/*----- 1- Blog Grid -----*/
.blog.grid{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1.5rem;
}

.blog-container.grid .blog-items{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

/*----- 2- Blog List -----*/
.blog.list{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}

.blog-container.list .blog-item{
    width: 100%;
    margin-top: 2rem;
}

.blog-container.list .blog-item:first-child{
    margin-top: 0rem;
}

/*----- 列表页五列网格（通栏无侧边栏） -----*/
.blog-grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(0, 1fr))[5];
        grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1.5rem;
    width: 100%;
}

/*----- 行业动态列表：每行 2 个，左图右文 -----*/
.blog-grid.news-mode{
    -ms-grid-columns: (minmax(0, 1fr))[2];
        grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
}

.blog-grid.news-mode .blog-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    min-height: 18rem;
}

.blog-grid.news-mode .blog-item .image{
    width: 22rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 22rem;
            flex: 0 0 22rem;
    min-width: 0;
    height: auto;
    min-height: 18rem;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #f7f8fa;
}

/* 图片完整显示（不裁剪）并居中 */
.blog-grid.news-mode .blog-item .image img{
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.blog-grid.news-mode .blog-item .content{
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 1.8rem;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.blog-grid.news-mode .blog-item .main-heading{
    font-size: 1.7rem;
    line-height: 1.45;
    text-align: left;
    margin-bottom: .8rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-grid.news-mode .news-meta{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.6rem;
    font-size: 1.3rem;
    color: #999999;
    margin-bottom: .6rem;
}

.blog-grid.news-mode .news-meta span{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: .5rem;
}

.blog-grid.news-mode .news-meta i{
    color: var(--main-color);
}

.blog-grid.news-mode .news-desc{
    font-size: 1.4rem;
    line-height: 1.7;
    color: #777777;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (max-width: 1100px){
    .blog-grid.news-mode{
        grid-template-columns: minmax(0, 1fr);
    }
}

.blog-container.list .blog-grid .blog-item{
    margin-top: 0;
    height: 100%;
}

/* 网格卡片：白底描边、图片在上、标题在下（参照老站列表样式） */
.blog-grid .blog-item{
    border: 1px solid #e8e8e8;
    border-radius: 0.4rem;
    -webkit-box-shadow: none;
            box-shadow: none;
}

.blog-grid .blog-item .image{
    height: 32rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.blog-grid .blog-item .image img{
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.blog-grid .blog-item:hover .image img{
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
}

.blog-grid .blog-item .content{
    position: static;
    width: auto;
    height: auto;
    background: none;
    display: block;
    padding: 1.2rem 1rem;
    text-align: center;
}

.blog-grid .blog-item .main-heading{
    color: #333333;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.5;
    padding-bottom: 0;
}

.blog-grid .blog-item:hover .main-heading{
    color: var(--main-color);
}

@media (max-width: 1200px){
    .blog-grid{
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 900px){
    .blog-grid{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 640px){
    .blog-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/*----- 3- Blog Single -----*/
/*
1- Blog Info
2- Comments
3- Leave A Reply
*/

.blog-single{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
}

/*-- 1- Blog Info --*/
.blog-info .date{
    position: absolute; 
    top: 2rem;
    right: 2rem;
    width: 8rem;
    height: 8rem;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    font-size: 2rem;
    padding: 2rem;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 2;
}

.blog-info .details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    padding-bottom: 2rem;
}

.blog-single .details h5{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; 
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.blog-single .details h5 i{
    font-size: 1.8rem;
    color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.blog-single .details h5 span{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--grey);
}

.blog-single .blog-info .imp{
    padding: 2rem;
    padding-top: 6.5rem;
    font-size: 1.8rem;
    font-weight: 600;
    font-style: italic;
    line-height: 1.8;
    color: var(--light-grey); 
    background-color: var(--black);
    margin-top: 3rem;
    margin-bottom: 2rem;
    border-radius: var(--border-radius-1);
    text-align: center;
    position: relative;
}

.blog-single .blog-info .imp .icon {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -2.5rem);
            transform: translate(-50%, -2.5rem);
    height: 8rem;
    width: 8rem;
    font-size: 3.5rem;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    margin: 0 auto;
    margin-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-single .blog-info .imp .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    padding-top: 1rem;
}

.blog-single .blog-info .imp .intro span{
    height: 0.2rem;
    width: 2rem;
    background-color: var(--main-color);
}

.blog-single .blog-info .imp .intro h6{
    font-size: 2rem;
    color: var(--main-color);
    font-style: normal;
}

.blog-info .end-details{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-top: 2rem;
    padding-bottom: 1rem;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.blog-info .tags, 
.blog-info .share{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.blog-info .tags span{
    color: var(--white);
    background-color: var(--main-color);
    border-radius: var(--border-radius-1);
    font-size: 1.6rem;
    padding: 0.8rem 2rem;
}

.blog-info .tags span:hover{
    background-color: var(--black);
}

.blog-info .share h3{
    color: var(--black);
    font-size: 1.6rem;
    padding-right: 1rem;
}

.blog-info .share i{
    height: 2rem;
    width: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    color: var(--grey);
    font-size: 1.6rem;
}

.blog-info .share i:hover{
    color: var(--main-color);
    cursor: pointer;
}

/*-- 2- Comments --*/
.blog-single .comments{
    margin: 3rem 0;
}


/*------------------------------ (07)-Blog (End) ------------------------------*/



/*------------------------------ (08)-Shop (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Filter -----*/
.filter .box-container{
    padding-top: 4rem;
}

.filter .slider{
    height: 5px;
    position: relative;
    background: #ddd;
    border-radius: 5px;
}

.filter .slider .progress{
    height: 100%;
    left: 25%;
    right: 25%;
    position: absolute;
    border-radius: 5px;
    background: var(--black);
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.range-input{
    position: relative;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.range-input input{
    position: absolute;
    width: 100%;
    height: 5px;
    top: -5px;
    background: none;
    pointer-events: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type="range"]::-webkit-slider-thumb{
    height: 17px;
    width: 17px;
    border-radius: var(--border-radius-3);
    background: var(--black);
    pointer-events: auto;
    -webkit-appearance: none;
    -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.05);
            box-shadow: 0 0 6px rgba(0,0,0,0.05);
}

input[type="range"]::-moz-range-thumb{
    height: 17px;
    width: 17px;
    border: none;
    border-radius: var(--border-radius-3);
    background: var(--black);
    pointer-events: auto;
    -moz-appearance: none;
    -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.05);
            box-shadow: 0 0 6px rgba(0,0,0,0.05);
}

.price-wrap{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    color: #242424;
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 400;
    margin-bottom: 0px;
    margin-top: 3rem;
}

.filter .price-input{
    width: 15rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 0.1rem solid rgba(0, 0, 0, 0.2);
    padding: 0.5rem;
}

.filter .price-input .field{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.2rem;
    width: 100%;
    height: 3rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.filter .field input{
    width: 100%;
    height: 100%;
    outline: none;
    font-size: 1.5rem;
    text-align: center;
    -moz-appearance: textfield;
    -webkit-appearance: textfield;
            appearance: textfield;
    color: var(--black);
    background-color: transparent;
}

.filter input[type="number"]::-webkit-outer-spin-button,
.filter input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

.filter .price-input .separator{
    width: 10rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.8rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/*----- 02- Shop Header -----*/
.showcase .intro{
    margin-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem;
    background-color: var(--white);
    border-radius: var(--border-radius-1);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 1rem 1.5rem;
}

.showcase .intro .showing{
    font-size: 1.6rem;
    color: var(--grey);
}

.showcase .intro .styles{
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
}

.showcase .intro .styles a{
    height: 3rem;
    width: 3rem;
    font-size: 2rem;
    color: var(--grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.showcase .intro .styles a:hover{
    color: var(--main-color);
}

.showcase .intro .sorting-type label{
    font-size: 1.6rem;
    color: var(--black);
    margin-right: 0.5rem;
}

.showcase .intro .sorting-type select{
    font-size: 1.4rem;
    color: var(--grey);
    background-color: transparent;
    border: 0.1rem solid rgba(0, 0, 0, 0.1);
    padding: 1rem;
}

/*----- 03- Quantity Box -----*/
.quantity.buttons_added {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid #ccc;
    height: 4rem;
    width: 11rem;
    margin: 0 auto;
}

.quantity.buttons_added .minus,
.quantity.buttons_added .plus {
    width: 3rem;
    color: var(--black);
    cursor:pointer;
    background-color: transparent;
}

.quantity.buttons_added .minus:hover,
.quantity.buttons_added .plus:hover {
    background: var(--main-color); 
    color: var(--white);
}

.quantity .input-text.qty {
    padding: 0 1rem;
    text-align: center;
    background-color: transparent;  
    border-right: 1px solid #ccc; 
    border-left: 1px solid #ccc; 
} 
  
.quantity input::-webkit-outer-spin-button,
.quantity input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0; 
}
    
.quantity.buttons_added .minus:focus,
.quantity.buttons_added .plus:focus {
    outline: none; 
}

/*----- 04- product-item -----*/
.product-item {
    background-color: var(--white);
    border-radius: var(--border-radius-1);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.product-item .options {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    transition: opacity 0.5s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    opacity: 0;
}

.product-item:hover .options {
    opacity: 1;
}

.product-item .options a {
    position: relative;
    height: 5rem;
    width: 5rem;
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    border-radius: var(--border-radius-3);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
            transition: opacity 0.3s ease, visibility 0.3s ease;
}

.product-item:hover .options a {
    opacity: 1;
    visibility: visible;
}

.product-item .options a:hover {
    background: -webkit-linear-gradient(45deg, var(--secondary-color), var(--accent-color));
    background: linear-gradient(45deg, var(--secondary-color), var(--accent-color));
}

.product-item .options a::after {
    content: attr(data-tooltip);
    position: absolute;
    top: 120%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    padding: 0.6rem 0.9rem;
    background: var(--white);
    color: var(--black);
    font-size: 1.2rem;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
            transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 1000;
}

.product-item .options a:hover::after {
    opacity: 1;
    visibility: visible;
}

.product-item .image {
    overflow: visible;
    position: relative;
}

.product-item .image img {
    width: 100%;
    height: 25rem;
    -o-object-fit: cover;
       object-fit: cover;
}

.product-item .content {
    padding: 2rem;
    text-align: center;
}

.product-item .rating {
    padding-top: 0.7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1rem;
}

.product-item .rating .icon {
    font-size: 1.4rem;
    color: var(--main-color);
}

.product-item .rating h5 {
    font-size: 1.5rem;
    color: var(--black);
}

.product-item h3 {
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--black);
}

.product-item h3:hover {
    color: var(--main-color);
}

.product-item .price p {
    font-size: 2rem;
    font-weight: bold;
    color: var(--main-color);
}

.product-item .price span {
    font-size: 1.7rem;
    font-weight: 400;
    text-decoration: line-through;
    color: var(--grey);
    padding-left: 0.2rem;
}

/*----- 05- Shop-Title -----*/
.shoplist-title{
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 2rem 1.5rem;
    margin-bottom: 1rem;
}

.shoplist-title h3{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 10rem;
        flex: 1 1 10rem;
    font-size: 2rem;
    text-align: center;
}

.shoplist-title h3.product-heading{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
    text-align: left;
}

/*----- 06- Cart-Summary -----*/
.summary-list{
    padding-top: 1rem;
} 

.summary-item{
    display: -webkit-box;
    display: -ms-flexbox; 
    display: flex; 
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 1.5rem;
    font-size: 2rem;
    color: var(--black); 
}

.summary-item .name{
    font-weight: 600;
}

.summary-item .value{
    font-weight: 500;
    color: var(--main-color);
}

/*----- 07- Radio Button -----*/
.payment input:checked + label, 
.payment label:hover{ 
    color: var(--main-color);
}

.payment input[type="radio"] {
    position: absolute;
    opacity: 0;
}

.payment input[type="radio"] + 
.radio-label:before {
    content: '';
    background: #f4f4f4;
    border-radius: 100%;
    border: 0.1rem solid var(--grey);
    display: inline-block;
    width: 1.6rem;
    height: 1.6rem;
    position: relative;
    top: 0;
    vertical-align: top;
    cursor: pointer;
    text-align: center;
    -webkit-transition: all 250ms ease;
    -o-transition: all 250ms ease;
    transition: all 250ms ease;
}
  
.payment input[type="radio"]:checked + 
.radio-label:before {
    background-color: var(--main-color);
    -webkit-box-shadow: inset 0 0 0 4px #f4f4f4;
            box-shadow: inset 0 0 0 4px #f4f4f4;
    outline: none;
    border-color: var(--main-color);
}

/*----- 08- Account-Form -----*/
.account-form input:-webkit-autofill,
.account-form input:-webkit-autofill:hover,
.account-form input:-webkit-autofill:focus,
.account-form input:-webkit-autofill:active {
    -webkit-text-fill-color: var(--white);
    -webkit-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;
}

.account-form{
    max-width: 45rem;
    padding: 5rem;
    background: var(--black);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    margin: 0rem auto;
    text-align: center;
    border-bottom: var(--custom-border);
}

.account-form h3{ 
    font-size: 3rem;
    line-height: 1.3;
    font-weight: 500;
    padding-bottom: 1.5rem;
    color: var(--white);
    text-transform: uppercase;
}

.account-form .input-field{
    margin-bottom: 1rem;
}

.account-form p{
    padding-top: 2rem;
    color: var(--white);
    text-align: center;
    padding-bottom: 1rem;
}

.account-form .btn{
    width: 100%;
    overflow: hidden;
    margin-top: 1.5rem;
}

.account-form .link{
    font-size: 1.5rem;
    color: var(--main-color);
}

.account-form .link:hover{
    text-decoration: underline;
}

.account-form .checkbox-label {
    color: var(--grey);
    position: relative;
    padding-left: 2.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    line-height: 1.4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.account-form .checkbox-label input{
    position: absolute;
    opacity: 0;
    z-index: -1;
}

.account-form .checkbox-indicator{
    position: absolute;
    top: 0.2rem;
    left: 0;
    height: 1.6rem;
    width: 1.6rem;
    background: transparent;
    outline: 0.15rem solid var(--white);
    border-radius: 0.2rem;
}

.account-form .checkbox-label input:checked ~ 
.checkbox-indicator {
    background: var(--main-color);
    outline-color: var(--main-color);
}

.account-form .checkbox-indicator:after {
    content: '';
    position: absolute;
    left: 0.5rem;
    top: 0.2rem;
    width: 0.3rem;
    height: 0.8rem;
    border: solid var(--light-grey);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    display: none;
}

.account-form .checkbox-label input:checked ~ 
.checkbox-indicator:after {
    display: initial;
}

/*--------------- PAGES ---------------*/
.shop{
    display: -webkit-box; 
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}

.shop .shop-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem;
        flex: 1 1 75rem;
}

/*----- 1- Shop Grid -----*/
.shop .product-container.grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1.5rem;
}

/*----- 2- Shop Standard -----*/
.shop .product-container.list .product-item{
    width: 100%;
    margin-bottom: 1rem;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox; 
    display: flex; 
    -webkit-box-pack: start; 
        -ms-flex-pack: start; 
            justify-content: flex-start;
    padding: 0; 
} 

.shop .product-container.list .product-item .image{
    min-height: 25rem; 
    min-width: 25rem;
}

.shop .product-container.list .product-item .image img{
    height: 100%;
    width: 25rem;
    -o-object-fit: cover;
       object-fit: cover;
}

.shop .product-container.list .product-item .content{
    text-align: left;
}

.shop .product-container.list .product-item .content > p{
    font-size: 1.6rem;
    padding: 1rem 0;
    line-height: 1.5; 
}

.shop .product-container.list .product-item .rating {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
}

/*----- 3- Product Single -----*/
.product-single .product-des{
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 2rem;
    margin-bottom: 3.5rem;
}

.product-single .product-des .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center; 
    -ms-flex-pack: center;
    justify-content: center; 
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    -ms-flex-wrap: wrap; 
        flex-wrap: wrap;
    gap: 2rem;
}

.product-single .product-des .box-container .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-single .product-des .box-container .image-container{
    max-width: 50rem;
}

.product-single .product-des .box-container .image-container .main{
    width: 100%;
    height: 40rem;
    overflow: hidden;
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.product-single .product-des .box-container .image .change-btns{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(7rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(7rem, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.product-single .product-des .box-container .image .change-btns img{
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    cursor: pointer;    
}

.product-single .product-des .image .change-btns img:hover,
.product-single .product-des .image .change-btns img.active{
    border: 0.4rem solid var(--main-color);
}

.product-single .product-des .box-container .content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 45rem;
        flex: 1 1 45rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 2rem;
}

.product-single .product-des .box-container .content h3{
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--black);
    padding-top: 0.7rem;
}

.product-single .product-des .box-container .content .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.product-single .product-des .box-container .content .intro .rating{
    color: var(--main-color);
    font-size: 1.6rem;
}

.product-single .product-des .box-container .content .intro span{
    color: var(--black);
    font-size: 2rem;
    font-weight: 500;
    padding-left: 1rem;
}

.product-single .product-des .box-container .content .price{
    font-size: 2rem;
    font-weight: bold;
    color: var(--main-color);
    padding-top: 1rem;
}

.product-single .product-des .box-container .content .price span{
    color: var(--grey);
    font-weight: lighter;
    text-decoration: line-through;
}

.product-single .product-des .box-container .content .product-text{
    padding: 2rem 0;
    margin-top: 2rem;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.2);
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.product-single .btn-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    margin: 2rem 0;
}

.product-single .qty{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0;
    gap: 1rem;
    width: 15rem;
}

.product-single .wishlist-btn{
    cursor: pointer;
}

.product-single .wishlist-btn i {
    height: 5rem;
    width: 5rem;
    font-size: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--white);
    background: var(--black);
    border-radius: var(--border-radius-1);
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
            transition: opacity 0.3s ease, visibility 0.3s ease;
}

.product-single .wishlist-btn i:hover {
    background: var(--main-color);
}

.product-single .categories,
.product-single .tags,
.product-single .sku{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.5rem 0;
}

.product-single .qty h4,
.product-single .categories h4,
.product-single .tags h4,
.product-single .sku h4{
    font-size: 1.8rem;
    color: var(--black);
    font-weight: 600;
}

.product-single .categories a,
.product-single .tags a,
.product-single .sku span{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--main-color);
    padding: 0 0.5rem;
}

.product-single .categories a:hover,
.product-single .tags a:hover{
    color: var(--black);
}

/*-- Product Addtional Information --*/
.product-single .tab-info{
    margin-top: 4rem;
}

.product-info .additional-info .item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    padding-bottom: 1rem;
}

.product-info .additional-info h3{
    width: 20rem;
    font-size: 1.8rem;
    color: var(--black);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.product-info .additional-info h3 i{
    font-size: 0.8rem;
    color: var(--main-color);
    padding-right: 0.7rem;
}

.product-info .additional-info span{
    font-size: 1.6rem;
    color: var(--grey);
}

.product-info h2{
    font-size: 3rem; 
    color: var(--black); 
    padding-bottom: 1rem;
}

.product-info .leave-reply{
    width: 60rem;
}

.related-items .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

/*----- 4- Wishlist  ------*/
.wishlist-container{
    overflow-x: auto;
    overflow-y: hidden;
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.wishlist-container::-webkit-scrollbar{
    height: 0.8rem;
}

.wishlist .container{
    min-width: 90rem;
}

.wishlist .box-container{
    padding: 0rem 1rem;
}

.wishlist-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0rem;
    gap: 3rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.wishlist-item:last-child{
    border: none;
}

.wishlist-item .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
}

.wishlist-item .product{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30rem; 
        flex: 1 1 30rem;  
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    gap: 1.5rem;
}

.wishlist-item img{
    height: 8rem;
    width: 8rem;
    background-color: #f7f7f7;
    border-radius: var(--border-radius-1);
}

.wishlist-item .name{
    color: var(--black);
    font-weight: 600;
}

.wishlist-item .name:hover{
    color: var(--main-color);
}

.wishlist-item .price{
    color: var(--grey);
    font-weight: 500;
}

.wishlist-item .status.in{
    color: green;
}

.wishlist-item .status.out{
    color: red;
}

.wishlist-item .action{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.wishlist-item a{
    font-size: 2rem;
    cursor: pointer;
}

.wishlist-item a:hover{
    color: var(--main-color);
}

.wishlist-item .delete{
    color: red;
}

.wishlist-item .cart{
    color: var(--black);
}

/*----- 5- Cart  ------*/
.cart .shop-btn{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-bottom: 2rem;
}

.shopping-cart{
    margin-bottom: 2rem;
    overflow-x: auto;
    overflow-y: hidden;
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.cart .container{
    min-width: 90rem;
}

.shopping-cart::-webkit-scrollbar{
    height: 0.8rem;
}

.cart .box-container{
    padding: 0rem 1rem;
}

.cart-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0rem;
    gap: 3rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.cart-item:last-child{
    border: none;
}

.cart-item .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
        flex: 1 1 15rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 400;
}

.cart-item .product{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem; 
        flex: 1 1 25rem;  
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    gap: 1.5rem;
}

.cart-item img{
    height: 8rem;
    width: 8rem;
    border-radius: var(--border-radius-1);
    background-color:#f7f7f7;
}

.cart-item .name{
    color: var(--black);
    font-weight: 600;
}

.cart-item .name:hover{
    color: var(--main-color);
}

.cart-item .price,
.cart-item .total{
    color: var(--grey);
}

.cart-item .icon{
    font-size: 2rem;
    cursor: pointer;
    color: red;
}

.cart-item .icon:hover{
    color: var(--main-color);
}

.cart .cart-bottom{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 5rem;
}

.cart .coupon-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50rem;
        flex: 1 1 50rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.cart .coupon-container .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30rem;
        flex: 1 1 30rem;
    background-color: transparent;
    font-size: 1.6rem;
    color: var(--grey);
    padding: 1.2rem 1.5rem; 
    border: 0.15rem solid rgba(0, 0, 0, 0.1);
    border-radius: var(--border-radius-1);
    text-transform: none;
}

.cart .coupon-container .box::-webkit-input-placeholder{
    text-transform: capitalize;
}

.cart .coupon-container .box::-moz-placeholder{
    text-transform: capitalize;
}

.cart .coupon-container .box:-ms-input-placeholder{
    text-transform: capitalize;
}

.cart .coupon-container .box::placeholder{
    text-transform: capitalize;
}

.cart .coupon-container .box:focus{
    border-color: var(--main-color);
}

.cart .coupon-container .btn{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
        flex: 1 1 15rem;
    margin-top: 0;
}

/*-- 2- Cart Total --*/
.cart .cart-summary{
    width: 40rem;
    padding: 1.5rem;
    margin-left: auto;
    border-top: var(--custom-border);
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.cart .cart-summary .btn{
    width: 100%;
    text-align: center;
    margin-top: 1rem;
}

/*----- 6- Checkout -----*/
/*
1- Payment Method
2- Cart Total
*/

.checkout{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap; 
        flex-wrap: wrap;
    gap: 1.5rem;
}

.checkout h2{
    font-size: 3.5rem;
}

.checkout .box-1{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 55rem;
        flex: 1 1 55rem;  
}

.checkout .box-2{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
}

.checkout-item{
    margin-bottom: 1.5rem;
    padding: 2rem;
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.checkout .box-1 .checkout-item:last-child{
    margin-bottom: 0;   
}

.checkout .checkbox-label {
    color: var(--black) !important;
    margin-bottom: 2rem;
    cursor: pointer;
    line-height: 1.2;
}

.checkout .checkbox-indicator{
    outline: 0.15rem solid var(--grey) !important;
}

.checkout .checkbox-label input:checked ~ 
.checkout .checkbox-indicator {
    outline-color: var(--main-color) !important;
}

/*-- Payment Method --*/
.payment-methods .payment{
    margin-bottom: 1.5rem;
}

.payment-methods .payment label{
    cursor: pointer;
    font-size: 2rem;
    font-weight: 500;
    color: var(--black);
    text-transform: uppercase;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.payment-body{ 
    display: none;
}

.payment-body.active{
    display: block;
}

.payment-methods .payment .payment-body p{
    font-size: 1.4rem;
    padding-top: 1rem;
}

.checkout .btn-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.checkout .btn{
    width: 100%;
    text-align: center;
}

/*----- 7- Login -----*/
.login form .info{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; 
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 2rem 0;
}
  
.login form label{
    font-size: 1.5rem;
    color: var(--white);
    cursor: pointer;
}

/*----- 8- Register -----*/
.register form .checkbox-label{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 2rem 0;
}
  
.register form label{
    font-size: 1.5rem;
    color: var(--white);
    cursor: pointer;
}
  
.register form label span{
    color: var(--main-color);
}

/*------------------------------ (08)-Shop (End) ------------------------------*/



/*------------------------------ (09)-Contact (Start) ------------------------------*/
.contact .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.contact-info{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 45rem;
            flex: 1 1 45rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.5rem
}

.contact-info .info-item{
    -webkit-box-flex: 1;
    -ms-flex:1 1 20rem;
        flex:1 1 20rem;
    padding: 2.2rem 1.8rem;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 1fr;
        grid-template-columns: auto 1fr;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
    gap: 0.5rem 1.2rem;
    text-align: left;
    align-content: center;
    border-radius: var(--border-radius-2);
    background: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border: 0.1rem solid var(--light-grey);
}

/* 联系信息卡片统一改为简洁白色背景 */

.contact-info .info-item i{
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
    grid-row: 1 / span 2;
    grid-column: 1;
    height: 3.2rem; width: 3.2rem; font-size: 3.2rem; margin: 0;
    color: transparent;
    -webkit-text-stroke: 1.3px var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    align-self: center;
}

.contact-info .info-item h3{
    -ms-grid-row: 1;
    -ms-grid-column: 2;
    grid-row: 1;
    grid-column: 2;
    font-size: 1.4rem; font-weight: 500; padding: 0;
    color: var(--grey); letter-spacing: .05rem;
}

.contact-info .info-item p{
    -ms-grid-row: 2;
    -ms-grid-column: 2;
    grid-row: 2;
    grid-column: 2;
    text-transform: none;
    font-size: 2.2rem; font-weight: 600; line-height: 1.35;
    color: var(--black);
}

/* 联系信息卡片：每次滚动进入视口时从顶部淡入 */
.contact-info .info-item.anim-fade{
    -webkit-animation: contactFadeInDown 0.7s ease both;
            animation: contactFadeInDown 0.7s ease both;
}
.contact-info .info-item:nth-child(2).anim-fade{
    -webkit-animation-delay: 0.1s;
            animation-delay: 0.1s;
}
.contact-info .info-item:nth-child(3).anim-fade{
    -webkit-animation-delay: 0.2s;
            animation-delay: 0.2s;
}
.contact-info .info-item:nth-child(4).anim-fade{
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
}
@keyframes contactFadeInDown{
    0%{ opacity: 0; -webkit-transform: translateY(-2.4rem); transform: translateY(-2.4rem); }
    100%{ opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }
}

/*-- Contact Form --*/
.contact form{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 45rem;
            flex: 1 1 45rem;
    text-align: center;
    background:         -webkit-linear-gradient(top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url("../images/Contact/Contact.jpg");
    background:         linear-gradient(180deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url("../images/Contact/Contact.jpg");
    background-repeat: no-repeat;  
    background-size: cover;
    background-position: center;
    padding: 3rem;
    border-radius: var(--border-radius-2);
    overflow: hidden;
}

.contact form .alert{
    display: block;
    font-size: 2rem;
    color: var(--main-color);
    padding-top: 1rem;
}

/*-- Google Map --*/
.contact iframe{
    width: 100%;
    height: 40rem;
    border-radius: var(--border-radius-2);
}

/*------------------------------ (09)-Contact (End) ------------------------------*/
/*------------------------------ 亦尚定制 (Start) ------------------------------*/
/* 首页轮播 */
.home-slider .swiper-slide{position: relative; height: 60rem;}
.home-slider .swiper-slide img{width: 100%; height: 60rem; object-fit: cover;}
.home-slider .swiper-pagination{bottom: 3rem;}
.home-slider .swiper-pagination-bullet{background: var(--white); opacity: .6;}
.home-slider .swiper-pagination-bullet-active{background: var(--main-color); opacity: 1;}
/* 侧栏当前栏目高亮 */
.sidebar .category .item.active,
.sidebar .category .item:hover{background-color: var(--main-color); color: var(--white); border-radius: var(--border-radius-1);}
.sidebar .category .item.active span,
.sidebar .category .item.active span i,
.sidebar .category .item.active .acc-icon,
.sidebar .category .item:hover span,
.sidebar .category .item:hover span i,
.sidebar .category .item:hover .acc-icon{color: var(--white);}
/* 荣誉资质（Speaker 模板样式） */
.speaker-slider{
    overflow: hidden;
    padding: 0.5rem;
}
.team-item {
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-1);
    position: relative;
}
.team-item .image{
    height: 40rem;
    width: 100%;
}
.team-item .image img{width: 100%; height: 100%; object-fit: cover;}
.team-item .content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    overflow: hidden;
    -webkit-clip-path: polygon(0 0, 89% 16%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 89% 16%, 100% 100%, 0% 100%);
    background: -webkit-linear-gradient(left, var(--main-color), var(--secondary-color));
    background: linear-gradient(90deg, var(--main-color), var(--secondary-color));
    padding-top: 1rem;
}
.team-item .text {
    height: 100%;
    padding: 1.5rem 2rem;
    padding-top: 3rem;
    -webkit-clip-path: polygon(0 0, 84% 19%, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 84% 19%, 100% 100%, 0% 100%);
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
}
.team-item .content h3 {
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
}
.team-item .content h3:hover{color: var(--black);}
.team-item .content p {
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--white);
}

/* 新闻中心（Venues 模板样式） */
.venues{
    /* max-width: 90rem; */
    margin: 0 auto;
}
/* 首页行业动态：每行2个卡片（顶部图片 + 标题 + 简介 + 时间） */
.venue-grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    max-width: 120rem;
    margin: 0 auto;
}
.venue-grid .venue-item{
    background-color: var(--white);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    position: relative;
    display: block;
    -webkit-transition: -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
            transition: transform .3s ease, box-shadow .3s ease;
}
.venue-grid .venue-item:hover{
    -webkit-transform: translateY(-0.6rem);
            transform: translateY(-0.6rem);
    -webkit-box-shadow: 0 1rem 2rem rgba(0,0,0,.12);
            box-shadow: 0 1rem 2rem rgba(0,0,0,.12);
}
.venue-grid .venue-item .image{
    height: 22rem;
    position: static;
}
.venue-grid .venue-item .image img{
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.venue-grid .venue-item .content{
    position: static;
    height: auto;
    background: var(--white);
    padding: 2rem 2rem 2.4rem;
    display: block;
}
.venue-grid .venue-item .venue-item-meta{
    font-size: 1.4rem;
    color: var(--main-color);
    margin-bottom: .6rem;
}
.venue-grid .venue-item .venue-title{
    font-size: 2rem;
    font-weight: 600;
    color: var(--black);
    line-height: 1.3;
    margin-bottom: .8rem;
}
.venue-grid .venue-item .venue-title:hover{
    color: var(--main-color);
}
.venue-grid .venue-item .venue-desc{
    font-size: 1.5rem;
    color: var(--grey);
    line-height: 1.7;
}
@media (max-width: 768px){
    .venue-grid{
        -ms-grid-columns: (1fr)[2];
            grid-template-columns: repeat(1, 1fr);
    }
}
.venue-item{
    background-color: var(--white);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    position: relative;
}
.venue-item .image{height: 35rem;}
.venue-item .image img{width: 100%; height: 100%; object-fit: cover;}
.venue-item .content{
    padding: 2rem;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.9));
    background: linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.9));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}
.venue-item h4{
    font-size: 1.6rem;
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color);
    text-transform: uppercase;
}
.venue-item .main-heading{
    display: block;
    font-size: 2.4rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1.2;
    padding: 0.6rem 0;
}
.venue-item .main-heading:hover{color: var(--main-color);}
.venue-item h3{
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--white);
}
.venue-item h3 span{
    background: -webkit-linear-gradient(left, var(--main-color), var(--accent-color));
    background: linear-gradient(90deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color);
    padding-right: 0.6rem;
}
/* 行业动态详情：仅正文内容最宽 80rem（800px）居中，标题/元信息/上下篇导航保持原宽度 */
.page-single.narrow .page-content{
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
}
/* 文章元信息（日期 / 点击率 / 栏目） */
.page-meta{display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2.5rem; margin: 1.5rem 0 3rem; padding-bottom: 2rem; border-bottom: .1rem solid #eeeeee; font-size: 1.5rem; color: #888888;}
.page-meta span{display: inline-flex; align-items: center; gap: .6rem;}
.page-meta i{color: var(--main-color); font-size: 1.6rem;}
/* 正文内联样式纠错：转载内容常带固定宽度/浮动/定位，会导致排版错乱
   仅作用于非图片元素，图片保留自身原始尺寸 */
.page-content [style*="width"]:not(img){width: auto !important; max-width: 100% !important;}
.page-content [style*="float"]{float: none !important;}
.page-content [style*="position: absolute"],.page-content [style*="position:absolute"]{position: static !important;}
/* 正文排版 */
.page-content{line-height: 1.9; font-size: 1.6rem; color: var(--text-color);}
.page-content p{margin-bottom: 1.5rem; color: #000000;}
/* 正文图片：覆盖全局 img{width:100%} 的拉伸，按原始尺寸显示，仅超出容器时才缩小 */
.page-content img{width: auto !important; height: auto !important; max-width: 100%; border-radius: var(--border-radius-1); margin: 1rem 0;}
.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6{margin: 2rem 0 1rem;}
.content-text{line-height: 1.9; font-size: 1.6rem; color: var(--text-color); max-width: 90rem; margin: 0 auto;}
.content-text img{max-width: 100%; height: auto; border-radius: var(--border-radius-1); margin: 1rem 0;}
/* 上下篇导航 */
.article-nav{display: flex; justify-content: space-between; gap: 2rem; margin-top: 3rem; padding-top: 2rem; border-top: .1rem solid #eee;}
.article-nav .nav-item{flex: 1;}
.article-nav .nav-item a{display: block; padding: 1.2rem 1.5rem; background-color: #f5f6f8; border-radius: var(--border-radius-1); transition: .3s; color: var(--black);}
.article-nav .nav-item a:visited{color: var(--black);}
.article-nav .nav-item a:hover{background-color: var(--main-color); color: var(--white);}
.article-nav .nav-item a:hover p,
.article-nav .nav-item a:hover .text-ellipsis-1{color: var(--white);}
.article-nav .nav-item p{font-size: 1.8rem; margin-bottom: .5rem;}
.article-nav .nav-item .text-ellipsis-1{font-size: 1.6rem;}
.article-nav .nav-item.next{text-align: right;}
/* 空提示 */
.empty-tip{text-align: center; padding: 5rem 0; font-size: 1.8rem; color: #999; width: 100%;}
/* 搜索结果信息条 */
.search-result-info{padding: 1.8rem 2.5rem; margin-bottom: 2rem; background: #f5f6f8; border-left: .5rem solid var(--main-color); border-radius: var(--border-radius-1); font-size: 1.8rem; color: var(--grey);}
.search-result-info b{color: var(--main-color);}
/* 搜索结果的摘要 */
.blog-item .description{margin-top: 1.2rem; font-size: 1.6rem; line-height: 1.9; color: rgba(255,255,255,.85);}
/* 搜索表单页 */
.search-page{display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; padding: 12rem 0;}
.search-page .search-box{width: 70rem; max-width: 90%;}
.search-page .search-form{display: -webkit-box; display: -ms-flexbox; display: flex; gap: 1rem; padding: 1.5rem; background: var(--white); border: .1rem solid var(--light-grey); border-radius: var(--border-radius-2); -webkit-box-shadow: var(--box-shadow); box-shadow: var(--box-shadow);}
.search-page .search-form input{-webkit-box-flex: 1; -ms-flex: 1; flex: 1; padding: 1.5rem 2rem; font-size: 1.8rem; border-radius: var(--border-radius-1); background: var(--light-grey); color: var(--grey);}
.search-page .search-form button{padding: 0 3rem; font-size: 1.8rem; color: var(--white); background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color)); background: linear-gradient(45deg, var(--main-color), var(--accent-color)); border-radius: var(--border-radius-1); cursor: pointer;}
.search-page .search-form button:hover{opacity: .9;}
.search-page .hot-keywords{margin-top: 2rem; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 1rem; font-size: 1.6rem;}
.search-page .hot-keywords .hot-title{color: var(--grey); font-weight: 600;}
.search-page .hot-keywords .hot-item{padding: .6rem 1.6rem; color: var(--grey); background: var(--white); border: .1rem solid var(--light-grey); border-radius: var(--border-radius-3);}
.search-page .hot-keywords .hot-item:hover{color: var(--white); background: var(--main-color); border-color: var(--main-color);}
/* 标签云页 */
.tag-page{display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; padding: 10rem 0;}
.tag-page .tag-cloud-list{width: 80rem; max-width: 90%; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 1.2rem; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
.tag-page .tag-item{display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: .8rem; padding: 1rem 2rem; font-size: 1.8rem; color: var(--grey); background: var(--white); border: .1rem solid var(--light-grey); border-radius: var(--border-radius-1); -webkit-box-shadow: var(--box-shadow); box-shadow: var(--box-shadow);}
.tag-page .tag-item:hover{color: var(--white); background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color)); background: linear-gradient(45deg, var(--main-color), var(--accent-color)); border-color: transparent;}
.tag-page .tag-item .count{min-width: 2.6rem; padding: .2rem .6rem; font-size: 1.4rem; text-align: center; color: var(--main-color); background: rgba(56, 182, 255, .12); border-radius: var(--border-radius-3);}
.tag-page .tag-item:hover .count{color: var(--white); background: rgba(255, 255, 255, .25);}
/*------------------------------ 亦尚定制 (End) ------------------------------*/

/*------------------------------ 首页客户名录 (Start) ------------------------------*/
.customers{
    margin: 0 auto;
    max-width: 120rem;
}
.customer-grid{
    margin: 0 auto;
    max-width: 120rem;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: repeat(6, 1fr);
        grid-template-columns: repeat(6, 1fr);
    gap: 2rem;
}
.customer-item{
    height: 10rem;
    padding: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: var(--white);
    border: .1rem solid var(--light-grey);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.customer-item img{
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.customer-item span{
    font-size: 1.4rem;
    color: var(--grey);
    text-align: center;
}
/*------------------------------ 首页客户名录 (End) ------------------------------*/

/*------------------------------ 首页亦尚案例 3列 (Start) ------------------------------*/
.case-columns{
    margin: 0 auto;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: repeat(3, 1fr);
        grid-template-columns: repeat(3, 1fr);
    gap: 3rem;
}
.case-column{
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%;
    -webkit-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.case-column:hover{
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem);
    -webkit-box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.15);
            box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.15);
}
.case-column:hover .case-column-head i{
    -webkit-transform: translateY(-2.5rem) scale(1.25);
            transform: translateY(-2.5rem) scale(1.25);
}
.case-column-head{
    padding: 2.5rem 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
    background-color: var(--light-grey);
    position: relative;
}
.case-column-head-top{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.5rem;
}
.case-column-head-top a{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.5rem;
    text-decoration: none;
    color: var(--black);
}
.case-column-head i{
    font-size: 3rem;
    color: var(--white);
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
            clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    width: 8rem;
    height: 8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-negative: 0;
        flex-shrink: 0;
}
.case-column-head h3{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--black);
    letter-spacing: .1rem;
}
.case-column-body{
    padding: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
}
.case-column-intro{
    padding: 0;
}
.case-column-intro h4{
    font-size: 2rem;
    font-weight: 600;
    color: var(--black);
    line-height: 1.4;
    margin-bottom: 1rem;
}
.case-column-intro p{
    font-size: 1.7rem;
    line-height: 2;
    color: var(--grey);
    margin-bottom: 1.2rem;
}
.case-tags{
    font-size: 1.6rem;
    line-height: 1.7;
    color: var(--main-color);
    font-weight: 600;
    letter-spacing: .05rem;
}
.case-item{
    position: relative;
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-height: 14rem;
    border-radius: var(--border-radius-2);
    overflow: hidden;
    background-color: #222;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    -webkit-transition: all 0.3s linear;
        -o-transition: all 0.3s linear;
            transition: all 0.3s linear;
}
.case-item:hover{
    -webkit-transform: translateY(-.3rem);
            transform: translateY(-.3rem);
    -webkit-box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.25);
            box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.25);
}
.case-item .image{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.case-item .image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.85;
    -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.case-item:hover .image img{
    opacity: 0.4;
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
}
.case-item .info{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    padding: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    text-align: right;
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.75) 100%);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.75) 100%);
    opacity: 1;
    visibility: visible;
    -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.case-item:hover .info{
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    background: rgba(0, 0, 0, 0.55);
}
.case-item .info h4{
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--white);
    margin-bottom: 1rem;
    line-height: 1.3;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.9), 0 0 2px rgba(0, 0, 0, 0.8);
    opacity: 0.85;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem);
    -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.case-item:hover .info h4{
    opacity: 1;
    -webkit-transform: translateY(0) scale(1.15);
            transform: translateY(0) scale(1.15);
    color: var(--white);
}
.case-item .info p{
    font-size: 1.3rem;
    color: rgba(255, 255, 255, 0.95);
    line-height: 1.6;
    max-width: 90%;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.9);
    opacity: 0;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem);
    -webkit-transition: all 0.4s ease 0.1s;
        -o-transition: all 0.4s ease 0.1s;
            transition: all 0.4s ease 0.1s;
}
.case-item:hover .info p{
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
/*------------------------------ 首页亦尚案例 3列 (End) ------------------------------*/
/*------------------------------ 联系页 在线留言表单 (Start) ------------------------------*/
.contact .heading{ margin-bottom: 4rem; }
.contact .box-container{ -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
.contact .contact-info{ -webkit-box-flex: 0; -ms-flex: 0 0 38rem; flex: 0 0 38rem; gap: 1rem; }
/* 联系信息卡片样式已统一在 .contact-info .info-item 中定义 */
.contact form{
    -webkit-box-flex: 1; -ms-flex: 1 1 45rem; flex: 1 1 45rem;
    padding: 4rem; display: -webkit-box; display: -ms-flexbox; display: flex;
    -webkit-box-orient: vertical; -webkit-box-direction: normal;
        -ms-flex-direction: column; flex-direction: column;
    background: var(--white);
    -webkit-box-shadow: var(--box-shadow); box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    text-align: left;
}
.contact .contact-form-title{
    font-size: 2.6rem; font-weight: 600; color: var(--black); margin-bottom: .5rem;
}
.contact .contact-form-desc{
    font-size: 1.4rem; color: var(--grey); margin-bottom: 2.5rem; line-height: 1.6;
}
.contact form .form-row{
    display: -webkit-box; display: -ms-flexbox; display: flex;
    -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 1.5rem;
}
.contact form .form-group{ -webkit-box-flex: 1; -ms-flex: 1 1 100%; flex: 1 1 100%; margin-bottom: 1.6rem; }
.contact form .form-row .form-group{ -webkit-box-flex: 1; -ms-flex: 1 1 calc(50% - .75rem); flex: 1 1 calc(50% - .75rem); }
.contact form label{
    display: block; font-size: 1.5rem; color: var(--black);
    margin-bottom: .7rem; font-weight: 500; text-transform: none;
}
.contact form label span{ color: var(--secondary-color); }
.contact form input,
.contact form textarea{
    width: 100%; padding: 1.2rem 1.5rem; font-size: 1.6rem; color: var(--black);
    background: var(--light-grey); border: .1rem solid rgba(0,0,0,.1);
    border-radius: var(--border-radius-1); text-transform: none;
    -webkit-transition: border-color .2s, background .2s; -o-transition: border-color .2s, background .2s;
    transition: border-color .2s, background .2s;
}
.contact form input::-webkit-input-placeholder,
.contact form textarea::-webkit-input-placeholder{ color: rgba(0,0,0,.4); }
.contact form input::-moz-placeholder,
.contact form textarea::-moz-placeholder{ color: rgba(0,0,0,.4); }
.contact form input:-ms-input-placeholder,
.contact form textarea:-ms-input-placeholder{ color: rgba(0,0,0,.4); }
.contact form input::placeholder,
.contact form textarea::placeholder{ color: rgba(0,0,0,.4); }
.contact form input:focus,
.contact form textarea:focus{
    border-color: var(--main-color); background: var(--white);
}
.contact form input.input-error{ border-color: var(--secondary-color); background: rgba(255,102,196,.06); }
.contact form textarea{ resize: vertical; min-height: 11rem; }
.contact form .captcha-wrap{ display: -webkit-box; display: -ms-flexbox; display: flex; gap: 1rem; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.contact form .captcha-wrap input{ -webkit-box-flex: 1; -ms-flex: 1; flex: 1; max-width: 22rem; }
.contact form .contact-captcha-img{
    height: 4.8rem; width: auto; min-width: 13rem; cursor: pointer;
    border-radius: var(--border-radius-1); border: .1rem solid rgba(0,0,0,.1);
    -o-object-fit: cover; object-fit: cover;
}
.contact form .contact-submit{ -ms-flex-item-align: start; -ms-grid-row-align: start; align-self: flex-start; margin-top: 1rem; }
.contact form .contact-alert{
    padding: 1.2rem 1.5rem; border-radius: var(--border-radius-1); font-size: 1.5rem;
    margin-bottom: 1.6rem; display: none; text-transform: none; line-height: 1.5;
}
.contact form .contact-alert.alert-success{
    background: rgba(56,182,255,.15); border: .1rem solid var(--main-color); color: var(--main-color);
}
.contact form .contact-alert.alert-error{
    background: rgba(255,102,196,.12); border: .1rem solid var(--secondary-color); color: var(--secondary-color);
}
/* 地图 */
.contact-map{ margin-top: 4rem; }
.contact-map iframe{ width: 100%; height: 38rem; border-radius: var(--border-radius-2); border: .1rem solid var(--light-grey); }

/* 响应式 */
@media (max-width: 991px){
    .contact .contact-info{ -webkit-box-flex: 0; -ms-flex: 0 0 100%; flex: 0 0 100%; }
    .contact .box-container{ -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
}
@media (max-width: 575px){
    .contact form{ padding: 2.5rem 2rem; }
    .contact form .form-row .form-group{ -webkit-box-flex: 1; -ms-flex: 1 1 100%; flex: 1 1 100%; }
    .contact-map iframe{ height: 26rem; }
}
/*------------------------------ 联系页 在线留言表单 (End) ------------------------------*/
/*------------------------------ 荣誉资质 画廊 (Start) ------------------------------*/
.honor-gallery{ padding: 6rem 5%; }
.honor-gallery .heading{ margin-bottom: 4rem; }
.honor-grid{
    margin: 0 auto;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
}
.honor-item{
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.honor-item:hover{
    -webkit-transform: translateY(-.8rem);
            transform: translateY(-.8rem);
    -webkit-box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.15);
            box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.15);
}
.honor-item a{ display: block; position: relative; }
.honor-item .image{
    height: 24rem;
    overflow: hidden;
    background: #f5f6f8;
}
.honor-item .image img{
    width: 100%; height: 100%;
    -o-object-fit: contain; object-fit: contain;
    -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.honor-item:hover .image img{
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
}
.honor-item .overlay{
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    display: -webkit-box; display: -ms-flexbox; display: flex;
    -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
    -webkit-box-align: center; -ms-flex-align: center; align-items: center;
    background: -webkit-linear-gradient(45deg, rgba(56,182,255,.85), rgba(82,113,255,.85), rgba(255,102,196,.85));
    background: linear-gradient(45deg, rgba(56,182,255,.85), rgba(82,113,255,.85), rgba(255,102,196,.85));
    opacity: 0;
    -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
            transition: all 0.3s ease;
}
.honor-item:hover .overlay{ opacity: 1; }
.honor-item .overlay i{
    font-size: 3.5rem; color: var(--white);
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transition: all 0.3s ease 0.05s;
        -o-transition: all 0.3s ease 0.05s;
            transition: all 0.3s ease 0.05s;
}
.honor-item:hover .overlay i{ -webkit-transform: scale(1); transform: scale(1); }
.honor-item .caption{
    padding: 1.6rem 1.8rem;
    text-align: center;
}
.honor-item .caption h3{
    font-size: 1.8rem; font-weight: 600; color: var(--black);
    margin-bottom: .5rem; line-height: 1.3;
}
.honor-item .caption p{
    font-size: 1.3rem; color: var(--grey); line-height: 1.5;
}
/* 响应式 */
@media (max-width: 991px){
    .honor-grid{ -ms-grid-columns: (1fr)[2]; grid-template-columns: repeat(2, 1fr); gap: 2rem; }
}
@media (max-width: 575px){
    .honor-grid{ -ms-grid-columns: 1fr; grid-template-columns: 1fr; gap: 1.5rem; }
    .honor-item .image{ height: 20rem; }
    .honor-gallery{ padding: 4rem 5%; }
}
/*------------------------------ 荣誉资质 画廊 (End) ------------------------------*/
/*------------------------------ 发展历程 时间轴 (Start) ------------------------------*/
.timeline-section{ padding: 6rem 5%; }
.timeline-section .heading{ margin-bottom: 5rem; }

.timeline{
    position: relative;
    max-width: 96rem;
    margin: 0 auto;
    padding: 2rem 0;
}
.timeline-line{
    position: absolute;
    left: 50%;
    top: 0; bottom: 0;
    width: .4rem;
    margin-left: -.2rem;
    background: -webkit-linear-gradient(var(--main-color), var(--accent-color), var(--secondary-color));
    background: linear-gradient(var(--main-color), var(--accent-color), var(--secondary-color));
    border-radius: .2rem;
    -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
            transform: scaleY(0);
    -webkit-transform-origin: top;
        -ms-transform-origin: top;
            transform-origin: top;
    -webkit-transition: -webkit-transform 1.5s ease;
         -o-transition: transform 1.5s ease;
            transition: transform 1.5s ease;
}
.timeline-section.in .timeline-line{ -webkit-transform: scaleY(1); -ms-transform: scaleY(1); transform: scaleY(1); }

.timeline-item{
    position: relative;
    width: 50%;
    padding: 1.5rem 4rem;
    margin-bottom: 1rem;
}
/* 奇数(左) */
.timeline-item:nth-child(odd){
    left: 0;
    text-align: right;
}
/* 偶数(右) */
.timeline-item:nth-child(even){
    left: 50%;
    text-align: left;
}

.timeline-dot{
    position: absolute;
    top: 2.2rem;
    width: 1.6rem; height: 1.6rem;
    border-radius: 50%;
    background: var(--white);
    border: .4rem solid var(--main-color);
    -webkit-box-shadow: 0 0 0 .4rem rgba(56,182,255,.2);
            box-shadow: 0 0 0 .4rem rgba(56,182,255,.2);
    z-index: 2;
}
.timeline-item:nth-child(odd) .timeline-dot{ right: -.8rem; }
.timeline-item:nth-child(even) .timeline-dot{ left: -.8rem; }

.timeline-card{
    background: var(--white);
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
            transition: all 0.4s ease;
}
.timeline-card:hover{
    -webkit-transform: translateY(-.5rem);
            transform: translateY(-.5rem);
    -webkit-box-shadow: 0 1.5rem 3rem rgba(0,0,0,.15);
            box-shadow: 0 1.5rem 3rem rgba(0,0,0,.15);
}

.timeline-item:nth-child(odd) .timeline-card{ -webkit-box-orient: horizontal; -ms-flex-direction: row; flex-direction: row; }
.timeline-item:nth-child(even) .timeline-card{ -webkit-box-orient: horizontal; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }

.timeline-image{
    -webkit-box-flex: 0;
        -ms-flex: 0 0 18rem;
            flex: 0 0 18rem;
    overflow: hidden;
    background: #f5f6f8;
}
.timeline-image img{
    width: 100%; height: 100%;
    -o-object-fit: cover; object-fit: cover;
    -webkit-transition: -webkit-transform .5s ease;
         -o-transition: transform .5s ease;
            transition: transform .5s ease;
}
.timeline-card:hover .timeline-image img{ -webkit-transform: scale(1.08); transform: scale(1.08); }

.timeline-body{
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 2rem 2.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.timeline-year{
    font-size: 2.8rem;
    font-weight: 700;
    background: -webkit-linear-gradient(45deg, var(--main-color), var(--accent-color));
    background: linear-gradient(45deg, var(--main-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: .6rem;
    line-height: 1.2;
}
.timeline-body p{
    font-size: 1.4rem;
    color: var(--grey);
    line-height: 1.6;
    text-transform: none;
}

/* 滚动进入动画：初始偏移+透明，可见时归位 */
.timeline-item{
    opacity: 0;
    -webkit-transition: opacity .6s ease, -webkit-transform .6s ease;
         -o-transition: opacity .6s ease, transform .6s ease;
            transition: opacity .6s ease, transform .6s ease;
}
.timeline-item:nth-child(odd){ -webkit-transform: translateX(-4rem); -ms-transform: translateX(-4rem); transform: translateX(-4rem); }
.timeline-item:nth-child(even){ -webkit-transform: translateX(4rem); -ms-transform: translateX(4rem); transform: translateX(4rem); }
.timeline-item.is-visible{ opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }

/* 响应式：小屏单列靠左 */
@media (max-width: 767px){
    .timeline-line{ left: 1.5rem; margin-left: 0; }
    .timeline-item{ width: 100%; left: 0 !important; padding: 1.2rem 0 1.2rem 4rem; text-align: left; }
    .timeline-item .timeline-dot{ left: .7rem !important; right: auto !important; }
    .timeline-item .timeline-card{ -webkit-box-orient: horizontal !important; -ms-flex-direction: row !important; flex-direction: row !important; }
    .timeline-image{ -ms-flex: 0 0 12rem; flex: 0 0 12rem; }
    .timeline-body{ padding: 1.5rem; }
    .timeline-year{ font-size: 2.2rem; }
    .timeline-item:nth-child(odd){ -webkit-transform: translateX(-4rem); -ms-transform: translateX(-4rem); transform: translateX(-4rem); }
    .timeline-item:nth-child(even){ -webkit-transform: translateX(-4rem); -ms-transform: translateX(-4rem); transform: translateX(-4rem); }
    .timeline-item.is-visible{ -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}
/*------------------------------ 发展历程 时间轴 (End) ------------------------------*/
/* 荣誉画廊 lightbox：去除过渡，避免延时/拖影 */
.mfp-wrap, .mfp-container, .mfp-content, .mfp-img, .mfp-close, .mfp-arrow{
    -webkit-transition: none !important;
        -o-transition: none !important;
            transition: none !important;
    -webkit-animation: none !important;
            animation: none !important;
}

