/* ==========================================================================
   产品中心内页全局设定
   ========================================================================== */
input[type='text']{
    font-size:16px;
}
.funa-pg-products {
    background-color: #ffffff;
    color: #252525;
    font-family: "Microsoft YaHei", sans-serif;
    padding-top: 50px;
    padding-bottom: 60px;
}


.pg-filter-section .g-3 {
    --bs-gutter-y: 12px;
    --bs-gutter-x: 12px;
}

.pg-filter-section .gap-4 {
    gap: 2rem ;
}

.ps-products-section .g-4 {
    --bs-gutter-y: 32px;
    --bs-gutter-x: 32px;
}

.pg-action-right{
	gap:20px;
}

/* --- 1. 顶部标题与搜索栏 --- */
.pg-filter-header {
    margin-bottom: 40px;
}

.pg-page-title {
    font-size: 32px;
    font-weight: bold;
    color: #252525;
    margin: 0;
}

.pg-search-bar {
    position: relative;
    width: 360px;
}

.pg-search-bar input {
    width: 100%;
    background-color: #F5F6F8;
    border: 1px solid transparent;
    border-radius: 30px;
    padding: 12px 50px 12px 24px;
    font-size: 14px;
    color: #252525;
    outline: none;
    transition: all 0.3s;
}

.pg-search-bar input:focus {
    background-color: #ffffff;
    border-color: var(--funa-primary-teal);
    box-shadow: 0 0 0 4px rgba(125, 201, 193, 0.1);
}

.pg-search-bar input::placeholder {
    color: #999999;
}

.pg-search-bar button {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

/*Form*/
.layui-form-select dl { 
    z-index: 9999; 
}
.custom-select-wrap .layui-unselect {
    height: 45px; 
    line-height: 45px;
}

/* ==========================================================================
   2. 筛选器模块 (Filter Section)
   ========================================================================== */
.pg-filter-section {
    border-top: 1px solid #EBEBEB;
}

.pg-filter-row {
    padding: 30px 0;
}

.pg-filter-label {
    width: 140px;
    font-size: 15px;
    color: #252525;
    font-weight: 500;
    flex-shrink: 0;
}

.pg-filter-tabs-wrap {
    border-bottom: 1px solid #EBEBEB;
}

.pg-filter-list {
    gap: 40px;
}

.pg-filter-list li {
    font-size: 15px;
    color: #252525;
    cursor: pointer;
    display: flex;
    align-items: center;
    padding-bottom: 30px;
    margin-bottom: -1px;
    border-bottom: 2px solid transparent;
    transition: all 0.2s;
}

.pg-filter-list li a{
    color: #252525;
}

.pg-filter-list li.active {
    color: var(--funa-primary-teal);
    font-weight: 600;
    border-bottom-color: var(--funa-primary-teal);
}

.pg-filter-list li.active a {
    color: var(--funa-primary-teal);
}

.pg-filter-list li.active a span:first-child {
    color: var(--funa-primary-teal);
}

.pg-filter-list li.active .pg-badge {
    background-color: var(--funa-primary-teal);
    color: #fff;
}

.pg-filter-list li a{
    display: flex;
     color: #252525;
}

.pg-badge {
    background-color: var(--funa-primary-teal);
    color: #ffffff;
    font-size: 12px;
    height: 18px;
    min-width: 18px;
    line-height: 18px;
    text-align: center;
    border-radius: 9px;
    padding: 0 5px;
    margin-top:2px;
    margin-left: 8px;
    display: inline-block;
}

.pg-filter-list li img.arrow {
    width: 10px;
    margin-left: 8px;
}

.pg-sub-filter-wrap {
    border-bottom: 1px solid #EBEBEB;
}


input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.custom-checkbox {
    width: 16px;
    height: 16px;
    border: 1px solid #D9D9D9;
    border-radius: 2px;
    display: inline-block;
    background-color: #ffffff;
    position: relative;
    vertical-align: middle;
    margin-top:0px; 
    transition: all 0.2s;
}

input:checked ~ .custom-checkbox {
    background-color: var(--funa-primary-blue);
    border-color: var(--funa-primary-blue);
}

input:checked ~ .custom-checkbox::after {
    content: '';
    position: absolute;
    left: 4px;
    top: 1px;
    width: 5px;
    height: 9px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.pg-checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #555555;
    cursor: pointer;
    user-select: none;
}

.pg-checkbox-label.active {
    color: var(--funa-primary-teal);
    font-weight: 500;
}

.pg-checkbox-label.active .custom-checkbox {
    background-color: var(--funa-primary-teal);
    border-color: var(--funa-primary-teal);
}

/* --- 按品牌筛选 (卡片网格) --- */
.pg-brand-row-wrap {
    border-bottom: 1px solid #EBEBEB;
}

.pg-brand-card {
    background-color: #F8F9FB; 
    border-radius: 8px;
    min-height: 72px;
    padding: 10px 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
    transition: all 0.3s;
    border: 1px solid transparent;
    width: 100%;
}

.pg-brand-card:hover {
    background-color: #EFEFEF;
}

.pg-brand-card.active {
    border-color: #0aaeb4;
    background-color: #eef9fa;
}

.pg-brand-card.active .custom-checkbox {
    background-color: #0aaeb4;
    border-color: #0aaeb4;
}

.pg-brand-card .custom-checkbox {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    width: 18px;
    height: 18px;
    border: 2px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    transition: all 0.2s;
}

.pg-brand-card.active .custom-checkbox::after {
    content: '';
    display: block;
    width: 6px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    position: absolute;
    left: 5px;
    top: 2px;
}

.pg-brand-card .pg-badge {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
}

.brand-name-wrap {
    text-align: center;
    width: 100%;
}

.pg-brand-card .brand-name {
    font-size: 14px;
    color: #252525;
    line-height: 1.4;
    display: block;
}

.pg-brand-card.active .brand-name {
    color: var(--funa-primary-blue);
}

.pg-brand-card small {
    font-size: 12px;
    color: #888888;
    margin-top: 2px;
    display: block;
}

.pg-brand-card.active small {
    color: var(--funa-primary-blue);
}

/* ==========================================================================
   3. 操作与统计栏
   ========================================================================== */
.pg-action-bar {
    margin-bottom: 30px;
}

.pg-result-count {
    font-size: 16px;
    color: #252525;
}

.pg-result-count .text-teal {
    color: var(--funa-primary-teal);
    font-size: 20px;
    font-weight: 600;
    margin: 0 4px;
}

.pg-sort {
    font-size: 14px;
    color: #252525;
    position: relative;
}

.pg-sort .value {
    color: #555555;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    padding-right: 16px;
    position: relative;
}

.pg-sort .value::after {
    display: inline-block;
    margin-left: 4px;
    content: "";
    vertical-align: .3em;
    border-top: .3em solid #555;
    border-right: .3em solid transparent;
    border-left: .3em solid transparent;
    position: absolute;
    right: 0;
    transition: transform 0.3s ease;
}

.pg-sort.show .value::after {
    transform: rotate(180deg);
}

/* 排序下拉菜单样式优化 */
.pg-sort .dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 120px;
    margin-top: 8px;
    padding: 8px 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
    z-index: 1000;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.pg-sort .dropdown-menu.show,
.pg-sort.show .dropdown-menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

.pg-sort .dropdown-menu .dropdown-item {
    display: block;
    padding: 10px 20px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    transition: background-color 0.2s, color 0.2s;
}

.pg-sort .dropdown-menu .dropdown-item:hover {
    background-color: #f5f9fa;
    color: #0aaeb4;
}

.pg-sort .dropdown-menu .dropdown-item.active {
    color: #0aaeb4;
    font-weight: 600;
    background-color: #eef9fa;
}

.pg-sort .dropdown-toggle::after {
    display: inline-block;
    margin-left: 4px;
    content: "";
    vertical-align: .3em;
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-left: .3em solid transparent;
    transition: transform 0.3s ease;
}

.pg-sort.show .dropdown-toggle::after,
.pg-sort .value::after {
    transform: rotate(0deg);
}

.pg-btn-clear {
    background-color: #ffffff;
    border: 1px solid var(--funa-primary-blue);
    color: var(--funa-primary-blue);
    border-radius: 30px;
    padding: 8px 24px;
    font-size: 14px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    transition: all 0.3s;
	gap:6px;
}

.pg-btn-clear:hover {
    background-color: var(--funa-primary-blue);
    color: #ffffff;
}

.pg-btn-clear:hover img{
	filter: brightness(0) invert(1)
}

/* ==========================================================================
   4. 产品网格卡片 
   ========================================================================== */
.pg-product-card {
    border: 1px solid #EAEAEA;
    border-radius: 12px;
    overflow: hidden;
    background-color: #ffffff;
    transition: box-shadow 0.3s;
    display: flex;
    flex-direction: column;
	margin-bottom:40px;
}

.pg-product-card:hover {
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}

.card-img-wrap {
    background: #F8F8F8 url(../img/procardbg.jpg) center top no-repeat;
    padding: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.card-img-wrap img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    aspect-ratio: 8/6;
    max-height:320px;
}

.card-info {
    padding: 24px 20px;
    flex-grow: 1;
}

.product-title {
    font-size: 16px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 16px;
    line-height: 1.4;
}

.product-features {
    padding-left: 16px;
    margin-bottom: 0;
    color: #666666;
    font-size: 13px;
    line-height: 1.8;
    height:50px;
    max-height:50px;
    overflow: hidden;
}

.product-features p{
    margin-bottom:0px;
    position: relative;
}

.product-features p:before{
    width:6px;
    height:6px;
    display:inline-block;
    position: absolute;
    left:-16px;
    top:8px;
    content:"";
    background: #333;
    border-radius: 50%;
}

.card-footer-links {
    border-top: 1px solid #EBEBEB;
    height: 50px;
}

.card-footer-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 500;
	gap:8px;
    transition: background-color 0.2s;
}

.card-footer-links a:hover {
    background-color: #F9F9F9;
}

.link-cyan {
    color: var(--funa-primary-teal) !important;
    border-right: 1px solid #EBEBEB;
}

.link-purple {
    color: var(--funa-primary-blue) !important;
}



/* ==========================================================================
   5. 加载更多按钮
   ========================================================================== */
.pg-btn-cyan {
    background-color: var(--funa-primary-teal);
    color: var(--funa-primary-blue);
    padding: 10px 40px;
    border-radius: 30px;
    font-size: 15px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    border: none;
    transition: all 0.3s;
    cursor: pointer;
}

.pg-btn-cyan:hover {
    background-color: #6AC2B8;
}

.pg-btn-cyan .dot-dark {
    width: 6px;
    height: 6px;
    background-color: var(--funa-primary-blue);
    border-radius: 50%;
    margin-left: 12px;
}



@media (max-width: 1680px) {
    .card-img-wrap img {
        aspect-ratio: 8/6;
    }
}

@media (max-width: 1280px) {
    .card-img-wrap img {
        aspect-ratio: 8/6;
    }
}

@media (max-width: 991px) {
    .pg-filter-row {
        flex-direction: column;
        padding: 20px 0;
    }
    .pg-filter-label {
        margin-bottom: 15px;
        font-weight: bold;
    }
    .pg-filter-list li {
        padding-bottom: 15px;
    }
    .pg-search-bar {
        width: 100%;
        margin-top: 20px;
    }
    .pg-brand-card {
        padding: 10px 10px 10px 35px; 
    }
    .pg-brand-card .pg-badge {
        position: static; 
        transform: none;
        margin-top: 6px;
    }
}



/* ==========================================================================
   产品系列聚合页 (Product Series) 独立样式
   ========================================================================== */
.funa-ps-series {
    background-color: #ffffff;
    font-family: "Microsoft YaHei", sans-serif;
}

.ps-btn-cyan {
    background-color: var(--funa-primary-teal);
    color: var(--funa-primary-blue);
    padding: 12px 32px;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    transition: all 0.3s;
    margin-bottom: 50px;
}
.ps-btn-cyan:hover {
    background-color: #6AC2B8;
}
.ps-btn-cyan .dot-dark {
    width: 6px;
    height: 6px;
    background-color: var(--funa-primary-blue);
    border-radius: 50%;
    margin-left: 12px;
}

/* 共用按钮样式 - 小号 (了解更多) */
.ps-btn-cyan-sm {
    background-color: var(--funa-primary-teal);
    color: var(--funa-primary-purple);
    padding: 8px 20px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 500;
	width:120px;
    display: inline-flex;
	    justify-content: space-between;
    align-items: center;
    transition: all 0.3s;
}
.ps-btn-cyan-sm:hover {
    background-color: #6AC2B8;
}
.ps-btn-cyan-sm .dot-dark {
    width: 6px;
    height: 6px;
    background-color: var(--funa-primary-blue);
    border-radius: 50%;
    margin-left: 8px;
}

.ps-section-title {
    font-size: 32px;
    font-weight: bold;
    color: #252525;
}

/* ==========================================================================
   1. Hero 主视觉模块
   ========================================================================== */
.ps-hero-section {
    background: var(--funa-primary-blue) url(../img/page/ps-herobg.svg) center center no-repeat;
    background-size:auto;
	height: 400px;
    position: relative;
    overflow: hidden;
}

.ps-hero-section .section-content{
	width:100%;
	padding-left:calc(5% + 3rem);
}

.ps-hero-text h1 {
    font-size: 36px;
    font-weight: bold;
    color: #ffffff;
    margin-bottom: 20px;
}

.ps-hero-text p {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.8;
}

.ps-hero-img-wrap {
    height: 100%;
    width: 100%;
    border-top-left-radius: 250px;
    border-bottom-left-radius: 250px;
    overflow: hidden;
}

.ps-hero-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ==========================================================================
   2. 产品系列列表模块
   ========================================================================== */
.ps-products-section {
    padding: 80px 0;
    background-color: #FAFCFF; 
}


.ps-cat-title {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #555555;
    margin: 30px 0 30px 0;
}

.ps-cat-title::before,
.ps-cat-title::after {
    content: '';
    display: block;
    width: 50px;
    height: 1px;
    background-color: #D1D5DB;
    margin: 0 20px;
}

.ps-product-card {
    background-color: #ffffff;
    border: 1px solid #EAEAEA;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.ps-product-card:hover {
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
    transform: translateY(-5px);
}

.ps-product-card .img-wrap {
    text-align: center;
    background: #F8F8F8 url(../img/procardbg.jpg) center top no-repeat;
    padding: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ps-product-card .img-wrap img {
     max-width: 100%;
    height: auto;
    object-fit: contain;
    aspect-ratio:8/6;
    max-height:320px;
}

.ps-product-card .info-wrap {
    padding: 30px 25px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.ps-product-card .info-wrap h3 {
    font-size: 16px;
    font-weight: 600;
    color: #252525;
    margin-bottom: 12px;
    line-height: 1.5;
}

.ps-product-card .info-wrap p {
    font-size: 13px;
    color: #666666;
    line-height: 1.8;
    margin-bottom: 25px;
    flex-grow: 1;
}

.ps-product-card .descBox{
    margin-bottom:20px;
    height: 72px;
    font-size: 13px;
    color: #666666;
    line-height: 1.8;
    overflow: hidden;
}

.ps-product-card .descBox p {
    margin-bottom:0px;
    display: inline-block;
}


@media (max-width: 1680px) {
    .ps-product-card .img-wrap img {
        aspect-ratio: 8/6;
    }
}

@media (max-width: 1680px) {
    .ps-product-card .img-wrap img {
        aspect-ratio: 8/6;
    }
}


/* ==========================================================================
   3. 案例展示轮播模块
   ========================================================================== */
.ps-cases-section {
    padding: 100px 0 80px 0; 
    background-color: #ffffff;
    overflow: hidden;
}

.ps-cases-section .ps-section-title {
    font-size: 38px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 60px;
}

.ps-cases-swiper {
    width: 100%;
}

.ps-cases-swiper .swiper-slide {
    width: 65%; 
    max-width: 1100px;
    transition: all 0.6s ease;
}

.case-img-wrap {
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    aspect-ratio: 21 / 9; 
    transform: scale(0.75); 
    transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.case-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.case-img-wrap::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    transition: background-color 0.6s ease;
    z-index: 2;
}

.ps-cases-swiper .swiper-slide-active .case-img-wrap {
    transform: scale(1);
    box-shadow: 0 10px 40px rgba(0,0,0,0.1); 
}
.ps-cases-swiper .swiper-slide-active .case-img-wrap::after {
    background-color: rgba(0, 0, 0, 0);
}
.case-desc {
    font-size: 15px;
    color: #252525;
    line-height: 2;
    text-align: center;
    margin: 40px auto 0;
    max-width: 800px;
    letter-spacing: 0.5px;
    
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.ps-cases-swiper .swiper-slide-active .case-desc {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0.1s; 
}

.ps-cases-pagination {
    position: relative !important;
    bottom: auto !important;
    margin-top: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ps-cases-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: #E0E0E0; 
    opacity: 1;
    border-radius: 50%;
    margin: 0 6px !important;
    transition: all 0.4s ease;
}

.ps-cases-pagination .swiper-pagination-bullet-active {
    width: 36px; 
    border-radius: 4px;
    background-color: #999999;
}

@media (max-width: 991px) {
    .ps-cases-section { padding: 60px 0 40px 0; }
    .ps-cases-section .ps-section-title { margin-bottom: 30px; font-size: 28px; }
    .ps-cases-swiper .swiper-slide { width: 85%; }
    .case-img-wrap { aspect-ratio: 16 / 10; }
    .case-desc { margin-top: 20px; font-size: 14px; padding: 0 10px; }
}

/* ==========================================================================
   4. 底部引导咨询模块 (CTA)
   ========================================================================== */
.ps-cta-section {
    background:url(../img/page/ps-cta-img-wrapbg.svg) top center no-repeat, linear-gradient(135deg, #E6F7F5 0%, #ffffff 40%);
    background-size:cover;
   border-top-left-radius: 150px;
    padding-top: 80px;
    position: relative;
}

.ps-cta-title {
    font-size: 32px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 15px;
}

.ps-cta-subtitle {
    font-size: 15px;
    color: #666666;
}

.ps-cta-img-wrap {
    max-width: 100%;
    margin: 40px auto 0;
    text-align: center;
}

.ps-cta-img-wrap img {
    width: 100%;
    height: auto;
    display: block;
}

@media (max-width: 991px) {
    .ps-hero-section {
        height: auto;
        border-bottom-left-radius: 60px;
    }
    .ps-cases-swiper .swiper-slide {
        width: 85%; 
    }
    .case-img-wrap {
        aspect-ratio: 16 / 10;
    }
    .case-desc {
        max-width: 100%;
    }
    .ps-cta-section {
        border-top-left-radius: 60px;
    }
    .ps-cta-title {
        font-size: 24px;
    }
}

/* ==========================================================================
   Page: Prototype Experience 
   ========================================================================== */

.page-prototype-experience {
    font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
    color: #333;
    background-color: #fff;
    overflow-x: hidden;
}

.page-prototype-experience * {
    box-sizing: border-box;
}

/* ==========================================================================
   Section 1: Hero Banner
   ========================================================================== */
.pe-hero-section {
    position: relative;
    width: 100%;
    height: 460px;
    background-color: #312f7a;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.pe-hero-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    height: 100%;
    position: relative;
    z-index: 2;
}

.pe-hero-left {
    flex: 0 0 45%;
    padding-left: 5%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pe-hero-title {
    font-size: 42px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 16px 0;
    letter-spacing: 1px;
}

.pe-hero-subtitle {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 40px 0;
    letter-spacing: 1px;
}

.pe-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #7fcdc5;
    color: #2b2b68;
    font-size: 16px;
    font-weight: 600;
    padding: 12px 32px;
    border-radius: 30px;
    text-decoration: none;
    width: fit-content;
    transition: all 0.3s ease;
}

.pe-btn-primary:hover {
    background-color: #6bbbb3;
}

.pe-btn-dot {
    width: 6px;
    height: 6px;
    background-color: #2b2b68;
    border-radius: 50%;
    margin-left: 12px;
}

.pe-hero-right {
    flex: 1;
    position: relative;
    height: 100%;
}

.pe-hero-image-wrapper {
    position: absolute;
    right: 0;
    top: 0;
    width: 110%;
    height: 100%;
    border-top-left-radius: 400px;
    border-bottom-left-radius: 400px;
    overflow: hidden;
}

.pe-hero-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pe-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(82,196,215,0.85) 0%, rgba(82,196,215,0.2) 50%, rgba(255,255,255,0) 100%);
    z-index: 1;
}

.pe-hero-lines {
    position: absolute;
    left: 30%;
    top: 0;
    width: 200px;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}

.pe-line-h {
    position: absolute;
    top: 50%;
    left: -100px;
    width: 150px;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.15);
}

.pe-line-v {
    position: absolute;
    top: 0;
    left: 50px;
    width: 1px;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.15);
}

.pe-dot {
    position: absolute;
    top: calc(50% - 2.5px);
    left: 47.5px;
    width: 5px;
    height: 5px;
    background-color: #fff;
    border-radius: 50%;
}

/* ==========================================================================
   Section 2: Intro & Video
   ========================================================================== */

.pe-intro-section {
	background: #F8F9FB url(../img/page/narvin-mylab-modulebg.jpg) center center no-repeat; 
    background-size:cover;
    padding: 100px 0 120px 0;
    border-bottom-right-radius: 120px;
}

.pe-intro-container {
    max-width: 1400px; 
}

.pe-intro-main-title {
    text-align: center;
    font-size: 26px; 
    line-height: 1.8;
    color: #252525;
    font-weight: bold;
    margin-bottom: 80px;
    letter-spacing: 1px;
}

.pe-intro-subtitle {
    font-size: 18px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 25px;
}

.pe-equipment-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 12px; 
}

.pe-tag {
    display: inline-block;
    padding: 10px 20px;
    background-color: #ffffff; 
    border: 1px solid #E0E0E0;
    border-radius: 6px;
    color: var(--funa-primary-blue); 
    font-size: 14px;
    transition: all 0.3s;
}

.pe-tag:hover {
    border-color: var(--funa-primary-teal);
    box-shadow: 0 4px 10px rgba(125, 201, 193, 0.15);
}

.pe-booking-link {
    font-size: 15px;
    color: #555555;
    display: flex;
    align-items: center;
}

.pe-booking-link a {
    color: var(--funa-primary-teal);
    text-decoration: none;
    margin-left: 5px;
    display: inline-flex;
    align-items: center;
    font-weight: 500;
}

.pe-arrow-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    background-color: var(--funa-primary-teal);
    border-radius: 50%;
    margin-left: 6px;
    font-style: normal;
}

.pe-arrow-icon::after {
    content: '';
    width: 6px;
    height: 6px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: rotate(45deg);
    margin-left: -2px; 
}

.pe-video-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10; 
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08); 
}

.pe-video-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.pe-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background-color: #ffffff;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

.pe-play-btn:hover {
    transform: translate(-50%, -50%) scale(1.05);
}

.pe-play-triangle {
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 18px solid var(--funa-primary-teal);
    margin-left: 6px;
}

@media (max-width: 991px) {
    .pe-intro-section {
        padding: 60px 0;
        border-bottom-left-radius: 60px;
        border-bottom-right-radius: 60px;
    }
    .pe-intro-main-title {
        font-size: 20px;
        margin-bottom: 40px;
    }
    .pe-intro-subtitle {
        font-size: 16px;
    }
    .pe-play-btn {
        width: 60px;
        height: 60px;
    }
    .pe-play-triangle {
        border-top: 8px solid transparent;
        border-bottom: 8px solid transparent;
        border-left: 14px solid var(--funa-primary-teal);
    }
}

/* ==========================================================================
   Section 3: Locations Accordion
   ========================================================================== */

.pe-locations-section {
    padding: 100px 0;
    background-color: #ffffff;
}

.pe-locations-title {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 60px;
    letter-spacing: 1px;
}

.pe-accordion-container {
    max-width: 1400px;
    height: 520px; 
    margin: 0 auto;
    display: flex;
    border-top: 1px solid #EAEAEA;
    border-bottom: 1px solid #EAEAEA;
    background-color: #ffffff;
}

.pe-accordion-item {
    flex: 1; 
    border-right: 1px solid #EAEAEA;
    position: relative;
    transition: flex 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    overflow: hidden;
    cursor: pointer;
    background-color: #ffffff;
}

.pe-accordion-item:first-child {
    border-left: 1px solid #EAEAEA;
}

.pe-accordion-item.active {
    flex: 4; 
    cursor: default;
}

.pe-accordion-header {
    position: absolute;
    top: 50px;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 24px;
    color: var(--funa-primary-blue);
    font-weight: 500;
    opacity: 1;
    transition: opacity 0.3s ease;
    z-index: 2;
    white-space: nowrap;
}

.pe-accordion-icon {
    position: absolute;
    bottom: 50px;
    left: 0;
    width: 100%;
    text-align: center;
    opacity: 1;
    transition: opacity 0.3s ease;
}

.pe-accordion-icon img {
    height: 100px; 
    width: auto;
    object-fit: contain;
}

.pe-accordion-item.active .pe-accordion-header,
.pe-accordion-item.active .pe-accordion-icon {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
}

.pe-accordion-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 40px; 
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease 0.2s;
    display: flex;
    flex-direction: column;
}

.pe-accordion-item.active .pe-accordion-content {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.pe-city-title {
    display: flex;
    align-items: baseline;
    margin-bottom: 25px;
    white-space: nowrap;
}

.pe-city-title .name-cn {
    font-size: 28px;
    color: var(--funa-primary-teal);
    font-weight: bold;
    margin-right: 15px;
}

.pe-city-title .name-en {
    font-size: 54px; 
    color: #E2E5EC; 
    font-weight: 300;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.pe-city-card {
    position: relative;
    width: 100%;
    flex-grow: 1;
    border-radius: 12px;
    overflow: hidden;
}

.pe-city-card img.pe-city-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
	border-radius:8px;
}

.pe-city-info {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 140px;
    background: linear-gradient(to top, rgba(51, 50, 132, 0.95) 0%, rgba(51, 50, 132, 0) 100%);
    padding: 30px;
    color: #ffffff;
    font-size: 14px;
    display: flex;
    align-items: flex-end; 
}

.pe-city-info .pin-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 8px;
}

.pe-city-info .pin-icon img {
    width: 14px;
    height: auto;
}


@media (max-width: 991px) {
    .pe-locations-section { padding: 60px 0; }
    .pe-locations-title { font-size: 24px; margin-bottom: 40px; }
    
    .pe-accordion-container {
        flex-direction: column;
        height: 700px;
    }
    .pe-accordion-item {
        border-right: none;
        border-bottom: 1px solid #EAEAEA;
    }
    .pe-accordion-item:last-child {
        border-bottom: none;
    }
    .pe-accordion-item:first-child {
        border-left: none;
    }
    
    .pe-accordion-header {
        top: 50%; transform: translateY(-50%);
        left: 20px; width: auto;
        font-size: 20px;
    }
    .pe-accordion-icon {
        bottom: 50%; transform: translateY(50%);
        left: auto; right: 20px; width: auto;
    }
    .pe-accordion-icon img { height: 40px; } 
    
    .pe-accordion-content { padding: 20px; }
    .pe-city-title .name-cn { font-size: 22px; }
    .pe-city-title .name-en { font-size: 32px; }
    .pe-city-info { padding: 20px; }
}


/* ==========================================================================
   Section 4: 通用预约流程模块 (全局复用)
   ========================================================================== */
.funa-shared-process {
    background-color: #ffffff;
}

.process-flex-container {
    max-width: 1200px;
    margin: 0 auto;
}

.process-step {
    text-align: center;
}

.step-circle {
    width: 240px;
    height: 240px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.step-circle:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

.step-color-1 { background-color: #B5B4D6; }
.step-color-2 { background-color: #8380B5; }
.step-color-3 { background-color: #555097; }
.step-color-4 { background-color: var(--funa-primary-blue); }

.step-circle .icon-wrap {
    position: relative;
    margin-bottom: 20px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-circle .icon-wrap img {
    height: 60px;
    width: auto;
    position: relative;
    z-index: 2;
}

.step-circle .cyan-dot {
    position: absolute;
    width: 18px;
    height: 18px;
    background-color: var(--funa-primary-teal);
    border-radius: 50%;
    top: -5px;
    right: -10px;
    z-index: 1;
}

.step-circle p {
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
    font-weight: 500;
}

.process-arrow img {
    width: 20px;
    opacity: 0.6;
}

/* ==========================================================================
   Section 5: 免费预约表单模块
   ========================================================================== */
.pe-booking-form-section {
    background:url(../img/page/formsectionbg.svg) center top no-repeat, radial-gradient(circle at center top, #EDF7F6 0%, #FAFCFF 40%, #ffffff 100%);
	background-size:100%;
	border-top-left-radius:120px;
}

.booking-form-wrapper {
    max-width: 960px; 
}

.booking-form-wrapper .g-4 {
   gap: 1rem 0px;
}

.pe-custom-form .custom-input {
    height: 54px;
    border-radius: 30px;
    border: 1px solid #EBEBEB;
    background-color: #ffffff;
    padding: 10px 24px;
    font-size: 16px;
    color: #333333;
    transition: all 0.3s;
    box-shadow: none;
}

.pe-custom-form .custom-input:focus {
    border-color: var(--funa-primary-teal);
    background-color: #ffffff;
}

.pe-custom-form .custom-input::placeholder {
    color: #999999;
}

.composite-input-wrap {
    height: 54px;
    border-radius: 30px;
    border: 1px solid #EBEBEB;
    background-color: #ffffff;
    overflow: hidden;
    transition: all 0.3s;
}

.composite-input-wrap:focus-within {
    border-color: var(--funa-primary-teal);
}

.composite-input-wrap .divider {
    width: 1px;
    height: 24px;
    background-color: #EBEBEB;
}

.composite-input-wrap .code-input {
    width: 120px;
    padding-left: 20px;
}

.composite-input-wrap .verify-btn {
    background-color: var(--funa-primary-blue);
    color: #ffffff;
    border: none;
    border-radius: 20px;
    height: 38px;
    padding: 0 20px;
    font-size: 16px;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color 0.3s;
}

.composite-input-wrap .verify-btn:hover {
    background-color: var(--funa-primary-purple);
}

.composite-input-wrap .verify-btn.disabled {
    background-color: #cccccc;
    cursor: not-allowed;
}

.custom-select-wrap select {
    appearance: none; 
    -webkit-appearance: none;
    cursor: pointer;
}
.custom-select-icon {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background-color: var(--funa-primary-blue);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none; 
}
.custom-select-icon .arrow-down {
    border: solid white;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(45deg);
    margin-bottom: 3px;
}

.calendar-icon {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    pointer-events: none;
}

.pe-custom-form .custom-textarea {
    height: 140px;
    border-radius: 20px; 
    border: 1px solid #EBEBEB;
    padding: 20px 24px;
    resize: none;
    font-size:16px;
    box-shadow: none;
}

.pe-custom-form .custom-textarea:focus {
    border-color: var(--funa-primary-teal);
}

.custom-policy-check {
    cursor: pointer;
}

.custom-policy-check .check-circle {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1px solid #D9D9D9;
    background-color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}

.custom-policy-check input ~ .check-circle::after {
    content: '';
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    margin-bottom: 2px;
	opacity:0;
}

.custom-policy-check input:checked ~ .check-circle {
    background-color: var(--funa-primary-teal);
    border-color: var(--funa-primary-teal);
}

.custom-policy-check input:checked ~ .check-circle::after {
    opacity:1;
}

.pe-custom-form .layui-form-checkbox{
	display:none;
}

.policy-text {
    font-size: 16px;
    color: #666666;
	margin-left:10px;
}
.policy-text a {
    color: var(--funa-primary-teal);
    text-decoration: underline!important;
	margin-left:3px;
}

.pe-custom-form .submit-btn {
    border: none;
    height: 50px;
    font-size: 16px;
}

/* --- 移动端适配 --- */
@media (max-width: 991px) {
    .process-flex-container { gap: 30px; }
    .step-circle { width: 200px; height: 200px; }
    .composite-input-wrap .code-input { width: 90px; padding-left: 10px; }
    .composite-input-wrap .verify-btn { padding: 0 12px; font-size: 12px; }
}

/* ==========================================================================
   Page: Equipment Maintenance
   ========================================================================== */
.funa-em-page {
    background-color: #ffffff;
    font-family: "Microsoft YaHei", sans-serif;
}


/* ==========================================================================
   2. 售后团队
   ========================================================================== */
.em-team-section {
    padding: 120px 0;
    background:url(../img/page/em-team-sectionbg.jpg) top center no-repeat, linear-gradient(135deg, #FCFDFD 0%, #FAFCFF 100%);
	background-size:cover;
	border-bottom-right-radius:120px;
}

.em-section-title {
    font-size: 32px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 30px;
}

.em-section-intro{
	padding-right:5%;
}

.em-team-text p {
    font-size: 14px;
    color: #555555;
    line-height: 2.2;
    margin-bottom: 25px;
    text-align: justify;
}

.em-team-features {
    margin-top: 50px;
    gap: 60px;
}

.em-feature-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    color: var(--funa-primary-blue);
    font-size: 14px;
    font-weight: 500;
}

.em-feature-item img {
    height: 22px;
    width: auto;
    margin-bottom: 14px;
}

.em-video-wrapper {
    position: relative;
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06);
}

.em-video-wrapper .video-cover {
    width: 100%;
    height: auto;
    display: block;
}

.em-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 72px;
    height: 72px;
    background-color: #ffffff;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

.em-play-btn:hover {
    transform: translate(-50%, -50%) scale(1.05);
}

.em-play-triangle {
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 16px solid var(--funa-primary-teal);
    margin-left: 6px;
}

@media (max-width: 991px) {
    .em-team-section { padding: 60px 0; }
    .em-team-features { gap: 30px; margin-top: 30px; }
}

/* ==========================================================================
   3. 售后支持现场 
   ========================================================================== */
.support-section {
	padding: 120px 0px;
	margin: 0 auto;
	overflow-x:hidden;
	 background: url(../img/aboutsection_bg.png) center bottom no-repeat;
	background-size: cover;
}

.support-section .section-title {
    font-size: 32px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 40px;
}

.support-section .swiper-container-wrapper {
    position: relative; 
    width: 100%;
}

.support-section .supportSwiper {
    width: 100%;
    height: 640px; 
    overflow: visible; 
}

.support-section .swiper-wrapper {
    align-items: flex-start; 
}

.support-section .swiper-slide {
    width: 480px !important;
    height: 320px;         
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.25, 0.8, 0.25, 1); 
    opacity: 0.6; 
    cursor: pointer;
}

.support-section .swiper-slide-active {
    width: calc(100% - 500px) !important; 
    height: 640px; 
    opacity: 1;
}
.support-section .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}

.support-section .custom-nav-group {
    position: absolute;
    bottom: 0;
    left: calc(100% - 460px); 
    display: flex;
    gap: 16px;
    z-index: 10;
}

.support-section .circle-btn {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid #E5E5E5;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    color: #b0b0b0;
}

.support-section .circle-btn:hover {
	border-color: #b0b0b0;
	color: #666;
}

.support-section .circle-btn:hover:not(.swiper-button-disabled) {
    border-color: var(--funa-primary-teal);
    color: var(--funa-primary-teal);
    box-shadow: 0 4px 12px rgba(110, 198, 190, 0.2);
}

.support-section .circle-btn.swiper-button-disabled {
	opacity: 0.5;
	cursor: not-allowed;
}


.support-section .circle-btn svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

@media only screen and (max-width: 3560px) {
	.support-section .supportSwiper {
		height:720px; 
	}
	 .support-section .swiper-slide { 
		width: 640px !important; 
	 }
	.support-section .swiper-slide-active {
		width: calc(100% - 50%) !important; 
		height: 720px;
	}
	.support-section .custom-nav-group {
		left: calc(100% - 46%);
	}
}


@media only screen and (max-width: 1920px) {
	.support-section .supportSwiper {
		height:640px; 
	}
	.support-section .swiper-slide-active {
		width: calc(100% - 50%) !important; 
		height: 720px;
	}
	.support-section .custom-nav-group {
		left: calc(100% - 46%);
	}
}

@media (max-width: 1199px) {
    .support-section .supportSwiper { height: 460px; }
    .support-section .swiper-slide { width: 320px !important; height: 240px; }
    .support-section .swiper-slide-active { width: calc(100% - 340px) !important; height: 460px; }
    .support-section .custom-nav-group { left: calc(100% - 310px); }
}

@media (max-width: 991px) {
    .support-section { padding: 60px 0; }
    .support-section .supportSwiper { height: 350px; overflow: hidden;  }
    .support-section .swiper-wrapper { align-items: center; }
    
	 .support-section .swiper-slide { width: 80% !important; height: 280px; opacity: 0.8; }
    
    .support-section .swiper-slide-active { width: 85% !important; height: 350px; opacity: 1; }
 
    .support-section .custom-nav-group { 
        position: relative; 
        left: 0; 
        margin-top: 30px; 
        justify-content: center; 
    }
}

.em-services-section {
    padding: 0 0 120px 0;
    background-color: #ffffff;
}

.em-service-card {
    background-color: #F1F9F9; 
    border-radius: 16px;
    padding: 40px 40px 60px 40px;
    position: relative;
    height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.em-service-card:nth-child(1) {
	background:url(../img/page/em-service-cardbg1.svg) center center no-repeat;
	background-size:cover;
}

.em-service-card:nth-child(2) {
	background:url(../img/page/em-service-cardbg2.svg) center center no-repeat;
	background-size:cover;
}

.em-service-card:nth-child(3) {
	background:url(../img/page/em-service-cardbg3.svg) center center no-repeat;
	background-size:cover;
}

.em-service-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.05);
}

.em-service-card h3 {
    font-size: 20px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 25px;
}

.em-custom-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.em-custom-list li {
    position: relative;
    font-size: 15px;
    color: var(--funa-primary-blue); 
    margin-bottom: 12px;
    padding-left: 18px;
}

.em-custom-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 6px;
    height: 6px;
    background-color: var(--funa-primary-blue);
    border-radius: 50%;
}

.em-service-card .card-icon {
    position: absolute;
    right: 30px;
    bottom: 30px;
    width: 80px;
    height: auto;
    opacity: 0.9;
}


@media (max-width: 991px) {
    .em-hero-section {
        height: auto;
        border-bottom-left-radius: 60px;
    }
    .em-team-section, .em-gallery-section {
        padding: 60px 0;
    }
    .em-services-section {
        padding: 0 0 60px 0;
    }
    .em-gallery-swiper .swiper-slide,
    .em-gallery-swiper .swiper-slide-active {
        width: 85%;
        height: 300px;
    }
    .em-service-card {
        padding: 30px 20px 80px 30px;
    }
    .em-service-card .card-icon {
        width: 48px;
        right: 20px;
        bottom: 20px;
    }
}

/* ==========================================================================
   5. 用户培训轮播模块 
   ========================================================================== */
.em-training-section {
    padding: 120px 0;
    background: #ffffff url(../img/page/em-training-sectionbg.svg) top center no-repeat;
    background-size:100%;
	overflow: hidden;
}

.em-section-subtitle{
	width:80%;
	font-size:16px;
	line-height:1.6;
	margin:0 auto;
}

.em-training-swiper {
    width: 100%;
}

.em-training-swiper .swiper-slide {
    width: 65%; 
    max-width: 1100px;
    transition: all 0.6s ease;
}

.training-img-wrap {
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    aspect-ratio: 21 / 9; 
    transform: scale(0.85); 
    transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.training-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.training-img-wrap::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    transition: background-color 0.6s ease;
    z-index: 2;
}

.em-training-swiper .swiper-slide-active .training-img-wrap {
    transform: scale(1);
    box-shadow: 0 10px 40px rgba(0,0,0,0.1); 
}
.em-training-swiper .swiper-slide-active .training-img-wrap::after {
    background-color: rgba(0, 0, 0, 0);
}

.training-desc {
    font-size: 15px;
    color: #252525;
    line-height: 2;
    text-align: center;
    margin: 40px auto 0;
    max-width: 800px;
    letter-spacing: 0.5px;
    
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.em-training-swiper .swiper-slide-active .training-desc {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0.1s;
}

.em-training-pagination {
    position: relative !important;
    bottom: auto !important;
    margin-top: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.em-training-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: #E0E0E0; 
    opacity: 1;
    border-radius: 50%;
    margin: 0 6px !important;
    transition: all 0.4s ease;
}

.em-training-pagination .swiper-pagination-bullet-active {
    width: 36px; 
    border-radius: 4px;
    background-color: #999999; 
}

@media (max-width: 991px) {
    .em-training-section { padding: 50px 0; }
    .em-training-swiper .swiper-slide { width: 85%; }
    .training-img-wrap { aspect-ratio: 16 / 10; }
    .training-desc { margin-top: 20px; font-size: 14px; padding: 0 10px; }
}

/* ==========================================================================
   Page: Chip Procurement 
   ========================================================================== */
.funa-co-page {
    background-color: #ffffff;
    font-family: "Microsoft YaHei", sans-serif;
}

.co-section-title {
    font-size: 32px;
    font-weight: bold;
    color: #252525;
    letter-spacing: 1px;
}

.co-section-subtitle{
	font-size: 16px;
}

.co-chip-card {
    background-color: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}

.co-chip-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
}

.chip-top {
    background-color: #72C7C0;
    padding: 24px 20px;
    position: relative;
    color: #333284;
    overflow: hidden;
}

.chip-icon {
    width: 40px;
    height: 40px;
    background-color: #333284;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}

.chip-icon img {
    width:24px;
    height: 24px;
}

.chip-name {
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 4px;
    position: relative;
    z-index: 2;
}

.chip-desc {
    font-size: 20px;
    margin: 0;
    font-weight: 500;
    position: relative;
    z-index: 2;
}

.chip-watermark {
    position: absolute;
    right: 10px;
    bottom: -15px;
    font-size: 100px;
    font-weight: bold;
    color: rgba(51, 50, 132, 0.10);
    line-height: 1;
    z-index: 1;
}

.chip-middle {
    width: 100%;
    background-color: #333; 
}

.chip-middle img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.chip-bottom {
    width: 100%;
    position: relative;
}

.chip-bottom img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bottom-orange { background: linear-gradient(135deg, #1A8BC2 0%, #F59723 100%); }
.bottom-pink { background: linear-gradient(135deg, #EBE8E8 0%, #C43864 100%); }
.bottom-green { background: linear-gradient(135deg, #71C6B8 0%, #87A997 100%); }
.bottom-brown { background: linear-gradient(135deg, #E6A23C 0%, #1573B6 100%); }
.bottom-purple { background: linear-gradient(135deg, #BDE772 0%, #95456A 100%); }

@media (max-width: 991px) {
    .co-section-title { font-size: 26px; }
    .chip-middle {  }
    .chip-bottom {  }

	.co-chip-types-section .col{
		margin-bottom:40px;
	}
}


/* ==========================================================================
   Chip Procurement: DENSsolutions Appreciation Section 
   ========================================================================== */
.co-appreciation-section {
    background: #FAFBFC url(../img/page/co-appreciation-sectionbg.jpg) center center no-repeat; 
    background-size:cover;
	padding: 100px 0 120px 0;
    border-bottom-right-radius: 120px;
    position: relative;
    z-index: 2;
}

.co-appreciation-content {
    max-width: 960px; 
}

.co-appreciation-section .dens-logo {
    height: 50px; 
    width: auto;
    object-fit: contain;
    margin-bottom: 25px !important;
}

.appreciation-title {
    font-size: 26px;
    font-weight: bold;
    color: #252525;
    letter-spacing: 1px;
}

.appreciation-desc {
    font-size: 16px;
    color: #555555;
    line-height: 1.8;
    margin: 0 auto;
    letter-spacing: 0.5px;
}

/* 耗材订购 - 灯丝展示模块 */
.co-filament-section {
    background-color: #ffffff;
    padding-top: 80px;
    padding-bottom: 80px;
}

.co-filament-section .co-section-title {
    font-size: 32px;
    font-weight: 700;
    color: #252525;
    margin-bottom: 60px;
}

.filament-card {
    text-align: center;
}

.filament-img-wrapper {
    width: 360px;
    height: 360px;
    margin: 0 auto 30px auto;
    border-radius: 50%;
    overflow: hidden;
    background-color: #EEEEEE;
    border-bottom: 8px solid var(--funa-primary-teal); 
    display: flex;
    align-items: center;
    justify-content: center;
}

.filament-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.filament-title {
    font-size: 18px;
    font-weight: bold;
    color: var(--funa-primary-blue);
    margin: 0;
}

/* ==========================================================================
   耗材订购表单 - 经典方形多选框
   ========================================================================== */

.co-form-label {
    font-size: 15px;
    color: #252525;
    font-weight: bold;
    margin-bottom: 20px;
    display: block;
    letter-spacing: 0.5px;
}

.co-checkbox-group {
    display: flex;
    flex-wrap: wrap;
   gap: 16px 30px; 
}

.co-square-check {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    margin: 0;
    user-select: none;
}

.co-square-check input[type="checkbox"] {
    display: none;
}

.co-square-check .box {
    width: 18px;
    height: 18px;
    border: 1px solid #D9D9D9;
    border-radius: 4px; 
    background-color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease-in-out;
    position: relative;
    flex-shrink: 0; 
}

.co-square-check .text {
    font-size: 16px;
    color: #555555;
    margin-left: 10px;
    line-height: 1.2;
    transition: color 0.2s ease;
}

.co-square-check:hover .box {
    border-color: var(--funa-primary-teal);
}
.co-square-check:hover .text {
    color: var(--funa-primary-teal);
}

.co-square-check input[type="checkbox"]:checked + .box {
    background-color: var(--funa-primary-teal);
    border-color: var(--funa-primary-teal);
}

.co-square-check input[type="checkbox"]:checked + .box::after {
    content: '';
    position: absolute;
    width: 5px;
    height: 10px;
    border: solid #ffffff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    top: 1px; 
    left: 5px;
}

.co-square-check input[type="checkbox"]:checked ~ .text {
    color: var(--funa-primary-teal);
    font-weight: 500;
}



/* ==========================================================================
   Chip Procurement: MiniApp Section 
   ========================================================================== */
.co-miniapp-section {
    background: url(../img/page/bg-miniapp.jpg) center center no-repeat,linear-gradient(135deg, #F2F9F9 0%, #E2EEEE 100%);
	background-size: cover;
    position: relative;
    padding-top: 0px;
    overflow: hidden;
}

.miniapp-row {
    margin-top: 60px;
}

.miniapp-text-wrapper {
    padding-left: 10%;
}

.miniapp-title {
    font-size: 28px;
    font-weight: bold;
    color: #252525;
    line-height: 1.5;
    margin: 0;
    letter-spacing: 1px;
}

.qr-code-box {
    background-color: #ffffff;
    padding: 0px;
    border-radius: 24px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.06); 
    display: inline-block;
}

.qr-code-box img {
    width: 140px; /
    height: auto;
    display: block;
}

.phone-col {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-end; 
}

.phone-mockup {
    max-width: 100%;
    width: 380px; 
    height: auto;
    display: block;
    margin-bottom: -10px;
}

@media (max-width: 991px) {
    .co-appreciation-section {
        padding: 60px 0 80px 0;
        border-bottom-left-radius: 60px;
        border-bottom-right-radius: 60px;
    }
    
    .appreciation-title {
        font-size: 20px;
    }
    
    .appreciation-desc {
        text-align: justify;
    }
    
    .co-miniapp-section {
        padding-top: 60px;
        margin-top: -30px;
    }
    
    .miniapp-row {
        margin-top: 30px;
    }
    
    .miniapp-text-wrapper {
        padding-left: 0;
    }
    
    .miniapp-title {
        font-size: 22px;
    }
    
    .phone-mockup {
        width: 280px;
        margin-top: 40px;
    }
	
	
}

/* 纳问实验室模块 */
.narvin-mylab-module.narvin-section {
	background: #F9F9F9 url(../img/page/narvin-mylab-modulebg.jpg) center center no-repeat; 
    background-size:cover;
    padding:100px 0px 100px 0;
}

.narvin-mylab-module .narvin-logo {
    height: 80px;
}

.narvin-mylab-module .narvin-title {
    font-size: 28px;
    font-weight: bold;
    color: #252525;
    margin-bottom: 30px;
}

.narvin-mylab-module .narvin-description {
    font-size: 15px;
    color: #555555;
    line-height: 2.0;
    text-align: center;
    margin-bottom: 60px;
    padding: 0 5%;
}

.narvin-mylab-module .narvin-feature-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 40px 20px;
    height: 100%;
    border: none;
    transition: transform 0.3s ease;
}

.narvin-mylab-module .narvin-icon-wrapper {
    width: 42px;
    height: 42px;
    margin: 0 auto;
}

.narvin-mylab-module .narvin-card-title {
    font-size: 16px;
    font-weight: 500;
    color: #333284; 
    margin-bottom: 10px;
}

.narvin-mylab-module .narvin-card-text {
    font-size: 16px;
    color: #333284;
	 font-weight: 500;
    margin: 0;
}

@media (max-width: 768px) {
    .narvin-mylab-module .narvin-title { font-size: 22px; }
    .narvin-mylab-module .narvin-description { font-size: 14px; margin-bottom: 30px; }
}


/* 服务范围表格 */
.narvin-services-table {
	padding:80px 0px;
    background-color: #ffffff;
}
.narvin-services-table span{
	font-family: poppins;
	font-size:18px;
}
	
.narvin-services-table .icon-arrow{
	font-family: poppins;
	width:12px;
	height:12px;
	background:url(../img/page/arrow-icon.svg) center center no-repeat;
	background-size:contain;
}

.narvin-services-table .section-heading {
    font-size: 32px;
    font-weight: 700;
    color: #252525;
    margin-bottom: 40px;
}

.narvin-services-table .table-container {
    width: 100%;
    overflow-x: auto;
}

.narvin-table {
    width: 100%;
    border-collapse: collapse;
}

.narvin-table thead {
    background-color: #F8F9FE;
}

.narvin-table th {
    color: #72C7C0; 
    font-size: 14px;
    font-weight: 500;
    padding: 18px 24px;
    text-align: left;
    border-bottom: 1px solid #EAEAEA;
}

.narvin-table td {
    padding: 16px 24px;
    color: #555555;
    font-size: 14px;
    border-bottom: 1px solid #EAEAEA;
}

.narvin-table .row-title {
    font-weight: bold;
    color: #252525;
    vertical-align: middle;
}

.narvin-table td, .narvin-table th {
    border-left: none;
    border-right: none;
}

.narvin-table tbody tr:hover {
    background-color: #FAFAFA;
}



.narvin-gallery-section .gallery-card {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    height: 240px;
}

.narvin-gallery-section .g-4{
	gap:2rem 0px;
}

.narvin-gallery-section .gallery-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.narvin-gallery-section .card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px;
    background: linear-gradient(to top, rgba(51, 50, 132, 0.9), transparent);
    color: #fff;
	font-size:18px;
    font-weight: 600;
    text-align: center;
}

/* ALD Hero */
.ald-page .ald-hero-section {
	background: #FAFBFC url(../img/page/narvin-mylab-modulebg.jpg) center center no-repeat; 
    background-size:cover;
    padding: 80px 0 100px 0px;
}

.ald-page .ald-hero-intro {
    font-size: 21px;
    color: #252525;
    line-height: 1.8;
    font-weight: 600;
    margin: 0;
}

.ald-page .features-title {
    font-size: 18px;
    font-weight: bold;
    color: #252525;
}

.ald-page .feature-item {
    margin-bottom: 24px;
}

.ald-page .feature-item span{
	font-family: poppins;
	font-size:18px;
}

.ald-page .feature-item h4 {
    font-size: 15px;
    font-weight: bold;
    color: #333284;
    margin-bottom: 8px;
}

.ald-page .feature-item p {
    font-size: 14px;
    color: #555555;
    line-height: 1.6;
    margin: 0;
    padding-left: 12px;
}


.ald-page .ald-video-container {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    height: 480px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.ald-page .video-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ald-page .play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 64px;
    height: 64px;
    background: #ffffff;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s;
}

.ald-page .play-btn::after {
    content: '';
    width: 0; height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 16px solid #7DC9C1;
    margin-left: 4px;
}

.ald-page .play-btn:hover {
    transform: translate(-50%, -50%) scale(1.1);
}

.ald-services-section {
    background-color: #ffffff;
	padding:80px 0px 100px;
}

.ald-section-title {
    font-size: 32px;
    font-weight: bold;
    color: #252525;
    letter-spacing: 1px;
}

.service-card-main {
   border-radius: 20px;
    padding: 48px;
    height: 640px;
    color: #ffffff;
    display: flex;
    align-items: flex-end; 
	position:relative;
}

.service-card-main:before{
	 background: linear-gradient(180deg, rgba(136, 136, 152, 0) 0%, rgba(51, 50, 132, 1) 100%);
    display:block;
	position:absolute;
	width:100%;
	height:60%;
	content:'';
	bottom:0px;
	left:0px;
	 border-radius: 20px;
	 z-index:1;
}


.service-card-main .card-content{
	position:relative;
	 z-index:100;
}

.service-card-main h3 {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 16px;
}

.service-card-main p {
    font-size: 16px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 24px;
    max-width: 90%;
}

.btn-ald-quote {
    background-color: #7DC9C1;
    color: #333284;
    padding: 12px 32px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: bold;
    display: inline-block;
    transition: background-color 0.3s;
}

.btn-ald-quote:hover {
    background-color: #6AC2B8;
    color: #ffffff;
}

.service-card-sub {
    background-color: #F8F9FB;
    border-radius: 20px;
    height: 640px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    cursor: pointer;
}

.service-card-sub:hover {
    background-color: #333284;
}

.service-card-sub h3 {
    font-size: 32px;
    font-weight: bold;
    color: #333284;
    transition: color 0.3s;
}

.service-card-sub:hover h3 {
    color: #ffffff;
}

.ald-page .experience-box { 
    background: #333284; color: #fff; border-top-left-radius: 200px; border-bottom-left-radius: 200px;
    height: 300px; overflow: hidden;
}
.ald-page .info-side { width: 40%; padding-left: 80px; }
.ald-page .img-side { width: 60%; height: 100%; }
.ald-page .img-side img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 1480px) {
	.ps-hero-text p {
		font-size: 16px;
	}

}


/* ==========================================================================
   ALD 包覆服务 - 手风琴交互样式
   ========================================================================== */
.ald-services-accordion {
    display: flex;
    gap: 24px;
    height: 640px;
    width: 100%;
}

.ald-service-item {
    position: relative;
    flex: 1; /* 收缩状态的宽度比例 */
    border-radius: 20px;
    overflow: hidden;
    transition: flex 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    cursor: pointer;
    background-color: #F8F9FB;
}

.ald-service-item.active {
    flex: 2.5; /* 展开状态的宽度比例，使其更宽 */
    cursor: default;
}

/* 背景图层：仅展开时可见并平滑淡入 */
.ald-service-item .item-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0;
    transition: opacity 0.6s ease;
    z-index: 1;
}

.ald-service-item.active .item-bg {
    opacity: 1;
}

/* 展开态 (Main 内容)：默认隐藏 */
.ald-service-item .service-card-main {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 48px;
    color: #ffffff;
    display: flex;
    align-items: flex-end;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
    z-index: 3;
    background: none; 
}

/* 激活后渐现并伴随文字上浮效果 */
.ald-service-item.active .service-card-main {
    opacity: 1;
    visibility: visible;
    transition-delay: 0.2s;
}

/* 底部黑色渐变遮罩，确保文字清晰 */
.ald-service-item .service-card-main::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 65%;
    background: linear-gradient(180deg, rgba(51, 50, 132, 0) 0%, rgba(51, 50, 132, 0.95) 100%);
    z-index: -1;
}

.ald-service-item .card-content {
    position: relative;
    z-index: 2;
    width: 100%;
    transform: translateY(20px);
    transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.ald-service-item.active .card-content {
    transform: translateY(0);
}

.ald-service-item .service-card-main h3 {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 16px;
}

.ald-service-item .service-card-main p {
    font-size: 16px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 24px;
    max-width: 90%;
}

/* 收起态 (Sub 内容)：垂直居中展示 */
.ald-service-item .service-card-sub {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #F8F9FB;
    transition: all 0.4s ease;
    z-index: 2;
}

/* Hover 交互还原你原先的设计：变复纳蓝 */
.ald-service-item:hover .service-card-sub {
    background-color: #333284;
}
.ald-service-item:hover .service-card-sub h3 {
    color: #ffffff;
}

.ald-service-item.active .service-card-sub {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.ald-service-item .service-card-sub h3 {
    font-size: 26px;
    font-weight: bold;
    color: #333284;
    transition: color 0.4s ease;
    margin: 0;
    text-align: center;
    padding: 0 20px;
    word-break: keep-all; 
}

/* 移动端自动变成上下堆叠手风琴 */
@media (max-width: 991px) {
    .ald-services-accordion {
        flex-direction: column;
        height: auto;
    }
    .ald-service-item {
        height: 120px;
        flex: none;
        transition: height 0.5s ease;
    }
    .ald-service-item.active {
        height: 480px;
        flex: none;
    }
    .ald-service-item .service-card-main {
        padding: 30px 24px;
    }
    .ald-service-item .service-card-main h3 {
        font-size: 24px;
    }
    .ald-service-item .service-card-sub h3 {
        font-size: 22px;
    }
}


/* ==========================================================================
   产品卡片 - 解决方案悬浮层交互
   ========================================================================== */
.pg-product-card {
    position: relative; 
}

.card-solution-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* 100% 高度减去底部按钮高度 51px (50px 高度 + 1px 边框) */
    height: calc(100% - 49px); 
    background-color: var(--funa-primary-blue);
    border-radius: 12px 12px 0 0;
    padding: 32px 20px 20px 24px;
    z-index: 10;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    display: flex;
    flex-direction: column;
}

.pg-product-card.active-solution .card-solution-overlay {
    opacity: 1;
    visibility: visible;
}

.card-solution-overlay .solution-header {
    margin-bottom: 24px;
}

.card-solution-overlay .s-title {
    font-size: 18px;
    font-weight: bold;
    color: #ffffff;
    margin-bottom: 12px;
    letter-spacing: 1px;
}

.card-solution-overlay .s-divider {
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.15);
    position: relative;
}

.card-solution-overlay .s-divider::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 32px;
    height: 1px;
    background-color: var(--funa-primary-teal);
}

/* 列表滚动区域及自定义滚动条 */
.card-solution-overlay .solution-scroll-wrap {
    flex-grow: 1;
    overflow-y: auto;
    padding-right: 15px; 
}

.card-solution-overlay .solution-scroll-wrap::-webkit-scrollbar {
    width: 2px;
}
.card-solution-overlay .solution-scroll-wrap::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 2px;
}
.card-solution-overlay .solution-scroll-wrap::-webkit-scrollbar-thumb {
    background: #ffffff;
    border-radius: 2px;
}

/* 列表项与文字颜色 */
.card-solution-overlay .solution-list {
    margin: 0;
}
.card-solution-overlay .solution-list li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.card-solution-overlay .solution-list li a {
    display: block;
    padding: 16px 0;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.6;
    text-decoration: none;
    transition: color 0.2s;
}
.card-solution-overlay .solution-list li a:hover {
    color: var(--funa-primary-teal);
}

/* 底部查看全部 */
.card-solution-overlay .view-all {
    color: var(--funa-primary-teal);
    font-size: 14px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: opacity 0.2s;
    text-decoration: none;
}
.card-solution-overlay .view-all:hover {
    opacity: 0.8;
}

/* ==========================================================================
   底部按钮联动状态 (当悬浮层打开时)
   ========================================================================== */
.card-footer-links a svg {
    transition: transform 0.3s ease;
}

.pg-product-card.active-solution .card-footer-links {
    border-top-color: transparent;
}

.pg-product-card.active-solution .link-purple {
    background-color: #5b588e; 
    color: #ffffff !important;
}

/* 激活状态下图标旋转收起 */
.pg-product-card.active-solution .link-purple .icon-chevron {
    transform: rotate(180deg); 
}

.pg-product-card.active-solution .link-cyan {
    border-right-color: rgba(0,0,0,0.05); 
}