/* ==========================================================================
   Royal Elementor Kit Child - Blog Templates
   New rules only. Nothing here overrides or edits the parent stylesheet -
   it only styles the new pieces: the sidebar, archive headers, and the
   two-column layout, all mobile responsive.
   ========================================================================== */

/* --- Two column blog layout (content + sidebar) --- */
.main-container-wrap {
	display: flex;
	align-items: flex-start;
	gap: 50px;
}
.main-container-wrap .main-container {
	flex: 1 1 0%;
	min-width: 0; /* keeps long words/images from breaking the flex layout */
}

/* --- Sidebar --- */
.blog-sidebar {
	flex: 0 0 300px;
	width: 300px;
}
.blog-sidebar .widget {
	margin-bottom: 40px;
	padding-bottom: 30px;
	border-bottom: 1px solid #e8e8e8;
}
.blog-sidebar .widget:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.blog-sidebar .widget-title {
	font-size: 1.15rem;
	margin: 0 0 15px;
}
.blog-sidebar ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.blog-sidebar ul li {
	padding: 8px 0;
	border-bottom: 1px solid #f2f2f2;
}
.blog-sidebar ul li:last-child {
	border-bottom: none;
}
.blog-sidebar ul li a {
	text-decoration: none;
	color: #333333;
}
.blog-sidebar ul li a:hover {
	color: #605be5;
}
.blog-sidebar .widget_search input[type="search"] {
	margin-bottom: 0;
}
.blog-sidebar select {
	width: 100%;
}
.blog-sidebar .widget_categories .children,
.blog-sidebar .widget_archive ul {
	list-style: none;
	padding-left: 15px;
	margin: 0;
}

/* --- Archive / Category / Tag / Author / Search headers --- */
.archive-header {
	margin-bottom: 40px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e8e8e8;
}
.archive-title {
	margin: 0 0 10px;
}
.archive-description {
	color: #666666;
}
.archive-description p:last-child {
	margin-bottom: 0;
}

/* --- Author archive box --- */
.author-box {
	display: flex;
	align-items: center;
	gap: 20px;
}
.author-box img {
	border-radius: 50%;
	flex-shrink: 0;
}
.author-box .archive-title {
	margin-bottom: 5px;
}
.author-box .author-bio {
	color: #666666;
	margin: 0;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

/* Tablet: stack the sidebar below the content */
@media (max-width: 860px) {
	.main-container-wrap {
		flex-direction: column;
		gap: 40px;
	}
	.blog-sidebar {
		flex: 1 1 100%;
		width: 100%;
	}
}

/* Mobile: tighten up spacing and center the author box */
@media (max-width: 600px) {
	.archive-title {
		font-size: 1.65rem;
	}
	.author-box {
		flex-direction: column;
		text-align: center;
		gap: 12px;
	}
	.blog-sidebar .widget {
		margin-bottom: 30px;
		padding-bottom: 20px;
	}
}
