:root{
	--cy-blue:#0A56A8;
	--cy-blue-dark:#083A73;
	--cy-blue-light:#EEF5FF;
	--cy-text:#10233F;
	--cy-text-light:#6B7280;
	--cy-line:#E5E7EB;
	--cy-bg:#F3F5F7;
	--cy-white:#FFFFFF;
	--cy-shadow:0 8px 28px rgba(16,48,95,.08);
}

*{
	box-sizing:border-box;
}

body.single-post{
	background:var(--cy-bg);
}

/* 清掉 Astra 默认内容区限制 */
.single-post .site-content,
.single-post .ast-container,
.single-post .site-primary,
.single-post .content-area,
.single-post .ast-article-single,
.single-post .entry-content{
	width:100% !important;
	max-width:100% !important;
	margin:0 !important;
	padding:0 !important;
}

/* ===== 顶部 Banner ===== */
.cy-top-banner{
	position:relative;
	width:100%;
	height:320px;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center 12%;
	overflow:hidden;
}

.cy-top-banner__mask{
	position:absolute;
	inset:0;
	background:linear-gradient(
		90deg,
		rgba(10,25,45,.62) 0%,
		rgba(10,25,45,.46) 35%,
		rgba(10,25,45,.18) 100%
	);
}

.cy-top-banner__content{
	position:relative;
	z-index:2;
	width:min(1280px, calc(100% - 32px));
	height:100%;
	margin:0 auto;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:flex-start;
	color:#fff;
}

.cy-top-banner__title{
	margin:0 0 12px;
	font-size:56px;
	line-height:1.2;
	font-weight:700;
	color:#fff;
	text-shadow:0 2px 10px rgba(0,0,0,.18);
}

.cy-top-banner__content p{
	margin:0;
	font-size:22px;
	line-height:1.7;
	color:rgba(255,255,255,.95);
	text-shadow:0 2px 10px rgba(0,0,0,.12);
}

/* ===== 页面主体 ===== */
.cy-page-wrap{
	width:100%;
	padding:24px 0 56px;
}

.cy-container{
	width:min(1280px, calc(100% - 32px));
	margin:0 auto;
}

/* 面包屑 */
.cy-breadcrumb-box{
	background:#fff;
	border-radius:14px;
	padding:16px 20px;
	margin:0 auto 22px;
	font-size:14px;
	line-height:1.8;
	color:var(--cy-text-light);
	box-shadow:0 6px 24px rgba(20,33,61,.05);
}

.cy-breadcrumb-box a{
	color:#111827;
	text-decoration:none;
}

.cy-breadcrumb-box a:hover{
	color:var(--cy-blue);
}

.cy-breadcrumb-box span{
	margin:0 8px;
	color:#9CA3AF;
}

/* 主体布局 */
.cy-main-grid{
	width:100%;
	display:grid;
	grid-template-columns:minmax(0,1fr) 320px;
	gap:28px;
	align-items:start;
	margin:0 auto;
}

.cy-content-left{
	min-width:0;
}

.cy-sidebar-right{
	width:320px;
	max-width:320px;
	display:flex;
	flex-direction:column;
	gap:20px;
	align-self:start;
}

/* 卡片 */
.cy-article-card,
.cy-sidebar-card{
	background:#fff;
	border-radius:18px;
	box-shadow:var(--cy-shadow);
}

.cy-article-card{
	padding:0 !important;
	overflow:hidden;
}

.cy-sidebar-card{
	padding:28px 24px !important;
}

/* 标题区域 */
.cy-article-header{
	padding:34px 38px 20px !important;
}

.cy-article-title{
	margin:0 0 16px;
	font-size:32px;
	line-height:1.4;
	color:var(--cy-text);
	font-weight:700;
}

.cy-article-meta{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	align-items:center;
	padding-bottom:20px !important;
	margin-bottom:0 !important;
	border-bottom:1px solid var(--cy-line);
	font-size:14px;
	color:var(--cy-text-light);
}

.cy-meta-cat{
	display:inline-flex;
	align-items:center;
	padding:4px 10px;
	border-radius:999px;
	background:var(--cy-blue-light);
	color:var(--cy-blue);
	text-decoration:none;
	font-size:13px;
}

.cy-meta-cat:hover{
	background:var(--cy-blue);
	color:#fff;
}

/* 正文包裹层 */
.cy-article-body{
	padding:28px 38px 10px !important;
}

/* 正文 */
.cy-article-content{
	font-size:17px;
	line-height:2;
	color:var(--cy-text);
	word-break:break-word;
}

.cy-article-content > *{
	max-width:100% !important;
	margin-left:0 !important;
	margin-right:0 !important;
}

.cy-article-content > *:first-child{
	margin-top:0 !important;
}

.cy-article-content h2,
.cy-article-content h3,
.cy-article-content h4{
	margin:34px 0 16px !important;
	line-height:1.55;
	color:#111827;
	font-weight:700;
}

.cy-article-content h2{
	font-size:26px;
}

.cy-article-content h3{
	font-size:22px;
}

.cy-article-content h4{
	font-size:18px;
}

.cy-article-content p{
	margin:0 0 22px !important;
}

.cy-article-content ul,
.cy-article-content ol{
	margin:0 0 22px 26px !important;
	padding:0 !important;
}

.cy-article-content li{
	margin-bottom:8px;
}

.cy-article-content img{
	max-width:100% !important;
	height:auto !important;
	display:block !important;
	margin:20px auto !important;
	border-radius:12px;
}

.cy-article-content a{
	color:var(--cy-blue);
	text-decoration:none;
}

.cy-article-content a:hover{
	text-decoration:underline;
}

.cy-article-content blockquote{
	margin:20px 0 !important;
	padding:16px 18px;
	border-left:4px solid var(--cy-blue);
	background:#F8FBFF;
	color:#334155;
	border-radius:8px;
}

.cy-article-content table{
	width:100% !important;
	max-width:100% !important;
	border-collapse:collapse;
	margin:18px 0 !important;
	font-size:15px;
	background:#fff;
}

.cy-article-content table th,
.cy-article-content table td{
	border:1px solid #DBE3EF;
	padding:10px 12px;
	vertical-align:top;
}

/* Gutenberg 宽版块归零 */
.cy-article-content .alignwide,
.cy-article-content .alignfull,
.cy-article-content .wp-block-group.alignwide,
.cy-article-content .wp-block-group.alignfull,
.cy-article-content .wp-block-cover.alignwide,
.cy-article-content .wp-block-cover.alignfull,
.cy-article-content .wp-block-image.alignwide,
.cy-article-content .wp-block-image.alignfull,
.cy-article-content .wp-block-columns.alignwide,
.cy-article-content .wp-block-columns.alignfull{
	width:100% !important;
	max-width:100% !important;
	margin-left:0 !important;
	margin-right:0 !important;
}

.cy-article-content .wp-block-separator,
.cy-article-content hr{
	width:100% !important;
	max-width:100% !important;
	margin:24px 0 !important;
}

.cy-article-content .is-layout-constrained > *,
.cy-article-content .is-layout-flow > *,
.cy-article-content .wp-block-group__inner-container > *{
	margin-left:0 !important;
	margin-right:0 !important;
	max-width:100% !important;
}

.cy-article-content .wp-block-group,
.cy-article-content .wp-block-columns,
.cy-article-content .wp-block-media-text,
.cy-article-content .wp-block-cover{
	margin:0 0 22px !important;
	padding-left:0 !important;
	padding-right:0 !important;
}

/* ===== 上一篇/下一篇 ===== */
.cy-post-nav-box{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:16px;
	margin-top:34px;
	padding:0 38px !important;
	border-top:none;
}

.cy-post-nav-item a{
	display:flex;
	flex-direction:column;
	justify-content:center;
	min-height:96px;
	padding:18px 20px;
	background:linear-gradient(180deg, #FFFFFF 0%, #F8FBFF 100%);
	border:1px solid #DCE8F8;
	border-radius:16px;
	text-decoration:none;
	transition:all .2s ease;
	box-shadow:0 4px 14px rgba(10,86,168,.04);
}

.cy-post-nav-item a:hover{
	transform:translateY(-2px);
	border-color:var(--cy-blue);
	box-shadow:0 10px 24px rgba(10,86,168,.10);
}

.cy-nav-label{
	font-size:12px;
	color:#7A8599;
	line-height:1.6;
	margin-bottom:6px;
}

.cy-nav-title{
	font-size:15px;
	line-height:1.8;
	font-weight:700;
	color:var(--cy-text);
}

/* ===== 通用区块头 ===== */
.cy-block-head{
	margin-bottom:16px;
}

.cy-block-subtitle{
	font-size:13px;
	line-height:1.8;
	color:#7A8599;
	margin-top:4px;
}

.cy-section-title{
	font-size:22px;
	line-height:1.4;
	font-weight:700;
	color:#111827;
	margin:0;
}

/* ===== 相关文章 ===== */
.cy-related-posts{
	margin-top:34px;
	padding:28px 30px;
	background:linear-gradient(180deg, #FFFFFF 0%, #F8FBFF 100%);
	border:1px solid #DCE8F8;
	border-radius:18px;
	box-shadow:0 6px 20px rgba(10,86,168,.05);
	margin-left:38px;
	margin-right:38px;
}

.cy-related-list{
	display:grid;
	grid-template-columns:1fr;
	gap:14px;
}

.cy-related-item{
	display:block;
	text-decoration:none;
}

.cy-related-item-inner{
	padding:18px 20px;
	background:#fff;
	border:1px solid #DCE8F8;
	border-radius:14px;
	transition:all .2s ease;
}

.cy-related-item:hover .cy-related-item-inner{
	transform:translateY(-2px);
	border-color:var(--cy-blue);
	box-shadow:0 10px 22px rgba(10,86,168,.08);
	background:#FBFDFF;
}

.cy-related-item-title{
	font-size:18px;
	line-height:1.75;
	font-weight:700;
	color:var(--cy-text);
	margin-bottom:10px;
}

.cy-related-item-meta{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
}

.cy-related-item-date{
	font-size:13px;
	color:#7A8599;
}

.cy-related-item-arrow{
	font-size:18px;
	color:var(--cy-blue);
	font-weight:700;
}

/* ===== 相关企业服务 ===== */
.cy-article-cta{
	margin-top:28px;
	padding:28px 30px;
	border-radius:18px;
	background:linear-gradient(180deg, #FFFFFF 0%, #F7FAFF 100%);
	border:1px solid #DCE8F8;
	box-shadow:0 6px 20px rgba(10,86,168,.05);
	margin-left:38px;
	margin-right:38px;
	margin-bottom:34px;
}

.cy-service-btns{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	margin-bottom:18px;
}

.cy-service-btns a,
.cy-service-links a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:42px;
	padding:0 18px;
	border-radius:999px;
	background:#fff;
	border:1px solid #CFE0F7;
	color:var(--cy-blue);
	text-decoration:none;
	font-size:14px;
	font-weight:700;
	transition:all .2s ease;
}

.cy-service-btns a:hover,
.cy-service-links a:hover{
	background:var(--cy-blue);
	color:#fff;
	border-color:var(--cy-blue);
	transform:translateY(-1px);
	box-shadow:0 8px 18px rgba(10,86,168,.14);
}

.cy-main-consult-row{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	margin-top:12px;
}

.cy-main-consult-btn,
.cy-main-phone-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:46px;
	padding:0 20px;
	border-radius:12px;
	text-decoration:none;
	font-size:15px;
	font-weight:700;
}

.cy-main-consult-btn{
	background:var(--cy-blue);
	color:#fff;
	box-shadow:0 8px 20px rgba(10,86,168,.18);
}

.cy-main-consult-btn:hover{
	background:var(--cy-blue-dark);
	color:#fff;
}

.cy-main-phone-btn{
	background:#fff;
	color:var(--cy-blue);
	border:1px solid #CFE0F7;
}

.cy-main-phone-btn:hover{
	border-color:var(--cy-blue);
	color:var(--cy-blue-dark);
	background:#F8FBFF;
}

/* ===== 侧栏 ===== */
.cy-sidebar-title{
	margin:0 0 16px;
	padding-left:10px;
	border-left:4px solid var(--cy-blue);
	font-size:18px;
	font-weight:700;
	color:#111827;
}

.cy-news-list{
	list-style:none;
	padding:0;
	margin:0;
}

.cy-news-list li{
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	gap:10px;
	padding:12px 0;
	border-bottom:1px dashed #DBE1E8;
}

.cy-news-list li:last-child{
	border-bottom:none;
}

.cy-news-list a{
	color:var(--cy-text);
	text-decoration:none;
	font-size:14px;
	line-height:1.75;
}

.cy-news-list a:hover{
	color:var(--cy-blue);
}

.cy-news-list span{
	font-size:12px;
	color:#94A3B8;
	white-space:nowrap;
}

.cy-empty-item{
	font-size:14px;
	color:#94A3B8;
}

.cy-contact-list{
	display:flex;
	flex-direction:column;
	gap:12px;
}

.cy-contact-item{
	font-size:14px;
	line-height:1.8;
	color:#374151;
	padding-bottom:12px;
	border-bottom:1px dashed var(--cy-line);
}

.cy-contact-item:last-child{
	border-bottom:none;
	padding-bottom:0;
}

.cy-contact-item a{
	color:var(--cy-blue);
	text-decoration:none;
}

.cy-contact-item a:hover{
	text-decoration:underline;
}

/* 二维码 */
.cy-sidebar-sticky{
	position:sticky;
	top:20px;
	z-index:5;
}

.cy-qr-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:14px;
}

.cy-qr-item{
	text-align:center;
}

.cy-qr-item img{
	width:100%;
	max-width:100px;
	height:auto;
	display:block;
	margin:0 auto 10px;
	padding:4px;
	background:#fff;
	border:1px solid #E5E7EB;
	border-radius:12px;
}

.cy-qr-item p{
	margin:0;
	font-size:13px;
	color:#475569;
}

.cy-qr-placeholder{
	width:100%;
	max-width:100px;
	height:100px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0 auto 10px;
	padding:10px;
	text-align:center;
	font-size:12px;
	color:#64748B;
	background:#F8FAFC;
	border:1px dashed #CBD5E1;
	border-radius:12px;
}

.cy-qr-tips{
	margin-top:14px;
	font-size:13px;
	line-height:1.8;
	color:#64748B;
	background:#F8FBFF;
	border-radius:12px;
	padding:12px;
}

/* 手机底部咨询条 */
.cy-mobile-bar{
	display:none;
}

/* 平板 */
@media (max-width:1024px){
	.cy-main-grid{
		grid-template-columns:1fr;
		gap:18px;
	}

	.cy-sidebar-right{
		width:100%;
		max-width:none;
	}

	.cy-sidebar-sticky{
		position:static;
	}
}

/* 手机 */
@media (max-width:768px){
	.cy-top-banner{
		height:220px;
		background-position:center center;
	}

	.cy-top-banner__content{
		width:calc(100% - 24px);
	}

	.cy-top-banner__title{
		font-size:30px;
		line-height:1.35;
		margin-bottom:8px;
	}

	.cy-top-banner__content p{
		font-size:14px;
		line-height:1.7;
	}

	.cy-container{
		width:calc(100% - 20px);
	}

	.cy-page-wrap{
		padding:18px 0 70px;
	}

	.cy-breadcrumb-box{
		padding:14px 16px;
		font-size:13px;
		border-radius:12px;
	}

	.cy-article-header{
		padding:24px 18px 16px !important;
	}

	.cy-article-body{
		padding:22px 18px 8px !important;
	}

	.cy-sidebar-card{
		padding:22px 18px !important;
		border-radius:14px;
	}

	.cy-article-title{
		font-size:26px;
		line-height:1.45;
		margin-bottom:14px;
	}

	.cy-article-meta{
		font-size:13px;
		gap:8px;
		padding-bottom:16px !important;
	}

	.cy-article-content{
		font-size:16px;
		line-height:1.9;
	}

	.cy-article-content h2{
		font-size:22px;
	}

	.cy-article-content h3{
		font-size:19px;
	}

	.cy-article-content h4{
		font-size:17px;
	}

	.cy-article-content p{
		margin:0 0 18px !important;
	}

	.cy-post-nav-box{
		grid-template-columns:1fr;
		gap:12px;
		margin-top:24px;
		padding:0 18px !important;
	}

	.cy-post-nav-item a{
		min-height:auto;
		padding:16px 16px;
		border-radius:14px;
	}

	.cy-related-posts,
	.cy-article-cta{
		margin-left:18px;
		margin-right:18px;
		padding:22px 18px;
		border-radius:14px;
	}

	.cy-related-item-inner{
		padding:16px 16px;
		border-radius:12px;
	}

	.cy-related-item-title{
		font-size:16px;
		line-height:1.7;
	}

	.cy-main-consult-row{
		flex-direction:column;
	}

	.cy-main-consult-btn,
	.cy-main-phone-btn{
		width:100%;
		justify-content:center;
	}

	.cy-qr-grid{
		grid-template-columns:1fr;
		gap:12px;
	}

	.cy-qr-item img,
	.cy-qr-placeholder{
		max-width:140px;
		height:auto;
	}

	.cy-mobile-bar{
		position:fixed;
		left:0;
		right:0;
		bottom:0;
		z-index:999;
		display:flex;
		background:#fff;
		box-shadow:0 -4px 16px rgba(0,0,0,.08);
	}

	.cy-mobile-bar a{
		flex:1;
		text-align:center;
		padding:12px 10px;
		text-decoration:none;
		font-size:14px;
		font-weight:700;
	}

	.cy-mobile-bar a:first-child{
		background:var(--cy-blue);
		color:#fff;
	}

	.cy-mobile-bar a:last-child{
		background:#F8FBFF;
		color:var(--cy-blue);
		border-left:1px solid #E5E7EB;
	}
}

/* 超大屏 */
@media (min-width:1600px){
	.cy-container{
		width:1280px;
	}
}

/* ===== 修复文章页顶部 banner 跑到左侧半屏的问题 ===== */

/* 把 Astra 默认文章页内容容器改成纵向块级，不要横向并排 */
.single-post .site-content > .ast-container{
	display:block !important;
	max-width:100% !important;
	width:100% !important;
	padding:0 !important;
	margin:0 !important;
}

/* 内容主区域也不要再参与左右布局 */
.single-post .site-content .site-primary,
.single-post .site-content .content-area,
.single-post .site-content .ast-article-single{
	width:100% !important;
	max-width:100% !important;
	margin:0 !important;
	padding:0 !important;
	float:none !important;
}

/* banner 必须独占一整行 */
.single-post .cy-top-banner{
	display:block !important;
	width:100% !important;
	max-width:100% !important;
	flex:none !important;
}

/* banner 后面的正文区域也独占一整行 */
.single-post .cy-page-wrap{
	display:block !important;
	width:100% !important;
	max-width:100% !important;
	flex:none !important;
}