/* Reset and base styles */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
		Ubuntu, Cantarell, sans-serif;
	line-height: 1.6;
	background-color: #fff;
	color: #424242;
	max-width: 800px;
	margin: 0 auto;
	padding: 2.6rem; /* 30% more than 2rem */
}

/* Header */
header {
	text-align: left;
	margin-bottom: 2rem;
}

header h1 {
	font-size: 2rem;
	color: #292922;
}

/* Profile Section */
.profile {
	text-align: center;
	margin-bottom: 3rem;
}

.profile h1 {
	font-size: 2.5rem;
	margin-bottom: 1rem;
	color: #292922;
}

.profile .title {
	font-size: 1.25rem;
	color: #424242;
	margin-bottom: 0.75rem;
}

.profile .contact {
	font-size: 1.1rem;
	color: #424242;
	margin-bottom: 1.5rem;
}

.social-links {
	display: flex;
	gap: 1.5rem;
	justify-content: center;
}

.social-links a {
	color: #424242;
	text-decoration: none;
}

.social-links svg {
	width: 32px;
	height: 32px;
}

.social-links a:hover {
	color: #536390;
}

/* Blog Section */
.blog-section {
	margin-bottom: 3rem;
}

.blog-section h3 {
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
	color: #292922;
}

.blog-item {
	display: flex;
	justify-content: space-between;
	align-items: flex-start; /* Changed from baseline to flex-start for consistent vertical alignment */
	margin-bottom: 1rem;
}

.blog-item a {
	font-size: 1.1rem;
	color: #292922;
	text-decoration: none;
	flex-grow: 1; /* Allow link to take available space */
	white-space: nowrap; /* Keep link on one line */
	overflow: hidden;
	text-overflow: ellipsis;
	/* Removed margin-right as space-between handles it */
}

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

.blog-item .date {
	color: #666;
	font-size: 0.9rem;
	white-space: nowrap;
	flex-shrink: 0; /* Prevent date from shrinking */
}

/* Work Section */
.work-section {
	margin-bottom: 3rem;
	text-align: left; /* Ensure it's not centered */
}

.work-link {
	display: inline-block;
	color: #292922;
	text-decoration: none;
	font-size: 1.1rem;
	padding: 0.5rem 0;
}

.work-link:hover {
	text-decoration: underline;
}

/* Work Page */
.work-items .work-item {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 2rem;
}

.work-info {
	flex: 1;
	padding-right: 2rem;
}

.work-info h3 {
	margin: 0 0 0.5rem 0;
	font-size: 1.2rem;
	color: #333;
}

.work-info h3 a {
	color: #292922; /* Ensure color is consistent with other headings */
	text-decoration: none;
}

.work-info h3 a:hover {
	text-decoration: none;
}

.work-info h3 a:hover {
	text-decoration: none;
}

.work-info ul {
	margin: 0.5rem 0;
	padding-left: 1.2rem;
	color: #666;
}

.work-item .date {
	color: #666;
	font-size: 0.9rem;
	white-space: nowrap;
}

/* Blog Post Page */
#post-content {
	padding: 0; /* Padding handled by body */
}

#post-content h1 {
	font-size: 2.5rem;
	margin-bottom: 1rem;
}

#post-content h2 {
	font-size: 1.8rem;
	margin-top: 2rem;
	margin-bottom: 1rem;
}

#post-content p {
	margin-bottom: 1.5rem;
	font-size: 1.1rem;
	line-height: 1.8;
}

.back-link, .home-btn a {
	display: inline-block;
	color: #424242;
	text-decoration: none;
	margin-bottom: 2rem;
	font-size: 1.1rem;
}

.back-link:hover, .home-btn a:hover {
	color: #292922;
	text-decoration: underline;
}

.home-btn {
	background: none;
	border: none;
	padding: 0;
	font-family: inherit;
}


/* Responsive design */
@media (max-width: 768px) {
	body {
		padding: 2rem; /* Adjust body padding for smaller screens */
	}

	.profile h1 {
		font-size: 2rem;
	}

	.profile .title {
		font-size: 1.1rem;
	}

	.blog-item, .work-items .work-item {
		flex-direction: column;
		align-items: flex-start;
	}

	.blog-item .date, .work-item .date {
		margin-left: 0;
		margin-top: 0.5rem;
	}
}

@media (max-width: 480px) {
	body {
		padding: 1.5rem; /* Further adjust body padding for very small screens */
	}
    
	.profile h1 {
		font-size: 1.8rem;
	}

	.profile .title {
		font-size: 1rem;
	}

	.social-links svg {
		width: 28px;
		height: 28px;
	}

	.blog-section h3 {
		font-size: 1.3rem;
	}

	.blog-item a {
		font-size: 1rem;
	}

	#post-content h1 {
		font-size: 2rem;
	}

	#post-content h2 {
		font-size: 1.5rem;
	}
}
