/*=========================================================
Premium Hero v2
=========================================================*/

.hero-section{
	padding:60px 0 70px;
	background:#f8fafc;
}

.hero-grid{
	display:grid;
	grid-template-columns:2fr 1fr;
	gap:32px;
	align-items:start;
}

/*=========================================================
Featured
=========================================================*/

.hero-featured{
	position:relative;
}

.hero-post{
	position:relative;
	border-radius:28px;
	overflow:hidden;
	background:#111827;
	box-shadow:0 30px 70px rgba(0,0,0,.18);
}

.hero-image-link{
	display:block;
	line-height:0;
}

.hero-image{
	width:100%;
	height:640px;
	object-fit:cover;
	display:block;
	transform:scale(1);
	transition:transform .6s ease;
}

.hero-post:hover .hero-image{
	transform:scale(1.05);
}

/*=========================================================
Overlay
=========================================================*/

.hero-overlay{
	position:absolute;
	inset:0;
	background:
	linear-gradient(
		180deg,
		rgba(0,0,0,.05) 0%,
		rgba(0,0,0,.20) 35%,
		rgba(0,0,0,.78) 100%
	);
	z-index:1;
}

/*=========================================================
Content
=========================================================*/

.hero-content{
	position:absolute;
	left:48px;
	right:48px;
	bottom:48px;
	z-index:2;
	color:#fff;
	max-width:760px;
}

.hero-category{
	display:inline-flex;
	align-items:center;
	padding:8px 18px;
	background:#ffffff;
	color:#111827;
	font-size:13px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.08em;
	border-radius:999px;
	text-decoration:none;
	margin-bottom:22px;
	transition:.3s;
}

.hero-category:hover{
	background:#2d6cdf;
	color:#fff;
}
/*=========================================================
Hero Typography
=========================================================*/

.hero-title{
	margin:0 0 18px;
	font-size:52px;
	line-height:1.15;
	font-weight:800;
	letter-spacing:-.03em;
}

.hero-title a{
	color:#fff;
	text-decoration:none;
	transition:color .3s ease;
}

.hero-title a:hover{
	color:#dbeafe;
}

/*=========================================================
Meta
=========================================================*/

.hero-meta{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:12px;
	margin-bottom:20px;
	font-size:14px;
	font-weight:500;
	color:rgba(255,255,255,.88);
}

.hero-meta .dot{
	opacity:.6;
}

/*=========================================================
Excerpt
=========================================================*/

.hero-excerpt{
	max-width:680px;
	font-size:18px;
	line-height:1.8;
	color:rgba(255,255,255,.92);
	margin-bottom:28px;
}

.hero-excerpt p{
	margin:0;
}

/*=========================================================
Button
=========================================================*/

.hero-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:16px 34px;
	border-radius:999px;
	background:#ffffff;
	color:#111827;
	font-size:15px;
	font-weight:700;
	text-decoration:none;
	transition:all .35s ease;
	box-shadow:0 15px 35px rgba(0,0,0,.15);
}

.hero-button:hover{
	background:#2d6cdf;
	color:#fff;
	transform:translateY(-2px);
	box-shadow:0 20px 40px rgba(45,108,223,.35);
}
/*=========================================================
Hero Sidebar
=========================================================*/

.hero-sidebar{
	display:flex;
	flex-direction:column;
	gap:24px;
}

.hero-side-card{
	display:flex;
	gap:16px;
	align-items:center;
	background:#ffffff;
	border-radius:22px;
	overflow:hidden;
	box-shadow:0 15px 35px rgba(0,0,0,.08);
	transition:all .35s ease;
}

.hero-side-card:hover{
	transform:translateY(-4px);
	box-shadow:0 25px 50px rgba(0,0,0,.14);
}

.hero-side-thumb{
	display:block;
	flex:0 0 180px;
	line-height:0;
}

.hero-side-image{
	width:180px;
	height:140px;
	object-fit:cover;
	display:block;
	transition:transform .5s ease;
}

.hero-side-card:hover .hero-side-image{
	transform:scale(1.08);
}

.hero-side-content{
	flex:1;
	padding:18px 18px 18px 0;
}

.hero-side-category{
	display:inline-block;
	margin-bottom:10px;
	font-size:12px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.08em;
	color:#2d6cdf;
	text-decoration:none;
}

.hero-side-title{
	margin:0 0 12px;
	font-size:20px;
	line-height:1.45;
	font-weight:700;
}

.hero-side-title a{
	color:#111827;
	text-decoration:none;
	transition:color .3s ease;
}

.hero-side-title a:hover{
	color:#2d6cdf;
}

.hero-side-meta{
	display:flex;
	align-items:center;
	gap:10px;
	font-size:13px;
	color:#6b7280;
}

.hero-side-meta .dot{
	opacity:.5;
}
/*=========================================================
Responsive
=========================================================*/

@media (max-width:1200px){

	.hero-grid{

		grid-template-columns:1fr;

	}

	.hero-sidebar{

		display:grid;

		grid-template-columns:repeat(3,1fr);

		gap:20px;

	}

	.hero-side-card{

		flex-direction:column;

		align-items:flex-start;

	}

	.hero-side-thumb{

		flex:none;

		width:100%;

	}

	.hero-side-image{

		width:100%;

		height:220px;

	}

	.hero-side-content{

		padding:18px;

	}

}

@media (max-width:991px){

	.hero-section{

		padding:40px 0;

	}

	.hero-image{

		height:480px;

	}

	.hero-content{

		left:28px;

		right:28px;

		bottom:28px;

	}

	.hero-title{

		font-size:38px;

	}

	.hero-excerpt{

		font-size:16px;

	}

	.hero-sidebar{

		grid-template-columns:1fr;

	}

	.hero-side-card{

		flex-direction:row;

	}

	.hero-side-thumb{

		width:auto;

		flex:0 0 150px;

	}

	.hero-side-image{

		width:150px;

		height:120px;

	}

}

@media (max-width:767px){

	.hero-image{

		height:360px;

	}

	.hero-content{

		left:20px;

		right:20px;

		bottom:20px;

	}

	.hero-category{

		font-size:11px;

		padding:6px 14px;

		margin-bottom:14px;

	}

	.hero-title{

		font-size:28px;

		line-height:1.25;

		margin-bottom:14px;

	}

	.hero-meta{

		font-size:12px;

		margin-bottom:14px;

	}

	.hero-excerpt{

		display:none;

	}

	.hero-button{

		padding:12px 24px;

		font-size:14px;

	}

	.hero-side-card{

		flex-direction:column;

	}

	.hero-side-thumb{

		width:100%;

		flex:none;

	}

	.hero-side-image{

		width:100%;

		height:220px;

	}

	.hero-side-content{

		padding:16px;

	}

	.hero-side-title{

		font-size:18px;

	}

}

@media (max-width:480px){

	.hero-image{

		height:300px;

	}

	.hero-title{

		font-size:24px;

	}

	.hero-button{

		width:100%;

		justify-content:center;

	}

}