/* 设备预测性维护平台 — PC（随 emergency-platform 页面 enqueue） */
.is-view-emergency-platform .section,
.section {
	width: 100rem !important;
	max-width: 100rem !important;
}

.epm-page {
	background: #f5f5f7;
}

/* ----- Hero ----- */
.epm-hero {
	background: #fff;
}

.epm-hero__stage {
	min-height: 37.5rem;
	height: 37.5rem;
}

.epm-hero__photo {
	display: block;
	width: 100%;
	height: 40rem;
}

.epm-hero__panel {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 31.8125rem;
	max-width: 42%;
	background: #e9ecf3;
	z-index: 1;
	pointer-events: none;
}

/* 文案区垂直定位与 mine-safety .petro-hero__panel 一致 */
.epm-hero__content-wrap {
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	transform: translateX(-50%);
	z-index: 2;
	width: 100%;
	max-width: 100rem;
	display: flex;
	align-items: flex-start;
	padding-top: 7.625rem;
	box-sizing: border-box;
}

.epm-hero__content {
	max-width: 45.0875rem;
	padding-left: 0.625rem;
	box-sizing: border-box;
}

/* 字号/行高/间距对齐 mine-safety .petro-hero__title / __subtitle；颜色保持本页深色文案 */
.epm-hero__title {
	margin: 0 0 0.875rem !important;
	font-size: 3.5rem !important;
	line-height: 4.625rem !important;
	color: #1d1d1f;
	font-family: s-semibold, sans-serif;
}

.epm-hero__subtitle {
	margin: 0;
	font-size: 1.625rem;
	line-height: 2.375rem;
	color: #435566;
	font-family: s-regular, sans-serif;
	opacity: 0.8;
}
/* ----- 模块公用 ----- */
/* 与全站 .font-module-title 尺寸一致，粗细仅由 s-demibold 等字族体现 */
.epm-module-title {
	margin: 0;
	margin-bottom: 1rem !important;
	color: #333333 !important;
}

.epm-module-title-center {
	text-align: center;
	width: 100%;
	margin-bottom: 3.125rem !important;
}

.epm-section {
	padding-top: 5rem;
	box-sizing: border-box;
}

.epm-section--intro .epm-module-title {
	margin-bottom: 3.125rem !important;
}

/* ----- 价值卡片 ----- */
.epm-value-grid {
	gap: 1.25rem;
}

.epm-value-card {
	flex: 1 1 0;
	min-width: 17.5rem;
	background: #fff;
	border-radius: 1.125rem;
	padding: 3.125rem 2.1875rem;
	box-sizing: border-box;
	gap: 1.5rem;
	transition: all ease 0.6s;
}

.epm-value-card:hover {
	box-shadow: 0px 0px .625rem 0px rgba(23,38,68,0.16);
}

.epm-value-card__icon {
	flex-shrink: 0;
}

.epm-value-card__title {
	margin: 0 0 0.5625rem;
	font-size: 1.75rem;
	line-height: 1.25;
	color: #1d1d1f;
	font-family: s-demibold, sans-serif;
}

.epm-value-card__desc {
	margin: 0;
	font-size: 1.125rem;
	line-height: 1.5;
	color: rgba(29, 29, 31, 0.6);
	font-family: s-regular, sans-serif;
}

/* ----- 系统架构 ----- */
.epm-section--arch {
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.epm-arch {
	display: flex;
	flex-direction: row;
	align-items: stretch;
}

.epm-arch__sidebar {
	width: 10rem;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.epm-arch-pill {
	width: 100%;
	border-radius: 0.375rem;
	color: #fff;
	font-size: 1.25rem;
	line-height: 1.3;
	font-family: s-demibold, sans-serif;
	box-sizing: border-box;
	text-align: center;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	background-image: linear-gradient(135deg, #018eff 0%, #007ef9 35%, #005aec 100%);
}

.epm-arch-pill--tall {
	flex: 1 1 5.9375rem;
	min-height: 5.9375rem;
}

.epm-arch-pill--mid {
	flex: 0 0 10.875rem;
	height: 10.875rem;
	background-image: linear-gradient(145deg, #018eff 0%, #005aec 55%, #15d2e8 100%);
}

.epm-arch-pill--short {
	flex: 0 0 5.9375rem;
	height: 5.9375rem;
	background-image: linear-gradient(130deg, #15d2e8 0%, #018eff 45%, #816ae8 100%);
}

.epm-arch-pill--sense {
	flex: 1 1 18.25rem;
	min-height: 18.25rem;
	background-image: linear-gradient(160deg, #15d2e8 0%, #018eff 50%, #005aeb 100%);
}

.epm-arch__main {
	gap: 0.5rem;
	min-width: 0;
}

.epm-arch-row {
	background: #fff;
	border-radius: 0.375rem;
	padding: 0.75rem 0.625rem;
	box-sizing: border-box;
	gap: 0.5rem;
}

.epm-arch-row--5 {
	min-height: 5.9375rem;
	align-items: stretch;
}

.epm-arch-row--complex {
	min-height: 10.875rem;
	align-items: stretch;
}

.epm-arch-cluster {
	gap: 0.5rem;
	min-width: 0;
}

.epm-arch-cell {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 0.1875rem;
	padding: 1.25rem;
	box-sizing: border-box;
	font-size: 1.25rem;
	line-height: 1.3;
	color: #1d1d1f;
	font-family: s-medium, sans-serif;
	background: linear-gradient(90deg, #e3edfb 0%, #e3edfb 100%);
}

.epm-arch-cell--mint {
	background: linear-gradient(90deg, #e4f5fb 0%, #e4f5fb 100%);
}

.epm-arch-row--sense {
	min-height: 18.25rem;
	align-items: stretch;
	padding: 0.75rem;
	gap: 0.75rem;
}

.epm-arch-gadget {
	flex: 1 1 0;
	background: #fff;
	border-radius: 0.5rem;
	padding: 2rem 2.5rem 1.75rem;
	box-sizing: border-box;
	gap: 2rem;
	min-width: 0;
}

.epm-arch-gadget__imgs {
	gap: 1.75rem;
}

.epm-arch-gadget__img1 {
	width: 6.6875rem;
	height: 7.875rem;
	object-fit: contain;
}

.epm-arch-gadget__img2 {
	width: 7.875rem;
	height: 7.875rem;
	object-fit: contain;
}

.epm-arch-gadget__solo {
	max-width: 100%;
	height: 7.875rem;
	width: auto;
	object-fit: contain;
}

.epm-arch-gadget__wide {
	max-width: 100%;
	height: 8.875rem;
	width: auto;
	object-fit: contain;
}

.epm-arch-gadget__cap {
	font-size: 1.25rem;
	line-height: 1.3;
	color: #1d1d1f;
	text-align: center;
	font-family: s-medium, sans-serif;
}

/* ----- 应用功能 Tab ----- */
.epm-section--app {
	background: #fff;
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.epm-app-inner {
	max-width: 100%;
}

.epm-tabs-wrap {
	margin-bottom: 2.5rem;
}

.epm-tabs {
	gap: 3.125rem;
	row-gap: 1rem;
}

.epm-tab {
	position: relative;
	background: none;
	border: none;
	padding: 0;
	font-size: 1.375rem;
	line-height: 1.875rem;
	color: #1d1d1f;
	font-family: s-regular, sans-serif;
	cursor: pointer;
	box-sizing: border-box;
	transition: color 0.6s ease;
}

.epm-tab.is-active {
	font-family: s-demibold, sans-serif;
}

.epm-panel {
	align-items: flex-start;
	gap: 3.75rem;
	display: none;
}

.epm-panel.is-active {
	display: flex;
}

.epm-panel__copy {
	width: 26.375rem;
	max-width: 100%;
	flex-shrink: 0;
	padding-top: 5rem;
	box-sizing: border-box;
}

.epm-panel__h {
	margin: 0 0 1.5rem;
	font-size: 1.875rem;
	line-height: 2.5rem;
	color: #252b3a;
	font-family: s-demibold, sans-serif;
}

.epm-panel__text {
	margin: 0;
	font-size: 1rem;
	line-height: 1.5rem;
	color: rgba(67, 85, 102, 0.8);
	font-family: s-regular, sans-serif;
}

.epm-panel__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
}

.epm-panel__li {
	align-items: flex-start;
}

.epm-panel__dot {
	display: none;
}

.epm-panel__li-text {
	font-size: 1.125rem;
	line-height: 1.5rem;
	color: #616266;
	font-family: s-regular, sans-serif;
}

.epm-panel__visual {
	width: 63.75rem;
	max-width: 63.75rem;
	flex: 1 1 auto;
	height: 34.75rem;
	border-radius: 1.125rem;
	background: #e2e2e2;
	box-sizing: border-box;
}

.epm-panel__layer {
	position: absolute;
	display: block;
	object-fit: fill;
	object-position: center;
	pointer-events: none;
}

.epm-panel__layer--a {
	z-index: 1;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: auto;
}


/* ----- 配套硬件 ----- */
.epm-section--hardware {
	padding-bottom: 5rem;
}

.epm-hw-row {
	gap: 1.25rem;
	align-items: stretch;
}

.epm-hw-card {
	flex: 1 1 0;
	min-height: 34.8125rem;
	border-radius: 1.125rem;
	background: #e5e5e5;
	box-sizing: border-box;
	overflow: hidden;
}

.epm-hw-card__inner {
	min-height: 34.8125rem;
}

.epm-hw-card__left {
	flex: 0 0 auto;
	width: 27.5rem;
	max-width: 38%;
	padding: 5rem 0 5rem 3.75rem;
	box-sizing: border-box;
	position: relative;
	z-index: 6;
}

.epm-hw-card__title {
	margin: 0;
	font-size: 2.5rem;
	line-height: 1.2;
	color: #1d1d1f;
	font-family: s-demibold, sans-serif;
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 22.5rem;
	max-width: 100%;
	word-break: keep-all;
}

.epm-hw-card__title-line {
	display: block;
	white-space: nowrap;
}

/* 功能详情：与 uniqueness-detection-device .udd-product-btn 一致 */
.epm-hw-card__cta {
	align-self: flex-start;
	margin-top: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.125rem;
	padding: 0 1.25rem;
	border-radius: 1.125rem;
	border: 0.0625rem solid #1d1d1f;
	width: fit-content;
	box-sizing: border-box;
	cursor: pointer;
	font-size: 1rem;
	line-height: 1.25rem;
	font-family: s-regular, sans-serif;
	color: #1d1d1f;
	background: transparent;
	transition: background-color 0.6s ease, border-color 0.6s ease, color 0.6s ease;
}

.epm-hw-card__cta:hover,
.epm-hw-card__cta:focus-visible,
.epm-hw-card.epm-hover-open .epm-hw-card__cta {
	background: #007df2;
	border-color: #007df2;
	color: #ffffff;
}

.epm-hw-card__cta-text {
	font: inherit;
	color: inherit;
}

.epm-hw-card__visual {
	flex: 1 1 auto;
	min-width: 0;
	min-height: 34.8125rem;
	position: relative;
	overflow: hidden;
	border-radius: 0 1.125rem 1.125rem 0;
}

.epm-hw-card--gateway .epm-hw-card__gateway-bg {
	position: absolute;
	right: -5%;
	top: -10%;
	width: 115%;
	height: 120%;
	object-fit: cover;
	object-position: center;
	z-index: 0;
}

.epm-hw-card__product {
	position: absolute;
	z-index: 4;
	object-fit: contain;
	object-position: center;
	/* 勿用 top:auto/bottom 与 top:% 混切：auto 无法插值，动效会从错误锚点跳变 */
	transition: width 0.6s ease, height 0.6s ease, top 0.6s ease, transform 0.6s ease;
}

/* 温度传感器：默认配图 439×439；仅悬停/聚焦「功能详情」时蒙层 + 缩至底部 173×173 */
.epm-hw-card:not(.epm-hw-card--gateway) .epm-hw-card__product {
	left: 50%;
	right: auto;
	top: 50%;
	bottom: auto;
	transform: translate(-50%, -50%);
	width: 27.4375rem;
	height: 27.4375rem;
	max-width: none;
	max-height: none;
}

.epm-hw-card:not(.epm-hw-card--gateway).epm-hover-open .epm-hw-card__product {
	width: 10.8125rem;
	height: 10.8125rem;
	/* 与默认态同为「显式 top」，便于与 top:50% 平滑过渡；高度变更时需同步调整 calc */
	top: calc(100% - 2.5rem - 10.8125rem);
	bottom: auto;
	left: 50%;
	right: auto;
	transform: translate(-50%, 0);
}

/* 无线网关：默认配图 504×504；交互同上，悬停产品 213×213 */
.epm-hw-card--gateway .epm-hw-card__product {
	left: 50%;
	right: auto;
	top: 47%;
	bottom: auto;
	transform: translate(-50%, -50%);
	width: 31.5rem;
	height: 31.5rem;
	max-width: none;
	max-height: none;
}

.epm-hw-card--gateway.epm-hover-open .epm-hw-card__product {
	width: 13.3125rem;
	height: 13.3125rem;
	top: calc(100% - 2.5rem - 13.3125rem);
	bottom: auto;
	left: 50%;
	right: auto;
	transform: translate(-50%, 0);
}

/* 配图区内蒙层：hover 呈现，底色与设计稿一致 */
.epm-hw-card__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	background: #e5e5e5;
	opacity: 0;
	transition: opacity 0.6s ease;
	padding: 5rem 2.25rem 8rem 5rem;
	box-sizing: border-box;
	pointer-events: none;
}

.epm-hw-card.epm-hover-open .epm-hw-card__overlay {
	opacity: 1;
	pointer-events: auto;
}

.epm-hw-card__specs {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	justify-content: flex-start;
	align-items: flex-start;
	min-height: 0;
	width: 100%;
	max-width: 22.5rem;
}

.epm-hw-card__spec {
	position: relative;
	padding-left: 1rem;
	font-size: 1rem;
	line-height: 1.61875rem;
	color: #435566;
	font-family: s-regular, sans-serif;
}

.epm-hw-card__spec::before {
	content: '·';
	position: absolute;
	left: 0;
	top: 0;
	font-family: s-demibold, sans-serif;
	color: #435566;
}

/* ----- 页底卡片式 CTA（shared/petrochemical-contact-cta，本页仅加载 emergency-platform.css） ----- */
.is-view-emergency-platform .petro-cta {
	width: 100%;
	box-sizing: border-box;
	padding: 0 0 6.25rem;
	background: #f5f5f7;
}

.is-view-emergency-platform .petro-cta__wrap {
	box-sizing: border-box;
}

.is-view-emergency-platform .petro-cta__card {
	position: relative;
	overflow: hidden;
	border-radius: 1.25rem;
	min-height: 26.25rem;
	height: 26.25rem;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

.is-view-emergency-platform .petro-cta__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.is-view-emergency-platform .petro-cta__bg-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.is-view-emergency-platform .petro-cta__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(0, 0, 0, 0.3);
}

.is-view-emergency-platform .petro-cta__inner {
	position: relative;
	z-index: 2;
	gap: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 2.25rem 1rem 1.75rem;
}

.is-view-emergency-platform .petro-cta .petro-cta__title {
	margin: 0 !important;
	color: #fff !important;
	font-size: 2.5rem !important;
	line-height: 3.3125rem !important;
	text-align: center;
	font-family: s-demibold, sans-serif !important;
}

.is-view-emergency-platform .petro-cta .petro-cta__lead--subtitle {
	margin: .75rem 0 2.3125rem !important;
	padding: 0;
	text-align: center;
	color: rgba(255, 255, 255, 0.8) !important;
	font-size: 1.375rem;
	line-height: 1.875rem;
	font-family: s-regular, sans-serif !important;
	white-space: break-spaces;
}

