/* ========== Creotixs Blog Pages — premium layout ========== */
.cbp-blog,
.cbp-single{
	--cbp-primary: #1a1a2e;
	--cbp-accent: #c4a574;
	--cbp-bg: #f7f3ed;
	--cbp-radius: 16px;
	font-family: "DM Sans", system-ui, -apple-system, sans-serif;
	color: #2a2a2a;
	background: var(--cbp-bg);
	padding: 56px 0 72px;
	box-sizing: border-box;
}
.cbp-blog *,
.cbp-single *{box-sizing:border-box}
.cbp-wrap{width:min(1180px, 92vw); margin: 0 auto}

/* Head */
.cbp-blog-head{text-align:center; margin-bottom: 44px}
.cbp-blog-title{
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(32px, 5vw, 48px);
	font-weight: 600;
	letter-spacing: -0.02em;
	margin: 0 0 10px;
	color: var(--cbp-primary);
}
.cbp-blog-sub{
	margin: 0 auto;
	max-width: 480px;
	color: #6b6560;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 400;
}

/* Grid */
.cbp-grid{display:grid; gap: 28px}
.cbp-cols-1{grid-template-columns:1fr}
.cbp-cols-2{grid-template-columns:repeat(2,1fr)}
.cbp-cols-3{grid-template-columns:repeat(3,1fr)}
.cbp-cols-4{grid-template-columns:repeat(4,1fr)}

/* Card */
.cbp-card{
	background: #fff;
	border-radius: var(--cbp-radius);
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(26,26,46,.04), 0 12px 32px rgba(26,26,46,.06);
	display: flex;
	flex-direction: column;
	height: 100%;
	transition: transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease;
	border: 1px solid rgba(26,26,46,.04);
}
.cbp-hover-lift .cbp-card:hover{
	transform: translateY(-10px);
	box-shadow: 0 16px 48px rgba(26,26,46,.12);
}
.cbp-hover-zoom .cbp-card-img{transition: transform .6s cubic-bezier(.22,1,.36,1)}
.cbp-hover-zoom .cbp-card:hover .cbp-card-img{transform: scale(1.07)}
.cbp-hover-fade .cbp-card:hover{opacity: .95}

.cbp-card-media{
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: linear-gradient(145deg, #ebe4da, #ddd5c8);
}
.cbp-card-img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.cbp-card-ph{
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(145deg, #ebe4da 0%, #d9d0c4 100%);
}
.cbp-card-cat{
	position: absolute;
	left: 14px;
	top: 14px;
	background: rgba(26,26,46,.88);
	backdrop-filter: blur(6px);
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	padding: 6px 12px;
	border-radius: 999px;
}
.cbp-card-body{
	padding: 20px 22px 22px;
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 0;
}
.cbp-card-meta{
	font-size: 12px;
	color: #8a847c;
	margin: 0 0 10px;
	font-weight: 500;
}
.cbp-dot{margin: 0 5px; opacity: .45}
.cbp-card-title{
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 22px;
	font-weight: 600;
	margin: 0 0 10px;
	line-height: 1.28;
}
.cbp-card-title a{
	color: var(--cbp-primary);
	text-decoration: none;
	transition: color .2s;
}
.cbp-card-title a:hover{color: var(--cbp-accent)}
.cbp-card-excerpt{
	font-size: 14px;
	color: #5c574f;
	line-height: 1.6;
	margin: 0 0 16px;
	flex: 1;
}
.cbp-card-more{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--cbp-accent);
	text-decoration: none;
	align-self: flex-start;
	padding-bottom: 2px;
	border-bottom: 1.5px solid transparent;
	transition: border-color .2s, color .2s;
}
.cbp-card-more:hover{
	color: var(--cbp-primary);
	border-bottom-color: var(--cbp-primary);
}

/* ========== Single description ========== */
.cbp-single-grid{
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(260px, .72fr);
	gap: 48px;
	align-items: start;
}
.cbp-single-main{
	background: #fff;
	border-radius: calc(var(--cbp-radius) + 4px);
	padding: 28px;
	box-shadow: 0 4px 24px rgba(26,26,46,.05);
	border: 1px solid rgba(26,26,46,.04);
}
.cbp-single-hero{
	margin: 0 0 28px;
	border-radius: var(--cbp-radius);
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #ebe4da;
}
.cbp-single-img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.cbp-single-cat{
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--cbp-accent);
	margin-bottom: 10px;
}
.cbp-single-title{
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 600;
	margin: 0 0 12px;
	line-height: 1.18;
	color: var(--cbp-primary);
}
.cbp-single-meta{
	font-size: 13px;
	color: #8a847c;
	margin: 0 0 28px;
	padding-bottom: 20px;
	border-bottom: 1px solid #f0ebe4;
}
.cbp-single-content{
	font-size: 16px;
	line-height: 1.8;
	color: #3a3834;
}
.cbp-single-content p{margin: 0 0 1.15em}
.cbp-single-content h2,
.cbp-single-content h3{
	font-family: "Cormorant Garamond", Georgia, serif;
	color: var(--cbp-primary);
	margin: 1.4em 0 .6em;
}
.cbp-single-content img{
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

.cbp-box{
	margin-top: 28px;
	background: linear-gradient(165deg, #faf8f5 0%, #f3efe8 100%);
	border-radius: var(--cbp-radius);
	padding: 24px 26px;
	border: 1px solid rgba(196,165,116,.2);
}
.cbp-box h2{
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 24px;
	margin: 0 0 16px;
	color: var(--cbp-primary);
}
.cbp-box ul{margin: 0; padding: 0; list-style: none}
.cbp-box li{
	position: relative;
	padding: 10px 0 10px 32px;
	border-bottom: 1px solid rgba(0,0,0,.05);
	font-size: 14.5px;
	line-height: 1.5;
	color: #3a3834;
}
.cbp-box li:last-child{border-bottom: none}
.cbp-box li::before{
	content: "";
	position: absolute;
	left: 0;
	top: 14px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--cbp-accent);
	box-shadow: inset 0 0 0 4px rgba(255,255,255,.35);
}
.cbp-usages li::before{background: var(--cbp-primary)}

/* Sidebar */
.cbp-single-side{position: sticky; top: 96px}
.cbp-side-block{
	background: #fff;
	border-radius: var(--cbp-radius);
	padding: 20px;
	margin-bottom: 20px;
	box-shadow: 0 4px 20px rgba(26,26,46,.05);
	border: 1px solid rgba(26,26,46,.04);
}
.cbp-side-search form{display: flex; gap: 8px}
.cbp-side-search input[type=search]{
	flex: 1;
	padding: 12px 14px;
	border: 1.5px solid #e8e2d8;
	border-radius: 12px;
	font: inherit;
	font-size: 14px;
	background: #faf8f5;
	transition: border-color .2s;
}
.cbp-side-search input[type=search]:focus{
	outline: none;
	border-color: var(--cbp-accent);
	background: #fff;
}
.cbp-side-search button{
	width: 48px;
	height: 48px;
	border: none;
	border-radius: 12px;
	background: var(--cbp-primary);
	color: #fff;
	cursor: pointer;
	display: grid;
	place-items: center;
	transition: background .2s, transform .15s;
}
.cbp-side-search button:hover{background: var(--cbp-accent); transform: scale(1.03)}

.cbp-side-related h3{
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 22px;
	margin: 0 0 16px;
	color: var(--cbp-primary);
}
.cbp-related-list{display: flex; flex-direction: column; gap: 10px}
.cbp-related-card{
	display: flex;
	gap: 12px;
	text-decoration: none;
	color: inherit;
	padding: 10px;
	border-radius: 12px;
	transition: background .2s, transform .2s;
}
.cbp-related-card:hover{
	background: #faf6f0;
	transform: translateX(3px);
}
.cbp-related-img,
.cbp-related-ph{
	width: 72px;
	height: 72px;
	object-fit: cover;
	border-radius: 10px;
	flex-shrink: 0;
	background: #ebe4da;
	display: block;
}
.cbp-related-title{
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--cbp-primary);
	line-height: 1.35;
	margin-bottom: 4px;
}
.cbp-related-excerpt{
	display: block;
	font-size: 12px;
	color: #7a746c;
	line-height: 1.4;
}

.cbp-empty{text-align:center; color:#888; padding: 40px}

@media (max-width: 980px){
	.cbp-cols-3, .cbp-cols-4{grid-template-columns: repeat(2, 1fr)}
	.cbp-single-grid{grid-template-columns: 1fr; gap: 28px}
	.cbp-single-side{position: static}
	.cbp-single-main{padding: 20px}
}
@media (max-width: 600px){
	.cbp-cols-2, .cbp-cols-3, .cbp-cols-4{grid-template-columns: 1fr}
	.cbp-blog, .cbp-single{padding: 36px 0 48px}
	.cbp-grid{gap: 20px}
}


/* Comments */
.cbp-comments{margin-top:36px;padding-top:28px;border-top:1px solid #f0ebe4}
.cbp-comments-title{
	font-family:"Cormorant Garamond",Georgia,serif;
	font-size:26px;margin:0 0 20px;color:var(--cbp-primary,#1a1a2e);
}
.cbp-comment-list{list-style:none;margin:0 0 28px;padding:0}
.cbp-comment-list .comment{
	padding:16px 0;border-bottom:1px solid #f0ebe4;
}
.cbp-comment-list .comment-author{font-weight:600}
.cbp-comment-list .comment-content{font-size:14.5px;line-height:1.55;color:#3a3834}
.cbp-no-comments{color:#888;font-size:14px}
.cbp-comment-form-wrap{margin-top:8px}
.cbp-comment-form-wrap label{display:block;font-size:13px;font-weight:600;margin-bottom:4px}
.cbp-comment-form-wrap input[type=text],
.cbp-comment-form-wrap input[type=email],
.cbp-comment-form-wrap input[type=url],
.cbp-comment-form-wrap textarea{
	width:100%;padding:11px 12px;border:1.5px solid #e8e2d8;border-radius:10px;
	font:inherit;font-size:14px;background:#faf8f5;margin-bottom:12px;
}
.cbp-comment-form-wrap textarea{min-height:110px}
.cbp-btn-submit,
.cbp-comment-form-wrap input[type=submit]{
	background:var(--cbp-primary,#1a1a2e)!important;color:#fff!important;
	border:none!important;border-radius:10px!important;
	padding:12px 22px!important;font-weight:700!important;cursor:pointer;
	letter-spacing:.04em;text-transform:uppercase;font-size:12px!important;
}
.cbp-btn-submit:hover,
.cbp-comment-form-wrap input[type=submit]:hover{opacity:.9}

/* Recent comments sidebar */
.cbp-recent-comments-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.cbp-rc-item{
	display:block;padding:10px;border-radius:10px;text-decoration:none;color:inherit;
	background:#faf8f5;transition:background .2s;
}
.cbp-rc-item:hover{background:#f3eee6}
.cbp-rc-author{display:block;font-size:12px;font-weight:700;color:var(--cbp-primary,#1a1a2e)}
.cbp-rc-text{display:block;font-size:13px;color:#5c574f;line-height:1.4;margin:4px 0}
.cbp-rc-meta{display:block;font-size:11px;color:#9a948c}
.cbp-rc-empty{font-size:13px;color:#888;margin:0}
.cbp-load-more{
	width:100%;padding:11px;border:1.5px solid #e8e2d8;border-radius:10px;
	background:#fff;font-weight:600;font-size:13px;cursor:pointer;
	color:var(--cbp-primary,#1a1a2e);transition:background .2s,border-color .2s;
}
.cbp-load-more:hover{background:#faf8f5;border-color:var(--cbp-accent,#c4a574)}
.cbp-load-more:disabled{opacity:.55;cursor:default}
