/* ==========================================================================
   1. 轮播横幅 (Hero Banner)
   ========================================================================== */
.royal-banner {
	background: #333;
	height: 100vh;
	position: relative;
	overflow: hidden;
}

/* 波浪装饰动画 */
.royal-banner::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 200%;
	height: 40px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 10'%3E%3Cpath fill='%2373D7DC' fill-opacity='0.8' d='M0,5 Q5,0 10,5 T20,5 T30,5 T40,5 L40,10 L0,10 Z'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	opacity: 0.8;
	animation: waveMove 200s linear infinite;
	pointer-events: none;
	z-index: 999;
}

.royal-banner-swiper {
	width: 100%;
	height: 100%;
}

.royal-banner-item {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	overflow: hidden;
}

/* 背景缩放动画（使用伪元素避免影响内容） */
.royal-banner-item::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: inherit;
	background-size: cover;
	background-position: center;
	transform: scale(1);
	animation: imageZoom 10s infinite ease-in-out;
	z-index: 1;
}

.royal-banner-info {
	position: relative;
	z-index: 3;
	width: 100%;
	max-width: 600px;
	text-shadow: 3px 6px 15px rgba(0, 0, 0, 0.1);
	animation: float 3s ease-in-out infinite;
}

.royal-banner-info h1 {
	font-size: 60px;
	line-height: 1.2;
}

.royal-banner-info .royal-text-1 {
	color: #F2DD62 !important;
}

.royal-banner-info .royal-text-2 {
	color: #00705A !important;
}

.royal-banner-info h2 {
	font-size: 20px;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.royal-banner-info p {
	font-size: 20px;
	margin: 20px 0 40px;
}

/* ==========================================================================
   2. 视频模块 (Video Module)
   ========================================================================== */
.royal-ivideo-g {
	overflow: hidden;
	padding: 40px 0 80px;
	position: relative;
}

/* 波浪装饰动画 */
.royal-ivideo-g::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 300%;
	height: 40px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 10'%3E%3Cpath fill='%23C5E4DE' fill-opacity='1' d='M0,5 Q5,0 10,5 T20,5 T30,5 T40,5 L40,10 L0,10 Z'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	animation: waveMove 200s linear infinite;
	pointer-events: none;
	z-index: 999;
}

/* 视频容器 - 显示器外观 */
.royal-ivideo-content {
	position: relative;
	background-color: #fff;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 auto;
	width: 100%;
	max-width: 1000px;
	aspect-ratio: 1000 / 600;
	height: auto;
}

/* 屏幕区域 */
.royal-screen-content {
	position: absolute;
	top: 5%;
	left: 11.9%;
	right: 11.9%;
	bottom: 14%;
	background-color: #000;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.royal-ivideo-poster {
	width: 100%;
	height: 100%;
	position: relative;
}

.royal-video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 播放按钮 */
.royal-ivideo-poster-btn {
	position: absolute;
	top: 10%;
	right: 0%;
	transform: translate(-50%, -50%);
	width: 60px;
	height: 60px;
	background: rgba(255, 255, 255, 0.9);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s;
	border: 1px solid #e6e6e6;
}

.royal-ivideo-poster-btn i {
	font-size: 16px;
}

.royal-ivideo-poster-btn:hover {
	transform: translate(-50%, -50%) scale(1.1);
	background: #47C5CB;
	color: #fff;
}

/* 视频弹窗样式 */
.royal-ivideo-modal .royal-modal-dialog {
	min-width: 60%;
	border-radius: 10px;
	box-shadow: 4px 10px 20px rgba(0, 0, 0, 0.2);
}

.royal-ivideo-modal .royal-modal-hd,
.royal-ivideo-modal .royal-modal-bd {
	padding: 0;
}

.royal-ivideo-modal .royal-close {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	border: none;
	background: #47C5CB;
	color: #fff;
	line-height: 48px;
	z-index: 9;
	opacity: 0.9;
	top: -48px;
	right: -48px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 30px;
	font-weight: 100;
	text-shadow: none;
	transition: all 0.3s ease;
}

.royal-ivideo-modal .royal-close:hover {
	opacity: 1;
	transform: scale(1.2) rotate(90deg);
	color: #fff;
	background-color: #F2DD62;
}

/* 视频播放容器 */
.royal-video-container {
	position: relative;
	width: 100%;
	padding-bottom: 60%;
	background: #000;
	overflow: hidden;
	border-radius: 10px;
}

.royal-video-container video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}

/* ==========================================================================
   3. 品牌展示区 (Brands Section)
   ========================================================================== */
.royal-ibrand-class-g {
	overflow: hidden;
	padding: 60px 0;
	background-color: #C5E4DE;
}

.royal-ibrand-class-item {
	overflow: hidden;
	text-align: center;
	background: #fff;
	border-radius: 10px;
	transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.royal-ibrand-class-item:hover {
	transform: translateY(-5px);
	box-shadow: 4px 10px 10px rgba(0, 0, 0, 0.1);
}

.royal-ibrand-class li {
	padding: 20px;
}

.royal-ibrand-class-img {
	padding-bottom: 45%;
	overflow: hidden;
}

/* ==========================================================================
   4. 产品分类区 (Product Categories)
   ========================================================================== */
.royal-product-class-g {
	overflow: hidden;
	padding: 80px 0 70px;
	position: relative;
	background-color: #73D7DC;
}

.royal-product-class {
	overflow: hidden;
}

.royal-product-class li {
	padding: 10px;
}

.royal-product-class-item {
	overflow: hidden;
	text-align: center;
	padding: 40px;
	box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.05);
	background: #fff;
	border-radius: 10px;
	transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.royal-product-class-item:hover {
	transform: translateY(-5px);
	box-shadow: 4px 10px 10px rgba(0, 0, 0, 0.1);
}

.royal-product-class-img {
	padding-bottom: 100%;
	border-radius: 10px;
}

.royal-product-class-info a {
	font-weight: 500;
	margin-top: 40px;
	display: block;
	line-height: 1.2;
	font-size: 18px;
}

/* ==========================================================================
   5. 专题产品区 (Featured Products)
   ========================================================================== */
.royal-featured-products-g {
	overflow: hidden;
	padding: 80px 0 60px;
	position: relative;
}

.royal-featured-products {
	overflow: hidden;
}

.royal-featured-products li {
	padding: 20px;
}

.royal-featured-products-item {
	overflow: hidden;
	box-shadow: 4px 10px 10px rgba(0, 0, 0, 0.02);
	border: 1px solid #f3f3f3;
	background: #f3f3f3;
	border-radius: 10px;
	position: relative;
	transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.royal-featured-products-item:hover {
	transform: translateY(-5px);
	box-shadow: 4px 10px 10px rgba(0, 0, 0, 0.1);
}

/* hover 时展开信息层 */
.royal-featured-products-item:hover .royal-featured-products-info {
	background: #73d7dcea;
	transition: 0.5s ease;
	padding: 20px 40px;
	color: #fff;
}

.royal-featured-products-img {
	padding-bottom: 75%;
}

.royal-featured-products-img img {
	object-fit: cover;
	object-position: center;
}

.royal-featured-products-info {
	font-size: 20px;
	overflow: hidden;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 20px;
	font-weight: bold;
	background: rgba(255, 255, 255, 0.03);
	transition: all 0.5s ease;
	color: #1ed7e1;
}

/* ==========================================================================
   6. 电商平台区 (E-commerce Platforms)
   ========================================================================== */
.royal-ishop-g {
	overflow: hidden;
	padding: 0 0 60px;
	position: relative;
}

.royal-ishop {
	overflow: hidden;
}

.royal-ishop li {
	padding: 20px;
}

.royal-ishop-item {
	overflow: hidden;
	box-shadow: 4px 10px 10px rgba(0, 0, 0, 0.02);
	background: #73D7DC;
	border-radius: 10px;
	position: relative;
	transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.royal-ishop-item:hover {
	transform: translateY(-5px);
	box-shadow: 4px 10px 10px rgba(0, 0, 0, 0.1);
}

.royal-ishop-img {
	padding-bottom: 60%;
}

.royal-ishop-img img {
	object-fit: cover;
	object-position: center;
	transition: transform 0.6s ease;
}

.royal-ishop-img img:hover {
	transform: rotate(360deg);
}

/* ==========================================================================
   7. 响应式设计与移动端优化 (Responsive & Mobile)
   ========================================================================== */

/* 平板端与中等屏幕 (最大宽度 992px) */
@media (max-width: 992px) {
	.royal-banner {
		margin-top: 51px;
		height: 100vw;
	}

	.royal-banner-item {
		display: block;
	}

	.royal-banner-info {
		text-align: center;
		max-width: 100%;
		padding-top: 12vw;
	}

	/* 隐藏轮播导航按钮 */
	.swiper-button-next,
	.swiper-button-prev {
		display: none;
	}

	.royal-product-class-g {
		padding: 20px 0 40px;
	}

	/* 移动端字体/间距调整 */
	.royal-banner-info h1 {
		font-size: 32px;
	}

	.royal-banner-info h2 {
		margin-bottom: 0;
	}

	.royal-banner-info h2,
	.royal-banner-info p {
		font-size: 16px;
	}

	.royal-banner-info p {
		margin: 10px 0;
	}

	.royal-banner-info .royal-btn {
		font-size: 14px;
	}

	.royal-ivideo-g {
		padding: 20px 0 40px;
	}

	.royal-ibrand-class-g {
		padding: 0 0 20px;
	}

	.royal-ibrand-class li {
		padding: 5px;
	}

	.royal-product-class li {
		padding: 5px;
	}

	.royal-product-class-item {
		padding: 20px;
	}

	.royal-product-class-info a {
		margin-top: 10px;
	}

	.royal-featured-products-g {
		padding: 20px 0;
	}

	.royal-featured-products li {
		padding: 5px;
	}

	.royal-featured-products-info {
		font-size: 16px;
		padding: 10px;
	}

	.royal-ishop-g {
		padding: 0px 0 20px;
	}

	.royal-ishop li {
		padding: 5px;
	}
}

/* 大屏幕保持比例 (最小宽度 1000px) */
@media (min-width: 1000px) {
	.royal-ivideo-content {
		max-width: 1000px;
	}
}
