/**
 * 公司简介过渡（方案A · 深蓝承接）—— crgems_profile_bridge
 * 多层背景由 PHP/JS 计算内联 style 输出，此处只管结构与默认观感。
 * 冲突一律用特异性/层叠解决，不使用强制优先级语法。
 */

/* ===== 视频区块 ===== */
.crgems-ipb__vsec {
	background-color: #ffffff;
	padding: 0 32px 84px;
	text-align: center;
}

.crgems-ipb__vcard {
	position: relative;
	display: block;
	max-width: 880px;
	margin: 0 auto;
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 24px 60px rgba(8, 24, 51, .22);
	transition: transform .25s ease, box-shadow .25s ease;
}

a.crgems-ipb__vcard:hover {
	transform: translateY(-4px);
	box-shadow: 0 34px 72px rgba(8, 24, 51, .3);
}

.crgems-ipb__vcard img {
	display: block;
	width: 100%;
	height: auto;
}

/* 直链内嵌播放器（mp4/webm/ogv/mov） */
.crgems-ipb__vcard .crgems-ipb__vmedia {
	display: block;
	width: 100%;
	height: auto;
	background-color: #000000;
}

/* 封面覆盖层：显式 img，保证任何浏览器都先看到封面 */
.crgems-ipb__vcard .crgems-ipb__vcover {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}

/* 播放态隐藏：双类拼接连提（0-3-0），稳压后面同权重的 .crgems-ipb__vcard .crgems-ipb__vplay 基础规则
   --started=已开播（封面退场不回）；--playing=播放中（按钮藏，暂停即现） */
.crgems-ipb__vcard.crgems-ipb__vcard--started .crgems-ipb__vcover {
	display: none;
}

.crgems-ipb__vcard.crgems-ipb__vcard--playing::after {
	content: none;
}

.crgems-ipb__vcard.crgems-ipb__vcard--playing .crgems-ipb__vplay {
	display: none;
}

/* 播放钮同时兼容 span 与 button 元素（双类+元素，稳压主题/kit 的元素选择器） */
.crgems-ipb__vcard button.crgems-ipb__vplay {
	border: 0;
	padding: 0;
	cursor: pointer;
	font: inherit;
	line-height: 0;
	appearance: none;
	-webkit-appearance: none;
}

.crgems-ipb__vcard:not(.crgems-ipb__vcard--playing):hover .crgems-ipb__vplay {
	transform: translate(-50%, -50%) scale(1.06);
	box-shadow: 0 0 0 14px rgba(255, 255, 255, .16), 0 18px 40px rgba(4, 12, 43, .4);
}

.crgems-ipb__vcard::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(8, 24, 51, .05), rgba(8, 24, 51, .32));
	pointer-events: none;
}

/* 播放钮：双类选择器（0-2-0）确保压过 Elementor kit 的 ".elementor-kit-7 button"（0-1-1） */
.crgems-ipb__vcard .crgems-ipb__vplay {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 84px;
	height: 84px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(255, 255, 255, .92);
	box-shadow: 0 0 0 0 rgba(255, 255, 255, .45), 0 18px 40px rgba(4, 12, 43, .4);
	transition: transform .25s ease, box-shadow .25s ease;
}

.crgems-ipb__vcard .crgems-ipb__vplay::before {
	content: "";
	margin-left: 6px;
	border-style: solid;
	border-width: 13px 0 13px 21px;
	border-color: transparent transparent transparent #0f298f;
}

a.crgems-ipb__vcard:hover .crgems-ipb__vplay {
	transform: translate(-50%, -50%) scale(1.06);
	box-shadow: 0 0 0 14px rgba(255, 255, 255, .16), 0 18px 40px rgba(4, 12, 43, .4);
}

.crgems-ipb__vmeta {
	margin-top: 22px;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-size: 13px;
	letter-spacing: .22em;
	color: #7c89a3;
}

.crgems-ipb__vmeta::before,
.crgems-ipb__vmeta::after {
	content: "";
	width: 36px;
	height: 1px;
	background: #7c89a3;
	opacity: .35;
}

/* ===== 深蓝过渡区（与时间轴同底色无缝衔接） ===== */
.crgems-ipb__bridge {
	position: relative;
	color: #eaf1ff;
	/* 兜底背景（内联 style 恒覆盖）：底色 = 时间轴顶部色 + 底部衔接光晕，保证无缝 */
	background-image:
		radial-gradient(1200px 500px at 75% 105%, rgba(15, 41, 143, .38), rgba(0, 0, 0, 0) 62%),
		linear-gradient(180deg, #0a1e42 0%, #081833 46%, #081833 100%);
}

.crgems-ipb__bridge--stars::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		radial-gradient(1px 1px at 14% 30%, rgba(255, 255, 255, .4), transparent 100%),
		radial-gradient(1.5px 1.5px at 62% 12%, rgba(156, 195, 255, .45), transparent 100%),
		radial-gradient(1px 1px at 84% 64%, rgba(255, 255, 255, .26), transparent 100%),
		radial-gradient(1px 1px at 34% 78%, rgba(156, 195, 255, .3), transparent 100%),
		radial-gradient(1.2px 1.2px at 8% 60%, rgba(255, 255, 255, .22), transparent 100%);
}

.crgems-ipb__bridge-in {
	position: relative;
	max-width: 1264px;
	margin: 0 auto;
	padding: 86px 32px 0;
	text-align: center;
}

/* 引导小标（左右细线） */
.crgems-ipb__kicker {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-size: 13px;
	letter-spacing: .3em;
	color: rgba(234, 241, 255, .64);
}

.crgems-ipb__kicker::before,
.crgems-ipb__kicker::after {
	content: "";
	width: 44px;
	height: 1px;
	background: rgba(234, 241, 255, .64);
	opacity: .35;
}

/* ===== 愿景/使命玻璃双卡 ===== */
.crgems-ipb__vm {
	margin-top: 44px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 28px;
	text-align: left;
}

.crgems-ipb__card {
	position: relative;
	border-radius: 16px;
	padding: 38px 40px 34px;
	background-color: rgba(255, 255, 255, .055);
	border: 1px solid rgba(156, 195, 255, .2);
	backdrop-filter: blur(6px);
	transition: transform .25s ease, background-color .25s ease, border-color .25s ease;
}

.crgems-ipb__card:hover {
	transform: translateY(-4px);
	background-color: rgba(255, 255, 255, .08);
	border-color: rgba(156, 195, 255, .38);
}

.crgems-ipb__mark {
	position: absolute;
	top: -20px;
	left: 34px;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, 'PingFang SC', 'Microsoft YaHei', sans-serif;
	font-weight: 800;
	font-size: 19px;
	color: #ffffff;
	background-image: linear-gradient(135deg, #0f298f, #2b57d8);
	box-shadow: 0 12px 28px rgba(4, 12, 43, .45);
}

.crgems-ipb__tag {
	font-size: 13px;
	letter-spacing: .24em;
	color: #9cc3ff;
	font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, 'PingFang SC', 'Microsoft YaHei', sans-serif;
}

.crgems-ipb__card-title {
	margin: 10px 0 0;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.6;
	color: #ffffff;
}

.crgems-ipb__card-desc {
	margin: 12px 0 0;
	font-size: 14px;
	line-height: 1.8;
	color: rgba(234, 241, 255, .64);
}

.crgems-ipb__card-desc p {
	margin: 0;
}

/* ===== 结语（光点） ===== */
.crgems-ipb__lead {
	margin-top: 52px;
	font-size: 14px;
	letter-spacing: .14em;
	color: rgba(234, 241, 255, .64);
}

.crgems-ipb__lead-dot {
	display: inline-block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #9cc3ff;
	box-shadow: 0 0 12px rgba(156, 195, 255, .8);
	margin-left: 12px;
	vertical-align: middle;
}

/* ===== 响应式 ===== */
@media (max-width: 767px) {
	.crgems-ipb__vm {
		grid-template-columns: 1fr;
		gap: 44px;
	}

	.crgems-ipb__card {
		padding: 32px 26px 28px;
	}

	.crgems-ipb__vsec {
		padding-left: 16px;
		padding-right: 16px;
	}

	.crgems-ipb__vcard .crgems-ipb__vplay {
		width: 64px;
		height: 64px;
	}

	.crgems-ipb__vcard .crgems-ipb__vplay::before {
		border-width: 10px 0 10px 16px;
	}
}
