::-webkit-scrollbar {
  width: 3px;  /* 竖向滚动条宽度 */
  height: 3px; /* 横向滚动条高度 */
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #508cff, #9b64ff, #46d2a0);
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #367bff, #8a4fff, #32c894);
}


/* 仅PC端显示，平板手机隐藏 */
@media (min-width: 1440px) {
	.d-pc-block {
		display: block !important;
	}

	.d-pc-flex {
		display: flex !important;
	}

	.d-none-pc {
		display: initial !important;
	}

	.d-none-tablet,
	.d-none-mobile {
		display: none !important;
	}
	
}

/* 仅平板端显示 */
@media (min-width:768px) and (max-width:1439px) {
	.d-tablet-block {
		display: block !important;
	}

	.d-tablet-flex {
		display: flex !important;
	}

	.d-none-tablet {
		display: initial !important;
	}

	.d-none-pc,
	.d-none-mobile {
		display: none !important;
	}
}

/* 仅手机端显示 */
@media (max-width:767.98px) {
	.d-mobile-block {
		display: block !important;
	}

	.d-mobile-flex {
		display: flex !important;
	}

	.d-none-mobile {
		display: initial !important;
	}

	.d-none-pc,
	.d-none-tablet {
		display: none !important;
	}

	.search-box from {
		width: 100% !important;
	}

	.bowei-swiper-item {
		height: auto !important;
	}

	.bowei-logo-box {
		margin-top: 0px !important;
	}

	.bowei-content-lefttop {
		top: -15% !important;
	}
}

/* ===================== PC大屏 1440px及以上 专属样式 ===================== */
@media (min-width: 1440px) {

	/* 容器宽度限制，大屏不无限拉伸，固定舒适宽度 */
	.container-pc-max {
		max-width: 1420px !important;
	}

	/* 全局字体放大一档 */
	body {
		font-size: 1.05rem;
	}

	/* 标题字号加大 */
	.fs-tech-xxl {
		font-size: 2.3rem !important;
	}

	/* 卡片内边距加宽 */
	.card-tech {
		padding: 2rem !important;
	}

	/* 按钮尺寸放大 */
	.btn-tech {
		padding: 0.65rem 1.8rem !important;
	}

	/* 全局上下间距加大 */
	.mt-tech-5 {
		margin-top: 4rem !important;
	}

	/* 导航栏左右边距拓宽 */
	.px-tech-3 {
		padding-left: 3rem !important;
		padding-right: 3rem !important;
	}
}


/* ===================== 平板端 768px ~ 1439px ===================== */
@media (min-width: 768px) and (max-width: 1439px) {

	/* 容器自动适配Bootstrap默认container宽度 */
	/* 字体整体缩小一级 */
	body {
		font-size: 0.95rem;
	}

	.fs-tech-xxl {
		font-size: 1.8rem !important;
	}

	.fs-tech-xl {
		font-size: 1.35rem !important;
	}

	/* 卡片内边距收缩 */
	.card-tech {
		padding: 1.2rem !important;
	}

	/* 外边距整体减半优化排版 */
	.mt-tech-4 {
		margin-top: 1.5rem !important;
	}

	.mt-tech-5 {
		margin-top: 2.2rem !important;
	}

	/* 按钮缩小 */
	.btn-tech {
		padding: 0.5rem 1.2rem !important;
	}
}


/* ===================== 手机移动端 小于768px ===================== */
@media (max-width: 767.98px) {

	/* 全局基础 */
	body {
		font-size: 0.88rem;
	}

	/* 标题层级压缩 */
	.fs-tech-xxl {
		font-size: 1.4rem !important;
	}

	.fs-tech-xl {
		font-size: 1.15rem !important;
	}

	.fs-tech-lg {
		font-size: 1rem !important;
	}

	/* 内边距全部收窄，避免页面左右挤溢出 */
	.p-tech-3 {
		padding: 1rem !important;
	}

	.px-tech-3 {
		padding-left: 0.8rem !important;
		padding-right: 0.8rem !important;
	}

	.py-tech-3 {
		padding-top: 1rem !important;
		padding-bottom: 1rem !important;
	}

	/* 外边距大幅精简，移动端留白不宜过大 */
	.mt-tech-3 {
		margin-top: 1rem !important;
	}

	.mt-tech-4 {
		margin-top: 1.2rem !important;
	}

	.mt-tech-5 {
		margin-top: 1.8rem !important;
	}

	.mb-tech-4 {
		margin-bottom: 1.2rem !important;
	}

	/* 卡片适配手机 */
	.card-tech {
		padding: 1rem !important;
	}

	/* 按钮移动端铺满/缩小 */
	.btn-tech,
	.btn-tech-solid,
	.btn-tech-purple {
		width: 100%;
		margin: 0.3rem 0;
		padding: 0.55rem !important;
	}

	/* 图片hover上浮动画弱化，防止移动端触摸卡顿 */
	.img-tech-hover:hover {
		transform: scale(1.01) translateY(-2px);
	}

	/* 流光动画降频，节省手机性能 */
	@keyframes flowRotate {
		100% {
			transform: rotate(360deg);
		}
	}

	.anim-flow-border::after {
		animation-duration: 6s;
	}

	/* 浮动动画幅度减小 */
	@keyframes floatUp {
		from {
			transform: translateY(0);
		}

		to {
			transform: translateY(-4px);
		}
	}
}

/* 全局粒子画布 */
#boweiqiAiCanvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    pointer-events: none;
    z-index: -10;
}

/* 背景图层 */
.boweiqi-bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../img/dwbg.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index:1;
}

/* 背景遮罩，避免图片太抢文字 */
.boweiqi-bg-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(3, 12, 32, 0.78) 0%, rgba(4, 24, 59, 0.82) 75%, rgba(6, 43, 92, 0.78) 100%);
    z-index: -1;
}

/* 外层主容器 */
.boweiqi-ai-wrap {
    width: 100%;
    min-height: 960px;
    position: relative;
    overflow: hidden;
    padding: 80px 30px 40px;
}

/* 内容居中 1320px */
.boweiqi-ai-container {
    max-width: 1320px;
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    position: relative;
    z-index: 2;
	padding-top: 8rem;
}

/* 三栏每一项 */
.boweiqi-ai-col {
    padding-right: 40px;
    border-right: 1px solid rgba(80, 180, 255, 0.35);
}

.boweiqi-ai-col:last-child {
    border-right: none;
    padding-right: 0;
}

/* 大标题 hover 渐变流动动画 */
.boweiqi-ai-title {
    font-size: 42px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 26px;
    background: linear-gradient(90deg, #ffffff, #72ccff, #ffffff);
    background-size: 200% auto;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    transition: all 0.3s ease;
}

.boweiqi-ai-title:hover {
    animation: boweiqi-titleFlow 1.2s linear infinite;
}

@keyframes boweiqi-titleFlow {
    0% {
        background-position: 0% center;
    }
    100% {
        background-position: 200% center;
    }
}

/* 正文文字 */
.boweiqi-ai-desc {
    font-size: 17px;
    line-height: 1.85;
    color: #d6e8ff;
}

/* 底部发光AI视觉层 */
.boweiqi-ai-bottom-box {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 420px;
    background:url(../img/dwbg.jpg);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    z-index: 1;
}

.boweiqi-ai-font {
    font-size: 220px;
    font-weight: bold;
    font-style: italic;
    color: transparent;
    -webkit-text-stroke: 2px #33ccff;
    text-shadow: 0 0 20px #00b8ff, 0 0 45px #0099ff;
    line-height: 1;
    position: relative;
    bottom: -30px;
}

/* 地面放射线条 */
.boweiqi-radar-line {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(15deg, rgba(80, 190, 255, 0.2) 1px, transparent 1px);
    background-size: 120px 100%;
    opacity: 0.6;
}

/* ========== 移动端适配 ========== */
@media (max-width: 992px) {
    .boweiqi-ai-container {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .boweiqi-ai-col {
        border-right: none;
        border-bottom: 1px solid rgba(80, 180, 255, 0.35);
        padding-bottom: 30px;
        padding-right: 0;
    }

    .boweiqi-ai-col:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }

    .boweiqi-ai-title {
        font-size: 32px;
    }

    .boweiqi-ai-font {
        font-size: 130px;
    }

    .boweiqi-ai-wrap {
        padding: 50px 20px 30px;
        min-height: auto;
    }
}

@media (max-width: 576px) {
    #boweiqiAiCanvas {
        display: none;
    }

    .boweiqi-ai-title {
        font-size: 26px;
    }

    .boweiqi-ai-desc {
        font-size: 15px;
    }

    .boweiqi-ai-font {
        font-size: 90px;
    }
}

/* 全局粒子底层画布 全新yxbowei前缀 */
#yxboweiFutureCanvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    pointer-events: none;
    z-index: -10;
}

/* 主外层容器 全部class增加yxbowei前缀隔离样式 */
.yxbowei-future-wrap {
    width: 100%;
    background-color: #000717;
    position: relative;
    overflow: hidden;
}
/* 背景底图+深色遮罩 */
.yxbowei-future-bgimg {
    position: absolute;
    inset: 0;
    background-image: url("future-bg.jpg");
    background-size: cover;
    background-position: center;
    opacity: 0.22;
    z-index: -3;
}
.yxbowei-future-mask {
    position: absolute;
    inset: 0;
    background: rgba(3, 7, 20, 0.85);
    z-index: -2;
}

/* 内容容器 最大宽度1320px居中，左右双栏 */
.yxbowei-future-container {
    max-width: 1320px;
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 60px;
    position: relative;
    z-index: 2;
}

/* 左侧竖标题区域 */
.yxbowei-future-left {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 80px;
    border-right: 1px solid rgba(75, 185, 255, 0.4);
    padding-right: 40px;
}
.yxbowei-future-left-title {
    font-size: 46px;
    font-weight: bold;
    color: #ffffff;
    opacity: 0;
    transform: translateY(40px);
}
/* 三段标题分别延迟入场 */
.yxbowei-future-left-title:nth-child(1) {animation: yxboweiUpFade 0.8s ease forwards; animation-delay: 0.2s;}
.yxbowei-future-left-title:nth-child(2) {animation: yxboweiUpFade 0.8s ease forwards; animation-delay: 0.5s;}
.yxbowei-future-left-title:nth-child(3) {animation: yxboweiUpFade 0.8s ease forwards; animation-delay: 0.8s;}

/* 右侧正文区域 */
.yxbowei-future-right {
    display: flex;
    flex-direction: column;
    gap: 36px;
    justify-content: center;
}
.yxbowei-future-paragraph {
    font-size: 17px;
    line-height: 1.88;
    color: #d7e9ff;
    opacity: 0;
    transform: translateY(35px);
}
/* 三段正文依次延迟上滑 */
.yxbowei-future-paragraph:nth-child(1) {animation: yxboweiUpFade 0.8s ease forwards; animation-delay: 0.3s;}
.yxbowei-future-paragraph:nth-child(2) {animation: yxboweiUpFade 0.8s ease forwards; animation-delay: 0.6s;}
.yxbowei-future-paragraph:nth-child(3) {animation: yxboweiUpFade 0.8s ease forwards; animation-delay: 0.9s;}

/* 从下往上淡入动画 */
@keyframes yxboweiUpFade {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ========== 移动端适配 ========== */
@media (max-width: 992px) {
    .yxbowei-future-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .yxbowei-future-left {
        border-right: none;
        border-bottom: 1px solid rgba(75, 185, 255, 0.4);
        padding-right: 0;
        padding-bottom: 30px;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 25px 40px;
    }
    .yxbowei-future-left-title {
        font-size: 32px;
    }
    .yxbowei-future-wrap {
        padding: 50px 20px;
        min-height: auto;
    }
}
@media (max-width: 576px) {
    /* 手机端关闭粒子，避免卡顿 */
    #yxboweiFutureCanvas {
        display: none;
    }
    .yxbowei-future-left-title {
        font-size: 26px;
    }
    .yxbowei-future-paragraph {
        font-size: 15px;
    }
}

/* 页面外层容器 */
.yxbowei-map-wrap {
    width: 100%;
    min-height:1500px;
    background:url(../img/dtubg_02.jpg);
    position: relative;
    padding: 100px 30px;
    overflow: hidden;
}

/* 底部径向蓝光渐变 */
.yxbowei-map-bottom-glow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 220px;
    background: radial-gradient(ellipse at bottom center, rgba(0, 165, 255, 0.4) 0%, transparent 70%);
    z-index: 1;
}

/* 顶部标题 */
.yxbowei-map-title-box {
    max-width: 1320px;
    margin: 0 auto 40px;
}
.yxbowei-map-en-title {
    font-size: 20px;
    color: rgba(120, 200, 255, 0.4);
    letter-spacing: 2px;
}
.yxbowei-map-cn-title {
    font-size: 48px;
    color: #ffffff;
    font-weight: bold;
    margin-top: 4px;
}

/* 地图主体容器居中 */
.yxbowei-map-main-box {
    max-width: 1180px;
    margin: 0 auto;
    z-index: 2;
}

/* 中国地图SVG容器 */
.yxbowei-china-svg-wrap {
    width: 100%;
}

/* 定位图标基础样式 替换圆点为bootstrap定位图标 */
.yxbowei-map-point {
    position: absolute;
    font-size: 22px;
    color: red;
    /* 呼吸缩放动画 */
    animation: yxboweiPointBreath 2.2s ease-in-out infinite;
    cursor: pointer;
    transition: all 0.3s ease;
}
/* 点位hover发光放大 */
.yxbowei-map-point:hover {
    transform: scale(1.4);
    filter: drop-shadow(0 0 8px #36e0ff) drop-shadow(0 0 18px #00ccff) drop-shadow(0 0 30px #0099ff);
}

/* 点位文字+指引横线 */
.yxbowei-point-text-line {
    position: absolute;
    display: flex;
    align-items: center;
}
.yxbowei-line {
    height: 1px;
    background: rgba(90, 195, 255, 0.6);
}
.yxbowei-point-text {
    color: #fff;
    font-size: 24px;
    padding-left: 12px;
}

/* 各点位精准定位（匹配原图坐标） */
/* 北京 */
.yxbowei-point-beijing {top: 37.5%;  left: 64.5%;}
.yxbowei-line-beijing {width: 140px; top: 11px; left: 24px;}
.yxbowei-text-beijing {top:35%; left:82%;}

/* 上海 */
.yxbowei-point-shanghai {top: 54%;left: 72.2%;}
.yxbowei-line-shanghai {width: 120px; top: 11px; left: 24px;}
.yxbowei-text-shanghai {top: 52%;left:83%;}

/* 长沙 */
.yxbowei-point-changsha {top:60.5%;left: 60.8%;}
.yxbowei-line-changsha {width: 230px; top: 11px; left: 24px;}
.yxbowei-text-changsha {top: 57.3%;left: 83%;}

/* 深圳东莞 */
.yxbowei-point-sz-dg {top: 69.5%;left: 63.8%;}
.yxbowei-line-sz-dg {width: 180px; top: 11px; left: 24px;}
.yxbowei-text-sz-dg {top: 66%; left: 79%;}

/* 定位图标呼吸缩放动画 */
@keyframes yxboweiPointBreath {
    0% {transform: scale(1); opacity: 0.8;}
    50% {transform: scale(1.3); opacity: 1;}
    100% {transform: scale(1); opacity: 0.8;}
}

/* 适配平板手机 */
@media (max-width:992px) {
    .yxbowei-map-cn-title {font-size: 36px;}
    .yxbowei-point-text {font-size: 19px;}
    .yxbowei-map-point {font-size: 19px;}
}
@media (max-width:576px) {
    #yxboweiMapCanvas {display: none;}
    .yxbowei-map-cn-title {font-size: 28px;}
    .yxbowei-point-text {font-size: 16px;}
    .yxbowei-map-point {font-size: 17px;}
    .yxbowei-map-wrap {padding: 30px 15px;}
}

.bwyx-wrap {
    width: 100%;
    color: #fff;
    padding: 20px 20px;
    box-sizing: border-box;
}
.bwyx-container {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 3px 1.6fr;
    align-items: center;
    gap: 64px;
}
/* 中间渐变蓝色竖分割线，匹配原图 */
.bwyx-line {
    height: 100%;
    background: linear-gradient(180deg, rgba(0,170,255,0), #00aaff, rgba(0,170,255,0));
    border-radius: 4px;
}
/* 左侧大标题 */
.bwyx-left-title {
    font-size: 55px;
    font-weight: bold;
    line-height: 1.25;
	text-align: center;
}
/* 右侧正文区域 */
.bwyx-right-text p {
    font-size: 18px;
    line-height: 1.85;
    color: #f8fafc;
    margin: 0;
    text-align: justify;
}

/* =====移动端适配===== */
@media screen and (max-width: 768px) {
    .bwyx-wrap {
        padding: 50px 16px;
    }
    .bwyx-container {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    /* 竖线转为水平横线 */
    .bwyx-line {
        width: 60px;
        height: 2px;
        margin: 0 auto;
        background: linear-gradient(90deg, rgba(0,170,255,0), #00aaff, rgba(0,170,255,0));
    }
    .bwyx-left-title {
        font-size: 36px;
        text-align: center;
    }
    .bwyx-right-text p {
        font-size: 16px;
    }
}