@charset "UTF-8";
/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 1.0.1
*/

/**
 * ==================== 性能优化说明 ====================
 * 所有CSS文件已通过 functions/script-style.php 使用 wp_enqueue_style 并行加载
 * 原18个 @import 串行加载已优化为并行加载，性能提升5-10倍
 *
 * 加载的CSS文件列表：
 * - diy.css (基础样式)
 * - css/product.css (产品单页)
 * - css/page.css (单页面)
 * - css/single-archive.css (文章存档)
 * - css/single.css (文章单页)
 * - css/block-faq-list.css (折叠卡)
 * - css/plugin.css (插件)
 * - css/font-type.css (字体)
 * - css/header.css (头部)
 * - css/footer.css (底部)
 * - css/block-btn.css (按钮)
 * - css/clean-layout.css (布局/间距/填充/阴影)
 * - css/icon.css (图标)
 * - css/block-breadcrumb.css (面包屑)
 * - css/block-slider.css (轮播)
 * - css/block-lightbox.css (弹窗)
 * - css/block-tabs.css (切换卡)
 * - css/block-UX.css (UX编辑器，条件加载)
 * ===================================================
 */
 .case-left *{
     font-weight: 600 !important;
     font-synthesis:initial !important;
 }
.nav-dropdown.dropdown-uppercase>li>a{
    text-transform: uppercase !important;
}


 Footer *{
     font-size: 13px !important;
 }
 
 .logo-list-col-5 .col-5 {
    width: 20% !important;
    float: left !important;
    display: flex !important;
    flex-basis: 20%;
    max-width: 20%;
}

.logo-list-col-5 .col-5 img{
    padding: 5px 30px;
}

@media only screen and (max-width: 48em) {
  .logo-list-col-5 .col-5 {
        width: 33.3% !important;
        float: left !important;
        display: flex !important;
        flex-basis: 33.3%;
        max-width: 33.3%;
    }  
    
    .logo-list-col-5 .col-5 img{
        padding: 10px;
    }

}

@media (max-width: 1024px) {
  .logo-list-col-5 .col-5 {
        width: 33.3% !important;
        float: left !important;
        display: flex !important;
        flex-basis: 33.3%;
        max-width: 33.3%;
    }  
}

 /* ==========================================================================
案例
   ========================================================================== */
   
/* Sector 按钮化样式 */
.sector-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* 居中对齐，匹配你原有的 text_align="center" */
    gap: 8px;
    margin-top: 5px;
}

.sector-link-btn {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    font-size: 12px; /* 缩小文字 */
    color: #302883 !important; /* 匹配你之前的文字颜色 */
    background-color: #f4f4f9; /* 浅色背景 */
    border-radius: 4px; /* 圆角 */
    border: 1px solid #e0e0ed;
    transition: all 0.3s ease;
    text-decoration: none !important;
}

.sector-link-btn i {
    margin-right: 5px; /* 图标间距 */
    font-size: 14px;
}

.sector-link-btn:hover {
    background-color: #302883;
    color: #ffffff !important;
    border-color: #302883;
}


   .case-filters {
    margin: 20px 0 40px;
}

.case-filter-btn {
    display: inline-block;
    margin: 0 10px;
    padding: 6px 0;
    font-size: 13px;
    text-decoration: none;
    color: #999;
    position: relative;
    transition: 0.3s;
}

.case-filter-btn:hover {
    color: #111;
}

.case-filter-btn.active {
    color: #111;
}

/* 下划线动画 */
.case-filter-btn::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 1px;
    background: #111;
    transition: 0.3s;
}

.case-filter-btn:hover::after,
.case-filter-btn.active::after {
    width: 100%;
}


/*分类筛选*/
.case-archive-title {
    margin-bottom: 20px;
}

/* 分类按钮 */
.case-filters {
    margin-bottom: 40px;
}

.case-filter-btn {
    display: inline-block;
    margin: 0 10px;
    padding: 6px 0;
    font-size: 13px;
    text-decoration: none;
    color: #999;
    position: relative;
    transition: 0.3s;
}

/* hover */
.case-filter-btn:hover {
    color: #111;
}

/* active */
.case-filter-btn.active {
    color: #111;
}

/* 下划线动画 */
.case-filter-btn::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 1px;
    background: #111;
    transition: 0.3s;
}

.case-filter-btn:hover::after,
.case-filter-btn.active::after {
    width: 100%;
}

/*动画出现*/
.case-item {
    opacity: 0;
    transform: translateY(20px);
}

/* 触发动画 */
.case-item.in-view {
    animation: caseFadeUp 0.6s ease forwards;
}

@keyframes caseFadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ===== 基础 ===== */
.case-card-link {
    display: block;
    text-decoration: none !important;
    color: #111 !important;
}

/* 图片 */
.case-card-image {
    position: relative;
    overflow: hidden;
    background: #f5f5f5;
}

.case-card-image img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

/* ===== hover遮罩（关键） ===== */
.case-card-hover {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.45);
    opacity: 0;
    transition: 0.35s ease;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.case-card-hover-inner {
    color: #fff;
    padding: 20px;
    transform: translateY(10px);
    transition: 0.35s ease;
}

/* 描述 */
.case-card-hover-text {
    font-size: 14px;
    line-height: 1.5;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;

    margin-bottom: 12px;
}

/* icon */
.case-card-hover-icon i {
    font-size: 20px;
    transition: transform 0.3s ease;
}

/* ===== hover触发 ===== */
.case-card-link:hover .case-card-hover {
    opacity: 1;
}

.case-card-link:hover .case-card-hover-inner {
    transform: translateY(0);
}

.case-card-link:hover img {
    transform: scale(1.04);
}

.case-card-link:hover .case-card-hover-icon i {
    transform: translate(4px, -4px);
}

/* ===== 内容区 ===== */
.case-card-content {
    padding-top: 14px;
}

.case-card-title {
    font-size: 16px;
    font-weight: 500;
    margin: 0 0 6px;
    transition: opacity 0.3s ease;
}

.case-card-location {
    font-size: 12px;
    color: #777;
    margin: 0;
}

/* ===== 底部线条 ===== */
.case-card {
    position: relative;
}

.case-card::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 1px;
    background: #999;
    transition: width 0.3s ease;
}

.case-card:hover::after {
    width: 100%;
}

/*卡片结束*/

   .case-archive-section {
    padding-top: 90px;
    padding-bottom: 30px;
}

.case-archive-heading {
    text-align: center;
    margin-bottom: 40px;
}

.case-card-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.case-card-image {
    overflow: hidden;
}

.case-card-image img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}

.case-card-content {
    padding-top: 12px;
}

.case-card-title {
    margin: 0 0 6px;
    font-size: 16px;
    line-height: 1.4;
}

.case-card-location {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
    color: #302883;
}

.case-card-link:hover .case-card-title {
    opacity: .8;
}

@media screen and (max-width: 849px) {
    .case-archive-section {
        padding-top: 30px;
    }
}

.case-left .left-lable{
    padding-bottom: 10px;
}
.case-thumb img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

 
.nav > li > a{
     text-transform: uppercase !important;
 }
/* 1. 背景变黑：针对 .header-wrapper.stuck 下的背景容器 */
.header-wrapper.stuck .header-bg-color {
    background-color: #eee !important;
    opacity: 1 !important;
}



/* 3. 链接文字反白：针对导航菜单中的 a 链接 */
.header-wrapper.stuck .header-nav .nav-top-link,
.header-wrapper.stuck .header-nav .nav-top-link span,
.header-wrapper.stuck .header-nav .nav-top-link i {
    color: #333 !important;
}

/* 4. 移动端汉堡菜单图标反白 */
.header-wrapper.stuck .mobile-nav .icon-menu {
    color: #333 !important;
}

/* 5. (可选) 鼠标悬停在链接上时的颜色，防止变回深色 */
.header-wrapper.stuck .header-nav .nav-top-link:hover {
    color: #333 !important;
}
@keyframes breathe {
  0% {
    transform: scale(1);
    opacity: 0; /* 从透明开始 */
  }
  20% {
    opacity: 1; /* 渐显 */
  }
  50% {
    transform: scale(1.15);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.big-img .banner-bg {
  width: 100%;
  height: auto;
  animation: breathe 20s infinite alternate;
}