/* 组件容器
		 * 高度问题说明：
		 * - 仅用 height:auto + 图片 height:auto 时，高度 = 图片固有宽高比 × 屏宽；手机很窄时约 117px，下面会空一大块。
		 * - 用 max(视口比例, 横幅比例) 让窄屏也有足够「首屏氛围」，大屏仍不超过 600px。
		 */
		.ql-lunbo-one {
			position: relative;
			width: 100%;
			max-width: 100%;
			margin: 0;
			padding: 0;
			box-sizing: border-box;
			height: max(38vh, min(31.25vw, 600px));
			max-height: min(90vh, 600px);
			background: #fafafa;
			overflow: hidden;
		}

		/* Swiper 容器：父级已定高，子级拉满；宽度与视口一致 */
		.qlbd-swiper-1 {
			width: 100%;
			max-width: 100%;
			min-width: 0;
			height: 100%;
			margin: 0;
			padding: 0;
			box-sizing: border-box;
		}

		/* 勿写死 wrapper 宽度：由 Swiper 计算（写 100% 会导致无法切换/不动） */
		.qlbd-swiper-1 .swiper-wrapper {
			height: 100%;
			box-sizing: border-box;
		}

		/* 每屏占满轮播宽度，避免 flex 居中导致图片未贴边 */
		.qlbd-swiper-1 .swiper-slide {
			width: 100%;
			max-width: 100%;
			height: 100%;
			margin: 0;
			padding: 0;
			box-sizing: border-box;
			background: #fff;
			display: block;
			position: relative;
		}

		/* 后台幻灯片跳转链接：铺满 slide，与单图全幅一致 */
		.qlbd-swiper-1 .qlbd-swiper-1__slide-link {
			display: block;
			width: 100%;
			height: 100%;
			text-decoration: none;
			color: inherit;
			position: relative;
			overflow: hidden;
		}

		.qlbd-swiper-1 .qlbd-swiper-1__slide-link[href=""],
		.qlbd-swiper-1 .qlbd-swiper-1__slide-link[href="#"] {
			pointer-events: none;
			cursor: default;
		}

		/* 在固定高度内裁剪，避免窄屏被比例压成细条 */
		.qlbd-swiper-1 .swiper-slide img {
			display: block;
			width: 100%;
			max-width: 100%;
			height: 100%;
			margin: 0;
			padding: 0;
			vertical-align: top;
			object-fit: cover;
			object-position: center;
			box-sizing: border-box;
		}

		.qlbd-swiper-1 .qlbd-swiper-1__slide-link::after {
			content: none;
		}

		.qlbd-swiper-1 .qlbd-swiper-1__caption {
			position: absolute;
			inset: 0;
			z-index: 1;
			display: flex;
			align-items: center;
			pointer-events: none;
		}

		.qlbd-swiper-1 .qlbd-swiper-1__caption-inner {
			width: min(680px, calc(100% - 64px));
			margin-left: clamp(28px, 8vw, 132px);
			color: #2b80ff;
		}

		.qlbd-swiper-1 .qlbd-swiper-1__title {
			margin: 0;
			background: linear-gradient(90deg, #2b80ff 0%, #4d88ff 58%, #9b77ff 100%);
			-webkit-background-clip: text;
			background-clip: text;
			color: transparent;
			font-size: clamp(34px, 4vw, 68px);
			font-weight: 700;
			line-height: 1.14;
			letter-spacing: 0;
		}

		.qlbd-swiper-1 .qlbd-swiper-1__subtitle {
			margin: 14px 0 0;
			color: #2b80ff;
			font-size: clamp(16px, 1.35vw, 24px);
			font-weight: 600;
			line-height: 1.7;
		}

		.qlbd-swiper-1 .qlbd-swiper-1__title:empty,
		.qlbd-swiper-1 .qlbd-swiper-1__subtitle:empty {
			display: none;
		}

		/* 左右箭头：大一点，半透明 */
		.qlbd-swiper-1 .qlbdswiper-button-next1,
		.qlbd-swiper-1 .qlbdswiper-button-prev1 {
			color: #ffffff;
			width: 50px;
			height: 50px;
			background-color: rgba(0, 0, 0, 0.3); /* 深色半透明背景，更适合大图 */
			border-radius: 50%;
			transition: all 0.3s;
		}

		.qlbd-swiper-1 .qlbdswiper-button-next1:hover,
		.qlbd-swiper-1 .qlbdswiper-button-prev1:hover {
			background-color: var(--ql-color-primary);
		}

		.qlbd-swiper-1 .qlbdswiper-button-next1::after,
		.qlbd-swiper-1 .qlbdswiper-button-prev1::after {
			font-size: 20px;
		}

		/* 分页器：长条形 */
		.qlbd-swiper-1 .swiper-pagination-bullet {
			background: var(--ql-color-secondary); /* #EAF3FF，与 qlbd-root 副色一致 */
			width: 40px;
			height: 4px;
			border-radius: 2px;
			opacity: 1;
			transition: all 0.3s;
		}

		.qlbd-swiper-1 .swiper-pagination-bullet-active {
			background: var(--ql-color-primary); /* 激活变纯白 */
			width: 40px;
		}

		@media (max-width: 767px) {
			.qlbd-swiper-1 .qlbd-swiper-1__caption {
				align-items: center;
				justify-content: center;
				padding: 18px 0 30px;
			}

			.qlbd-swiper-1 .qlbd-swiper-1__caption-inner {
				width: min(86vw, 360px);
				margin: 0 auto;
				text-align: center;
			}

			.qlbd-swiper-1 .qlbd-swiper-1__title {
				font-size: clamp(24px, 7.4vw, 34px);
				line-height: 1.18;
			}

			.qlbd-swiper-1 .qlbd-swiper-1__subtitle {
				margin-top: 10px;
				font-size: 14px;
				line-height: 1.65;
				justify-content: center;
			}
		}
