/* 云拓时代 - 页面动画 */

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
	.yt-reveal { opacity: 1 !important; transform: none !important; }
}

body.yt-page-loading {
	opacity: 0;
}
body.yt-page-ready {
	opacity: 1;
	transition: opacity 1.2s ease;
}

/* 导航栏滚动效果 */
.banner.yt-nav-scrolled {
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
}
.banner.yt-nav-scrolled .navbar-default {
	background: rgba(9, 52, 122, 0.97) !important;
	transition: background 0.35s ease, box-shadow 0.35s ease;
}

/* 滚动进入视口 */
.yt-reveal {
	opacity: 0;
	transition:
		opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: opacity, transform;
}
.yt-reveal-up { transform: translateY(24px); }
.yt-reveal-down { transform: translateY(-20px); }
.yt-reveal-left { transform: translateX(-28px); }
.yt-reveal-right { transform: translateX(28px); }
.yt-reveal-scale { transform: scale(0.96); }
.yt-reveal.yt-visible {
	opacity: 1;
	transform: none;
}
.yt-reveal.yt-reveal-resetting {
	transition: none !important;
}

/* 服务卡片增强 */
.services .grid1,
.russia-services .grid1,
.brazil-services .grid1,
.taiwan-services .grid1 {
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
}
.services .grid1:hover,
.russia-services .grid1:hover,
.brazil-services .grid1:hover,
.taiwan-services .grid1:hover {
	transform: translateY(-8px) scale(1.02);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.2);
}
.services .grid1:hover i.fa,
.russia-services .grid1:hover i.fa,
.brazil-services .grid1:hover i.fa,
.taiwan-services .grid1:hover i.fa {
	animation: yt-icon-bounce 0.6s ease;
}
@keyframes yt-icon-bounce {
	0%, 100% { transform: translateY(0); }
	40% { transform: translateY(-10px); }
	70% { transform: translateY(-4px); }
}

/* 平台租赁卡片 */
.special-info {
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.special-info:hover {
	transform: translateY(-6px) scale(1.02);
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18);
}

/* 面板卡片 */
.russia-panel {
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.russia-panel:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.15);
}

/* 指纹浏览器 */
.browser-feature {
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}
.browser-feature:hover {
	transform: translateY(-6px);
	border-color: #c5cae9;
	box-shadow: 0 12px 28px rgba(92, 107, 192, 0.18);
}
.browser-visual-inner {
	animation: yt-float 4s ease-in-out infinite;
}
.browser-visual-inner i.fa {
	animation: yt-pulse-glow 2.5s ease-in-out infinite;
}
@keyframes yt-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-8px); }
}
@keyframes yt-pulse-glow {
	0%, 100% { text-shadow: 0 0 0 transparent; }
	50% { text-shadow: 0 0 20px rgba(92, 107, 192, 0.5); }
}

/* 轮播文案 */
.sliderBox h2,
.sliderBox h3 {
	animation: yt-hero-in 1.6s cubic-bezier(0.22, 1, 0.36, 1) both;
}
.sliderBox .readmore-w3 {
	animation: yt-hero-in 1.6s cubic-bezier(0.22, 1, 0.36, 1) 0.5s both;
}
@keyframes yt-hero-in {
	from {
		opacity: 0;
		transform: translateY(40px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* 按钮光晕 */
.readmore-w3 a,
.btn1 {
	position: relative;
	overflow: hidden;
}
.readmore-w3 a::after,
.btn1::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 60%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);
	transition: left 0.5s ease;
}
.readmore-w3 a:hover::after,
.btn1:hover::after {
	left: 120%;
}
.readmore-w3 a:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(20, 110, 180, 0.4);
}

/* 企业介绍特性 */
.intro-feat {
	transition: transform 0.3s ease;
}
.intro-feat:hover {
	transform: translateY(-5px);
}
.intro-feat:hover i {
	animation: yt-icon-bounce 0.5s ease;
}


/* 统计数字 */
.count-grid .count {
	transition: transform 0.35s ease;
}
.count-grid:hover .count {
	transform: scale(1.05);
}

/* 回到顶部按钮 */
#toTop {
	transition: transform 0.3s ease, opacity 0.3s ease;
}
#toTop:hover {
	transform: translateY(-4px);
}
