/**
 * 首页增强样式 - 实验家风格
 * 包含：实验室展示、优化的通知公告、服务卡片等
 */

/* ============================================
   全局容器优化
   ============================================ */
.container-fluid {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}

/* 首页特定容器 */
.home-page .container-fluid {
    padding-left: 2rem;
    padding-right: 2rem;
}

/* Banner 自身铺满当前页面宽度，其他内容仍保持居中布局 */
.home-page .hero-section {
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: calc(100vw / var(--page-scale, 1)) !important;
    margin-left: calc(50% - (50vw / var(--page-scale, 1))) !important;
    margin-right: calc(50% - (50vw / var(--page-scale, 1))) !important;
    border-radius: 0 !important;
}

.home-page .hero-section #mainCarousel,
.home-page .hero-section .carousel-inner,
.home-page .hero-section .carousel-item,
.home-page .hero-section .hero-banner-img {
    border-radius: 0 !important;
}

.home-page .hero-section .carousel-item::after {
    background: rgba(4, 15, 32, 0.48) !important;
}

.home-page .hero-section .carousel-caption.hero-copy {
    top: 50% !important;
    bottom: auto !important;
    left: 12% !important;
    right: auto !important;
    width: min(620px, 46vw);
    padding: 0 !important;
    text-align: left !important;
    transform: translateY(-50%) !important;
}

.home-page .hero-copy-eyebrow {
    display: block;
    margin-bottom: 0.65rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.72);
    font-size: clamp(0.82rem, 0.9vw, 1rem);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.home-page .hero-section .carousel-caption.hero-copy h5 {
    margin-bottom: 1.55rem;
    color: #fff;
    font-size: clamp(2.25rem, 3.5vw, 4.4rem);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: 0;
    text-shadow: 0 10px 30px rgba(0, 0, 0, 0.38);
}

.home-page .hero-section .carousel-caption.hero-copy p {
    position: relative;
    max-width: 560px;
    margin: 0;
    padding-left: 1.25rem;
    color: rgba(255, 255, 255, 0.76);
    font-size: clamp(0.92rem, 1.05vw, 1.12rem);
    font-weight: 500;
    line-height: 2;
    text-align: left;
    white-space: normal;
    text-shadow: 0 6px 18px rgba(0, 0, 0, 0.36);
}

.home-page .hero-section .carousel-caption.hero-copy p::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.42em;
    width: 3px;
    height: 3.85em;
    border-radius: 0;
    background: #2f9bff;
    box-shadow: 0 0 18px rgba(47, 155, 255, 0.45);
}

@media (max-width: 768px) {
    .home-page .hero-section .carousel-caption.hero-copy {
        left: 8% !important;
        width: 84vw;
    }
}

@media (max-width: 768px) {
    .home-page .container-fluid {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

/* ============================================
   通知公告区 - 卡片式设计
   ============================================ */
.notice-calendar {
    border-radius: var(--radius-lg);
    border: none;
    box-shadow: var(--shadow-card);
    overflow: hidden;
    transition: box-shadow 0.3s ease;
    max-width: 1000px;
    margin: 0 auto;
}

.notice-calendar:hover {
    box-shadow: var(--shadow-card-hover);
}

.notice-calendar .card-header {
    background: linear-gradient(135deg, var(--primary) 0%, #4a90e2 100%);
    color: white;
    border: none;
    padding: 1rem 1.5rem;
    font-weight: 600;
    font-size: 1.05rem;
}

.notice-calendar .card-header a {
    color: white;
    opacity: 0.9;
    font-size: 0.9rem;
    transition: opacity 0.2s;
}

.notice-calendar .card-header a:hover {
    opacity: 1;
}

.notice-calendar .list-group-item {
    border-left: none;
    border-right: none;
    padding: 1rem 1.5rem;
    transition: background-color 0.2s;
}

.notice-calendar .list-group-item:hover {
    background-color: var(--primary-light);
}

.notice-calendar .notice-date {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    padding: 0.4rem 0.6rem;
    background: var(--primary-light);
    color: var(--primary);
    border-radius: var(--radius-sm);
    font-weight: 600;
    font-size: 0.85rem;
}

.notice-calendar .list-group-item a {
    color: var(--text);
    flex: 1;
    transition: color 0.2s;
}

.notice-calendar .list-group-item:hover a {
    color: var(--primary);
}

/* ============================================
   实验室展示模块 - VR全景风格
   ============================================ */
.section-laboratory {
    background: #fff;
    padding: 4rem 0;
    position: relative;
    overflow: hidden;
}

.section-laboratory::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 300px;
    background: linear-gradient(180deg, var(--bg-page) 0%, transparent 100%);
    pointer-events: none;
}

.laboratory-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
    margin-top: 2rem;
}

.laboratory-card {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-card);
    transition: all 0.3s ease;
    background: #fff;
    cursor: pointer;
}

.laboratory-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
}

.laboratory-card-image {
    position: relative;
    width: 100%;
    padding-top: 65%;
    overflow: hidden;
    background: linear-gradient(135deg, #e0f2fe 0%, #bae6fd 100%);
}

.laboratory-card-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.laboratory-card:hover .laboratory-card-image img {
    transform: scale(1.1);
}

.laboratory-card-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: rgba(22, 101, 216, 0.9);
    color: white;
    padding: 0.4rem 0.8rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    backdrop-filter: blur(4px);
}

.laboratory-card-content {
    padding: 1.5rem;
}

.laboratory-card-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 0.5rem;
}

.laboratory-card-desc {
    font-size: 0.9rem;
    color: var(--text-muted);
    line-height: 1.6;
    margin-bottom: 1rem;
}

.laboratory-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 1rem;
    border-top: 1px solid var(--border-light);
}

.laboratory-card-location {
    font-size: 0.85rem;
    color: var(--text-light);
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.laboratory-card-location::before {
    content: '📍';
    font-size: 1rem;
}

.laboratory-card-link {
    color: var(--primary);
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.3rem;
    transition: gap 0.2s;
}

.laboratory-card-link:hover {
    gap: 0.6rem;
}

.laboratory-card-link::after {
    content: '→';
}

/* VR全景按钮 */
.laboratory-vr-section {
    text-align: center;
    margin-top: 3rem;
    padding: 2.5rem;
    background: linear-gradient(135deg, var(--primary-light) 0%, #e0f2fe 100%);
    border-radius: var(--radius-xl);
    position: relative;
    overflow: hidden;
}

.laboratory-vr-section::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.5) 0%, transparent 70%);
    pointer-events: none;
}

.laboratory-vr-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
    position: relative;
}

.laboratory-vr-desc {
    font-size: 1rem;
    color: var(--text-muted);
    margin-bottom: 1.5rem;
    position: relative;
}

.laboratory-vr-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.9rem 2rem;
    background: linear-gradient(135deg, var(--primary) 0%, #4a90e2 100%);
    color: white;
    border: none;
    border-radius: 50px;
    font-size: 1rem;
    font-weight: 600;
    box-shadow: var(--shadow-md);
    transition: all 0.3s ease;
    cursor: pointer;
    text-decoration: none;
    position: relative;
}

.laboratory-vr-btn:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
    color: white;
}

.laboratory-vr-btn::before {
    content: '🔍';
    font-size: 1.2rem;
}

/* ============================================
   热门服务卡片优化
   ============================================ */
.hot-tag-card {
    display: block;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-card);
    transition: all 0.3s ease;
    background: white;
    border: 1px solid var(--border-light);
}

.hot-tag-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-card-hover);
    border-color: var(--primary);
}

.hot-tag-thumb {
    position: relative;
    width: 100%;
    padding-top: 75%;
    overflow: hidden;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
}

.hot-tag-thumb img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.hot-tag-card:hover .hot-tag-thumb img {
    transform: scale(1.08);
}

.hot-tag-name {
    padding: 1rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--text);
    text-align: center;
    background: white;
}

/* 空卡片占位 */
.hot-tag-card--empty {
    border: 2px dashed var(--border);
    background: var(--bg-page);
}

.hot-tag-card--empty:hover {
    border-color: var(--primary);
    background: var(--primary-light);
}

.hot-tag-empty-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--text-muted);
    font-size: 0.9rem;
    font-weight: 500;
}

/* ============================================
   服务客户区域优化
   ============================================ */
.section-service-clients {
    background: white;
    padding: 4rem 0;
    position: relative;
}

.client-card {
    padding: 1.5rem;
    background: white;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    transition: all 0.3s ease;
    border: 1px solid var(--border-light);
}

.client-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-card);
}

.client-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 80px;
}

.client-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: all 0.3s ease;
}

.client-card:hover .client-logo img {
    filter: grayscale(0%);
    opacity: 1;
}

/* ============================================
   客户之声优化
   ============================================ */
.section-feedback {
    background: linear-gradient(180deg, white 0%, var(--bg-page) 100%);
    padding: 4rem 0;
}

.section-feedback .headline {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
}

.section-feedback .sub-headline {
    text-align: center;
    font-size: 1.1rem;
    color: var(--text-muted);
    margin-bottom: 3rem;
}

.feedback-card {
    background: white;
    border-radius: var(--radius-lg);
    padding: 2rem;
    box-shadow: var(--shadow-card);
    transition: all 0.3s ease;
    border: 1px solid var(--border-light);
}

.feedback-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-card-hover);
}

.feedback-card .avatar {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 1rem;
    border: 3px solid var(--primary-light);
}

.feedback-card .customerName {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 0.8rem;
}

.feedback-card .text {
    position: relative;
    font-size: 0.9rem;
    line-height: 1.7;
    color: var(--text-muted);
    padding: 0 0.5rem;
}

.feedback-card .yinhao-start,
.feedback-card .yinhao-end {
    position: absolute;
    font-size: 3rem;
    color: var(--primary);
    opacity: 0.15;
    font-weight: 700;
}

.feedback-card .yinhao-start {
    top: -1rem;
    left: -0.5rem;
}

.feedback-card .yinhao-end {
    bottom: -2rem;
    right: -0.5rem;
}

/* ============================================
   服务流程优化
   ============================================ */
.flow-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.flow-item {
    position: relative;
    background: white;
    padding: 2rem;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card);
    transition: all 0.3s ease;
    text-align: center;
}

.flow-item:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-card-hover);
}

.flow-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 1.5rem;
    background: linear-gradient(135deg, var(--primary) 0%, #4a90e2 100%);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(22, 101, 216, 0.3);
}

.flow-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 0.8rem;
}

.flow-desc {
    font-size: 0.9rem;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
}

.flow-step-no {
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--primary);
    opacity: 0.08;
}

/* ============================================
   响应式设计
   ============================================ */
@media (max-width: 768px) {
    .laboratory-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .section-laboratory,
    .section-service-clients,
    .section-feedback {
        padding: 2rem 0;
    }
    
    .section-feedback .headline {
        font-size: 1.5rem;
    }
    
    .laboratory-vr-section {
        padding: 2rem 1.5rem;
        margin-top: 2rem;
    }
    
    .laboratory-vr-title {
        font-size: 1.2rem;
    }
    
    .flow-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

/* ============================================
   动画效果
   ============================================ */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes scaleIn {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* 为各个区块添加入场动画 */
.section-laboratory,
.section-service-clients,
.section-feedback,
.section-flow {
    animation: fadeInUp 0.6s ease-out;
}

.laboratory-card,
.client-card,
.feedback-card,
.flow-item {
    animation: scaleIn 0.5s ease-out backwards;
}

/* 错峰入场效果 */
.laboratory-card:nth-child(1) { animation-delay: 0.1s; }
.laboratory-card:nth-child(2) { animation-delay: 0.2s; }
.laboratory-card:nth-child(3) { animation-delay: 0.3s; }

.flow-item:nth-child(1) { animation-delay: 0.1s; }
.flow-item:nth-child(2) { animation-delay: 0.2s; }
.flow-item:nth-child(3) { animation-delay: 0.3s; }
.flow-item:nth-child(4) { animation-delay: 0.4s; }

/* 减弱动画效果（用户偏好） */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ============================================
   悬浮提示优化
   ============================================ */
.laboratory-card-link,
.client-card,
.feedback-card {
    cursor: pointer;
}

/* 按钮渐变效果 */
.laboratory-vr-btn,
.flow-icon {
    position: relative;
    overflow: hidden;
}

.laboratory-vr-btn::after,
.flow-icon::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: width 0.6s, height 0.6s;
}

.laboratory-vr-btn:hover::after,
.flow-icon:hover::after {
    width: 300px;
    height: 300px;
}

/* ============================================
   热门服务项目 - 首页新版科技卡片
   ============================================ */
.home-page .section-hot-services {
    max-width: min(1180px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    margin: 2.2rem auto 3rem !important;
    padding: 2.6rem !important;
    border: 1px solid rgba(148, 163, 184, 0.22) !important;
    border-radius: 28px !important;
    background:
        radial-gradient(circle at 8% 8%, rgba(14, 165, 233, 0.14), transparent 32%),
        radial-gradient(circle at 92% 18%, rgba(29, 79, 145, 0.12), transparent 34%),
        linear-gradient(180deg, #ffffff 0%, #f6fbff 100%) !important;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.10) !important;
    overflow: hidden;
}

body.home-page.page-scale-on .section-hot-services {
    max-width: min(1180px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    padding: 2.6rem !important;
}

.home-page .section-hot-services .section-title {
    margin-bottom: 1.8rem !important;
    color: #0f172a;
    font-size: clamp(1.65rem, 2.2vw, 2.35rem);
    font-weight: 900;
    letter-spacing: -0.04em;
}

.home-page .section-hot-services .hot-services-layout {
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 1.35rem !important;
    align-items: stretch !important;
    min-height: 720px;
}

.home-page .section-hot-services .hot-services-nav {
    position: relative !important;
    top: auto !important;
    width: auto !important;
    flex: none !important;
    height: 100% !important;
    gap: 0.85rem !important;
    padding: 0 !important;
}

.home-page .section-hot-services .hot-services-nav > li {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    flex: 1 1 0 !important;
    padding: 0 !important;
    border-left: 0 !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    border: 1px solid rgba(226, 232, 240, 0.9) !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.055) !important;
    overflow: hidden;
}

.home-page .section-hot-services .hot-services-nav > li:has(.hot-nav-item.is-active) {
    border-color: rgba(29, 79, 145, 0.32) !important;
    background: linear-gradient(135deg, #1d4f91 0%, #0ea5e9 100%) !important;
    box-shadow: 0 18px 40px rgba(29, 79, 145, 0.24) !important;
}

.home-page .section-hot-services .hot-nav-item,
.home-page .section-hot-services .hot-nav-link {
    min-height: 100% !important;
    padding: 0 1.15rem !important;
    color: #334155 !important;
    font-size: 1.02rem !important;
    font-weight: 700 !important;
    border-radius: 18px !important;
}

.home-page .section-hot-services .hot-nav-item.is-active {
    color: #fff !important;
}

.home-page .section-hot-services .hot-nav-chevron {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(29, 79, 145, 0.08);
    color: #1d4f91 !important;
    font-size: 1.15rem !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-nav-item.is-active .hot-nav-chevron {
    background: rgba(255, 255, 255, 0.18);
    color: #fff !important;
}

.home-page .section-hot-services .hot-services-visual {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 720px !important;
    flex: none !important;
    margin: 0 !important;
    padding: 1.15rem !important;
    transform: none !important;
    border-radius: 24px !important;
    border: 1px solid rgba(29, 79, 145, 0.16) !important;
    background: rgba(255, 255, 255, 0.72) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

.home-page .section-hot-services .hot-panel.is-active {
    display: flex !important;
    height: 100% !important;
}

.home-page .section-hot-services .hot-panel .hot-tag-grid {
    display: grid !important;
    width: 100% !important;
    height: 100% !important;
    gap: 1rem !important;
    margin: 0 !important;
}

.home-page .section-hot-services .hot-panel--simulation .hot-tag-grid,
.home-page .section-hot-services .hot-panel--paper .hot-tag-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
}

.home-page .section-hot-services .hot-panel--experiment .hot-tag-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
}

.home-page .section-hot-services .hot-panel .hot-tag-item {
    width: 100% !important;
    max-width: none !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.home-page .section-hot-services .hot-tag-card {
    position: relative;
    height: 100% !important;
    border-radius: 20px !important;
    border: 1px solid rgba(226, 232, 240, 0.78) !important;
    background: #fff !important;
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.10) !important;
    overflow: hidden;
    transform: none !important;
}

.home-page .section-hot-services .hot-tag-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 24px 58px rgba(15, 23, 42, 0.16) !important;
    border-color: rgba(14, 165, 233, 0.42) !important;
}

.home-page .section-hot-services .hot-tag-thumb {
    height: 100% !important;
    padding-top: 0 !important;
    background: linear-gradient(135deg, #e0f2fe 0%, #f8fafc 100%) !important;
}

.home-page .section-hot-services .hot-tag-thumb::before {
    z-index: 1;
    opacity: 1 !important;
    background: linear-gradient(180deg, rgba(4, 24, 56, 0.02) 0%, rgba(4, 24, 56, 0.18) 42%, rgba(4, 24, 56, 0.82) 100%) !important;
}

.home-page .section-hot-services .hot-tag-thumb img {
    object-fit: cover !important;
    object-position: center !important;
}

.home-page .section-hot-services .hot-tag-name {
    position: absolute !important;
    left: 1rem !important;
    right: 1rem !important;
    bottom: 1rem !important;
    padding: 0 !important;
    background: transparent !important;
    color: #fff !important;
    text-align: left !important;
    font-size: 1.05rem !important;
    font-weight: 850 !important;
    line-height: 1.28 !important;
    text-shadow: 0 4px 18px rgba(0, 0, 0, 0.44);
}

.home-page .section-hot-services .hot-tag-name::after {
    content: '查看详情 →';
    display: block;
    width: max-content;
    margin-top: 0.55rem;
    padding: 0.32rem 0.68rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0;
}

.home-page .section-hot-services .hot-tag-card--empty {
    border: 1px dashed rgba(29, 79, 145, 0.32) !important;
    background: linear-gradient(135deg, rgba(239, 246, 255, 0.95), rgba(255, 255, 255, 0.9)) !important;
}

.home-page .section-hot-services .hot-tag-card--empty .hot-tag-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100% !important;
    background:
        radial-gradient(circle at 50% 35%, rgba(14, 165, 233, 0.16), transparent 42%),
        linear-gradient(145deg, #eff6ff, #ffffff) !important;
}

.home-page .section-hot-services .hot-tag-card--empty .hot-tag-thumb::before {
    display: none;
}

.home-page .section-hot-services .hot-tag-empty-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    color: #1d4f91;
    text-align: center;
}

.home-page .section-hot-services .hot-tag-empty-icon {
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #1d4f91, #0ea5e9);
    color: #fff;
    font-size: 1.8rem;
    line-height: 1;
    box-shadow: 0 12px 28px rgba(14, 165, 233, 0.28);
}

.home-page .section-hot-services .hot-tag-empty-content strong {
    font-size: 1.05rem;
    font-weight: 850;
}

.home-page .section-hot-services .hot-tag-empty-content small {
    color: #64748b;
    font-size: 0.86rem;
}

@media (max-width: 991px) {
    .home-page .section-hot-services {
        max-width: none !important;
        padding: 1.5rem !important;
    }

    .home-page .section-hot-services .hot-services-layout {
        display: block !important;
    }

    .home-page .section-hot-services .hot-services-nav {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.6rem !important;
        margin-bottom: 1rem !important;
    }

    .home-page .section-hot-services .hot-services-nav > li,
    .home-page .section-hot-services .hot-nav-item,
    .home-page .section-hot-services .hot-nav-link {
        min-height: 46px !important;
        border-radius: 14px !important;
        font-size: 0.9rem !important;
    }

    .home-page .section-hot-services .hot-nav-chevron {
        display: none !important;
    }

    .home-page .section-hot-services .hot-services-visual {
        min-height: auto !important;
        padding: 0.75rem !important;
    }

    .home-page .section-hot-services .hot-panel.is-active {
        display: block !important;
        height: auto !important;
    }

    .home-page .section-hot-services .hot-panel .hot-tag-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: minmax(132px, auto);
        height: auto !important;
        gap: 0.75rem !important;
    }
}

/* ============================================
   热门服务项目 - 克制扁平化科技风覆盖
   ============================================ */
.home-page .section-hot-services {
    --hot-blue: #1d4f91;
    --hot-blue-weak: #f3f7fc;
    --hot-border: #e5edf6;
    --hot-text: #172033;
    --hot-muted: #7b8798;
    max-width: min(1120px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    margin: 2.25rem auto 2.75rem !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body.home-page.page-scale-on .section-hot-services {
    max-width: min(1120px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    padding: 0 !important;
    margin: 2.25rem auto 2.75rem !important;
}

.home-page .section-hot-services::before,
.home-page .section-hot-services::after {
    display: none !important;
}

.home-page .section-hot-services .hot-services-layout {
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr) !important;
    gap: 24px !important;
    min-height: 0 !important;
    align-items: stretch !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.home-page .section-hot-services .hot-services-nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 74px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.home-page .section-hot-services .hot-services-nav::before,
.home-page .section-hot-services .hot-services-nav::after,
.home-page .section-hot-services .hot-services-nav > li::before,
.home-page .section-hot-services .hot-nav-item.is-active::after {
    display: none !important;
}

.home-page .section-hot-services .hot-services-nav > li {
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.home-page .section-hot-services .hot-nav-item,
.home-page .section-hot-services .hot-nav-link {
    width: 100% !important;
    min-height: 52px !important;
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) 18px !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 11px 14px !important;
    border: 1px solid var(--hot-border) !important;
    border-radius: 10px !important;
    background: var(--hot-blue-weak) !important;
    color: var(--hot-text) !important;
    box-shadow: none !important;
    transform: none !important;
    text-align: left !important;
}

.home-page .section-hot-services .hot-nav-item:hover,
.home-page .section-hot-services .hot-nav-link:hover {
    border-color: rgba(29, 79, 145, 0.22) !important;
    background: #eef5fc !important;
    transform: none !important;
    box-shadow: none !important;
}

.home-page .section-hot-services .hot-nav-item.is-active {
    background: var(--hot-blue) !important;
    border-color: var(--hot-blue) !important;
    color: #fff !important;
    box-shadow: none !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-nav-icon {
    width: 28px !important;
    height: 28px !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: currentColor !important;
    box-shadow: none !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
}

.home-page .section-hot-services .hot-nav-label {
    color: inherit !important;
    font-size: 0.96rem !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

.home-page .section-hot-services .hot-nav-chevron {
    width: 18px !important;
    height: 18px !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: currentColor !important;
    font-size: 0.95rem !important;
    opacity: 0.72;
    transform: none !important;
}

.home-page .section-hot-services .hot-services-visual {
    min-height: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-services-heading {
    max-width: none !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    text-align: left !important;
}

.home-page .section-hot-services .hot-services-heading .section-kicker {
    display: none !important;
}

.home-page .section-hot-services .hot-services-heading .section-title {
    margin: 0 !important;
    color: var(--hot-text) !important;
    font-size: 1.75rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em !important;
    text-align: left !important;
}

.home-page .section-hot-services .hot-services-heading .section-title::before,
.home-page .section-hot-services .hot-services-heading .section-title::after {
    display: none !important;
}

.home-page .section-hot-services .hot-services-heading .section-subtitle {
    margin-top: 7px !important;
    color: var(--hot-muted) !important;
    font-size: 0.94rem !important;
    line-height: 1.6 !important;
    text-align: left !important;
}

.home-page .section-hot-services .hot-panel.is-active {
    display: block !important;
    height: auto !important;
}

.home-page .section-hot-services .hot-panel .hot-tag-grid,
.home-page .section-hot-services .hot-panel--simulation .hot-tag-grid,
.home-page .section-hot-services .hot-panel--experiment .hot-tag-grid,
.home-page .section-hot-services .hot-panel--paper .hot-tag-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(142px, auto) !important;
    gap: 14px !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.home-page .section-hot-services .hot-panel .hot-tag-item {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.home-page .section-hot-services .hot-tag-card,
.home-page .section-hot-services .paper-mini-card {
    min-height: 142px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    padding: 18px !important;
    border: 1px solid var(--hot-border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: var(--hot-text) !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.03) !important;
    overflow: hidden !important;
    text-align: left !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-tag-card:hover,
.home-page .section-hot-services .paper-mini-card:hover {
    border-color: rgba(29, 79, 145, 0.26) !important;
    box-shadow: 0 3px 8px rgba(16, 24, 40, 0.05) !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-tag-service-icon,
.home-page .section-hot-services .paper-mini-card__icon,
.home-page .section-hot-services .hot-tag-empty-icon {
    width: 32px !important;
    height: 32px !important;
    flex: 0 0 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: var(--hot-blue-weak) !important;
    color: var(--hot-blue) !important;
    box-shadow: none !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
}

.home-page .section-hot-services .paper-mini-card__icon svg {
    width: 20px !important;
    height: 20px !important;
}

.home-page .section-hot-services .hot-tag-name,
.home-page .section-hot-services .paper-mini-card__title {
    position: static !important;
    padding: 0 !important;
    background: transparent !important;
    color: var(--hot-text) !important;
    text-align: left !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-shadow: none !important;
}

.home-page .section-hot-services .hot-tag-name small,
.home-page .section-hot-services .paper-mini-card__desc {
    margin-top: 6px !important;
    color: var(--hot-muted) !important;
    font-size: 0.84rem !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
}

.home-page .section-hot-services .hot-tag-card--empty {
    border: 1px dashed #b8c8dc !important;
    background: #fff !important;
}

.home-page .section-hot-services .hot-tag-card--empty:hover {
    border-color: rgba(29, 79, 145, 0.42) !important;
    background: #fff !important;
}

.home-page .section-hot-services .hot-tag-empty-content {
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    text-align: left !important;
    color: var(--hot-text) !important;
}

.home-page .section-hot-services .hot-tag-card--empty .hot-tag-empty-icon {
    background: var(--hot-blue-weak) !important;
    color: var(--hot-blue) !important;
}

.home-page .section-hot-services .hot-tag-empty-content strong {
    color: var(--hot-text) !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
}

.home-page .section-hot-services .hot-tag-empty-content small {
    color: var(--hot-muted) !important;
    font-size: 0.84rem !important;
    line-height: 1.55 !important;
}

@media (max-width: 1199px) {
    .home-page .section-hot-services .hot-panel .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--simulation .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--experiment .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--paper .hot-tag-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    .home-page .section-hot-services {
        max-width: none !important;
        margin: 1.6rem 1rem 2.2rem !important;
        padding: 0 !important;
    }

    .home-page .section-hot-services .hot-services-layout {
        display: block !important;
    }

    .home-page .section-hot-services .hot-services-nav {
        margin: 0 0 18px !important;
    }

    .home-page .section-hot-services .hot-panel .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--simulation .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--experiment .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--paper .hot-tag-grid {
        grid-template-columns: 1fr !important;
    }
}

/* 热门服务项目 - 背景层与分类直角微调 */
.home-page .section-hot-services {
    background: linear-gradient(135deg, #f7fbff 0%, #f3f6fa 52%, #ffffff 100%) !important;
    box-shadow: 0 24px 64px rgba(29, 79, 145, 0.12) !important;
}

.home-page .section-hot-services .hot-services-layout {
    background: #fff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
}

.home-page .section-hot-services .hot-services-nav {
    background: #fff !important;
    box-shadow: none !important;
}

.home-page .section-hot-services .hot-nav-item,
.home-page .section-hot-services .hot-nav-link,
.home-page .section-hot-services .hot-nav-item.is-active,
.home-page .section-hot-services .hot-nav-link.is-active {
    border-radius: 0 !important;
}

.home-page .section-hot-services .hot-nav-icon,
.home-page .section-hot-services .hot-nav-chevron {
    border-radius: 0 !important;
}

@media (max-width: 991px) {
    .home-page .section-hot-services .hot-nav-item,
    .home-page .section-hot-services .hot-nav-link,
    .home-page .section-hot-services .hot-nav-item.is-active,
    .home-page .section-hot-services .hot-nav-link.is-active {
        border-radius: 0 !important;
    }
}

/* 热门服务项目 - 最终背景与直角强制覆盖 */
body.home-page .section-hot-services,
body.home-page.page-scale-on .section-hot-services {
    background: linear-gradient(135deg, #f8fafc 0%, #f3f5f8 52%, #ffffff 100%) !important;
    background-image: linear-gradient(135deg, #f8fafc 0%, #f3f5f8 52%, #ffffff 100%) !important;
    box-shadow: 0 24px 64px rgba(29, 79, 145, 0.12) !important;
}

body.home-page .section-hot-services::before,
body.home-page .section-hot-services::after,
body.home-page.page-scale-on .section-hot-services::before,
body.home-page.page-scale-on .section-hot-services::after {
    display: none !important;
    content: none !important;
    background: none !important;
}

body.home-page .section-hot-services .hot-services-layout,
body.home-page.page-scale-on .section-hot-services .hot-services-layout {
    background: #fff !important;
    background-image: none !important;
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

body.home-page .section-hot-services .hot-services-nav,
body.home-page.page-scale-on .section-hot-services .hot-services-nav {
    background: #fff !important;
    background-image: none !important;
}

body.home-page .section-hot-services .hot-services-nav > li,
body.home-page.page-scale-on .section-hot-services .hot-services-nav > li,
body.home-page .section-hot-services .hot-services-nav > li:has(.hot-nav-item.is-active),
body.home-page.page-scale-on .section-hot-services .hot-services-nav > li:has(.hot-nav-item.is-active),
body.home-page .section-hot-services .hot-nav-item,
body.home-page .section-hot-services .hot-nav-link,
body.home-page .section-hot-services .hot-nav-item.is-active,
body.home-page .section-hot-services .hot-nav-link.is-active,
body.home-page.page-scale-on .section-hot-services .hot-nav-item,
body.home-page.page-scale-on .section-hot-services .hot-nav-link,
body.home-page.page-scale-on .section-hot-services .hot-nav-item.is-active,
body.home-page.page-scale-on .section-hot-services .hot-nav-link.is-active {
    border-radius: 0 !important;
}

/* 客户之声 - Cover Flow 堆叠卡片轮播 */
body.home-page .section-feedback,
body.home-page.page-scale-on .section-feedback {
    width: 100% !important;
    max-width: none !important;
    min-height: 520px !important;
    margin: 0 !important;
    padding: 42px 16px 54px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 58%, #f3f6fa 100%) !important;
    box-shadow: none !important;
    overflow: hidden !important;
    text-align: center !important;
}

body.home-page .section-feedback::before,
body.home-page .section-feedback::after,
body.home-page.page-scale-on .section-feedback::before,
body.home-page.page-scale-on .section-feedback::after {
    display: none !important;
    content: none !important;
}

body.home-page .section-feedback .headline,
body.home-page.page-scale-on .section-feedback .headline {
    margin: 0 !important;
    color: #0f172a !important;
    font-family: "PingFang SC", var(--font-sans) !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
}

body.home-page .section-feedback .headline::before,
body.home-page .section-feedback .headline::after {
    display: none !important;
}

body.home-page .section-feedback .sub-headline,
body.home-page.page-scale-on .section-feedback .sub-headline {
    margin: 8px 0 0 !important;
    color: #64748b !important;
    font-size: 0.95rem !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    text-align: center !important;
}

body.home-page .feedback-coverflow,
body.home-page.page-scale-on .feedback-coverflow {
    position: relative !important;
    width: min(1120px, 94vw) !important;
    height: 330px !important;
    margin: 34px auto 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    touch-action: pan-y !important;
    user-select: none !important;
    cursor: grab !important;
}

body.home-page .feedback-coverflow:active {
    cursor: grabbing !important;
}

body.home-page .feedback-coverflow-stage,
body.home-page.page-scale-on .feedback-coverflow-stage {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    perspective: none !important;
}

body.home-page .section-feedback .feedback-flow-card,
body.home-page.page-scale-on .section-feedback .feedback-flow-card,
body.home-page .section-feedback .feedback-card.feedback-flow-card,
body.home-page.page-scale-on .section-feedback .feedback-card.feedback-flow-card {
    --flow-x: 0px;
    --flow-y: 0px;
    --flow-scale: 1;
    --flow-opacity: 1;
    --flow-z: 20;
    position: absolute !important;
    left: 50% !important;
    top: 22px !important;
    width: 430px !important;
    min-height: 230px !important;
    height: auto !important;
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: start !important;
    padding: 24px 26px !important;
    border: 1px solid rgba(29, 79, 145, 0.12) !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08) !important;
    color: #0f172a !important;
    opacity: var(--flow-opacity) !important;
    z-index: var(--flow-z) !important;
    transform: translateX(calc(-50% + var(--flow-x))) translateY(var(--flow-y)) scale(var(--flow-scale)) !important;
    transform-origin: center center !important;
    transition: transform 420ms cubic-bezier(0.22, 1, 0.36, 1), opacity 420ms ease, box-shadow 420ms ease, border-color 420ms ease !important;
    overflow: hidden !important;
    text-align: left !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    backdrop-filter: none !important;
}

body.home-page .section-feedback .feedback-flow-card[data-active="true"],
body.home-page.page-scale-on .section-feedback .feedback-flow-card[data-active="true"] {
    border-color: rgba(29, 79, 145, 0.18) !important;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.10) !important;
}

body.home-page .section-feedback .feedback-flow-card:hover,
body.home-page.page-scale-on .section-feedback .feedback-flow-card:hover {
    border-color: rgba(29, 79, 145, 0.22) !important;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.10) !important;
    transform: translateX(calc(-50% + var(--flow-x))) translateY(var(--flow-y)) scale(var(--flow-scale)) !important;
}

body.home-page .section-feedback .feedback-flow-card::before,
body.home-page .section-feedback .feedback-flow-card::after,
body.home-page.page-scale-on .section-feedback .feedback-flow-card::before,
body.home-page.page-scale-on .section-feedback .feedback-flow-card::after {
    display: none !important;
    content: none !important;
}

body.home-page .section-feedback .feedback-avatar,
body.home-page.page-scale-on .section-feedback .feedback-avatar {
    width: 58px !important;
    height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(29, 79, 145, 0.14) !important;
    background: #f3f7fc !important;
    color: #1d4f91 !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    box-shadow: none !important;
}

body.home-page .section-feedback .feedback-flow-card .card-content,
body.home-page.page-scale-on .section-feedback .feedback-flow-card .card-content {
    position: static !important;
    z-index: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
}

body.home-page .section-feedback .feedback-flow-card .customerName,
body.home-page.page-scale-on .section-feedback .feedback-flow-card .customerName {
    margin: 0 !important;
    color: #111827 !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-align: left !important;
}

body.home-page .section-feedback .feedback-flow-card .customerRole,
body.home-page.page-scale-on .section-feedback .feedback-flow-card .customerRole {
    margin-top: 4px !important;
    color: #64748b !important;
    font-size: 0.84rem !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

body.home-page .section-feedback .feedback-flow-card .text,
body.home-page.page-scale-on .section-feedback .feedback-flow-card .text {
    position: relative !important;
    display: block !important;
    margin: 16px 0 0 !important;
    padding: 0 0 0 22px !important;
    color: #334155 !important;
    font-size: 0.94rem !important;
    font-weight: 400 !important;
    line-height: 1.78 !important;
    text-align: left !important;
    overflow: visible !important;
}

body.home-page .section-feedback .feedback-flow-card .quote-mark,
body.home-page.page-scale-on .section-feedback .feedback-flow-card .quote-mark {
    position: absolute !important;
    left: 0 !important;
    top: -8px !important;
    color: rgba(29, 79, 145, 0.28) !important;
    font-size: 1.75rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

body.home-page .section-feedback .feedback-flow-card .yinhao-start,
body.home-page .section-feedback .feedback-flow-card .yinhao-end,
body.home-page.page-scale-on .section-feedback .feedback-flow-card .yinhao-start,
body.home-page.page-scale-on .section-feedback .feedback-flow-card .yinhao-end {
    display: none !important;
}

@media (max-width: 991px) {
    body.home-page .section-feedback,
    body.home-page.page-scale-on .section-feedback {
        min-height: 520px !important;
        padding: 34px 12px 44px !important;
    }

    body.home-page .feedback-coverflow,
    body.home-page.page-scale-on .feedback-coverflow {
        width: min(100%, 620px) !important;
        height: 360px !important;
        margin-top: 28px !important;
    }

    body.home-page .section-feedback .feedback-flow-card,
    body.home-page.page-scale-on .section-feedback .feedback-flow-card {
        width: min(86vw, 380px) !important;
        grid-template-columns: 48px minmax(0, 1fr) !important;
        gap: 14px !important;
        padding: 20px !important;
    }

    body.home-page .section-feedback .feedback-avatar,
    body.home-page.page-scale-on .section-feedback .feedback-avatar {
        width: 48px !important;
        height: 48px !important;
    }
}

@media (max-width: 575px) {
    body.home-page .section-feedback .headline,
    body.home-page.page-scale-on .section-feedback .headline {
        font-size: 24px !important;
    }

    body.home-page .feedback-coverflow,
    body.home-page.page-scale-on .feedback-coverflow {
        height: 390px !important;
        overflow: hidden !important;
    }

    body.home-page .section-feedback .feedback-flow-card,
    body.home-page.page-scale-on .section-feedback .feedback-flow-card {
        width: min(88vw, 330px) !important;
        min-height: 270px !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        padding: 18px !important;
    }
}

/* ============================================
   首页整体重构 - 科学指南针式生物实验室卡片风格
   ============================================ */
.home-page {
    --bio-primary: #1d4f91;
    --bio-accent: #0ea5e9;
    --bio-cyan: #22d3ee;
    --bio-ink: #0f172a;
    --bio-muted: #64748b;
    --bio-line: rgba(148, 163, 184, 0.24);
    --bio-card: rgba(255, 255, 255, 0.86);
    --bio-shadow: 0 22px 60px rgba(15, 23, 42, 0.10);
    background:
        radial-gradient(circle at 6% 14%, rgba(34, 211, 238, 0.12), transparent 28%),
        radial-gradient(circle at 92% 34%, rgba(29, 79, 145, 0.11), transparent 30%),
        linear-gradient(180deg, #f7fbff 0%, #eef7ff 42%, #f8fbff 100%);
}

.home-page .section-notices,
.home-page .section-advantages,
.home-page .section-laboratory,
.home-page .section-service-clients,
.home-page .section-feedback,
.home-page .section-flow {
    max-width: min(1180px, calc(100vw / var(--page-scale, 1) - 5rem));
    margin: 2.4rem auto;
    padding: 2.7rem;
    border: 1px solid var(--bio-line);
    border-radius: 30px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(241, 248, 255, 0.78)),
        repeating-linear-gradient(90deg, rgba(14, 165, 233, 0.035) 0 1px, transparent 1px 72px),
        repeating-linear-gradient(0deg, rgba(14, 165, 233, 0.03) 0 1px, transparent 1px 72px);
    box-shadow: var(--bio-shadow);
    overflow: hidden;
    position: relative;
}

body.home-page.page-scale-on .section-notices,
body.home-page.page-scale-on .section-advantages,
body.home-page.page-scale-on .section-laboratory,
body.home-page.page-scale-on .section-service-clients,
body.home-page.page-scale-on .section-feedback,
body.home-page.page-scale-on .section-flow {
    width: auto !important;
    max-width: min(1180px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    margin: 2.4rem auto !important;
    padding: 2.7rem !important;
    transform: none !important;
}

.home-page .section-notices::before,
.home-page .section-advantages::before,
.home-page .section-laboratory::before,
.home-page .section-service-clients::before,
.home-page .section-feedback::before,
.home-page .section-flow::before,
.home-page .section-hot-services::before {
    content: '';
    position: absolute;
    width: 220px;
    height: 220px;
    right: -82px;
    top: -86px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(34, 211, 238, 0.20), transparent 66%);
    pointer-events: none;
}

.home-page .section-title,
.home-page .section-feedback .headline,
.home-page .section-flow .section-title {
    color: var(--bio-ink) !important;
    font-size: clamp(1.7rem, 2.2vw, 2.45rem) !important;
    font-weight: 900 !important;
    letter-spacing: -0.04em;
    text-align: center;
}

.home-page .section-title::before,
.home-page .section-feedback .headline::before {
    content: 'BIO LAB SERVICE';
    display: block;
    width: max-content;
    margin: 0 auto 0.65rem;
    padding: 0.28rem 0.78rem;
    border: 1px solid rgba(14, 165, 233, 0.28);
    border-radius: 999px;
    background: rgba(14, 165, 233, 0.08);
    color: var(--bio-primary);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
}

.home-page .section-feedback .sub-headline,
.home-page .laboratory-vr-desc,
.home-page .flow-desc,
.home-page .laboratory-card-desc {
    color: var(--bio-muted) !important;
}

.home-page .notice-calendar,
.home-page .advantage-card,
.home-page .laboratory-card,
.home-page .client-card,
.home-page .feedback-card,
.home-page .flow-item,
.home-page .laboratory-vr-section {
    border: 1px solid rgba(226, 232, 240, 0.86) !important;
    border-radius: 22px !important;
    background: var(--bio-card) !important;
    box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08) !important;
    backdrop-filter: blur(10px);
}

.home-page .notice-calendar:hover,
.home-page .advantage-card:hover,
.home-page .laboratory-card:hover,
.home-page .client-card:hover,
.home-page .feedback-card:hover,
.home-page .flow-item:hover {
    transform: translateY(-6px);
    border-color: rgba(14, 165, 233, 0.42) !important;
    box-shadow: 0 24px 58px rgba(29, 79, 145, 0.16) !important;
}

.home-page .section-advantages .row,
.home-page .section-service-clients .row,
.home-page .feedback-top-row,
.home-page .feedback-bottom-row {
    row-gap: 1.35rem;
}

.home-page .advantage-card {
    min-height: 260px;
    padding: 2rem !important;
    overflow: hidden;
}

.home-page .advantage-card::after {
    content: '';
    position: absolute;
    inset: auto 1.2rem 1.2rem auto;
    width: 78px;
    height: 78px;
    border: 1px solid rgba(34, 211, 238, 0.26);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.14), rgba(255, 255, 255, 0.04));
    transform: rotate(12deg);
}

.home-page .advantage-card .advantage-title,
.home-page .laboratory-card-title,
.home-page .flow-title,
.home-page .feedback-card .customerName {
    color: var(--bio-ink) !important;
    font-weight: 850 !important;
}

.home-page .section-laboratory,
.home-page .section-service-clients,
.home-page .section-feedback {
    padding-top: 2.7rem !important;
    padding-bottom: 2.7rem !important;
}

.home-page .laboratory-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
}

.home-page .laboratory-card-image {
    border-radius: 18px 18px 0 0;
}

.home-page .laboratory-card-badge,
.home-page .laboratory-vr-btn,
.home-page .flow-icon,
.home-page .notice-calendar .card-header {
    background: linear-gradient(135deg, var(--bio-primary), var(--bio-accent)) !important;
    box-shadow: 0 12px 28px rgba(14, 165, 233, 0.24);
}

.home-page .laboratory-vr-section {
    background:
        radial-gradient(circle at 16% 28%, rgba(34, 211, 238, 0.20), transparent 34%),
        linear-gradient(135deg, rgba(239, 246, 255, 0.95), rgba(255, 255, 255, 0.86)) !important;
}

.home-page .client-card {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 128px;
}

.home-page .feedback-card {
    height: 100%;
    position: relative;
}

.home-page .feedback-card::before {
    content: '';
    position: absolute;
    left: 1.35rem;
    top: 1.35rem;
    width: 8px;
    height: 42px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--bio-cyan), var(--bio-primary));
}

.home-page .flow-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.15rem;
}

.home-page .flow-item {
    min-height: 245px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.home-page .flow-item::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 18px;
    width: 64px;
    height: 2px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, transparent, rgba(14, 165, 233, 0.58), transparent);
}

@media (max-width: 991px) {
    .home-page .section-notices,
    .home-page .section-advantages,
    .home-page .section-laboratory,
    .home-page .section-service-clients,
    .home-page .section-feedback,
    .home-page .section-flow {
        max-width: none;
        margin: 1.4rem 1rem;
        padding: 1.5rem;
        border-radius: 22px;
    }


/* Platform advantage default image state */
body.home-page .section-advantages .advantage-bg-guide {
    --adv-bg-image: url('../img/tigong.png');
}

body.home-page .section-advantages .advantage-bg-process {
    --adv-bg-image: url('../img/guocheng.png');
}

body.home-page .section-advantages .advantage-bg-solution {
    --adv-bg-image: url('../img/yizhan.png');
}

body.home-page .section-advantages .advantage-card {
    background: #ffffff !important;
    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, background 0.3s ease !important;
}

body.home-page .section-advantages .advantage-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: var(--adv-bg-image);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 1;
    filter: saturate(1.04) contrast(1.02);
    transform: none;
    pointer-events: none;
    transition: opacity 0.3s ease, filter 0.3s ease;
    z-index: 0;
}

body.home-page .section-advantages .advantage-card::after {
    content: '';
    position: absolute;
    inset: 0;
    width: auto;
    height: auto;
    border: 0;
    border-radius: inherit;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 255, 255, 0.72) 52%, rgba(239, 248, 255, 0.82) 100%);
    transform: none;
    opacity: 1;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 0;
}

body.home-page .section-advantages .advantage-card:hover::before,
body.home-page .section-advantages .advantage-card.is-flipped::before,
body.home-page .section-advantages .advantage-card:hover::after,
body.home-page .section-advantages .advantage-card.is-flipped::after {
    opacity: 0;
}

body.home-page .section-advantages .advantage-front,
body.home-page .section-advantages .advantage-back {
    z-index: 2;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

body.home-page .section-advantages .adv-number {
    z-index: 6;
}
    .home-page .laboratory-grid,
    .home-page .flow-grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================
   恢复 web2 旧版：服务客户 + 客户之声
   ============================================ */
.home-page .section-service-clients {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 4rem 0 4.5rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 50%, #f0f4f9 100%) !important;
    box-shadow: none !important;
    overflow: hidden !important;
    position: relative;
    transform: none !important;
}

body.home-page.page-scale-on .section-service-clients {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 4rem 0 4.5rem !important;
}

.home-page .section-service-clients::before {
    content: '';
    position: absolute;
    bottom: -20%;
    right: -10%;
    top: auto;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(59,130,246,.05) 0%, transparent 70%);
    pointer-events: none;
}

.home-page .section-service-clients-inner {
    max-width: min(1440px, 96vw);
    margin-left: auto;
    margin-right: auto;
    padding-left: 3rem;
    padding-right: 3rem;
    position: relative;
    z-index: 1;
}

.home-page .section-service-clients .section-title {
    margin-bottom: 2rem !important;
    color: #0f172a !important;
}

.home-page .section-service-clients .section-title::before,
.home-page .section-feedback .headline::before {
    display: none !important;
}

.home-page .clients-rows {
    display: grid;
    gap: 18px;
    align-items: stretch;
}

.home-page .clients-scroll-wrap {
    margin: 0 auto;
    overflow: hidden;
    max-width: 1120px;
    mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

.home-page .clients-track {
    display: flex;
    width: max-content;
    gap: 1.5rem;
    padding: 0.75rem 1.25rem;
    animation: clientsScrollLeft 50s linear infinite;
}

.home-page .clients-track.clients-track--reverse {
    animation-name: clientsScrollRight;
    animation-duration: 62s;
}

.home-page .clients-track:hover {
    animation-play-state: paused;
}

.home-page .section-service-clients .client-card {
    flex-shrink: 0 !important;
    width: 148px !important;
    min-height: 0 !important;
    height: auto !important;
    display: block !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.home-page .section-service-clients .client-card-inner {
    width: 148px;
    height: 70px;
    padding: 10px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(226,232,240,.6);
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(255,255,255,.96) 0%, rgba(248,250,252,.92) 100%);
    box-shadow: 0 8px 24px rgba(15,23,42,.08);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.home-page .section-service-clients .client-card:hover {
    transform: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.home-page .section-service-clients .client-card:hover .client-card-inner {
    box-shadow: 0 12px 32px rgba(15,23,42,.15);
    transform: translateY(-3px);
    border-color: rgba(14,165,233,.3);
}

.home-page .section-service-clients .client-logo {
    width: 132px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home-page .section-service-clients .client-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: none !important;
    opacity: 1 !important;
}

.home-page .section-feedback {
    width: 100% !important;
    max-width: none !important;
    min-height: 560px;
    margin: 0 !important;
    padding: 26px 16px 34px !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 55%, #f0f4f9 100%) !important;
    transform: none !important;
}

body.home-page.page-scale-on .section-feedback {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 26px 16px 34px !important;
}

.home-page .section-feedback::before {
    content: '';
    position: absolute;
    inset: 0;
    width: auto;
    height: auto;
    border-radius: 0;
    background:
        radial-gradient(1200px 320px at 50% 12%, rgba(15, 23, 42, 0.06) 0%, rgba(15, 23, 42, 0) 60%),
        radial-gradient(900px 240px at 50% 24%, rgba(15, 23, 42, 0.05) 0%, rgba(15, 23, 42, 0) 62%),
        radial-gradient(700px 180px at 50% 36%, rgba(15, 23, 42, 0.04) 0%, rgba(15, 23, 42, 0) 65%),
        radial-gradient(circle at 14% 22%, rgba(6,182,212,.12) 0%, transparent 48%),
        radial-gradient(circle at 86% 26%, rgba(29,79,145,.10) 0%, transparent 52%);
    pointer-events: none;
}

.home-page .section-feedback .headline {
    font-family: "PingFang SC", var(--font-sans) !important;
    font-weight: 500 !important;
    font-size: 24px !important;
    color: #111 !important;
    letter-spacing: 0 !important;
    margin: 0.25rem 0 2px !important;
    position: relative;
    z-index: 1;
}

.home-page .section-feedback .sub-headline {
    font-size: 0.875rem !important;
    color: #64748b !important;
    margin: 0 0 2px !important;
    position: relative;
    z-index: 1;
}

.home-page .feedback-wrapper {
    position: relative;
    width: min(1180px, 96vw);
    height: 520px;
    margin: -24px auto 0;
    z-index: 1;
}

.home-page .feedback-top-row {
    position: relative;
    height: 330px;
}

.home-page .feedback-bottom-row {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 18px;
    display: flex;
    gap: 22px;
    padding: 0 6%;
}

.home-page .section-feedback .feedback-card,
.home-page .section-feedback .feedback-card.small-card,
.home-page .section-feedback .feedback-card.left-card,
.home-page .section-feedback .feedback-card.center-card,
.home-page .section-feedback .feedback-card.right-card {
    position: absolute;
    border-radius: 14px !important;
    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(226,232,240,.92) !important;
    box-shadow: 0 14px 30px rgba(15,23,42,.10) !important;
    overflow: visible;
    text-align: left;
    transition: transform 260ms cubic-bezier(0.2, 0, 0, 1), box-shadow 260ms cubic-bezier(0.2, 0, 0, 1);
    backdrop-filter: none !important;
    --feedback-avatar-size: 52px;
}

.home-page .section-feedback .feedback-card::before {
    content: '';
    position: absolute;
    inset: 0;
    width: auto;
    height: auto;
    border-radius: 14px;
    background:
        radial-gradient(circle at 0 0, rgba(6,182,212,.10) 0%, transparent 55%),
        radial-gradient(circle at 100% 100%, rgba(29,79,145,.08) 0%, transparent 55%);
    pointer-events: none;
}

.home-page .section-feedback .feedback-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 26px 64px rgba(15,23,42,.16) !important;
    z-index: 20;
}

.home-page .section-feedback .feedback-card .avatar {
    width: var(--feedback-avatar-size) !important;
    height: var(--feedback-avatar-size) !important;
    aspect-ratio: 1 / 1;
    border-radius: 9999px !important;
    display: block;
    object-fit: cover;
    border: 4px solid rgba(255,255,255,1) !important;
    box-shadow: 0 12px 26px rgba(15,23,42,.14);
    position: absolute;
    left: 50%;
    top: calc(var(--feedback-avatar-size) / -2);
    transform: translateX(-50%);
    z-index: 2;
    background: #fff;
    margin-bottom: 0 !important;
}

.home-page .section-feedback .feedback-card .card-content {
    padding: 30px 24px 22px;
    position: relative;
    z-index: 1;
}

.home-page .section-feedback .feedback-card .customerName {
    font-weight: 700 !important;
    color: #111827 !important;
    font-size: 1rem !important;
    text-align: center;
    margin-top: 2px;
    margin-bottom: 12px;
}

.home-page .section-feedback .feedback-card .text {
    color: #475569 !important;
    font-size: 0.9rem !important;
    line-height: 1.7 !important;
    position: relative;
    padding: 6px 16px 10px 30px !important;
    display: block;
    overflow: visible;
}

.home-page .section-feedback .feedback-card .yinhao-start,
.home-page .section-feedback .feedback-card .yinhao-end {
    position: absolute;
    font-size: 22px !important;
    font-weight: 700;
    color: rgba(148,163,184,.7) !important;
    line-height: 1;
    pointer-events: none;
    opacity: 1 !important;
}

.home-page .section-feedback .feedback-card .yinhao-start {
    left: 10px;
    top: 8px;
}

.home-page .section-feedback .feedback-card .yinhao-end {
    right: 18px;
    bottom: 16px;
}

.home-page .section-feedback .feedback-card.left-card {
    left: 0;
    top: 104px;
    width: 33%;
    height: auto;
    opacity: 1;
}

.home-page .section-feedback .feedback-card.center-card {
    left: 50%;
    top: 76px;
    width: 40%;
    height: auto;
    transform: translateX(-50%) !important;
    z-index: 5;
}

.home-page .section-feedback .feedback-card.center-card:hover {
    transform: translateX(-50%) translateY(-6px) !important;
}

.home-page .section-feedback .feedback-card.right-card {
    right: 0;
    top: 104px;
    width: 33%;
    height: auto;
    opacity: 1;
}

.home-page .section-feedback .feedback-card.small-card {
    position: relative;
    width: auto;
    flex: 1 1 0;
    height: auto;
    min-height: 156px;
    margin-top: -26px;
    z-index: 0;
    --feedback-avatar-size: 44px;
}

.home-page .section-feedback .feedback-card.small-card .customerName {
    font-size: 0.95rem !important;
    margin-top: 6px;
    margin-bottom: 6px;
}

.home-page .section-feedback .feedback-card.small-card .card-content {
    padding: 22px 18px 16px;
}

.home-page .section-feedback .feedback-card.small-card .text {
    font-size: 0.86rem !important;
    line-height: 1.65 !important;
}

@media (min-width: 992px) {
    body.home-page.page-scale-on .section-feedback .feedback-wrapper,
    body.home-page .section-feedback .feedback-wrapper {
        display: block !important;
        width: min(1180px, 96vw) !important;
        height: 520px !important;
        margin: -24px auto 0 !important;
        padding: 0 !important;
    }

    body.home-page.page-scale-on .section-feedback .feedback-top-row,
    body.home-page .section-feedback .feedback-top-row {
        display: block !important;
        position: relative !important;
        height: 330px !important;
    }

    body.home-page.page-scale-on .section-feedback .feedback-bottom-row,
    body.home-page .section-feedback .feedback-bottom-row {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 18px !important;
        display: flex !important;
        flex-direction: row !important;
        gap: 22px !important;
        padding: 0 6% !important;
    }

    body.home-page.page-scale-on .section-feedback .feedback-card.left-card,
    body.home-page .section-feedback .feedback-card.left-card {
        position: absolute !important;
        left: 0 !important;
        right: auto !important;
        top: 104px !important;
        width: 33% !important;
        max-width: none !important;
    }

    body.home-page.page-scale-on .section-feedback .feedback-card.center-card,
    body.home-page .section-feedback .feedback-card.center-card {
        position: absolute !important;
        left: 50% !important;
        right: auto !important;
        top: 76px !important;
        width: 40% !important;
        max-width: none !important;
        transform: translateX(-50%) !important;
    }

    body.home-page.page-scale-on .section-feedback .feedback-card.right-card,
    body.home-page .section-feedback .feedback-card.right-card {
        position: absolute !important;
        left: auto !important;
        right: 0 !important;
        top: 104px !important;
        width: 33% !important;
        max-width: none !important;
    }

    body.home-page.page-scale-on .section-feedback .feedback-card.small-card,
    body.home-page .section-feedback .feedback-card.small-card {
        position: relative !important;
        width: auto !important;
        max-width: none !important;
        flex: 1 1 0 !important;
        margin-top: -26px !important;
    }
}

@media (max-width: 991px) {
    .home-page .section-service-clients-inner {
        max-width: 100%;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .home-page .clients-scroll-wrap {
        max-width: 420px;
    }

    .home-page .section-service-clients .client-card {
        width: 120px !important;
    }

    .home-page .section-service-clients .client-card-inner {
        width: 120px;
        height: 60px;
        padding: 8px 10px;
    }

    .home-page .section-service-clients .client-logo {
        width: 100px;
        height: 44px;
    }

    .home-page .feedback-wrapper {
        height: auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 0 4px 10px;
    }

    .home-page .section-feedback .feedback-card,
    .home-page .section-feedback .feedback-card.small-card,
    .home-page .section-feedback .feedback-card.left-card,
    .home-page .section-feedback .feedback-card.center-card,
    .home-page .section-feedback .feedback-card.right-card {
        position: relative;
        width: 100% !important;
        height: auto !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        transform: none !important;
        opacity: 1 !important;
    }

    .home-page .feedback-top-row {
        height: auto;
    }

    .home-page .feedback-bottom-row {
        position: relative;
        bottom: auto;
        padding: 0;
        flex-direction: column;
    }
}

/* ============================================
   热门服务项目 - 蓝色系左右对应分栏改版
   ============================================ */
.home-page .section-hot-services {
    --hot-blue: #1d4f91;
    --hot-blue-dark: #153f78;
    --hot-blue-mid: #2f74c0;
    --hot-blue-soft: #eaf4ff;
    --hot-blue-pale: #f5faff;
    max-width: min(1180px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    margin: 2.2rem auto 3rem !important;
    padding: 2.4rem !important;
    border: 1px solid rgba(29, 79, 145, 0.14) !important;
    border-radius: 30px !important;
    background:
        radial-gradient(circle at 10% 8%, rgba(29, 79, 145, 0.12), transparent 34%),
        linear-gradient(135deg, #f7fbff 0%, #eaf4ff 48%, #ffffff 100%) !important;
    box-shadow: 0 24px 64px rgba(29, 79, 145, 0.12) !important;
    overflow: hidden;
}

body.home-page.page-scale-on .section-hot-services {
    max-width: min(1180px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    padding: 2.4rem !important;
    transform: none !important;
}

.home-page .section-hot-services::before {
    content: '';
    position: absolute;
    left: 1.2rem;
    top: 2rem;
    width: 6px;
    height: calc(100% - 4rem);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(29, 79, 145, 0.08), rgba(29, 79, 145, 0.34), rgba(29, 79, 145, 0.08));
}

.home-page .section-hot-services .hot-services-scale {
    position: relative;
    z-index: 1;
}

.home-page .section-hot-services .hot-services-layout {
    display: grid !important;
    grid-template-columns: 245px minmax(0, 1fr) !important;
    gap: 0 !important;
    align-items: stretch !important;
    min-height: 430px !important;
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(29, 79, 145, 0.10);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
    overflow: visible;
}

.home-page .section-hot-services .hot-services-nav {
    position: relative !important;
    top: auto !important;
    width: auto !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column;
    gap: 1rem !important;
    padding: 2.05rem 1.2rem 2.05rem 1.55rem !important;
    margin: 0 !important;
    border: 0 !important;
    background: linear-gradient(180deg, rgba(234, 244, 255, 0.96), rgba(255, 255, 255, 0.82));
    overflow: visible;
}

.home-page .section-hot-services .hot-services-nav::before {
    content: '';
    position: absolute;
    left: 0.78rem;
    top: 3.1rem;
    bottom: 3.1rem;
    width: 2px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(29, 79, 145, 0.14), rgba(29, 79, 145, 0.50), rgba(29, 79, 145, 0.14));
}

.home-page .section-hot-services .hot-services-nav::after {
    content: '↑';
    position: absolute;
    left: 0.38rem;
    top: 2.05rem;
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--hot-blue);
    font-size: 0.9rem;
    font-weight: 900;
}

.home-page .section-hot-services .hot-services-nav > li {
    position: relative;
    width: 100% !important;
    flex: 0 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible;
}

.home-page .section-hot-services .hot-services-nav > li::before {
    content: '';
    position: absolute;
    left: -0.86rem;
    top: 50%;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #fff;
    border: 2px solid rgba(29, 79, 145, 0.34);
    transform: translateY(-50%);
    z-index: 2;
}

.home-page .section-hot-services .hot-services-nav > li:has(.hot-nav-item.is-active)::before {
    width: 12px;
    height: 12px;
    left: -0.95rem;
    border-color: #fff;
    background: var(--hot-blue);
    box-shadow: 0 0 0 6px rgba(29, 79, 145, 0.12);
}

.home-page .section-hot-services .hot-nav-item,
.home-page .section-hot-services .hot-nav-link {
    width: 100% !important;
    min-height: 72px !important;
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 0.85rem 0.85rem 1rem !important;
    border: 1px solid rgba(29, 79, 145, 0.12) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: #1f2937 !important;
    box-shadow: 0 10px 24px rgba(29, 79, 145, 0.075) !important;
    text-align: left;
    transition: transform 0.24s ease, box-shadow 0.24s ease, background 0.24s ease;
}

.home-page .section-hot-services .hot-nav-item.is-active {
    background: var(--hot-blue) !important;
    color: #fff !important;
    border-color: rgba(29, 79, 145, 0.62) !important;
    box-shadow: 0 18px 36px rgba(29, 79, 145, 0.28) !important;
    transform: translateX(12px);
}

.home-page .section-hot-services .hot-nav-item.is-active::after {
    content: '';
    position: absolute;
    right: -24px;
    top: 50%;
    width: 28px;
    height: 2px;
    background: linear-gradient(90deg, var(--hot-blue), rgba(29, 79, 145, 0));
    transform: translateY(-50%);
}

.home-page .section-hot-services .hot-nav-icon {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: var(--hot-blue-soft);
    color: var(--hot-blue);
    font-size: 1.2rem;
    font-weight: 900;
}

.home-page .section-hot-services .hot-nav-item.is-active .hot-nav-icon {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
}

.home-page .section-hot-services .hot-nav-label {
    color: inherit !important;
    font-size: 1.03rem;
    font-weight: 800;
    letter-spacing: 0;
}

.home-page .section-hot-services .hot-nav-chevron {
    width: 26px !important;
    height: 26px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--hot-blue-soft) !important;
    color: var(--hot-blue) !important;
    font-size: 1rem !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-nav-item.is-active .hot-nav-chevron {
    background: rgba(255, 255, 255, 0.20) !important;
    color: #fff !important;
}

.home-page .section-hot-services .hot-services-visual {
    width: 100% !important;
    max-width: none !important;
    min-height: 430px !important;
    margin: 0 !important;
    padding: 2.15rem 2.35rem !important;
    border: 0 !important;
    border-left: 1px solid rgba(29, 79, 145, 0.12) !important;
    border-radius: 0 26px 26px 0 !important;
    background:
        radial-gradient(circle at 94% 12%, rgba(29, 79, 145, 0.10), transparent 32%),
        linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
    box-shadow: none !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-services-heading {
    max-width: 720px;
    margin-bottom: 1.55rem;
    text-align: left;
}

.home-page .section-hot-services .hot-services-heading .section-kicker {
    display: inline-flex;
    width: max-content;
    margin: 0 0 0.55rem;
    padding: 0.28rem 0.72rem;
    border-radius: 999px;
    border: 1px solid rgba(29, 79, 145, 0.16);
    background: var(--hot-blue-soft);
    color: var(--hot-blue);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.home-page .section-hot-services .hot-services-heading .section-title {
    margin: 0 !important;
    color: #0f172a !important;
    text-align: left !important;
    font-size: clamp(1.75rem, 2vw, 2.25rem) !important;
    font-weight: 900 !important;
    letter-spacing: -0.04em;
}

.home-page .section-hot-services .hot-services-heading .section-title::before {
    display: none !important;
}

.home-page .section-hot-services .hot-services-heading .section-subtitle {
    max-width: 620px;
    margin-top: 0.45rem !important;
    color: #64748b;
    text-align: left !important;
    font-size: 0.98rem;
    line-height: 1.65;
}

.home-page .section-hot-services .hot-panel {
    display: none !important;
}

.home-page .section-hot-services .hot-panel.is-active {
    display: block !important;
    height: auto !important;
}

.home-page .section-hot-services .hot-panel .hot-tag-grid,
.home-page .section-hot-services .hot-panel--simulation .hot-tag-grid,
.home-page .section-hot-services .hot-panel--experiment .hot-tag-grid,
.home-page .section-hot-services .hot-panel--paper .hot-tag-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: none !important;
    grid-auto-rows: minmax(156px, auto);
    gap: 1rem !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.home-page .section-hot-services .hot-panel .hot-tag-item {
    width: 100% !important;
    max-width: none !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.home-page .section-hot-services .hot-tag-card,
.home-page .section-hot-services .paper-mini-card {
    min-height: 156px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0.8rem;
    padding: 1.1rem !important;
    border: 1px solid rgba(29, 79, 145, 0.12) !important;
    border-radius: 18px !important;
    background: #fff !important;
    color: #0f172a !important;
    box-shadow: 0 12px 30px rgba(29, 79, 145, 0.08) !important;
    overflow: hidden;
    text-align: left !important;
    transform: none !important;
}

.home-page .section-hot-services .hot-tag-card:hover,
.home-page .section-hot-services .paper-mini-card:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(29, 79, 145, 0.26) !important;
    box-shadow: 0 18px 42px rgba(29, 79, 145, 0.14) !important;
}

.home-page .section-hot-services .hot-tag-service-icon,
.home-page .section-hot-services .paper-mini-card__icon,
.home-page .section-hot-services .hot-tag-empty-icon {
    width: 42px !important;
    height: 42px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    border-radius: 15px !important;
    background: var(--hot-blue-soft) !important;
    color: var(--hot-blue) !important;
    box-shadow: none !important;
    font-size: 1.25rem;
    font-weight: 900;
}

.home-page .section-hot-services .hot-tag-name,
.home-page .section-hot-services .paper-mini-card__title {
    position: static !important;
    display: block;
    padding: 0 !important;
    background: transparent !important;
    color: #0f172a !important;
    text-align: left !important;
    font-size: 1.02rem !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
    text-shadow: none !important;
}

.home-page .section-hot-services .hot-tag-name span {
    display: block;
}

.home-page .section-hot-services .hot-tag-name small,
.home-page .section-hot-services .paper-mini-card__desc {
    display: block;
    margin-top: 0.45rem !important;
    color: #64748b !important;
    font-size: 0.84rem !important;
    font-weight: 400 !important;
    line-height: 1.62 !important;
}

.home-page .section-hot-services .hot-tag-name::after {
    display: none !important;
}

.home-page .section-hot-services .hot-tag-thumb {
    display: none !important;
}

.home-page .section-hot-services .hot-tag-card--empty {
    border: 1px dashed rgba(29, 79, 145, 0.34) !important;
    background: linear-gradient(135deg, #f5faff 0%, #ffffff 100%) !important;
}

.home-page .section-hot-services .hot-tag-empty-content {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0.45rem !important;
    width: 100%;
    height: 100%;
    color: var(--hot-blue) !important;
    text-align: left !important;
}

.home-page .section-hot-services .hot-tag-empty-content strong {
    color: #0f172a;
    font-size: 1.02rem !important;
    font-weight: 850 !important;
}

.home-page .section-hot-services .hot-tag-empty-content small {
    color: #64748b !important;
    font-size: 0.84rem !important;
    line-height: 1.6;
}

.home-page .section-hot-services .hot-tag-card--empty .hot-tag-empty-icon {
    background: linear-gradient(135deg, var(--hot-blue), var(--hot-blue-mid)) !important;
    color: #fff !important;
}

@media (max-width: 1199px) {
    .home-page .section-hot-services .hot-panel .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--simulation .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--experiment .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--paper .hot-tag-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    .home-page .section-hot-services {
        max-width: none !important;
        margin: 1.5rem 1rem 2rem !important;
        padding: 1.1rem !important;
        border-radius: 24px !important;
    }

    .home-page .section-hot-services .hot-services-layout {
        display: block !important;
        min-height: auto !important;
    }

    .home-page .section-hot-services .hot-services-nav {
        display: grid !important;
        grid-template-columns: 1fr !important;
        padding: 1rem !important;
    }

    .home-page .section-hot-services .hot-nav-item.is-active {
        transform: none;
    }

    .home-page .section-hot-services .hot-nav-item.is-active::after,
    .home-page .section-hot-services .hot-services-nav::before,
    .home-page .section-hot-services .hot-services-nav::after,
    .home-page .section-hot-services .hot-services-nav > li::before {
        display: none !important;
    }

    .home-page .section-hot-services .hot-services-visual {
        min-height: auto !important;
        padding: 1.25rem !important;
        border-left: 0 !important;
        border-radius: 0 0 22px 22px !important;
    }

    .home-page .section-hot-services .hot-panel .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--simulation .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--experiment .hot-tag-grid,
    .home-page .section-hot-services .hot-panel--paper .hot-tag-grid {
        grid-template-columns: 1fr !important;
    }
}

/* 热门服务项目 - 单层扁平容器修复 */
body.home-page .section-hot-services,
body.home-page.page-scale-on .section-hot-services {
    max-width: min(1180px, calc(100vw / var(--page-scale, 1) - 5rem)) !important;
    margin: 2.2rem auto 3rem !important;
    padding: 2.4rem !important;
    border: 1px solid rgba(29, 79, 145, 0.08) !important;
    border-radius: 26px !important;
    background: #fff !important;
    background-image: none !important;
    box-shadow: 0 16px 42px rgba(15, 23, 42, 0.055) !important;
    overflow: hidden !important;
}

body.home-page .section-hot-services::before,
body.home-page .section-hot-services::after,
body.home-page.page-scale-on .section-hot-services::before,
body.home-page.page-scale-on .section-hot-services::after {
    display: none !important;
    content: none !important;
}

body.home-page .section-hot-services .hot-services-scale,
body.home-page.page-scale-on .section-hot-services .hot-services-scale {
    position: relative !important;
    z-index: 1 !important;
}

body.home-page .section-hot-services .hot-services-layout,
body.home-page.page-scale-on .section-hot-services .hot-services-layout {
    display: grid !important;
    grid-template-columns: 245px minmax(0, 1fr) !important;
    gap: 0 !important;
    min-height: 430px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    background-image: none !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body.home-page .section-hot-services .hot-services-nav,
body.home-page.page-scale-on .section-hot-services .hot-services-nav {
    margin: 0 !important;
    padding: 2.05rem 1.4rem 2.05rem 0 !important;
    border: 0 !important;
    background: #fff !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.home-page .section-hot-services .hot-services-nav::before,
body.home-page .section-hot-services .hot-services-nav::after,
body.home-page .section-hot-services .hot-services-nav > li::before,
body.home-page .section-hot-services .hot-nav-item.is-active::after,
body.home-page.page-scale-on .section-hot-services .hot-services-nav::before,
body.home-page.page-scale-on .section-hot-services .hot-services-nav::after,
body.home-page.page-scale-on .section-hot-services .hot-services-nav > li::before,
body.home-page.page-scale-on .section-hot-services .hot-nav-item.is-active::after {
    display: none !important;
    content: none !important;
}

body.home-page .section-hot-services .hot-services-visual,
body.home-page.page-scale-on .section-hot-services .hot-services-visual {
    min-height: 430px !important;
    padding: 2.15rem 0 2.15rem 2.35rem !important;
    border: 0 !important;
    border-left: 1px solid rgba(148, 163, 184, 0.22) !important;
    border-radius: 0 !important;
    background: #fff !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.home-page .section-hot-services .hot-nav-item,
body.home-page .section-hot-services .hot-nav-link,
body.home-page.page-scale-on .section-hot-services .hot-nav-item,
body.home-page.page-scale-on .section-hot-services .hot-nav-link {
    background: #f3f6fa !important;
    box-shadow: none !important;
}

body.home-page .section-hot-services .hot-nav-item.is-active,
body.home-page.page-scale-on .section-hot-services .hot-nav-item.is-active {
    background: var(--hot-blue) !important;
    box-shadow: none !important;
    transform: none !important;
}

@media (max-width: 991px) {
    body.home-page .section-hot-services,
    body.home-page.page-scale-on .section-hot-services {
        max-width: none !important;
        margin: 1.5rem 1rem 2rem !important;
        padding: 1.1rem !important;
        border-radius: 22px !important;
    }

    body.home-page .section-hot-services .hot-services-layout,
    body.home-page.page-scale-on .section-hot-services .hot-services-layout {
        display: block !important;
        min-height: auto !important;
    }

    body.home-page .section-hot-services .hot-services-nav,
    body.home-page.page-scale-on .section-hot-services .hot-services-nav {
        padding: 0 0 1rem !important;
    }

    body.home-page .section-hot-services .hot-services-visual,
    body.home-page.page-scale-on .section-hot-services .hot-services-visual {
        min-height: auto !important;
        padding: 1.25rem 0 0 !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(148, 163, 184, 0.18) !important;
    }
}

/* Final platform advantage image overlay override */
body.home-page .section-advantages .advantage-card.advantage-bg-guide {
    --adv-bg-image: url('../img/tigong.png') !important;
}

body.home-page .section-advantages .advantage-card.advantage-bg-process {
    --adv-bg-image: url('../img/guocheng.png') !important;
}

body.home-page .section-advantages .advantage-card.advantage-bg-solution {
    --adv-bg-image: url('../img/yizhan.png') !important;
}

body.home-page .section-advantages .advantage-card.advantage-bg-guide::before,
body.home-page .section-advantages .advantage-card.advantage-bg-process::before,
body.home-page .section-advantages .advantage-card.advantage-bg-solution::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background-image: var(--adv-bg-image) !important;
    background-size: 100% 100% !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
    filter: saturate(1.04) contrast(1.02) !important;
    transform: none !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease, filter 0.3s ease !important;
    z-index: 0 !important;
}

body.home-page .section-advantages .advantage-card.advantage-bg-guide::after,
body.home-page .section-advantages .advantage-card.advantage-bg-process::after,
body.home-page .section-advantages .advantage-card.advantage-bg-solution::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    border: 0 !important;
    border-radius: inherit !important;
    background: linear-gradient(135deg, rgba(255,255,255,.86) 0%, rgba(255,255,255,.72) 52%, rgba(239,248,255,.82) 100%) !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
    z-index: 0 !important;
}

body.home-page .section-advantages .advantage-card.advantage-bg-guide:hover::before,
body.home-page .section-advantages .advantage-card.advantage-bg-process:hover::before,
body.home-page .section-advantages .advantage-card.advantage-bg-solution:hover::before,
body.home-page .section-advantages .advantage-card.advantage-bg-guide.is-flipped::before,
body.home-page .section-advantages .advantage-card.advantage-bg-process.is-flipped::before,
body.home-page .section-advantages .advantage-card.advantage-bg-solution.is-flipped::before,
body.home-page .section-advantages .advantage-card.advantage-bg-guide:hover::after,
body.home-page .section-advantages .advantage-card.advantage-bg-process:hover::after,
body.home-page .section-advantages .advantage-card.advantage-bg-solution:hover::after,
body.home-page .section-advantages .advantage-card.advantage-bg-guide.is-flipped::after,
body.home-page .section-advantages .advantage-card.advantage-bg-process.is-flipped::after,
body.home-page .section-advantages .advantage-card.advantage-bg-solution.is-flipped::after {
    opacity: 0 !important;
}

/* Service clients refinement */
body.home-page .section-service-clients,
body.home-page.page-scale-on .section-service-clients {
    background: linear-gradient(180deg, #f7f9fc 0%, #f3f6fa 52%, #f8fafc 100%) !important;
}

body.home-page .section-service-clients::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255,255,255,.62) 0%, rgba(255,255,255,0) 28%, rgba(255,255,255,.58) 100%),
        radial-gradient(circle at 12% 18%, rgba(14,165,233,.055) 0%, transparent 32%);
    pointer-events: none;
    z-index: 0;
}

body.home-page .section-service-clients-inner {
    position: relative;
    z-index: 1;
}

body.home-page .clients-rows {
    gap: 22px;
}

body.home-page .clients-scroll-wrap {
    position: relative;
    max-width: 1120px;
    padding-inline: 6px;
    mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 4%, #000 13%, #000 87%, rgba(0,0,0,.18) 96%, transparent 100%) !important;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 4%, #000 13%, #000 87%, rgba(0,0,0,.18) 96%, transparent 100%) !important;
}

body.home-page .clients-scroll-wrap::before,
body.home-page .clients-scroll-wrap::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 108px;
    pointer-events: none;
    z-index: 3;
}

body.home-page .clients-scroll-wrap::before {
    left: 0;
    background: linear-gradient(90deg, #f5f8fc 0%, rgba(245,248,252,.78) 34%, rgba(245,248,252,0) 100%);
}

body.home-page .clients-scroll-wrap::after {
    right: 0;
    background: linear-gradient(270deg, #f5f8fc 0%, rgba(245,248,252,.78) 34%, rgba(245,248,252,0) 100%);
}

body.home-page .section-service-clients .client-card {
    width: 210px !important;
}

body.home-page .section-service-clients .client-card-inner {
    width: 210px !important;
    height: 96px !important;
    padding: 14px 18px !important;
    border-color: rgba(210,219,232,.86) !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.92) !important;
    box-shadow: 0 10px 26px rgba(15,23,42,.07) !important;
}

body.home-page .section-service-clients .client-logo {
    width: 178px !important;
    height: 68px !important;
}

body.home-page .section-service-clients .client-logo img {
    max-width: 100% !important;
    max-height: 100% !important;
}

@media (max-width: 991px) {
    body.home-page .section-service-clients .client-card {
        width: 156px !important;
    }

    body.home-page .section-service-clients .client-card-inner {
        width: 156px !important;
        height: 76px !important;
        padding: 10px 12px !important;
    }

    body.home-page .section-service-clients .client-logo {
        width: 132px !important;
        height: 56px !important;
    }

    body.home-page .clients-scroll-wrap::before,
    body.home-page .clients-scroll-wrap::after {
        width: 54px;
    }
}

/* Wide screen layout guard: full-bleed backgrounds, fixed-width content */
body.site-body {
    --home-content-max: 1440px;
    --home-content-gutter: clamp(1rem, 3vw, 3rem);
    --home-content-width: min(var(--home-content-max), calc((100vw / var(--page-scale, 1)) - (var(--home-content-gutter) * 2)));
}

body.home-page {
    --home-hero-height: clamp(460px, 20vw, 640px);
}

@media (min-width: 992px) {
    body.site-body .site-main.pt-nav,
    body.site-body.page-scale-on .site-main.pt-nav {
        padding-top: 136px !important;
    }

    body.home-page .site-main.pt-nav,
    body.home-page.page-scale-on .site-main.pt-nav {
        padding-top: 112px !important;
    }

    body.home-page::before,
    body.home-page.page-scale-on::before {
        content: none;
    }

    body.home-page.page-scale-on .scale-viewport.is-scaling {
        background: linear-gradient(
            to bottom,
            #fff 0,
            #fff calc(131px * var(--page-scale, 1)),
            var(--bg-page) calc(131px * var(--page-scale, 1)),
            var(--bg-page) 100%
        ) !important;
    }

    body.home-page.page-scale-on .scale-viewport.is-scaling::before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: calc(131px * var(--page-scale, 1));
        background: #fff;
        box-shadow: 0 6px 20px rgba(15, 23, 42, 0.08);
        pointer-events: none;
        z-index: 0;
    }

    body.home-page.page-scale-on .scale-app {
        position: relative;
        z-index: 1;
    }

    body.home-page .site-header,
    body.home-page.page-scale-on .site-header {
        overflow: visible !important;
    }

    body.home-page .site-header .site-header-inner,
    body.home-page.page-scale-on .site-header .site-header-inner,
    body.site-body .site-header .site-header-inner,
    body.site-body.page-scale-on .site-header .site-header-inner {
        width: calc(100vw / var(--page-scale, 1)) !important;
        max-width: none !important;
        margin-left: calc((1920px - (100vw / var(--page-scale, 1))) / 2) !important;
        margin-right: calc((1920px - (100vw / var(--page-scale, 1))) / 2) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        background: #fff !important;
    }

    body.home-page .site-header .header-pc-align,
    body.home-page.page-scale-on .site-header .header-pc-align,
    body.site-body .site-header .header-pc-align,
    body.site-body.page-scale-on .site-header .header-pc-align {
        width: var(--home-content-width) !important;
        max-width: var(--home-content-max) !important;
        margin-left: calc(((100vw / var(--page-scale, 1)) - var(--home-content-width)) / 2) !important;
        margin-right: calc(((100vw / var(--page-scale, 1)) - var(--home-content-width)) / 2) !important;
        justify-content: center !important;
    }

    body.home-page .site-header .top-bar,
    body.home-page .site-header .nav-row,
    body.home-page.page-scale-on .site-header .top-bar,
    body.home-page.page-scale-on .site-header .nav-row,
    body.site-body .site-header .top-bar,
    body.site-body .site-header .nav-row,
    body.site-body.page-scale-on .site-header .top-bar,
    body.site-body.page-scale-on .site-header .nav-row {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.home-page .site-header .top-bar-inner,
    body.home-page.page-scale-on .site-header .top-bar-inner,
    body.site-body .site-header .top-bar-inner,
    body.site-body.page-scale-on .site-header .top-bar-inner {
        justify-content: stretch !important;
    }

    body.home-page .site-header .top-bar-cluster,
    body.home-page.page-scale-on .site-header .top-bar-cluster,
    body.site-body .site-header .top-bar-cluster,
    body.site-body.page-scale-on .site-header .top-bar-cluster {
        width: 100% !important;
        max-width: 100% !important;
        gap: clamp(1rem, 1.8vw, 1.75rem) !important;
        justify-content: space-between !important;
    }

    body.home-page .site-header .navbar-brand,
    body.home-page.page-scale-on .site-header .navbar-brand,
    body.site-body .site-header .navbar-brand,
    body.site-body.page-scale-on .site-header .navbar-brand {
        flex: 0 0 auto !important;
        max-width: 280px !important;
    }

    body.home-page .site-header .search-form,
    body.home-page.page-scale-on .site-header .search-form,
    body.site-body .site-header .search-form,
    body.site-body.page-scale-on .site-header .search-form {
        flex: 0 1 420px !important;
        max-width: 420px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.home-page .site-header .top-bar-right,
    body.home-page.page-scale-on .site-header .top-bar-right,
    body.site-body .site-header .top-bar-right,
    body.site-body.page-scale-on .site-header .top-bar-right {
        flex: 0 0 auto !important;
        gap: clamp(0.75rem, 1.1vw, 1.15rem) !important;
    }

    body.home-page .site-header .nav-row .nav-main,
    body.home-page.page-scale-on .site-header .nav-row .nav-main,
    body.site-body .site-header .nav-row .nav-main,
    body.site-body.page-scale-on .site-header .nav-row .nav-main {
        width: 100% !important;
        justify-content: space-between !important;
        gap: clamp(1.5rem, 2.6vw, 3rem) !important;
    }

    body.home-page .site-header .nav-row .nav-main .nav-link,
    body.home-page.page-scale-on .site-header .nav-row .nav-main .nav-link,
    body.site-body .site-header .nav-row .nav-main .nav-link,
    body.site-body.page-scale-on .site-header .nav-row .nav-main .nav-link {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    body.home-page .hero-section .carousel-caption.hero-copy,
    body.home-page.page-scale-on .hero-section .carousel-caption.hero-copy {
        left: calc(((100vw / var(--page-scale, 1)) - var(--home-content-width)) / 2) !important;
        width: min(760px, calc(var(--home-content-width) * 0.58)) !important;
        max-width: 760px !important;
    }

    body.home-page .hero-section .carousel-caption.hero-copy h5,
    body.home-page.page-scale-on .hero-section .carousel-caption.hero-copy h5 {
        max-width: 100% !important;
        white-space: nowrap !important;
        overflow-wrap: normal !important;
        word-break: keep-all !important;
        font-size: clamp(2.75rem, 3.2vw, 4.2rem) !important;
    }

    body.home-page .hero-section .carousel-caption.hero-copy p,
    body.home-page.page-scale-on .hero-section .carousel-caption.hero-copy p {
        max-width: min(620px, 100%) !important;
    }

    body.home-page .hero-section,
    body.home-page .hero-section #mainCarousel,
    body.home-page .hero-section .carousel-inner,
    body.home-page .hero-section .carousel-item,
    body.home-page .hero-section .hero-banner-img,
    body.home-page.page-scale-on .hero-section,
    body.home-page.page-scale-on .hero-section #mainCarousel,
    body.home-page.page-scale-on .hero-section .carousel-inner,
    body.home-page.page-scale-on .hero-section .carousel-item,
    body.home-page.page-scale-on .hero-section .hero-banner-img {
        height: var(--home-hero-height) !important;
        min-height: var(--home-hero-height) !important;
        max-height: var(--home-hero-height) !important;
    }

    body.home-page .hero-section,
    body.home-page.page-scale-on .hero-section {
        overflow: hidden !important;
    }

    body.home-page .hero-section .hero-banner-img,
    body.home-page.page-scale-on .hero-section .hero-banner-img {
        object-fit: cover !important;
        object-position: center center !important;
    }

    body.home-page .section-notices,
    body.home-page .section-advantages,
    body.home-page .section-service-clients,
    body.home-page .section-feedback,
    body.home-page .section-flow,
    body.home-page .section-hot-services,
    body.home-page.page-scale-on .section-notices,
    body.home-page.page-scale-on .section-advantages,
    body.home-page.page-scale-on .section-service-clients,
    body.home-page.page-scale-on .section-feedback,
    body.home-page.page-scale-on .section-flow,
    body.home-page.page-scale-on .section-hot-services {
        width: var(--home-content-width) !important;
        max-width: var(--home-content-max) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    body.home-page .section-service-clients-inner,
    body.home-page.page-scale-on .section-service-clients-inner,
    body.home-page .feedback-coverflow,
    body.home-page.page-scale-on .feedback-coverflow,
    body.home-page .feedback-wrapper,
    body.home-page.page-scale-on .feedback-wrapper {
        max-width: 100% !important;
    }

    body.home-page .clients-scroll-wrap,
    body.home-page.page-scale-on .clients-scroll-wrap {
        max-width: calc(var(--home-content-width) - 5.4rem) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.home-page .section-hot-services .hot-services-layout,
    body.home-page.page-scale-on .section-hot-services .hot-services-layout {
        grid-template-columns: 245px minmax(0, 1fr) !important;
    }
}

@media (min-width: 1600px) {
    body.home-page .hero-section .carousel-caption.hero-copy h5,
    body.home-page.page-scale-on .hero-section .carousel-caption.hero-copy h5 {
        font-size: 4.2rem !important;
    }
}

@media (max-width: 575px) {
    body.home-page .hero-section .carousel-caption.hero-copy h5,
    body.home-page.page-scale-on .hero-section .carousel-caption.hero-copy h5 {
        white-space: normal !important;
        word-break: keep-all !important;
    }
}
