@charset "utf-8";

/* CSS Document */
html,
body,
div,
span,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
i,
b,
img,
dl,
dt,
dd,
ol,
ul,
li,
form,
label,
table,
tbody,
tfoot,
thead,
tr,
th,
td,
canvas,
footer,
header,
nav,
menu,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	outline: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: normal;
}

button,
select,
input,
textarea {
	font-size: 14px;
	font-family: STHeiti-Light, 'Hiragino Sans GB', 'Microsoft Yahei', Arial;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #aaa;
}
html,
body {
	height: 100%;
}
body {
	background: #f8fbff;
	font-size: 14px;
	font-family: STHeiti-Light, 'Hiragino Sans GB', 'Microsoft Yahei', Arial;
	color: #1c2f4e;
	line-height: 1.8;
	display: flex;
	flex-direction: column;
}

ul,
ol {
	list-style: none;
}

img {
	border: 0;
}

input,
textarea {
	outline: none;
	resize: none;
}

div:active {
	outline: none;
	text-decoration: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	max-width: 100%;
	vertical-align: top;
	image-rendering: -moz-crisp-edges;
	image-rendering: -o-crisp-edges;
	image-rendering: -webkit-optimize-contrast;
	image-rendering: crisp-edges;
	-ms-interpolation-mode: nearest-neighbor;
	/* image-rendering: optimizeSpeed;
  image-rendering: -moz-crisp-edges;
  image-rendering: -o-crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: pixelated;
  -ms-interpolation-mode: nearest-neighbor;  */
}

a {
	color: #333;
	text-decoration: none;
	transition: 0.2s;
	cursor: pointer;
}

a:hover {
	color: #0772fc;
}

/* scrollbar */
::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}

::-webkit-scrollbar-track {
	background: #f1f1f1;
}

::-webkit-scrollbar-track:hover {
	background: #eee;
}

::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: #b9b9b9;
}

::-webkit-scrollbar-thumb:hover {
	background: #747474;
}

::-webkit-scrollbar-thumb:active {
	background: #555;
}

/* common ------------------------*/

.layui-btn {
	background-color: #0092ff;
}

.mt10 {
	margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mt20 {
	margin-top: 20px;
}
.mt25 {
	margin-top: 25px;
}
.mt30 {
	margin-top: 30px !important;
}
.mt40 {
	margin-top: 40px;
}
.mt50 {
	margin-top: 50px;
}
.mt60 {
	margin-top: 60px;
}
.mt70 {
	margin-top: 70px;
}
.mt120 {
	margin-top: 120px;
}
.h450 {
	height: 450px;
}
.mb10 {
	margin-bottom: 10px;
}

.block {
	width: 100%;
	flex: 1 0 auto;
	padding: 94px 30px 30px;
	background: #f8fbff;
}
.content {
	width: 1200px;
	margin: 0 auto;
}

header {
	width: 100%;
	height: 64px;
	background: #fff;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-width: 1200px;
	padding: 0 8%;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.06);
}

header .logo {
	width: 160px;
	display: flex;
	align-items: center;
	font-size: 20px;
	font-weight: bold;
	color: #10233d;
	line-height: 64px;
	white-space: nowrap;
}

header .logo:before,
.footer_logo:before {
	content: 'E';
	width: 26px;
	height: 26px;
	line-height: 26px;
	margin-right: 9px;
	border-radius: 5px;
	background: #005845;
	text-align: center;
	font-size: 16px;
	font-weight: 900;
	color: #fff;
}

header .nav {
	flex: 1;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 36px;
}

header .nav a {
	position: relative;
	display: block;
	height: 64px;
	line-height: 64px;
	font-size: 14px;
	color: #0f172a;
}

header .nav a:hover,
header .nav a.active {
	color: #005845;
}

header .nav a.active:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 15px;
	height: 2px;
	background: #005845;
}

header .search {
	width: 230px;
	height: 36px;
	margin-left: 24px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	border: 1px solid #d8dee9;
	border-radius: 4px;
	background: #fff;
	overflow: hidden;
	transition: 0.2s;
}

header .search:hover,
header .search:focus-within {
	border-color: #005845;
	box-shadow: 0 0 0 2px rgba(0, 88, 69, 0.08);
}

header .search .layui-input {
	display: block;
	flex: 1;
	width: 176px;
	height: 34px;
	line-height: 34px;
	border: 0;
	border-radius: 0;
	padding: 0 12px;
	background: transparent;
	font-size: 13px;
	color: #0f172a;
}

header .search .layui-input::-webkit-input-placeholder {
	color: #9aa8bd;
}

header .search .layui-btn {
	width: 42px;
	height: 34px;
	line-height: 34px;
	padding: 0;
	border: 0;
	border-left: 1px solid #e5eaf3;
	border-radius: 0;
	background: transparent;
	color: #15253d;
}

header .search .layui-btn:hover {
	color: #005845;
}

header .search .layui-icon {
	font-size: 22px;
}

header .mobile_nav_toggle {
	display: none;
}

footer {
	width: 100%;
	min-width: 1200px;
	flex-shrink: 0;
	border-top: 1px solid #cfe8dc;
	background: #edfbf3;
	color: #516987;
}

.footer_inner {
	width: calc(100% - 240px);
	max-width: 1250px;
	margin: 0 auto;
	padding: 50px 0 34px;
}

.footer_top {
	display: flex;
	justify-content: space-between;
	padding-bottom: 34px;
	border-bottom: 1px solid #c9d8e7;
}

.footer_col {
	width: 210px;
}

.footer_about {
	width: 320px;
}

.footer_logo {
	width: 160px;
	display: flex;
	align-items: center;
	margin-bottom: 14px;
	font-size: 20px;
	line-height: 28px;
	font-weight: bold;
	color: #10233d;
}

.footer_col h3 {
	margin-bottom: 16px;
	font-size: 14px;
	line-height: 22px;
	font-weight: bold;
	color: #10233d;
}

.footer_col p,
.footer_col a {
	display: block;
	font-size: 13px;
	line-height: 26px;
	color: #516987;
}

.footer_col a:hover {
	color: #0092ff;
}

.footer_subscribe {
	width: 280px;
}

.subscribe_box {
	display: flex;
	gap: 8px;
}

.subscribe_box .layui-input {
	flex: 1;
	height: 36px;
	border: 1px solid #cfe4da;
	border-radius: 4px;
	background: #fff;
	color: #0f2f29;
}

.subscribe_box .layui-btn {
	width: 58px;
	height: 36px;
	line-height: 36px;
	padding: 0;
	border: 0;
	border-radius: 4px;
	background: #005845;
	color: #fff;
}

.footer_bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 30px;
	font-size: 12px;
	color: #0a3f35;
}

.footer_bottom a {
	display: inline-block;
	margin-left: 22px;
	font-size: 12px;
	color: #0a3f35;
}

.footer_bottom a:hover {
	color: #005845;
}

.style_select {
	position: relative;
	flex: 0 0 auto;
	margin-left: 20px;
}

.style_select_btn {
	height: 36px;
	display: flex;
	align-items: center;
	gap: 7px;
	border: 0;
	background: transparent;
	padding: 0;
	font-size: 12px;
	font-weight: bold;
	color: #005845;
	cursor: pointer;
}

.style_select_btn .layui-icon {
	font-size: 22px;
	color: #15253d;
}

.style_select_panel {
	position: absolute;
	right: 0;
	top: 54px;
	z-index: 120;
	width: 255px;
	display: none;
	padding: 17px 14px 14px;
	border: 1px solid #cbd9ea;
	border-radius: 0 14px 14px 14px;
	background: #f5fff9;
	box-shadow: 0 12px 22px rgba(4, 63, 49, 0.16);
}

.style_select_open .style_select_panel {
	display: block;
}

.style_select_title {
	margin: 0 0 12px 6px;
	font-size: 11px;
	line-height: 18px;
	font-weight: bold;
	letter-spacing: 4px;
	color: #0b4d40;
}

.style_option {
	height: 66px;
	display: flex;
	align-items: center;
	padding: 0 12px;
	border: 1px solid transparent;
	border-radius: 8px;
	color: #142942;
}

.style_option + .style_option {
	margin-top: 8px;
}

.style_option:hover,
.style_option.active {
	border-color: #99dbc6;
	background: #e6f7ee;
	color: #142942;
}

.style_option .layui-icon {
	flex: 0 0 auto;
	width: 32px;
	height: 32px;
	line-height: 32px;
	margin-right: 13px;
	border-radius: 6px;
	background: #005845;
	text-align: center;
	font-size: 17px;
	color: #fff;
}

.style_option:first-of-type .layui-icon {
	background: #006352;
}

.style_option strong {
	display: block;
	font-size: 14px;
	line-height: 20px;
	font-weight: bold;
	color: #10233d;
}

.style_option em {
	display: block;
	font-style: normal;
	font-size: 12px;
	line-height: 20px;
	color: #55716b;
}

/* home ------------------------*/

.banner_block {
	position: relative;
	height: 560px;
	margin: -30px -30px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background-position: center center !important;
	background-size: cover !important;
	overflow: hidden;
}

.banner_block:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, rgba(217, 238, 232, 0.28), rgba(255, 255, 255, 0.88));
}

.banner_block strong {
	position: relative;
	z-index: 1;
	display: block;
	margin-bottom: 92px;
	font-size: 54px;
	line-height: 1.18;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.search_box {
	position: relative;
	z-index: 1;
	width: 670px;
	height: 64px;
	display: flex;
	border-radius: 28px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 14px 30px rgba(0, 49, 38, 0.12);
}

.search_box .layui-input {
	flex: 1;
	height: 64px;
	line-height: 64px;
	border: 0;
	border-radius: 0;
	padding: 0 32px;
	background: #fff;
	font-size: 14px;
	color: #0f2f29;
}

.search_box .layui-input::-webkit-input-placeholder {
	color: #8d9b9a;
}

.search_box .layui-btn {
	width: 132px;
	height: 64px;
	line-height: 64px;
	border: 0;
	border-radius: 0;
	background: #005845;
	font-size: 16px;
	font-weight: 900;
	color: #fff;
}

.content > .title_1:first-child {
	margin-top: 78px;
}

.title_1 {
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 42px;
}

.title_1 span {
	position: relative;
	display: block;
	padding-left: 0;
	font-size: 26px;
	line-height: 36px;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.block_box .title_1 span {
	padding-left: 28px;
}

.block_box .title_1 span:before {
	content: '';
	position: absolute;
	left: 0;
	top: 3px;
	width: 4px;
	height: 30px;
	background: #005845;
}

.title_1 a {
	font-size: 12px;
	line-height: 20px;
	font-weight: 900;
	letter-spacing: 3px;
	color: #005845;
}

.block_box .title_1 a:after {
	content: '  →';
	font-size: 16px;
	letter-spacing: 0;
}

.news_block {
	display: flex;
	justify-content: space-between;
	gap: 64px;
	padding-bottom: 66px;
}

.news_box {
	flex: 1;
	min-width: 0;
}

.title_2 {
	position: relative;
	margin-bottom: 24px;
	padding-left: 20px;
	font-size: 11px;
	line-height: 20px;
	font-weight: 900;
	letter-spacing: 4px;
	color: #005845;
}

.title_2:before {
	content: '';
	position: absolute;
	left: 0;
	top: 7px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #005845;
}

.news_box:nth-child(2) .title_2 {
	color: #ff5b12;
}

.news_box:nth-child(2) .title_2:before {
	background: #ff5b12;
}

.news_box li {
	height: 60px;
	display: flex;
	align-items: center;
	border-bottom: 1px solid #cfe4da;
}

.news_box em {
	flex: 0 0 auto;
	height: 20px;
	line-height: 20px;
	margin-right: 14px;
	padding: 0 8px;
	border-radius: 4px;
	background: #e3eee8;
	font-style: normal;
	font-size: 12px;
	font-weight: bold;
	color: #005845;
}

.news_box:nth-child(2) em {
	background: #fff0e8;
	color: #ff5b12;
}

.news_box li a {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 15px;
	color: #005845;
}

.news_box li a:hover {
	color: #003c30;
}

.news_box li span {
	width: 76px;
	margin-left: 18px;
	text-align: right;
	font-size: 11px;
	font-weight: bold;
	color: #15253d;
}

.block_box {
	width: calc(100% + 60px);
	margin-left: -30px;
	padding: 68px 0 68px;
	background: #edfbf3;
}

.block_box .title_1 {
	margin-bottom: 50px;
}

.img_list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px;
}

.img_list li {
	position: relative;
	height: 190px;
	overflow: hidden;
	border-radius: 10px;
	background: #d9efe6;
	box-shadow: 0 12px 22px rgba(0, 58, 44, 0.12);
}

.img_list li img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	transition: 0.3s;
}

.img_list li:hover img {
	transform: scale(1.05);
}

.img_list li a {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 54px 24px 24px;
	background: linear-gradient(to top, rgba(0, 88, 69, 0.8), rgba(0, 88, 69, 0));
	color: #fff;
}

.img_list li a:hover {
	color: #fff;
}

.img_list li span {
	display: block;
	font-size: 12px;
	line-height: 20px;
	font-weight: bold;
	color: rgba(255, 255, 255, 0.9);
}

.img_list li strong {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 16px;
	line-height: 24px;
	font-weight: 900;
	color: #fff;
}

/* enterprise news ------------------------*/

.news_page {
	flex: 0 0 auto;
	padding-bottom: 126px;
	background: #fff;
}

.news_page_inner {
	width: calc(100% - 240px);
	margin: 0 auto;
}

.news_page_head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 40px;
}

.news_back_link {
	display: inline-flex;
	align-items: center;
	font-size: 12px;
	line-height: 34px;
	font-weight: 900;
	color: #15253d;
}

.news_back_link .layui-icon {
	width: 34px;
	height: 34px;
	line-height: 32px;
	margin-right: 10px;
	border: 1px solid #cfe8dc;
	border-radius: 50%;
	background: #f0fbf5;
	text-align: center;
	font-size: 17px;
	color: #005845;
}

.news_back_link:hover,
.news_back_link:hover .layui-icon {
	color: #005845;
}

.news_page_mark {
	font-size: 11px;
	line-height: 20px;
	font-weight: 900;
	letter-spacing: 4px;
	color: #15253d;
}

.news_feature {
	position: relative;
	height: 520px;
	display: block;
	overflow: hidden;
	border: 1px solid #cfe8dc;
	border-radius: 20px;
	background: #e7f4ee;
	box-shadow: 0 18px 34px rgba(0, 58, 44, 0.08);
	color: #005845;
}

.news_feature img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	filter: grayscale(12%) saturate(82%) brightness(95%);
}

.news_feature:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 62%;
	background: linear-gradient(
		to top,
		rgba(255, 255, 255, 0.92),
		rgba(255, 255, 255, 0.62),
		rgba(255, 255, 255, 0)
	);
}

.news_feature_content {
	position: absolute;
	left: 62px;
	right: 62px;
	bottom: 56px;
	z-index: 1;
}

.news_feature_content span {
	display: inline-block;
	height: 24px;
	line-height: 24px;
	margin-bottom: 28px;
	padding: 0 14px;
	border-radius: 12px;
	background: #005845;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 1px;
	color: #fff;
}

.news_feature_content h1 {
	margin-bottom: 18px;
	font-size: 46px;
	line-height: 1.18;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.news_feature_content p {
	width: 760px;
	max-width: 100%;
	font-size: 14px;
	line-height: 24px;
	color: #384a4a;
}

.news_card_list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px;
	width: 100%;
	margin-top: 62px;
}

.news_card {
	min-height: 280px;
	display: flex;
	flex-direction: column;
	padding: 30px 32px 28px;
	border: 1px solid #c8ebd8;
	border-radius: 20px;
	background: #edfbf3;
	color: #005845;
}

.news_card:hover {
	border-color: #9bd8bc;
	color: #005845;
	box-shadow: 0 14px 26px rgba(0, 58, 44, 0.1);
}

.news_card_meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 34px;
	font-size: 11px;
	line-height: 20px;
	font-weight: 900;
}

.news_card_meta span {
	color: #005845;
}

.news_card_meta em {
	font-style: normal;
	color: #8a9d99;
}

.news_card h2 {
	margin-bottom: 20px;
	font-size: 22px;
	line-height: 1.28;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.news_card p {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 48px;
	font-size: 13px;
	line-height: 24px;
	color: #183a34;
}

.news_card_action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: auto;
	padding-top: 30px;
	border-top: 1px solid #c8e5d5;
}

.news_card_action strong {
	font-size: 11px;
	line-height: 20px;
	font-weight: 900;
	letter-spacing: 2px;
	color: #005845;
}

.news_card_action i {
	font-style: normal;
	font-size: 20px;
	line-height: 20px;
	color: #005845;
}

/* article detail ------------------------*/

.article_page {
	padding-bottom: 138px;
	background: #fff;
}

.article_top_inner,
.article_wrap {
	width: calc(100% - 300px);
	margin: 0 auto;
}

.article_top_inner {
	height: 62px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.back_link {
	display: inline-flex;
	align-items: center;
	font-size: 12px;
	line-height: 34px;
	font-weight: 900;
	color: #15253d;
}

.back_link .layui-icon {
	width: 34px;
	height: 34px;
	line-height: 32px;
	margin-right: 10px;
	border: 1px solid #cfe8dc;
	border-radius: 50%;
	background: #f0fbf5;
	text-align: center;
	font-size: 17px;
	color: #005845;
}

.back_link:hover,
.back_link:hover .layui-icon {
	color: #005845;
}

.article_mark {
	font-size: 11px;
	line-height: 20px;
	font-weight: 900;
	letter-spacing: 4px;
	color: #15253d;
}

.article_wrap {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 220px;
	gap: 44px;
	padding-top: 42px;
}

.article_main {
	min-width: 0;
}

.article_label {
	display: inline-block;
	height: 22px;
	line-height: 22px;
	margin-bottom: 18px;
	padding: 0 12px;
	border-radius: 4px;
	background: #005845;
	font-size: 12px;
	font-weight: 900;
	color: #fff;
}

.article_main h1 {
	margin-bottom: 24px;
	font-size: 34px;
	line-height: 1.24;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.article_meta {
	display: flex;
	align-items: center;
	gap: 28px;
	padding: 18px 0;
	border-top: 1px solid #cfe8dc;
	border-bottom: 1px solid #cfe8dc;
	font-size: 13px;
	line-height: 22px;
	color: #18473e;
}

.article_meta span {
	display: inline-flex;
	align-items: center;
}

.article_meta .layui-icon {
	margin-right: 8px;
	font-size: 16px;
	color: #005845;
}

.article_content {
	padding-top: 42px;
	padding-bottom: 50px;
	border-bottom: 1px solid #e2efe8;
	font-size: 16px;
	line-height: 1.75;
	color: #005845;
}

.article_content img {
	width: 100%;
	height: 405px;
	display: block;
	margin-bottom: 42px;
	border-radius: 12px;
	object-fit: cover;
	filter: saturate(86%) brightness(86%);
	box-shadow: 0 16px 30px rgba(0, 58, 44, 0.16);
}

.article_content p {
	margin-bottom: 14px;
}

.article_content strong {
	font-weight: 900;
	color: #005845;
}

.article_tags {
	padding: 30px 0 46px;
	border-bottom: 1px solid #cfe8dc;
	color: #7a8b8d;
}

.article_tags div {
	display: flex;
	align-items: center;
	margin-bottom: 18px;
	font-size: 14px;
	line-height: 22px;
}

.article_tags .layui-icon {
	margin-right: 8px;
	font-size: 16px;
	color: #7a8b8d;
}

.article_tags a {
	display: inline-block;
	height: 24px;
	line-height: 24px;
	margin-right: 10px;
	padding: 0 12px;
	border-radius: 12px;
	background: #eef4f6;
	font-size: 12px;
	color: #617579;
}

.article_pager {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	padding: 30px 0 42px;
	border-bottom: 1px solid #eef4f1;
}

.article_pager_link {
	min-height: 84px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 18px 24px;
	border: 1px solid #c8ebd8;
	border-radius: 14px;
	color: #005845;
}

.article_pager_link:hover {
	border-color: #9bd8bc;
	color: #005845;
}

.article_pager_next {
	align-items: flex-end;
	text-align: right;
}

.article_pager_link span {
	margin-bottom: 8px;
	font-size: 12px;
	line-height: 18px;
	font-weight: 900;
	color: #15253d;
}

.article_pager_link strong {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
	font-size: 14px;
	line-height: 22px;
	font-weight: 900;
	color: #005845;
}

.article_footer_note {
	display: flex;
	justify-content: space-between;
	gap: 30px;
	padding-top: 28px;
	font-size: 12px;
	line-height: 22px;
	font-style: italic;
	color: #8a9aa1;
}

.article_footer_note em {
	flex: 0 0 auto;
	font-style: italic;
}

.article_sidebar {
	position: sticky;
	top: 92px;
	align-self: start;
}

.side_card {
	border-radius: 16px;
}

.latest_card {
	margin-bottom: 28px;
	padding: 24px 22px;
	border: 1px solid #c8ebd8;
	background: #edfbf3;
}

.side_card h2 {
	position: relative;
	margin-bottom: 24px;
	padding-left: 16px;
	font-size: 16px;
	line-height: 24px;
	font-weight: 900;
	color: #005845;
}

.side_card h2:before {
	content: '';
	position: absolute;
	left: 0;
	top: 2px;
	width: 5px;
	height: 22px;
	border-radius: 3px;
	background: #005845;
}

.latest_card li + li {
	margin-top: 22px;
}

.latest_card span {
	display: block;
	margin-bottom: 8px;
	font-size: 11px;
	line-height: 18px;
	font-weight: 900;
	color: #005845;
}

.latest_card strong {
	display: block;
	font-size: 13px;
	line-height: 20px;
	font-weight: 900;
	color: #005845;
}

.all_news {
	display: block;
	margin-top: 28px;
	padding-top: 18px;
	border-top: 1px solid #c8e5d5;
	text-align: center;
	font-size: 13px;
	line-height: 22px;
	font-weight: 900;
	color: #15253d;
}

.support_card {
	max-height: 1220px;
	overflow: hidden;
	padding: 28px 28px 30px;
	background: linear-gradient(155deg, #006d55, #004233);
	box-shadow: 0 16px 30px rgba(0, 58, 44, 0.2);
	color: #fff;
}

.support_card h2 {
	margin-bottom: 12px;
	color: #fff;
}

.support_card h2:before {
	background: #fff;
}

.support_card p {
	margin-bottom: 14px;
	font-size: 12px;
	line-height: 20px;
	color: rgba(255, 255, 255, 0.78);
}

.support_card a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 82px;
	height: 28px;
	border-radius: 14px;
	background: #fff;
	font-size: 12px;
	font-weight: 900;
	color: #005845;
}

/* product catalog ------------------------*/

.product_page {
	padding-bottom: 100px;
	background: #fff;
}

.product_page_inner {
	width: calc(100% - 220px);
	max-width: 1140px;
	margin: 0 auto;
}

.product_back_link {
	margin: 0 0 30px;
}

.product_page_head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 42px;
	margin-bottom: 58px;
}

.product_page_head h1 {
	font-size: 56px;
	line-height: 0.95;
	font-weight: 900;
	letter-spacing: 0;
	color: #005845;
}

.product_page_head h1 span,
.product_page_head h1 strong {
	display: block;
	font-weight: 900;
}

.product_page_head p {
	width: 360px;
	margin-top: 24px;
	font-size: 15px;
	line-height: 1.45;
	color: #15253d;
	text-transform: uppercase;
}

.product_tabs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px;
	padding-bottom: 3px;
}

.product_tabs a {
	min-width: 86px;
	height: 30px;
	line-height: 28px;
	padding: 0 20px;
	border: 1px solid #c8ebd8;
	border-radius: 16px;
	background: #edfbf3;
	text-align: center;
	font-size: 12px;
	font-weight: 900;
	color: #005845;
}

.product_tabs a:hover,
.product_tabs a.active {
	border-color: #005845;
	background: #005845;
	color: #fff;
	box-shadow: 0 12px 24px rgba(0, 58, 44, 0.2);
}

.product_grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
	width: 100%;
}

.catalog_card {
	min-height: 456px;
	display: flex;
	flex-direction: column;
	padding: 12px 12px 28px;
	border: 1px solid #c8ebd8;
	border-radius: 20px;
	background: #edfbf3;
	color: #005845;
}

.catalog_card:hover {
	border-color: #9bd8bc;
	color: #005845;
	box-shadow: 0 14px 26px rgba(0, 58, 44, 0.1);
}

.catalog_pic {
	position: relative;
	height: 220px;
	overflow: hidden;
	border-radius: 13px;
	background: #d9efe6;
}

.catalog_pic img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	filter: grayscale(100%) saturate(90%) brightness(86%);
	transition: 0.3s;
}

.catalog_card:hover .catalog_pic img {
	transform: scale(1.04);
}

.catalog_pic span {
	position: absolute;
	left: 16px;
	top: 16px;
	height: 22px;
	line-height: 22px;
	padding: 0 12px;
	border-radius: 11px;
	background: #005845;
	font-size: 11px;
	font-weight: 900;
	color: #fff;
}

.catalog_info {
	flex: 1;
	display: flex;
	flex-direction: column;
	padding: 40px 18px 0;
}

.catalog_info h2 {
	margin-bottom: 16px;
	font-size: 20px;
	line-height: 1.3;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.catalog_info p {
	font-size: 13px;
	line-height: 24px;
	font-weight: bold;
	color: #819194;
}

.catalog_info strong {
	display: block;
	height: 42px;
	line-height: 40px;
	margin-top: auto;
	border: 1px solid #c8ebd8;
	border-radius: 22px;
	text-align: center;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 4px;
	color: #005845;
}

.catalog_card:hover .catalog_info strong {
	border-color: #005845;
	background: #005845;
	color: #fff;
}

.product_cta {
	min-height: 330px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-top: 58px;
	border-radius: 20px;
	background: linear-gradient(140deg, #005845, #004233);
	box-shadow: 0 28px 48px rgba(0, 58, 44, 0.18);
	text-align: center;
	color: #fff;
}

.product_cta_icon {
	width: 56px;
	height: 56px;
	line-height: 56px;
	margin-bottom: 28px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.22);
}

.product_cta_icon .layui-icon {
	font-size: 34px;
	color: #fff;
}

.product_cta h2 {
	margin-bottom: 20px;
	font-size: 24px;
	line-height: 32px;
	font-weight: 900;
	color: #fff;
}

.product_cta p {
	width: 430px;
	max-width: calc(100% - 48px);
	font-size: 14px;
	line-height: 25px;
	font-weight: bold;
	color: rgba(255, 255, 255, 0.9);
}

.product_cta a {
	display: block;
	width: 194px;
	height: 42px;
	line-height: 42px;
	margin-top: 34px;
	border-radius: 22px;
	background: #fff;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 1.4px;
	color: #005845;
}

.product_cta a:hover {
	color: #005845;
	box-shadow: 0 10px 20px rgba(0, 58, 44, 0.15);
}

/* product detail ------------------------*/

.product_detail_page {
	padding-bottom: 116px;
	background: #fff;
}

.product_detail_inner {
	width: calc(100% - 220px);
	max-width: 1180px;
	margin: 0 auto;
}

.product_detail_bar {
	height: 62px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 14px 0 48px;
	padding: 0 32px;
	border-radius: 18px;
	background: #004233;
	box-shadow: 0 16px 30px rgba(0, 58, 44, 0.14);
}

.product_detail_bar a {
	font-size: 12px;
	line-height: 24px;
	font-weight: 900;
	letter-spacing: 1.4px;
	color: #d9f5e7;
}

.product_detail_bar a:hover {
	color: #fff;
}

.product_detail_bar .quote_btn {
	height: 32px;
	line-height: 32px;
	padding: 0 14px;
	border-radius: 16px;
	background: #edfbf3;
	text-align: center;
	color: #005845;
}

.product_detail_bar .quote_btn:hover {
	color: #005845;
	box-shadow: 0 8px 18px rgba(0, 30, 23, 0.18);
}

.product_detail_wrap {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(440px, 0.92fr);
	gap: 64px;
	align-items: flex-start;
	padding: 0 0 86px;
}

.product_gallery_box img {
	width: 100%;
	height: 470px;
	display: block;
	border-radius: 20px;
	object-fit: cover;
	filter: grayscale(100%) saturate(92%) brightness(86%);
	box-shadow: 0 22px 38px rgba(0, 58, 44, 0.16);
}

.product_detail_info {
	min-width: 0;
}

.detail_kicker {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 28px;
	font-size: 10px;
	line-height: 22px;
	font-weight: 900;
	letter-spacing: 2px;
	color: #004233;
}

.detail_kicker span {
	display: inline-block;
	height: 24px;
	line-height: 22px;
	padding: 0 14px;
	border: 1px solid #99dbc6;
	border-radius: 12px;
	background: #edfbf3;
	color: #005845;
}

.detail_kicker em {
	font-style: normal;
	color: #55716b;
}

.product_detail_info h1 {
	margin-bottom: 28px;
	font-size: 52px;
	line-height: 1.05;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.detail_lead {
	position: relative;
	margin-bottom: 44px;
	padding-left: 34px;
	font-size: 17px;
	line-height: 1.65;
	font-style: italic;
	color: #41625b;
}

.detail_lead:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 5px;
	height: 100%;
	background: #005845;
}

.detail_section {
	margin-bottom: 52px;
}

.detail_section h2,
.feature_panel h2,
.spec_block h2 {
	display: flex;
	align-items: center;
	margin-bottom: 34px;
	font-size: 12px;
	line-height: 20px;
	font-weight: 900;
	letter-spacing: 5px;
	color: #15253d;
}

.detail_section h2 .layui-icon,
.feature_panel h2 .layui-icon,
.spec_block h2 .layui-icon {
	margin-right: 12px;
	font-size: 18px;
	color: #005845;
	letter-spacing: 0;
}

.detail_section p {
	margin-bottom: 12px;
	font-size: 14px;
	line-height: 2;
	color: #516987;
}

.feature_panel {
	margin-bottom: 54px;
	padding: 34px 36px 32px;
	border: 2px solid #c8ebd8;
	border-radius: 18px;
	background: #edfbf3;
}

.feature_panel h2 {
	margin-bottom: 24px;
}

.feature_panel ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 44px;
}

.feature_panel li {
	display: flex;
	align-items: center;
	font-size: 13px;
	line-height: 22px;
	font-weight: 900;
	color: #15253d;
}

.feature_panel li .layui-icon {
	margin-right: 12px;
	font-size: 17px;
	color: #005845;
}

.spec_block {
	margin-bottom: 64px;
}

.spec_block h2 {
	margin-bottom: 26px;
}

.spec_list {
	overflow: hidden;
	border: 2px solid #c8ebd8;
	border-radius: 18px;
	background: #fff;
}

.spec_item {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	align-items: center;
	min-height: 58px;
	padding: 0 30px;
	border-bottom: 1px solid #d9eee4;
	font-size: 13px;
	line-height: 22px;
}

.spec_item:last-child {
	border-bottom: 0;
}

.spec_item span {
	font-weight: bold;
	color: #55716b;
}

.spec_item strong {
	font-weight: 900;
	color: #15253d;
}

.detail_actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
	padding-top: 52px;
	border-top: 1px solid #d9eee4;
}

.detail_actions a {
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 1px;
}

.detail_actions .layui-icon {
	margin-right: 12px;
	font-size: 16px;
}

.primary_action {
	background: #005845;
	color: #fff;
	box-shadow: 0 14px 28px rgba(0, 88, 69, 0.22);
}

.primary_action:hover {
	color: #fff;
	background: #004233;
}

.secondary_action {
	border: 1px solid #c8ebd8;
	background: #edfbf3;
	color: #005845;
}

.secondary_action:hover {
	border-color: #005845;
	color: #005845;
}

.related_products {
	padding-top: 64px;
	border-top: 1px solid #d9eee4;
}

.related_title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 34px;
}

.related_title h2 {
	font-size: 24px;
	line-height: 32px;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.related_title a {
	font-size: 12px;
	line-height: 20px;
	font-weight: 900;
	letter-spacing: 1px;
	color: #005845;
}

.related_products ul {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
	width: 100%;
}

.related_products li {
	min-height: 384px;
	padding: 12px 12px 26px;
	border: 1px solid #c8ebd8;
	border-radius: 20px;
	background: #edfbf3;
	color: #005845;
	transition: 0.2s;
}

.related_products li:hover {
	border-color: #9bd8bc;
	box-shadow: 0 14px 26px rgba(0, 58, 44, 0.1);
}

.related_products img {
	width: 100%;
	height: 180px;
	display: block;
	border-radius: 13px;
	object-fit: cover;
	filter: grayscale(100%) saturate(90%) brightness(86%);
}

.related_products h3 {
	margin: 26px 18px 12px;
	font-size: 18px;
	line-height: 1.3;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.related_products p {
	margin: 0 18px;
	font-size: 13px;
	line-height: 24px;
	font-weight: bold;
	color: #819194;
}

/* about and contact ------------------------*/

.page_head {
	padding: 48px 0 44px;
	border: 1px solid #cfe8dc;
	border-radius: 20px;
	background: #edfbf3;
}

.page_head h1 {
	margin-top: 18px;
	font-size: 40px;
	line-height: 48px;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.page_head p {
	margin-top: 6px;
	font-size: 16px;
	line-height: 26px;
	color: #55716b;
}

.about_head,
.contact_head {
	width: 720px;
}

.about_wrap {
	width: 720px;
	margin: 62px auto 112px;
}

.about_section {
	margin-bottom: 70px;
}

.about_section h2,
.contact_wrap h2 {
	position: relative;
	display: inline-block;
	margin-bottom: 32px;
	font-size: 20px;
	line-height: 30px;
	font-weight: 900;
	color: #005845;
	letter-spacing: 0;
}

.about_section h2:after,
.contact_wrap h2:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -10px;
	width: 74px;
	height: 1px;
	background: #99dbc6;
}

.about_section p {
	font-size: 16px;
	line-height: 1.75;
	color: #26364f;
}

.advantage_list {
	padding-top: 28px;
}

.advantage_item {
	display: flex;
	align-items: flex-start;
	margin-bottom: 46px;
}

.advantage_item:last-child {
	margin-bottom: 0;
}

.advantage_item strong {
	flex: 0 0 auto;
	width: 110px;
	font-size: 17px;
	line-height: 26px;
	font-weight: 900;
	color: #15253d;
}

.advantage_item span {
	flex: 1;
	font-size: 14px;
	line-height: 26px;
	color: #516987;
}

.about_note {
	margin-top: 82px;
	padding-top: 48px;
	border-top: 1px solid #d9eee4;
	text-align: center;
	font-size: 13px;
	line-height: 24px;
	color: #819194;
}

.contact_wrap {
	width: 720px;
	min-height: 650px;
	margin: 62px auto 0;
}

.contact_wrap h2 {
	margin-bottom: 62px;
}

.contact_list {
	padding-left: 16px;
}

.contact_item {
	display: flex;
	align-items: flex-start;
	margin-bottom: 58px;
}

.contact_item strong {
	flex: 0 0 auto;
	width: 150px;
	font-size: 17px;
	line-height: 28px;
	font-weight: 900;
	color: #15253d;
}

.contact_item div {
	flex: 1;
}

.contact_item a {
	display: block;
	font-size: 18px;
	line-height: 28px;
	color: #005845;
}

.contact_item a:hover {
	color: #004233;
}

.contact_item span {
	display: block;
	margin-top: 2px;
	font-size: 13px;
	line-height: 22px;
	color: #819194;
}

.contact_item p {
	font-size: 14px;
	line-height: 1.7;
	color: inherit;
}

.contact_qrcode {
	display: block;
	width: 120px;
	height: 120px;
	margin-bottom: 10px;
	object-fit: contain;
	border: 1px solid #cfe8dc;
	border-radius: 8px;
	background: #fff;
}

/* ===== CMS 企业站适配（theme_3 / 样式三） ===== */
.header-placeholder {
	height: 94px;
}

header {
	height: 94px;
	display: block;
	min-width: 0;
	padding: 0;
}

.ent-top {
	background-color: #f0f1f2;
}

.ent-top .top-box {
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 16px;
}

.ent-top .top-box .site-name,
.ent-top .top-box .top-menu {
	display: inline-block;
	font-size: 14px;
	padding: 5px 0;
}

.ent-top .top-box .top-menu a {
	margin-left: 15px;
}

.ent-header {
	width: 1200px;
	max-width: 100%;
	height: 64px;
	margin: 0 auto;
	padding: 0 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.block {
	padding: 30px;
}

header .logo a {
	color: inherit;
}

header .logo a:hover {
	color: #005845;
}

.news_page .product_tabs {
	justify-content: flex-start;
	margin-bottom: 20px;
}

.pages {
	padding: 10px 15px;
	text-align: center;
}

.pages a,
.pages span {
	display: inline-block;
	height: 32px;
	line-height: 22px;
	padding: 5px 10px;
	margin: 3px;
	border: 1px solid #0092ff;
	background-color: #ffffff;
	color: #0092ff;
}

.pages a.cur,
.pages a:hover {
	color: #ffffff;
	background: #0092ff;
	border: 1px solid #0092ff;
}

/* ===== 问题地图 ===== */
.faq_index_wrap {
	padding-bottom: 40px;
}
.faq_category_grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}
.faq_category_card {
	margin: 0;
}
.faq_category_list {
	margin: 0 0 12px;
	padding: 0;
	list-style: none;
}
.faq_category_list li {
	padding: 10px 0;
	border-bottom: 1px solid #edf2f7;
}
.faq_category_list li:last-child {
	border-bottom: none;
}
.faq_category_list li a {
	color: #334155;
	display: block;
	line-height: 1.5;
}
.faq_category_list li a:hover {
	color: #0092ff;
}
.faq_list_item .news_info {
	width: 100%;
	margin-left: 0;
}
@media (max-width: 768px) {
	.faq_category_grid {
		grid-template-columns: 1fr;
	}
}
