﻿:root {  --color-primary: #c90010;      /* 导航 */
 --color-red-dark: #c90010; /* 主色调  */
 --color-secondary: #000000;    /* 辅助/点缀色 (典雅金) */
 --color-text: #333;           /* 主要文本颜色 */
 --color-text-light: #666;      /* 次要文本颜色 */
 --color-text-qh: #999;      /* 文本浅灰颜色 */
 --color-background: #fff;       /* 主背景色 */
 --color-background-alt: #f8f9fa; /* 次要背景色 (浅灰) */
 --color-border: #e5e7eb;         /* 边框颜色 */
 --color-gray-border: #d1d5db;
 --color-gray-text: #4b5563;
 --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
 --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
 --swiper-navigation-color:#fff;
 --swiper-theme-color:#fff,  --font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen",  "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue",  "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif;
 --spacing-unit: 1rem;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 62.5%; }
body { font-family: var(--font-family-sans); font-size: 1.6rem; line-height: 1.7; color: var(--color-text); background-color: var(--color-background); overflow-x: hidden; /* 防止横向滚动条 */ }
ul, ol, li { list-style: none; }
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: var(--color-primary); }
a:hover { color: #f00; text-decoration: none; }
h1, h2, h3, h4, h5, h6 { /* color: var(--color-primary); */
line-height: 1.3; font-weight: 600;  margin-bottom: calc(var(--spacing-unit) * 1.5);
}
h1 { font-size: 3.2rem; }
h2 { font-size: 2.8rem; }
h3 { font-size: 2.2rem; }
h4 { font-size: 1.8rem; }
p { margin-bottom: var(--spacing-unit); }
.pos{ position:absolute; color:#ddd; width:100%; padding:20px; bottom:0; left:0;}
.pos a{ color:#ddd;}
.pos a:hover{ color:#fff;}
/* 多文字省... */
.yhtxt1 { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }
.yhtxt2 { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.txtr{ text-align:right;}
/* 外间距 */
.pt10 { padding-top:10px; }
.pt20 { padding-top: 20px; }
.pt30 { padding-top: 30px; }
.pt60 { padding-top: 60px; }
/* 颜色 */
.baise { color: #fff !important; }
.hsbg { background: #f9f9f9; }
.re { position: relative; }
.dis { display: none; }
/* 文章开头没两格 */
.kem { text-indent: 2em; }
/* 入场动画 */
.animate-on-scroll { opacity: 0; transition: opacity 0.8s ease-out, transform 0.8s ease-out }
.anim-fade-in-left { transform: translateX(-50px) }
.anim-fade-in-right { transform: translateX(50px) }
.anim-fade-in-up { transform: translateY(50px) }
.anim-fade-in-down { transform: translateY(-50px) }
.anim-fade-in { transform: translate(0, 0) }
.animate-on-scroll.is-visible { opacity: 1; transform: translate(0, 0) }
/* ============= 布局与栅格系统 (Layout & Grid) =================== */
.container { width: 100%; max-width: 1480px; margin: 0 auto; padding: 0 1rem }
.grid { display: grid; grid-template-columns: repeat(12, 1fr); gap:calc(var(--spacing-unit) * 2)
}
/* 移动端默认列宽 */
.col-1 { grid-column: span 1; }
.col-2 { grid-column: span 2; }
.col-3 { grid-column: span 3; }
.col-4 { grid-column: span 4; }
.col-5 { grid-column: span 5; }
.col-6 { grid-column: span 6; }
.col-7 { grid-column: span 7; }
.col-8 { grid-column: span 8; }
.col-9 { grid-column: span 9; }
.col-10 { grid-column: span 10; }
.col-11 { grid-column: span 11; }
.col-12 { grid-column: span 12; }
/* 辅助类 */
.align-items-start { align-items: start; }
.align-items-center { align-items: center; }
.align-items-end { align-items: end; }
.overflow-hidden { overflow: hidden }
.pre { position: relative; }
/* 通用按钮样式 */
.btn { display: inline-block; padding: 1rem 2rem; font-size: 1.4rem; font-weight: 500; text-align: center; color: #fff; background-color: #c90010; border: 1px solid #c90010; border-radius: 4px; cursor: pointer; transition: background-color 0.3s ease, border-color 0.3s ease; user-select: none; text-decoration: none; white-space: nowrap; }
/* 块状按钮，宽度撑满父容器 */
.btn.block { display: block; width: 100%; text-align: center; box-sizing: border-box }
/* 鼠标悬浮效果 */
.btn:hover { background-color: #f00; border-color: #f00; color: #fff }
/* 点击时效果 */
.btn:active { background-color: #3a8ee6; border-color: #3a8ee6 }
.btn.btn-outline { background-color: transparent; color: #c90010 }
.btn.btn-outline:hover { background-color: #c90010; color: #fff }
.btn-right { position: absolute; right: 0; bottom: 0 }
/* 禁用状态 */
.btn:disabled, .btn.disabled { background-color: #c0c4cc; border-color: #c0c4cc; color: #fff; cursor: not-allowed; opacity: 0.8 }
/* 圆角按钮 */
.btn.round { border-radius: 50% }
/* 小按钮 */
.btn.small { padding: 6px 12px; font-size: 12px }
/* 大按钮 */
.btn.large { padding: 14px 28px; font-size: 16px; }
/* 不同颜色按钮 */
.btn.success { background-color: #67c23a; border-color: #67c23a; }
.btn.success:hover { background-color: #85ce61; border-color: #85ce61; }
.btn.danger { background-color: #f56c6c; border-color: #f56c6c; }
.btn.danger:hover { background-color: #f78989; border-color: #f78989; }
.btn.btn-bs { background-color: transparent; border-color: #fff; }
.btn.btn-bs:hover { background-color: #c90010; color: #fff; border-color: #c90010; }
/* 网站公共部分 */
.toptar{ background:#303030; color:#fff; line-height:30px; height:30px; width:100%; font-size:14px; position: fixed; top: 0; left: 0; z-index:999;  }
.header {position: fixed; left: 0;top: 30px;width: 100%; z-index: 1000; height: var(--header-height-mobile);  background: var(--color-primary);  }
.header.is-scrolled {box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);   top: 0; }
.header-container { display: flex; justify-content: space-between; align-items: center; height: 100%; padding: 1rem 0.8rem; }
.logo { flex-shrink: 0; }
.logo img { height: 30px; display: block; transition: height 0.4s ease; }
.hamburger-menu { display: flex; flex-direction: column; justify-content: space-around; width: 30px; height: 24px; background: transparent; border: none; cursor: pointer; z-index: 1001; }
.hamburger-menu .line { display: block; width: 100%; height: 3px; background-color: var(--color-background); border-radius: 2px; transition: transform 0.3s ease, opacity 0.3s ease; }
.hamburger-menu.is-active .line:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.hamburger-menu.is-active .line:nth-child(2) { opacity: 0; }
.hamburger-menu.is-active .line:nth-child(3) { transform: translateY(-10.5px) rotate(-45deg); }
/* --- 导航菜单 (移动端) --- */
.main-nav { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(126, 26, 26, 0.88); flex-direction: column; justify-content: center; align-items: center; opacity: 0; transition: opacity 0.3s ease; }
.main-nav.is-open { display: flex; opacity: 1; }
.main-nav ul { list-style: none; text-align: center; }
.main-nav li { margin: 2rem 0; }
.main-nav a { color: var(--color-background); font-size: 1.8rem; font-weight: 500; }
/* 全屏焦点图 */
.i_box1 { background: #fff; }
.top-banner-slider { width: 100%;  height:100vh ;  position: relative; overflow: hidden; }
.top-banner-slider .swiper-slide { display: flex; justify-content: center; align-items: center; text-align: center; color: #fff; background-size: cover; background-position: center center; background-repeat: no-repeat; }
/* --- 幻灯片内容样式 --- */
.top-banner-slider .slide-content { padding: 20px; text-shadow: 0 1px 4px rgba(0,0,0,0.3); }
.top-banner-slider .slide-content h4 { font-size: 14px; font-weight: 300; letter-spacing: 2px; margin-bottom: 15px; opacity: 0.9; }
.top-banner-slider .slide-content h1 { font-size: 40px; font-weight: bold; margin: 0 0 25px 0; line-height: 1.2; }
.top-banner-slider .slide-content p { font-size: 18px; font-weight: 300; max-width: 600px; margin: 0 auto; opacity: 0.9; }
.animated-content { opacity: 0; transform: translateY(50px); transition: opacity 0.6s ease-out, transform 0.6s ease-out; transition-delay: 0.4s; }
.swiper-slide-active .animated-content { opacity: 1; transform: translateY(0); }
.top-banner-button-prev, .top-banner-button-next { width: 50px; height: 50px; background-color: rgba(0, 0, 0, 0.3); border-radius: 50%; color: #fff; opacity: 0; transition: opacity 0.3s ease, transform 0.3s ease; }
.top-banner-button-prev::after, .top-banner-button-next::after { font-size: 20px !important; font-weight: bold; }
.top-banner-slider:hover .top-banner-button-prev, .top-banner-slider:hover .top-banner-button-next { opacity: 0.8; }
.top-banner-button-prev { left: 35px; }
.top-banner-button-next { right: 35px; }
.top-banner-pagination { bottom: 70px !important; }
.top-banner-pagination .swiper-pagination-bullet { width: 60px; height: 5px; border-radius: 2px; background-color: rgba(255, 255, 255, 0.5); opacity: 1; transition: all 0.3s ease; margin: 0 4px !important; }
.top-banner-pagination .swiper-pagination-bullet-active { background-color: #fff; }
/* 向下滚动箭头样式 */
.scroll-down { position: absolute; left: 50%; transform: translateX(-50%); bottom: 30px; z-index: 9; cursor: pointer }
.scroll-down img { display: block; animation: bounce 2s linear 0s infinite }
@keyframes bounce { 0% {
transform:translate(0, 0);
opacity:0
}
20% {
transform:translate(0, 3px);
opacity:1
}
80% {
transform:translate(0, 10px);
opacity:1
}
90% {
transform:translate(0, 10px);
opacity:0
}
100% {
transform:translate(-50%, 10px);
opacity:0
}
}
/* 第二屏关于我们 */
.i_box2 { background: #f9f9f9; padding: 3rem 0; }
.itit { position: relative; }
.htit { font-size: 1.6rem; color: var(--color-secondary); text-transform: uppercase; }
.ptit { font-size: 2.6rem; font-weight: bold; color: #c90010; line-height: 1.3; }
.ishow { padding: 1.5rem 0; font-size: 1.4rem; line-height: 1.8; }
.i_box2btn { padding-top: 0; }
.stats-container { display: grid; grid-template-columns: 1fr 1fr; width: 100%; overflow: hidden; }
.stat-item { padding: 2rem 1rem; text-align: center; position: relative; }
.stat-item:nth-child(1) { border-right: 1px solid #e9ecef; border-bottom: 1px solid #e9ecef; }
.stat-item:nth-child(2) { border-bottom: 1px solid #e9ecef; }
.stat-item:nth-child(3) { border-right: 1px solid #e9ecef; }
.stat-title { font-size: 1.8rem; font-weight: 600; color: #c90010; margin: 0 0 8px 0; }
.stat-description { font-size: 1.4rem; color: #6c757d; margin: 0; min-height: 2em; }
.stat-number { font-size: 3.6rem; font-weight: 500; color: #c90010; line-height: 1.1; }
/* 专业领域 */
.i_box3 { background: #f8ffff; padding: 3rem 0; background: url(../image/a9.jpg) no-repeat center center / cover; visibility: visible; }
.swiperzy { padding-top: 1rem; }
.flex-tit { display: flex; flex-wrap: wrap; }
.i_box2rp { font-size: 1.4rem; color: #666; line-height: 1.8; }
.services-grid { padding-top: 2rem }
.services-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, 1fr) }
.service-card { background-color: #fff; padding: 1.5rem 1rem; border-radius: 0.5rem; box-shadow: var(--shadow-sm); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; cursor: pointer; transition: transform 0.3s ease, box-shadow 0.3s ease }
.service-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-md) }
.service-card .card-icon { font-size: 4rem; color: var(--color-red-dark); line-height: 1.3; }
.service-card p { margin: 0; padding: 0; font-size: 1.4rem; color: var(--color-gray-text); font-weight: 500 }
.swiper-controls { display: flex; justify-content: space-between; align-items: center; padding-top: 2rem; }
.fl-pagination { position: static; width: auto; text-align: left; }
.fl-pagination .swiper-pagination-bullet { width: 50px; height: 5px; background-color: var(--color-gray-border); border-radius: 0; opacity: 1 }
.fl-pagination .swiper-pagination-bullet-active { background-color: var(--color-red-dark) }
/* 新闻动态 */
.i_box5 { background-color: var(--color-background-alt); padding: 3rem 0; }
.featured-article { display: block; border-radius: 8px; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.05); transition: box-shadow 0.3s ease, transform 0.3s ease; }
.featured-article:hover { transform: translateY(-5px); box-shadow: 0 15px 35px rgba(0,0,0,0.1); }
.featured-image { width: 100%; aspect-ratio: 16 / 9; overflow: hidden; }
.featured-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.featured-article:hover .featured-image img { transform: scale(1.05); }
.featured-content { padding: 1.5rem; }
.featured-meta { font-size: 1.4rem; color: var(--color-text-qh); margin-bottom: 1rem; }
.featured-meta .category { color: var(--color-secondary); font-weight: 400; }
.featured-title { font-size: 1.8rem; font-weight: 600; line-height: 1.3; color: var(--color-red-dark); margin-bottom: 1.5rem; }
.featured-excerpt { font-size: 1.4rem; color: var(--color-text-light); }
/* --- 常规新闻列表 --- */
.regular-articles { display: flex; flex-direction: column; gap: 2.5rem; }
.regular-article-item { display: flex; gap: 2rem; }
.regular-article-item:hover .regular-title { color: var(--color-secondary); }
.regular-image { flex-shrink: 0; width: 110px; height: 80px; border-radius: 4px; overflow: hidden; }
.regular-image img { width: 100%; height: 100%; object-fit: cover; }
.regular-content { display: flex; flex-direction: column; justify-content: center; }
.regular-meta { font-size: 1.3rem; color: var(--color-text-light); margin-bottom: 0.5rem; }
.regular-title { font-size: 1.6rem; font-weight: 400; line-height: 1.4; color: var(--color-text); transition: color 0.3s; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* 首页资质 */
.i_box6 { background: #fff; padding: 4rem 0; background: url(../image/a10.jpg) no-repeat center center / cover; visibility: visible; }
.ptwz { padding-top: 2rem; }
.articles-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; padding-top: 2rem; }
.article-card { background-color: #fff; border-radius: 8px; box-shadow: 0 4px 25px rgba(0, 0, 0, 0.05); overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease; /* 设置为 flex 容器，使其子元素(<a>)可以撑满 */
display: flex; }
.article-card:hover { transform: translateY(-8px); box-shadow: 0 15px 35px rgba(45, 55, 68, 0.1); }
.article-card:hover .card-image-large img { transform: scale(1.05); }

.card-link-wrapper { text-decoration: none; /* 移除a标签默认下划线 */ color: inherit; /* 继承父元素的文字颜色，防止标题等变蓝 */ display: flex; flex-direction: column; flex-grow: 1; /* 关键：让 a 标签撑满整个 article */ }
/* 卡片图片区域 */
.card-image-large { width: 100%; aspect-ratio: 16 / 10; overflow: hidden; }
.card-image-large img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }


/* 卡片图片区域1 */
.card-image-large1 { width: 100%; aspect-ratio: 1 / 1; overflow: hidden; }
.card-image-large1 img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }

/* 卡片内容容器 */
.card-content-wrapper { padding: 1rem 1.2rem; display: flex; flex-direction: column; flex-grow: 1; }
/* 卡片标题 */
.card-title { font-size: 1.4rem; color: var(--color-text); line-height: 1.4; font-weight: 600; margin: 0 0 0.5rem 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* 卡片摘要 */
.card-summary { font-size: 1.3rem; color: #555; line-height: 1.6; margin: 0 0 1rem 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* "阅读全文" 链接 */
.card-more-link { font-size: 1.4rem; color: var(--color-secondary); font-weight: 600; display: none; align-items: center; gap: 8px; transition: color 0.3s ease, transform 0.3s ease; align-self: flex-start; }
/* 悬停效果通过父级 article:hover 控制，所以这里不需要改 */
.card-link-wrapper:hover .card-more-link { color: var(--color-red-dark); transform: translateX(5px); }
.ian01 { padding-top: 3rem; }
/* 页脚 */
.footer { background-color: #303033; color: #d4d5de; padding: 4rem 0 2rem 0; line-height: 1.8 }
.footer a { color: #d4d5de; text-decoration: none; transition: color 0.3s ease }
.footer a:hover { color: var(--color-background) }
.footer-main { padding-bottom: 2rem }
.footer-col { text-align: center; }
.flogo-title { font-size: 2.2rem; margin: 0 0 5px 0; font-weight: 500; color: #D3C5A6; }
.flogo-subtitle { font-size: 1.4rem; letter-spacing: 1px; margin: 0; opacity: 0.8; color: #D3C5A6; }
.footer-links { display: inline-flex; justify-content: center; gap: 40px; }
.footer-links ul { text-align: left; }
.contact-item { display: inline-flex; align-items: center; gap: 15px; margin-bottom: 15px }
.contact-item div { text-align: left }
.contact-item span { font-size: 14px; color: var(--footer-text-gold) }
.contact-item p { font-size: 20px; font-weight: bold; margin: 0 }
.contact-item .iconfont { font-size: 4rem; }
.contact-info p { margin: 5px 0; font-size: 14px; color: var(--footer-text-white); opacity: 0.9 }
.qr-code-col img { display: inline-block; background-color: white; padding: 3px; border-radius: 4px; max-width: 120px; height: auto }
.qr-code-col p { font-size: 1.3rem; margin-top: 0.5rem; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,0.1); padding-top: 2rem; font-size: 1.3rem }
.copyright-col, .legal-col { text-align: center }
.legal-col a { margin: 0 10px; }
/* 单页 */
.channel-banner { position: relative; height: 260px; color: var(--color-background); display: flex; align-items: center; justify-content: center; text-align: left }
.banner-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.1) }
.banner-content { position: relative; z-index: 2; transform: translateY(20px); text-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); }
.banner-content h3 { font-size: 2.4rem; font-weight: 600; line-height: 1.2; }
.breadcrumb { font-size: 1.6rem; line-height: 1.2; }
.breadcrumb a { color: inherit; text-decoration: none }
.sub-nav { background: #fff; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); }
.sub-nav-list { display: flex; flex-wrap: wrap; justify-content: center; list-style: none; }
.sub-nav-item { flex-grow: 1; flex-shrink: 0; padding: 1.5rem 1rem; text-align: center; text-decoration: none; color: var(--color-text, #333); font-weight: bold; font-size: 1.6rem; position: relative; transition: color 0.3s; }
.sub-nav-item.active, .sub-nav-item:hover { color: var(--color-red-dark, #2c3e50); }
.sub-nav-item::after { content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 0; height: 3px; background-color: var(--color-red-dark, #bfa374); transition: width 0.3s ease-in-out; }
.sub-nav-item.active::after, .sub-nav-item:hover::after { width: 50%; }
.main-article { padding: 2rem 0 }
.article-content { max-width: 1200px; margin: 0 auto; }
.article-content img { display: inline-block; }
.timeline-section { background-color: var(--color-background-alt); padding: 3rem 0 }
.dsj { max-width: 800px; margin: 0 auto; padding: 1rem 0; }
.timeline { position: relative; max-width: 800px; margin: 0 auto }
.timeline::before { content: ''; position: absolute; top: 0; left: 15px; transform: translateX(-50%); width: 3px; height: 100%; background-color: var(--color-border) }
.timeline-item { position: relative; padding-left: 50px; margin-bottom: 50px }
.timeline-item::before { content: ''; position: absolute; left: 15px; top: 5px; transform: translateX(-50%); width: 15px; height: 15px; border-radius: 50%; background-color: #fff; border: 3px solid var(--color-secondary); z-index: 1 }
.timeline-date { font-size: 1.6rem; font-weight: 700; color: var(--color-secondary); margin-bottom: 10px; line-height: 1.3 }
.timeline-content h3 { font-size: 1.8rem; color: var(--color-red-dark); margin: 0 0 10px 0 }
.timeline-content p { font-size: 1.4rem; }
/*分页样式*/
.pagination { padding: 1rem 0; text-align: center; }
.pagination { position: relative; }
.pagination li { list-style-type: none; display: inline; }
.pagination li a { padding: 3px 8px; display: inline-block; margin-right: 3px; background: #eee; color: #333; text-decoration: none; font-size: 1.3rem; margin-top: 3px; }
.pagination li a:hover { color: #fff; background: #f00; }
.pagination li:first-child a { border-radius: 4px 0px 0px 4px; }
.pagination li:last-child a { border-radius: 0px 4px 4px 0px; }
.pagination .current { background: #c90010; color: #fff; }
.pagination .active a { background: #c90010; color: #fff; }
/* 律师队伍 */
.alphabebox { padding: 1rem 0 0 0; }
.alphabet-filter { display: grid; grid-template-columns: repeat(9, 1fr); gap: 0px; background-color: #f2f2f2; margin-bottom: 1rem }
.alphabet-filter a { display: flex; justify-content: center; align-items: center; padding: 0.6rem 0; text-decoration: none; color: var(--color-text); font-weight: 500; font-size: 1.4rem; transition: background-color 0.2s, color 0.2s; text-align: center }
.alphabet-filter a:not(.active):hover { background-color: #e0e0e0 }
.alphabet-filter a.active { background-color: var(--color-primary); color: #fff; cursor: default }
.search-controls { display: flex; flex-direction: column; gap: 10px }
.search-controls input[type="text"], .search-controls select { width: 100%; padding: 12px 15px; font-size: 1.4rem; background-color: #f2f2f2; border: none; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; appearance: none }
.select-wrapper { position: relative; width: 100% }
.select-wrapper::after { content: ''; position: absolute; top: 50%; right: 18px; width: 8px; height: 8px; border: solid var(--color-text); border-width: 0 2px 2px 0; transform: translateY(-50%) rotate(45deg); pointer-events: none }
.search-controls select { padding-right: 35px }
.search-btn { padding: 10px 35px; font-size: 1.6rem; font-weight: 500; color: #fff; background-color: var(--color-primary); border: none; cursor: pointer; transition: background-color 0.2s }
.search-btn:hover { background-color: #003da5 }
.ls-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; padding-top: 1rem }
.ls-card { background-color: #fff; overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease; display: flex }
.ls-card:hover { transform: translateY(-8px); }
.ls-card:hover .ls-card-image img { transform: scale(1.05) }
.card-link-wrapper { text-decoration: none; color: inherit; display: flex; flex-direction: column; flex-grow: 1 }
.ls-card-image { width: 100%; aspect-ratio: 1 / 1.25; overflow: hidden }
.ls-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease }
.ls-content-wrapper { padding: 1rem 0; display: flex; flex-direction: column; flex-grow: 1 }
.ls-title { font-size: 1.6rem; color: var(--color-text); line-height: 1.6; font-weight: 600; margin: 0 0 0.5rem 0; overflow: hidden }
.ls-p { font-size: 1.4rem; color: #888; line-height: 1.2; margin-bottom: 0.8rem }
.ls-box { background-color: #505050; padding-top: 50px; }
.ls-container { width: 100%; max-width: 1480px; margin: 0 auto; background-color: #505050; }
.lsgg { display: flex; align-items: center; gap: 0; align-items: stretch }
.lsgg .col-7 { flex: 0 0 55%; display: flex; flex-direction: column; justify-content: center }
.lsgg .col-5 { flex: 0 0 45%; display: flex; justify-content: flex-end; align-items: flex-end }
.ls-zp { position: static }
.ls-sm {
padding: 5rem .6rem 3rem 1.2rem; color: #fff; }
/*.ls-zp img {object-fit: cover;clip-path: inset(2px);}*/
.ls-intilte { font-size: 2.6rem; padding-bottom: .6rem;
}
.ls-intilte span { font-size: 1.4rem; padding-left: 1rem; font-weight: normal; }
.ls-inlist { border-top: 1px solid #777777; padding-top: .8rem;
}
.ls-inlist a { color: #fff; border-bottom: 1px solid #fff; }
.lsinfop { font-size: 1.4rem; padding-top: .5rem;
line-height: 3rem; }
.lsinfop a { white-space: nowrap; }
.lsfg { padding: 0 .8rem;
}
.lsxqli { display: none; }
.ls-infobox { padding: 0; }
.ls-body {
padding:.5rem .5rem 2.5rem .5rem; font-size: 1.6rem; line-height: 1.8; }
.ls-body li, .lyal ul li { position: relative; padding-left: 1rem; padding-bottom: 0; }
.ls-body li::before, .lyal ul li::before { content: ""; position: absolute; left: 0; top: 10px; width: 0.4rem; height: 0.4rem; background: #f00; border-radius: 50%; }
.ls-body p { padding: 0; margin: 0; }
.ls-tit { position: relative; margin-bottom: 1rem }
.ls-tit h3 { color: var(--color-secondary); display: inline-block; position: relative; z-index: 1; margin: 0; padding: 0 1rem 0 0; background: #fff; font-size: 18px; font-weight: bolder }
.ls-tit .slzx { position: absolute; top: 12px; left: 0; display: inline-block; width: 100%; border-top: 1px solid #ccc }
/* 专业领域 */
.lybox { background: #fff; padding: 1.2rem 0; }
.lyleft { padding: 0; }
.lytitle { font-size: 3rem; padding: 1rem 0; }
.ly-body { padding-bottom: .6rem;
}
.ly-body ul { padding-left: 2rem; }
.ly-body li { list-style: inherit; padding-bottom: 1rem; }
.updo { color: #666; border-top: 1px dotted #ccc; padding-top: 1.5rem; font-size: 1.4rem; }
.updo p { margin-bottom: .5rem;
}
.lyright { padding: 0 0 1rem 0; }
.lypt { padding-top: .5rem;
}
.lylvshi { padding: 0 0 3rem 0; }
/* 新闻中心 */
.xwindex { background: #fff; padding: 2rem 0 }
.news-list-container { max-width: 1480px; margin: 0 auto }
.xwindex .flex-tit { display: none }
.news-list { list-style: none }
.news-list li { background-color: #fff; position: relative }
.news-list-container > .news-list { overflow: hidden }
.news-list li:not(:last-child)::after { content: ''; position: absolute; bottom: 0; left: 16px; right: 16px; height: 1px; background-color: #e0e0e0; transform: scaleY(0.5) }
.news-item { display: flex; align-items: center; gap: 1.5rem; padding: 1.6rem; transition: background-color 0.2s ease }
.news-item:hover { background-color: #fafafa }
.news-content { flex: 1; min-width: 0 }
.news-title { font-size: 1.6rem; font-weight: 500; line-height: 1.4; margin: 0 0 8px 0; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; color: #333 }
.news-summary { display: none }
.news-date { font-size: 1.3rem; color: #888 }
.news-thumbnail { flex-shrink: 0; width: 120px; aspect-ratio: 4 / 3; border-radius: 1px; overflow: hidden }
.news-thumbnail img { width: 100%; height: 100%; object-fit: cover }
/* 文章内容样式 */
.container-wz { max-width: 1380px; margin: 0 auto; padding: 0 1rem; }
.wzinbox { background: #fff; border-radius: 2rem 2rem 0 0; margin-top: -3rem; z-index: 9; position: relative; padding: 2rem 0; }
.news_view { background-color: #fff; }
.news_view .tilte { font-size: 2rem; }
.news_view .ftilte { color: #999; font-size: 1.3rem; border-bottom: 1px dotted #ccc; padding-bottom: 10px; }
.news_view .ftilte em { padding: 0 10px; }
.news_view .body { padding: 1rem 0; font-size: 1.5rem; min-height: 400px; }
.news_view .body img { display: inline-block; }
.news_view .body table td { padding: 8px 5px; }
/* 相关律师 */
.lawyer-list { padding: 1rem 0; }
.lawyer-card { display: flex; align-items: flex-start; gap: 2rem }
.lawyer-photo img { width: 120px; height: 149px; object-fit: cover; display: block }
.lawyer-info { flex: 1; display: flex; flex-direction: column; }
.lawyer-info .name { font-size: 2rem; font-weight: normal; margin-bottom: 8px; }
.lawyer-info .title { font-size: 1.4rem; color: #555; margin-bottom: 8px; }
.lawyer-info .name a { color: #555; }
.lawyer-info .field { font-size: 1.3rem; color: #777; padding-right: 3rem; }
.lawyer-info .details-link { font-size: 1.3rem; color: #007bff; align-self: flex-start; }
.separator { border: none; border-top: 1px dotted #ccc; margin: 2rem 0 }
.lsxgwz { padding-top: 2rem; }
.article-tags { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 20px 0; font-size: 14px }
.tags-label { font-weight: bold; color: #555 }
.tag-item { display: inline-block; padding: 4px 15px; background-color: #f2f2f2; color: #333; border-radius: 20px; text-decoration: none; transition: all 0.2s ease; border: 1px solid #e0e0e0 }
.tag-item:hover { background-color: #c90010; color: #fff; border-color: #c90010; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0,0,0,0.1) }
/* 党建 */
.dj-grid { display: grid; grid-template-columns: repeat(1, 1fr); gap: 1rem; padding-top: 0; }
.dj-grid .card-more-link { display: block; }
.dj-grid .card-title { font-size: 1.6rem; }
.ssdejg { padding: 0 1.5rem; font-size: 1.4rem; }
.red { color: red; }
/* 列表 */
.lbtp { height: 320px; background: url(../image/84dc340f97c4d.jpg) no-repeat; }
/* 当前位置 */
.dqwz { height: 32px; line-height: 32px; padding: 0 0 15px 0; color: #999; }
.dqwz a { color: #999; }
.dqwz a:hover { color: #900; }
.dqwz span { padding: 0 8px; }
.mc { padding: 20px 0 40px 0; }
.mleft { float: left; width: 240px; position: relative; }
.mright { float: right; width: 920px; }
.mnav { border: 1px solid #eee; box-shadow: 0 3px 10px 3px #eaeaea; text-transform: capitalize; }
.mnavt { background: #3385cc; padding-bottom: 4px; }
.mnavt h2 { font-size: 24px; line-height: 32px; padding: 25px 15px; color: #fff; border-bottom: 1px solid #fff; text-align: center; font-weight: normal; }
.mnavli { padding: 0 15px 15px 15px; }
.mnavli li { position: relative; line-height: 30px; }
.mnavli li .iconfont { position: absolute; right: 0; top: 50%; transform: translateY(-50%); color: #ccc; }
.mnavli li a { display: block; font-size: 16px; padding: 20px 15px 20px 0; border-bottom: 1px solid #dedede; }
.mnavli li a:hover { display: block; font-size: 16px; border-bottom: 1px solid #3385cc; color: #3385cc; }
.mnavli .ngo a { font-weight: bold; color: #3385cc; border-bottom: 1px solid #3385cc; }
.mnavli .ngo .iconfont { color: #3385cc; }
.mnavli li:hover .iconfont { color: #3385cc; }
.mlianx { background-color: #3385cc; color: #fff; text-align: center; padding: 20px 0; }
.mlianx .iconfont { font-size: 36px; }
.mpdh { font-size: 26px; font-weight: 800; }
/* 单页内容 */
.dybox { padding: 30px; background-color: #fff; box-shadow: 0 3px 10px 3px #eaeaea; }
.dybox .ctilte { font-size: 30px; padding-bottom: 25px; line-height: 40px; text-align: center; border-bottom: 1px dotted #ccc; }
.dybox .cbody { padding: 20px 0; font-size: 16px; line-height: 30px; min-height: 600px; }
.dybox .cbody p { margin-bottom: 15px; }
.dybox .cbody img { width: 100%; }
.dybox .cbody table td { padding: 8px 5px; }
/* 单页内容2 */
.dbody { padding: 20px 0; font-size: 16px; line-height: 36px; min-height: 300px; }
.dbody img { width: 100%; }
/* 瀑布流图 */
.bpttimg { padding: 30px 0; }
.pbimgbox { column-count: 3; column-gap: 30px; }
.pbl2 { column-count: 2; }
.item { break-inside: avoid; margin-bottom: 30px; border: 1px solid #e9e9e9; border-radius: 6px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); overflow: hidden; background-color: #fff; }
.item img { width: 100%; height: auto; display: block; transition: transform 0.3s ease; }
.btimg { overflow: hidden; }
.bth3 { font-size: 15px; line-height: 28px; padding: 10px; text-align: center; transition: background-color 0.3s ease; }
.item:hover img { transform: scale(1.1); }
.list { padding: 25px 0px; }
.list li { height: 40px; line-height: 40px; overflow: hidden; font-size: 16px; padding-left: 8px; background: url() 0 18px no-repeat; text-overflow: ellipsis; white-space: nowrap; }
.mlist { box-shadow: 0 3px 10px 3px #eaeaea; background-color: #fff; padding: 10px 40px; }
.mdh { height: 50px; line-height: 50px; border-bottom: 1px solid #dedede; }
.mdh .name { font-size: 18px; float: left; padding-left: 0; }
.gclibox { height: 150px; border-bottom: 1px solid #e9e9e9; padding: 30px 0; }
.gcliimg { float: left; width: 220px; height: 150px; overflow: hidden; border-radius: 6px; }
.gcliimg img { width: 220px; height: 150px; border-radius: 6px; }
.gcliy { float: right; width: 595px; height: 150px; position: relative; }
.wtxx { height: 110px; }
.wtxx .gcliy { width: 100%; }
.gcliy h3 { font-size: 18px; font-weight: normal; line-height: 30px; }
.ptime { font-size: 12px; color: #999; padding-top: 6px; }
.ptime .iconfont { font-size: 12px; }
.pinfo { font-size: 14px; color: #999; padding-top: 6px; line-height: 24px; }
.xgzx { border-top: 1px dotted #ccc; margin-top: 8px; }
.fbg { height: 200px; text-align: center; color: #fff; padding-top: 68px; }
.fbg h3 { font-size: 46px; font-weight: normal; text-shadow: #666 0px 1px 0px; padding-top: 60px; }
.fbg p { font-size: 22px; line-height: 30px; margin-top: 20px; text-shadow: #666 0px 1px 0px; }
.linklist{ padding:0 0 28px 0;}
.linklist a { display:inline-block; margin-right:14px; color:#333;}
.linklist a:hover { color:#f00;}

/* 中屏/平板 (≥ 768px) */
@media (min-width: 768px) {
.col-md-1 { grid-column: span 1; }
.col-md-2 { grid-column: span 2; }
.col-md-3 { grid-column: span 3; }
.col-md-4 { grid-column: span 4; }
.col-md-5 { grid-column: span 5; }
.col-md-6 { grid-column: span 6; }
.col-md-7 { grid-column: span 7; }
.col-md-8 { grid-column: span 8; }
.col-md-9 { grid-column: span 9; }
.col-md-10 { grid-column: span 10; }
.col-md-11 { grid-column: span 11; }
.col-md-12 { grid-column: span 12; }
.top-banner-slider .slide-content h4 { font-size: 18px; }
.top-banner-slider .slide-content h1 { font-size: 60px; }
.top-banner-slider .slide-content p { font-size: 20px; }
}
@media (max-width: 768px) {
.toptar{ display:none;}
.header {top: 0px;  }
}
/* 大屏/桌面 (≥ 992px) */
@media (min-width: 992px) {
.col-lg-1 { grid-column: span 1; }
.col-lg-2 { grid-column: span 2; }
.col-lg-3 { grid-column: span 3; }
.col-lg-4 { grid-column: span 4; }
.col-lg-5 { grid-column: span 5; }
.col-lg-6 { grid-column: span 6; }
.col-lg-7 { grid-column: span 7; }
.col-lg-8 { grid-column: span 8; }
.col-lg-9 { grid-column: span 9; }
.col-lg-10 { grid-column: span 10; }
.col-lg-11 { grid-column: span 11; }
.col-lg-12 { grid-column: span 12; }
.header { height: 80px; }
.logo img { height: 40px; }
.hamburger-menu { display: none; }
.btn { padding: 1rem 3.5rem; font-size: 1.6rem; font-weight: 400; }
/* 显示水平导航 */
.main-nav { display: block; position: static; width: auto; height: auto; background-color: transparent; opacity: 1 }
.main-nav ul { display: flex; height: 100% }
.main-nav li { margin: 0 }
.main-nav a { display: flex; align-items: center; height: var(--header-height-desktop); padding: 0 2rem; font-size: 1.8rem; font-weight: 400; position: relative }
.main-nav a span { position: relative; padding-bottom: 0.5rem }
.main-nav a span::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background-color: var(--color-background); transition: width 0.3s ease }
.main-nav li.go a span::after, .main-nav li:hover a span::after { width: 100% }
.top-banner-slider .slide-content h4 { font-size: 18px; }
.top-banner-slider .slide-content h1 { font-size: 60px; }
.top-banner-slider .slide-content p { font-size: 20px; }
.i_box2 { background: #f9f9f9; padding: 10rem 0; }
.htit { font-size: 1.8rem; margin-bottom: 1rem; }
.ptit { font-size: 4.2rem; }
.ishow { font-size: 1.6rem; }
.i_box2btn { padding-top: 3rem; }
.stat-item { padding: 5rem 1rem; }
.stat-title { font-size: 2.2rem; }
.stat-description { font-size: 1.6rem; }
.stat-number { font-size: 7rem; }
.ishow { width: 75%; }
.i_box3 { padding: 8rem 0; }
.i_box2rp { font-size: 1.6rem; padding-top: 6rem; padding-left: 5rem; }
.swiperzy { padding-top: 3rem; }
.services-grid { padding-top: 2rem }
.services-grid { gap: 1.5rem; grid-template-columns: repeat(6, 1fr) }
.service-card { padding: 3rem 1rem; }
.service-card .card-icon { font-size: 6rem; }
.service-card p { font-size: 1.8rem; margin-top: 1rem; }
.swiper-controls { margin-top: 4rem; }
.i_box4 { padding: 20rem 0; }
.ptit1 { font-size: 1.6rem; }
.i_box4btn { padding-top: 4rem; }
.i_box5 { padding: 8rem 0; }
.i_box6 { padding: 8rem 0; }
.ptwz { padding-top: 2rem; }
.articles-grid { grid-template-columns: repeat(4, 1fr); gap: 2rem; padding-top: 6rem; }
.card-content-wrapper { padding: 1.5rem; }
.card-title { font-size: 1.8rem; margin-bottom: 1.5rem; }
.card-summary { display: -webkit-box; font-size: 1.4rem; }
.card-more-link { display: flex; font-size: 1.4rem; font-weight: normal; }
.ian01 { padding-top: 6rem; }
.i_box7 { padding: 20rem 0 40rem 0; }
.footer { padding-top: 8rem; }
.footer-col { text-align: left; }
.footer-main { padding-bottom: 8rem }
.footer-links ul li { margin-bottom: 1rem; }
.copyright-col { text-align: left; }
.legal-col { text-align: right; }
/* 单页 */
.channel-banner { height: 560px; }
.banner-content { position: relative; z-index: 2; transform: translateY(20px); text-align: center; }
.banner-content h3 { font-size: 4.6rem; }
.breadcrumb { font-size: 2.6rem; margin-bottom: 2rem; }
.sub-nav-item { flex-grow: 0; padding: 1.5rem 3.5rem; font-size: 1.8rem; }
.main-article { padding: 5rem; }
.article-content { max-width: 1200px; margin: 0 auto; }
.timeline-section { padding: 5rem 0 }
.timeline-date { font-size: 1.8rem; }
.timeline-content h3 { font-size: 2rem; }
.timeline-content p { font-size: 1.6rem; }
.pagination { padding: 2rem 0; }
.pagination ul li a { padding: 5px 10px; margin-right: 5px; font-size: 1.4rem; }
.alphabet-filter { grid-template-columns: repeat(27, 1fr); margin-bottom: 2rem }
.alphabebox { padding: 6rem 0 0 0; }
.alphabet-filter a { padding: 1.2rem 0; font-size: 1.8rem; }
.search-controls input[type="text"], .search-controls select { padding: 16px 15px; font-size: 1.6rem; }
.search-btn { padding: 14px 35px; font-size: 1.8rem; }
.search-controls { flex-direction: row; align-items: center; gap: 20px; }
.search-controls input[type="text"], .search-controls .select-wrapper { flex: 1; }
.search-btn { flex-shrink: 0; }
.ls-grid { grid-template-columns: repeat(4, 1fr); gap: 5rem; padding-top: 6rem; }
.ls-title { font-size: 2rem; line-height: 1.6; margin: 0 0 1rem 0; }
.ls-p { font-size: 1.6rem; color: #888; line-height: 1.2; margin-bottom: 1rem }
/* 律师详情 */
.lsgg .col-7 { flex: 0 0 65%; display: flex; flex-direction: column; justify-content: center; }
.lsgg .col-5 { flex: 0 0 35%; display: flex; justify-content: flex-end; align-items: flex-end; }
.ls-zp { padding-top: 5rem; }
.ls-intilte { font-size: 4.4rem; padding-bottom: 1.5rem; }
.ls-intilte span { font-size: 1.6rem; padding-left: 1.5rem; }
.ls-inlist { border-top: 1px solid #777777; padding-top: 1.5rem; margin-right: 5rem; }
.ls-inlist a { color: #fff; border-bottom: 1px solid #fff; }
.lsinfop { font-size: 1.6rem; padding-top: 1rem; }
.ls-infobox { padding: 1.5rem 0 2rem; }
.ls-body { padding:1rem .5rem;
}
.ls-body li { position: relative; padding-left: 1rem; padding-bottom: 1rem; }
.ls-body li::before { content: ""; position: absolute; left: 0; top: 10px; width: 0.4rem; height: 0.4rem; background:#f00; border-radius: 50%; }
.ls-tit { position: relative; margin-bottom: 1rem }
.ls-tit h3 { color: var(--color-secondary); padding: 0 1.5rem 0 0; background: #fff; font-size: 2.6rem; font-weight: normal }
.ls-tit .slzx { top: 18px; }
.ls-body { font-size: 1.6rem; }
.ls-lby { padding-top: 5rem; }
.lsxqli { display: block; width: 220px; padding-top: 1.8rem; font-size: 1.8rem }
.lsxqli.fixed { position: fixed; top: 100px }
.lsxqli-item { display: block; margin-bottom: 3rem; padding-left: 2.5rem; color: #555; position: relative; transition: color 0.3s }
.lsxqli-item.active::before { content: ''; position: absolute; left: 0; top: 0; width: 4px; height: 100%; background-color: var(--color-secondary); border-radius: 2px }
.lsxqli-item.active { color: var(--color-secondary) }
.lsxqli-item:hover { color: var(--color-secondary) }
/* 专业领域 */
.lyp2 { padding-top: 2.5rem; }
.lydx { padding-top: 5rem; }
.lybox { background: #fff; padding: 5rem 0; }
.lyleft { padding-right: 10rem; }
.lytitle { font-size: 4.6rem; padding: 0 0 2rem 0; }
.ly-body { padding-bottom: 1.5rem; }
.ly-body ul { padding-left: 2rem; }
.ly-body li { list-style: inherit; padding-bottom: 1rem; }
.updo { padding-top: 2.5rem; }
.lyright { padding: 1.5rem 0 1rem 0; }
.lyal ul { padding: 2rem 0; }
.lypt { padding-top: .5rem;
}
.lylvshi { padding: 1rem 0 3rem 0; }
.lylvshi .ls-grid { padding-top: 2rem; grid-template-columns: repeat(6, 1fr); gap: 4rem; }
.xwindex { background: #f8ffff; padding: 5rem 0; background: url(../image/a9.jpg) no-repeat center center / cover; visibility: visible; }
.news-list-container { padding: 0 20px; }
.xwindex .flex-tit { display: block; }
.fenyebs ul li a { background: #fff; }
.news-list-container > .news-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; background-color: transparent; box-shadow: none; border-radius: 0; padding: 3rem 0; }
/* 2. 每个列表项都是一个独立的卡片 */
.news-list li { background-color: #fff; border-radius: 6px; box-shadow: 0 4px 12px rgba(0,0,0,0.06); margin-bottom: 0; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.news-list li:hover { transform: translateY(-4px); box-shadow: 0 8px 16px rgba(0,0,0,0.08); }
.news-item { gap: 20px; }
.news-title { font-size: 18px; }
/* 4. PC端显示简介 */
.news-summary { overflow: hidden; display: -webkit-box; font-size: 14px; color: #666; line-height: 1.6; margin: 8px 0 12px 0; -webkit-line-clamp: 2; /* 最多显示3行 */ -webkit-box-orient: vertical; }
.news-date { font-size: 14px; }
.news-thumbnail { width: 200px; border-radius: 2px; }
.wzinbox { padding: 5rem 0; }
.news_view { padding-right: 80px; }
.news_view .tilte { font-size: 3rem; text-align: center; }
.news_view .ftilte { color: #999; font-size: 1.4rem; border-bottom: 1px dotted #ccc; padding-bottom: 10px; text-align: center; }
.news_view .ftilte em { padding: 0 10px; }
.news_view .body { padding: 2.5rem 2rem; font-size: 1.6rem; min-height: 400px; }
.news_view .body img { max-width: 80%; }
.news_view .body table td { padding: 8px 5px; }
.dj-grid { grid-template-columns: repeat(3, 1fr); gap: 4rem; padding-top: 3rem; }
.dj-grid .card-title { font-size: 1.8rem; }
}
#totop { position: fixed; bottom: 20px; right: 10px; z-index: 999; width: 50px; cursor: pointer; display: none; }
*html #totop { position: absolute; cursor: pointer; right: 10px; display: none; top:expression(eval(document.documentElement.scrollTop+document.documentElement.clientHeight)-100+"px")
}
#totop a { display: block; width: 50px; height: 50px; padding-top: 0px; background: url() no-repeat; text-align: center; color: #888 }
#totop a.cur { background-position: -50px 0; text-decoration: none; color: #3a9 }

