/* 图片 banner：保留原图，叠加更深的品牌蓝紫蒙层，把照片色调统一进平台配色 */
.case-hero { position: relative; overflow: hidden; background: linear-gradient(135deg, rgba(43,63,166,.88) 0%, rgba(59,87,217,.80) 55%, rgba(79,110,247,.72) 100%); color:#fff; padding:60px 0; text-align:center; text-shadow:0 1px 10px rgba(0,0,0,.35); }
/* 动态背景：图片拆到 ::before 做钟摆式缓转，蒙层静止；inset -12% 为旋转/缩放留出裁剪余量 */
.case-hero::before { content: ''; position: absolute; inset: -12%; z-index: 0; background: url('../../banners/banner-cases.png') center/cover no-repeat; box-shadow: inset 0 0 0 100vmax rgba(52,72,190,0.5); animation: pt-kb-drift 12s ease-in-out infinite alternate; }
.case-hero > * { position: relative; }
/* 底部涟漪波纹收边（与首页 .pt-hero 一致，颜色用 --pt-hero-wave 可覆盖） */
.case-hero::after { content: ''; position: absolute; bottom: -2px; left: 0; right: 0; height: 60px; background: var(--pt-hero-wave, var(--pt-bg, #F3F4F6)); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60'%3E%3Cpath fill='%23000' d='M0,32L48,34.7C96,37,192,43,288,42.7C384,43,480,37,576,34.7C672,32,768,35,864,37.3C960,40,1056,43,1152,40C1248,37,1344,29,1392,24L1440,21L1440,60L1392,60C1344,60,1248,60,1152,60C1056,60,960,60,864,60C768,60,672,60,576,60C480,60,384,60,288,60C192,60,96,60,48,60L0,60Z'/%3E%3C/svg%3E") no-repeat bottom center; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60'%3E%3Cpath fill='%23000' d='M0,32L48,34.7C96,37,192,43,288,42.7C384,43,480,37,576,34.7C672,32,768,35,864,37.3C960,40,1056,43,1152,40C1248,37,1344,29,1392,24L1440,21L1440,60L1392,60C1344,60,1248,60,1152,60C1056,60,960,60,864,60C768,60,672,60,576,60C480,60,384,60,288,60C192,60,96,60,48,60L0,60Z'/%3E%3C/svg%3E") no-repeat bottom center; -webkit-mask-size: cover; mask-size: cover; pointer-events: none; }
        .case-hero h1 { font-size:32px; font-weight:800; margin-bottom:8px; }
        .case-hero p { opacity:0.9; font-size:16px; max-width:500px; margin:0 auto; }
        .case-filters { margin-bottom:16px; }
        /* 工具条：结果计数 + 排序标签 */
        .case-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:22px; }
        .case-count { font-size:14px; color:var(--pt-text-muted); }
        .case-count b { color:var(--pt-primary); font-size:18px; font-weight:800; margin:0 2px; }
        .case-sort { display:flex; align-items:center; gap:8px; }
        .case-sort-label { font-size:13px; color:var(--pt-text-muted); margin-right:2px; }
        /* Hero 居中搜索框：比顶部导航搜索更显眼，页内直接搜作品 */
        .case-search { display:flex; align-items:center; max-width:520px; margin:24px auto 0; background:#fff; border-radius:24px; padding:5px 5px 5px 18px; box-shadow:0 10px 30px rgba(15,23,42,0.18); }
        .case-search .layui-icon-search { color:var(--pt-text-muted); font-size:16px; margin-right:10px; }
        .case-search input { flex:1; min-width:0; border:none; outline:none; background:transparent; font-size:14px; color:var(--pt-text); height:36px; }
        .case-search .layui-btn { border-radius:20px !important; height:36px; line-height:36px; padding:0 22px; }
        .case-kw-clear { color:var(--pt-primary); margin-left:8px; }