@charset "utf-8";

/* ================================================================
   品牌色体系 —— 墨绿+香槟金，统一收敛为三级色板
   ================================================================ */
:root {
    /* 墨绿主色系 */
    --color-primary:      #097168;   /* 主色：按钮、标签、链接、图标 */
    --color-primary-dark: #054a44;   /* 深色：Footer、导航渐变、深色基底 */
    --color-primary-deep: #0d3b30;   /* 点缀深色：部分标题、理想板块背景 */
    /* 金色辅助系 */
    --color-gold:         #d4af6e;   /* 主金色：装饰、图标点缀 */
    --color-gold-light:   #f0d78c;   /* 亮金：hover、导航 active */
    --color-gold-pale:    #f5ead0;   /* 浅金：文字高亮、按钮文字 */
    /* 文字色 */
    --color-title:        #1a1a1a;   /* 标题 */
    --color-body:         #666;      /* 正文 */
    --color-muted:        #888;      /* 辅助信息 */
    /* 背景色 */
    --bg-warm:            #faf8f4;   /* 暖白 */
    --bg-light:           #f8faf9;   /* 微绿白 */
    --bg-white:           #fff;      /* 纯白 */
    --bg-footer:          #054a44;   /* Footer 深色 */
}

/* ══════════════════════════════════════════════════════��?   导航��?- 高端美妆品牌风格 (参��?Lancôme/Estée Lauder/SK-II)
   设计特点：透明渐变→毛玻璃悬浮、微动效、Mega Menu
   ══════════════════════════════════════════════════════��?*/

/* ── 导航容器 ── */
.top {
    width: 100%;
    /* height: 80px; */
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    background: linear-gradient(180deg, rgba(5, 42, 38, 0.92) 0%, rgba(6, 61, 55, 0.85) 100%);
}
.topitem {
    width: 100%;
    height: auto;
    position: relative;
}
.head {
    width: 100%;
}

/* ── Logo 区域 ── */
.logo {
    width: 200px;
    height: 100px;
    display: flex;
    align-items: center;
    transition: all 0.4s ease;
}
.logo a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.logo img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: 48px;
    width: auto;
    object-fit: contain;
    transition: all 0.4s ease;
    filter: brightness(1) drop-shadow(0 2px 8px rgba(0,0,0,0.15));
}

/* ── 导航右侧区域（居中布局，大气留白）── */
.head_r {
    flex: 1;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 0 30px;         /* 给搜索留出右侧空��?*/
}

/* ── 主导航链接（单行不换行，文字+下划线垂直居中）── */
.nav > ul {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    height: 80px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.nav > ul > li {
    position: relative;
    margin: 0 6px;
}
.nav > ul > li > a {
    font-size: 17px;
    color: #ffffff;
    padding: 0 16px;
    display: block;
    position: relative;
    font-weight: 400;
    letter-spacing: 2px;
    text-decoration: none;
    transition: color 0.3s ease;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
/* hover 下划线动效：从中心向两边展开 */
.nav > ul > li > a::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 50%;
    transform: translateX(-50%) scaleX(0);
    width: 22px;
    height: 2px;
    background: linear-gradient(90deg, #d4a853, #f0d78c);
    border-radius: 1px;
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.nav > ul > li:hover > a::after,
.nav > ul > li.active > a::after {
    transform: translateX(-50%) scaleX(1);
}
.nav > ul > li:hover > a {
    color: #ffffff;
    font-weight: 500;
}
.nav > ul > li.active > a {
    color: #f0d78c !important;
    font-weight: 600;
    text-shadow: 0 0 12px rgba(240, 215, 140, 0.25);
}
.nav > ul > li.active > a::after {
    width: 38px;
    height: 2.5px;
    background: linear-gradient(90deg, #d4a853, #f0d78c);
    box-shadow: 0 0 8px rgba(212, 168, 83, 0.35);
    border-radius: 2px;
}

/* ── Mega Menu 下拉菜单（宽幅大气，高端品牌感）── */
.ernav {
    position: absolute;
    top: 80px;
    left: 50%;
    transform: translateX(-50%);
    width: 860px;
    min-height: 300px;
    padding: 40px 50px 36px;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(28px) saturate(200%);
    -webkit-backdrop-filter: blur(28px) saturate(200%);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.14), 0 2px 4px rgba(0, 0, 0, 0.04);
    border-radius: 0 0 18px 18px;
    border-top: 1px solid rgba(212, 168, 83, 0.15);
    z-index: 99;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-50%) translateY(-10px);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
/* 关键修复：ernav 内的 con1400 必须收窄，否��?1400px 撑破 860px 容器 */
.ernav > .con1400 {
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto;
}
.nav > ul > li:hover > .ernav {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}
/* 覆盖 flexrow ��?wrap + center，子菜单内左列右列顶部对��?*/
.ernav .ernavitem {
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 50px;
}
.ernav_l { flex: 1; min-width: 0; }
.ernav_r {
    width: 260px;
    flex-shrink: 0;
    text-align: right;
    border-radius: 12px;
    overflow: hidden;
}
.ernav_r img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    border-radius: 12px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
    transition: transform 0.5s ease;
}
.ernav_r:hover img { transform: scale(1.04); }
.ernav_r p { display: none; }
.ernav_l h3 {
    font-size: 19px;
    color: #1a1a1a;
    font-weight: 700;
    margin-bottom: 6px;
    letter-spacing: 0.6px;
    position: relative;
    padding-bottom: 12px;
}
.ernav_l h3::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 28px;
    height: 2px;
    background: linear-gradient(90deg, #d4a853, #f0d78c);
    border-radius: 1px;
}
.ernav_l h3 i { display: none; }
.ernav_l h3 span {
    font-size: 13px;
    font-weight: 400;
    color: #888;
    margin-left: 8px;
}
.ernav_l > p {
    font-size: 13px;
    color: #999;
    margin-bottom: 18px;
    margin-top: 8px;
    line-height: 1.6;
}
.ernav_l ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0;
}
.ernav_l ul li { list-style: none; }
.ernav_l ul li a {
    display: block;
    padding: 11px 18px;
    background: rgba(5, 74, 68, 0.03);
    border: 1px solid rgba(5, 74, 68, 0.06);
    color: #444;
    font-size: 14px;
    border-radius: 8px;
    transition: all 0.3s ease;
    font-weight: 400;
    letter-spacing: 0.4px;
    text-decoration: none;
}
.ernav_l ul li a:hover {
    background: linear-gradient(135deg, #054a44 0%, #097168 100%);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(5, 74, 68, 0.25);
}

/* ── 搜索/语言切换（绝对定位到导航栏最右侧）── */
.top_r {
    position: absolute;
    right: 0;
    top: 0;
    height: 80px;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* ── 搜索功能 ── */
.top_lang {
    position: relative;
    height: 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    cursor: pointer;
}
.langitem {
    position: absolute;
    width: 110px;
    height: auto;
    background-color: #ffffff;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    left: 50%;
    margin-left: -55px;
    top: 80px;
    text-align: center;
    display: none;
    z-index: 9;
    border-radius: 10px;
    overflow: hidden;
}
.langitem a {
    padding: 8px 10px;
    display: block;
    transition: background 0.2s;
}
.langitem a:hover { background-color: #f5f5f5; }
.langitem a img {
    height: 20px;
}
.langitem a span {
    font-size: 14px;
    color: #333333;
}
.top_lang:hover .langitem {
    display: block;
}

/* ── 搜索图标 + 全屏搜索 ── */
.top_search {
    margin-left: 24px;
    margin-right: 4px;
}
.top_searchico {
    cursor: pointer;
    width: 22px;
    height: 22px;
    opacity: 0.85;
    transition: all 0.3s ease;
    filter: brightness(0) invert(1);
}
.top_searchico:hover {
    opacity: 1;
    transform: scale(1.1);
}
.searchitem {
    position: fixed;
    width: 100vw;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    left: 0;
    top: 0;
    display: none;
    z-index: 99999;
    animation: searchFadeIn 0.35s ease forwards;
}
@keyframes searchFadeIn {
    from { opacity: 0; transform: translateY(-20px); }
    to   { opacity: 1; transform: translateY(0); }
}
.searchform {
    justify-content: center;
    height: 80px;
}
.searchform input {
    width: 60%;
    height: 48px;
    border: none;
    border-bottom: 2px solid #e0e0e0;
    padding-left: 16px;
    font-size: 15px;
    color: #333;
    background: transparent;
    border-radius: 0;
    transition: border-color 0.3s ease;
    letter-spacing: 0.5px;
}
.searchform input:focus {
    outline: none;
    border-bottom-color: #054a44;
}
.searchform input::placeholder {
    color: #bbb;
}
.searchform button {
    width: auto;
    padding: 0 28px;
    height: 48px;
    border: none;
    background: linear-gradient(135deg, #054a44, #097168);
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    border-radius: 24px;
    margin-left: 16px;
    transition: all 0.3s ease;
    letter-spacing: 2px;
}
.searchform button:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(5, 74, 68, 0.35);
}
.searchclose img {
    width: 20px;
    margin-left: 20px;
    filter: brightness(0) grayscale(100%);
    opacity: 0.45;
    cursor: pointer;
    transition: opacity 0.2s;
}
.searchclose img:hover { opacity: 0.75; }

/* ── 滚动后悬浮导航状态（毛玻璃效果）── */
.fixednav {
    height: 80px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    box-shadow: 0 2px 30px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.05);
}
.fixednav .logo {
    height: 80px !important;
}
.fixednav .logo img {
    max-height: 40px;
    filter: brightness(0) drop-shadow(0 1px 4px rgba(0,0,0,0.1));
}
/* 悬浮后导航文字变深色 */
.fixednav .head_r {
    height: 80px !important;
}
.fixednav .nav > ul {
    height: 80px !important;
}
.fixednav .nav > ul > li > a {
    color: #1a1a1a !important;
    font-weight: 400;
}
.fixednav .nav > ul > li > a::after {
    bottom: -3px !important;
    background: linear-gradient(90deg, #054a44, #097168) !important;
}
.fixednav .nav > ul > li.active > a {
    color: #054a44 !important;
    font-weight: 600;
    text-shadow: none;
}
.fixednav .nav > ul > li.active > a::after {
    width: 38px;
    height: 2.5px;
    background: linear-gradient(90deg, #054a44, #097168) !important;
    box-shadow: 0 0 8px rgba(5, 74, 68, 0.3);
    border-radius: 2px;
}
.fixednav .top_r {
    height: 80px !important;
}
.fixednav .top_lang {
    height: 80px !important;
}
/* 悬浮后搜索图标变��?*/
.fixednav .top_searchico {
    filter: brightness(0);
    opacity: 0.6;
}
.fixednav .top_searchico:hover { opacity: 1; }
/* 悬浮状态下下拉菜单位置调整 */
.fixednav .ernav {
    top: 80px !important;
}

/* banner */
.banner_img {
    width: 100%;
    height: auto;
}
.banner_video {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}
.banner_pag .swiper-pagination-bullet {
    width: 40px;
	height: 4px;
    border-radius: 0px;
    opacity: 1;
	background-color: #ffffff;
    margin: 0px 6px !important;
}
.banner_pag .swiper-pagination-bullet-active {
    background-color: #d4af6e;
}
.bannerswiper .swiper-slide {
    position: relative;
}
.banner_desc {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: center;
    z-index: 2;
}
.banner_desc h2 {
    font-size: 56px;
    font-weight: bold;
	color: #ffffff;
}
.banner_desc p {
	font-size: 20px;
	color: #ffffff;
    padding-top: 15px;
}

/* 首页内容��?*/
.idx_item {
    padding: 80px 0 0;
}
.idx_titles {
    padding-bottom: 80px;
    text-align: center;
}
.idx_titles h3 {
	font-size: 48px;
	color: #1a1a1a;
}
.idx_pros ul li {
    height: 300px;
}
.idx_pros ul li a {
    width: 100%;
    height: 100%;
    display: block;
    overflow: hidden;
    position: relative;
    transition: all .5s;
}
.idx_pros ul li a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.idx_pros ul li:hover a {
    box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
}
.idx_pros ul li:hover a img {
    transform: scale(1.07);
}
.idx_pros_desc {
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 110px;
    background-color: rgba(9,113,104,0.6);
    text-align: center;
    justify-content: center;
    padding: 20px;
    transition: all .5s;
}
.idx_pros_desc h3 {
    font-size: 20px;
    color: #ffffff;
    line-height: 30px;
}
.idx_pros ul li:hover .idx_pros_desc {
    height: 100%;
    background-color: rgba(0,0,0,0.5);
}
.idxpros_more {
    width: 280px;
	height: 72px;
    margin: 60px auto 0px;
}
.idxpros_more a {
    font-size: 16px;
    text-align: center;
    display: block;
    line-height: 70px;
	color: #1a1a1a;
	background-color: #e5e5e5;
}
.idxpros_more a:hover {
    background-color: #097168;
    color: #ffffff;
} 

/* 解决方案 */
.idx_fa {
    width: 100%;
    height: 550px;
    overflow: hidden;
    position: relative;
}
.idx_fa ul li {
    width: 50vw;
    height: 100%;
    background: url(../images/idxfaimg1.jpg) no-repeat left center;
    background-size: cover;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 1;
    transition: all .5s;
}
.idx_fa ul li:nth-child(2) {
    background-image: url(../images/idxfaimg2.jpg);
    left: 50%;
    top: 0px;
    z-index: 2;
}
.idx_fa ul li:nth-child(3) {
    background-image: url(../images/idxfaimg3.jpg);
    left: 75%;
    top: 0px;
    z-index: 3;
}
.idxfa_title {
    padding: 0px 50px 120px;
    height: 100%;
    align-items: flex-end;
}
.idx_fadesc {
    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.4);
    padding: 13% 33% 0px 50px;
}
.idx_fadesc h3,.idxfa_title h3 {
    font-size: 28px;
	color: #ffffff;
}
.idx_fadesc p {
    font-size: 16px;
	line-height: 32px;
	color: #ffffff;
    text-align: justify;
    margin: 50px 0px 110px;
}
.idx_fadesc button {
    font-size: 16px;
	width: 120px;
	height: 34px;
	border: solid 1px #ffffff;
	line-height: 32px;
	color: #ffffff;
    background: none;
}
.idx_fadesc button:hover {
    background-color: #097168;
    border-color: #097168;
}
.idx_fa ul li.active .idxfa_title {
    display: none;
}
.idx_fa ul li.active .idx_fadesc {
    display: block;
}


/* 关于我们 */
.idx_about {
    background: url(../images/idxaboutbg.jpg) no-repeat center center;
    background-size: cover;
    padding-bottom: 100px;
    overflow: hidden;
}
/* 合作案例 */
.idx_hzitem {
    padding-bottom: 100px;
}
.idx_hezuo {
    position: relative;
}
.idxhz_swiper ul li a {
    width: 100%;
    height: 300px;
    overflow: hidden;
    display: block;
    position: relative;
}
.idxhz_swiper ul li a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.idxhz_title {
    position: absolute;
    width: 100%;
    height: auto;
    bottom: 30px;
    left: 0px;
    text-align: center;
}
.idxhz_title h3 {
    font-size: 18px;
	color: #ffffff;
}
.idxhz_swiper ul li:hover img {
    transform: scale(1.05);
}
.idx_hezuo .swiper-button-next, .idx_hezuo .swiper-button-prev {
    width: 50px;
	height: 50px;
    border-radius: 50%;
    border: 1px solid #e5e5e5;
}
.idx_hezuo .swiper-button-next {
    right: -60px;
}
.idx_hezuo .swiper-button-prev {
    left: -60px;
}
.idx_hezuo .swiper-button-next:after,.idx_hezuo .swiper-button-prev:after {
    font-size: 16px;
    font-weight: bold;
    color: #333333;
}
.idx_hezuo .swiper-button-next:hover , .idx_hezuo .swiper-button-prev:hover {
    background: #097168;
}
.idx_hezuo .swiper-button-next:hover:after , .idx_hezuo .swiper-button-prev:hover:after {
    color: #ffffff;
}

/* 新闻动��?*/
.idx_news {
    padding-bottom: 100px;
    background-color: #eeeeee;
}
.idxnews_img {
    width: 100%;
    height: 250px;
    overflow: hidden;
}
.idxnews_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.idxnews_desc {
    background-color: #ffffff;
    padding: 40px 30px;
    transition: all .5s;
}
.idxnews_desc h4 {
    font-size: 14px;
	color: #097168;
}
.idxnews_desc h3 {
    font-size: 20px;
	font-weight: bold;
    height: 64px;
	line-height: 32px;
    margin: 20px 0px;
    overflow: hidden;
	color: #1a1a1a;
}
.idxnews_desc p {
    font-size: 16px;
	line-height: 26px;
    overflow: hidden;
    height: 78px;
	color: #666666;
}
.idxnews_desc button {
    margin-top: 80px;
    background: none;
    border: 0px;
    font-size: 14px;
	color: #999999;
}
.idxnews_item:hover .idxnews_img img {
    transform: scale(1.05);
}
.idxnews_item:hover {
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
}
.idxnews_link a {
    width: 280px;
	height: 72px;
	background-color: #e5e5e5;
    font-size: 16px;
	color: #1a1a1a;
    text-align: center;
    line-height: 70px;
    display: block;
    margin: 60px auto 0;
    transition: all .5s;
}
.idxnews_link a:hover {
    background-color: #097168;
    color: #ffffff;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
}

/* 合作客户 */
.idx_kehu {
    padding-bottom: 130px;
}
.idxkehu_item {
    width: 100%;
    height: 240px;
    position: relative;
}
.idxkehu_item .swiper-slide {
    height: calc((100% - 30px) / 2);
}
.idxkh_simg {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
}
.idxkh_simg img {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
}
.idxkh_simg:hover {
    border: 1px solid #dedede;
}
.idxkh_spagination {
    width: 100%;
    text-align: center;
    bottom: -40px;
}
.idxkh_spagination .swiper-pagination-bullet {
    width: 40px;
	height: 4px;
    border-radius: 0px;
    margin: 0 6px !important;
}
.idxkh_spagination .swiper-pagination-bullet-active {
    background-color: #ffb900;
}
.idx_footmess {
    padding: 100px 0px;
    background-color: #1d1d1d;
    position: relative;
    overflow: hidden;
}
.idx_footmess_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse at 30% 50%, rgba(7,97,88,0.15) 0%, transparent 60%),
                radial-gradient(ellipse at 70% 50%, rgba(255,255,255,0.03) 0%, transparent 50%);
    pointer-events: none;
}
.idx_ftitles {
    text-align: center;
    position: relative;
    z-index: 1;
}
.idx_ftitles h3 {
    font-size: 48px;
    color: #ffffff;
    letter-spacing: 2px;
}
.idx_ftitles p {
    font-size: 20px;
    color: #999999;
    margin: 30px 0px 60px;
    letter-spacing: 1px;
}
.idx_fmess {
    width: 100%;
    position: relative;
    z-index: 1;
}
.idx_fform {
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
}
.idx_fform input:not([type="hidden"]) {
    width: 22%;
    height: 60px;
    padding-left: 25px;
    color: #ffffff;
    font-size: 16px;
    border: solid 1px rgba(255,255,255,0.25);
    background: rgba(255,255,255,0.06);
    border-radius: 0;
    transition: all 0.3s ease;
}
.idx_fform input:focus {
    border-color: #097168;
    background: rgba(255,255,255,0.12);
    outline: none;
}
.idx_fform input::placeholder {
    color: rgba(255,255,255,0.4);
}
.idx_fform input.idx_fform3 {
    width: 30%;
}
.idx_fform button {
    font-size: 16px;
    color: #ffffff;
    width: 18%;
    height: 60px;
    background-color: #097168;
    border: 0px;
    cursor: pointer;
    transition: all 0.3s ease;
    letter-spacing: 2px;
}
.idx_fform button:hover {
    background-color: #097168;
    box-shadow: 0 4px 20px rgba(7,97,88,0.4);
}
/* 底部（品牌区 + 栏目导航 + 联系区 + 版权） */
.foot {
    width: 100%;
    padding: 70px 0px 60px;
    background-color: #097168;
    background-image: linear-gradient(180deg, #097168 0%, #054a44 100%);
}
.foottop {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 45px;
    border-bottom: 1px solid rgba(255,255,255,0.14);
}
.footlogo {
    max-width: 620px;
    padding-right: 30px;
}
.footlogo a img {
    max-width: 155px;
    height: auto;
}
.foot_slogan {
    margin-top: 18px;
    font-size: 14px;
    line-height: 26px;
    color: #a9cfc5;
    letter-spacing: 1px;
}
.footlinks {
    text-align: right;
    flex-shrink: 0;
}
.foot_share_t {
    margin-bottom: 16px;
    font-size: 14px;
    color: #a9cfc5;
    letter-spacing: 2px;
}
/* 暂时隐藏底部「关注我们」社媒渠道（抖音/微信/QQ/小红书）——需恢复时删除下面这一行即可 */
.footlinks { display: none; }
.footlinks ul {
    position: relative;
}
.footlinks ul li {
    position: relative;
    margin-left: 15px;
}
.footlinks ul li a img.fewmico {
    height: 36px;
    opacity: 0.85;
    transition: opacity .25s ease, transform .25s ease;
}
.footlinks ul li a:hover img.fewmico {
    opacity: 1;
    transform: translateY(-2px);
}
.fewmimg {
    position: absolute;
    width: 150px;
    height: auto;
    background-color: #ffffff;
    border-radius: 6px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.25);
    bottom: 48px;
    left: 50%;
    margin-left: -75px;
    padding: 10px;
    display: none;
    z-index: 20;
}
.fewmimg img {
    width: 100%;
    border-radius: 4px;
}
.fewmimg p {
    text-align: center;
    color: #333333;
    font-size: 13px;
    font-weight: bold;
    padding: 8px 0 4px;
}
.footlinks ul li:hover .fewmimg {
    display: block;
}

.footmid {
    margin-top: 45px;
    align-items: flex-start;
    justify-content: space-between;
}
.footmid_l {
    align-items: flex-start;
    flex: 1;
}
.footcol {
    min-width: 150px;
    margin-right: 60px;
}
.footcol_t {
    margin-bottom: 22px;
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    letter-spacing: 1px;
    position: relative;
    padding-bottom: 12px;
}
.footcol_t::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 26px;
    height: 2px;
    background-color: #2fb9a8;
    border-radius: 2px;
}
.footcol_l li {
    line-height: 30px;
}
.footcol_l li a {
    font-size: 14px;
    line-height: 30px;
    color: #9cc8bb;
    transition: color .25s ease, padding-left .25s ease;
}
.footcol_l li a:hover {
    color: #ffffff;
    padding-left: 4px;
}
.footmid_r {
    width: 350px;
    flex-shrink: 0;
    padding-left: 40px;
    border-left: 1px solid rgba(255,255,255,0.14);
}
.footmid_rdesc ul li {
    background: url(../images/footrico1.png) no-repeat left center;
    background-size: 16px;
    margin-bottom: 14px;
}
.footmid_rdesc p {
    font-size: 15px;
    color: #9cc8bb;
    padding-left: 30px;
    line-height: 24px;
}
.footmid_rdesc ul li:nth-child(2) {
    background-image: url(../images/footrico2.png);
}
.footmid_rdesc ul li:nth-child(3) {
    background-image: url(../images/footrico3.png);
}
.foot_r_label {
    display: block;
    font-size: 12px;
    color: #6fae9c;
    letter-spacing: 1px;
    margin-bottom: 2px;
}
.footmid_ewm {
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px dashed rgba(255,255,255,0.18);
}
.footmid_ewm ul li {
    background: none;
    text-align: center;
    width: 45%;
}
.footmid_ewm ul li img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    object-fit: contain;
}
.footmid_ewm ul li p {
    font-size: 14px;
    margin-top: 10px;
    color: #ffffff;
}
.footc_l span a:hover {
    color: #ffffff;
}

/* ════��?移动端导��?════��*/
.waptop.fixednav {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    background: rgba(255,255,255,0.96) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: 0 2px 20px rgba(0,0,0,0.08);
}
.waptop_item {
    width: 100%;
    height: 56px;
    background-color: #054a44;
}
.waptop_l {
    width: 30%;
}
.waptop_l a {
    width: 100%;
    height: 56px;
    padding: 0 10px;
    justify-content: center;
}
.waptop_lang {
    position: relative;
}
.waptop_lang p {
    font-size: 16px;
    color: #ffffff;
    display: block;
    margin-left: 10px;
    margin-top: 4px;
}
.waptop_rs {
    margin-left: 20px;
}
.waptop_rs img {
    filter: brightness(0) invert(1);
    width: 18px;
    opacity: 0.85;
}
.waptop_rnav {
    margin-left: 20px;
}
.waptop_rnav img {
    width: 22px;
    filter: brightness(0) invert(1);
}

/* ── 移动端搜��?── */
.wapsearch {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 9;
    background: rgba(5, 74, 68, 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    display: none;
    animation: fadeInMobile 0.3s ease forwards;
}
@keyframes fadeInMobile { from{opacity:0;} to{opacity:1;} }
.wapsea_item {
    width: 100%;
    height: 100%;
    justify-content: center;
}
.wapsea_item form {
    width: 90%;
    height: 50px;
    background-color: #fff;
    border-radius: 25px;
    padding: 0 20px;
    position: relative;
}
.wapsea_item form input {
    width: 80%;
    height: 100%;
    color: #1a1a1a;
    font-size: 15px;
}
.wapsea_item form button {
    background: none;
    border: none;
    width: 19%;
    text-align: right;
}
.wapsea_close {
    position: absolute;
    top: -36px;
    right: 0;
}
.wapsea_close img {
    width: 18px;
    filter: brightness(0) invert(1);
    opacity: 0.8;
}

/* ── 移动端侧边导航菜��?── */
.wapnav {
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background: linear-gradient(180deg, #054a44 0%, #097168 100%);
    z-index: 999;
    display: none;
    animation: slideInRight 0.35s cubic-bezier(0.165,0.84,0.44,1) forwards;
}
@keyframes slideInRight { from{transform:translateX(40px);opacity:0;} to{transform:translateX(0);opacity:1;} }
.wapnavitem {
    width: 100%;
    height: auto;
    background-color: #054a44;
}
.wapnavt_l {
    width: 30%;
}
.wapnavt_l a {
    width: 100%;
    height: 56px;
    padding: 0 10px;
    justify-content: center;
}
.wapnavt_r img {
    width: 22px;
    filter: brightness(0) invert(1);
    cursor: pointer;
}
.wapnavbot {
    padding: 16px 0 28px;
}
.wapnavbot ul li {
    padding: 14px 14px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    transition: background 0.2s ease;
}
.wapnavbot ul li:hover,
.wapnavbot ul li.active {
    background: rgba(255,255,255,0.06);
}
.wapnavbot ul li.active {
    border-left: 3px solid #f0d78c;
    background: rgba(255,255,255,0.08);
}
.wapnavbot ul li.active > a {
    color: #f0d78c;
    font-weight: 600;
}
.wapnavbot > ul > li > a {
    color: #ffffff;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 0.5px;
    text-decoration: none;
}
.wapnav_ico {
    filter: brightness(0) grayscale(100%) invert(1);
    transition: transform 0.3s ease;
}
.wapernav {
    padding: 8px 0 4px 14px;
    width: 100%;
    display: none;
    animation: expandDown 0.25s ease forwards;
}
@keyframes expandDown { from{opacity:0;transform:translateY(-8px);} to{opacity:1;transform:translateY(0);} }
.wapernav li {
    list-style: none;
}
.wapernav a {
    display: block;
    font-size: 15px;
    color: rgba(255,255,255,0.85);
    line-height: 38px;
    padding-left: 12px;
    border-radius: 6px;
    transition: all 0.2s ease;
    text-decoration: none;
}
.wapernav a:hover {
    color: #fff;
    background: rgba(255,255,255,0.08);
    padding-left: 18px;
}
.wapnav_ico.active {
    transform: rotate(90deg) !important;
}
.idx_titles {
    padding-bottom: 80px;
}

.neimain {
    overflow: hidden;
}
.neicontent {
    padding: 60px 0;
    font-size: 16px;
    color: #333;
    line-height: 1.8;
}

/* 关于我们内页 */
.banner {
    display: block;
    width: 100%;
}
.neibanner {
    width: 100%;
    height: 400px;
    min-height: 400px;
    position: relative;
    overflow: hidden;
    background-color: #054a44; /* 品牌��?fallback，防图片加载失败时白��?*/
}
.neibanner img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    z-index: 0;
}

.neibanner_overlay {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: linear-gradient(180deg, rgba(4,40,36,0.72) 0%, rgba(6,29,24,0.45) 55%, rgba(6,29,24,0.6) 100%);
    z-index: 0;
}
.neibannerdesc {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0; left: 0;
    justify-content: center;
    align-items: center;
    z-index: 1;
}
.neibannerdesc_inner { text-align: center; }
.neibannerdesc_inner h2 {
    font-size: 48px;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 10px;
}
.neibannerdesc_inner p {
    font-size: 18px;
    color: rgba(255,255,255,0.8);
}
.neinav {
    width: 100%;
    border-bottom: 1px solid #f8f8f8;
}
.neinav_item {
    height: 59px;
}
.neinav_item ul {
    justify-content: flex-start;
}
.neinav_item ul li {
    margin-right: 60px;
}
.neinav_item ul li a {
    color: #666;
    display: block;
    line-height: 56px;
    font-size: 16px;
    border-bottom: 2px solid #ffffff;
}
.neinav_item ul li.active a,.neinav_item ul li:hover a {
    border-color: #d4af6e;
    color: #097168;
}
.abouttop {
    position: relative;
    padding: 90px 0px 100px;
    background: linear-gradient(180deg, #ffffff 0%, #fafbf9 100%);
    overflow: hidden;
}
.abouttop::before {
    content: '';
    position: absolute;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(9,113,104,0.05) 0%, rgba(9,113,104,0) 70%);
    top: -160px;
    right: -160px;
}
.abouttop::after {
    content: '';
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(9,113,104,0.04) 0%, rgba(9,113,104,0) 70%);
    bottom: -120px;
    left: 30%;
}
.abouttop > .con1400 { position: relative; z-index: 2; }
.abouttop_wrap {
    display: flex;
    align-items: center;
    gap: 70px;
    max-width: 1200px;
    margin: 0 auto;
}
.aboutt_l {
    flex: 0 0 42%;
    max-width: 42%;
}
.aboutt_img {
    position: relative;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(31,45,42,0.14);
}
.aboutt_img::before {
    content: '';
    position: absolute;
    top: 16px;
    left: 16px;
    right: -16px;
    bottom: -16px;
    border: 1px solid rgba(9,113,104,0.35);
    border-radius: 14px;
    z-index: 0;
}
.aboutt_img img {
    display: block;
    width: 100%;
    height: 440px;
    object-fit: cover;
}
.aboutt_img::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(200deg, rgba(255,255,255,0.02) 0%, rgba(9,113,104,0.12) 100%);
}
.aboutt_badge {
    position: absolute;
    top: 26px;
    right: 26px;
    z-index: 2;
    padding: 10px 18px;
    font-size: 12px;
    letter-spacing: 3px;
    color: #ffffff;
    background: linear-gradient(135deg, #097168 0%, #2fb9a8 100%);
    border-radius: 3px;
    font-weight: 700;
}
.aboutt_r {
    flex: 1;
    padding: 0;
}
.aboutt_en {
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 12px;
    color: #097168;
    margin-bottom: 20px;
    text-transform: uppercase;
}
.aboutt_r h3 {
    font-size: 42px;
    font-weight: 800;
    letter-spacing: 4px;
    line-height: 1.35;
    color: #1f2d2a;
    margin: 0 0 26px;
}
.aboutt_divider {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 30px;
}
.aboutt_divider span {
    width: 70px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,113,104,0.4));
}
.aboutt_divider span:last-child {
    background: linear-gradient(90deg, rgba(9,113,104,0.4), transparent);
}
.aboutt_divider i {
    width: 8px;
    height: 8px;
    background: #d4af6e;
    transform: rotate(45deg);
}
.aboutt_r p {
    font-size: 16px;
    line-height: 2;
    text-align: justify;
    color: #5c6b67;
    margin-bottom: 34px;
}
.aboutt_meta {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}
.aboutt_meta span {
    position: relative;
    padding-left: 18px;
    font-size: 14px;
    letter-spacing: 2px;
    color: #097168;
    font-weight: 600;
}
.aboutt_meta span::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #d4af6e;
    transform: translateY(-50%);
}
.about_tgs {
    width: 100%;
    padding: 70px 0px 80px;
    background-color: #f5f6f8;
}
.abouttgs_l {
    padding-right: 15%;
    position: relative;
}
.abouttgs_l h3 {
    font-size: 28px;
    margin-bottom:30px;
}
.abouttgs_l p {
    font-size: 16px;
    line-height: 28px;
    color: #333333;
    text-align: justify;
}
.abouttgs_l img {
    height: 57px;
    position: absolute;
    top: 0px;
    left: -72px;
}
.abouttgs_l img.aboutp_ico2 {
    left: unset;
    top: unset;
    right: 15%;
    bottom: -70px;
}
.abouttgs_r {
    width: 100%;
}
.abouttgs_r video {
    width: 100%;
}
.about_qywh {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
    background: linear-gradient(180deg, #f3f6f2 0%, #ffffff 50%, #f3f6f2 100%);
    padding: 90px 0px 100px;
}
.about_qywh::before {
    content: '';
    position: absolute;
    width: 460px;
    height: 460px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(9,113,104,0.05) 0%, rgba(9,113,104,0) 70%);
    top: -140px;
    left: -140px;
}
.about_qywh::after {
    content: '';
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(9,113,104,0.04) 0%, rgba(9,113,104,0) 70%);
    bottom: -100px;
    right: -100px;
}
.about_qywh > .con1400 { position: relative; z-index: 2; }

/* ── 标题区 ── */
.about_qywh_head {
    text-align: center;
    margin-bottom: 64px;
}
.about_qywh_en {
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 12px;
    color: #097168;
    margin-bottom: 20px;
    text-transform: uppercase;
}
.about_qywh_head h3 {
    font-size: 42px;
    font-weight: 800;
    letter-spacing: 6px;
    color: #1f2d2a;
    margin: 0 0 24px;
}
.about_qywh_divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin: 0 auto 24px;
}
.about_qywh_divider span {
    width: 80px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,113,104,0.4));
}
.about_qywh_divider span:last-child {
    background: linear-gradient(90deg, rgba(9,113,104,0.4), transparent);
}
.about_qywh_divider i {
    width: 8px;
    height: 8px;
    background: #d4af6e;
    transform: rotate(45deg);
}
.about_qywh_intro {
    font-size: 17px;
    color: #7a8a86;
    letter-spacing: 4px;
    margin: 0;
}

/* ── 卡片网格 ── */
.about_qywh_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    max-width: 1200px;
    margin: 0 auto;
}
.about_qywh_card {
    position: relative;
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    box-shadow: 0 8px 30px rgba(31,45,42,0.08);
    transition: transform 0.5s cubic-bezier(0.2,0.8,0.2,1), box-shadow 0.5s;
    isolation: isolate;
}
.about_qywh_card_bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: radial-gradient(circle at 50% 80%, rgba(9,113,104,0.06) 0%, transparent 60%);
    opacity: 0;
    transition: opacity 0.6s;
}
.about_qywh_card_border {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #d4af6e, transparent);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.5s cubic-bezier(0.2,0.8,0.2,1);
    z-index: 2;
}
.about_qywh_card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(9,113,104,0.16);
}
.about_qywh_card:hover .about_qywh_card_bg { opacity: 1; }
.about_qywh_card:hover .about_qywh_card_border { transform: scaleX(1); }
.about_qywh_card_img {
    position: relative;
    z-index: 1;
    height: 190px;
    overflow: hidden;
}
.about_qywh_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.7s ease;
}
.about_qywh_card:hover .about_qywh_card_img img { transform: scale(1.08); }
.about_qywh_card_img::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255,255,255,0) 40%, rgba(9,113,104,0.18) 100%);
}
.about_qywh_card_body {
    position: relative;
    z-index: 1;
    padding: 28px 28px 34px;
}
.about_qywh_num {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 46px;
    font-weight: 700;
    line-height: 1;
    color: rgba(9,113,104,0.12);
    margin-bottom: 12px;
    transition: color 0.5s;
}
.about_qywh_card:hover .about_qywh_num {
    color: rgba(212,175,110,0.6);
}
.about_qywh_card_body h4 {
    font-size: 21px;
    font-weight: 700;
    color: #1f2d2a;
    letter-spacing: 2px;
    margin: 0 0 14px;
    transition: color 0.4s;
}
.about_qywh_card:hover .about_qywh_card_body h4 { color: #097168; }
.about_qywh_card_body p {
    font-size: 14px;
    color: #7a8a86;
    line-height: 1.9;
    margin: 0;
    letter-spacing: 0.5px;
    transition: color 0.4s;
}
.about_qywh_card:hover .about_qywh_card_body p { color: #5c6b67; }
.about_hz {
    background-color: #f5f6f8;
    padding: 70px 0px 100px;
}
.about_hz_tit h3 {
    color: #333;
    font-size: 28px;
    margin-bottom: 50px;
    text-align: center;
}
.about_hz_item {
    width: 100%;
    height: 240px;
    position: relative;
}
.about_hz_item .swiper-slide {
    height: calc((100% - 30px) / 2);
}
.about_hz_item .idxkh_simg:hover {
    border: 0px;
}
.about_hz_item .idxkh_simg:hover img {
    transform: scale(1.05);
}
/* 发展历程 - 品牌时间轴 */
.about_his {
    background: linear-gradient(180deg, #ffffff 0%, #f3f6f2 100%);
    padding: 90px 0px 100px;
    color: #333333;
    position: relative;
    overflow: hidden;
}
.about_his::before {
    content: '';
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(9,113,104,0.05) 0%, rgba(9,113,104,0) 70%);
    top: -120px;
    right: -120px;
}
.about_his::after {
    content: '';
    position: absolute;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(9,113,104,0.04) 0%, rgba(9,113,104,0) 70%);
    bottom: -140px;
    left: -120px;
}
.about_hisitem_t {
    text-align: center;
    margin-bottom: 60px;
}
.about_his_en {
    font-size: 13px;
    letter-spacing: 8px;
    color: #097168;
    text-transform: uppercase;
    margin-bottom: 16px;
}
.about_hisitem_t h3 {
    font-size: 36px;
    color: #1f2d2a;
    font-weight: 800;
    letter-spacing: 6px;
}
.about_his_line {
    display: inline-block;
    width: 64px;
    height: 3px;
    margin-top: 22px;
    background: linear-gradient(90deg, #097168, #d4af6e);
    border-radius: 3px;
}
.about_hz {
    position: relative;
    max-width: 1280px;
    margin: 0 auto;
}
.about_hz_axis {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0 20px;
    margin-bottom: 46px;
}
.about_hz_axis::before {
    content: '';
    position: absolute;
    top: 22px;
    left: 24px;
    right: 24px;
    height: 2px;
    background: linear-gradient(90deg, rgba(9,113,104,0.08), rgba(9,113,104,0.35) 20%, rgba(9,113,104,0.35) 80%, rgba(9,113,104,0.08));
}
.about_hz_node {
    position: relative;
    z-index: 2;
    text-align: center;
    cursor: pointer;
    width: 16.66%;
    transition: transform .4s ease;
}
.about_hz_node:hover {
    transform: translateY(-3px);
}
.about_hz_dot {
    display: block;
    width: 18px;
    height: 18px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: #ffffff;
    border: 3px solid #b7cbc6;
    box-shadow: 0 0 0 6px rgba(9,113,104,0.05);
    transition: all .4s ease;
}
.about_hz_node.active .about_hz_dot {
    border-color: #d4af6e;
    box-shadow: 0 0 0 8px rgba(212,175,110,0.18);
    transform: scale(1.12);
}
.about_hz_num {
    font-size: 22px;
    font-weight: 700;
    color: #a3b3af;
    font-family: Georgia, "Times New Roman", serif;
    letter-spacing: 1px;
    transition: all .4s ease;
    display: inline-block;
}
.about_hz_node.active .about_hz_num {
    color: #097168;
    transform: translateY(-2px);
}
.about_hz_stage {
    position: relative;
    min-height: 340px;
}
.about_hz_card {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(30px) scale(0.985);
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 18px 60px rgba(31,45,42,0.14);
    border-top: 4px solid #d4af6e;
    text-align: center;
    transition: opacity .6s ease, transform .6s ease, visibility .6s ease;
}
.about_hz_card.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}
.about_hz_body {
    padding: 56px 60px 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}
.about_hz_year {
    font-family: Georgia, "Times New Roman", serif;
    line-height: 1;
    margin-bottom: 22px;
    color: #097168;
    display: flex;
    align-items: baseline;
    gap: 4px;
}
.about_hz_year i {
    font-style: normal;
    font-size: 84px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #097168;
    background: linear-gradient(135deg, #097168 0%, #2fb9a8 60%, #d4af6e 130%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.about_hz_year em {
    font-style: normal;
    font-size: 26px;
    font-weight: 700;
    color: #d4af6e;
}
.about_hz_card p {
    font-size: 15px;
    line-height: 30px;
    color: #5c6b67;
    max-width: 820px;
    margin: 0 auto 26px;
}
.about_hz_more {
    font-size: 13px;
    letter-spacing: 3px;
    color: #a8b8b4;
    padding-top: 20px;
    border-top: 1px solid #eef2ef;
}
.about_hz_card::after {
    content: '';
    position: absolute;
    right: 26px;
    bottom: 22px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(9,113,104,0.05) 0%, rgba(9,113,104,0) 70%);
    pointer-events: none;
}

/* 企业文化页面 */
.culture {
    background: #f7f8fa;
    padding: 70px 0px;
}
.cultop {
    width: 100%;
    height: 300px;
    background-color: #ffffff;
}
.cultop_l {
    width: 50%;
    height: 100%;
    overflow: hidden;
    position: relative;
}
.cultop_l img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cultop_l .cultop_ltitle {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    justify-content: flex-end;
}
.cultop_ltitle i {
    color: #333333;
    font-size:40px;
    font-weight: bold;
    letter-spacing: 2px;
    padding: 0px 50px;
}
.cultop_r {
    width: 50%;
    height: 100%;
    padding: 0px 10% 0px 4%;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    position: relative;
}
.cultop_r h3 {
    color: #333333;
    margin-bottom: 10px;
    font-size: 24px;
}
.cultop_r p {
    color: #666666;
    font-size:14px;
    line-height: 28px;
}
.cultop_rline {
    position: absolute;
    left: 0px;
    top: 65px;
    width: 1px;
    height:170px ;
    background-color: #f1f1f1;
}
.culbot .cultop_rline {
    left: unset;
    right: 0px;
}
.culbot .cultop_ltitle {
    justify-content: flex-start;
}

.cul_qyjs {
    width: 100%;
    padding: 70px 0px;
    background-color: #ffffff;
}
.cul_qyjs .about_hz_tit h3 {
    margin-bottom: 20px;
}
.cul_qyjs .about_hz_tit p {
    color: #666;
    font-size: 14px;
    text-align: center;
}
.cul_items {
    margin-top: 50px;
}
.cul_items ul li {
    width: 33.33%;
    height: 315px;
    overflow: hidden;
    position: relative;
}
.cul_liimg {
    width: 100%;
    height: 100%;
}
.cul_liimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cul_lidesc {
    padding: 0px 80px;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}
.culdesc_item {
    height: 30px;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    transition: all 0.5s ;
}
.culdesc_item h3 {
    color: #ffffff;
    font-size: 28px;
    margin-bottom: 30px;
}
.culdesc_item p {
    color: #ffffff;
    font-size: 14px;
    line-height: 28px;
}
.cul_items ul li:hover .culdesc_item {
    height:120px;
}
/* 社会责任 */
.resppage {
    padding: 70px 0px;
}
.resp_item ul li {
    width: 48.5%;
    height: 325px;
    margin-bottom: 40px;
    position: relative;
    transition: all .5s;
}
.resp_item ul li .resp_liimg {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.resp_item ul li .resp_liimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.resp_lidesc {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    padding: 0px 30px ;
    z-index: 1;
    flex-direction: column;
    justify-content: flex-end;
}
.resp_lidesc_item {
    height: 30px;
    transition: all .5s;
    margin-bottom: 30px;
    overflow: hidden;
}
.resp_lidesc_item h3 {
    font-size: 20px;
    color: #ffffff;
    margin-bottom: 20px;
}
.resp_lidesc_item p {
    font-size: 14px;
    line-height: 28px;
    color: #ffffff;
}
.resp_item ul li:hover {
    box-shadow:0px 0px 15px rgba(0, 0, 0, 0.2);
} 
.resp_item ul li:hover .resp_liimg img {
    transform: scale(1.05);
}
.resp_item ul li:hover .resp_lidesc_item {
    height: 150px;
}
.respnews {
    background-color: #f5f6f8;
    padding: 70px 0px;
}
.respnews_t h2 {
    font-size: 24px;
    margin-bottom: 20px;
    color: #333333;
}
.respnews_t p {
    font-size: 14px;
    color: #666666;
}
.respnews_list {
    margin-top: 50px;
}
.respnews_liitem {
    width: 100%;
}
.respnews_lil {
    width: 40%;
    padding: 0px 50px;
}
.respnews_lil h3 {
    font-size: 20px;
    margin-bottom: 30px;
    line-height: 32px;
    color: #333333;
    text-align: left;
}
.respnews_lil p {
    font-size: 14px;
    line-height: 24px;
    color: #666666;
    text-align: justify;
}
.respnews_lil span {
    display: block;
    font-size: 20px;
    color: #333333;
    margin-top: 30px;
    text-align: left;
}
.respnews_lil h3:hover {
    color: #097168;
}
.respnews_lir {
    width: 60%;
    height: 320px;
}
.respnews_lir img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.respnews_list .swiper-button-next, .respnews_list .swiper-button-prev {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #8e8e8e;
    top: unset;
    bottom: 20px;
    left: 30%;
}
.respnews_list .swiper-button-next {
    left: 35%;
}
.respnews_list .swiper-button-next:after, .respnews_list .swiper-button-prev:after {
    font-size: 16px;
    color: #ffffff;
}
.respnews_list .swiper-button-next:hover, .respnews_list .swiper-button-prev:hover {
    background-color: #097168;
}
/* 人才招聘 */
.joblist_t {
    background: #f5f6f8;
    padding: 70px 0px;
}
.joblist_item ul li {
    width: 100%;
    height:320px ;
    background-color: #ffffff;
}
.joblist_tl {
    width: 50%;
    padding: 50px ;
}
.joblist_tl h3 {
    font-size: 26px;
    margin-bottom: 20px;
    color: #333333;
}
.joblist_tl p {
    font-size: 14px;
    line-height: 28px;
    color: #666666;
}
.joblist_tr {
    width: 50%;
    height: 100%;
    overflow: hidden;
}
.joblist_tr img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.joblist_item ul li:hover .joblist_tr img {
    transform: scale(1.05);
}

.joblist_m {
    padding: 70px 0px;
    background-color: #ffffff;
}
.joblist_m_top h2 {
    font-size: 28px;
    color: #333333;
    text-align: center;
}
.joblist_m_bot {
    margin-top: 50px;
}
.joblist_m_bot ul li {
    width: 32%;
    padding: 40px;
    height:260px ;
    background-color: #f5f6f8;
}
.joblist_m_bot ul li h3 {
    font-size: 20px;
    color: #333333;
}
.joblist_line {
    width: 40px;
    height: 1px;
    margin: 30px 0px;
    background-color: #666666;
}
.joblist_m_bot ul li p {
    font-size: 14px;
    line-height: 28px;
    color: #666666;
}
.joblist_m_bot ul li:hover {
    background-color: #097168;
}
.joblist_m_bot ul li:hover .joblist_line {
    background-color: #ffffff;
}
.joblist_m_bot ul li:hover h3 {
    color: #ffffff;
}
.joblist_m_bot ul li:hover p {
    color: #ffffff;
}
.joblist_btitle h2 {
    font-size: 28px;
    color: #333333;
    text-align: center;
}
.joblist {
    margin-top: 50px;
}
.joblist ul li {
    width: 100%;
    height: auto;
    margin-bottom: 45px;
    padding: 40px 0px;
    background-color: #ffffff;
}
.joblitop {
    padding: 0px 60px;
}
.joblitop dl {
    border-left: 1px solid #edeff0;
    text-align: center;
    width:30%;
}
.joblitop dl dt {
	font-size: 14px;
	color: #999999;
    padding-bottom: 10px;
}
.joblitop dl dd {
	font-size: 20px;
	color: #232324;
}
.joblitop dl:first-child {
    border-left: 0px;
    text-align: left;
    width: 20%;
}
.joblitop dl:last-child {
    text-align: right;
    width: 20%;
}
.joblibot {
    border-top: 1px solid #edeff0;
    border-bottom: 1px solid #edeff0;
    margin-top: 30px;
    padding: 30px 60px;
}
.joblidate p {
	font-size: 14px;
	color: #999999;
}
.joblimore a {
    padding: 5px 25px;
	border-radius: 15px;
	border: solid 1px #097168;
	font-size: 14px;
	color: #097168;
}
.joblimore a.joblimail {
    background-color: #097168;
    color: #ffffff;
}
.jobcontent {
    padding:50px 60px 0px;
    display: none;
}
.jobcontent p {
	font-size: 14px;
    line-height: 28px;
	color: #666;
}
.jobcontent.active {
    display: block;
}
/* ================================================================
   联系我们 - 高端品牌风格重设
   色彩体系：主��?#2c3e50 深蓝��?/ 点缀 #c9a96e 暖金 / 背景 #faf9f7
================================================================ */

/* --- 共用辅助 --- */
.section-tag {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #c9a96e;
    margin-bottom: 12px;
    font-weight: 500;
}
.section-title {
    font-size: 36px;
    color: #1a1a1a;
    font-weight: 400;
    margin: 0 0 16px;
    letter-spacing: 1px;
}
.section-desc {
    font-size: 15px;
    color: #888;
    line-height: 1.8;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
}

/* ================================================================
   防伪查询页
   ================================================================ */
.antifake-hero {
    background: linear-gradient(135deg, #f6faf9 0%, #eaf2f0 100%);
    padding: 80px 0 60px;
    text-align: center;
    position: relative;
    overflow: hidden;
}
.antifake-hero_inner {
    max-width: 640px;
    margin: 0 auto;
}
.antifake-hero_tag {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 4px;
    color: #097168;
    margin-bottom: 16px;
    padding: 4px 18px;
    border: 1px solid rgba(9,113,104,0.3);
    border-radius: 20px;
    background: rgba(9,113,104,0.06);
}
.antifake-hero_title {
    font-size: 44px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 16px;
    letter-spacing: 2px;
}
.antifake-hero_sub {
    font-size: 15px;
    color: #5a6a68;
    line-height: 1.8;
    letter-spacing: 1px;
}
/* 信任图标条 */
.antifake-trust {
    padding: 40px 0 10px;
}
.antifake-trust_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1000px;
    margin: 0 auto;
}
.antifake-trust_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 28px 20px;
    background: #fff;
    border-radius: 14px;
    border: 1px solid #eef0f5;
    box-shadow: 0 6px 24px rgba(9,113,104,0.06);
    transition: all 0.3s;
}
.antifake-trust_item:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(9,113,104,0.12);
}
.antifake-trust_item svg {
    width: 44px;
    height: 44px;
    color: #097168;
    margin-bottom: 14px;
}
.antifake-trust_item h4 {
    font-size: 17px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 6px;
}
.antifake-trust_item p {
    font-size: 13px;
    color: #8a9694;
    margin: 0;
}
/* 查询主卡片 */
.antifake-main {
    padding: 40px 0 80px;
}
.antifake-wrap {
    max-width: 1100px;
    margin: 0 auto;
    background: #fff;
    border-radius: 20px;
    border: 1px solid #eef0f5;
    box-shadow: 0 16px 48px rgba(9,113,104,0.08);
    padding: 36px 40px 32px;
}
.antifake-tip {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #374151;
    padding: 12px 18px;
    background: #f0f7f6;
    border: 1px solid rgba(9,113,104,0.15);
    border-radius: 10px;
    margin-bottom: 24px;
}
.antifake-tip_dot {
    flex: none;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #097168;
    animation: antifakePulse 1.6s infinite;
}
@keyframes antifakePulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(9,113,104,0.35); }
    50%      { box-shadow: 0 0 0 8px rgba(9,113,104,0); }
}
.antifake-iframe_box {
    border: 1px solid #eef0f5;
    border-radius: 14px;
    overflow: hidden;
    background: #fafbfc;
    min-height: 300px;
}
.antifake-iframe_box iframe {
    display: block;
    border: 0;
}
/* 未配置占位 */
.antifake-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 300px;
    padding: 40px;
}
.antifake-empty p {
    font-size: 18px;
    font-weight: 600;
    color: #6b7280;
    margin: 16px 0 6px;
}
.antifake-empty span {
    font-size: 13px;
    color: #9ca3af;
}
.antifake-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 13px;
    color: #8a9694;
    margin-top: 22px;
    text-align: center;
}
.antifake-note svg {
    flex: none;
    color: #c9a96e;
}

/* --- Hero 头部 --- */
.contact-hero {
    background: linear-gradient(135deg, #faf9f7 0%, #f0ede8 100%);
    padding: 90px 0 70px;
    text-align: center;
}
.contact-hero_inner {
    max-width: 600px;
    margin: 0 auto;
}
.contact-hero_tag {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 4px;
    color: #c9a96e;
    margin-bottom: 16px;
    padding: 4px 16px;
    border: 1px solid #e0d5c5;
    border-radius: 20px;
}
.contact-hero_title {
    font-size: 44px;
    font-weight: 300;
    color: #1a1a1a;
    margin: 0 0 16px;
    letter-spacing: 2px;
}
.contact-hero_sub {
    font-size: 15px;
    color: #999;
    line-height: 1.8;
}

/* --- 四卡片区 --- */
.contact-cards {
    padding: 60px 0 0;
    margin-top: 0;
    position: relative;
    z-index: 2;
}
.contact-cards_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.contact-card {
    background: #fff;
    border-radius: 12px;
    padding: 36px 28px;
    text-align: center;
    box-shadow: 0 2px 20px rgba(0,0,0,0.04);
    transition: all 0.4s ease;
    cursor: default;
}
.contact-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 40px rgba(0,0,0,0.08);
}
.contact-card_icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 20px;
    color: #c9a96e;
    background: linear-gradient(135deg, rgba(201,169,110,0.1) 0%, rgba(201,169,110,0.05) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.contact-card_icon svg {
    width: 24px;
    height: 24px;
}
.contact-card h4 {
    font-size: 14px;
    color: #999;
    font-weight: 400;
    margin: 0 0 10px;
    letter-spacing: 1px;
}
.contact-card p {
    font-size: 15px;
    color: #333;
    margin: 0;
    line-height: 1.6;
    word-break: break-all;
}

/* --- 表单+地图双栏 --- */
.contact-main {
    padding: 80px 0;
    background: #fff;
}
.contact-main_grid {
    display: grid;
    grid-template-columns: 5fr 4fr;
    gap: 60px;
    align-items: start;
}

/* 表头 */
.contact-form_header {
    margin-bottom: 36px;
}
.contact-form_header .contact-form_tag {
    display: inline-block;
    font-size: 11px;
    letter-spacing: 3px;
    color: #c9a96e;
    margin-bottom: 12px;
}
.contact-form_header h3 {
    font-size: 32px;
    font-weight: 300;
    color: #1a1a1a;
    margin: 0 0 10px;
    letter-spacing: 1px;
}
.contact-form_header p {
    font-size: 14px;
    color: #999;
    line-height: 1.6;
}

/* 新表��?*/
.contact-form_new .cf-row {
    margin-bottom: 20px;
}
.contact-form_new .cf-row_half {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.contact-form_new .cf-field input[type="text"],
.contact-form_new .cf-field input[type="tel"] {
    width: 100%;
    border: 1px solid #e8e5df;
    background: #faf9f7;
    padding: 14px 16px;
    height: 52px;
    font-size: 15px;
    color: #333;
    box-sizing: border-box;
    transition: border-color 0.3s, box-shadow 0.3s;
    outline: none;
    border-radius: 8px;
}
.contact-form_new .cf-field input:focus {
    border-color: #c9a96e;
    box-shadow: 0 0 0 3px rgba(201,169,110,0.1);
}
.contact-form_new .cf-field textarea {
    width: 100%;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background: #faf9f7;
    padding: 16px;
    font-size: 15px;
    box-sizing: border-box;
    resize: vertical;
    outline: none;
    transition: border-color 0.3s;
    font-family: inherit;
}
.contact-form_new .cf-field textarea:focus {
    border-color: #c9a96e;
}
.cf-submit {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #faf9f7;
    color: #1a1a1a;
    border: none;
    padding: 16px 40px;
    font-size: 15px;
    letter-spacing: 2px;
    cursor: pointer;
    border-radius: 30px;
    transition: all 0.3s;
    font-family: inherit;
}
.cf-submit:hover {
    background: #f0f0f0;
    transform: translateX(4px);
}
.cf-submit svg {
    width: 18px;
    height: 18px;
    transition: transform 0.3s;
}
.cf-submit:hover svg {
    transform: translateX(4px);
}

/* 提交按钮加载状态 */
.cf-submit-loading {
    opacity: 0.7;
    cursor: not-allowed !important;
    pointer-events: none;
}
.cf-submit-loading svg {
    animation: cfSpin 0.8s linear infinite;
}
@keyframes cfSpin {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

/* 底部表单加载动画 */
.cf-loading {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: #fff;
    border-radius: 50%;
    animation: cfSpin 0.7s linear infinite;
    vertical-align: middle;
    margin-right: 6px;
}

/* 右侧地图卡片 */
.contact-map_card {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 30px rgba(0,0,0,0.06);
    margin-bottom: 24px;
}
.contact-map_img {
    position: relative;
}
.contact-map_img > img {
    width: 100%;
    height: 320px;
    object-fit: cover;
    display: block;
}
.contact-map_overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(0deg, rgba(26,26,26,0.9) 0%, rgba(26,26,26,0.3) 100%);
    padding: 24px 20px;
}
.contact-map_overlay_item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,0.95);
    font-size: 13px;
    margin-bottom: 8px;
    line-height: 1.5;
}
.contact-map_overlay_item:last-child {
    margin-bottom: 0;
}
.contact-map_overlay_item svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    opacity: 0.8;
}

/* 二维码入��?*/
.contact-qr_row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.contact-qr_card {
    background: #faf9f7;
    border-radius: 12px;
    padding: 24px 16px;
    text-align: center;
    transition: all 0.3s;
    cursor: pointer;
}
.contact-qr_card:hover {
    background: #f0ede8;
}
.contact-qr_icon {
    width: 44px;
    height: 44px;
    margin: 0 auto 10px;
    color: #c9a96e;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.contact-qr_icon svg {
    width: 20px;
    height: 20px;
}
.contact-qr_card span {
    display: block;
    font-size: 14px;
    color: #333;
    font-weight: 500;
}
.contact-qr_card small {
    display: block;
    font-size: 11px;
    color: #aaa;
    margin-top: 4px;
}

/* --- 全国门店 --- */
.contact-stores {
    padding: 90px 0;
    background: #faf9f7;
}
.contact-stores_header {
    text-align: center;
    margin-bottom: 60px;
}
.contact-stores_grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
}
.store-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(0,0,0,0.04);
    transition: all 0.4s ease;
}
.store-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 36px rgba(0,0,0,0.08);
}
.store-card_img {
    position: relative;
    height: 200px;
    overflow: hidden;
}
.store-card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s;
}
.store-card:hover .store-card_img img {
    transform: scale(1.05);
}
.store-card_placeholder {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #f0ede8, #e8e3da);
    display: flex;
    align-items: center;
    justify-content: center;
}
.store-card_placeholder svg {
    width: 40px;
    height: 40px;
    color: #c9a96e;
    opacity: 0.5;
}
.store-card_badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(201,169,110,0.9);
    color: #fff;
    font-size: 11px;
    padding: 4px 12px;
    border-radius: 20px;
    letter-spacing: 1px;
}
.store-card_info {
    padding: 20px;
}
.store-card_info h4 {
    font-size: 16px;
    color: #1a1a1a;
    margin: 0 0 6px;
    font-weight: 500;
}
.store-card_info p {
    font-size: 13px;
    color: #999;
    margin: 0 0 14px;
    line-height: 1.5;
}
.store-card_link {
    font-size: 13px;
    color: #c9a96e;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: gap 0.3s;
}
.store-card_link:hover {
    gap: 8px;
    color: #b8943f;
}
.store-card_link span {
    transition: transform 0.3s;
}
.store-card_link:hover span {
    transform: translateX(3px);
}

/* 门店空状��?*/
.contact-stores_empty {
    text-align: center;
    padding: 60px 20px;
    color: #aaa;
    font-size: 15px;
}

/* --- FAQ --- */
.contact-faq {
    padding: 80px 0;
    background: #fff;
}
.contact-faq_inner {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 80px;
    align-items: start;
}
.contact-faq_text h3 {
    font-size: 32px;
    font-weight: 300;
    color: #1a1a1a;
    margin: 0 0 10px;
    letter-spacing: 1px;
}
.contact-faq_text p {
    font-size: 14px;
    color: #999;
    line-height: 1.6;
}
.contact-faq_list {
    display: grid;
    gap: 28px;
}
.faq-item h5 {
    font-size: 16px;
    color: #1a1a1a;
    margin: 0 0 8px;
    font-weight: 500;
    position: relative;
    padding-left: 20px;
}
.faq-item h5::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #c9a96e;
}
.faq-item p {
    font-size: 14px;
    color: #888;
    line-height: 1.8;
    margin: 0 0 0 20px;
}

/* ========== 二维码弹��?========== */
.contact-qr_card.qr-trigger {
    cursor: pointer;
    transition: transform 0.3s, box-shadow 0.3s;
}
.contact-qr_card.qr-trigger:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 24px rgba(201,169,110,0.18);
}

.qr-modal {
    display: none;
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.55);
    z-index: 9999;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.25s ease;
}
.qr-modal.active {
    display: flex;
    opacity: 1;
}
.qr-modal_box {
    background: #fff;
    border-radius: 16px;
    padding: 36px 32px 28px;
    text-align: center;
    max-width: 340px;
    width: 90%;
    position: relative;
    box-shadow: 0 20px 60px rgba(0,0,0,0.2);
    animation: qrModalIn 0.3s ease both;
}
@keyframes qrModalIn {
    from { transform: scale(0.9) translateY(10px); opacity: 0; }
    to   { transform: scale(1) translateY(0);   opacity: 1; }
}
.qr-modal_close {
    position: absolute;
    top: 12px; right: 16px;
    background: none;
    border: none;
    font-size: 26px;
    color: #bbb;
    cursor: pointer;
    line-height: 1;
    padding: 4px 8px;
    border-radius: 50%;
    transition: color 0.2s, background 0.2s;
}
.qr-modal_close:hover {
    color: #333;
    background: #f5f5f5;
}
.qr-modal_label {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin-bottom: 20px;
}
.qr-modal_img {
    margin: 0 auto 16px;
    width: 220px;
    height: 220px;
    border-radius: 12px;
    overflow: hidden;
    background: #f8f8f8;
    border: 1px solid #eee;
}
.qr-modal_img img {
    width: 100%; height: 100%;
    object-fit: contain;
}
.qr-modal_tip {
    font-size: 13px;
    color: #999;
    margin: 0;
}

/* ========== 响应��?========== */
@media (max-width: 1200px) {
    .contact-cards_grid { grid-template-columns: repeat(2, 1fr); }
    .contact-stores_grid { grid-template-columns: repeat(2, 1fr); }
    .contact-main_grid { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 768px) {
    .contact-hero { padding: 50px 0 30px; }
    .contact-hero_title { font-size: 30px; }
    .contact-cards { padding: 30px 0 0; }
    .contact-cards_grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .contact-card { padding: 24px 16px; }
    .contact-card_icon { width: 44px; height: 44px; }
    .contact-card_icon svg { width: 20px; height: 20px; }
    .contact-card h4 { font-size: 12px; }
    .contact-card p { font-size: 13px; }
    .contact-main { padding: 50px 0; }
    .contact-main_grid { grid-template-columns: 1fr; gap: 40px; }
    .section-title { font-size: 26px; }
    .contact-stores { padding: 50px 0; }
    .contact-stores_grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .store-card_img { height: 160px; }
    .contact-faq_inner { grid-template-columns: 1fr; gap: 30px; }
    .contact-faq_text { text-align: center; }
}
@media (max-width: 480px) {
    .contact-cards_grid { grid-template-columns: 1fr; }
    .contact-stores_grid { grid-template-columns: 1fr; }
    .contact-form_new .cf-row_half { grid-template-columns: 1fr; }
    .contact-qr_row { grid-template-columns: 1fr; }
    .contact-hero_title { font-size: 26px; }
    .contact-map_img > img { height: 220px; }
}

/* ===== 保留旧类名兼容（不影响其它页面的表单样式��?==== */
.contact_form { /* ��?contact-form_new 替代 */ }
.contact_form .form_row { /* ��?cf-row 替代 */ }
.contact_form input[type="text"],
.contact_form input[type="tel"] { /* ��?cf-field input 替代 */ }
.contact_form textarea { /* ��?cf-field textarea 替代 */ }
.contact_form .contact_btn { /* ��?cf-submit 替代 */ }
.neititle { /* ��?section-title 替代 */ }

/* 新闻列表页面 */
.newslistp {
    width: 100%;
    height: auto;
    padding: 70px 0px;
    background-color: #f7f8fa;
}
.newslistp_item {
    width: 100%;
    height: 400px;
    align-items: flex-start;
}
.newslistp_l {
    width: 50%;
    height: 100%;
    overflow: hidden;
}
.newslistp_l img {
    width:100%;
    height:100%;
    object-fit: cover;
}
.newslistp_r {
    text-align: left;
    padding: 50px ;
    width: 50%;
}
.newslistp_r h3 {
    font-size: 24px;
    color: #333333;
    margin-bottom: 40px;
}
.newslistp_r p {
    line-height: 28px;
    font-size: 14px;
    color: #666666;
}
.newslistp_rbot {
    margin-top: 100px;
}
.newslistp_rbot span {
    font-size: 16px;
    color: #333333;
}
.newslistp_rbot strong {
    font-weight: normal;
    font-size: 16px;
    color: #333333;
}
.newslistp_top {
    width: 100%;
    position:relative;
}
.newslistppagination {
    text-align: center;
    width: 100%;
    margin-top: 20px;
}
.newslistppagination .swiper-pagination-bullet {
    background-color: #e0e0e0;
}
.newslistppagination .swiper-pagination-bullet-active {
    background-color: #ffb900;
}
.newslistp_item:hover .newslistp_l img {
    transform: scale(1.05);
}
.newslistp_item:hover .newslistp_r h3 {
    font-weight: bold;
    color: #097168;
}
.newslistp_bot {
    width: 100%;
    height: auto;
    margin-top: 100px;
}
.newslistp_bot ul li {
    margin-bottom: 40px;
    transition: all .5s;
}
.newslistp_botimg {
    width: 100%;
    height: 190px;
    overflow: hidden;
}
.newslistp_botimg img {
    width:100%;
    height: 100%;
    object-fit: cover;
}
.newslistp_botdes {
    padding: 35px;
    background-color: #ffffff;
    height: 210px;
    flex-direction: column;
    align-items: flex-start;
    transition: all .5s;
}
.newslistp_botdes h3 {
    color: #333333;
    font-size: 20px;
    line-height: 30px;
}
.newslistp_botdes p {
    font-size: 16px;
    color: #333333;
    width: 100%;
    text-align: right;
}
.newslistp_bot ul li:hover .newslistp_botimg img {
    transform: scale(1.05);
}
.newslistp_bot ul li:hover .newslistp_botdes h3,.newslistp_bot ul li:hover .newslistp_botdes p  {
    color: #097168;
}
.newslistp_bot ul li:hover .newslistp_botdes {
   background-color: #097168;
   box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}
.newslistp_bot ul li:hover .newslistp_botdes h3,.newslistp_bot ul li:hover .newslistp_botdes p {
    color: #ffffff;
 }
.jumpto {
    display: none;
}

 .newspage {
    text-align: center;
    width: 100%;
 }
 .newsdetail {
    padding: 70px 0px;
    align-items: flex-start;
 }
 .newsde_l {
    width: 70%;
    height: auto;
 }
 .newsde_ltime {
    width: 100%;
    padding-bottom: 20px;
 }
 .newsdel_left p {
    font-size: 14px;
    font-weight: bold;
    color: #333333;
 }
 .newsdel_left p a {
    color: #097168;
 }
 .newsdel_left p span {
    margin: 0px 5px;
 }
 .newsdel_left p i {
    font-style: normal;
 }
 .newsde_l h2 {
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 30px;
 }
 .newsdel_right a {
    margin-left: 10px;
 }
 .newsdel_right img {
    height: 22px;
    filter: brightness(200%) grayscale(200%);
 }
 .newsdel_right img:hover {
    filter: unset;
 }
 .qrcode_ewmimg {
    display: none;
 }
 .layui-layer-page .layui-layer-content {
    padding: 10px;
}
 .newsde_lcontent {
    padding: 30px 0px;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
 }
 .newsde_lcontent p {
    font-size: 16px;
    line-height: 30px;
 }
 .newsde_r {
    width: 23%;
    background-color:#f7f8fc;
    padding: 20px;
 }
 .newsde_r ul li {
    margin-top: 20px;
 }
 .newsde_r ul li:first-child {
    margin-top: 0px;
 }
 .newsde_rimg {
    width: 100%;
    height: 150px;
    overflow: hidden;
 }
 .newsde_rimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
 }
 .newsde_rdesc {
    padding: 20px 0px;
    border-bottom:1px solid #e8e8e8;
 }
 .newsde_rdesc h3 {
    line-height: 1.5;
    font-size: 14px;
 }
 .newsde_rdesc p {
    font-size: 14px;
    margin-top: 20px;
 }
 .newsde_lbot {
    margin-top: 30px;
 }
 .newdelb_l {
    width: 40%;
    height: 20px ;
    overflow: hidden;
 }
 .newdelb_l p, .newdelb_l p a {
    font-size: 14px;
    color: #666666;
 }
 .newdelb_m a {
    display: block;
    border: 1px solid #e8e8e8;
    padding: 10px 20px;
 }
 .newdelb_m a:hover {
    background-color: #097168;
    color: #ffffff;
    border-color: #097168;
 }
 .newdelb_l p:hover a {
    color: #097168;
 }
 .newdelb_r {
    text-align: right;
 }
 .newsde_r ul li:hover .newsde_rimg img {
    transform: scale(1.05);
 }
 .newsde_r ul li:hover .newsde_rdesc h3 {
    font-weight: bold;
    color: #097168;
 }

 /* 服务案例 */
 .casetop {
    width: 100%;
    border-bottom:1px solid #E5E5E5 ;
    margin: 40px 0px;
 }
 
.caselist_page {
    padding-bottom: 50px;
}
 .casetop_l {
    align-items: flex-start;
 }
 .casetop_l h3 {
    font-size: 18px;
    font-weight: bold;
    color: #097168;
    padding-bottom: 15px;
    border-bottom: 3px solid #097168;
 }
 .casetop_l span {
    font-size: 14px;
    color: #999999;
    margin-left: 10px;
    font-weight: normal;
    text-transform: uppercase;
 }
 .casetop_r {
    background: url(../images/shouye.svg) no-repeat left center;
    background-size: contain;
    padding-left: 30px;
 }
 .casetop_r p, .casetop_r p a {
    font-size: 14px;
    color: #333333;
 }
 .casetop_r p a:hover {
    color:#097168;
 }
 .caselistmid {
    margin: 40px 0px ;
    align-items: flex-start;
 }
 .caselistmid ul {
    justify-content: flex-start;
    width: 100%;
    height: auto;
 }
 .caselistmid ul li a {
    padding: 10px 15px;
    font-size: 16px;
    margin-bottom: 10px;
    color: #333333;
    display: block;
 }
 .caselistmid ul li a:hover,.caselistmid ul li.active a {
     background-color: #097168;
     color: #ffffff;
 }
 .caselistmid ul li:first-child:hover a {
    background: none;
    color: #333333;
 }
 .caselistmid ul.active {
    height: auto;
 }
 .caselistm_r {
    margin-top: 10px;
    cursor: pointer;
 }
 .caselistm_r img {
    height: 10px;
    transform: rotate(90deg);
 }
 .caselistm_r p {
    font-size: 16px;
    color: #097168;
    margin-left: 10px;
 }
.caselistm_r.active img {
    transform: rotate(270deg);
}
.caselist_item {
    width: 100%;
}
.caselist_item ul li {
    margin-bottom: 40px;
}
.caselist_liimg {
    width: 100%;
    height: 220px;
    overflow: hidden;
}
.caselist_liimg img {
    width:100%;
    height: 100%;
    object-fit: cover;
}
.caselist_lidesc {
    padding: 20px ;
    background-color: #ffffff;
    border: 1px solid #ffffff;
}
.caselist_lidesc h3 {
    font-size: 18px;
    color: #333333;
    margin-bottom: 10px;
    transition: all .5s;
}
.caselist_lidesc p {
    font-size: 14px;
    line-height: 24px;
    color: #666666;
}
.caselist_lidesc button {
    margin-top: 20px;
    font-size: 12px;
    padding: 7px 25px;
    border-radius: 20px;
    background:none ;
    border: 1px solid #e5e5e5;
}
.caselist_item ul li:hover .caselist_lidesc {
    border-color:  #e5e5e5;
}
.caselist_item ul li:hover .caselist_liimg img {
    transform: scale(1.05);
}
.caselist_item ul li:hover .caselist_lidesc button {
    background-color: #097168;
    color: #ffffff;
}
.caselist_item ul li:hover .caselist_lidesc h3 {
    color: #097168;
    font-weight: bold;
}

/* 产品列表页面 */
/* ==================== 产品列表��?��?侧边栏（v12 重写��?==================== */
/* --- 产品列表页 --- */
.prolistpage {
  background: #f7f8fc;
  padding: 40px 0 80px;
}
.prolist_item {
  display: flex;
  align-items: flex-start;
  gap: 36px;
}
/* 左侧分类导航 */
.prolist_l {
  width: 210px;
  flex-shrink: 0;
}
.prolist_lnav {
  position: sticky;
  top: 100px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.06);
  overflow: hidden;
}
.prolist_ltop {
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #054a44, #097168);
}
.prolist_ltop h2 {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 3px;
  color: #fff;
  margin: 0;
}
.prolist_lbot > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.prolist_lbot > ul > li {
  border-bottom: 1px solid #f2f2f2;
}
.prolist_lbot > ul > li:last-child {
  border-bottom: none;
}
.prolist_lbot > ul > li .pronav1 {
  padding: 15px 20px;
  cursor: pointer;
  transition: background .2s;
}
.prolist_lbot > ul > li .pronav1:hover {
  background: #f6f8fb;
}
.prolist_lbot > ul > li .pronav1 a {
  font-size: 14px;
  font-weight: 600;
  color: #333;
  transition: color .2s;
}
.prolist_lbot > ul > li .pronav1 a:hover {
  color: #097168;
}
.prolist_lbot > ul > li .pronav1 a.active {
  color: #097168;
}
.erpronav {
  background: #fafbfc;
  padding: 6px 14px 14px;
  display: none;
}
.erpronav.open { display: block; }
.erpronav > ul { list-style: none; margin: 0; padding: 0; }
.erpronav > ul > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 0;
  text-decoration: none;
}
.erpronav > ul > li > a > span {
  font-size: 13px;
  padding: 4px 12px;
  color: #666;
  border-radius: 6px;
  transition: all .2s;
}
.erpronav > ul > li > a > img {
  height: 7px;
  opacity: .3;
}
.erpronav > ul > li > a:hover span,
.erpronav > ul > li > a > span.active {
  color: #fff;
  background: linear-gradient(135deg, #054a44, #097168);
}

/* 右侧产品网格 */
.prolist_r {
  flex: 1;
  min-width: 0;
}
.prolist_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.prolist_card {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 2px 16px rgba(0,0,0,0.05);
  transition: transform .4s cubic-bezier(.25,.8,.25,1), box-shadow .4s cubic-bezier(.25,.8,.25,1);
}
.prolist_card:hover {
  transform: translateY(-8px);
  box-shadow: 0 16px 48px rgba(9,113,104,0.12);
}
.prolist_card_img {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1/1;
  background: #f5f6f9;
  display: flex;
  align-items: center;
  justify-content: center;
}
.prolist_card_img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(0,0,0,0.06));
  pointer-events: none;
  z-index: 1;
}
.prolist_card_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.25,.8,.25,1);
}
.prolist_card:hover .prolist_card_img img {
  transform: scale(1.08);
}
.prolist_card_overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(9,113,104,.75), rgba(7,85,78,.9));
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  z-index: 2;
  transition: opacity .4s cubic-bezier(.25,.8,.25,1);
}
.prolist_card:hover .prolist_card_overlay { opacity: 1; }
.prolist_card_view {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
  padding: 9px 24px;
  border: 2px solid rgba(255,255,255,.85);
  border-radius: 30px;
  transform: translateY(12px);
  transition: transform .4s cubic-bezier(.25,.8,.25,1), background .3s;
}
.prolist_card:hover .prolist_card_view { transform: translateY(0); }
.prolist_card_view:hover { background: rgba(255,255,255,.12); }
.prolist_card_body {
  padding: 18px 20px 22px;
}
.prolist_card_body h3 {
  font-size: 16px;
  font-weight: 700;
  color: #1a1a1a;
  margin-bottom: 8px;
  line-height: 1.4;
  transition: color .3s;
}
.prolist_card:hover .prolist_card_body h3 { color: #097168; }
.prolist_card_body p {
  font-size: 13px;
  color: #888;
  line-height: 1.7;
  margin: 0;
}

/* 分页 */
.prolist_page {
  margin-top: 40px;
  text-align: center;
}
.prolist_page .pagination {
  display: inline-flex;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.prolist_page .pagination li {
  display: inline-block;
  margin: 0;
}
.prolist_page .pagination li a,
.prolist_page .pagination li span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  font-size: 14px;
  color: #666;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  text-decoration: none;
  transition: all .25s;
}
.prolist_page .pagination li a:hover {
  color: #097168;
  border-color: #097168;
  background: rgba(9,113,104,.04);
}
.prolist_page .pagination li.active span,
.prolist_page .pagination li.active a {
  color: #fff;
  background: #097168;
  border-color: #097168;
}
.prolist_page .pagination li.disabled span {
  color: #ccc;
  background: #f8f8f8;
  border-color: #eee;
  cursor: not-allowed;
}
.prolist2_r {
    width: 100%;
}
.prolist2_r .prolist_item_img {
    height: 260px;
}
.prolist2_r .prolist_list ul li {
    transition: all .5s;
}
.prolist2_r .prolist_list ul li a {
    padding: 0px;
}
.prolist2_r .prolist_item_text {
    padding: 20px;
    transition: all .5s;
}
.prolist2_r .prolist_item_text h3 {
    margin-bottom: 0px;
    font-weight: normal;
    font-size: 16px;
}
.prolist2_r .prolist_item_text img {
    height: 8px;
}


.prolist2_r .prolist_list ul li:hover a {
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.4);
}
.prolist2_r .prolist_list ul li:hover .prolist_item_img img {
    transform: scale(1.05);
}
.prolist2_r .prolist_list ul li:hover .prolist_item_text {
    padding: 20px 15px;
}
.prolist2_r .prolist_list ul li:hover .prolist_item_text img {
    filter: brightness(0) invert(1);
}


.prolist2_top {
    width: 100%;
    padding: 0px 30px;
    background-color: #ffffff;
    margin-bottom: 80px;
}
.prolist2_topsx {
    width: 100%;
    border-top: 1px solid #eeeeee;
    padding: 25px 0px;
    align-items: flex-start;
}
.prolist2_topsx:first-child {
    border-top: 0px;
}
.prolist2_tsx_l {
    width: 7%;
}
.prolist2_tsx_l a {
    display: block;
    width: 100%;
    height: 36px;
    background-color: #097168;
	border-radius: 4px;
    font-size: 16px;
    text-align: center;
	line-height: 36px;
	letter-spacing: 1px;
	color: #ffffff;
}
.prolist2_tsx_r {
    width: 90%;
}
.prolist2_tsx_r ul {
    justify-content: flex-start;
}
.prolist2_tsx_r ul li {
    margin-right: 30px;
}
.prolist2_tsx_r ul li a {
    font-size: 16px;
	letter-spacing: 1px;
    height: 36px;
    padding: 0px 15px; 
	line-height: 36px;
    display: block;
	color: #666666;
}
.prolist2_tsx_r ul li:hover a,.prolist2_tsx_r ul li.active a {
    background-color: #097168;
    color: #ffffff;
}


.prodetail {
    width: 100%;
}
		/* 本例子css */
		.slideTxtBoxpro{ width:100%;   }
		.slideTxtBoxpro .hd{ width: 100%; height: 60px; position:relative; border-bottom: 1px solid #e8e8e8;}
        .prode_topl h3 {font-size:18px ;font-weight: bold;line-height: 60px;}
		.slideTxtBoxpro .hd ul{ height:60px;   }
		.slideTxtBoxpro .hd ul li{ float:left; padding:0 15px; cursor:pointer; line-height: 60px;font-size: 16px;color: #888888;}
        .slideTxtBoxpro .hd ul li:hover {color: #097168;}
		.slideTxtBoxpro .hd ul li.on{ color: #000000;  }
		.slideTxtBoxpro .bd ul{ padding:15px;  zoom:1;  }
        .prode_contop {
            width: 100%;
            margin: 50px 0px;
        }
    .prode_contop h3 {
        font-size: 38px;
        font-weight: bold;
        color: #333333;
        text-align: center;
    }
.prode_contop p {
    font-size: 16px;
    line-height: 30px;
    text-align: center;
}
.prode_video video {
    width: 100%;
}
.prode_caselist ol {
    list-style: none;
}
.prode_caselist ol li {
    width: 32%;
    transition: all .5s;
}
.prode_caselist ol li a {
    background-color: #f7f8fc;
    padding: 25px;
    display: block;
    width: 100%;
}
.prode_caselist_img {
    width: 100%;
    height: 200px;
    overflow: hidden;
}
.prode_caselist_img img {
    width:100%;
    height: 100%;
    object-fit: cover;
}
.prode_caselist_text h4 {
    font-size: 20px;
    font-weight: bold;
    margin-top: 25px;
}
.prode_caselist ol li:hover {
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}
.prode_caselist ol li:hover .prode_caselist_img img {
    transform: scale(1.05);
}
.prode_caselist ol li:hover .prode_caselist_text h4 {
    color:#097168;
}
.prode_casemore {
    width: 120px;
    height: 45px;
    background-color: #097168;
    border-radius: 3px;
    margin:50px auto ;
    padding: 0px 20px;
    transition: all .5s;
}
.prode_casemore a {
    width: 100%;
    height: 100%;
}
.prode_casemore a span {
    color: #ffffff;
}
.prode_casemore a i {
    color: #ffffff;
    font-style: normal;
}
.prode_casemore:hover {
    padding: 0px 12px;
}
.pdp-table {
    padding: 0 25px 60px;
    background-color: #f7f8fc;
}
.pdp-table table {
    width: 100%;
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
    border-spacing: 2px;
    border-collapse: separate;
}
.pdp-table table thead td {
    position: relative;
    z-index: 1;
    padding: 25px 20px;
}
.pdp-table table thead td:first-of-type {
    padding-left: 0;
}
.pdp-table table thead td::before {
    content: "";
    z-index: -1;
    position: absolute;
    top: -2px;
    bottom: 0;
    left: -27px;
    right: -27px;
    background-color: #fff;
}
.pdp-table table h3 {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;
    width: 220px;
    color: #000;
}
.pdp-table table  td img {
    display: block;
    max-width: 100px;
    width: 90%;
    margin-right: auto;
    margin-left: auto;
}
.pdp-table table  td {
    padding: 18px 20px;
    color: #474747;
    vertical-align: middle;
}
.pdp-table table  tr:first-of-type td {
    color: #000;
}
.pdp-table table  tr:nth-of-type(2n) {
    background-color: #fff;
}
.prode_gzfw {
    margin: 50px 0px;
}
.prode_gzfw h3 {
    font-size: 28px;
    font-weight: bold;
    color: #333333;
    margin-bottom: 30px;
}
.prode_gzfw_item p {
    font-size: 16px;
    line-height: 30px;
    color: #333333;
}

.prode_down {
    width: 100%;
    padding: 50px 0px;
}
.prode_downlist {
    margin-bottom: 25px;
}
.prode_downitem {
    position: relative;
    padding: 20px 30px ;
    background-color: #f7f8fc;
    cursor: pointer;
    transition: all .3s;
}
.prode_downitem h3 {
    font-size: 20px;
    font-weight: bold;
    color: #097168;
}
.prode_downitem img {
    height: 20px;
}
.slideTxtBoxpro .bd ul.prode_downxl {
    padding: 0px 30px;
    background-color:#f7f8fc ;
    display: none;
}
.prode_downxl li a {
    padding:20px 0px;
    width: 100%;
    border-top: 1px solid rgba(71,71,71,.2);
}
.prode_downxl li a p {
    font-size: 14px;
    width: 80%;
    line-height: 30px;
    color: #333333;
}
.prode_downxl li a img {
    height: 18px;
    object-fit: contain;
    filter: brightness(200%) grayscale(200%);
}
.prode_downxl li:first-child a {
    border-top: 0px;
}
.prode_downitem.active {
    background-color: #097168;
}
.prode_downitem.active h3 {
    color:#ffffff;

}
.prode_downitem.active img {
    filter: grayscale(1000%) brightness(1000%) ;
    transform: rotate(180deg);
}

.searchpage {
    margin-top: 0px;
}

.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
    border-color: #097168;
    background-color: #097168;
}
.pagination>li>a, .pagination>li>span {
    color: #097168;
}
.detailpage {
    width: 100%;
}
.detailpage  h2 {
    text-align: center;
}


.procon1_item {
    align-items: flex-start;
}
/* ================================================================
   产品详情��?PDP ��?Premium Beauty Brand Style
   ================================================================ */

/* ---- 内页 Banner（替代旧 neibanner��?---- */
/* =============================================
   PDP — 高端产品详情页 (Premium Product Detail)
   ============================================= */

/* ---- Banner / 顶部面包屑 ---- */
.pdp-banner {
  background: linear-gradient(135deg, #f8f6f3 0%, #efe9e1 50%, #f0ebe3 100%);
  padding: 96px 0 36px;
}
.pdp-banner-inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}
.pdp-breadcrumb {
  font-size: 13px;
  color: #999;
}
.pdp-breadcrumb a { color: #666; text-decoration: none; transition: color .2s; }
.pdp-breadcrumb a:hover { color: #1a1a1a; }
.pdp-breadcrumb-sep { margin: 0 8px; color: #ccc; }
.pdp-breadcrumb-current { color: #333; }

/* ---- Hero 区域 ---- */
.pdp-section { padding-bottom: 80px; }
.pdp-hero {
  display: flex;
  gap: 60px;
  align-items: flex-start;
  padding: 56px 20px 60px;
}

/* 左侧画廊 */
.pdp-gallery {
  flex: 0 0 58%;
  max-width: 58%;
  position: relative;
  overflow: visible;
}
.pdp-gallery-main { position: relative; margin-bottom: 0; }
.pdp-gallery-top {
  width: 100%;
  border-radius: 16px;
  background: linear-gradient(135deg, #f0f4f8 0%, #e8f0f5 50%, #f5eef5 100%);
  border: 1px solid #eee;
  overflow: hidden;
}
.pdp-gallery-top .swiper-container { border-radius: 16px; }
.pdp-gallery-top .swiper-wrapper { border-radius: 16px; }
.pdp-gallery-top .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  height: auto !important;
  position: relative;
}
.pdp-gallery-top img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform .5s ease;
}

/* ---- 图片放大镜 (Zoom Lens) ---- */
.pdp-zoom-wrap {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  z-index: 5;
  cursor: crosshair;
  display: none;
}
.pdp-zoom-lens {
  position: absolute;
  width: 180px; height: 180px;
  border: 2px solid rgba(10,74,68,.5);
  border-radius: 50%;
  background: rgba(255,255,255,.2);
  pointer-events: none;
  display: none;
  z-index: 10;
  box-shadow: 0 0 20px rgba(0,0,0,.15);
}
.pdp-zoom-result {
  position: absolute;
  top: 0;
  left: calc(100% + 20px);
  width: 420px;
  height: 420px;
  border: 1px solid #e0ddd7;
  border-radius: 12px;
  box-shadow: 0 16px 48px rgba(0,0,0,.12);
  background-repeat: no-repeat;
  z-index: 20;
  display: none;
  background-color: #fff;
}
.pdp-gallery-top:hover .pdp-zoom-result,
.pdp-gallery-top:hover .pdp-zoom-lens,
.pdp-gallery-top:hover .pdp-zoom-wrap {
  display: block;
}

/* 缩略图 */
.pdp-gallery-thumbs {
  margin-top: 16px;
  height: 90px;
}
.pdp-gallery-thumbs .swiper-slide {
  height: 100%; width: 25% !important;
  cursor: pointer; opacity: .45;
  border-radius: 10px; overflow: hidden;
  border: 2px solid transparent;
  transition: opacity .25s, border-color .25s, transform .2s;
}
.pdp-gallery-thumbs .swiper-slide:hover { opacity: .7; transform: translateY(-2px); }
.pdp-gallery-thumbs .swiper-slide-thumb-active { opacity: 1 !important; border-color: #0a4a44; }
.pdp-gallery-thumbs img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* 箭头 */
.pdp-gallery-prev, .pdp-gallery-next {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 44px; height: 44px; border-radius: 50%;
  background: rgba(255,255,255,.92);
  box-shadow: 0 2px 12px rgba(0,0,0,.1);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; z-index: 10; transition: background .2s, transform .2s;
  border: none;
}
.pdp-gallery-prev { left: -22px; }
.pdp-gallery-next { right: -22px; }
.pdp-gallery-prev svg, .pdp-gallery-next svg { width: 20px; height: 20px; color: #333; }
.pdp-gallery-prev:hover, .pdp-gallery-next:hover { background: #fff; transform: translateY(-50%) scale(1.08); }

/* ---- 右侧产品信息 (粘性) ---- */
.pdp-info { flex: 1; min-width: 0; padding-top: 4px; }
.pdp-info-sticky { position: sticky; top: 100px; }

/* 标签 */
.pdp-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.pdp-tag {
  font-size: 12px; color: #c49a6c; border: 1px solid #e8dcc8;
  padding: 3px 14px; border-radius: 20px; letter-spacing: .5px;
  background: #fdfbf7;
}

/* 标题 & 副标题 */
.pdp-title {
  font-size: 32px; font-weight: 600; color: #1a1a1a;
  line-height: 1.35; margin-bottom: 14px; letter-spacing: .5px;
}
.pdp-subtitle {
  font-size: 15px; line-height: 1.75; color: #666;
  margin-bottom: 24px; letter-spacing: .3px;
}

/* ---- 产品亮点图标行 ---- */
.pdp-highlights {
  display: flex; gap: 16px; margin-bottom: 20px;
  flex-wrap: wrap;
}
.pdp-highlight-item {
  display: flex; align-items: center; gap: 10px;
  font-size: 13px; color: #666;
}
.pdp-highlight-icon {
  width: 38px; height: 38px; border-radius: 50%;
  background: linear-gradient(135deg, #f0f7f6, #e4f0ee);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.pdp-highlight-icon svg { width: 18px; height: 18px; color: #0a4a44; }
.pdp-highlight-text { font-weight: 500; }

/* 价格 */
.pdp-price-row {
  display: flex; align-items: baseline; gap: 12px;
  padding: 18px 22px;
  background: linear-gradient(135deg,#fffbf5,#fef6eb);
  border: 1px solid #f0e0c8; border-radius: 12px; margin-bottom: 28px;
}
.pdp-price-label { font-size: 14px; color: #999; }
.pdp-price-value { font-size: 28px; font-weight: 700; color: #b88a4e; }

/* 规格参数网格 */
.pdp-specs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 1px; background: #eee; border-radius: 10px; overflow: hidden;
  margin-bottom: 28px; border: 1px solid #eee;
}
.pdp-spec-item {
  display: flex; flex-direction: column; gap: 4px;
  padding: 14px 18px; background: #fff;
}
.pdp-spec-label { font-size: 12px; color: #999; }
.pdp-spec-value { font-size: 15px; color: #333; font-weight: 500; }

/* 功效 / 成分 区块 */
.pdp-section-label {
  font-size: 15px; font-weight: 600; color: #333; margin-bottom: 10px;
  position: relative; padding-left: 14px;
}
.pdp-section-label::before {
  content: ''; position: absolute; left: 0; top: 4px;
  width: 3px; height: 16px; background: #c49a6c; border-radius: 2px;
}
.pdp-effects { margin-bottom: 24px; }
.pdp-effects-list { font-size: 14px; color: #666; line-height: 1.85; }
.pdp-ingredients { margin-bottom: 28px; }
.pdp-ingredients-text { font-size: 14px; color: #666; line-height: 1.85; }

/* CTA 按钮 */
.pdp-actions { display: flex; gap: 14px; margin-bottom: 20px; flex-wrap: wrap; }
.pdp-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 14px 36px; border-radius: 30px; font-size: 15px; font-weight: 500;
  text-decoration: none; transition: all .3s ease; cursor: pointer;
  border: none;
}
.pdp-btn-primary {
  background: linear-gradient(135deg, #0a4a44, #1a5a52);
  color: #fff; box-shadow: 0 4px 16px rgba(10,74,68,.3);
}
.pdp-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 6px 24px rgba(10,74,68,.4); }
.pdp-btn-secondary {
  background: transparent; color: #0a4a44;
  border: 1.5px solid #0a4a44;
}
.pdp-btn-secondary:hover { background: #0a4a44; color: #fff; }

.pdp-date { font-size: 13px; color: #bbb; margin-top: 8px; }

/* 分享按钮 */
.pdp-share {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #f0ece6;
}
.pdp-share-label { font-size: 13px; color: #999; flex-shrink: 0; }
.pdp-share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #f7f5f2;
  transition: all .25s ease;
  text-decoration: none;
}
.pdp-share-btn:hover { transform: scale(1.12); background: #efebe5; }
.pdp-share-btn svg { display: block; }

/* ---- Tab 详情区域 ---- */
.pdp-detail { padding: 0 20px; }
.pdp-tab-nav {
  display: flex; gap: 4px; border-bottom: 1px solid #eee;
  margin-bottom: 36px; justify-content: center;
}
.pdp-tab-btn {
  padding: 16px 36px; font-size: 16px; font-weight: 500; color: #888;
  background: none; border: none; border-bottom: 2px solid transparent;
  cursor: pointer; transition: all .25s ease; letter-spacing: 1px;
}
.pdp-tab-btn.active { color: #0a4a44; border-bottom-color: #0a4a44; }
.pdp-tab-btn:hover:not(.active) { color: #333; }
.pdp-tab-content { min-height: 200px; }
.pdp-tab-pane { display: none; animation: pdpFadeIn .4s ease; }
.pdp-tab-pane.active { display: block; }
@keyframes pdpFadeIn { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }

.pdp-detail-body img { max-width: 100%; height: auto; display: block; margin: 12px auto; border-radius: 8px; }
.pdp-detail-body p { font-size: 15px; line-height: 1.95; color: #444; margin-bottom: 10px; }

.pdp-ingredient-card, .pdp-usage-card {
  background: #fafaf9; border-radius: 12px; padding: 32px;
  border: 1px solid #efebe5;
}
.pdp-ingredient-card h3, .pdp-usage-card h3 {
  font-size: 20px; color: #333; margin-bottom: 16px; font-weight: 600;
}
.pdp-ingredient-card p, .pdp-usage-card p {
  font-size: 15px; line-height: 1.95; color: #666;
}

/* ---- 相关推荐 ---- */
.pdp-related { padding: 48px 20px 0; }
.pdp-related-header {
  text-align: center; margin-bottom: 40px;
  position: relative; padding: 0 40px;
}
.pdp-related-header h2 {
  font-size: 28px; font-weight: 600; color: #1a1a1a; letter-spacing: 2px;
  display: inline-block; position: relative; z-index: 1;
  padding: 0 24px; background: #fff;
}
.pdp-related-line {
  position: absolute; top: 50%; left: 0; right: 0;
  height: 1px; background: #e5e0db; z-index: 0;
}
.pdp-related-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
  opacity: 0;
  transform: translateY(30px);
  animation: pdpReveal .6s ease forwards;
}
@keyframes pdpReveal { to { opacity: 1; transform: translateY(0); } }

.pdp-related-card {
  display: block; text-decoration: none; border-radius: 14px; overflow: hidden;
  background: #fff; border: 1px solid #f0ece6; transition: all .35s ease;
}
.pdp-related-card:hover { transform: translateY(-6px); box-shadow: 0 12px 36px rgba(0,0,0,.09); border-color: #ddd8d0; }
.pdp-related-img-wrap {
  width: 100%; aspect-ratio: 1/1; overflow: hidden;
  background: #f7f5f2;
}
.pdp-related-img-wrap img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .5s ease;
}
.pdp-related-card:hover .pdp-related-img-wrap img { transform: scale(1.06); }
.pdp-related-body { padding: 20px 18px 24px; }
.pdp-related-name {
  font-size: 17px; font-weight: 600; color: #222; margin-bottom: 8px;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.pdp-related-desc {
  font-size: 13px; color: #888; line-height: 1.65;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden; margin-bottom: 12px; height: 42px;
}
.pdp-related-link {
  font-size: 13px; color: #c49a6c; font-weight: 500; letter-spacing: .5px;
  transition: color .2s;
}
.pdp-related-card:hover .pdp-related-link { color: #0a4a44; }

/* ---- 上下篇导航 ---- */
.pdp-pagination { padding: 30px 20px 10px; gap: 20px; align-items: center; }
.pdp-pagi-prev, .pdp-pagi-next { flex: 1; }
.pdp-pagi-prev a, .pdp-pagi-next a { text-decoration: none; display: block; }
.pdp-pagi-label { font-size: 13px; color: #aaa; display: block; margin-bottom: 4px; }
.pdp-pagi-title {
  font-size: 15px; color: #333; display: block;
  white-space: nowrap; overflow: hidden;
  text-overflow: ellipsis; max-width: 280px;
}
.pdp-pagi-prev a:hover .pdp-pagi-title,
.pdp-pagi-next a:hover .pdp-pagi-title { color: #c49a6c; }
.pdp-pagi-disabled { font-size: 14px; color: #ccc; }
.pdp-pagi-back {
  display: inline-flex; align-items: center; padding: 10px 28px;
  border: 1px solid #ddd; border-radius: 24px; font-size: 14px; color: #666;
  text-decoration: none; transition: all .2s;
}
.pdp-pagi-back:hover { border-color: #0a4a44; color: #0a4a44; }

/* ---- 浮动底部 CTA (Mobile) ---- */
.pdp-float-cta {
  display: none;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 999;
  background: rgba(255,255,255,.97);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-top: 1px solid #f0ece6;
  padding: 12px 20px;
  box-shadow: 0 -4px 24px rgba(0,0,0,.06);
}
.pdp-float-inner {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
}
.pdp-float-title {
  flex: 1; font-size: 15px; font-weight: 500; color: #333;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.pdp-float-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 12px 28px; border-radius: 30px;
  background: linear-gradient(135deg, #0a4a44, #1a5a52);
  color: #fff; font-size: 14px; font-weight: 500;
  text-decoration: none; white-space: nowrap;
  transition: all .25s;
}
.pdp-float-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 16px rgba(10,74,68,.3); }

/* ---- 滚动入场动画 (Reveal) ---- */
.pdp-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .6s ease, transform .6s ease;
}
.pdp-reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ---- 微徽章 (Badge) ---- */
.pdp-badge {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 12px; font-weight: 500; color: #0a4a44;
  background: rgba(10,74,68,.08);
  padding: 4px 12px; border-radius: 20px;
  margin-bottom: 12px;
}

.detags {
    margin: 40px 0px 0px;
}
.detags p {
    font-size: 14px;
}
.detags p a {
    font-size: 14px;
    margin: 0px 5px;
}

.search-empty{
    width: 100%;
    text-align: center;
}
/* ================================================================
   招商加盟 - 全新高端品牌视觉设计
   ================================================================ */

/* --- 通用区块标题 --- */
.join_sec { padding: 90px 0; overflow: hidden; }
.join_section_head { text-align: center; margin-bottom: 60px; }
.join_section_tag {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 4px;
    color: #097168;
    background: rgba(9,113,104,0.06);
    padding: 6px 20px;
    border-radius: 20px;
    margin-bottom: 16px;
}
.join_section_head h2 { font-size: 38px; color: #1a1a1a; font-weight: 600; }
.join_section_head h2 em { color: #097168; font-style: normal; }
.join_section_head p { font-size: 16px; color: #999; margin-top: 12px; }

/* --- HERO 大屏 --- */
.join_hero {
    position: relative;
    width: 100%;
    min-height: 580px;
    display: flex;
    align-items: center;
    overflow: hidden;
}
.join_hero_bg {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 0;
}
.join_hero_bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.join_hero_overlay {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1;
    background: linear-gradient(135deg, rgba(6,50,45,0.85) 0%, rgba(9,113,104,0.6) 50%, rgba(0,0,0,0.4) 100%);
}
.join_hero_content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 80px 0;
}
.join_hero_text { flex: 1; min-width: 340px; max-width: 600px; }
.join_hero_badge {
    display: inline-block;
    background: #ffb900;
    color: #1a1a1a;
    font-size: 13px;
    font-weight: 700;
    padding: 5px 16px;
    border-radius: 4px;
    letter-spacing: 2px;
    margin-bottom: 20px;
}
.join_hero_text h1 {
    font-size: 46px;
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
    margin-bottom: 16px;
}
.join_hero_text p {
    font-size: 17px;
    color: rgba(255,255,255,0.85);
    line-height: 1.7;
    margin-bottom: 32px;
}
.join_hero_actions { display: flex; gap: 16px; flex-wrap: wrap; }
.join_hero_btn_primary {
    display: inline-block;
    padding: 16px 40px;
    background: linear-gradient(135deg, #ffb900 0%, #ff9a00 100%);
    color: #1a1a1a;
    font-size: 17px;
    font-weight: 700;
    border-radius: 6px;
    transition: transform .3s, box-shadow .3s;
    letter-spacing: 1px;
}
.join_hero_btn_primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(255,185,0,0.4);
    color: #1a1a1a;
}
.join_hero_btn_outline {
    display: inline-block;
    padding: 16px 36px;
    border: 2px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    border-radius: 6px;
    transition: all .3s;
}
.join_hero_btn_outline:hover {
    border-color: #fff;
    background: rgba(255,255,255,0.1);
    color: #fff;
}
.join_hero_stats {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
}
.join_stat_item {
    text-align: center;
    padding: 24px 30px;
    background: rgba(255,255,255,0.1);
    border-radius: 10px;
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,0.15);
}
.join_stat_num {
    display: block;
    font-size: 38px;
    font-weight: 700;
    color: #ffb900;
    line-height: 1;
}
.join_stat_num em { font-style: normal; }
.join_stat_label {
    display: block;
    font-size: 14px;
    color: rgba(255,255,255,0.75);
    margin-top: 6px;
}

/* --- 品牌优势 --- */
.join_adv { background: #fff; }
.join_adv_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    max-width: 1200px;
    margin: 0 auto;
}
.join_adv_card {
    position: relative;
    background: #fff;
    border-radius: 12px;
    padding: 45px 30px 35px;
    text-align: center;
    box-shadow: 0 4px 24px rgba(0,0,0,0.04);
    transition: transform .4s, box-shadow .4s;
    overflow: hidden;
    border: 1px solid #f0f0f0;
}
.join_adv_card::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, #097168, #097168);
    transform: scaleX(0);
    transition: transform .4s;
}
.join_adv_card:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 48px rgba(9,113,104,0.1);
    border-color: #e0e8f5;
}
.join_adv_card:hover::after { transform: scaleX(1); }
.join_adv_card_icon {
    width: 72px; height: 72px;
    background: linear-gradient(135deg, #e8f0fe 0%, #d4e2fc 100%);
    border-radius: 18px;
    margin: 0 auto 24px;
    display: flex; align-items: center; justify-content: center;
    transition: transform .3s;
}
.join_adv_card:hover .join_adv_card_icon { transform: scale(1.1); }
.join_icon {
    display: block;
    width: 36px; height: 36px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.join_icon_brand { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Cpath d='M18 2L4 9v12c0 8.3 6 16 14 18 8-2 14-9.7 14-18V9L18 2z' fill='%23097168'/%3E%3Cpath d='M16 20l-4-4 2-2 2 2 6-6 2 2z' fill='%23fff'/%3E%3C/svg%3E"); }
.join_icon_rd { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='16' fill='%23097168'/%3E%3Cpath d='M18 6v6m0 8v10M6 18h6m8 0h10' stroke='%23fff' stroke-width='3' stroke-linecap='round'/%3E%3Ccircle cx='18' cy='18' r='4' fill='%23fff'/%3E%3C/svg%3E"); }
.join_icon_train { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Crect x='2' y='8' width='32' height='22' rx='4' fill='%23097168'/%3E%3Cpath d='M10 10h16l-2-8H12z' fill='%23fff'/%3E%3Crect x='8' y='18' width='8' height='6' rx='2' fill='%23fff'/%3E%3Crect x='20' y='18' width='8' height='6' rx='2' fill='%23fff'/%3E%3C/svg%3E"); }
.join_icon_mkt { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Cpath d='M18 2l16 10v20H2V12L18 2z' fill='%23097168'/%3E%3Ccircle cx='18' cy='20' r='8' fill='%23fff'/%3E%3Ccircle cx='18' cy='20' r='4' fill='%23097168'/%3E%3C/svg%3E"); }
.join_adv_card h3 { font-size: 20px; color: #1a1a1a; margin-bottom: 10px; font-weight: 600; }
.join_adv_card p { font-size: 14px; color: #888; line-height: 1.8; }
.join_adv_card_num {
    position: absolute;
    top: 20px; right: 20px;
    font-size: 40px;
    font-weight: 800;
    color: rgba(9,113,104,0.06);
    pointer-events: none;
}

/* --- 加盟条件 --- */
.join_cond { background: #f8f9fb; }
.join_cond_wrap { max-width: 900px; margin: 0 auto; }
.join_cond_row {
    display: flex;
    align-items: center;
    gap: 40px;
    margin-bottom: 30px;
    padding: 30px 40px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.03);
    transition: transform .3s, box-shadow .3s;
}
.join_cond_row:hover { transform: translateX(4px); box-shadow: 0 4px 24px rgba(9,113,104,0.08); }
.join_cond_reverse { flex-direction: row-reverse; }
.join_cond_reverse:hover { transform: translateX(-4px); }
.join_cond_img { flex-shrink: 0; }
.join_cond_circle {
    width: 64px; height: 64px;
    border-radius: 50%;
    background: linear-gradient(135deg, #097168, #097168);
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}
.join_cond_body { flex: 1; }
.join_cond_body h3 { font-size: 20px; color: #1a1a1a; margin-bottom: 8px; font-weight: 600; }
.join_cond_body p { font-size: 15px; color: #666; line-height: 1.7; }

/* --- 加盟流程 --- */
.join_flow_sec { background: #fff; }
.join_flow_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 1000px;
    margin: 0 auto;
}
.join_flow_step {
    flex: 0 0 260px;
    text-align: center;
    padding: 40px 20px;
    background: #f8f9fb;
    border-radius: 16px;
    transition: transform .3s, box-shadow .3s;
    position: relative;
}
.join_flow_step:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(9,113,104,0.1);
    background: #fff;
}
.join_flow_step_icon {
    width: 64px; height: 64px;
    line-height: 64px;
    background: linear-gradient(135deg, #097168 0%, #097168 100%);
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    border-radius: 50%;
    margin: 0 auto 18px;
    box-shadow: 0 6px 20px rgba(9,113,104,0.25);
}
.join_flow_step_body h3 { font-size: 20px; color: #1a1a1a; font-weight: 600; margin-bottom: 10px; }
.join_flow_step_body p { font-size: 14px; color: #888; line-height: 1.7; }
.join_flow_line {
    width: 80px; height: 2px;
    background: linear-gradient(90deg, #097168, transparent);
    flex-shrink: 0;
    position: relative;
}
.join_flow_line::after {
    content: '';
    position: absolute;
    right: -6px; top: -5px;
    width: 12px; height: 12px;
    background: #097168;
    border-radius: 50%;
}

/* --- 门店展示 --- */
.join_stores_sec { background: #f8f9fb; }
.join_stores_grid { max-width: 1200px; margin: 0 auto; }
.join_stores_grid > ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    list-style: none;
    padding: 0;
    margin: 0;
}
.join_store_card {
    display: block;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(0,0,0,0.04);
    transition: transform .4s, box-shadow .4s;
}
.join_store_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(0,0,0,0.1);
}
.join_store_card_img {
    position: relative;
    overflow: hidden;
}
.join_store_card_img img {
    width: 100%;
    height: 210px;
    object-fit: cover;
    transition: transform .5s;
}
.join_store_card:hover .join_store_card_img img { transform: scale(1.06); }
.join_store_card_tag {
    position: absolute;
    top: 12px; right: 12px;
    background: #097168;
    color: #fff;
    font-size: 11px;
    padding: 3px 10px;
    border-radius: 3px;
    letter-spacing: 1px;
}
.join_store_card_info { padding: 18px 20px; }
.join_store_card_info h4 { font-size: 17px; color: #1a1a1a; margin-bottom: 6px; font-weight: 600; }
.join_store_card_info p { font-size: 13px; color: #999; margin-bottom: 10px; line-height: 1.5; }
.join_store_card_arrow {
    font-size: 13px;
    color: #097168;
    font-weight: 500;
    transition: padding .3s;
}
.join_store_card:hover .join_store_card_arrow { padding-left: 4px; }

/* --- 扶持政策 --- */
.join_support { background: #fff; }
.join_support_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto;
}
.join_support_item {
    padding: 32px 24px;
    background: #f8f9fb;
    border-radius: 10px;
    transition: background .3s, transform .3s;
}
.join_support_item:hover {
    background: linear-gradient(135deg, #097168, #054a44);
    transform: translateY(-3px);
}
.join_support_dot {
    width: 8px; height: 8px;
    background: #097168;
    border-radius: 50%;
    margin-bottom: 14px;
    transition: background .3s;
}
.join_support_item:hover .join_support_dot { background: #ffb900; }
.join_support_item h4 { font-size: 17px; color: #1a1a1a; font-weight: 600; margin-bottom: 8px; transition: color .3s; }
.join_support_item p { font-size: 13px; color: #999; line-height: 1.6; transition: color .3s; }
.join_support_item:hover h4,
.join_support_item:hover p { color: #fff; }

/* --- CTA 行动号召 --- */
.join_cta_sec {
    position: relative;
    padding: 80px 0;
    overflow: hidden;
}
.join_cta_bg {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: linear-gradient(135deg, #042a26 0%, #097168 50%, #054a44 100%);
    z-index: 0;
}
.join_cta_bg::before {
    content: '';
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='30' cy='30' r='1' fill='rgba(255,255,255,0.05)'/%3E%3C/svg%3E") repeat;
}
.join_cta_content {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 50px;
}
.join_cta_left { flex: 1; min-width: 300px; }
.join_cta_left h2 { font-size: 38px; color: #fff; font-weight: 600; margin-bottom: 14px; }
.join_cta_subtitle { font-size: 17px; color: rgba(255,255,255,0.8); line-height: 1.7; margin-bottom: 24px; }
.join_cta_subtitle strong { color: #ffb900; }
.join_cta_features { display: flex; flex-wrap: wrap; gap: 12px; }
.join_cta_features span {
    display: inline-block;
    padding: 8px 18px;
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.2);
    color: rgba(255,255,255,0.9);
    font-size: 14px;
    border-radius: 20px;
}
.join_cta_right { flex: 0 0 400px; max-width: 100%; }
.join_cta_form_box {
    background: #fff;
    border-radius: 16px;
    padding: 36px 32px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}
.join_cta_form_head {
    text-align: center;
    margin-bottom: 28px;
}
.join_cta_form_badge {
    display: inline-block;
    background: linear-gradient(135deg, #ffb900, #ff9a00);
    color: #1a1a1a;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 14px;
    border-radius: 3px;
    letter-spacing: 2px;
    margin-bottom: 10px;
}
.join_cta_form_head h3 { font-size: 22px; color: #1a1a1a; font-weight: 600; }
.join_cta_input_group { margin-bottom: 16px; }
.join_cta_input_group input {
    width: 100%;
    height: 54px;
    padding: 0 18px;
    border: 2px solid #e8e8e8;
    background: #f8f9fb;
    color: #1a1a1a;
    font-size: 15px;
    border-radius: 8px;
    outline: none;
    transition: border-color .3s, box-shadow .3s;
    box-sizing: border-box;
}
.join_cta_input_group input:focus {
    border-color: #097168;
    box-shadow: 0 0 0 3px rgba(9,113,104,0.08);
    background: #fff;
}
.join_cta_input_group input::placeholder { color: #bbb; }
.join_cta_submit {
    width: 100%;
    height: 56px;
    margin-top: 6px;
    background: linear-gradient(135deg, #097168 0%, #054a44 100%);
    color: #fff;
    font-size: 17px;
    font-weight: 600;
    border: 0;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: transform .3s, box-shadow .3s;
    letter-spacing: 1px;
}
.join_cta_submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 30px rgba(9,113,104,0.4);
}
.join_cta_form_foot {
    text-align: center;
    font-size: 12px;
    color: #bbb;
    margin-top: 14px;
}

/* ============================================================
   首页改版新区块样式（品牌承诺��?/ 精选产��?/ 核心优势 / 关于我们 / 门店 / 新闻��?   ============================================================ */

/* Banner 增强 */
.banner_desc_inner { text-align: center; padding: 0 20px; }
.banner_h1 {
    font-size: 62px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 4px;
    line-height: 1.2;
    text-shadow: 0 2px 20px rgba(0,0,0,0.3);
}
.banner_sub {
    font-size: 20px;
    color: rgba(255,255,255,0.88);
    padding-top: 18px;
    letter-spacing: 2px;
}
.banner_btn {
    display: inline-block;
    margin-top: 36px;
    padding: 14px 44px;
    background: #097168;
    color: #f5ead0;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 2px;
    border-radius: 2px;
    transition: all .35s;
}
.banner_btn:hover {
    background: #054a44;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(9,113,104,0.3);
}
.banner_scroll_hint {
    position: absolute;
    bottom: 28px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}
.banner_scroll_hint span {
    display: block;
    width: 22px;
    height: 36px;
    border: 2px solid rgba(255,255,255,0.6);
    border-radius: 11px;
    position: relative;
}
.banner_scroll_hint span::after {
    content: '';
    display: block;
    width: 4px;
    height: 8px;
    background: #fff;
    border-radius: 2px;
    position: absolute;
    top: 5px;
    left: 50%;
    transform: translateX(-50%);
    animation: scrollHint 1.8s infinite;
}
@keyframes scrollHint {
    0%   { opacity: 1; transform: translateX(-50%) translateY(0); }
    100% { opacity: 0; transform: translateX(-50%) translateY(14px); }
}

/* 通用区块标题 */
.idx_section_header {
    text-align: center;
    padding-bottom: 60px;
}
.idx_section_header_light .idx_section_en,
.idx_section_header_light .idx_section_h2,
.idx_section_header_light .idx_section_sub { color: #fff; }
.idx_section_en {
    display: block;
    font-size: 12px;
    letter-spacing: 5px;
    color: #097168;
    text-transform: uppercase;
    margin-bottom: 14px;
    font-weight: 600;
}
.idx_section_h2 {
    font-size: 42px;
    color: #1a1a1a;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 16px;
}
.idx_section_sub {
    font-size: 16px;
    color: #666;
    letter-spacing: 1px;
}

/* 通用"更多"按钮（与"了解更多/加入姬颜氏"样式统一） */
.idx_more_link { text-align: center; padding-top: 50px; }
.idx_more_btn,
.idx_more_btn_outline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 40px;
    background: transparent;
    color: #097168;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 2px;
    text-decoration: none;
    border: 2px solid rgba(9,113,104,0.45);
    border-radius: 4px;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: all .35s cubic-bezier(.2,.8,.2,1);
    cursor: pointer;
}
.idx_more_btn::before,
.idx_more_btn_outline::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #097168 0%, #0d8a7c 60%, #2fb9a8 130%);
    transform: translateY(100%);
    transition: transform .4s cubic-bezier(.2,.8,.2,1);
    z-index: -1;
}
.idx_more_btn:hover,
.idx_more_btn_outline:hover {
    color: #fff;
    border-color: transparent;
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(9,113,104,0.28);
}
.idx_more_btn:hover::before,
.idx_more_btn_outline:hover::before { transform: translateY(0); }
.idx_more_btn svg,
.idx_more_btn_outline svg {
    position: relative;
    z-index: 1;
    transition: transform .3s ease;
}
.idx_more_btn:hover svg,
.idx_more_btn_outline:hover svg { transform: translateX(6px); }

/* --- 品牌承诺条（白色主题 + 动画）--- */
.idx_brand_strip {
    background: linear-gradient(180deg, #ffffff 0%, #f3f6f2 100%);
    border-top: 1px solid rgba(9,113,104,0.08);
    border-bottom: 1px solid rgba(9,113,104,0.08);
    padding: 56px 0;
    position: relative;
    overflow: hidden;
}
.idx_brand_strip::before {
    content: '';
    position: absolute;
    top: 0; left: 50%;
    transform: translateX(-50%);
    width: 360px; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,113,104,0.3), transparent);
    animation: brandStripGlow 3.2s ease-in-out infinite;
}
@keyframes brandStripGlow {
    0%, 100% { opacity: 0.35; width: 120px; }
    50%      { opacity: 1; width: 360px; }
}
.idx_brand_strip_inner {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 24px;
    flex-wrap: wrap;
}
.idx_brand_strip_item {
    flex: 1 1 200px;
    text-align: center;
    padding: 32px 24px 30px;
    background: #ffffff;
    border: 1px solid rgba(9,113,104,0.08);
    border-radius: 14px;
    box-shadow: 0 4px 20px rgba(31,45,42,0.06);
    position: relative;
    overflow: hidden;
    transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s;
}
.idx_brand_strip_item::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #d4af6e, transparent);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .45s cubic-bezier(.2,.8,.2,1);
}
.idx_brand_strip_item:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 38px rgba(9,113,104,0.12);
}
.idx_brand_strip_item:hover::before { transform: scaleX(1); }
.idx_brand_strip_icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 18px;
    color: #097168;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(9,113,104,0.06);
    transition: all .4s cubic-bezier(.2,.8,.2,1);
}
.idx_brand_strip_item:hover .idx_brand_strip_icon {
    background: rgba(9,113,104,0.12);
    color: #d4af6e;
    transform: translateY(-4px) scale(1.06);
}
.idx_brand_strip_icon svg { width: 34px; height: 34px; }
.idx_brand_strip_title {
    font-size: 18px;
    font-weight: 700;
    color: #1f2d2a;
    margin-bottom: 8px;
    letter-spacing: 2px;
}
.idx_brand_strip_desc {
    font-size: 14px;
    color: #7a8a86;
    line-height: 1.7;
}

/* --- 精选产品 --- */
.idx_products_sec {
    padding: 90px 0;
    background: #fff;
}
.idx_prod_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}
.idx_prod_card {
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    transition: transform .45s cubic-bezier(.25,.8,.25,1), box-shadow .45s cubic-bezier(.25,.8,.25,1);
}
.idx_prod_card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(9,113,104,0.14);
}
.idx_prod_img_wrap {
    position: relative;
    overflow: hidden;
    background: #f5f6f9;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1/1;
}
.idx_prod_img_wrap::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 60%, rgba(0,0,0,0.04));
    pointer-events: none;
    z-index: 1;
}
.idx_prod_img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s cubic-bezier(.25,.8,.25,1);
}
.idx_prod_card:hover .idx_prod_img_wrap img { transform: scale(1.1); }
.idx_prod_overlay {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: linear-gradient(135deg, rgba(9,113,104,0.7), rgba(7,85,78,0.85));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    z-index: 2;
    transition: opacity .4s cubic-bezier(.25,.8,.25,1);
}
.idx_prod_card:hover .idx_prod_overlay { opacity: 1; }
.idx_prod_view {
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 3px;
    padding: 10px 28px;
    border: 2px solid rgba(255,255,255,0.9);
    border-radius: 30px;
    transform: translateY(15px);
    transition: transform .4s cubic-bezier(.25,.8,.25,1), background .3s;
}
.idx_prod_card:hover .idx_prod_view { transform: translateY(0); }
.idx_prod_view:hover {
    background: rgba(255,255,255,0.15);
}
.idx_prod_info { padding: 20px 20px 26px; }
.idx_prod_tag {
    display: inline-block;
    font-size: 11px;
    letter-spacing: 2px;
    color: #097168;
    background: linear-gradient(135deg, rgba(9,113,104,0.08), rgba(9,113,104,0.04));
    padding: 4px 12px;
    border-radius: 20px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.idx_prod_name {
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 8px;
    line-height: 1.4;
    transition: color .3s;
}
.idx_prod_card:hover .idx_prod_name { color: #097168; }
.idx_prod_excerpt { font-size: 13px; color: #888; line-height: 1.7; }

/* ================================================================
   创始人理想 · 品牌灵魂
   沉浸式粒子动画 · 逐字入场 · 光效交互
   ================================================================ */
.idx_ideal_sec {
    position: relative;
    background: linear-gradient(180deg, #f3f6f2 0%, #ffffff 50%, #f3f6f2 100%);
    overflow: hidden;
    padding: 100px 0 110px;
}
.idx_ideal_sec > .con1400 { position: relative; z-index: 2; }

/* ── 浮动粒子 ── */
.ideal_canvas {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
}
.ideal_particle {
    position: absolute;
    width: 3px; height: 3px;
    background: rgba(9,113,104,0.35);
    border-radius: 50%;
    opacity: 0;
    animation: idealParticleFloat linear infinite;
}
.ideal_particle.p1  { left: 5%;  animation-duration: 8s; animation-delay: 0s; }
.ideal_particle.p2  { left: 12%; animation-duration: 10s; animation-delay: 1.2s; }
.ideal_particle.p3  { left: 22%; animation-duration: 7s; animation-delay: 2.5s; width: 2px; height: 2px; }
.ideal_particle.p4  { left: 30%; animation-duration: 9s; animation-delay: 0.6s; }
.ideal_particle.p5  { left: 40%; animation-duration: 11s; animation-delay: 3s; width: 4px; height: 4px; }
.ideal_particle.p6  { left: 48%; animation-duration: 7.5s; animation-delay: 1.8s; width: 2px; height: 2px; }
.ideal_particle.p7  { left: 55%; animation-duration: 8.5s; animation-delay: 4s; }
.ideal_particle.p8  { left: 64%; animation-duration: 10s; animation-delay: 0.3s; width: 2px; height: 2px; }
.ideal_particle.p9  { left: 72%; animation-duration: 6.5s; animation-delay: 2s; }
.ideal_particle.p10 { left: 80%; animation-duration: 9s; animation-delay: 3.5s; width: 4px; height: 4px; }
.ideal_particle.p11 { left: 90%; animation-duration: 7s; animation-delay: 1s; width: 2px; height: 2px; }
.ideal_particle.p12 { left: 95%; animation-duration: 8s; animation-delay: 4.5s; }

@keyframes idealParticleFloat {
    0%   { opacity: 0; transform: translateY(100vh) scale(0); }
    10%  { opacity: 0.5; }
    70%  { opacity: 0.35; }
    90%  { opacity: 0; }
    100% { opacity: 0; transform: translateY(-20vh) scale(1.5); }
}

/* ── 光线扫过 ── */
.ideal_lightray {
    position: absolute;
    width: 1px; height: 120%;
    background: linear-gradient(180deg, transparent, rgba(9,113,104,0.10) 40%, rgba(9,113,104,0.05) 60%, transparent);
    top: -10%;
    opacity: 0;
    animation: idealLightray 8s ease-in-out infinite;
}
.ideal_lightray.l1 { left: 15%; animation-delay: 0s; }
.ideal_lightray.l2 { left: 55%; animation-delay: 4s; }
.ideal_lightray.l3 { left: 80%; animation-delay: 2s; }
@keyframes idealLightray {
    0%, 100% { opacity: 0; transform: translateX(-30px); }
    50%      { opacity: 1; transform: translateX(30px); }
}

/* ── 标题区 ── */
.ideal_header {
    text-align: center;
    margin-bottom: 70px;
}
.ideal_prefix {
    display: block;
    font-size: 36px;
    font-weight: 800;
    letter-spacing: 12px;
    color: #097168;
    margin-bottom: 30px;
    text-transform: uppercase;
}
.ideal_title {
    position: relative;
    display: inline-block;
    margin: 0 auto 30px;
    line-height: 1.3;
}
.ideal_char {
    display: inline-block;
    font-size: 64px;
    font-weight: 900;
    letter-spacing: 6px;
    color: #1f2d2a;
    opacity: 0;
    animation: idealCharReveal 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
    animation-delay: calc(0.06s * var(--i) + 0.3s);
}
.ideal_comma {
    margin-right: 8px;
}
@keyframes idealCharReveal {
    0%   { opacity: 0; transform: translateY(60px) scale(0.7); filter: blur(12px); }
    60%  { opacity: 1; filter: blur(0); }
    100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}

/* 标题光晕 */
.ideal_title_glow {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 500px; height: 120px;
    background: radial-gradient(ellipse, rgba(9,113,104,0.08) 0%, transparent 70%);
    border-radius: 50%;
    filter: blur(40px);
    pointer-events: none;
    animation: idealGlowPulse 3s ease-in-out infinite;
}
@keyframes idealGlowPulse {
    0%, 100% { opacity: 0.4; transform: translate(-50%, -50%) scale(1); }
    50%      { opacity: 0.8; transform: translate(-50%, -50%) scale(1.15); }
}

/* 分隔符 */
.ideal_divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin: 32px auto 28px;
}
.ideal_div_line {
    width: 80px; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,113,104,0.4));
}
.ideal_div_line:last-child {
    background: linear-gradient(90deg, rgba(9,113,104,0.4), transparent);
}
.ideal_div_diamond {
    width: 8px; height: 8px;
    background: #d4af6e;
    transform: rotate(45deg);
    animation: idealDiamondPulse 2s ease-in-out infinite;
}
@keyframes idealDiamondPulse {
    0%, 100% { opacity: 0.5; transform: rotate(45deg) scale(1); }
    50%      { opacity: 1; transform: rotate(45deg) scale(1.5); }
}
.ideal_intro {
    font-size: 18px;
    color: #7a8a86;
    letter-spacing: 4px;
    line-height: 2;
    margin: 0;
    max-width: 680px;
    margin-left: auto; margin-right: auto;
}

/* ── 六大价值卡片 ── */
.ideal_values {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1200px;
    margin: 0 auto 70px;
}
.ideal_card {
    position: relative;
    background: #ffffff;
    padding: 46px 36px 42px;
    overflow: hidden;
    cursor: default;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(31,45,42,0.08);
    transition: background 0.5s cubic-bezier(0.2,0.8,0.2,1), transform 0.5s, box-shadow 0.5s;
    isolation: isolate;
}
.ideal_card_bg {
    position: absolute;
    inset: 0; z-index: 0;
    background: radial-gradient(circle at 50% 50%, rgba(9,113,104,0.05) 0%, transparent 60%);
    opacity: 0;
    transition: opacity 0.6s;
}
.ideal_card_border {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #d4af6e, transparent);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.5s cubic-bezier(0.2,0.8,0.2,1);
    z-index: 1;
}
.ideal_card:hover {
    background: #ffffff;
    transform: translateY(-6px);
    box-shadow: 0 16px 44px rgba(9,113,104,0.14);
}
.ideal_card:hover .ideal_card_bg { opacity: 1; }
.ideal_card:hover .ideal_card_border { transform: scaleX(1); }
.ideal_card:hover .ideal_card_num {
    color: #d4af6e;
    transform: translateY(-4px);
}
.ideal_card:hover h4 { color: #097168; }

.ideal_card_num {
    position: relative; z-index: 2;
    display: block;
    font-family: 'Georgia', 'Times New Roman', serif;
    font-size: 56px;
    font-weight: 700;
    color: rgba(9,113,104,0.10);
    line-height: 1;
    margin-bottom: 14px;
    transition: all 0.5s cubic-bezier(0.2,0.8,0.2,1);
}
.ideal_card h4 {
    position: relative; z-index: 2;
    font-size: 22px;
    font-weight: 700;
    color: #1f2d2a;
    letter-spacing: 3px;
    margin: 0 0 16px;
    transition: color 0.4s;
}
.ideal_card p {
    position: relative; z-index: 2;
    font-size: 14px;
    color: #7a8a86;
    line-height: 1.9;
    margin: 0;
    letter-spacing: 0.5px;
    transition: color 0.4s;
}
.ideal_card:hover p { color: #5c6b67; }

/* ── CTA（与"了解更多"按钮样式统一）── */
.ideal_cta_wrap { text-align: center; }
.ideal_cta_btn {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding: 26px 76px;
    background: transparent;
    color: #097168;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 3px;
    border: 2px solid rgba(9,113,104,0.45);
    border-radius: 4px;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    transition: all 0.45s cubic-bezier(0.2,0.8,0.2,1);
    box-shadow: 0 8px 30px -8px rgba(9,113,104,0.12);
}
.ideal_cta_btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #097168 0%, #0d8a7c 60%, #2fb9a8 130%);
    transform: translateY(100%);
    transition: transform 0.45s cubic-bezier(0.2,0.8,0.2,1);
    z-index: 0;
}
.ideal_cta_btn:hover {
    color: #ffffff;
    border-color: transparent;
    transform: translateY(-3px);
    box-shadow: 0 16px 40px -8px rgba(9,113,104,0.35);
}
.ideal_cta_btn:hover::before { transform: translateY(0); }
.ideal_cta_btn span,
.ideal_cta_btn svg {
    position: relative;
    z-index: 1;
}
.ideal_cta_btn svg {
    width: 26px; height: 16px;
    transition: transform 0.3s ease;
    flex-shrink: 0;
}
.ideal_cta_btn:hover svg { transform: translateX(10px); }

/* ── 响应式 ── */
@media (max-width: 1024px) {
    .idx_ideal_sec { padding: 80px 0 80px; }
    .ideal_char { font-size: 52px; letter-spacing: 3px; }
    .ideal_intro { font-size: 16px; letter-spacing: 2px; }
    .ideal_values { grid-template-columns: repeat(2, 1fr); }
    .ideal_card { padding: 36px 28px; }
    .ideal_card_num { font-size: 48px; }
    .ideal_card h4 { font-size: 19px; }
    .ideal_prefix { font-size: 26px; letter-spacing: 8px; }
    .ideal_cta_btn { padding: 20px 52px; font-size: 15px; letter-spacing: 2px; }
    .ideal_header { margin-bottom: 50px; }
}
@media (max-width: 640px) {
    .idx_ideal_sec { padding: 60px 0 60px; }
    .ideal_char { font-size: 26px; letter-spacing: 1px; }
    .ideal_comma { margin-right: 5px; }
    .ideal_prefix { font-size: 22px; letter-spacing: 6px; }
    .ideal_intro { font-size: 14px; letter-spacing: 1px; }
    .ideal_div_line { width: 40px; }
    .ideal_values { grid-template-columns: 1fr; }
    .ideal_card { padding: 28px 22px; }
    .ideal_card_num { font-size: 44px; }
    .ideal_card h4 { font-size: 17px; }
    .ideal_cta_btn { padding: 18px 38px; font-size: 14px; letter-spacing: 2px; }
    .ideal_header { margin-bottom: 40px; }
    .ideal_values { margin-bottom: 50px; }
}
@media (max-width: 400px) {
    .ideal_char { font-size: 22px; letter-spacing: 0; }
}

/* --- 关于我们 --- */
/* --- 关于我们（首页）--- */
/* ==================== 关于我们（改版） ==================== */
section.idx_about_sec {
    padding: 120px 0 110px;
    background: linear-gradient(175deg, #ffffff 0%, #f3f6f2 45%, #ffffff 100%);
    position: relative;
    overflow: hidden;
}
/* 微妙的背景光晕（浮动动画） */
section.idx_about_sec::before {
    content: '';
    position: absolute;
    pointer-events: none;
    top: -30%; left: -10%;
    width: 50%; height: 150%;
    background: radial-gradient(ellipse, rgba(9,113,104,0.07) 0%, transparent 70%);
    animation: aboutGlow1 6s ease-in-out infinite alternate;
}
section.idx_about_sec::after {
    content: '';
    position: absolute;
    pointer-events: none;
    bottom: -20%; right: -5%;
    width: 45%; height: 120%;
    background: radial-gradient(ellipse, rgba(47,185,168,0.06) 0%, transparent 70%);
    animation: aboutGlow2 7s ease-in-out infinite alternate;
}
@keyframes aboutGlow1 {
    0%   { transform: translate(0, 0) scale(1); }
    100% { transform: translate(40px, 30px) scale(1.18); }
}
@keyframes aboutGlow2 {
    0%   { transform: translate(0, 0) scale(1); }
    100% { transform: translate(-30px, -20px) scale(1.12); }
}

/* 标题区 */
.idx_about_header {
    text-align: center;
    margin-bottom: 70px;
}
.idx_about_subtitle {
    display: block;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 8px;
    color: #097168;
    margin-bottom: 20px;
    text-transform: uppercase;
    animation: aboutSubtitlePulse 3s ease-in-out infinite;
}
@keyframes aboutSubtitlePulse {
    0%, 100% { opacity: 0.7; letter-spacing: 8px; }
    50%      { opacity: 1; letter-spacing: 10px; }
}
section.idx_about_sec .idx_about_main_title {
    font-size: 48px !important;
    font-weight: 800 !important;
    color: #1f2d2a !important;
    text-align: center !important;
    margin: 0 auto 24px !important;
    letter-spacing: 10px;
    display: block !important;
    width: 100% !important;
}
.idx_about_decor {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}
.idx_about_decor_line {
    width: 50px; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,113,104,0.4));
    animation: aboutDecorLine 2.6s ease-in-out infinite;
}
.idx_about_decor_line:last-child {
    background: linear-gradient(90deg, rgba(9,113,104,0.4), transparent);
    animation-delay: 1.3s;
}
@keyframes aboutDecorLine {
    0%, 100% { opacity: 0.45; }
    50%      { opacity: 1; }
}
.idx_about_decor_dot {
    width: 8px; height: 8px;
    background: #d4af6e;
    transform: rotate(45deg);
    animation: aboutDecorDot 2.6s ease-in-out infinite;
}
@keyframes aboutDecorDot {
    0%, 100% { opacity: 0.5; transform: rotate(45deg) scale(1); }
    50%      { opacity: 1; transform: rotate(45deg) scale(1.4); }
}

/* 内容区 */
section.idx_about_sec .idx_about_wrap {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 80px;
    align-items: center;
}
section.idx_about_sec .idx_about_text_col {
    padding-right: 2%;
}
section.idx_about_sec .idx_about_text_col .idx_about_h3 {
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #1f2d2a !important;
    line-height: 1.5;
    margin-bottom: 24px !important;
}
section.idx_about_sec .idx_about_text_col .idx_about_text {
    font-size: 16px !important;
    line-height: 38px !important;
    color: #5c6b67 !important;
    margin: 0 0 36px !important;
}

/* 了解更多按钮 */
section.idx_about_sec .idx_about_btn {
    display: inline-flex !important;
    align-items: center;
    gap: 12px;
    width: auto !important;
    height: auto !important;
    padding: 16px 44px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #097168 !important;
    background: transparent !important;
    border: 1.5px solid rgba(9,113,104,0.45) !important;
    text-align: center !important;
    text-decoration: none !important;
    border-radius: 4px;
    letter-spacing: 3px;
    transition: all 0.4s cubic-bezier(0.2,0.8,0.2,1);
    cursor: pointer;
    overflow: hidden;
    position: relative;
}
section.idx_about_sec .idx_about_btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #097168 0%, #0d8a7c 60%, #2fb9a8 130%);
    transform: translateY(100%);
    transition: transform 0.45s cubic-bezier(0.2,0.8,0.2,1);
    z-index: 0;
}
section.idx_about_sec .idx_about_btn:hover {
    color: #ffffff !important;
    border-color: transparent !important;
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(9,113,104,0.3);
}
section.idx_about_sec .idx_about_btn:hover::before { transform: translateY(0); }
section.idx_about_sec .idx_about_btn span,
section.idx_about_sec .idx_about_btn svg {
    position: relative;
    z-index: 1;
}
section.idx_about_sec .idx_about_btn:hover svg {
    transform: translateX(6px);
}
section.idx_about_sec .idx_about_btn svg {
    transition: transform 0.3s ease;
    flex-shrink: 0;
}

/* 统计数字 */
section.idx_about_sec .idx_about_stats {
    display: flex;
    justify-content: flex-start;
    gap: 56px;
    margin-top: 50px;
    flex-wrap: wrap;
}
section.idx_about_sec .idx_about_stat_item {
    text-align: left;
    position: relative;
}
section.idx_about_sec .idx_about_stat_item:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -28px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 40px;
    background: linear-gradient(180deg, transparent, rgba(9,113,104,0.3), transparent);
}
section.idx_about_sec .idx_about_stat_num {
    font-size: 48px !important;
    font-weight: 800 !important;
    background: linear-gradient(180deg, #097168 0%, #2fb9a8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
    display: block;
    animation: aboutStatBounce 4s ease-in-out infinite;
}
section.idx_about_sec .idx_about_stat_num:nth-of-type(2) { animation-delay: 0.5s; }
section.idx_about_sec .idx_about_stat_num:nth-of-type(3) { animation-delay: 1s; }
@keyframes aboutStatBounce {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-4px); }
}
section.idx_about_sec .idx_about_stat_num em.numCX {
    font-style: normal !important;
    font-size: 48px !important;
    font-weight: 800 !important;
    background: linear-gradient(180deg, #097168 0%, #2fb9a8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
section.idx_about_sec .idx_about_stat_num sup {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #d4af6e;
    vertical-align: super;
    margin-left: 2px;
    -webkit-text-fill-color: #d4af6e;
}
section.idx_about_sec .idx_about_stat_label {
    font-size: 15px !important;
    color: #7a8a86 !important;
    margin-top: 10px;
    letter-spacing: 3px;
    font-weight: 500;
}

/* 右侧图片（浮动动画） */
section.idx_about_sec .idx_about_img_col {
    position: relative;
    animation: aboutImgFloat 6s ease-in-out infinite;
}
@keyframes aboutImgFloat {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-12px); }
}
.idx_about_img_frame {
    position: relative;
    z-index: 1;
}
.idx_about_img_frame::before {
    content: '';
    position: absolute;
    top: 14px; left: 14px;
    right: -14px; bottom: -14px;
    border: 1px solid rgba(9,113,104,0.3);
    z-index: -1;
    pointer-events: none;
    animation: aboutFramePulse 6s ease-in-out infinite;
}
@keyframes aboutFramePulse {
    0%, 100% { transform: translate(0, 0); }
    50%      { transform: translate(-3px, 3px); }
}
section.idx_about_sec .idx_about_img_col img,
.idx_about_img_frame img {
    width: 100% !important;
    display: block !important;
    border-radius: 0 !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    position: relative;
    z-index: 1;
    box-shadow: 0 24px 70px -10px rgba(9,113,104,0.18);
    transition: transform 0.6s cubic-bezier(0.2,0.8,0.2,1);
}
section.idx_about_sec .idx_about_img_col img:hover,
.idx_about_img_frame img:hover {
    transform: scale(1.03);
}

/* --- 门店展示 --- */
.idx_store_sec {
    padding: 90px 0;
    background: #f8f9fc;
}
.idx_store_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}
.idx_store_card {
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 16px rgba(0,0,0,0.06);
    transition: transform .4s, box-shadow .4s;
}
.idx_store_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(9,113,104,0.1);
}
.idx_store_img {
    height: 220px;
    overflow: hidden;
}
.idx_store_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s;
}
.idx_store_card:hover .idx_store_img img { transform: scale(1.06); }
.idx_store_info { padding: 24px 22px 28px; }
.idx_store_info h3 {
    font-size: 19px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 10px;
}
.idx_store_info p { font-size: 14px; color: #666; line-height: 1.7; margin-bottom: 14px; }
.idx_store_more { font-size: 14px; color: #097168; font-weight: 600; }

/* --- 新闻中心 --- */
.idx_news_sec {
    padding: 90px 0;
    background: #fff;
}
.idx_news_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}
.idx_news_card {
    border-radius: 8px;
    overflow: hidden;
    background: #fafafa;
    box-shadow: 0 2px 16px rgba(0,0,0,0.05);
    transition: transform .4s, box-shadow .4s;
}
.idx_news_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(0,0,0,0.1);
}
.idx_news_img {
    position: relative;
    height: 230px;
    overflow: hidden;
}
.idx_news_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s;
}
.idx_news_card:hover .idx_news_img img { transform: scale(1.05); }
.idx_news_cate {
    position: absolute;
    top: 16px;
    left: 16px;
    background: #097168;
    color: #fff;
    font-size: 12px;
    padding: 4px 12px;
    border-radius: 2px;
    letter-spacing: 1px;
}
.idx_news_body { padding: 24px 22px 28px; }
.idx_news_body h3 {
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1.5;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.idx_news_body p {
    font-size: 14px;
    color: #666;
    line-height: 1.7;
    margin-bottom: 18px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
.idx_news_read { font-size: 14px; color: #097168; font-weight: 600; }

/* --- 荣誉资质轮播/列表 --- */
.idx_honor_sec {
    padding: 90px 0;
    background: linear-gradient(180deg, #fafbfd 0%, #f3f4f8 40%, #fafbfd 100%);
    position: relative;
    overflow: hidden;
}
.idx_honor_sec::before {
    content: '';
    position: absolute;
    top: -120px;
    right: -120px;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(9,113,104,0.03) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
}
.idx_honor_wrap { position: relative; margin-top: 40px; }
.idx_honor_swiper { padding: 10px 50px 40px; }
.idx_honor_swiper .swiper-slide { flex-shrink: 0; }
.idx_honor_card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,0.05);
    transition: all 0.35s cubic-bezier(0.33, 1, 0.68, 1);
    height: 100%;
}
.idx_honor_card:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 48px rgba(9,113,104,0.12);
}
.idx_honor_card a { display: block; text-decoration: none; color: inherit; }
.idx_honor_card_img {
    position: relative;
    height: 200px;
    background: linear-gradient(135deg, #f8f9fc 0%, #eef0f5 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.idx_honor_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}
.idx_honor_card:hover .idx_honor_card_img img { transform: scale(1.06); }
.idx_honor_placeholder {
    width: 80px;
    height: 80px;
    color: #c0c4cc;
    display: flex;
    align-items: center;
    justify-content: center;
}
.idx_honor_card_badge {
    position: absolute;
    top: 14px;
    right: 14px;
    display: flex;
    align-items: center;
    gap: 5px;
    background: rgba(255,255,255,0.95);
    backdrop-filter: blur(6px);
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 12px;
    color: #8b6914;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.idx_honor_card_body {
    padding: 22px 20px;
}
.idx_honor_card_body h3 {
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.5;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    transition: color 0.3s;
}
.idx_honor_card:hover .idx_honor_card_body h3 { color: #097168; }
.idx_honor_card_body p {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.idx_honor_prev,
.idx_honor_next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #097168;
    transition: all 0.3s;
    opacity: 0.7;
}
.idx_honor_prev:hover,
.idx_honor_next:hover { opacity: 1; background: #097168; color: #fff; }
.idx_honor_prev { left: 0; }
.idx_honor_next { right: 0; }
.idx_honor_pag { text-align: center; margin-top: 10px; }
.idx_honor_pag .swiper-pagination-bullet {
    width: 8px; height: 8px;
    background: #c0c4cc;
    opacity: 1;
    transition: all 0.3s;
    margin: 0 5px;
}
.idx_honor_pag .swiper-pagination-bullet-active { background: #097168; width: 24px; border-radius: 4px; }

/* 荣誉资质列表页网��?*/
.honor_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    padding: 50px 0;
}
.honor_card {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 18px rgba(0,0,0,0.04);
    transition: all 0.35s ease;
}
.honor_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 40px rgba(9,113,104,0.1);
}
.honor_card a { display: block; text-decoration: none; color: inherit; }
.honor_card_img {
    position: relative;
    height: 220px;
    background: linear-gradient(135deg, #f8f9fc 0%, #e8ecf4 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.honor_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s;
}
.honor_card:hover .honor_card_img img { transform: scale(1.05); }
.honor_card_placeholder {
    width: 100px;
    height: 100px;
    color: #c0c4cc;
}
.honor_card_tag {
    position: absolute;
    top: 12px;
    right: 12px;
    display: flex;
    align-items: center;
    gap: 4px;
    background: rgba(255,255,255,0.95);
    padding: 5px 10px;
    border-radius: 16px;
    font-size: 12px;
    color: #8b6914;
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(0,0,0,0.06);
}
.honor_card_info {
    padding: 20px;
}
.honor_card_info time {
    font-size: 12px;
    color: #9ca3af;
    display: block;
    margin-bottom: 8px;
}
.honor_card_info h3 {
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.5;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    transition: color 0.3s;
}
.honor_card:hover .honor_card_info h3 { color: #097168; }
.honor_card_info p {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

/* ========================================
   荣誉资质详情��?- 全新设计
   ======================================== */

/* -- 顶部 Header（纯CSS渐变，无img标签��?-- */
.honor_detail_header {
    background: linear-gradient(135deg, #042a26 0%, #054a44 40%, #06534b 70%, #042a26 100%);
    padding: 70px 0 50px;
    position: relative;
    overflow: hidden;
}
.honor_detail_header::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -10%;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(212,175,55,0.08) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
}
.honor_detail_header::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #D4AF37 0%, #F0D060 50%, #D4AF37 100%);
}
.honor_detail_header_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    position: relative;
    z-index: 1;
}
.honor_detail_header_breadcrumb {
    font-size: 13px;
    color: rgba(255,255,255,0.55);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.honor_detail_header_breadcrumb a {
    color: rgba(255,255,255,0.7);
    text-decoration: none;
    transition: color 0.3s;
}
.honor_detail_header_breadcrumb a:hover { color: #D4AF37; }
.honor_detail_sep {
    color: rgba(255,255,255,0.3);
    font-size: 11px;
}
.honor_detail_current {
    color: rgba(255,255,255,0.9);
}
.honor_detail_header_title {
    font-size: 36px;
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
    margin-bottom: 16px;
    letter-spacing: 0.5px;
}
.honor_detail_header_meta {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
.honor_detail_meta_item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(255,255,255,0.6);
}
.honor_detail_meta_badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(212,175,55,0.15);
    border: 1px solid rgba(212,175,55,0.3);
    color: #D4AF37;
    padding: 4px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}

/* -- 主体区域 -- */
.honor_detail_main {
    background: #f8f9fc;
    padding: 50px 0 80px;
}
.honor_detail_container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

/* -- 左侧内容��?-- */
.honor_detail_left {
    flex: 1;
    min-width: 0;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 2px 20px rgba(0,0,0,0.04);
    overflow: hidden;
}

/* -- 证书展示��?-- */
.honor_detail_cert_wrap {
    position: relative;
    background: linear-gradient(135deg, #f0f2f8 0%, #e8ecf5 100%);
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 320px;
}
.honor_detail_cert_img {
    position: relative;
    z-index: 1;
    max-width: 500px;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 8px 40px rgba(0,0,0,0.12);
}
.honor_detail_cert_img img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}
.honor_detail_cert_placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #b0b7c3;
    z-index: 1;
}
.honor_detail_cert_placeholder svg {
    width: 120px;
    height: 120px;
}
.honor_detail_cert_placeholder p {
    font-size: 14px;
    color: #999;
}
.honor_detail_cert_decoration {
    position: absolute;
    top: 20px;
    right: 30px;
    width: 120px;
    height: 120px;
    pointer-events: none;
    opacity: 0.6;
}

/* -- 摘要信息��?-- */
.honor_detail_summary {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 28px 40px;
    background: linear-gradient(135deg, #fdf8ed 0%, #faf3dc 100%);
    border-left: 4px solid #D4AF37;
    margin: 0;
}
.honor_detail_summary_icon {
    flex-shrink: 0;
    margin-top: 2px;
}
.honor_detail_summary p {
    font-size: 15px;
    color: #5a4a2a;
    line-height: 1.8;
    margin: 0;
}

/* -- 详细内容��?-- */
.honor_detail_content {
    padding: 40px;
    font-size: 15px;
    color: #333;
    line-height: 1.9;
}
.honor_detail_content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 16px 0;
}
.honor_detail_content p {
    margin-bottom: 16px;
}
.honor_detail_content_empty {
    text-align: center;
    padding: 60px 0;
    color: #bbb;
}
.honor_detail_content_empty svg {
    margin-bottom: 12px;
    opacity: 0.5;
}
.honor_detail_content_empty p {
    font-size: 14px;
}

/* -- 上下篇导��?-- */
.honor_detail_nav {
    display: flex;
    align-items: center;
    border-top: 1px solid #eee;
    padding: 0;
}
.honor_detail_nav_item {
    flex: 1;
    padding: 24px 30px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}
.honor_detail_nav_prev {
    border-right: 1px solid #f0f0f0;
}
.honor_detail_nav_next {
    border-left: 1px solid #f0f0f0;
    text-align: right;
    align-items: flex-end;
}
.honor_detail_nav_label {
    font-size: 12px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.honor_detail_nav_item a {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    transition: color 0.3s;
    line-height: 1.5;
}
.honor_detail_nav_item a:hover { color: #097168; }
.honor_detail_nav_empty {
    font-size: 14px;
    color: #ccc;
}
.honor_detail_nav_back {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 24px 20px;
    font-size: 13px;
    color: #999;
    text-decoration: none;
    transition: all 0.3s;
    flex-shrink: 0;
    border-left: 1px solid #f0f0f0;
    border-right: 1px solid #f0f0f0;
}
.honor_detail_nav_back:hover {
    color: #097168;
    background: #f8f9fc;
}

/* -- 右侧侧边��?-- */
.honor_detail_right {
    width: 320px;
    flex-shrink: 0;
}
.honor_detail_sidebar_card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 2px 20px rgba(0,0,0,0.04);
    overflow: hidden;
    position: sticky;
    top: 20px;
}
.honor_detail_sidebar_title {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 22px 24px;
    border-bottom: 1px solid #f0f0f0;
    background: linear-gradient(135deg, #fafbfd 0%, #f5f6fa 100%);
}
.honor_detail_sidebar_title h3 {
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0;
}
.honor_detail_sidebar_list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.honor_detail_sidebar_list li {
    border-bottom: 1px solid #f5f5f5;
}
.honor_detail_sidebar_list li:last-child { border-bottom: none; }
.honor_detail_sidebar_list li a {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 24px;
    text-decoration: none;
    transition: background 0.3s;
}
.honor_detail_sidebar_list li a:hover {
    background: #f8f9fc;
}
.honor_detail_sidebar_thumb {
    width: 72px;
    height: 56px;
    border-radius: 8px;
    overflow: hidden;
    flex-shrink: 0;
    background: #f0f2f5;
}
.honor_detail_sidebar_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.honor_detail_sidebar_thumb_placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f6fa;
}
.honor_detail_sidebar_thumb_placeholder svg {
    width: 32px;
    height: 32px;
}
.honor_detail_sidebar_info h4 {
    font-size: 14px;
    font-weight: 500;
    color: #333;
    line-height: 1.5;
    margin: 0 0 4px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    transition: color 0.3s;
}
.honor_detail_sidebar_list li a:hover .honor_detail_sidebar_info h4 {
    color: #097168;
}
.honor_detail_sidebar_info p {
    font-size: 12px;
    color: #999;
    margin: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
.honor_detail_sidebar_empty {
    padding: 40px 24px;
    text-align: center;
    color: #ccc;
    font-size: 14px;
}
.honor_detail_sidebar_more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 16px;
    font-size: 14px;
    color: #097168;
    text-decoration: none;
    border-top: 1px solid #f0f0f0;
    transition: all 0.3s;
    font-weight: 500;
}
.honor_detail_sidebar_more:hover {
    background: #097168;
    color: #fff;
}

/* -- 响应��?-- */
@media (max-width: 1024px) {
    .honor_grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    
    .honor_detail_container {
        flex-direction: column;
        gap: 30px;
    }
    .honor_detail_right {
        width: 100%;
    }
    .honor_detail_sidebar_card {
        position: static;
    }
    .honor_detail_header_title {
        font-size: 28px;
    }
    .honor_detail_cert_wrap {
        padding: 30px;
        min-height: 240px;
    }
    .honor_detail_summary {
        padding: 22px 30px;
    }
    .honor_detail_content {
        padding: 30px;
    }
}

@media (max-width: 768px) {
    .honor_grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .honor_card_img { height: 160px; }
    .idx_honor_swiper { padding: 10px 10px 30px; }
    .idx_honor_prev, .idx_honor_next { display: none; }
    
    .honor_detail_header {
        padding: 50px 0 35px;
    }
    .honor_detail_header_title {
        font-size: 24px;
    }
    .honor_detail_header_meta {
        gap: 12px;
    }
    .honor_detail_cert_wrap {
        padding: 20px;
        min-height: 200px;
    }
    .honor_detail_cert_decoration {
        display: none;
    }
    .honor_detail_summary {
        padding: 18px 24px;
        font-size: 14px;
    }
    .honor_detail_content {
        padding: 24px;
        font-size: 14px;
    }
    .honor_detail_nav {
        flex-wrap: wrap;
    }
    .honor_detail_nav_item {
        flex: 1 1 100%;
        padding: 16px 20px;
        border: none;
    }
    .honor_detail_nav_prev {
        border-bottom: 1px solid #f0f0f0;
    }
    .honor_detail_nav_next {
        border-top: 1px solid #f0f0f0;
    }
    .honor_detail_nav_back {
        flex: 1 1 100%;
        border: none;
        border-top: 1px solid #f0f0f0;
        border-bottom: 1px solid #f0f0f0;
    }
}

@media (max-width: 480px) {
    .honor_grid { grid-template-columns: 1fr; }
    .idx_honor_sec { padding: 60px 0; }
    
    .honor_detail_container {
        padding: 0 16px;
    }
    .honor_detail_header_inner {
        padding: 0 16px;
    }
    .honor_detail_header_title {
        font-size: 20px;
    }
    .honor_detail_sidebar_list li a {
        padding: 14px 18px;
    }
}

/* --- 门店主理人轮��?--- */
.idx_manager_sec {
    padding: 90px 0;
    background: linear-gradient(180deg, #fafbfd 0%, #f0f2f5 50%, #fafbfd 100%);
    position: relative;
    overflow: hidden;
}
.idx_manager_sec::before {
    content: '';
    position: absolute;
    top: -180px;
    left: -100px;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(9,113,104,0.04) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
}
.idx_manager_sec::after {
    content: '';
    position: absolute;
    bottom: -160px;
    right: -80px;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(9,113,104,0.03) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
}
.idx_manager_wrap { position: relative; margin-top: 44px; }
.idx_manager_swiper { padding: 10px 50px 40px; }
.idx_manager_swiper .swiper-slide { flex-shrink: 0; }
.idx_manager_card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 6px 28px rgba(0,0,0,0.05);
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
    height: 100%;
}
.idx_manager_card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 56px rgba(9,113,104,0.13);
}
.idx_manager_card a { display: block; text-decoration: none; color: inherit; }
.idx_manager_card_img {
    position: relative;
    aspect-ratio: 1/1;
    background: linear-gradient(135deg, #f8f9fc 0%, #eef0f5 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.idx_manager_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.idx_manager_card:hover .idx_manager_card_img img { transform: scale(1.08); }
.idx_manager_placeholder {
    width: 120px;
    height: 120px;
    color: #c0c4cc;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s;
}
.idx_manager_card:hover .idx_manager_placeholder { color: #097168; }
.idx_manager_card_overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(9,113,104,0.75) 0%, rgba(9,113,104,0.1) 40%, transparent 100%);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 24px;
    opacity: 0;
    transition: opacity 0.4s ease;
}
.idx_manager_card:hover .idx_manager_card_overlay { opacity: 1; }
.idx_manager_card_label {
    font-size: 14px;
    color: #fff;
    font-weight: 600;
    padding: 8px 24px;
    border: 1.5px solid rgba(255,255,255,0.7);
    border-radius: 24px;
    backdrop-filter: blur(4px);
    letter-spacing: 1px;
}
.idx_manager_card_body {
    padding: 28px 24px;
    position: relative;
}
.idx_manager_card_body h3 {
    font-size: 17px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.5;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    transition: color 0.3s;
}
.idx_manager_card:hover .idx_manager_card_body h3 { color: #097168; }
.idx_manager_card_body p {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 14px;
}
.idx_manager_card_more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #097168;
    font-weight: 600;
    transition: gap 0.3s;
}
.idx_manager_card:hover .idx_manager_card_more { gap: 10px; }
.idx_manager_prev,
.idx_manager_next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #097168;
    transition: all 0.3s;
    opacity: 0.75;
}
.idx_manager_prev:hover,
.idx_manager_next:hover { opacity: 1; background: #097168; color: #fff; }
.idx_manager_prev { left: 6px; }
.idx_manager_next { right: 6px; }
.idx_manager_pag { text-align: center; margin-top: 10px; }
.idx_manager_pag .swiper-pagination-bullet {
    width: 8px; height: 8px;
    background: #c0c4cc;
    opacity: 1;
    transition: all 0.3s;
    margin: 0 5px;
}
.idx_manager_pag .swiper-pagination-bullet-active { background: #097168; width: 24px; border-radius: 4px; }

/* 门店主理人列表页 */
.manager_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    padding: 50px 0;
}
.manager_list_card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 2px 20px rgba(0,0,0,0.04);
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}
.manager_list_card:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 48px rgba(9,113,104,0.1);
}
.manager_list_card a { display: block; text-decoration: none; color: inherit; }
.manager_list_card_img {
    position: relative;
    height: 280px;
    background: linear-gradient(135deg, #f8f9fc 0%, #e8ecf4 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.manager_list_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s;
}
.manager_list_card:hover .manager_list_card_img img { transform: scale(1.06); }
.manager_list_card_placeholder {
    width: 120px;
    height: 120px;
    color: #c0c4cc;
    transition: color 0.3s;
}
.manager_list_card:hover .manager_list_card_placeholder { color: #8894a8; }
.manager_list_card_badge {
    position: absolute;
    top: 16px;
    right: 16px;
    background: rgba(9,113,104,0.9);
    backdrop-filter: blur(6px);
    color: #fff;
    padding: 5px 14px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
}
.manager_list_card_body {
    padding: 28px 24px;
}
.manager_list_card_body time {
    font-size: 12px;
    color: #9ca3af;
    display: block;
    margin-bottom: 10px;
}
.manager_list_card_body h3 {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.5;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    transition: color 0.3s;
}
.manager_list_card:hover .manager_list_card_body h3 { color: #097168; }
.manager_list_card_body p {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 16px;
}
.manager_list_card_arrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #097168;
    font-weight: 600;
    transition: gap 0.3s;
}
.manager_list_card:hover .manager_list_card_arrow { gap: 10px; }

/* 门店主理人详情页头部 */
.manager_detail_hero {
    padding: 60px 0 20px;
    background: linear-gradient(180deg, #fafbfd 0%, #fff 100%);
}
.manager_detail_hero_inner {
    display: flex;
    align-items: center;
    gap: 48px;
    padding: 48px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 30px rgba(0,0,0,0.04);
}
.manager_detail_avatar {
    flex-shrink: 0;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: linear-gradient(135deg, #e8edf5 0%, #d5dce8 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid rgba(9,113,104,0.08);
}
.manager_detail_hero_text { flex: 1; }
.manager_detail_hero_text h1 {
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 12px;
    line-height: 1.3;
}
.manager_detail_excerpt {
    font-size: 15px;
    color: #6b7280;
    line-height: 1.7;
    margin-bottom: 18px;
}
.manager_detail_meta {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}
.manager_detail_meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #8894a8;
}

/* 详情页内容区 */
.manager_de_l { background: #fff; border-radius: 14px; padding: 40px; }
.manager_de_content .manager-hero { margin: -40px -40px 32px; border-radius: 14px 14px 0 0; overflow: hidden; }
.manager_de_content .manager-hero-img { height: 360px !important; border-radius: 0 !important; }
.manager_de_content .manager-section { margin-bottom: 36px; padding-bottom: 28px; border-bottom: 1px solid #f0f2f5; }
.manager_de_content .manager-section:last-child { border-bottom: none; margin-bottom: 0; }
.manager_de_content .manager-section h2 {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 16px;
    padding-left: 14px;
    border-left: 4px solid #097168;
    line-height: 1.5;
}
.manager_de_content .manager-section p {
    font-size: 15px;
    color: #4b5563;
    line-height: 1.9;
}
.manager_de_content .store-gallery {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
    margin: 24px 0 !important;
}
.manager_de_content .store-gallery-item {
    height: 200px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #097168;
    font-size: 14px;
    font-weight: 500;
    background: linear-gradient(135deg, #f8f9fc 0%, #edf0f5 100%);
    border: 2px dashed rgba(9,113,104,0.12);
    transition: all 0.3s;
    cursor: default;
    overflow: hidden;
}
.manager_de_content .store-gallery-item:hover {
    border-color: rgba(9,113,104,0.3);
    background: linear-gradient(135deg, #f0f3f8 0%, #e3e8f0 100%);
}
.manager_de_content .store-gallery-item img:hover {
    transform: scale(1.05);
}
.manager_de_content .service-list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.manager_de_content .service-list li {
    background: #f8f9fc;
    padding: 20px 24px;
    border-radius: 10px;
    border-left: 4px solid #097168;
    font-size: 14px;
    color: #374151;
    font-weight: 500;
    transition: all 0.3s;
}
.manager_de_content .service-list li:hover {
    background: #eef1f7;
    transform: translateX(4px);
}

/* 侧栏推荐标题 */
.manager_side_title {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid #097168;
}
.manager_rel_placeholder {
    width: 100%;
    height: 120px;
    background: #f3f4f6;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #c0c4cc;
    border-radius: 8px;
}

/* 响应��?*/
@media (max-width: 1024px) {
    .manager_grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    .manager_detail_hero_inner { flex-direction: column; text-align: center; gap: 28px; padding: 32px 24px; }
    .manager_detail_meta { justify-content: center; }
    .manager_de_content .store-gallery { grid-template-columns: repeat(2, 1fr) !important; }
    .manager_de_content .service-list { grid-template-columns: 1fr !important; }
    .manager_de_l { padding: 24px; }
    .manager_de_content .manager-hero { margin: -24px -24px 24px; }
}
@media (max-width: 768px) {
    .manager_grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .manager_list_card_img { height: 200px; }
    .idx_manager_swiper { padding: 10px 10px 30px; }
    .idx_manager_prev, .idx_manager_next { display: none; }
    .manager_detail_hero_inner { padding: 24px 20px; }
    .manager_detail_avatar { width: 120px; height: 120px; }
    .manager_detail_hero_text h1 { font-size: 22px; }
    .manager_de_content .store-gallery { grid-template-columns: 1fr 1fr !important; }
    .manager_de_content .store-gallery-item { height: 140px; font-size: 12px; }
}
@media (max-width: 480px) {
    .manager_grid { grid-template-columns: 1fr; }
    .idx_manager_sec { padding: 60px 0; }
    .manager_de_content .store-gallery { grid-template-columns: 1fr !important; }
    .manager_de_content .service-list { grid-template-columns: 1fr !important; }
}

/* --- 合作伙伴 --- */
.idx_partner_sec { padding: 80px 0; background: #f8f9fc; }

/* --- 加盟详情��?--- */
.join_article_bread {
    padding: 16px 0;
    background: #f8f9fb;
    border-bottom: 1px solid #eee;
    font-size: 14px;
}
.join_article_bread a { color: #097168; }
.join_article_bread em { color: #999; font-style: normal; }
.join_article_bread span { color: #ccc; margin: 0 6px; }
.join_article_main { padding-top: 40px; }
.join_article_side h3 {
    font-size: 18px;
    color: #1a1a1a;
    font-weight: 600;
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 2px solid #097168;
}
.join_article_side ul li {
    margin-bottom: 16px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.04);
    transition: transform .3s, box-shadow .3s;
}
.join_article_side ul li:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(9,113,104,0.1);
}
.join_article_cta_mini {
    margin-top: 24px;
    padding: 24px 20px;
    background: linear-gradient(135deg, #097168, #054a44);
    border-radius: 10px;
    text-align: center;
}
.join_article_cta_mini p {
    color: #fff;
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 16px;
}
.join_article_cta_mini a {
    display: inline-block;
    padding: 10px 28px;
    background: #ffb900;
    color: #1a1a1a;
    font-size: 15px;
    font-weight: 600;
    border-radius: 6px;
    transition: transform .3s, box-shadow .3s;
}
.join_article_cta_mini a:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(255,185,0,0.4);
    color: #1a1a1a;
}

/* --- 响应��?--- */
@media (max-width: 1199px) {
    .join_adv_grid { grid-template-columns: repeat(2, 1fr); }
    .join_stores_grid > ul { grid-template-columns: repeat(2, 1fr); }
    .join_support_grid { grid-template-columns: repeat(2, 1fr); }
    .join_hero_text h1 { font-size: 34px; }
    .join_flow_line { width: 40px; }
    .join_cond_row { flex-direction: column !important; text-align: center; padding: 24px 20px; }
    .join_cta_content { flex-direction: column; }
    .join_cta_right { flex: 1; width: 100%; }
}
@media (max-width: 767px) {
    .join_hero_text h1 { font-size: 26px; }
    .join_hero_actions { flex-direction: column; }
    .join_hero_stats { gap: 12px; justify-content: center; }
    .join_stat_item { padding: 16px 18px; }
    .join_stat_num { font-size: 26px; }
    .join_adv_grid { grid-template-columns: 1fr; }
    .join_stores_grid > ul { grid-template-columns: 1fr; }
    .join_support_grid { grid-template-columns: 1fr; }
    .join_flow_wrap { flex-direction: column; }
    .join_flow_line { width: 2px; height: 40px; }
    .join_flow_line::after { right: -5px; top: auto; bottom: -6px; }
    .join_section_head h2 { font-size: 26px; }
    .join_sec { padding: 50px 0; }
    .join_cta_form_box { padding: 24px 16px; }
    .join_cta_input_group input { height: 46px; font-size: 14px; }
    .join_cta_form_head h3 { font-size: 18px; }
}

/* ================================================================
   Footer 底部导航 ��?基础样式（media.css 中仅有响应式覆盖��?   ================================================================ */

/* --- flexrow 工具��?--- */
.flexrow {
    display: flex;
    
}

/* --- .foot 主区��?--- */
.foot {
    background: #054a44;
    color: rgba(255,255,255,0.75);
    padding: 48px 0 24px;
}
.foot a { color: rgba(255,255,255,0.8); text-decoration: none; transition: color 0.25s; }
.foot a:hover { color: #fff; }

/* --- foottop: LOGO + 社交图标 --- */
.foottop {
    justify-content: space-between;
    padding-bottom: 32px;
    border-bottom: 1px solid rgba(255,255,255,0.12);
    margin-bottom: 36px;
}
.footlogo img { height: 40px; width: auto; }
.footlinks ul { gap: 16px; list-style: none; margin: 0; padding: 0; display: flex; }

/* 社交图标 hover 二维��?*/
.footlinks li { position: relative; }
.fewmico { width: 28px; height: 28px; fill: #fff; transition: opacity 0.25s; }
.footlinks li a:hover .fewmico { opacity: 0.7; }
.fewmimg {
    position: absolute;
    bottom: calc(100% + 12px);
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    padding: 14px;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.2);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 100;
    white-space: nowrap;
}
.fewmimg img { width: 120px; height: 120px; object-fit: contain; display: block; }
.fewmimg p { margin: 6px 0 0; font-size: 12px; color: #666; text-align: center; }
.footlinks li:hover .fewmimg { opacity: 1; visibility: visible; bottom: calc(100% + 8px); }

/* --- footmid: 导航��?+ 联系信息 --- */
.footmid { justify-content: space-between; gap: 40px; }
.footmid_l { flex: 1; display: flex; gap: 20px; }
.footmid_l dl { margin: 0; }
.footmid_l dt { margin: 0 0 14px; }
.footmid_l dt a { font-size: 15px; font-weight: 600; color: #fff; letter-spacing: 0.5px; }
.footmid_l dd { margin: 0 0 10px; list-style: none; }
.footmid_l dd a { font-size: 13px; color: rgba(255,255,255,0.55); }
.footmid_l dd a:hover { color: #fff; }

.footmid_r { width: 300px; flex-shrink: 0; }
.footmid_r ul { list-style: none; margin: 0 0 20px; padding: 0; }
.footmid_r li { margin-bottom: 10px; }
.footmid_rdesc p { margin: 0; font-size: 14px; color: rgba(255,255,255,0.7); }
.footmid_rdesc p::before { /* SVG icon via pseudo */ content: ''; display: inline-block; width: 14px; height: 14px; margin-right: 8px; vertical-align: -2px; background-size: contain; }

/* footmid_ewm: 右侧二维��?*/
.footmid_ewm ul { list-style: none; margin: 0; padding: 0; gap: 20px; display: flex; }
.footmid_ewm li { text-align: center; background: none; }
.footmid_ewm img { width: 90px; height: 90px; object-fit: contain; border-radius: 8px; background: #fff; padding: 4px; }
.footmid_ewm p { margin: 8px 0 0; font-size: 12px; color: rgba(255,255,255,0.55); }

/* --- footcopy 版权区 --- */
.footcopy {
    position: relative;
    background: linear-gradient(180deg, #04302b 0%, #032622 100%);
    padding: 22px 0 20px;
    font-size: 12px;
    color: rgba(255,255,255,0.45);
}
.footcopy::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    max-width: 1300px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(212,175,110,0.35), transparent);
}
.footcitem {
    justify-content: space-between;
    align-items: center;
    gap: 24px;
}
.footc_l { display: flex; align-items: center; gap: 0; flex-wrap: wrap; }
.footc_ldesc { margin-right: 6px; }
.footc_l span,
.footc_l span a {
    font-size: 12px;
    color: rgba(255,255,255,0.45);
    padding: 0 10px;
    border-left: 1px solid rgba(255,255,255,0.14);
    line-height: 1.4;
    transition: color 0.25s;
}
.footc_l span.footc_ldesc,
.footc_l span.footc_anti,
.footc_l span:first-child,
.footc_l span:last-child { border-left: none; }
.footc_l span a:hover { color: #d4af6e; }

/* footc_r: 友情链接 */
.footc_r { display: flex; align-items: center; gap: 14px; }
.footc_r > p {
    margin: 0;
    font-size: 12px;
    color: rgba(255,255,255,0.35);
    white-space: nowrap;
    letter-spacing: 1px;
}
.footc_r > p::after {
    content: '';
    display: inline-block;
    width: 1px;
    height: 14px;
    background: rgba(255,255,255,0.14);
    margin-left: 14px;
    vertical-align: -2px;
}
.footc_rlinks ul {
    display: flex;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
}
.footc_rlinks li a {
    display: inline-block;
    font-size: 12px;
    color: rgba(255,255,255,0.45);
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.04);
    transition: all 0.25s;
}
.footc_rlinks li a:hover {
    color: #fff;
    border-color: rgba(212,175,110,0.5);
    background: rgba(212,175,110,0.16);
    transform: translateY(-1px);
}

/* --- xuanfu 悬浮侧栏（品牌胶囊风格） --- */
.xuanfu {
    position: fixed;
    right: 24px;
    bottom: 120px;
    z-index: 900;
    display: none;
}
.xuanfu ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.xuanfu li { position: relative; }
.xuanfu .xfimg {
    width: 52px; height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #0d8a79, #097168 55%, #06594f);
    border-radius: 14px;
    box-shadow: 0 8px 20px rgba(9, 113, 104, 0.32);
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
.xuanfu .xfimg:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(9, 113, 104, 0.45); }
.xuanfu .xfimg img { width: 24px; height: 24px; object-fit: contain; filter: brightness(0) invert(1); }
.xuanfu .xfimg p { display: none; }

/* 悬浮图标：扫码/电话弹层卡片 */
.xuanfu li .xfwx {
    position: absolute;
    right: calc(100% + 16px);
    top: 50%;
    transform: translateY(-50%);
    background: #fff;
    padding: 14px 14px 10px;
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.16);
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all 0.32s cubic-bezier(0.22, 1, 0.36, 1);
    text-align: center;
}
.xuanfu li .xfwx::after {
    content: '';
    position: absolute;
    right: -7px;
    top: 50%;
    margin-top: -6px;
    width: 12px; height: 12px;
    background: #fff;
    transform: rotate(45deg);
    box-shadow: 4px -4px 8px rgba(0, 0, 0, 0.06);
}
.xuanfu li:hover .xfwx { opacity: 1; visibility: visible; }
.xuanfu .xfwx img { max-width: 132px; width: 132px; height: auto; object-fit: contain; display: block; border-radius: 6px; margin: 0 auto; }
.xuanfu .xfwxdesc { margin: 10px 0 2px; font-size: 13px; font-weight: 600; color: #333; }
.xuanfu .xfwx .xfwxsub { margin: 0; font-size: 11px; color: #999; }

/* 电话弹层：品牌渐变 */
.xuanfu .xftelitem .xfwx {
    background: linear-gradient(135deg, #0d8a79, #097168);
    padding: 16px 20px;
    color: #fff;
}
.xuanfu .xftelitem .xfwx::after { background: #0b7f6f; box-shadow: 4px -4px 8px rgba(0, 0, 0, 0.10); }
.xuanfu .xftel p { margin: 0; font-size: 16px; font-weight: 700; letter-spacing: 0.5px; }
.xuanfu .xfteldesc { display: block; margin-top: 6px; font-size: 11px; color: rgba(255, 255, 255, 0.72) !important; font-weight: 400 !important; }

/* 返回顶部：独立圆形按钮 */
.xuanfu .xftopitem .xfimg {
    background: #fff;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
}
.xuanfu .xftopitem .xfimg img { filter: none; }
.xuanfu .xftopitem .xfimg:hover { background: linear-gradient(135deg, #0d8a79, #097168); }
.xuanfu .xftopitem .xfimg:hover img { filter: brightness(0) invert(1); }

/* ========================================
   招聘模块 - 姬颜氏加入我��?   ======================================== */

/* -- 公共容器 -- */
.recruit_container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
}

/* -- 标题 -- */
.recruit_section_title {
    font-size: 32px;
    font-weight: 700;
    color: #1a1a1a;
    text-align: center;
    margin-bottom: 12px;
    line-height: 1.3;
}
.recruit_section_subtitle {
    font-size: 16px;
    color: #8894a8;
    text-align: center;
    margin-bottom: 48px;
    line-height: 1.6;
}

/* -- Hero Banner -- */
.recruit_hero {
    position: relative;
    padding: 100px 0 80px;
    background: linear-gradient(135deg, #042a26 0%, #054a44 30%, #053530 60%, #042a26 100%);
    overflow: hidden;
    text-align: center;
}
.recruit_hero_bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
}
.recruit_hero_bg::before {
    content: '';
    position: absolute;
    top: -40%;
    right: -5%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(212,175,55,0.08) 0%, transparent 65%);
    border-radius: 50%;
}
.recruit_hero_bg::after {
    content: '';
    position: absolute;
    bottom: -30%;
    left: -5%;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(212,175,55,0.05) 0%, transparent 65%);
    border-radius: 50%;
}
.recruit_hero_content {
    position: relative;
    z-index: 1;
    max-width: 800px;
    margin: 0 auto;
    padding: 0 30px;
}
.recruit_hero_subtitle {
    font-size: 14px;
    color: rgba(212,175,55,0.8);
    letter-spacing: 4px;
    text-transform: uppercase;
    margin-bottom: 16px;
    font-weight: 500;
}
.recruit_hero_title {
    font-size: 48px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 16px;
    line-height: 1.2;
    letter-spacing: 1px;
}
.recruit_hero_desc {
    font-size: 18px;
    color: rgba(255,255,255,0.7);
    margin-bottom: 40px;
    line-height: 1.6;
}
.recruit_hero_stats {
    display: flex;
    justify-content: center;
    gap: 60px;
}
.recruit_hero_stat {
    text-align: center;
}
.recruit_hero_stat_num {
    display: block;
    font-size: 36px;
    font-weight: 700;
    color: #D4AF37;
    line-height: 1.2;
}
.recruit_hero_stat span {
    font-size: 14px;
    color: rgba(255,255,255,0.55);
}

/* -- 为什么选择我们 -- */
.recruit_why {
    padding: 90px 0;
    background: #fafbfd;
}
.recruit_why_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}
.recruit_why_card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 16px;
    text-align: center;
    box-shadow: 0 2px 20px rgba(0,0,0,0.04);
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}
.recruit_why_card:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 48px rgba(212,175,55,0.1);
}
.recruit_why_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    margin-bottom: 24px;
    background: linear-gradient(135deg, #fdf8ed 0%, #faf3dc 100%);
    border-radius: 50%;
}
.recruit_why_card h3 {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 12px;
}
.recruit_why_card p {
    font-size: 14px;
    color: #6b7280;
    line-height: 1.7;
    margin: 0;
}

/* -- 热门岗位 -- */
.recruit_hot {
    padding: 80px 0;
    background: #fff;
}
.recruit_hot_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}
.recruit_hot_card {
    display: block;
    position: relative;
    background: linear-gradient(135deg, #fdf8ed 0%, #faf3dc 100%);
    border-radius: 16px;
    padding: 32px 24px;
    text-decoration: none !important;
    color: inherit;
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
    overflow: hidden;
    border: 1px solid rgba(212,175,55,0.15);
}
.recruit_hot_card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #D4AF37, #F0D060, #D4AF37);
}
.recruit_hot_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 48px rgba(212,175,55,0.12);
}
.recruit_hot_card_tag {
    position: absolute;
    top: 16px;
    right: 16px;
    background: #D4AF37;
    color: #fff;
    padding: 3px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}
.recruit_hot_card_title {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 12px;
    line-height: 1.4;
    padding-right: 40px;
}
.recruit_hot_card_meta {
    display: flex;
    gap: 16px;
    font-size: 13px;
    color: #8894a8;
    margin-bottom: 16px;
}
.recruit_hot_card_salary {
    margin-bottom: 14px;
}
.recruit_hot_card_salary strong {
    font-size: 22px;
    color: #D4AF37;
    font-weight: 700;
}
.recruit_hot_card_salary small {
    font-size: 13px;
    color: #999;
}
.recruit_hot_card_btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #097168;
    font-weight: 600;
    transition: gap 0.3s;
}
.recruit_hot_card:hover .recruit_hot_card_btn { gap: 10px; }

/* -- 筛选器 -- */
.recruit_filter {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 40px;
}
.recruit_filter_btn {
    padding: 10px 24px;
    border-radius: 30px;
    font-size: 14px;
    color: #666;
    background: #f3f4f6;
    text-decoration: none;
    transition: all 0.3s;
    border: 1px solid transparent;
}
.recruit_filter_btn:hover,
.recruit_filter_btn.active {
    background: #054a44;
    color: #fff;
    border-color: #054a44;
}

/* -- 岗位列表 -- */
.recruit_jobs {
    padding: 80px 0;
    background: #f8f9fc;
}
.recruit_job_list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.recruit_job_card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 28px 32px;
    background: #fff;
    text-decoration: none !important;
    color: inherit;
    transition: all 0.3s;
    border-radius: 12px;
    box-shadow: 0 1px 6px rgba(0,0,0,0.02);
}
.recruit_job_card:hover {
    box-shadow: 0 8px 32px rgba(9,113,104,0.08);
    transform: translateX(4px);
}
.recruit_job_card_title {
    font-size: 17px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: color 0.3s;
}
.recruit_job_card:hover .recruit_job_card_title { color: #097168; }
.recruit_job_card_hot {
    background: #ff4757;
    color: #fff;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    animation: recruitPulse 2s infinite;
}
@keyframes recruitPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}
.recruit_job_card_tags {
    display: flex;
    gap: 16px;
    font-size: 13px;
    color: #8894a8;
}
.recruit_job_card_right {
    text-align: right;
    flex-shrink: 0;
}
.recruit_job_card_salary strong {
    font-size: 18px;
    color: #ff4757;
    font-weight: 600;
}
.recruit_job_card_date {
    font-size: 12px;
    color: #bbb;
    display: block;
    margin-top: 4px;
}

/* -- 空状��?-- */
.recruit_empty {
    text-align: center;
    padding: 80px 0;
    color: #ccc;
}

/* -- CTA ��?-- */
.recruit_cta {
    padding: 70px 0;
    text-align: center;
    background: linear-gradient(135deg, #042a26 0%, #054a44 100%);
    color: #fff;
}
.recruit_cta h2 {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 12px;
}
.recruit_cta p {
    font-size: 15px;
    color: rgba(255,255,255,0.65);
    margin-bottom: 24px;
}
.recruit_cta_btn {
    display: inline-block;
    padding: 14px 40px;
    background: #D4AF37;
    color: #1a1a1a !important;
    font-size: 16px;
    font-weight: 600;
    border-radius: 8px;
    text-decoration: none !important;
    transition: all 0.3s;
}
.recruit_cta_btn:hover {
    background: #F0D060;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(212,175,55,0.3);
}

/* ========================================
   招聘详情��?   ======================================== */

/* -- 面包��?-- */
.recruit_detail_breadcrumb {
    background: #f8f9fc;
    padding: 14px 0;
    border-bottom: 1px solid #eee;
    font-size: 13px;
}
.recruit_detail_breadcrumb a {
    color: #097168;
    text-decoration: none;
}
.recruit_detail_breadcrumb span {
    margin: 0 6px;
    color: #ccc;
}
.recruit_detail_breadcrumb .current {
    color: #666;
}

/* -- 岗位头部 -- */
.recruit_detail_head {
    padding: 48px 0;
    background: #fff;
    border-bottom: 1px solid #f0f0f0;
}
.recruit_detail_head_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}
.recruit_detail_head_info h1 {
    font-size: 30px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 16px;
    line-height: 1.3;
}
.recruit_detail_head_meta {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    align-items: center;
    font-size: 14px;
    color: #6b7280;
}
.recruit_meta_badge {
    background: #054a44;
    color: #fff;
    padding: 4px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
}
.recruit_detail_head_salary {
    flex-shrink: 0;
    text-align: right;
}
.recruit_detail_head_salary strong {
    display: block;
    font-size: 32px;
    color: #ff4757;
    font-weight: 700;
    line-height: 1.2;
}
.recruit_detail_head_salary span {
    font-size: 13px;
    color: #999;
}

/* -- 主体内容��?-- */
.recruit_detail_body {
    padding: 50px 0 80px;
    background: #f8f9fc;
}
.recruit_detail_grid {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}
.recruit_detail_main {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.recruit_detail_block {
    background: #fff;
    border-radius: 14px;
    padding: 36px 40px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.03);
}
.recruit_detail_block h2 {
    font-size: 22px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 24px;
    padding-left: 16px;
    border-left: 4px solid #097168;
    line-height: 1.4;
}
.recruit_detail_html {
    font-size: 15px;
    color: #374151;
    line-height: 2;
}
.recruit_detail_html ul,
.recruit_detail_html ol {
    padding-left: 20px;
    margin: 12px 0;
}
.recruit_detail_html li {
    margin-bottom: 10px;
}
.recruit_detail_html p {
    margin-bottom: 14px;
}

/* -- 右侧边栏 -- */
.recruit_detail_side {
    width: 360px;
    flex-shrink: 0;
    position: sticky;
    top: 20px;
}

/* 投递卡��?*/
.recruit_detail_apply_card {
    background: #fff;
    border-radius: 16px;
    padding: 32px 28px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.06);
    margin-bottom: 24px;
}
.recruit_detail_apply_card h3 {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 20px;
    text-align: center;
}

/* 表单样式 */
.recruit_form_group {
    margin-bottom: 18px;
}
.recruit_form_group label {
    display: block;
    font-size: 13px;
    color: #666;
    margin-bottom: 6px;
    font-weight: 500;
}
.recruit_form_group .required {
    color: #ff4757;
}
.recruit_form_group input[type="text"],
.recruit_form_group input[type="tel"],
.recruit_form_group input[type="email"],
.recruit_form_group textarea,
.recruit_form_group select {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    font-size: 14px;
    color: #333;
    background: #fafbfd;
    transition: all 0.3s;
    outline: none;
    font-family: inherit;
}
.recruit_form_group input:focus,
.recruit_form_group textarea:focus,
.recruit_form_group select:focus {
    border-color: #097168;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(9,113,104,0.08);
}
.recruit_form_group textarea {
    resize: vertical;
    min-height: 80px;
}
.recruit_form_group select {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
}
.recruit_form_row {
    display: flex;
    gap: 14px;
}
.recruit_form_half {
    flex: 1;
    min-width: 0;
}

/* 文件上传 */
.recruit_form_file {
    position: relative;
}
.recruit_form_file input[type="file"] {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 2;
}
.recruit_file_label {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px;
    border: 2px dashed #d0d5e0;
    border-radius: 8px;
    cursor: pointer;
    color: #8894a8;
    font-size: 13px;
    transition: all 0.3s;
    justify-content: center;
}
.recruit_file_label:hover {
    border-color: #097168;
    color: #097168;
    background: rgba(9,113,104,0.02);
}

/* 提交按钮 */
.recruit_submit_btn {
    display: block;
    width: 100%;
    padding: 14px;
    background: linear-gradient(135deg, #097168 0%, #054a44 100%);
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.3s;
    letter-spacing: 1px;
    margin-top: 8px;
}
.recruit_submit_btn:hover {
    background: linear-gradient(135deg, #097168 0%, #097168 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(9,113,104,0.25);
}
.recruit_submit_btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}

.recruit_form_tip {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 12px;
    color: #bbb;
    margin: 14px 0 0;
    text-align: center;
}

/* 表单消息 */
.recruit_form_msg {
    padding: 12px 16px;
    border-radius: 8px;
    font-size: 14px;
    margin-top: 12px;
    text-align: center;
}
.recruit_form_msg.msg-success {
    background: #f0fdf4;
    color: #16a34a;
    border: 1px solid #bbf7d0;
}
.recruit_form_msg.msg-error {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

/* 同类推荐 */
.recruit_detail_related {
    background: #fff;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.04);
}
.recruit_detail_related h3 {
    font-size: 17px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid #097168;
}
.recruit_related_item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    text-decoration: none !important;
    color: inherit;
    border-bottom: 1px solid #f3f4f6;
    transition: all 0.3s;
}
.recruit_related_item:last-child { border: none; }
.recruit_related_item:hover {
    padding-left: 8px;
}
.recruit_related_item_info strong {
    display: block;
    font-size: 14px;
    color: #333;
    margin-bottom: 4px;
    transition: color 0.3s;
}
.recruit_related_item:hover .recruit_related_item_info strong { color: #097168; }
.recruit_related_item_info span {
    font-size: 12px;
    color: #999;
}
.recruit_related_item_salary {
    font-size: 14px;
    color: #ff4757;
    font-weight: 600;
    flex-shrink: 0;
}

/* ========================================
   招聘模块响应��?   ======================================== */
@media (max-width: 1024px) {
    .recruit_why_grid { grid-template-columns: repeat(2, 1fr); }
    .recruit_hot_grid { grid-template-columns: repeat(2, 1fr); }
    .recruit_detail_grid { flex-direction: column; }
    .recruit_detail_side { width: 100%; position: static; }
    .recruit_detail_head_row { flex-direction: column; align-items: flex-start; }
    .recruit_detail_head_salary { text-align: left; }
}

@media (max-width: 768px) {
    .recruit_hero { padding: 70px 0 50px; }
    .recruit_hero_title { font-size: 32px; }
    .recruit_hero_stats { gap: 30px; }
    .recruit_hero_stat_num { font-size: 28px; }
    .recruit_why_grid { grid-template-columns: 1fr 1fr; gap: 16px; }
    .recruit_why_card { padding: 28px 20px; }
    .recruit_hot_grid { grid-template-columns: 1fr 1fr; gap: 16px; }
    .recruit_section_title { font-size: 26px; }
    .recruit_container { padding: 0 16px; }
    .recruit_job_card { padding: 20px; }
    .recruit_job_card_title { font-size: 15px; }
    .recruit_detail_block { padding: 24px; }
    .recruit_detail_head_info h1 { font-size: 24px; }
    .recruit_detail_head_salary strong { font-size: 24px; }
}

@media (max-width: 480px) {
    .recruit_hero_title { font-size: 26px; }
    .recruit_hero_desc { font-size: 15px; }
    .recruit_hero_stats { flex-wrap: wrap; gap: 20px; }
    .recruit_why_grid { grid-template-columns: 1fr; }
    .recruit_hot_grid { grid-template-columns: 1fr; }
    .recruit_job_card { flex-direction: column; align-items: flex-start; gap: 12px; }
    .recruit_job_card_right { text-align: left; }
    .recruit_form_row { flex-direction: column; gap: 0; }
    .recruit_detail_apply_card { padding: 24px 18px; }
}
