@charset "utf-8";
/* CSS BY www.softmoon.com.cn 2026-08-23*/

/* ========基础变量========== */
:root {
    --primary: #0A2B5E;
    --secondary: #1E4D8C;
    --soft-blue: #E8F0FE;
    --accent: #b69b64;

    --text-main: #182638;
    --text-secondary: #5c6878;
    --text-light: #8b96a5;
    --white: #ffffff;
    --line: #dfe5ed;
    --page-bg: #f7f9fc;

    --container: 1320px;
    --header-height: 116px;
    --shadow: 0 18px 60px rgba(10, 43, 94, 0.10);
    --transition: 0.3s ease;
}

/* ==========全局样式=========== */
* {box-sizing:border-box;margin:0;padding:0;}
html {scroll-behavior:smooth;}
body {color:var(--text-main);background:var(--white);font-family:"Microsoft YaHei","Microsoft YaHei UI","PingFang SC","Hiragino Sans GB",Arial,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased;}
body.menu-open {overflow:hidden;}
img {width:100%;max-width:100%;}
a {color:inherit;text-decoration:none;}
button,input,textarea {font:inherit;}
button {border:0;cursor:pointer;}
ul,ol {list-style:none;}
section {scroll-margin-top:var(--header-height);}

.container {width:min(calc(100% - 48px),var(--container));margin:0 auto;}
.section {padding:112px 0;}
.section-soft {background:var(--page-bg);}    

.section-blue {color:var(--white);background:var(--primary);}

/* 英文小标题 */
.eyebrow { display:flex; align-items:center; gap:7px; margin-bottom:4px; color:var(--accent); font-size:13px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase;}
.eyebrow::before {width:32px;height:2px;background:var(--accent);content:"";}

.section-blue .eyebrow {color:rgba(255,255,255,0.68);}
.section-title { color:var(--primary); font-size:clamp(32px,3.2vw,48px); font-weight:600; line-height:1.3;}
.section-blue .section-title {color:var(--white);}
.section-description { max-width:670px; margin-top:20px; color:var(--text-secondary); font-size:16px; line-height:1.8; letter-spacing: 1px;}
.section-blue .section-description { color:rgba(255,255,255,0.68);}
.section-header {display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:54px;}
.section-header-main {max-width:780px;}

@media screen and (max-width: 768px) {
    .section-description { font-size: 14px;}
}

.button {
    display: inline-flex;align-items: center;justify-content: center;
    gap: 14px;
    padding: 10px 22px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.03em;
    transition:
    color var(--transition),
    border-color var(--transition),
    background var(--transition),
    transform var(--transition);
}
.button:hover {transform:translateY(-2px);}
.button-primary {color:var(--white);background:var(--accent);}
.button-primary:hover {background:#a58950;}
.button-outline {color:var(--primary);border-color:rgba(10,43,94,0.24);background:transparent;}
.button-outline:hover {color:var(--white);border-color:var(--primary);background:var(--primary);}
.button-light {color:var(--white);border-color:rgba(255,255,255,0.35);}
.button-light:hover {color:var(--primary);border-color:var(--white);background:var(--white);}

.text-link {display:inline-flex;align-items:center;gap:10px;color:var(--secondary);font-size:14px;font-weight:600;}
.text-link .arrow {transition:transform var(--transition);}
.text-link:hover {color:var(--accent);}
.text-link:hover .arrow {transform:translateX(5px);}

/* =========顶部导航======= */
.site-header {
    position: fixed;
    width: 100%;
    z-index: 1000;
    top: 0;
    height: var(--header-height);
    border-bottom: 1px solid rgba(255,255,255,0.14);
    background: transparent;
    transition: background var(--transition), border-color var(--transition), box-shadow var(--transition);
}
.site-header.scrolled {
    border-bottom: 1px solid rgba(10,43,94,0.08);
    background: rgba(255,255,255,0.9);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: 0 8px 30px rgba(10,43,94,0.06);
}

.header-inner { display:flex; height:100%;align-items:center;justify-content:space-between;gap:36px;}
.brand { display:flex; flex-shrink:0;align-items:center;gap:13px;}
.brand img { width:296px; max-width:100%; height:auto;}

.brand-white {display: block;}
.brand-red {display: none;}
.site-header.scrolled .brand-white {display: none;}
.site-header.scrolled .brand-red {display: block;}

.desktop-nav {height:100%;}
.desktop-nav ul {display:flex;height:100%;align-items:center;gap:24px;}
.desktop-nav li {position:relative;height:100%;display:flex;align-items:center;}
.desktop-nav li > a {position:relative;display:flex;height:100%;align-items:center;color:rgba(255,255,255,0.92);font-size:16px;font-weight:600;white-space:nowrap;transition:color var(--transition);}
.desktop-nav li > a::after {position:absolute;right:0;bottom:0;left:0;height:3px;background:var(--accent);content:"";transform:scaleX(0);transform-origin:center;transition:transform var(--transition);}
.desktop-nav li > a:hover,
.desktop-nav li > a.active {color:var(--white);}
.desktop-nav li > a:hover::after,
.desktop-nav li > a.active::after {transform:scaleX(1);}

.site-header.scrolled .desktop-nav li > a {color:#334259;}
.site-header.scrolled .desktop-nav li > a:hover,
.site-header.scrolled .desktop-nav li > a.active {color:var(--primary);}

/* 二级下拉菜单 */
.nav-dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    min-width: 220px;
    padding: 10px 0;
    border-radius: 6px;
    background: var(--white);
    box-shadow: 0 24px 55px rgba(10,43,94,0.16);
    opacity: 0;
    visibility: hidden;
    transform: translateX(-50%) translateY(12px);
    transition: opacity 0.28s ease, transform 0.28s ease, visibility 0.28s ease;
}
.nav-dropdown::before {position:absolute;top:0;right:0;left:0;height:3px;border-radius:6px 6px 0 0;background:var(--accent);content:"";}
.has-dropdown:hover .nav-dropdown,
.has-dropdown:focus-within .nav-dropdown {opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}

.nav-dropdown ul {display:block;}
.nav-dropdown li {display:block;height:auto;}
.nav-dropdown li a {position:relative;display:block;padding:11px 28px;color:#334259;font-size:15px;font-weight:400;white-space:nowrap;transition:color 0.25s ease,background 0.25s ease,padding-left 0.25s ease;}
.nav-dropdown li a::before {position:absolute;left:0;top:50%;width:3px;height:0;background:var(--accent);content:"";transform:translateY(-50%);transition:height 0.25s ease;}
.nav-dropdown li a:hover {color:var(--secondary);background:#f4f8fd;padding-left:34px;}
.nav-dropdown li a:hover::before {height:22px;}

/* 2列下拉 */
.nav-dropdown--cols {min-width:470px;}
.nav-dropdown--cols ul { display:grid; grid-template-columns:1fr 1fr; gap: 10px;}
.nav-dropdown--cols li a { white-space:normal;}

/* 汉堡按钮 */
.menu-toggle {display:none;width:44px;height:44px;background:transparent;}
.menu-toggle span {display:block;width:24px;height:2px;margin:6px auto;background:var(--white);transition:var(--transition);}
.site-header.scrolled .menu-toggle span {background:var(--primary);}
.menu-toggle.active span:nth-child(1) {transform:translateY(8px) rotate(45deg);}
.menu-toggle.active span:nth-child(2) {opacity:0;}
.menu-toggle.active span:nth-child(3) {transform:translateY(-8px) rotate(-45deg);}

/* 移动端导航面板 */
.mobile-nav {position:fixed;z-index:999;top:var(--header-height);right:0;left:0;display:none;max-height:calc(100vh - var(--header-height));overflow:auto;padding:10px 24px 34px;border-top:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);}
.mobile-nav.open {display:block;}
.mobile-nav > a {display:block;padding:16px 4px;border-bottom:1px solid var(--line);color:var(--primary);font-size:16px;font-weight:600;}
.mobile-nav > a.active {color:var(--accent);}

/* 移动端二级菜单（手风琴） */
.mobile-acc {border-bottom:1px solid var(--line);}
.mobile-acc-head {display:flex;width:100%;align-items:center;justify-content:space-between;padding:16px 4px;background:transparent;color:var(--primary);font-size:16px;font-weight:600;text-align:left;}
.mobile-acc-icon {position:relative;display:block;width:16px;height:16px;}
.mobile-acc-icon::before,
.mobile-acc-icon::after {position:absolute;left:50%;top:50%;background:var(--accent);content:"";transform:translate(-50%,-50%);transition:transform 0.25s ease;}
.mobile-acc-icon::before {width:16px;height:2px;}
.mobile-acc-icon::after {width:2px;height:16px;}
.mobile-acc.open .mobile-acc-icon::after {transform:translate(-50%,-50%) rotate(90deg);}
.mobile-acc-body {max-height:0;overflow:hidden;transition:max-height 0.32s ease;}
.mobile-acc.open .mobile-acc-body {max-height:640px;}
.mobile-acc-body a {display:block;padding:12px 4px 12px 20px;color:var(--text-secondary);font-size:15px;border-top:1px solid var(--page-bg);}
.mobile-acc-body a:hover {color:var(--accent);}

/* 移动端菜单展开时固定导航为白底 */
body.menu-open .site-header {background:var(--white);border-bottom-color:rgba(10,43,94,0.08);}
body.menu-open .site-header .brand-white {display:none;}
body.menu-open .site-header .brand-red {display:block;}
body.menu-open .menu-toggle span {background:var(--primary);}

    
/* ===========首屏轮播============ */
.hero { position:relative; height:min(790px,calc(100vh - var(--header-height))); min-height:790px; overflow:hidden;background:var(--primary);}
.hero .swiper-horizontal { height: 100%;}
.hero-swiper {position:absolute;inset:0;}
.hero-slide {position:relative;overflow:hidden;}
.hero-slide-bg {position:absolute;inset:0;overflow:hidden;transform:scale(1.03);transition:transform 7s linear;}
.hero-slide-bg img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-bg-pc {display:block;}
.hero-bg-mobile {display:none;}
.swiper-slide-active .hero-slide-bg {transform:scale(1.1);}
/* 
大图颜色叠加
.hero-slide::before {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
    linear-gradient(
        90deg,
        rgba(5, 25, 54, 0.95) 0%,
        rgba(5, 29, 63, 0.78) 42%,
        rgba(5, 29, 63, 0.28) 75%,
          rgba(5, 29, 63, 0.2) 100%
    );
    content: "";
} 
.hero-slide::after {position:absolute;z-index:1;right:0;bottom:0;left:0;height:45%;background:linear-gradient(to top,rgba(4,22,48,0.62),transparent);content:"";}
*/

.hero-content {position:relative;z-index:2;display:flex;height:100%;align-items:center;}
.hero-copy {max-width:820px;color:var(--white);}

.hero h1 { max-width:800px; font-size:clamp(44px,5.5vw,60px); font-weight:500; line-height:1.22; letter-spacing:-0.05em;}
.hero h1 span {color:#d7c49c;}
.hero-description { max-width:620px;margin-top:28px;color:rgba(255,255,255,0.76);font-size:18px;line-height:2;}
.hero-buttons {display:flex;flex-wrap:wrap;gap:14px;margin-top:38px;}
.hero-swiper .swiper-pagination { position:absolute; right:0; bottom:40px !important; left:0; z-index:4; display:flex; align-items:center; justify-content:center; gap:8px;}
.hero-swiper .swiper-pagination-bullet { width:42px; height:4px; margin:0; border-radius:0; background:rgba(255,255,255,0.4); opacity:1; transition:background var(--transition);}
.hero-swiper .swiper-pagination-bullet-active {background:var(--accent);}

 /* =========首页关于我们========== */
.index_about-layout {display:grid;grid-template-columns:0.8fr 1.2fr;gap:90px;align-items:start;}
.index_about-title-wrap {position:sticky;top:140px;}

.index_about_icon { margin-top:30px;}
.index_about_icon img { width:35px; height:auto;}

.index_about-content > p { margin-bottom:20px; color:var(--text-secondary); font-size:16px; line-height:2; text-align: justify;}
.index_about-content > p:first-child { color:var(--text-main); font-size:18px; line-height:1.9;}
.index_about-content > p:first-child strong {color: var(--secondary);}

.index_about-data { display:grid; grid-template-columns:repeat(4,1fr); margin-top:70px; border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.index_data-item { padding:30px 24px; border-right:1px solid var(--line);}
.index_data-item:first-child { padding-left:0;}
.index_data-item:last-child { border-right:0;}
.index_data-number { color:var(--primary); font-family:Arial,sans-serif; font-size:38px; font-weight:600; line-height:1.2;}
.index_data-number sup { margin-left:5px; color:var(--accent); font-family:"Microsoft YaHei", sans-serif; font-size:15px;}
.index_data-label { margin-top:10px; color:var(--text-secondary); font-size:14px;}

.index_about-link {margin-top:34px;}

@media screen and (max-width: 768px) {
    .index_about-content > p:first-child { font-size: 16px; line-height:1.6;}
    .index_about-content > p { font-size: 15px;}
}
    

/* ==========首页业务领域=========== */
#services { background:url(../images/index_service_bg.jpg) no-repeat center center / cover var(--page-bg); }
.index_practice-grid {display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--white);}
.index_practice-card {position:relative;min-height:280px;overflow:hidden;padding:36px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:color var(--transition),background var(--transition),transform var(--transition);}
.index_practice-card::before {position:absolute;top:0;right:0;left:0;height:3px;background:var(--accent);content:"";transform:scaleX(0);transform-origin:left;transition:transform var(--transition);}
.index_practice-card::after {position:absolute;right:-40px;bottom:-56px;width:229px;height:223px;background:url(../images/icon_service_logo.png) no-repeat center center / 100% 100%;content:""; opacity:0.9;pointer-events:none; z-index: -1; transition:opacity var(--transition);}
.index_practice-card:hover {z-index:2;color:var(--white);background:var(--primary);transform:translateY(-5px);box-shadow:var(--shadow);}
.index_practice-card:hover::before {transform:scaleX(1);}
.index_practice-card:hover::after { opacity:0.25;}
.index_practice-number {color:var(--accent);font-family:Arial,sans-serif;font-size:13px;letter-spacing:0.12em;}
.index_practice-card h3 {margin-top:38px;color:var(--primary);font-size:21px;font-weight:600;transition:color var(--transition);}
.index_practice-card:hover h3 {color:var(--white);}
.index_practice-card p {margin-top:16px;color:var(--text-secondary);font-size:14px;line-height:1.9;transition:color var(--transition); -webkit-box-orient: vertical; -webkit-line-clamp: 2; display: -webkit-box; overflow: hidden;}
.index_practice-card:hover p {color:rgba(255,255,255,0.66);}
.index_practice-more {position:absolute;right:30px;bottom:28px;display:grid;width:35px;height:35px;place-items:center;color:var(--secondary);border:1px solid rgba(30,77,140,0.25);font-size:19px;transition:var(--transition);}
.index_practice-card:hover .index_practice-more {color:var(--white);border-color:rgba(255,255,255,0.35);}
    

/* ===========首页经典案例=========== */
#cases { background:url(../images/index_cases_bg.jpg) no-repeat center center / cover var(--primary); }
.index_cases {position:relative;overflow:hidden;}
.index_case-layout {position:relative;z-index:2;display:grid;grid-template-columns:1.08fr 0.92fr;gap:28px;}
.index_case-featured {display:flex;min-height:530px;flex-direction:column;justify-content:space-between;padding:50px;border:1px solid rgba(255,255,255,0.12);background:linear-gradient(135deg,rgba(255,255,255,0.08),rgba(255,255,255,0.025));}
.index_case-label {display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--accent);font-size:13px;letter-spacing:0.12em;}
.index_case-featured h3 {max-width:650px;margin-top:70px;color:var(--white);font-size:clamp(27px,3vw,40px);font-weight:500;line-height:1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; display: -webkit-box; overflow: hidden;}
.index_case-featured p {max-width:650px;margin-top:24px;color:rgba(255,255,255,0.66);line-height:2; -webkit-box-orient: vertical; -webkit-line-clamp: 2; display: -webkit-box; overflow: hidden;}

.index_case-featured .text-link {margin-top:40px;color:var(--white);}
.index_case-list {display:grid;gap:18px;}
.index_case-item {display:grid;grid-template-columns:75px 1fr 36px;gap:25px;align-items:start;min-height:164px;padding:30px;border:1px solid rgba(255,255,255,0.12);background:rgba(255,255,255,0.04);transition:background var(--transition),border-color var(--transition),transform var(--transition);}
.index_case-item:hover {border-color:rgba(182,155,100,0.55);background:rgba(255,255,255,0.08);transform:translateX(-5px);}
.index_case-item-number {color:var(--accent);font-family:Arial,sans-serif;font-size:25px;line-height:1;}
.index_case-item-category {color:rgba(255,255,255,0.48);font-size:12px;}
.index_case-item h4 {margin-top:9px;color:var(--white);font-size:18px;font-weight:500;line-height:1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 2; display: -webkit-box; overflow: hidden;}
.index_case-item-arrow {display:grid;width:36px;height:36px;place-items:center;color:rgba(255,255,255,0.55);border:1px solid rgba(255,255,255,0.16);transition:var(--transition);}
.index_case-item:hover .index_case-item-arrow {color:var(--primary);border-color:var(--accent);background:var(--accent);}
    
/* =========首页专业团队========== */
.index_team-swiper .swiper-slide {height:auto;}
.index_lawyer-card {display:block;height:100%;border-radius:6px;overflow:hidden;background:var(--white);}
.index_lawyer-photo {position:relative;aspect-ratio:300/455;overflow:hidden;background:var(--soft-blue);}
.index_lawyer-photo::after { position:absolute; inset:0; background:linear-gradient(to top,rgba(30,77,140,0.98), transparent 70%); content:"";}
.index_lawyer-photo img {width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(0.82);transition:transform 0.6s ease,filter 0.6s ease;}
.index_lawyer-card:hover .index_lawyer-photo img {filter:saturate(1);transform:scale(1.06);}
.index_lawyer-info {position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 26px 22px;}
.index_lawyer-name {color:var(--white);font-size:21px;font-weight:600;}
.index_lawyer-position { margin-left:10px; color:rgba(255,255,255,0.85); font-size:14px; font-weight:500;}
.index_lawyer-position i { margin-right:10px;}
.index_lawyer-field { color:rgba(255,255,255,0.75); font-size:15px; line-height:1.75; -webkit-box-orient: vertical; -webkit-line-clamp: 1; display: -webkit-box; overflow: hidden;}
.index_team-controls {display:flex;align-items:center;justify-content:center;margin-top:42px;}
.index_team-pagination { display:flex; align-items:center; gap:8px; justify-content:center;}
.index_team-pagination .swiper-pagination-bullet {width:42px;height:4px;margin:0;border-radius:0;background:rgba(10,43,94,0.18);opacity:1;transition:background var(--transition);}
.index_team-pagination .swiper-pagination-bullet-active {background:var(--accent);}
    

/* ==========首页新闻资讯============ */
.index_news-layout {display:grid;grid-template-columns:1.05fr 0.95fr;gap:45px;align-items:stretch;}
.index_news-feature {display:flex;height:100%;flex-direction:column;background:var(--white);box-shadow:0 15px 45px rgba(10,43,94,0.08);transition:transform var(--transition);}
.index_news-feature:hover {transform:translateY(-5px);}
.index_news-feature-image {position:relative;height:350px;overflow:hidden;}
.index_news-feature-image::after {position:absolute;inset:0;background:linear-gradient(to top,rgba(10,43,94,0.5),transparent 55%);content:"";}
.index_news-feature-image img {height:100%;object-fit:cover;transition:transform 0.7s ease;}
.index_news-feature:hover img {transform:scale(1.04);}

.index_news-feature-content {flex:1;padding:34px 38px 38px;}
.index_news-time { color:var(--accent); font-family:Arial,sans-serif; font-size:13px; letter-spacing:0.05em;}
.index_news-feature h3 {margin-top:13px;color:var(--primary);font-size:25px;font-weight:600;line-height:1.6;}
.index_news-feature p { display:-webkit-box; margin-top:15px; color:var(--text-secondary); font-size:15px; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:1;}
.index_news-feature .text-link { margin-top:24px;}

.index_news-list { display:grid; gap:0; align-content:start;}
.index_news-item { display:grid; grid-template-columns:178px 1fr; gap:25px; background:var(--white); padding: 10px; margin-bottom: 20px; align-items: center;}
.index_news-item:last-child { margin-bottom: 0;}
.index_news-thumb {height:120px;overflow:hidden;background:var(--soft-blue);}
.index_news-thumb img {height:100%;object-fit:cover;transition:transform 0.5s ease;}
.index_news-item:hover .index_news-thumb img {transform:scale(1.06);}
.index_news-item h4 { color:var(--primary); font-size:18px; font-weight:600; line-height:1.55; transition:color var(--transition); display:-webkit-box; overflow: hidden; -webkit-box-orient:vertical; -webkit-line-clamp:1;}
.index_news-item:hover h4 { color:var(--secondary);}
.index_news-item p { display:-webkit-box; margin-top:8px; overflow:hidden; color:var(--text-secondary); font-size:14px; -webkit-box-orient:vertical; -webkit-line-clamp:1; margin-bottom: 10px;}


/* ===========首页党建专栏========= */
#party { background:url(../images/index_party_building_bg.jpg) no-repeat top center / cover #fdf8ee;}
.index_party-layout {display:grid;grid-template-columns:0.85fr 1.15fr;gap:65px;align-items:stretch;}
.index_party-main {position:relative;min-height:470px;overflow:hidden;padding:55px;color:var(--white);background:linear-gradient(145deg,rgba(30,77,140,0.95),rgba(10,43,94,1));}

/*党徽*/
.index_party-mark { color:#f4eab0; font-size:14px; letter-spacing:0.2em; display: flex; align-items: center;}
.index_party-mark i { margin-right: 15px; }

.index_party-main h3 { margin-top:40px; font-size:clamp(30px,3vw,44px); font-weight:500; line-height:1.5;}
.index_party-main p { margin-top:24px; color:rgba(255,255,255,0.68); line-height:2; font-size: 15px;}
.index_party-main .button {position:relative;z-index:2;margin-top:45px;}
.index_party-list {border-top:1px solid var(--line);}
.index_party-item {position:relative;display:grid;grid-template-columns:100px 1fr 35px;gap:25px;align-items:start;padding:31px 0;border-bottom:1px solid var(--line);transition:padding-left var(--transition);}
.index_party-item::before {position:absolute;left:0;top:16px;bottom:16px;width:3px;background:var(--accent);content:"";transform:scaleY(0);transform-origin:center;transition:transform var(--transition);}
.index_party-date {color:var(--primary);font-family:Arial,sans-serif;font-size:24px;line-height:1;}
.index_party-date span {display:block;margin-top:9px;color:var(--text-light);font-size:12px;}
.index_party-item h4 {color:var(--primary);font-size:18px;font-weight:600;line-height:1.6;transition:color var(--transition); -webkit-box-orient: vertical; -webkit-line-clamp: 1; display: -webkit-box; overflow: hidden;}
.index_party-item p {margin-top:8px;color:var(--text-secondary);font-size:14px;line-height:1.8; -webkit-box-orient: vertical; -webkit-line-clamp: 1; display: -webkit-box; overflow: hidden;}
.index_party-arrow {color:var(--accent);font-size:20px;transition:transform var(--transition);}
.index_party-item:hover {padding-left:18px;}
.index_party-item:hover::before {transform:scaleY(1);}
.index_party-item:hover h4 {color:var(--accent);}
.index_party-item:hover .index_party-arrow {transform:translateX(6px);}
    

/* ==========首页三法网络=========== */
.index_branch-section { position:relative; overflow:hidden; background:url(../images/index_our_offices_bg.jpg) no-repeat center center / cover;}
.index_branch-layout { display:grid; grid-template-columns:0.72fr 1.28fr; gap:85px; align-items:end;}
.index_branch-tabs {margin-top:45px;border-top:1px solid rgba(255,255,255,0.16);}
.index_branch-tab {display:flex;width:100%;align-items:center;justify-content:space-between;padding:19px 4px;color:rgba(255,255,255,0.6);border-bottom:1px solid rgba(255,255,255,0.16);background:transparent;text-align:left;transition:color var(--transition);}
.index_branch-tab::after {color:var(--accent);content:"→";opacity:0;transform:translateX(-8px);transition:var(--transition);}
.index_branch-tab:hover,.index_branch-tab.active {color:var(--white);}
.index_branch-tab.active::after {opacity:1;transform:translateX(0);}
.index_branch-display {position:relative;min-height:510px;padding:60px;color:var(--text-main);background:var(--white);box-shadow:0 22px 80px rgba(0,0,0,0.16);min-width:0;overflow:hidden;}
.index_branch-display::before {position:absolute;top:0;right:0;width:125px;height:5px;background:var(--accent);content:"";}
.index_branch-swiper .swiper-slide {height:auto; padding: 2px;}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px);}
    to { opacity: 1; transform: translateY(0);}
}
.index_branch-city { color:var(--accent); font-family:Arial,sans-serif; font-size:13px; letter-spacing:0.16em; text-transform: uppercase}
.index_branch-panel h3 {margin-top:18px;color:var(--primary);font-size:34px;font-weight:600; line-height: 1.4;}
.index_branch-summary { margin-top:20px; color:var(--text-secondary); line-height:2; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}
.index_branch-info {display:grid;grid-template-columns:1fr 1fr;gap:24px 45px;margin-top:45px;padding-top:34px;border-top:1px solid var(--line);}
.index_branch-info dt {color:var(--text-light);font-size:12px;letter-spacing:0.08em;}
.index_branch-info dd {margin-top:6px;color:var(--primary);font-size:15px;}
.index_branch-display .text-link {margin-top:42px;}
.index_branch-pagination {display:none;}
.index_branch-pagination .swiper-pagination-bullet {width:42px;height:4px;margin:0;border-radius:0;background:rgba(10,43,94,0.18);opacity:1;transition:background var(--transition);}
.index_branch-pagination .swiper-pagination-bullet-active {background:var(--accent);}


/* =========动画=========== */
.reveal {opacity:0;transform:translateY(25px);transition:opacity 0.7s ease,transform 0.7s ease;}
.reveal.visible {opacity:1;transform:translateY(0);}
    
@media (max-width: 1280px) {
    .desktop-nav ul { gap: 14px;}
    .brand img { width: 240px;}
}

@media (max-width: 1080px) {
    :root {--header-height:70px;}
    .desktop-nav {display: none;}
    .menu-toggle {display:block;}
    .section {padding:90px 0;}
    .index_about-layout,.index_party-layout,.index_branch-layout { grid-template-columns:1fr;gap:50px;}
    .index_branch-tabs {display:none;}
    .index_branch-pagination {display:flex;align-items:center;justify-content:center;gap:8px;margin-top:26px;}
    .index_about-title-wrap {position:static;}
    .index_practice-grid {grid-template-columns:repeat(2,1fr);}
    .index_case-layout,.index_news-layout {grid-template-columns:1fr;}
    .index_case-featured {min-height:auto;}
}

@media (max-width: 760px) {
    :root {--header-height:70px;}
    .container {width:min(calc(100% - 32px),var(--container));}
    .brand img {width:178px;}
    .section {padding:74px 0;}
    .hero {height:680px;min-height:auto;}
    .hero-slide::before {background:rgba(5,28,62,0.79);}
    .hero-content {align-items:center;padding-bottom:20px;}
    .hero h1 {font-size:42px;}
    .hero-description { margin-top:20px; font-size:15px; max-width: 95%;}
    .hero-buttons {margin-top:28px;}
    .hero-buttons .button {width:100%;}
    .hero-bg-pc {display:none;}
    .hero-bg-mobile {display:block;}
    .hero-swiper .swiper-pagination {bottom:38px;}
    .section-header {display:block;margin-bottom:40px;}
    .section-header .button {margin-top:25px;}
    .section-title {font-size:34px;}
    .index_about-data {grid-template-columns:repeat(2,1fr);}
    .index_data-item:nth-child(2) {border-right:0;}
    .index_data-item:nth-child(-n + 2) {border-bottom:1px solid var(--line);}
    .index_data-item:nth-child(3) {padding-left:0;}
    .index_practice-grid {grid-template-columns:1fr;}
    .index_practice-card {min-height:250px;}
    .index_case-featured {padding:34px 26px;}
    .index_case-featured h3 {margin-top:45px;font-size:26px;}
    .index_case-item {grid-template-columns:52px 1fr;padding:25px 20px;}
    .index_case-item-arrow {display:none;}
    .index_lawyer-field {display:none;}
    .index_news-feature-image {height:260px;}
    .index_news-feature-content {padding:27px 24px 30px;}
    .index_news-feature h3 {font-size:21px;}
    .index_news-item {grid-template-columns:120px 1fr;gap:16px;}
    .index_news-thumb {height:92px;}
    .index_news-item p {display:none;}

    #party {background-position: 70% 50% !important;}
    .index_party-main {min-height:auto;padding:40px 28px;}
    .index_party-item {grid-template-columns:72px 1fr;gap:16px;}
    .index_party-arrow {display:none;}

    .index_branch-display {min-height:auto;padding:38px 25px;}
    .index_branch-info {grid-template-columns:1fr;}
    .index_branch-panel h3 {font-size:24px;}
    .index_branch-summary {font-size:14px;}
    .index_branch-info dd {font-size:14px;}
    .job-item {grid-template-columns:1fr 35px;}
    .job-location {display:none;}
}

@media (max-width: 480px) {
    .hero h1 {font-size:36px;}
}

@media (prefers-reduced-motion: reduce) {
    html {scroll-behavior: auto;}
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    .reveal { opacity: 1; transform: none;}
}

/* ============================================================
   律所动态
   ============================================================ */

/* 内页主视觉 */
.page-hero { position:relative; padding:calc(var(--header-height) + 60px) 0 100px; overflow:hidden; color:var(--white); background:linear-gradient(105deg, rgba(8,32,68,0.97) 0%, rgba(10,43,94,0.92) 52%, rgba(30,77,140,0.82) 100%); }
.page-hero .container { position:relative; z-index:2; }
.page-hero-overline { margin-top:26px; margin-bottom:5px; color:#bd9c71; font-size:18px; font-weight:500; letter-spacing:1px; text-transform:uppercase; }
.page-hero h1 { font-size:clamp(38px,4.5vw,54px); font-weight:500; line-height:1.2; letter-spacing:4px; }
.page-hero-description { max-width:660px; margin-top:20px; color:rgba(255,255,255,0.72); font-size:16px; line-height:1.95; }

.news-hero { padding: calc(var(--header-height) + 82px) 0 200px; background-position: center; background-size: cover;}

/* 下级栏目菜单 */
.category-section { position:sticky; top:var(--header-height); z-index:3; margin-top:-32px; }
.category-section.is-stuck { background:var(--white); box-shadow:0 8px 22px rgba(10,43,94,0.10); }
.category-section.is-stuck .category-panel { box-shadow:none; }   /* 白底已在外层，面板自身的投影会在白底上留一圈灰晕 */
.category-panel { padding:0 26px; background:var(--white); box-shadow:var(--shadow); }
.category-tabs { display:grid; grid-template-columns:repeat(8,1fr); }
.category-tabs--6 { grid-template-columns:repeat(6,1fr); }
.category-tab { position:relative; display:flex; align-items:center; justify-content:center; min-height:82px; padding:0 8px; color:var(--text-secondary); font-size:16px; text-decoration:none; white-space:nowrap; transition:color var(--transition),background var(--transition); }
.category-tab::after { position:absolute; right:28%; bottom:0; left:28%; height:3px; background:var(--accent); content:""; opacity:0; transform:scaleX(0); transition:opacity var(--transition),transform var(--transition); }
.category-tab:hover { color:var(--secondary); background:rgba(232,240,254,0.45); }
.category-tab.active { color:var(--primary); font-weight:600; }
.category-tab.active::after { opacity:1; transform:scaleX(1); }

/* 经典案例子分类 */
.category-sub { display:flex; align-items:center; gap:26px; padding:18px 0 24px; border-top:1px solid var(--line); }
.category-sub-title { position:relative; flex:0 0 auto; padding-left:13px; color:var(--primary); font-size:15px; font-weight:700; }
.category-sub-title::before { position:absolute; top:50%; left:0; width:3px; height:16px; margin-top:-8px; background:var(--accent); content:""; }
.category-subtabs { display:flex; flex-wrap:wrap; gap:10px; }
.category-subtab { display:flex; align-items:center; min-height:34px; padding:0 16px; color:var(--secondary); background:var(--soft-blue); border-radius:999px; font-size:14px; text-decoration:none; white-space:nowrap; transition:color var(--transition),background var(--transition); }
.category-subtab:hover { color:var(--white); background:var(--secondary); }
.category-subtab.active { color:var(--white); background:var(--primary); font-weight:600; }

/* 手机端下拉的触发条与分组标题 */
.category-trigger { display:none; }
.category-trigger-icon { display:none; }
.category-group-title { display:none; }

/* 栏目精选（轮播） */
.featured-section { padding:96px 0 110px; }
.featured-heading { margin-bottom:46px; }
.featured-swiper { overflow:hidden; }
.featured-slide { height:auto; }
.featured-card { display:grid; grid-template-columns:1.2fr 1fr; height:100%; overflow:hidden; background:var(--primary); box-shadow:0 24px 60px rgba(10,43,94,0.13); }
.featured-image { position:relative; aspect-ratio:680/422; overflow:hidden; background:var(--secondary); }
.featured-image::after { position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,43,94,0.06), rgba(10,43,94,0.2)); content:""; }
.featured-image img { width:100%; height:100%; object-fit:cover; filter:saturate(0.72); transition:transform 0.8s ease,filter 0.8s ease; }
.featured-card:hover .featured-image img { transform:scale(1.035); filter:saturate(0.9); }
.featured-content { position:relative; padding:48px 46px; display:flex; flex-direction:column; justify-content:center; color:var(--white); }
.featured-content::before { position:absolute; top:42px; left:0; width:3px; height:48px; background:var(--accent); content:""; }
.featured-meta { display:flex; align-items:center; gap:16px; color:rgba(255,255,255,0.58); font-size:13px; letter-spacing:1px; }
.featured-category { color:var(--accent); }
.featured-meta-divider { width:18px; height:1px; background:rgba(255,255,255,0.26); }
.featured-title { margin-top:20px; font-size:clamp(22px,2.2vw,30px); font-weight:500; line-height:1.55; letter-spacing:1px; display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2;}
.featured-summary { margin-top:18px; color:rgba(255,255,255,0.66); font-size:15px; line-height:1.9; display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.featured-content .text-link { margin-top:26px; color:var(--white); }
.featured-pagination { display:flex; align-items:center; justify-content:center; gap:3px; margin-top:34px; }
.featured-pagination .swiper-pagination-bullet { width:42px; height:4px; margin:0; border-radius:0; background:rgba(10,43,94,0.18); opacity:1; transition:background var(--transition); }
.featured-pagination .swiper-pagination-bullet-active { background:var(--accent); }

/* 动态列表 */
.news-section { padding:100px 0 120px; background:var(--page-bg); }
.news-section .section-title { font-weight: 300;}

/*搜索结果页标题*/
.search-title { font-size: 36px;}
.search-title span { font-weight: bold;}

.news-toolbar { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:46px; }
.news-toolbar-heading { flex:1; }
.search-form { width:400px; max-width:100%; height:48px; display:flex; align-items:center; background:var(--white); border:1px solid var(--line); transition:border-color var(--transition),box-shadow var(--transition); }
.search-form:focus-within { border-color:var(--secondary); box-shadow:0 8px 24px rgba(10,43,94,0.08); }
.search-form input { width:100%; height:100%; padding:0 16px; color:var(--text-main); background:transparent; border:0; outline:none; font-size:14px; }
.search-form input::placeholder { color:#9ba4b2; }
.search-submit { width:52px; height:100%; flex:0 0 auto; display:grid; place-items:center; color:var(--white); background:var(--secondary); transition:background var(--transition); }
.search-submit:hover { background:var(--accent); }
.search-submit svg { width:18px; height:18px; }

.news-list { border-top:1px solid var(--line); }
.news-item { position:relative; display:flex; align-items:center; gap:30px; min-height:150px; padding:22px 0; border-bottom:1px solid var(--line); transition:background var(--transition),padding var(--transition),box-shadow var(--transition); }
.news-item::before { position:absolute; top:0; bottom:0; left:0; width:3px; background:var(--accent); content:""; opacity:0; transform:scaleY(0); transition:opacity var(--transition),transform var(--transition); }
.news-item:hover { padding-left:24px; padding-right:24px; background:var(--white); box-shadow:0 14px 38px rgba(10,43,94,0.06); }
.news-item:hover::before { opacity:1; transform:scaleY(1); }
.news-date { flex:0 0 108px; color:var(--primary); }
.news-date-day { display:block; font-family:Georgia,"Times New Roman",serif; font-size:34px; line-height:1; }
.news-date-year { display:block; margin-top:9px; color:var(--text-light); font-size:12px; letter-spacing:1px; }
.news-thumb { flex:0 0 210px; aspect-ratio:680/422; overflow:hidden; background:var(--soft-blue); border-radius: 4px;}
.news-thumb img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; }
.news-item:hover .news-thumb img { transform:scale(1.06); }
.news-main { flex:1 1 auto; min-width:0; }
.news-title { overflow:hidden; color:var(--text-main); font-size:18px; font-weight:500; line-height:1.55; text-overflow:ellipsis; white-space:nowrap; transition:color var(--transition); }
.news-summary { margin-top:10px; overflow:hidden; color:var(--text-secondary); font-size:14px; line-height:1.8; text-overflow:ellipsis; white-space:nowrap; width: 85%;}
.news-item:hover .news-title { color:var(--secondary); }
.news-category { flex:0 0 auto; padding:6px 12px; color:var(--secondary); background:var(--soft-blue); font-size:12px; white-space:nowrap; }
.news-arrow { flex:0 0 28px; color:#9ca7b7; font-size:20px; transition:color var(--transition),transform var(--transition); }
.news-item:hover .news-arrow { color:var(--accent); transform:translateX(5px); }

/* 空状态 */
.empty-state { padding:80px 30px; display:none; text-align:center; background:var(--white); border:1px solid var(--line); }
.empty-state.visible { display:block; }
.empty-state h3 { color:var(--primary); font-size:20px; font-weight:500; }
.empty-state p { margin-top:10px; color:var(--text-secondary); font-size:14px; }

/* 分页 */
.pagination { margin-top:54px; display:flex; align-items:center; justify-content:center; gap:10px; }
.page-button { width:42px; height:42px; display:grid; place-items:center; color:var(--text-secondary); background:var(--white); border:1px solid var(--line); border-radius:50%; transition:color var(--transition),background var(--transition),border-color var(--transition); }
.page-button svg { width:16px; height:16px; }
.page-button a { width:42px; height:42px; display:grid; place-items:center;}
.page-button:hover:not(:disabled) { color:var(--white); background:var(--secondary); border-color:var(--secondary); }
.page-button.active { color:var(--white); background:var(--accent); border-color:var(--accent); }
.page-button:disabled { cursor:not-allowed; opacity:0.42; }

/* 律所动态  */
@media (max-width: 1080px) {
    /* 下级栏目菜单 */
    .category-panel { position:relative; padding:0; }
    .category-trigger { display:flex; width:100%; height:52px; align-items:center; justify-content:space-between; gap:14px; padding:0 20px; color:var(--primary); background:var(--white); border:0; font-family:inherit; font-size:16px; font-weight:600; text-align:left; cursor:pointer; }
    .category-trigger-icon { display:block; flex:0 0 auto; width:14px; height:14px; color:var(--accent); transition:transform var(--transition); }
    .category-trigger-icon svg { display:block; width:100%; height:100%; }
    .category-drop + .category-drop { border-top:1px solid var(--line); }
    .category-drop.open .category-trigger-icon,
    .category-panel.open .category-trigger-icon { transform:rotate(180deg); }

    .category-body { position:absolute; top:100%; right:0; left:0; z-index:30; display:none; max-height:60vh; overflow-y:auto; padding:6px 0 10px; background:var(--white); box-shadow:0 20px 40px rgba(10,43,94,0.16); }
    .category-drop.open .category-body,
    .category-panel.open .category-body { display:block; }

    .category-tabs,
    .category-subtabs { display:block; }
    .category-tab,
    .category-subtab { justify-content:flex-start; min-height:48px; padding:0 22px; font-size:15px; }
    .category-tab::after,
    .category-subtab::after { display:none; }

    .category-sub { display:block; padding:0; border-top:0; }
    .category-sub-title { display:none; }
    .category-subtab { color:var(--text-secondary); background:transparent; border-radius:0; }
    .category-subtab:hover { color:var(--secondary); background:rgba(232,240,254,0.45); }
    .category-subtab.active { color:var(--primary); background:transparent; font-weight:600; }

    .category-group-title { display:block; margin:0 22px; padding:14px 0 6px; border-top:1px solid var(--line); color:var(--text-light); font-size:13px; letter-spacing:1px; }

    .featured-card { grid-template-columns:1fr; }
    .featured-content { padding:40px 36px; }
    .news-item { gap:20px; }
    .news-thumb { flex-basis:180px; }
    .news-date { flex-basis:92px; }
}
@media (max-width: 760px) {
    .page-hero { padding:calc(var(--header-height) + 40px) 0 56px; }
    .page-hero h1 { letter-spacing:2px; }
    .page-hero-overline { font-size: 12px; letter-spacing: 1px}
    .page-hero-description { font-size: 13px;}
    
    .featured-section { padding:70px 0 80px; }
    .featured-heading { margin-bottom:34px; }
    .featured-content { padding:34px 26px 40px; }
    .featured-content::before { top:30px; height:40px; }
    .featured-title { font-size:22px; }
    .news-section { padding:70px 0 80px; }
    .news-toolbar { align-items:stretch; flex-direction:column; gap:24px; margin-bottom:36px; }
    .search-form { width:100%; }
    .news-item { flex-wrap:wrap; row-gap:14px; column-gap:16px; padding:20px 0; }
    .news-date { flex:0 0 56px; }
    .news-date-day { font-size:26px; }
    .news-thumb { flex:0 0 130px; }
    .news-main { flex:1 1 auto; min-width:0; }
    .news-title { white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
    .news-summary { display:none; }
    .news-category { display:none; }
    .news-arrow { display:none; }
}

/* ============= 文章详情 ============= */
#news_show { margin-top: -48px;}
/* 三法党建详情页 */
@media (min-width: 761px) {
    #news_show.party_show_section { margin-top: -7px;}
}
.news_show_box { background: #fff; padding: 60px 120px;}
.news_show_head { text-align: center; border-bottom: 1px solid #dde4ef; padding-bottom: 20px; margin-bottom: 30px;}
.news_show_head h2 { font-size: 32px; font-weight: bold; line-height: 1.55; color:var(--primary); margin-bottom: 30px;}
.news_show_head h2 small { display: block; font-size: 24px; line-height: 1.55; margin-top: 15px; font-weight: normal;}
.news_show_head p { font-size: 14px; line-height: 1.8; color:#8c99ae; display: flex; align-items: center; justify-content: center;}
.news_show_head p span { margin-right: 26px; display: flex; align-items: center;}
.news_show_head p span:last-child { margin-right: 0;}
.news_show_head p span i { display: block; width: 5px; height: 5px; background: #bd9c71; margin-right: 8px; border-radius: 50%;}
.news_show_head p span span { margin-right: 0;}

.news_content { color: #596982;}

.news_content h1,
.news_content h2,
.news_content h3,
.news_content h4,
.news_content h5,
.news_content h6 { margin-bottom: 20px; color: var(--primary); font-size: 18px;}

.news_content p { margin-bottom: 15px;}
.news_content strong { color: #0b2550;}
.news_content img { width: auto; max-width: 100%;}

.news_content span { text-wrap: wrap;}

@media (max-width: 760px) {
    .news_show_box { padding: 30px 15px;}
    .news_show_head h2 { font-size: 20px; margin-bottom: 20px;}
    .news_show_head p { font-size: 12px;}
    .news_content { font-size: 15px;}
}

/* ==========联系我们============ */
.contact_hero { padding: calc(var(--header-height) + 82px) 0 200px; background-position: center; background-size: cover;}
.contact_section { padding:112px 0 126px; background:var(--white); }

.contact_layout { display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:76px; align-items:stretch; }

/* 左侧联系信息卡 */
.contact_info { padding:44px 48px 42px; background:var(--page-bg); border-top:3px solid var(--secondary); }
.contact_firm-name { margin-bottom:35px; color:var(--primary); font-size:24px; font-weight:bold; letter-spacing:2px; }
.contact_firm-name::after { display:block; width:40px; height:2px; margin-top:16px; background:var(--accent); content:""; }

.contact_info-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:42px; }
.contact_info-item { display:grid; grid-template-columns:42px minmax(0,1fr); gap:15px; min-height:92px; padding:24px 0; border-bottom:1px solid var(--line); }
.contact_info-item:nth-child(1),
.contact_info-item:nth-child(2) { padding-top:0; }
.contact_info-icon { display:grid; width:38px; height:38px; place-items:center; color:var(--secondary); background:var(--soft-blue); border-radius:50%; font-size:17px; }
.contact_info-label { color:var(--text-secondary); font-size:14px; letter-spacing:1px; }
.contact_info-value { color:var(--primary); font-size:16px; line-height:1.4; word-break:break-all; }

/* 右侧二维码卡 */
.contact_qr { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:430px; padding:48px 30px; color:var(--white); background:var(--primary); text-align:center; }
.contact_qr-overline { color:var(--accent); font-family:Arial,sans-serif; font-size:12px; font-weight:600; letter-spacing:1px; text-transform:uppercase; }
.contact_qr-title { margin-bottom:26px; font-size:18px; font-weight:500; letter-spacing:2px; }
.contact_qr-box { display:grid; width:220px; height:220px; place-items:center; background:var(--white); box-shadow:0 16px 35px rgba(0,0,0,0.16); }
.contact_qr-box img { width:100%; height:auto; }
.contact_qr-caption { max-width:275px; margin-top:22px; color:rgba(255,255,255,0.68); font-size:14px; line-height:1.8; }

/* 联系我们 · 响应式 */
@media (max-width: 1280px) {
    .contact_layout { gap:42px; }
}
@media (max-width: 1080px) {
    .contact_layout { grid-template-columns:1fr; }
    .contact_qr { min-height:380px; }
}
@media (max-width: 760px) {
    .contact_section { padding:74px 0 80px; }
    .contact_info { padding:34px 24px; }
    .contact_firm-name { font-size:21px; }
    .contact_info-list { grid-template-columns:1fr; }
    .contact_info-item { min-height:auto; }
    .contact_info-item:nth-child(2) { padding-top:24px; }
    .contact_qr { min-height:350px; padding:40px 24px; }
}

/* ==========加入我们============ */
.joinus_hero { padding: calc(var(--header-height) + 82px) 0 200px; background-position: center; background-size: cover;}

.joinus_section { padding:100px 0 120px; background:var(--page-bg); }
.joinus_section .section-title { font-size:clamp(28px,3vw,38px); font-weight:500; }
.joinus_toolbar { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:46px; }
.joinus_toolbar-heading { flex:1; }

/* 职位列表 */
.joinus_list { display:grid; gap:18px; }
.joinus_card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:28px; align-items:center; padding:35px 45px; background:var(--white); border:1px solid var(--line); border-radius:6px; box-shadow:0 8px 28px rgba(10,43,94,0.035); transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition); }
.joinus_card:hover { border-color:rgba(30,77,140,0.35); box-shadow:var(--shadow); transform:translateY(-3px); }

.joinus_card-main { min-width:0; }
.joinus_card-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:60px; margin-bottom:14px; }
.joinus_card-title { color:var(--primary); font-size:22px; font-weight:600; }
.joinus_card-meta { display:flex; flex-wrap:wrap; align-items:baseline; gap:50px; color:var(--text-secondary); font-size:14px; }
.joinus_card-summary { max-width:800px; color:var(--text-secondary); font-size:14px; line-height:1.8; }

.joinus_card-button { display:inline-flex; min-width:116px; min-height:42px; align-items:center; justify-content:center; padding:0 40px; color:var(--white); background:var(--secondary); border-radius:4px; font-size:14px; transition:background var(--transition),transform var(--transition); }
.joinus_card-button:hover { background:var(--primary); transform:translateY(-1px); }

/* 加入我们 · 响应式 */
@media (max-width: 1080px) {
    .joinus_toolbar { gap:24px; }
}
@media (max-width: 760px) {
    .joinus_section { padding:70px 0 80px; }
    .joinus_toolbar { display:block; margin-bottom:28px; }
    .joinus_card { display:block; padding:24px; }
    .joinus_card-head { gap: 20px;}
    .joinus_card-button { width:100%; margin-top:22px; }
}

/* ==========加入我们 · 职位详情============ */
.joinus_show_section { padding:100px 0; background:var(--page-bg); }
.joinus_show_box { padding:60px 90px 72px; background:var(--white); }

.joinus_show_title { color:var(--primary); font-size:32px; font-weight:700; line-height:1.4; }
.joinus_show_meta { display:flex; flex-wrap:wrap; gap:10px 48px; margin-top:16px; padding-bottom:30px; color:#667085; font-size:14px; border-bottom:1px solid var(--line); }

.joinus_show_block { margin-top:52px; }
.joinus_show_block-title { position:relative; padding-left:13px; color:var(--primary); font-size:18px; font-weight:700; line-height:1.5; }
.joinus_show_block-title::before { position:absolute; top:50%; left:0; width:3px; height:20px; margin-top:-10px; background:var(--accent); content:""; }

.joinus_show_richtext { margin-top:22px; color:#7b8290; font-size:15px; line-height:2; }
.joinus_show_richtext p { margin:0; }
.joinus_show_richtext ol,
.joinus_show_richtext ul { margin:0; padding-left:1.4em; }
.joinus_show_richtext img { max-width:100%; height:auto; }

/* 简历投递方式（固定文本） */
.joinus_show_apply { margin-top:56px; padding:26px 55px; background:#f6f8fc; border:1px solid #e1e8f0; border-radius: 4px;}
.joinus_show_apply-title { color:var(--primary); font-size:16px; font-weight:bold; line-height:1.5; margin-bottom: 15px;}
.joinus_show_apply p { color:#646974; font-size:15px; line-height:2; }
.joinus_show_apply strong { color:#255290; font-weight:700; }

/* 加入我们 · 职位详情 */
@media (max-width: 1080px) {
    .joinus_show_box { padding:48px 56px 56px; }
}
@media (max-width: 760px) {
    .joinus_show_section { padding:70px 0 80px; }
    .joinus_show_box { padding:30px 22px 36px; }
    .joinus_show_title { font-size:24px; }
    .joinus_show_meta { gap:8px 24px; padding-bottom:22px; }
    .joinus_show_block { margin-top:38px; }
    .joinus_show_richtext { font-size:15px; }
    .joinus_show_apply { margin-top:40px; padding:22px 20px 24px; }
}

/* ==========关于我们============ */
/* 页头 */
.about_hero { padding:calc(var(--header-height) + 82px) 0 200px; background-position:center; background-size:cover; }

.about_section { padding:90px 0; background:var(--page-bg); }
.about_layout { display:grid; grid-template-columns:266px minmax(0,1fr); gap:36px; align-items:start; }

/* 左侧二级栏目菜单 */
.about_sidebar { position:sticky; top:calc(var(--header-height) + 24px); padding:29px 0 42px; background:var(--white); }
.about_menu li + li { margin-top:13px; }
.about_menu a { display:flex; align-items:center; justify-content:space-between; gap:14px; height:52px; padding:0 28px 0 52px; color:var(--primary); font-size:16px; transition:background var(--transition),color var(--transition); }
.about_menu a:hover,
.about_menu a.active { background:var(--soft-blue); font-weight:700; }
/* 箭头 */
.about_menu-arrow { flex:0 0 auto; color:#c6ccd8; font-size:16px; transition:color var(--transition),transform var(--transition); }
.about_menu a:hover .about_menu-arrow,
.about_menu a.active .about_menu-arrow { color:var(--accent); transform:translateX(3px); }

/* 手机端下拉触发条 */
.about_trigger { display:none; }
.about_trigger-icon { display:none; }

/* 右侧正文 */
.about_content { padding:42px 64px 72px; background:var(--white); }
.about_content_head { margin-bottom:42px; border-bottom: 1px solid var(--line); padding-bottom: 30px;}
.about_content-title { position:relative; padding-left:18px; color:var(--primary); font-size:24px; font-weight:700; line-height:1.4; }
.about_content-title::before { position:absolute; top:50%; left:0; width:3px; height:28px; margin-top:-14px; background:var(--accent); content:""; }
.about_richtext { color:#667085; font-size:16px; line-height:1.9; text-align:justify; }
.about_richtext p { margin-bottom:18px; text-indent:2em; }
.about_richtext p strong { color:var(--primary); font-weight:700; }

.about_richtext h1,
.about_richtext h2,
.about_richtext h3,
.about_richtext h4,
.about_richtext h5,
.about_richtext h6 { margin-bottom:12px; color:var(--primary); font-weight:700; font-size:20px; }

.about_richtext > *:last-child { margin-bottom:0; }
.about_richtext img { margin:15px 0; width: auto; max-width: 100%;}
.about_richtext p img { margin-left: -2em;}
/* 多图并排 */
.about_richtext-gallery { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin:44px 0; }
.about_richtext-gallery img { display:block; margin:0; }

/* 办公环境 */
.about_gallery-main .swiper-slide,
.about_gallery-thumbs .swiper-slide { aspect-ratio:892 / 569; background:var(--page-bg); }
.about_gallery-main .swiper-slide img,
.about_gallery-thumbs .swiper-slide img { display:block; width:100%; height:100%; object-fit:cover; }
.about_gallery-thumbs-wrap { position:relative; margin-top:34px; }
.about_gallery-thumbs .swiper-slide { border:4px solid var(--soft-blue); cursor:pointer; transition:border-color var(--transition); }
.about_gallery-thumbs .swiper-slide:hover { border-color:#c6d7f2; }
.about_gallery-thumbs .swiper-slide-thumb-active { border-color:var(--accent); }

/* 小图翻页按钮 */
.about_gallery-nav { position:absolute; top:50%; z-index:3; display:grid; width:36px; height:36px; margin-top:-18px; padding:0; place-items:center; color:var(--primary); background:rgba(255,255,255,0.94); border:1px solid var(--line); border-radius:50%; box-shadow:0 4px 14px rgba(10,43,94,0.14); cursor:pointer; transition:color var(--transition),background var(--transition),border-color var(--transition),opacity var(--transition); }
.about_gallery-nav svg { display:block; width:16px; height:16px; }
.about_gallery-nav:hover { color:var(--white); background:var(--accent); border-color:var(--accent); }
.about_gallery-nav--prev { left:-18px; }
.about_gallery-nav--next { right:-18px; }
.about_gallery-nav.is-disabled,
.about_gallery-nav.is-locked { opacity:0; visibility:hidden; pointer-events:none; }

/* 大图翻页按钮 */
.about_gallery-main-nav { position:absolute; top:50%; z-index:3; display:grid; width:40px; height:40px; margin-top:-20px; padding:0; place-items:center; color:var(--primary); background:rgba(255,255,255,0.94); border:1px solid var(--line); border-radius:50%; box-shadow:0 4px 14px rgba(10,43,94,0.14); cursor:pointer; transition:color var(--transition),background var(--transition),border-color var(--transition),opacity var(--transition); }
.about_gallery-main-nav svg { display:block; width:16px; height:16px; }
.about_gallery-main-nav:hover { color:var(--white); background:var(--accent); border-color:var(--accent); }
.about_gallery-main-nav--prev { left:16px; }
.about_gallery-main-nav--next { right:16px; }
.about_gallery-main-nav.is-disabled { opacity:0.32; pointer-events:none; }
.about_gallery-main-nav.is-locked { opacity:0; visibility:hidden; pointer-events:none; }

/* 管理团队 */
.about_team-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:28px; }

.about_team-card { display:grid; grid-template-columns:43.2% minmax(0,1fr); background:#f7f8fc; }
.about_team-photo { aspect-ratio:380 / 570; background:var(--soft-blue); }
.about_team-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.about_team-info { display:flex; flex-direction:column; padding:50px 24px 48px 32px; }
.about_team-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:15px; }
.about_team-name { color:var(--primary); font-size:24px; font-weight:700; line-height:1.2; }
.about_team-duty { color:#798697; font-size:16px; line-height:1.2; }
.about_team-rule { width:22px; height:3px; margin-top:22px; background:var(--accent); }

.about_team-office { display:flex; align-items:center; gap:12px; margin-top:auto; color:#798697; font-size:16px; }
.about_team-office svg { display:block; flex:0 0 auto; width:22px; height:22px; }

/* 管理团队 · 成员详情 */
.about_member_content { padding-bottom:54px; }

.about_member_content .about_content-title { line-height:1.2; }

/* 成员行：证件照 + 资料 */
.about_member { display:grid; grid-template-columns:260px minmax(0,1fr); gap:130px; padding-top:18px; }
.about_member-photo { aspect-ratio:380 / 570; background:var(--soft-blue); }
.about_member-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center top; border-radius: 6px;}
.about_member-info { padding-top:21px; }

/* 姓名 + 职务 */
.about_member-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:26px; }
.about_member-name { color:var(--primary); font-size:28px; font-weight:700; line-height:1.4; letter-spacing: 2px;}
.about_member-duty { color:var(--text-secondary); font-size:16px; line-height:1.4; }
.about_member-rule { display:block; width:30px; height:3px; margin-top:26px; background:var(--accent); }

/* 资料行：图标圆 + 文字 */
.about_member-list { margin-top:50px; }
.about_member-item { display:flex; align-items:center; gap:16px; min-height:60px; }
.about_member-icon { display:grid; flex:0 0 auto; width:34px; height:34px; place-items:center; color:var(--accent); background:#f7f8fc; border-radius:50%; }
.about_member-icon svg { display:block; width:20px; height:20px; }
.about_member-text { min-width:0; color:var(--primary); font-size:16px; line-height:1.6; overflow-wrap:break-word; }

/* 蓝色按钮 */
.about_member-action { display:inline-flex; align-items:center; margin-top:44px; height:48px; padding:0 34px; color:var(--white); background:#1F4D8B; border-radius:6px; font-size:16px; font-weight:400; transition:background var(--transition); }
.about_member-action:hover { background:var(--primary); }

/* 资质荣誉 */
.about_honor_group + .about_honor_group { margin-top:56px; }
.about_honor_group-head { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:28px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.about_honor_group-title { position:relative; padding-left:15px; color:var(--primary); font-size:20px; font-weight:700; line-height:1.4; }
.about_honor_group-title::before { position:absolute; top:50%; left:0; width:3px; height:20px; margin-top:-10px; background:var(--accent); content:""; }

.about_honor_grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:32px 28px; }
.about_honor_frame { /*aspect-ratio:4 / 3;*/ overflow:hidden; background:var(--white); border:1px solid var(--line); transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition); }
.about_honor_frame img { display:block; width:100%; height:100%; object-fit:contain; }
.about_honor_item:hover .about_honor_frame { border-color:var(--accent); box-shadow:0 14px 32px rgba(10,43,94,0.10); transform:translateY(-4px); }
.about_honor_name { margin-top:16px; color:var(--text-light); font-size:15px; line-height:1.6; text-align:center; }

.about_honor .about_honor_group:first-child .about_honor_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* 关于我们 · 响应式 */
@media (max-width: 1080px) {
    .about_layout { grid-template-columns:minmax(0,1fr); gap:26px; }
    .about_sidebar { position:static; padding:20px 0 26px; }
    .about_menu li + li { margin-top:10px; }
    .about_menu a { padding:0 22px 0 28px; }
    
    .about_sidebar:has(.about_trigger) { position:sticky; top:var(--header-height); z-index:20; max-height:none; overflow:visible; padding:0; box-shadow:0 6px 18px rgba(10,43,94,0.06); }
    .about_sidebar:has(.about_trigger) .about_trigger { position:relative; z-index:31; display:flex; width:100%; height:52px; align-items:center; justify-content:space-between; gap:14px; padding:0 20px; color:var(--primary); background:var(--white); border:0; font-family:inherit; font-size:16px; font-weight:700; text-align:left; cursor:pointer; }
    .about_sidebar:has(.about_trigger) .about_trigger-icon { display:block; flex:0 0 auto; width:14px; height:14px; color:var(--accent); transition:transform var(--transition); }
    .about_sidebar:has(.about_trigger) .about_trigger-icon svg { display:block; width:100%; height:100%; }
    .about_sidebar:has(.about_trigger).open .about_trigger-icon { transform:rotate(180deg); }
    /* 展开的菜单浮层 */
    .about_sidebar:has(.about_trigger) .about_menu { position:absolute; top:100%; right:0; left:0; z-index:30; display:none; max-height:60vh; overflow-y:auto; padding:6px 0 10px; background:var(--white); box-shadow:0 20px 40px rgba(10,43,94,0.16); }
    .about_sidebar:has(.about_trigger).open .about_menu { display:block; }
    .about_sidebar:has(.about_trigger) .about_menu li + li { margin-top:0; }
    .about_sidebar:has(.about_trigger) .about_menu a { height:48px; padding:0 22px; font-size:15px; }
    .about_sidebar:has(.about_trigger) .about_menu-arrow { display:none; }

    .about_content { padding:36px 40px 48px; }
    .about_gallery-thumbs-wrap { margin-top:24px; }

    .about_team-info { padding:34px 18px 32px 24px; }
    .about_team-head { gap:12px; }
    .about_team-name { font-size:20px; }
    .about_team-rule { margin-top:16px; }
    .about_team-office { gap:8px; font-size:15px; }
    .about_team-office svg { width:18px; height:18px; }

    .about_member { grid-template-columns:minmax(0,1fr); gap:26px; }
    .about_member-photo { max-width:320px; }
    .about_member-info { padding-top:0; }

    /* 资质荣誉 */
    .about_honor_grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
    .about_honor_group + .about_honor_group { margin-top:44px; }
    .about_honor_group-head { margin-bottom:22px; padding-bottom:16px; }
}
@media (max-width: 760px) {
    .about_hero { padding:calc(var(--header-height) + 46px) 0 96px; }
    .about_section { padding:56px 0 64px; }
    .about_content { padding:26px 22px 34px; }
    .about_content-title { padding-left:14px; font-size:20px; }
    .about_content-title::before { height:22px; margin-top:-11px; }
    .about_richtext { font-size:15px; line-height:1.85; }
    .about_richtext img { margin:26px 0; }
    .about_richtext-gallery { grid-template-columns:1fr; gap:16px; margin:26px 0; }
    .about_gallery-thumbs-wrap { margin-top:16px; }
    .about_gallery-thumbs .swiper-slide { border-width:3px; }
   
    .about_gallery-nav { width:32px; height:32px; margin-top:-16px; }
    .about_gallery-nav svg { width:14px; height:14px; }
    .about_gallery-nav--prev { left:-15px; }
    .about_gallery-nav--next { right:-15px; }
   
    .about_gallery-main-nav { width:34px; height:34px; margin-top:-17px; }
    .about_gallery-main-nav--prev { left:10px; }
    .about_gallery-main-nav--next { right:10px; }
   
    .about_team-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
    .about_team-card { grid-template-columns:34% minmax(0,1fr); }
    .about_team-info { padding:22px 14px 20px 18px; }
    .about_team-head { gap:10px; }
    .about_team-name { font-size:18px; }
    .about_team-duty { font-size:14px; }
    .about_team-rule { margin-top:14px; }
    .about_team-office { font-size:14px; }
 
    .about_member { gap:20px; }
    .about_member-photo { max-width:240px; margin:0 auto; }
    .about_member-head { gap:12px; }
    .about_member-name { font-size:22px; }
    .about_member-duty { font-size:14px; }
    .about_member-rule { margin-top:18px; }
    .about_member-list { margin-top:34px; }
    .about_member-item { gap:14px; min-height:52px; }
    .about_member-icon { width:30px; height:30px; }
    .about_member-icon svg { width:18px; height:18px; }
    .about_member-text { font-size:15px; }
    .about_member-action { height:44px; margin-top:32px; padding:0 24px; font-size:15px; }

    .about_honor_grid { gap:22px 16px; }
    .about_honor_group + .about_honor_group { margin-top:34px; }
    .about_honor_group-head { gap:12px; margin-bottom:18px; padding-bottom:14px; }
    .about_honor_group-title { padding-left:13px; font-size:18px; }
    .about_honor_group-title::before { height:18px; margin-top:-9px; }

    .about_honor_name { margin-top:12px;}
}
@media (max-width: 480px) {    
    .about_honor .about_honor_group:first-child .about_honor_grid { grid-template-columns:minmax(0,1fr); }
    .about_honor_grid { grid-template-columns:minmax(0,1fr); }
}

/* ==========通用单页 */
.page_section { padding:90px 0; background:var(--page-bg); }
.page_content { padding:42px 64px 72px; background:var(--white); }
.page_content_head { margin-bottom:42px; padding-bottom:30px; border-bottom:1px solid var(--line); }
.page_content-title { position:relative; padding-left:18px; color:var(--primary); font-size:24px; font-weight:700; line-height:1.4; }
.page_content-title::before { position:absolute; top:50%; left:0; width:3px; height:28px; margin-top:-14px; background:var(--accent); content:""; }

.page_richtext { color:#667085; font-size:16px; line-height:1.9; text-align:justify; }
.page_richtext p { margin-bottom:18px; text-indent:2em; }
.page_richtext p strong { color:var(--primary); font-weight:700; }

.page_richtext h1,
.page_richtext h2,
.page_richtext h3,
.page_richtext h4,
.page_richtext h5,
.page_richtext h6 { margin-bottom:12px; color:var(--primary); font-weight:700; font-size:20px; }

.page_richtext ul,
.page_richtext ol { margin-bottom:18px; padding-left:2em; }
.page_richtext ul li { list-style:disc; }
.page_richtext ol li { list-style:decimal; }
.page_richtext li { margin-bottom:8px; }

.page_richtext > *:last-child { margin-bottom:0; }
.page_richtext img { display:block; margin:15px 0; width:auto; max-width:100%; }
.page_richtext p img { margin-left:-2em; }

@media (max-width: 1080px) {
    .page_content { padding:36px 40px 48px; }
}
@media (max-width: 760px) {
    .page_section { padding:56px 0 64px; }
    .page_content { padding:26px 22px 34px; }
    .page_content_head { margin-bottom:30px; padding-bottom:22px; }
    .page_content-title { padding-left:14px; font-size:20px; }
    .page_content-title::before { height:22px; margin-top:-11px; }
    .page_richtext { font-size:15px; line-height:1.85; }
    .page_richtext img { margin:26px 0; }
}

/* ==========三法党建============ */

.party_hero { padding:calc(var(--header-height) + 70px) 0 159px; background-position:center; background-size:cover; }
.party_hero .page-hero-overline { color: #fff;}

.party_overview { padding:83px 0 100px; background:var(--white); }
.party_overview .section-title { font-size:38px; font-weight:500; }
.party_richtext { margin-top:48px; color:#667085; font-size:16px; line-height:1.625; text-align:justify; letter-spacing: .3px;}
.party_richtext p { margin-bottom:17px; text-indent:2em; }
.party_richtext strong { color:var(--primary); font-weight:700; }
.party_richtext img { display:block; margin:40px 0; }
.party_richtext > *:last-child { margin-bottom:0; }

/* 支部动态 */
.party_updates { padding:80px 0 100px; background:var(--page-bg); }
.party_updates .section-title { font-size:38px; font-weight:500; }
.party_grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:32px 28px; margin-top:54px; }
.party_card { display:block; background:var(--white); transition:box-shadow var(--transition),transform var(--transition); }
.party_card-thumb { aspect-ratio:16/10; overflow:hidden; background:var(--soft-blue); }
.party_card-thumb img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; }

.party_card-body { padding:27px 40px 40px; }

.party_card-title { color:var(--primary); font-size:20px; font-weight:500; line-height:1.5; transition:color var(--transition); }
.party_card-date { display:block; margin-top:24px; color:#798697; font-size:15px; }

.party_updates .pagination { margin-top:62px; gap:8px; }

.party_card:hover { box-shadow:0 18px 44px rgba(10,43,94,0.10); transform:translateY(-4px); }
.party_card:hover .party_card-thumb img { transform:scale(1.05); }
.party_card:hover .party_card-title { color:var(--secondary); }

/* 三法党建 · 响应式 */
@media (max-width: 1080px) {
    .party_grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .party_hero { padding:calc(var(--header-height) + 40px) 0 96px; }
    .party_overview { padding:60px 0 68px; }
    .party_updates { padding:56px 0 52px; }
    .party_overview .section-title,
    .party_updates .section-title { font-size:26px; }
    .party_richtext { margin-top:32px; font-size:15px; }
    .party_grid { grid-template-columns:minmax(0,1fr); gap:20px; margin-top:34px; }
    .party_card-body { padding:22px 20px 26px; }
    .party_card-title { font-size:17px; }
    .party_card-date { margin-top:16px; font-size:14px; }
}

/* ==========业务领域 ============ */

.services_hero { padding:calc(var(--header-height) + 70px) 0 159px; background-position:center; background-size:cover; }

.services_section { padding:90px 0; }

.services_practice-grid { position:relative; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); background:var(--white); }
.services_practice-grid::after { position:absolute; right:0; bottom:0; left:0; height:1px; background:var(--line); content:""; }

.services_practice-card { position:relative; min-height:280px; overflow:hidden; padding:36px 32px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); transition:color var(--transition),background var(--transition),transform var(--transition); }
.services_practice-card::before { position:absolute; top:0; right:0; left:0; height:3px; background:var(--accent); content:""; transform:scaleX(0); transform-origin:left; transition:transform var(--transition); }
.services_practice-card::after { position:absolute; right:-40px; bottom:-56px; width:229px; height:223px; background:url(../images/icon_service_logo.png) no-repeat center center / 100% 100%; content:""; opacity:0.9; pointer-events:none; z-index:-1; transition:opacity var(--transition); }
.services_practice-card:hover { z-index:2; color:var(--white); background:var(--primary); transform:translateY(-5px); box-shadow:var(--shadow); }
.services_practice-card:hover::before { transform:scaleX(1); }
.services_practice-card:hover::after { opacity:0.25; }
.services_practice-number { color:var(--accent); font-family:Arial,sans-serif; font-size:13px; letter-spacing:0.12em; }
.services_practice-card h3 { margin-top:38px; color:var(--primary); font-size:21px; font-weight:600; transition:color var(--transition); }
.services_practice-card:hover h3 { color:var(--white); }
.services_practice-card p { margin-top:16px; color:var(--text-secondary); font-size:14px; line-height:1.9; transition:color var(--transition); -webkit-box-orient:vertical; -webkit-line-clamp:2; display:-webkit-box; overflow:hidden; }
.services_practice-card:hover p { color:rgba(255,255,255,0.66); }
.services_practice-more { position:absolute; right:30px; bottom:28px; display:grid; width:35px; height:35px; place-items:center; color:var(--secondary); border:1px solid rgba(30,77,140,0.25); font-size:19px; transition:var(--transition); }
.services_practice-card:hover .services_practice-more { color:var(--white); border-color:rgba(255,255,255,0.35); }

/* ---------- 业务领域 · 详情页----------------- */

.services_show_section { padding:90px 0; background:var(--page-bg); }

.services_show_layout { display:grid; grid-template-columns:266px minmax(0,1fr); gap:36px; align-items:start; }

/* 左侧二级栏目菜单 */
.services_show_sidebar { position:sticky; top:calc(var(--header-height) + 24px); max-height:calc(100vh - var(--header-height) - 48px); overflow-y:auto; padding:29px 0 42px; background:var(--white); scrollbar-width:thin; scrollbar-color:#c6ccd8 transparent; }
.services_show_sidebar::-webkit-scrollbar { width:6px; }
.services_show_sidebar::-webkit-scrollbar-thumb { background:#c6ccd8; }

/* 手机端下拉的触发条 */
.services_show_trigger { display:none; }
.services_show_trigger-icon { display:none; }

.services_show_menu li + li { margin-top:13px; }
.services_show_menu a { display:flex; align-items:center; justify-content:space-between; gap:14px; height:52px; padding:0 28px 0 52px; color:var(--primary); font-size:16px; transition:background var(--transition),color var(--transition); }
.services_show_menu a:hover,
.services_show_menu a.active { background:var(--soft-blue); font-weight:700; }
.services_show_menu-arrow { flex:0 0 auto; color:#c6ccd8; font-size:16px; transition:color var(--transition),transform var(--transition); }
.services_show_menu a:hover .services_show_menu-arrow,
.services_show_menu a.active .services_show_menu-arrow { color:var(--accent); transform:translateX(3px); }

/* 右侧：业务名称 + 业务简介 */
.services_show_content { padding:42px 64px 72px; background:var(--white); min-height: 640px;}
.services_show_content_head { margin-bottom:42px; padding-bottom:30px; border-bottom:1px solid var(--line); }
.services_show_content-title { position:relative; padding-left:18px; color:var(--primary); font-size:24px; font-weight:700; line-height:1.4; }
.services_show_content-title::before { position:absolute; top:50%; left:0; width:3px; height:28px; margin-top:-14px; background:var(--accent); content:""; }

.services_show_richtext { color:#667085; font-size:16px; line-height:1.9; text-align:justify; }
.services_show_richtext p { margin-bottom:18px; text-indent:2em; }
.services_show_richtext p strong { color:var(--primary); font-weight:700; }
.services_show_richtext h1,
.services_show_richtext h2,
.services_show_richtext h3,
.services_show_richtext h4,
.services_show_richtext h5,
.services_show_richtext h6 { margin-bottom:12px; color:var(--primary); font-weight:700; font-size:20px; }
/* img 必须 block：否则行内元素的外边距不与段落合并、底部还会多出基线间隙 */
.services_show_richtext img { display:block; margin:40px 0; width:auto; max-width:100%; }
.services_show_richtext > *:last-child { margin-bottom:0; }

/* 业务领域 */
@media (max-width: 1080px) {
    .services_practice-grid { grid-template-columns:repeat(2, minmax(0,1fr)); }

    .services_show_layout { grid-template-columns:minmax(0,1fr); gap:24px; }
    .services_show_sidebar { position:sticky; top:var(--header-height); z-index:20; max-height:none; overflow:visible; padding:0; box-shadow:0 6px 18px rgba(10,43,94,0.06); }
    .services_show_trigger { position:relative; z-index:31; display:flex; width:100%; height:52px; align-items:center; justify-content:space-between; gap:14px; padding:0 20px; color:var(--primary); background:var(--white); border:0; font-family:inherit; font-size:16px; font-weight:700; text-align:left; cursor:pointer; }
    .services_show_trigger-icon { display:block; flex:0 0 auto; width:14px; height:14px; color:var(--accent); transition:transform var(--transition); }
    .services_show_trigger-icon svg { display:block; width:100%; height:100%; }
    .services_show_sidebar.open .services_show_trigger-icon { transform:rotate(180deg); }

    .services_show_menu { position:absolute; top:100%; right:0; left:0; z-index:30; display:none; max-height:60vh; overflow-y:auto; padding:6px 0 10px; background:var(--white); box-shadow:0 20px 40px rgba(10,43,94,0.16); }
    .services_show_sidebar.open .services_show_menu { display:block; }
    .services_show_menu li + li { margin-top:0; }
    .services_show_menu a { height:48px; padding:0 22px; font-size:15px; }
    .services_show_menu-arrow { display:none; }

    .services_show_content { padding:34px 36px 50px; }
}
@media (max-width: 760px) {
    .services_practice-grid { grid-template-columns:minmax(0,1fr); }
    .services_practice-card { min-height:250px; }

    .services_show_section { padding:56px 0 60px; }
    .services_show_layout { gap:18px; }
    .services_show_content { padding:26px 22px 34px; }
    .services_show_content_head { margin-bottom:32px; padding-bottom:24px; }
    .services_show_content-title { padding-left:14px; font-size:20px; }
    .services_show_content-title::before { height:22px; margin-top:-11px; }
    .services_show_richtext { font-size:15px; line-height:1.85; }
    .services_show_richtext img { margin:26px 0; }
}

/* ==========三法网络 ============ */

.office_hero { padding:calc(var(--header-height) + 70px) 0 159px; background-position:center; background-size:cover; }
.office_hero .page-hero-overline {}

.office_section { padding:114px 0 116px; background:var(--page-bg); }

/* 分所卡片网格 */
.office_grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:36px 28px; }

.office_card { display:block; background:var(--white); transition:box-shadow var(--transition),transform var(--transition); }
.office_card-thumb { aspect-ratio:16/10; overflow:hidden; background:var(--soft-blue); }
.office_card-thumb img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; }

.office_card-body { padding:30px 30px; }
.office_card-title { color:var(--primary); font-size:22px; font-weight:700; line-height:1.5; transition:color var(--transition); }
.office_card-meta { margin-top:21px; color:#667085; font-size:14px; line-height:30px; }
.office_card-meta li { display:flex; align-items:flex-start; line-height: 1.6; margin-bottom: 12px; gap:8px;}
.office_card-meta li:last-child { margin-bottom:0; }
.office_card-meta-label { flex:0 0 auto; width: 24px; height: 24px; background:#f7f8fc; border-radius: 50%; display: grid; place-items: center;}
.office_card-meta-value { flex:1 1 auto; min-width:0; overflow-wrap:break-word;letter-spacing: .6px;}

.office_card:hover { box-shadow:0 18px 44px rgba(10,43,94,0.10); transform:translateY(-4px); }
.office_card:hover .office_card-thumb img { transform:scale(1.05); }
.office_card:hover .office_card-title { color:var(--secondary); }

/* ---------- 合作伙伴 ---------- */
.office_partners { padding:100px 0 100px; background:var(--white); border-radius: 4px;}

.office_partners-head { margin-bottom:54px; }
.office_partners .section-title { font-size:38px; font-weight:500; }

.office_partner-grid { display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:24px; }

.office_partner { display:flex; flex-direction:column; align-items:center; gap:18px; padding:30px 22px 24px; border:1px solid var(--line); background:var(--white); transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition); }

.office_partner-logo { display:flex; width:100%; height:86px; align-items:center; justify-content:center; }
.office_partner-logo img { width:100%; height:100%; object-fit:contain; transition:filter var(--transition), opacity var(--transition); }
.office_partner-name { color:var(--primary); font-size:15px; font-weight:600; line-height:1.5; text-align:center; transition:color var(--transition); }

.office_partner:hover { border-color:var(--accent); box-shadow:0 14px 34px rgba(10,43,94,0.10); transform:translateY(-4px); }
.office_partner:hover .office_partner-logo img { filter:grayscale(0); opacity:1; }
.office_partner:hover .office_partner-name { color:var(--secondary); }

/* 三法网络 */
@media (max-width: 1080px) {
    .office_grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
    .office_partner-grid { grid-template-columns:repeat(4, minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .office_hero { padding:calc(var(--header-height) + 40px) 0 96px; }
    .office_section { padding:56px 0 60px; }
    .office_grid { grid-template-columns:minmax(0,1fr); gap:20px; }
    .office_card-body { padding:26px 22px 30px; }
    .office_card-title { font-size:18px; }
    .office_card-meta { margin-top:16px; font-size:14px; line-height:26px; }

    .office_partners { padding:0 0 60px; }
    .office_partners-head { margin-bottom:32px; }
    .office_partners .section-title { font-size:26px; }
    .office_partner-grid { grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; }
    .office_partner { gap:12px; padding:20px 14px 16px; }
    .office_partner-logo { height:56px; }
    .office_partner-name { font-size:13px; }
}
@media (max-width: 480px) {
    .office_partner-grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
}

/* ---------- 分所详情 ---------- */
.office_show_section { padding:90px 0; background:var(--page-bg); }

.office_show_layout { display:grid; grid-template-columns:266px minmax(0,1fr); gap:36px; align-items:start; }

.office_show_sidebar { position:sticky; top:calc(var(--header-height) + 24px); max-height:calc(100vh - var(--header-height) - 48px); overflow-y:auto; padding:29px 0 42px; background:var(--white); scrollbar-width:thin; scrollbar-color:#c6ccd8 transparent; }
.office_show_sidebar::-webkit-scrollbar { width:6px; }
.office_show_sidebar::-webkit-scrollbar-thumb { background:#c6ccd8; }
.office_show_menu li + li { margin-top:13px; }
.office_show_menu a { display:flex; align-items:center; justify-content:space-between; gap:14px; height:52px; padding:0 28px 0 52px; color:var(--primary); font-size:16px; transition:background var(--transition),color var(--transition); }
.office_show_menu a:hover,
.office_show_menu a.active { background:var(--soft-blue); font-weight:700; }
.office_show_menu-arrow { flex:0 0 auto; color:#c6ccd8; font-size:16px; transition:color var(--transition),transform var(--transition); }
.office_show_menu a:hover .office_show_menu-arrow,
.office_show_menu a.active .office_show_menu-arrow { color:var(--accent); transform:translateX(3px); }

/* 手机端下拉的触发 */
.office_show_trigger { display:none; }
.office_show_trigger-icon { display:none; }

/* 当前分所 */
.office_show_content { padding:42px 64px 72px; background:var(--white); }
.office_show_head { margin-bottom:34px; padding-bottom:30px; border-bottom:1px solid var(--line); }
.office_show_title { position:relative; padding-left:18px; color:var(--primary); font-size:24px; font-weight:700; line-height:1.4; }
.office_show_title::before { position:absolute; top:50%; left:0; width:3px; height:28px; margin-top:-14px; background:var(--accent); content:""; }

.office_show_info { display:grid; gap:14px; padding:26px 32px; border:1px solid #ead67b; background:#fdfae9; border-radius: 4px; margin-top: 60px;}
.office_show_info-item { display:flex; align-items:flex-start; gap:14px; font-size:15px; line-height:1.7; }
.office_show_info-label { flex:0 0 auto; color:#a48800; font-weight:600; }
.office_show_info-value { flex:1 1 auto; min-width:0; color:var(--primary); overflow-wrap:break-word; }

.office_show_block { margin-top:48px; }
.office_show_block-title { position:relative; padding-left:13px; color:var(--primary); font-size:18px; font-weight:700; line-height:1.5; }
.office_show_block-title::before { position:absolute; top:50%; left:0; width:3px; height:20px; margin-top:-10px; background:var(--accent); content:""; }

.office_show_richtext { margin-top:20px; color:#667085; font-size:16px; line-height:1.9; text-align:justify; }

.office_show_richtext h1,
.office_show_richtext h2,
.office_show_richtext h3,
.office_show_richtext h4,
.office_show_richtext h5,
.office_show_richtext h6 {
    margin-bottom:18px; margin-left: 2em; color: var(--primary);
}

.office_show_richtext p { margin-bottom:18px; text-indent:2em; }
.office_show_richtext img { display:block; margin:40px 0; }
.office_show_richtext > *:last-child { margin-bottom:0; }

.office_show_gallery { margin-top:22px; }
.office_show_gallery-swiper .swiper-slide { aspect-ratio:16 / 10; background:var(--page-bg); }
.office_show_gallery-swiper .swiper-slide img { display:block; width:100%; height:100%; object-fit:cover; }

/* 左右按钮 */
.office_show_gallery-nav { position:absolute; top:50%; z-index:3; display:grid; width:40px; height:40px; margin-top:-20px; padding:0; place-items:center; color:var(--primary); background:rgba(255,255,255,0.94); border:1px solid var(--line); border-radius:50%; box-shadow:0 4px 14px rgba(10,43,94,0.14); cursor:pointer; transition:color var(--transition),background var(--transition),border-color var(--transition),opacity var(--transition); }
.office_show_gallery-nav svg { display:block; width:16px; height:16px; }
.office_show_gallery-nav:hover { color:var(--white); background:var(--accent); border-color:var(--accent); }
.office_show_gallery-nav--prev { left:16px; }
.office_show_gallery-nav--next { right:16px; }
.office_show_gallery-nav.is-disabled { opacity:0.32; pointer-events:none; }

.office_show_gallery-pagination { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:22px; }
.office_show_gallery-pagination .swiper-pagination-bullet { width:42px; height:4px; margin:0; border-radius:0; background:rgba(10,43,94,0.18); opacity:1; transition:background var(--transition); }
.office_show_gallery-pagination .swiper-pagination-bullet-active { background:var(--accent); }

@media (max-width: 1080px) {
    .office_show_layout { grid-template-columns:minmax(0,1fr); }
    .office_show_sidebar { position:sticky; top:var(--header-height); z-index:20; max-height:none; overflow:visible; padding:0; box-shadow:0 6px 18px rgba(10,43,94,0.06); }
    .office_show_trigger { position:relative; z-index:31; display:flex; width:100%; height:52px; align-items:center; justify-content:space-between; gap:14px; padding:0 20px; color:var(--primary); background:var(--white); border:0; font-family:inherit; font-size:16px; font-weight:700; text-align:left; cursor:pointer; }
    .office_show_trigger-icon { display:block; flex:0 0 auto; width:14px; height:14px; color:var(--accent); transition:transform var(--transition); }
    .office_show_trigger-icon svg { display:block; width:100%; height:100%; }
    .office_show_sidebar.open .office_show_trigger-icon { transform:rotate(180deg); }

    .office_show_menu { position:absolute; top:100%; right:0; left:0; z-index:30; display:none; max-height:60vh; overflow-y:auto; padding:6px 0 10px; background:var(--white); box-shadow:0 20px 40px rgba(10,43,94,0.16); }
    .office_show_sidebar.open .office_show_menu { display:block; }
    .office_show_menu li + li { margin-top:0; }
    .office_show_menu a { height:48px; padding:0 22px; font-size:15px; }
    .office_show_menu-arrow { display:none; }

    .office_show_content { padding:34px 36px 50px; }
}
@media (max-width: 760px) {
    .office_show_section { padding:56px 0 60px; margin-bottom: 40px;}
    
    .office_show_content { padding:26px 22px 34px; }
    .office_show_title { font-size:20px; }
    .office_show_info { gap:12px; padding:20px 18px; }
    .office_show_info-item { font-size:14px; }
    .office_show_block { margin-top:34px; }
    .office_show_richtext { font-size:15px; }
    .office_show_gallery-nav { width:34px; height:34px; margin-top:-17px; }
    .office_show_gallery-nav--prev { left:10px; }
    .office_show_gallery-nav--next { right:10px; }
    .office_show_gallery-pagination { margin-top:16px; }
}

/* ==========专业人员（team_list.html）============ */

.team_hero { padding:calc(var(--header-height) + 70px) 0 127px; background-position:center; background-size:cover; }
.team_hero .page-hero-overline {}


.team_section { display:flow-root; padding:0 0 103px; background:var(--page-bg); }


.team_search { position:relative; z-index:3; margin-top:-44px; padding:42px 0; background:var(--white); box-shadow:0 14px 40px rgba(10,43,94,0.10); }
.team_search-inner { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:32px; }
.team_search-field { position:relative; flex:0 1 192px; }
.team_search-select,
.team_search-input { width:100%; height:42px; padding:0 34px 0 19px; border:1px solid var(--accent); border-radius:0; background:var(--white); color:var(--text-secondary); font-family:inherit; font-size:14px; line-height:42px; outline:none; appearance:none; -webkit-appearance:none; }
.team_search-input { padding-right:19px; }
.team_search-select:focus,
.team_search-input:focus { border-color:var(--secondary); }

.team_search-chevron { position:absolute; top:50%; right:12px; width:12px; height:6px; margin-top:-3px; color:#6b6f78; pointer-events:none; }
.team_search-button { flex:0 0 103px; width:103px; height:42px; background:var(--accent); color:var(--white); font-size:15px; transition:background var(--transition); }
.team_search-button:hover { background:#a68b55; }

.team_grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:38px 28px; margin-top:101px; }

.team_card { display:block; }
.team_card-photo { position:relative; aspect-ratio:2/3; overflow:hidden; background:var(--soft-blue); border-radius: 6px;}
.team_card-photo::after { position:absolute; inset:0; background:linear-gradient(to top,rgba(30,77,140,0.98),transparent 70%); content:""; }
.team_card-photo img { width:100%; height:100%; object-fit:cover; object-position:center top; filter:saturate(0.82); transition:transform 0.6s ease,filter 0.6s ease; }
.team_card:hover .team_card-photo img { filter:saturate(1); transform:scale(1.06); }
.team_card-info { position:absolute; left:0; right:0; bottom:0; z-index:2; padding:0 21px 18px; line-height:1.4; }
.team_card-name { color:var(--white); font-size:21px; font-weight:600; }
.team_card-position { margin-left:10px; color:rgba(255,255,255,0.85); font-size:14px; font-weight:500; }
.team_card-position i { margin-right:10px; font-style:normal; }

.team_card-info > div:has(.team_card-position) { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.team_card-field { color:rgba(255,255,255,0.75); font-size:15px; line-height:1.75; -webkit-box-orient: vertical; -webkit-line-clamp: 1; display: -webkit-box; overflow: hidden;}

.team_section .pagination { margin-top:87px; gap:8px; }
.team_section .page-button { border-color:transparent; }

@media (max-width: 1280px) {
    .team_search-inner { gap:20px; }
    .team_search-field { flex:1 1 176px; }
}

@media (max-width: 1080px) {
    .team_section { padding-bottom:76px; }
    .team_search { margin-top:-34px; padding:30px 0; }
    .team_search-field,
    .team_search-button { flex:1 1 calc(50% - 10px); width:auto; }
    .team_grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 20px; margin-top:72px; }
    .team_card-info { padding:0 18px 16px; }
    .team_card-name { font-size:18px; }
    .team_card-position { margin-left:8px; font-size:13px; }
    .team_card-field { font-size:14px; }
    .team_section .pagination { margin-top:60px; }
}

@media (max-width: 760px) {
    .team_hero { padding:calc(var(--header-height) + 40px) 0 96px; }
    .team_section { padding-bottom:56px; }
    .team_search { margin-top:-28px; padding:10px; }
    .team_search-field,
    .team_search-button { width: 50%;}
    .team_grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 14px; margin-top:44px; }
    .team_card-info { padding:0 14px 12px; }
    .team_card-name { font-size:16px; }
    .team_card-position { margin-left:6px; font-size:12px; }
    .team_card-position i { margin-right:6px; }
    .team_card-field { font-size:13px; }
    .team_section .pagination { margin-top:44px; }
}

/* ==========专业人员详情============ */
.team_show_section { padding:107px 0 116px; background:var(--page-bg); }

.team_show_card {
    display:grid;
    grid-template-columns:370px minmax(0,1fr);
    gap:100px;
    align-items:start;
    padding:70px 80px 110px 70px;
    background:var(--white);
}

.team_show_media { min-width:0; }
.team_show_photo { aspect-ratio:370 / 561; overflow:hidden; border-radius:6px; background:var(--soft-blue); }
.team_show_photo img { width:100%; height:100%; object-fit:cover; object-position:center top; }

.team_show_actions { display:flex; align-items:center; gap:20px; margin-top:33px; }
.team_show_action {
    display:flex; align-items:center; justify-content:center;
    height:56px; padding:0; border:0; cursor:pointer;
    background:#f7f8fc; color:var(--primary);
    transition:background-color .3s ease;
}
.team_show_action:hover { background:var(--soft-blue); }
.team_show_action--download { width:56px; border-radius:50%; }

.team_show_action--share { gap:19px; padding:0 38px; border-radius:28px; font-size:14px; }
.team_show_action svg { flex:0 0 auto; }

.team_show_share { position:relative; display:flex; }

.team_show_qr {
    position:absolute; left:50%; bottom:calc(100% + 14px); z-index:10;
    width:176px; margin-left:-88px; padding:12px;
    background:var(--white); border:1px solid var(--line);
    box-shadow:0 12px 32px rgba(10,43,94,0.14);
    opacity:0; visibility:hidden; transform:translateY(6px);
    transition:opacity .25s ease, transform .25s ease, visibility 0s linear .25s;
}

.team_show_qr::after {
    content:""; position:absolute; left:50%; bottom:-6px; margin-left:-6px;
    width:11px; height:11px;
    background:var(--white);
    border-right:1px solid var(--line); border-bottom:1px solid var(--line);
    transform:rotate(45deg);
}

.team_show_share.open .team_show_qr { opacity:1; visibility:visible; transform:translateY(0); transition-delay:0s; }

@media (hover: hover) {
    .team_show_share:hover .team_show_qr { opacity:1; visibility:visible; transform:translateY(0); transition-delay:0s; }
}

.team_show_qr img { display:block; aspect-ratio:1 / 1; object-fit:contain; }
.team_show_qr-caption { margin:8px 0 0; font-size:13px; line-height:1.5; color:var(--text-secondary); text-align:center; }

.team_show_content { min-width:0; }
.team_show_head { display:flex; align-items:baseline; flex-wrap:wrap; gap:27px; margin-bottom:35px;}
.team_show_name { font-size:28px; font-weight:700; line-height:1.4; color:var(--primary); letter-spacing: 2px;}
.team_show_position { font-size:16px; color:var(--text-secondary); }

.team_show_info-item { font-size:16px; line-height:32px;  margin-bottom: 10px; text-align: justify; color: #586783;}
.team_show_info-item strong { font-weight: normal; color:var(--primary);}

.team_show_block { margin-top:54px; padding-top:38px; border-top:1px solid var(--line); }
.team_show_info + .team_show_block { margin-top:38px; }
.team_show_block-title {
    position:relative; padding-left:18px;
    font-size:18px; font-weight:700; line-height:1.5; color:var(--primary);
}

.team_show_block-title::before {
    content:""; position:absolute; left:0; top:50%; margin-top:-10.5px;
    width:3px; height:21px; background:var(--accent);
}
.team_show_richtext { margin-top:26px; font-size:16px; color:var(--text-secondary); text-align:justify; }
.team_show_richtext p { margin:0; margin-bottom: 15px; line-height:30px; }
.team_show_richtext > *:last-child { margin-bottom:0; }

@media (max-width: 1280px) {
    .team_show_card { grid-template-columns:320px minmax(0,1fr); gap:64px; padding:60px 56px 84px; }
}

@media (max-width: 1080px) {
    .team_show_section { padding:80px 0 88px; }
    .team_show_card { grid-template-columns:minmax(0,1fr); gap:40px; padding:48px 40px 60px; }
    .team_show_media { max-width:320px; }
}

@media (max-width: 760px) {
    .team_show_section { padding:56px 0 60px; }
    .team_show_card { gap:32px; padding:30px 22px 40px; }
    .team_show_media { width:65%; min-width:200px; max-width:320px; margin:0 auto; }
    .team_show_actions { flex-wrap:wrap; justify-content:center; gap:14px; margin-top:22px; }
    .team_show_action { height:48px; }
    .team_show_action--download { width:48px; }
    .team_show_action--share { gap:12px; padding:0 22px; border-radius:24px; font-size:13px; }
    .team_show_head { gap:14px; margin-bottom:20px; }
    .team_show_name { font-size:24px; }
    .team_show_position { font-size:15px; }
    .team_show_info-item { font-size:15px; line-height:34px; }
    .team_show_block { margin-top:38px; padding-top:26px; }
    .team_show_info + .team_show_block { margin-top:28px; }
    .team_show_block-title { padding-left:14px; font-size:17px; }
    .team_show_block-title::before { height:18px; margin-top:-9px; }
    .team_show_richtext { margin-top:16px; font-size:15px; line-height:30px; }
}

/* ============公共页脚============== */
.footer { color:var(--white); background:#131313;}
.footer_content { display:grid; grid-template-columns:0.6fr 1.4fr; gap:100px; padding:90px 0 75px;}

.footer_logo { max-width:400px;}
.footer_logo img { width:80%; height:auto; }
.footer_logo p {  margin-top:25px; color:rgba(255,255,255,0.58); line-height:2; font-size: 14px;}

.footer_details { display:grid; grid-template-columns:0.4fr 1.3fr 1.2fr; gap:26px;}
.footer_details ul h4 { margin-bottom:26px; color:rgba(255,255,255,1)}
.footer_details ul li,
.footer_details ul dd {margin-bottom:6px; color:rgba(255,255,255,0.7); font-size:14px;line-height:1.8;}

.footer_details ul dl {display: flex; flex-wrap: wrap;}
.footer_details ul dl dd {width: 50%;}

.footer_details ul a { color:rgba(255,255,255,0.7);}
.footer_details ul a:hover { color:rgba(255,255,255,0.9);}

.footer_qrcode { width: 40%; height: auto; border-radius: 4px; margin-top: 20px;}

.footer_copy { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:28px 0; border-top:1px solid rgba(255,255,255,0.1); color:rgba(255,255,255,0.4); font-size:15px; letter-spacing: .5px;}
.footer_copy a:hover {color:var(--white);}
.footer_website { color:rgba(255,255,255,0.2); letter-spacing: 0;}

@media (max-width: 1080px) {
    .footer_content { grid-template-columns:1fr; gap:30px; padding: 40px 20px;}
    .footer_details { padding-top:40px; padding-left:0; border-top:1px solid rgba(255,255,255,0.15); grid-template-columns: 1fr;}
    .footer_details ul:nth-child(1),
    .footer_details ul:nth-child(2) { display: none;}
}

@media (max-width: 760px) {
    .footer_copy { display:block; font-size: 12px;}
}