/*
 * 全站响应式兼容层。
 *
 * 该文件必须在页面原有样式之后加载。桌面端仅提供安全的防溢出规则，
 * 1024px 以下再覆盖历史固定宽度和导航，避免影响已上线的业务交互。
 */

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	min-width: 0 !important;
	overflow-x: hidden;
}

img,
svg,
video,
canvas {
	max-width: 100%;
}

img,
video {
	height: auto;
}

iframe {
	max-width: 100%;
}

pre,
code,
table {
	max-width: 100%;
}

.wrap,
.wrap2,
.wrap3,
.w-300,
.mega-menu-container {
	box-sizing: border-box;
}

/* 共享移动导航：由 responsive.js 渐进增强，不影响桌面导航。 */
.site-mobile-menu-toggle,
.legacy-mobile-nav-bar,
.legacy-mobile-nav,
.legacy-mobile-nav-backdrop {
	display: none;
}

@media screen and (max-width: 1279px) {
	.w-300 {
		width: calc(100% - 40px) !important;
		max-width: 1200px;
	}

	.navFixed {
		min-width: 0 !important;
	}
}

@media screen and (max-width: 1023px) {
	body.mobile-nav-open {
		overflow: hidden;
	}

	/* 新版官网公共导航 */
	.navFixed {
		height: 64px !important;
		min-width: 0 !important;
		padding: 0 16px;
		background: rgba(255, 255, 255, .96) !important;
		box-shadow: 0 1px 12px rgba(15, 23, 42, .1);
		-webkit-backdrop-filter: blur(12px);
		backdrop-filter: blur(12px);
		box-sizing: border-box;
	}

	.navFixed > .w-300,
	.navFixed > .dropdown-mega-menu {
		display: none !important;
	}

	.legacy-mobile-nav-bar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}

	.legacy-mobile-nav-bar .nav-logo-link {
		display: inline-flex !important;
		align-items: center;
		min-width: 0;
		text-decoration: none;
	}

	.legacy-mobile-nav-bar .nav-logo-img {
		width: auto;
		height: 36px !important;
		margin-right: 10px !important;
	}

	.legacy-mobile-nav-bar .nav-company-name {
		max-width: 48vw;
		margin-right: 0 !important;
		overflow: hidden;
		color: #172033 !important;
		font-size: 16px !important;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.site-mobile-menu-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		flex: 0 0 44px;
		padding: 0;
		border: 0;
		border-radius: 10px;
		background: transparent;
		color: #172033;
		cursor: pointer;
	}

	.site-mobile-menu-toggle:focus-visible {
		outline: 2px solid #2c7ef8;
		outline-offset: 2px;
	}

	.site-mobile-menu-toggle-lines,
	.site-mobile-menu-toggle-lines::before,
	.site-mobile-menu-toggle-lines::after {
		display: block;
		width: 22px;
		height: 2px;
		border-radius: 2px;
		background: currentColor;
		content: "";
		transition: transform .2s ease, opacity .2s ease;
	}

	.site-mobile-menu-toggle-lines {
		position: relative;
	}

	.site-mobile-menu-toggle-lines::before {
		position: absolute;
		top: -7px;
		left: 0;
	}

	.site-mobile-menu-toggle-lines::after {
		position: absolute;
		top: 7px;
		left: 0;
	}

	.site-mobile-menu-toggle[aria-expanded="true"] .site-mobile-menu-toggle-lines {
		background: transparent;
	}

	.site-mobile-menu-toggle[aria-expanded="true"] .site-mobile-menu-toggle-lines::before {
		transform: translateY(7px) rotate(45deg);
	}

	.site-mobile-menu-toggle[aria-expanded="true"] .site-mobile-menu-toggle-lines::after {
		transform: translateY(-7px) rotate(-45deg);
	}

	.legacy-mobile-nav-backdrop {
		position: fixed;
		inset: 0;
		z-index: 9997;
		display: block;
		background: rgba(15, 23, 42, .45);
		opacity: 0;
		pointer-events: none;
		transition: opacity .2s ease;
	}

	.legacy-mobile-nav-backdrop.is-open {
		opacity: 1;
		pointer-events: auto;
	}

	.legacy-mobile-nav {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 9998;
		display: flex;
		flex-direction: column;
		width: min(88vw, 348px);
		padding: 0 16px 16px;
		overflow-y: auto;
		background: #fff;
		box-shadow: -16px 0 40px rgba(15, 23, 42, .16);
		transform: translateX(105%);
		transition: transform .22s ease;
		box-sizing: border-box;
	}

	.legacy-mobile-nav.is-open {
		transform: translateX(0);
	}

	.legacy-mobile-nav-header {
		position: sticky;
		top: 0;
		z-index: 2;
		display: flex;
		align-items: center;
		justify-content: space-between;
		min-height: 68px;
		border-bottom: 1px solid #e9edf3;
		background: rgba(255, 255, 255, .96);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
	}

	.legacy-mobile-nav-header strong {
		color: #172033;
		font-size: 17px;
		font-weight: 650;
	}

	.legacy-mobile-nav-title {
		margin: 14px 0 8px;
		color: #8a94a3;
		font-size: 12px;
		font-weight: 600;
		letter-spacing: .08em;
	}

	.legacy-mobile-nav a,
	.legacy-mobile-nav button {
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 46px;
		padding: 10px 12px;
		border: 0;
		border-bottom: 1px solid #edf0f4;
		background: transparent;
		color: #263146 !important;
		font: 500 15px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
		text-align: left;
		text-decoration: none;
		box-sizing: border-box;
	}

	.legacy-mobile-nav a:focus-visible,
	.legacy-mobile-nav button:focus-visible {
		outline: 2px solid #2c7ef8;
		outline-offset: -2px;
	}

	.legacy-mobile-nav .legacy-mobile-nav-close {
		justify-content: center;
		width: 40px;
		min-height: 40px;
		padding: 0;
		border: 0;
		border-radius: 10px;
		background: #f4f6f9;
		color: #4a5568 !important;
		font-size: 28px;
		font-weight: 300;
		line-height: 1;
	}

	.legacy-mobile-nav-primary {
		padding: 6px 0;
	}

	.legacy-mobile-nav .legacy-mobile-nav-primary-link {
		min-height: 44px;
		padding: 9px 10px;
		font-size: 15px;
	}

	.legacy-mobile-nav-section {
		margin-top: 8px;
		border: 1px solid #e5eaf1;
		border-radius: 12px;
		background: #f8fafc;
		overflow: hidden;
	}

	.legacy-mobile-nav .legacy-mobile-nav-section-toggle {
		display: grid;
		grid-template-columns: 1fr auto 18px;
		gap: 8px;
		min-height: 48px;
		padding: 11px 12px;
		border: 0;
		background: transparent;
		color: #172033 !important;
		font-weight: 650;
	}

	.legacy-mobile-nav-count {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 24px;
		height: 22px;
		padding: 0 7px;
		border-radius: 999px;
		background: #e9f1ff;
		color: #2c7ef8;
		font-size: 12px;
		font-weight: 650;
	}

	.legacy-mobile-nav-chevron {
		width: 8px;
		height: 8px;
		border-right: 2px solid #7b8798;
		border-bottom: 2px solid #7b8798;
		transform: rotate(45deg) translate(-2px, -2px);
		transition: transform .18s ease;
	}

	.legacy-mobile-nav-section-toggle[aria-expanded="true"] .legacy-mobile-nav-chevron {
		transform: rotate(225deg) translate(-2px, -2px);
	}

	.legacy-mobile-nav-products[hidden] {
		display: none !important;
	}

	.legacy-mobile-nav-products {
		padding: 0 8px 8px;
		border-top: 1px solid #e5eaf1;
		background: #fff;
	}

	.legacy-mobile-nav .legacy-mobile-nav-product-link {
		position: relative;
		min-height: 43px;
		padding: 10px 10px 10px 28px;
		border-bottom: 1px solid #edf0f4;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.45;
	}

	.legacy-mobile-nav .legacy-mobile-nav-product-link::before {
		position: absolute;
		left: 10px;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: #77a7f7;
		content: "";
	}

	.legacy-mobile-nav .legacy-mobile-nav-product-link:last-child {
		border-bottom: 0;
	}

	.legacy-mobile-nav-actions {
		position: sticky;
		bottom: -16px;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
		margin-top: auto;
		padding: 16px 0;
		background: #fff;
	}

	.legacy-mobile-nav-actions a,
	.legacy-mobile-nav-actions button {
		justify-content: center;
		min-height: 44px;
		border: 1px solid #dce3eb;
		border-radius: 9px;
		font-weight: 600;
		text-align: center;
	}

	.legacy-mobile-nav-actions a:first-child {
		border-color: #ff722b;
		background: #ff722b;
		color: #fff !important;
	}

	/* 文章/产品列表公共导航 */
	.site-header {
		min-height: 64px;
		padding: 0 16px !important;
		margin-bottom: 24px;
		align-items: center;
	}

	.site-header .navbar {
		min-width: 0;
		justify-content: space-between;
	}

	.site-header .site-branding {
		width: auto !important;
		min-width: 0;
		margin-right: 12px;
	}

	.site-header .site-branding img {
		width: auto;
		max-height: 42px;
	}

	.site-header .site-title,
	.site-header .site-description {
		white-space: nowrap;
	}

	.site-header .social-icons {
		display: none !important;
	}

	.site-header .main-navigation {
		position: static;
	}

	.site-header .menu-toggle.site-mobile-menu-toggle {
		position: relative;
		z-index: 3;
		margin: 0;
		text-indent: 0;
	}

	.site-header .menu-toggle.site-mobile-menu-toggle::before {
		display: none;
	}

	.site-header .main-navigation.toggled .menu {
		top: 100%;
		left: 0;
		right: 0;
		width: 100%;
		max-height: calc(100vh - 64px);
		overflow-y: auto;
	}

	.site-header .main-navigation.toggled a {
		min-height: 44px;
		padding: 12px 20px;
		box-sizing: border-box;
	}

	/* 历史固定宽度容器 */
	.w-300,
	.wrap,
	.wrap2,
	.wrap3 {
		max-width: 100%;
	}

	.dialog-container {
		width: min(450px, calc(100vw - 32px)) !important;
	}

	.mega-menu-container {
		width: 100%;
		max-width: 100%;
	}

	/* 肇新合同功能页（advantage.htm） */
	.jcd-container,
	.jcd-banner-inner,
	.jcd-overview-content,
	.jcd-module {
		width: 100% !important;
		max-width: 100%;
		padding-right: 24px;
		padding-left: 24px;
		box-sizing: border-box;
	}

	.jcd-banner {
		height: auto !important;
		min-height: 560px;
		padding: 104px 0 54px;
		background-position: center, 68% center;
		background-size: auto, auto 100%;
		box-sizing: border-box;
	}

	.jcd-banner-features {
		flex-wrap: wrap;
		gap: 26px 0;
	}

	.jcd-banner-features .feat {
		width: 50%;
		padding: 0 24px !important;
		border-left: 0 !important;
		box-sizing: border-box;
	}

	.jcd-banner-features .feat:nth-child(odd) {
		padding-left: 0 !important;
	}

	.jcd-life-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 14px;
	}

	.jcd-flow-arrow,
	.jcd-life-grid::before {
		display: none !important;
	}

	.jcd-governance {
		flex-wrap: wrap;
		gap: 10px 18px;
	}

	.jcd-cap-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.jcd-module,
	.jcd-module:nth-child(even) {
		flex-direction: column !important;
		gap: 34px;
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.jcd-module-left,
	.jcd-module-right,
	.jcd-module:nth-child(odd) .jcd-module-left,
	.jcd-module:nth-child(even) .jcd-module-left {
		width: 100% !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.jcd-module-right {
		max-width: 820px;
		margin: 0 auto;
	}

	/* 资料中心 */
	.resource-page,
	body.resource-page {
		min-width: 0 !important;
	}

	.rc-container {
		width: 100% !important;
		max-width: 1200px;
		padding-right: 24px;
		padding-left: 24px;
		box-sizing: border-box;
	}

	.rc-hero {
		height: auto !important;
		min-height: 620px;
	}

	.rc-hero-inner {
		gap: 32px;
		padding-right: 24px;
		padding-left: 24px;
	}

	.rc-hero-copy {
		width: min(52%, 610px);
	}

	.rc-hero-copy > p {
		width: auto;
	}

	.rc-hero-visual {
		width: min(44%, 470px);
		margin-right: 0;
	}

	.rc-visual-panel {
		left: 0;
		width: 100%;
	}

	.rc-resource-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	/* 大尺寸交互演示在平板/手机按相同比例缩放。 */
	.screen-frame-image {
		width: 100% !important;
		height: 100% !important;
		min-width: 0 !important;
		min-height: 0 !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: contain !important;
	}

	.screen-content {
		width: 79.2% !important;
		height: 91.8% !important;
		min-width: 0 !important;
		min-height: 0 !important;
		max-width: 100% !important;
		max-height: 100% !important;
	}

	.industry-cases-image {
		overflow: hidden !important;
	}

	.industry-cases-image img,
	img[src*="industry-cases.png"] {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.industry-bg-container {
		left: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		transform: none !important;
		overflow: hidden;
	}

	.industry-bg-image {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}
}

@media screen and (max-width: 780px) {
	/* Windi 历史工具类中的固定内容宽度统一回落到手机视口。 */
	.w-256,
	.w-216,
	.w-197,
	.w-192,
	.w-182,
	.w-167,
	.w-162,
	.w-150,
	.w-138,
	.w-125,
	.w-108,
	.w-106,
	.w-80,
	.w-70 {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	.ml-25,
	.ml-20,
	.mr-20,
	[class~="-ml-36"],
	[class~="-mr-20"],
	[class~="-mr-10"] {
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	.wrap,
	.wrap2,
	.wrap3,
	.w-300 {
		width: 100% !important;
		padding-right: 16px;
		padding-left: 16px;
	}

	/* 文章内容中的编辑器历史行内样式兼容 */
	.article-body [style*="width"],
	.article-body [width],
	.con_id [style*="width"],
	.con_id [width] {
		max-width: 100% !important;
	}

	.article-body iframe,
	.con_id iframe {
		width: 100% !important;
	}

	.article-body pre,
	.con_id pre {
		overflow-x: auto;
		white-space: pre;
	}

	.article-body table,
	.con_id table {
		display: block;
		width: 100% !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.article-body,
	.con_id,
	.news_con,
	.product_con {
		overflow-wrap: anywhere;
	}

	/* 搜索、留言等表单保持在视口内，并提供足够触控面积。 */
	form input,
	form select,
	form textarea {
		max-width: 100%;
		box-sizing: border-box;
	}

	button,
	input[type="button"],
	input[type="submit"],
	input[type="reset"] {
		min-height: 44px;
	}

	/* 旧文章列表在窄屏下统一为纵向卡片。 */
	.news_con ul li > a {
		display: block;
	}

	.news_con ul li .imgs,
	.news_con ul li .i_about_r {
		float: none;
		width: 100%;
		box-sizing: border-box;
	}

	.news_con ul li .imgs {
		margin-bottom: 16px;
	}

	.o_big h1,
	.article-reading .show_t {
		overflow-wrap: anywhere;
	}

	.yema {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* 首页卖点、合作卡片等旧版横向行在手机端纵向排列。 */
	.w-300 > .flex.justify-between.items-center.mt-20px,
	.w-300.flex.justify-around.items-center,
	.w-300.flex.justify-between.items-center {
		align-items: stretch !important;
		flex-direction: column !important;
		gap: 20px;
	}

	.w-300 > .flex.justify-between.items-center.mt-20px > *,
	.w-300.flex.justify-around.items-center > *,
	.w-300.flex.justify-between.items-center > * {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		box-sizing: border-box;
	}

	.youshi {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	/* 公共页脚历史上仍保留 400px 子元素宽度。 */
	.footer-container,
	.footer-nav-box,
	.nav-box,
	.service-box,
	.logo-wrapper,
	.service-box .list,
	.service-box .list .li,
	.qrcode-box {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	.footer-container {
		padding-right: 16px;
		padding-left: 16px;
	}

	.nav-box {
		flex: 1 1 100%;
	}

	.company-name-text,
	.service-box .list .li .text {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	/* OCR、信息提取、合同合成三个工具页共用该展示结构。 */
	.hero-subtitle {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100%;
		white-space: normal !important;
	}

	.demo-subtitle {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100%;
		white-space: normal !important;
		overflow-wrap: anywhere;
	}

	.hero-cta {
		left: auto !important;
		width: 100% !important;
		max-width: 100%;
		transform: none !important;
		animation: none !important;
	}

	.hero-cta .btn {
		width: 100% !important;
		max-width: 100%;
		box-sizing: border-box;
	}

	.tech-advantage-content,
	.tech-advantage-left,
	.tech-advantage-features {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		box-sizing: border-box;
	}

	.tech-advantage-content {
		padding-right: 16px !important;
		padding-left: 16px !important;
		background: none !important;
	}

	.tech-advantage-features {
		display: flex !important;
		flex-direction: column;
		gap: 12px;
	}

	.tech-feature-item,
	.tech-feature-item:nth-child(1),
	.tech-feature-item:nth-child(2),
	.tech-feature-item:nth-child(3),
	.tech-feature-item:nth-child(4) {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 104px !important;
		padding: 18px 18px 18px 74px !important;
		border: 1px solid #e3e9f3;
		border-radius: 14px;
		background: #fff !important;
		box-sizing: border-box;
		transform: none !important;
	}

	.tech-feature-item.active {
		border-color: transparent;
		background: linear-gradient(135deg, #5d86ff, #8878ee) !important;
	}

	.tech-feature-icon {
		top: 22px !important;
		right: auto !important;
		left: 16px !important;
		width: 44px !important;
		height: 44px !important;
		transform: none !important;
	}

	.tech-demo-image-container {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		margin-top: 20px;
		aspect-ratio: 16 / 10;
		transform: none !important;
	}

	.tech-demo-image {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
	}

	.partners-swiper,
	.private-deployment-section,
	.private-deployment-container,
	.deployment-features-grid {
		max-width: 100% !important;
		overflow-x: hidden !important;
	}

	.deployment-features-grid::before {
		display: none !important;
	}

	.jcd-container,
	.jcd-banner-inner,
	.jcd-overview-content,
	.jcd-module,
	.rc-container {
		padding-right: 16px;
		padding-left: 16px;
	}

	.jcd-banner {
		min-height: 0;
		padding: 92px 0 44px;
		background-image: linear-gradient(90deg, rgba(5, 47, 97, .97), rgba(5, 47, 97, .88)), var(--jcd-mobile-banner, none) !important;
	}

	.jcd-banner h1 {
		font-size: 32px;
		line-height: 1.3;
	}

	.jcd-banner .jcd-banner-sub {
		font-size: 16px;
		line-height: 1.75;
	}

	.jcd-banner-features {
		margin-top: 42px;
	}

	.jcd-life-panel {
		padding: 22px 16px;
	}

	.jcd-life-panel-head,
	.jcd-cap-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}

	.jcd-life-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.jcd-cap-grid {
		grid-template-columns: 1fr !important;
	}

	.jcd-module,
	.jcd-module:nth-child(even) {
		padding-top: 44px;
		padding-bottom: 44px;
	}

	.rc-hero {
		min-height: 0;
		padding: 88px 0 50px;
	}

	.rc-hero-inner {
		align-items: flex-start;
		flex-direction: column;
		height: auto;
		padding: 0;
	}

	.rc-hero-copy,
	.rc-hero-visual {
		width: 100%;
	}

	.rc-hero h1 {
		font-size: 34px;
	}

	.rc-hero-visual {
		max-width: 470px;
		margin: 0 auto;
	}

	.rc-resource-grid {
		grid-template-columns: 1fr;
	}

	.rc-help-inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 24px;
		padding: 28px 24px;
	}

	.rc-help-inner > div:last-child {
		width: 100%;
		flex-wrap: wrap;
	}

	.nav-tabs-container {
		width: calc(100vw - 24px) !important;
		min-width: 0 !important;
		max-width: calc(100vw - 24px) !important;
		overflow-x: auto;
		justify-content: flex-start !important;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.nav-tabs-container::-webkit-scrollbar {
		display: none;
	}
}

@media screen and (max-width: 780px) {
	/* 手机端不保留遮挡正文的桌面悬浮工具条。 */
	.floating-button,
	.contact-popup,
	.RightBar,
	.back-to-top-btn {
		display: none !important;
	}

	/* 首页优势卡片：消除固定高度和过大的卡片间距。 */
	.w-300 > .flex.justify-between.items-center.mt-20px {
		gap: 14px;
	}

	.w-300 > .flex.justify-between.items-center.mt-20px > .w-125 {
		height: auto !important;
	}

	.youshi {
		align-items: center;
		gap: 14px;
		height: auto !important;
		min-height: 108px;
		margin: 0 !important;
		padding: 14px 16px;
		border-radius: 16px;
	}

	.youshi > img {
		width: 66px !important;
		height: 66px !important;
		margin: 0 !important;
		object-fit: contain;
		flex: 0 0 66px;
	}

	.youshi > div {
		width: auto !important;
		height: auto !important;
		min-width: 0;
		flex: 1;
	}

	.youshi-title {
		margin: 0 !important;
		font-size: 20px;
		font-weight: 600;
		line-height: 1.35;
	}

	.youshi-desc {
		margin: 5px 0 0 !important;
		font-size: 13px;
		line-height: 1.5;
		overflow-wrap: anywhere;
	}

	/* 首页行业轮播：每一屏改成真正的单列卡片。 */
	.industry-carousel-section {
		padding: 48px 0 36px !important;
	}

	.industry-carousel-title-area {
		margin-bottom: 28px;
		padding: 0 18px;
	}

	.industry-carousel-main-title {
		font-size: 27px !important;
		line-height: 1.3;
	}

	.industry-carousel-subtitle {
		font-size: 15px;
		line-height: 1.7;
	}

	.industry-carousel-wrapper,
	.industry-carousel-track {
		height: auto !important;
	}

	.industry-carousel-slide {
		min-width: 100% !important;
		padding: 0 16px !important;
		overflow: hidden !important;
		box-sizing: border-box;
	}

	.industry-slide-content {
		align-items: stretch !important;
		flex-direction: column !important;
		gap: 14px !important;
		width: 100% !important;
		min-height: 0 !important;
		padding: 0 !important;
	}

	.industry-slide-left {
		width: 100% !important;
		padding: 0 !important;
	}

	.industry-slide-header {
		align-items: center !important;
		flex-direction: row !important;
		width: 100% !important;
		height: auto !important;
		min-height: 72px !important;
		padding: 14px 18px !important;
		text-align: left !important;
	}

	.industry-slide-icon {
		width: 42px !important;
		height: 42px !important;
		margin: 0 12px 0 0 !important;
	}

	.industry-slide-title {
		font-size: 21px !important;
		line-height: 1.35;
	}

	.industry-features-list {
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		padding: 20px 18px !important;
		overflow: hidden !important;
	}

	.industry-feature-box {
		margin-bottom: 18px;
	}

	.industry-feature-box-desc {
		line-height: 1.65;
	}

	.industry-slide-image,
	.industry-slide-right {
		width: 100% !important;
		height: 210px !important;
		min-height: 0 !important;
	}

	.industry-carousel-dots {
		margin-top: 24px;
	}

	/* 首页及工具页 CTA：修复 46px 文案使用 32px 行高导致的叠字。 */
	.deployment-cta {
		width: 100% !important;
		padding: 48px 20px !important;
		box-sizing: border-box;
	}

	.deployment-cta-subtitle,
	.deployment-cta-subtitle .title-normal,
	.deployment-cta-subtitle .title-team,
	.cta-text-normal,
	.cta-text-gradient {
		font-size: 29px !important;
		line-height: 1.24 !important;
		white-space: normal !important;
	}

	.deployment-cta-subtitle {
		margin-bottom: 28px !important;
	}

	.deployment-cta-features {
		align-items: flex-start !important;
		flex-direction: column !important;
		gap: 13px !important;
		width: max-content;
		max-width: 100%;
		margin: 0 auto 30px !important;
	}

	.deployment-cta-buttons {
		width: 100%;
	}

	/* 行业解决方案页：桌面双栏在手机端改成完整单列。 */
	.solution-page .banner {
		height: auto !important;
		min-height: 360px;
		padding: 84px 18px 40px;
		box-sizing: border-box;
	}

	.solution-page .banner > .w-300,
	.solution-page .banner .w-138 {
		width: 100% !important;
		height: auto !important;
		margin: 0 !important;
	}

	.solution-page .banner h1 {
		width: 100% !important;
		height: auto !important;
		margin: 0 0 18px !important;
		font-size: 34px !important;
		line-height: 1.3;
	}

	.solution-page .bannerDesc {
		font-size: 16px;
		line-height: 1.8;
	}

	.solution-page .bg-hex-f7f9fd > .w-300.flex.items-center.justify-center,
	.solution-page .bg-hex-f7f9fd > .bg-white > .w-300.flex.items-center.justify-center {
		align-items: stretch !important;
		flex-direction: column !important;
		gap: 18px;
		width: calc(100% - 32px) !important;
		margin: 16px !important;
		padding: 20px 18px;
		border-radius: 16px;
		background: #fff;
		box-shadow: 0 6px 24px rgba(15, 23, 42, .06);
		box-sizing: border-box;
	}

	.solution-page .bg-hex-f7f9fd > .w-300.flex.items-center.justify-center > div,
	.solution-page .bg-hex-f7f9fd > .bg-white > .w-300.flex.items-center.justify-center > div {
		width: 100% !important;
		height: auto !important;
		margin: 0 !important;
	}

	.solution-page .textTitle {
		padding-left: 0 !important;
		font-size: 23px;
		line-height: 1.4;
	}

	.solution-page .orangeIcon,
	.solution-page .greenIcon {
		padding-left: 18px !important;
		font-size: 14px;
		line-height: 1.8;
	}

	.solution-page .bg-hex-f7f9fd > .w-300 img,
	.solution-page .bg-hex-f7f9fd > .bg-white > .w-300 img {
		display: block;
		width: 100% !important;
		height: auto !important;
		max-height: 240px;
		object-fit: contain;
	}

	/* 文档合成页 Hero：标题避开固定导航，内容按文档流排列。 */
	.hero-section {
		height: auto !important;
		min-height: 0 !important;
		padding: 96px 16px 40px !important;
		background-size: cover !important;
		box-sizing: border-box;
	}

	.hero-section > .container {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		height: auto !important;
		padding: 0 !important;
		transform: none !important;
	}

	.hero-section .hero-content {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		margin: 0 0 24px !important;
		transform: none !important;
	}

	.hero-section .hero-title {
		width: 100% !important;
		font-size: 31px !important;
		line-height: 1.3 !important;
		white-space: normal !important;
	}

	.hero-section .hero-subtitle {
		font-size: 14px !important;
		line-height: 1.65 !important;
	}

	.hero-section .hero-cta {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		margin: 0 0 24px !important;
		transform: none !important;
	}

	.hero-section .product-showcase {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		height: auto !important;
		padding: 0 !important;
		transform: none !important;
	}

	/* 应用场景卡片的图标不再覆盖标题。 */
	.use-area {
		padding: 32px 16px 0 !important;
	}

	.use-area-icon {
		display: none !important;
	}

	.use-area-content {
		padding: 24px 20px 26px !important;
	}

	.nav-tabs-container {
		gap: 4px !important;
		padding: 4px !important;
	}

	.nav-tabs-container .nav-item {
		padding: 7px 9px !important;
	}

	.nav-tabs-container .nav-item-text {
		font-size: 12px !important;
	}

	/* 合同生命周期治理标签：取消桌面固定高度，避免内容溢出到下一模块。 */
	.jcd-governance {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px 12px !important;
		width: 100%;
		height: auto !important;
		min-height: 0;
		padding: 13px 14px 15px !important;
		box-sizing: border-box;
	}

	.jcd-governance-title {
		grid-column: 1 / -1;
		width: 100%;
		margin-bottom: 2px;
		line-height: 1.5;
	}

	.jcd-governance-item {
		min-width: 0;
		font-size: 12px !important;
		line-height: 1.45;
		white-space: normal !important;
	}

	/* 联系我们弹层由遮罩层负责滚动，短屏幕也能完整看到二维码和关闭按钮。 */
	.dialog-mask,
	.contact-dialog-mask {
		align-items: flex-start !important;
		justify-content: center !important;
		padding: max(20px, env(safe-area-inset-top)) 14px max(20px, env(safe-area-inset-bottom)) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		box-sizing: border-box;
	}

	.dialog-container,
	.contact-dialog-container {
		width: min(100%, 380px) !important;
		max-width: 100% !important;
		max-height: none !important;
		margin: auto 0 !important;
		overflow: visible !important;
		border-radius: 14px !important;
		box-sizing: border-box;
	}

	.dialog-header,
	.contact-dialog-header {
		padding: 16px 20px !important;
	}

	.dialog-body,
	.contact-dialog-body {
		padding: 20px 16px 22px !important;
		box-sizing: border-box;
	}

	.dialog-body img,
	.contact-dialog-body img,
	.qr-code {
		display: block;
		width: min(220px, 68vw) !important;
		height: auto !important;
		max-width: 100% !important;
		margin: 0 auto 12px !important;
		object-fit: contain;
	}
}

@media screen and (max-width: 480px) {
	.legacy-mobile-nav-bar .nav-company-name {
		font-size: 15px !important;
	}

	.site-header .site-description {
		display: none;
	}

	.site-header .site-title {
		font-size: 15px;
	}

	.article-reading .show_t {
		font-size: 25px;
	}

	.article-card {
		padding-right: 16px;
		padding-left: 16px;
	}

	.jcd-banner-features .feat {
		width: 100%;
		padding: 0 !important;
	}

	.jcd-life-grid {
		grid-template-columns: 1fr !important;
	}

	.jcd-sec-head {
		margin-bottom: 38px;
		padding-right: 16px;
		padding-left: 16px;
	}

	.jcd-sec-head .title {
		font-size: 25px;
		line-height: 1.4;
	}

	.rc-hero h1 {
		font-size: 30px;
	}

	.rc-hero-visual {
		height: 270px;
		transform: scale(.92);
		transform-origin: top center;
	}

	.rc-resource-card {
		height: auto;
		min-height: 244px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.legacy-mobile-nav,
	.legacy-mobile-nav-backdrop,
	.site-mobile-menu-toggle-lines,
	.site-mobile-menu-toggle-lines::before,
	.site-mobile-menu-toggle-lines::after {
		transition: none !important;
	}
}
